Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
  • Нужна помощь?

    Создайте тему в соответствующем разделе
    Не нужно писать всё в чат!
  • Загляните на торговую площадку

    Там вы можете купить
    всё что касается игровых серверов
  • Не хотите бан?

    Пожалуйста, ознакомьтесь с нашими правилами
    Не нарушайте порядок!
  • Продаёте или покупаете?

    Пользуйтесь услугами гаранта
    Мы сделаем вашу сделку безопасной

Есть такой скрипт

private ["_iHave","_isHurtin","_control","control2","_display"];
disableserialization;

_iHave = magazines player;
_isHurtin = if (("ItemGoldBar10oz" in _iHave) or ("ItemBriefcase10oz" in _iHave) or ("ItemBriefcase20oz" in _iHave) or ("ItemBriefcase30oz" in _iHave) or ("ItemBriefcase40oz" in _iHave) or ("ItemBriefcase50oz" in _iHave) or ("ItemBriefcase60oz" in _iHave) or ("ItemBriefcase70oz" in _iHave) or ("ItemBriefcase80oz" in _iHave) or ("ItemBriefcase90oz" in _iHave) or ("ItemBriefcase100oz" in _iHave)) then { true } else { false };

if (player getVariable["combattimeout", 0] >= time) then { // Check if in combat
	player removeAction s_playerHeal;
	s_playerHeal = -1; // Make sure action is removed
    cutText [format["Вы находитесь в режиме боя"], "PLAIN DOWN"]; //display text at bottom center of screen when in combat
} else {
	if (_isHurtin) then {
	    cutText [format["Начинаем лечение..."], "PLAIN DOWN"];
		player playAction "Medic";
		sleep 10;
		r_fracture_legs = false;
	    r_fracture_arms = false;
	    player setHit["legs",0];
		player setHit["hands",0];
		r_player_blood = r_player_blood + 11999; //set players LOCAL blood to a certain ammount
		r_player_injured = false;
		r_player_infected = false;
		r_player_inpain = false;
		R3F_TIRED_Accumulator = 0;
		player setVariable ["USEC_injured",false,true];
		player setVariable ["USEC_inPain", false, true];
		r_player_handler = false;
		_display = uiNamespace getVariable 'DAYZ_GUI_display';
		_control = 	_display displayCtrl 1203;
		_control2 = _display displayCtrl  1303;
		_control ctrlShow false;
		_control2 ctrlShow false;
		if (r_player_blood == r_player_bloodTotal) then {
			player setVariable["USEC_lowBlood",false,true];
		};
		if(r_player_blood > 12000) then {
			r_player_blood = 12000; // If players blood is greater then max amount allowed set it to max allowed (this check keeps an error at bay)
		};
		r_player_lowblood = false; //set lowblood setting to false
		10 fadeSound 1; //slowly fade their volume back to maximum
		"dynamicBlur" ppEffectAdjust [0]; "dynamicBlur" ppEffectCommit 5; //disable post processing blur effect
		"colorCorrections" ppEffectAdjust [1, 1, 0, [1, 1, 1, 0.0], [1, 1, 1, 1],  [1, 1, 1, 1]];"colorCorrections" ppEffectCommit 5; //give them their colour back
		r_player_lowblood = false; //just double checking their blood isnt low
		player setVariable["USEC_BloodQty",r_player_blood,true]; //save this blood ammount to the database
		player removeAction s_playerHeal;
		s_playerHeal = -1; // Make sure action gets removed
		cutText [format["Вас вылечили"], "PLAIN DOWN"];
		
		if ("ItemGoldBar10oz" in _iHave) then {
			player removeMagazine "ItemGoldBar10oz";
	} else {
		if ("ItemBriefcase10oz" in _iHave) then {
			player removeMagazine "ItemBriefcase10oz";
	} else {
		if ("ItemBriefcase20oz" in _iHave) then {
			player removeMagazine "ItemBriefcase20oz";
				player addMagazine "ItemGoldBar10oz";
	} else {
		if ("ItemBriefcase30oz" in _iHave) then {
			player removeMagazine "ItemBriefcase30oz";
				player addMagazine "ItemBriefcase20oz";
	} else {
		if ("ItemBriefcase40oz" in _iHave) then {
			player removeMagazine "ItemBriefcase40oz";
				player addMagazine "ItemBriefcase30oz";
	} else {
		if ("ItemBriefcase50oz" in _iHave) then {
			player removeMagazine "ItemBriefcase50oz";
				player addMagazine "ItemBriefcase40oz";
	} else {
		if ("ItemBriefcase60oz" in _iHave) then {
			player removeMagazine "ItemBriefcase60oz";
				player addMagazine "ItemBriefcase50oz";
	} else {
		if ("ItemBriefcase70oz" in _iHave) then {
			player removeMagazine "ItemBriefcase70oz";
				player addMagazine "ItemBriefcase60oz";
	} else {
		if ("ItemBriefcase80oz" in _iHave) then {
			player removeMagazine "ItemBriefcase80oz";
				player addMagazine "ItemBriefcase70oz";
	} else {
		if ("ItemBriefcase90oz" in _iHave) then {
			player removeMagazine "ItemBriefcase90oz";
				player addMagazine "ItemBriefcase80oz";
	} else {
		if ("ItemBriefcase100oz" in _iHave) then {
			player removeMagazine "ItemBriefcase100oz";
				player addMagazine "ItemBriefcase90oz";
												};
											};
										};
									};
								};
							};
						};
					};
				};
			};
		};
	} else {
		player removeAction s_playerHeal;
		s_playerHeal = -1; // Make sure action is removed
		cutText [format["Нужно 10 Gold"], "PLAIN DOWN"];
	};
};

Если во время лечения перекинуть золото в рюкзак, то и персонаж вылечится и доктор сдачу даст. В короткое время можно стать миллионером. Прошу помощи в фиксе.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Рекомендованные сообщения

  • 0

Есть такой скрипт

private ["_iHave","_isHurtin","_control","control2","_display"];
disableserialization;

_iHave = magazines player;
_isHurtin = if (("ItemGoldBar10oz" in _iHave) or ("ItemBriefcase10oz" in _iHave) or ("ItemBriefcase20oz" in _iHave) or ("ItemBriefcase30oz" in _iHave) or ("ItemBriefcase40oz" in _iHave) or ("ItemBriefcase50oz" in _iHave) or ("ItemBriefcase60oz" in _iHave) or ("ItemBriefcase70oz" in _iHave) or ("ItemBriefcase80oz" in _iHave) or ("ItemBriefcase90oz" in _iHave) or ("ItemBriefcase100oz" in _iHave)) then { true } else { false };

if (player getVariable["combattimeout", 0] >= time) then { // Check if in combat
	player removeAction s_playerHeal;
	s_playerHeal = -1; // Make sure action is removed
    cutText [format["Вы находитесь в режиме боя"], "PLAIN DOWN"]; //display text at bottom center of screen when in combat
} else {
	if (_isHurtin) then {
	    cutText [format["Начинаем лечение..."], "PLAIN DOWN"];
		player playAction "Medic";
		sleep 10;
		r_fracture_legs = false;
	    r_fracture_arms = false;
	    player setHit["legs",0];
		player setHit["hands",0];
		r_player_blood = r_player_blood + 11999; //set players LOCAL blood to a certain ammount
		r_player_injured = false;
		r_player_infected = false;
		r_player_inpain = false;
		R3F_TIRED_Accumulator = 0;
		player setVariable ["USEC_injured",false,true];
		player setVariable ["USEC_inPain", false, true];
		r_player_handler = false;
		_display = uiNamespace getVariable 'DAYZ_GUI_display';
		_control = 	_display displayCtrl 1203;
		_control2 = _display displayCtrl  1303;
		_control ctrlShow false;
		_control2 ctrlShow false;
		if (r_player_blood == r_player_bloodTotal) then {
			player setVariable["USEC_lowBlood",false,true];
		};
		if(r_player_blood > 12000) then {
			r_player_blood = 12000; // If players blood is greater then max amount allowed set it to max allowed (this check keeps an error at bay)
		};
		r_player_lowblood = false; //set lowblood setting to false
		10 fadeSound 1; //slowly fade their volume back to maximum
		"dynamicBlur" ppEffectAdjust [0]; "dynamicBlur" ppEffectCommit 5; //disable post processing blur effect
		"colorCorrections" ppEffectAdjust [1, 1, 0, [1, 1, 1, 0.0], [1, 1, 1, 1],  [1, 1, 1, 1]];"colorCorrections" ppEffectCommit 5; //give them their colour back
		r_player_lowblood = false; //just double checking their blood isnt low
		player setVariable["USEC_BloodQty",r_player_blood,true]; //save this blood ammount to the database
		player removeAction s_playerHeal;
		s_playerHeal = -1; // Make sure action gets removed
		cutText [format["Вас вылечили"], "PLAIN DOWN"];
		
		if ("ItemGoldBar10oz" in _iHave) then {
			player removeMagazine "ItemGoldBar10oz";
	} else {
		if ("ItemBriefcase10oz" in _iHave) then {
			player removeMagazine "ItemBriefcase10oz";
	} else {
		if ("ItemBriefcase20oz" in _iHave) then {
			player removeMagazine "ItemBriefcase20oz";
				player addMagazine "ItemGoldBar10oz";
	} else {
		if ("ItemBriefcase30oz" in _iHave) then {
			player removeMagazine "ItemBriefcase30oz";
				player addMagazine "ItemBriefcase20oz";
	} else {
		if ("ItemBriefcase40oz" in _iHave) then {
			player removeMagazine "ItemBriefcase40oz";
				player addMagazine "ItemBriefcase30oz";
	} else {
		if ("ItemBriefcase50oz" in _iHave) then {
			player removeMagazine "ItemBriefcase50oz";
				player addMagazine "ItemBriefcase40oz";
	} else {
		if ("ItemBriefcase60oz" in _iHave) then {
			player removeMagazine "ItemBriefcase60oz";
				player addMagazine "ItemBriefcase50oz";
	} else {
		if ("ItemBriefcase70oz" in _iHave) then {
			player removeMagazine "ItemBriefcase70oz";
				player addMagazine "ItemBriefcase60oz";
	} else {
		if ("ItemBriefcase80oz" in _iHave) then {
			player removeMagazine "ItemBriefcase80oz";
				player addMagazine "ItemBriefcase70oz";
	} else {
		if ("ItemBriefcase90oz" in _iHave) then {
			player removeMagazine "ItemBriefcase90oz";
				player addMagazine "ItemBriefcase80oz";
	} else {
		if ("ItemBriefcase100oz" in _iHave) then {
			player removeMagazine "ItemBriefcase100oz";
				player addMagazine "ItemBriefcase90oz";
												};
											};
										};
									};
								};
							};
						};
					};
				};
			};
		};
	} else {
		player removeAction s_playerHeal;
		s_playerHeal = -1; // Make sure action is removed
		cutText [format["Нужно 10 Gold"], "PLAIN DOWN"];
	};
};

Если во время лечения перекинуть золото в рюкзак, то и персонаж вылечится и доктор сдачу даст. В короткое время можно стать миллионером. Прошу помощи в фиксе.

 

Как вариант делать чек на наличие золота в сумке:

getWeaponCargo unitBackpack player
getMagazineCargo unitBackpack player

 

и на исполнение скрипта повесить вначале и в конце:

disableUserInput true;


disableUserInput false;

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах



  • 0

Боюсь что не подойдет, т.к. при начале лечения золота в сумке нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Похожие публикации

    • Автор: Miduznya
      Всем привет, чет не нашел не где как можно в ручную обновить через .bat или .cmd файл
      если есть у кого такой поделитесь плиз. Прошу сильно не пинать если есть такая тема дайте ссылку
    • Автор: SpiritWolf
      Подскажите, может, кто сталкивался с проблемой, когда используешь суицид, персонаж ресается в том же месте, с тем же лутом.
      При этом после нажатия суицида, персонаж перемещается за карту, а после релога дюпается в месте смерти.
       
      P.S Вот такую ошибочку после суицида в логе сервера выдает:
       
      20:17:58 Error in expression <died set [count dayz_died, _playerID];
      _newObject setVariable ["bodyName",_play>
      20:17:58   Error position: <_newObject setVariable ["bodyName",_play>
      20:17:58   Error Undefined variable in expression: _newobject
      20:17:58 File z\addons\dayz_server\compile\server_playerDied.sqf, line 29
    • Автор: RedLink
      Всем привет.
      Один из разработчиков мода Epoch (Salival's scripts) поделился скриптом для админ-панели Инфистара, чтобы вручную спавнить миссии WAI, DZMS, а также ивенты.
       
      Открываем файл админ-панели Инфистара AT.sqf и ищем код (примерно 289-я строка):
      adminadd = adminadd + [" Force Disconnect (Self)",{(findDisplay 46) closeDisplay 0;},"0","0","0","0",[]]; }; и после нее вставляем:
       
      Где [EVENT] - это ивенты которые хранятся у меня в папке "modules", а "building_supplies" - это наименование файла (пробелов быть не должно).
      Где [HERO]/[BANDIT] - это мисии для Героев/Бандитов. Так же в строке идет наименование папки "hero"/"bandit", и соответственно наименование файла миссии, например "abandoned_trader", которые соответствуют наименованию файла миссии в папке с героем или бандитом.
      Тоже самое и для миссий DZMS - "major"/"minor" - это имя папки миссий, а "SMxxx" - это имя файла миссии.
       
      Далее открываем сам Инфистар - AH.sqf и ищем следующие строки:
      } forEach _arrayforcrate; }; и под ними вставляем:
      if(_option == 8000) then { _mtype = _array select 2; _mname = _array select 3; if (_mtype == "hero" || {_mtype == "bandit"}) then { diag_log format ["%1 (%2) Spawning mission [%3] %4",name (_array select 1),getPlayerUID (_array select 1),_mtype,_mname]; wai_mission_markers set [(count wai_mission_markers), format ["Main%1%2",_mtype,count(wai_mission_data)]]; if (isNil "ai_show_count") then {wai_mission_data = wai_mission_data + [[0,"",[],[0,0,0]]];} else {wai_mission_data = wai_mission_data + [[0,[],[],[],[]]]}; execVM format ["\z\addons\dayz_server\WAI\missions\%1\%2.sqf",_mtype,_mname]; _sl = format['%1 (%2) spawned WAI\missions\%3\%4.sqf',_clientName,_clientUID,_mtype,_mname]; PVAH_WriteLogReq = [_playerObj,toArray _sl]; publicVariableServer 'PVAH_WriteLogReq'; }; if (_mtype == "event") then { [] execVM "\z\addons\dayz_server\modules\" + _mname + ".sqf"; _sl = format['%1 (%2) spawned Event - %3.sqf',_clientName,_clientUID,_mname]; PVAH_WriteLogReq = [_playerObj,toArray _sl]; publicVariableServer 'PVAH_WriteLogReq'; }; if (_mtype == "major" || {_mtype == "minor"}) then { diag_log format ["%1 (%2) Spawning mission [%3] %4",name (_array select 1),getPlayerUID (_array select 1),_mtype,_mname]; execVM format ["\z\addons\dayz_server\DZMS\missions\%1\%2.sqf",_mtype,_mname]; _sl = format['%1 (%2) spawned DZMS\missions\%3\%4.sqf',_clientName,_clientUID,_mtype,_mname]; PVAH_WriteLogReq = [_playerObj,toArray _sl]; publicVariableServer 'PVAH_WriteLogReq'; }; }; Отдельно добавлю, что все миссии, которые спавнит админ, записываются в лог файл и панель Инфистара.
       

      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
    • Автор: SPIRT
      Поделюсь еще одним рецептом )))))
      Имеем сервер Арма3 который запускаем для себя любимого и для друга, системник, кабель интернета и роутер или модем кому как нравится, так в чем проблема спросите, а вот в чем, если кабель инета подключен напрямую в системник то сервер виден в сетевой игре, а вот если подключаем интернет через модем то наш сервер пропадает из видимости. Бросаемся открывать порты, смотреть что не так, кароч глаза на лоб. Я тоже через все это прошел. Решилась проблема незатейливо включением на роутере функции DMZ или функции демилитаризованная зона. Расскажу на примере собственного роутера  ASUS. Собственно к делу :  Открываем в брузере настройки роутера, далее в левом меню нам нужна вкладка "Локальная сеть" 
      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

      в открывшемся меню жмем на вкладку "DHCP сервер" в низу видим ----- "Список присвоенных вручную IP-адресов в обход DHCP (Максимум : 64)" ------ там еть пустое поле 
      MAC-адрес со стрелочкой, жмем на стрелку вылезает имя нашего компьтера и ip адрес  --- жмем "добавить"  на "+" с правой стороны ,в итоге получаем мак адрес нашей сетевой карты и присвоенный ip, жмем применить. 
      Идем далее ---  в левом меню выбираю вкладку интернет , в верхнем баре появляются разделы ..... ...... ..... "DMZ" Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
      жмем на нее  вылезает вкладка на ней 2 поля "Включить DMZ" и "IP-адрес выделенной станции", в первом жмем включить, во втором клацаем в пустое поле появляется IP адрес, или вбиваем в ручную тот который выпал рядом с мак адресом сетевой карты  ---- жмем применить . Обязательно перезагружаем модем.
       Далее запускаем свой сервак Арма и радуемся.
      Кому помогло + в репу.
  • Наш выбор

×
×
  • Создать...

Важная информация

Используя этот сайт, вы автоматически обязуетесь соблюдать наши Правила и Политика конфиденциальности.
Чтобы сделать этот веб-сайт лучше, мы разместили cookies на вашем устройстве. Вы можете изменить свои настройки cookies, в противном случае мы будем считать, что вы согласны с этим.