Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Need help?

    Create a topic in the appropriate section
    Don't write everything in the chat!
  • Take a look at the marketplace

    There you can buy
    everything related to game servers
  • Don't want a ban?

    Please read our rules
    Don't disturb the order!
  • Sell or buy?

    Use services of the guarantor
    We will make your deal safe
  • 0
pekar0201

Запрещённые предметы!

Как сделать список запрещённых предметов, к примеру - в донате у меня есть AS50 ТВП, как сделать так, чтобы обычные игроки не смогли взять его в руки ???
За помощь поставлю +.

Share this post


Link to post
Share on other sites

18 answers to this question

Recommended Posts

  • 0

Как сделать список запрещённых предметов, к примеру - в донате у меня есть AS50 ТВП, как сделать так, чтобы обычные игроки не смогли взять его в руки ???

За помощь поставлю +.

Можешь использовать проверку запрещённых предметов из инфи в качестве примера, добавив туда проверку по UID донатеров.

(getPlayerUID player) in ["UID", "UID", "UID"] и т.д. и т.п.

Share this post


Link to post
Share on other sites



  • 0

Можешь использовать проверку запрещённых предметов из инфи в качестве примера, добавив туда проверку по UID донатеров.

(getPlayerUID player) in ["UID", "UID", "UID"] и т.д. и т.п.

Так он сразу в бан отправляет, а оно мне не надо такого!!!!

Потом долбись с разбаном человека только!

Нужно дабы просто пропадал запрещённый предмет с инвентаря игрока, либо как-то по другому!

Share this post


Link to post
Share on other sites
  • 0

Так он сразу в бан отправляет, а оно мне не надо такого!!!!

Потом долбись с разбаном человека только!

Нужно дабы просто пропадал запрещённый предмет с инвентаря игрока, либо как-то по другому!

Ну естественно переписать функцию под себя и вырезать бан. Я же пишу, что используй как пример добавив своё и убрав что не нужно.)

Share this post


Link to post
Share on other sites
  • 0

Ну естественно переписать функцию под себя и вырезать бан. Я же пишу, что используй как пример добавив своё и убрав что не нужно.)

Я чёт даже не нашёл такой хренотени в AH.sqf

В AH Config.sqf тож не нашёл...

Share this post


Link to post
Share on other sites
  • 0

Я чёт даже не нашёл такой хренотени в AH.sqf

В AH Config.sqf тож не нашёл...

[] spawn {
			while{1 == 1}do
			{
				_inv = [];
				_inv = _inv + (magazines player);
				_inv = _inv + (weapons player);
				if(!isNull (unitBackpack player))then
				{
					_BW = (getWeaponCargo unitBackpack player) select 0;
					_BM = (getMagazineCargo unitBackpack player) select 0;
					_inv = _inv + _BW + _BM;
				};
				if(isNil 'DayZ_onBack')then{DayZ_onBack = '';};
				if(!isNil 'DZE_Lock_Door')then{DayZ_onBack = '';};
				_inv = _inv + [DayZ_onBack];
				
				{
					if((_x in _inv) && (_x != ''))then
					{
						[_x] spawn {
							_y = _this select 0;
							for '_i' from 0 to ({_x == _y} count (weapons player)) do {player removeWeapon _y;};
							player removeMagazines _y;
							for '_w' from 0 to 10 do {uiSleep 0.1;player removeWeapon _y;player removeMagazines _y;};
						};
						if(player distance "+str _mPos+" > 500)then
						{
							[] spawn {
								player setDamage 5;
								deleteVehicle player;
							};
							
							[] spawn "+_randvar2+";
							_log = format['BadItem: %1',_x];
							_name = 'DEAD';if((alive player)&&(getPlayerUID player != ''))then{_name = name player;};
							[_name,getPlayerUID player,'BAN',toArray (_log)] call "+_randvar24937+";
						};
					};
				} forEach ("+str _ForbiddenItems+" + ['FakeWeapon','RocketPods','GyroGrenadeLauncher','FFARLauncher','FFARLauncher_12','Rifle','M16_base',
				'HandGunBase','Put','M240_veh','M240_veh_2','M240_veh_MG_Nest','PKT','PKT_MG_Nest','PKT_veh','DT_veh','M2',
				'M3P','DSHKM','KORD','KPVT','M168','M197','AZP85','2A14','GAU12','2A42','M242','GAU8','2A38M','AGS30','AGS17',
				'MK19','M119','M256','D30','D81','ZiS_S_53','2A46M','FFARLauncher_14','CamelGrenades','57mmLauncher',
				'57mmLauncher_64','57mmLauncher_128','80mmLauncher','S8Launcher','MissileLauncher','SidewinderLaucher',
				'SidewinderLaucher_F35','SidewinderLaucher_AH1Z','AT5Launcher','AT5LauncherSingle','2A46MRocket','AT10LauncherSingle',
				'AT11LauncherSingle','AT13LauncherSingle','TOWLauncher','TOWLauncherSingle','HellfireLauncher','VikhrLauncher',
				'BombLauncher','BombLauncherF35','BombLauncherA10','SEARCHLIGHT','CarHorn','BikeHorn','TruckHorn','TruckHorn2',
				'SportCarHorn','MiniCarHorn','R73Launcher','R73Launcher_2','Ch29Launcher','Ch29Launcher_Su34','2A70Rocket','2A70',
				'AT6Launcher','AT9Launcher','AT2Launcher','HeliBombLauncher','AirBombLauncher','Mk82BombLauncher','Mk82BombLauncher_6',
				'StingerLaucher','StingerLauncher_twice','AALauncher_twice','Igla_twice','MaverickLauncher','9M311Laucher',
				'WeaponExplosive','M252','2B14','MeleeWeapon','m8_base','PKT_2','PKT_3','SidewinderLaucher_AH64','M230','BAF_L2A1',
				'BAF_M240_veh','BAF_L7A2','BAF_L94A1','BAF_static_GMG','BAF_GMG','CTWS','CRV7_PG','CRV7_HEPD','CRV7_FAT','M621','M68',
				'D10','PKTBC','PKTBC_veh','SGMT','HellfireLauncher_AH6','StingerLaucher_4x','M242BC','M240BC_veh','M2BC','MK19BC',
				'M120','GrenadeLauncher_EP1','SCAR_Base','SCAR_L_Base','SCAR_H_Base','PKT_high_AI_dispersion','PKT_high_AI_dispersion_tank',
				'AGS30_heli','M32_heli','CZ805_A1_ACR','CZ805_A1_GL_ACR','CZ805_B_GL_ACR','2A42_AI','ATKMK44_ACR_AI','M242_AI','M242BC_AI',
				'CTWS_AI','M256_AI','M68_AI','D81_AI','2A46M_AI','D81CZ_AI','D10_AI','ZiS_S_53_AI','ATKMK44_ACR','D81CZ','2A72','ItemMap_Debug',
				'CMFlareLauncher','FlareLauncher','GRAD','GSh23L','GSh23L_L39','GSh301','GSh302','M134','M134_2','MLRS',
				'SmokeLauncher','SPG9','TwinM134','TwinVickers','YakB']);
				uiSleep 15;
			};
		};

Вырезай бан, оставляй изъятие запрещенного итема и добавляй в исключение айдишники донатеров.

Share this post


Link to post
Share on other sites
  • 0

 

[] spawn {
			while{1 == 1}do
			{
				_inv = [];
				_inv = _inv + (magazines player);
				_inv = _inv + (weapons player);
				if(!isNull (unitBackpack player))then
				{
					_BW = (getWeaponCargo unitBackpack player) select 0;
					_BM = (getMagazineCargo unitBackpack player) select 0;
					_inv = _inv + _BW + _BM;
				};
				if(isNil 'DayZ_onBack')then{DayZ_onBack = '';};
				if(!isNil 'DZE_Lock_Door')then{DayZ_onBack = '';};
				_inv = _inv + [DayZ_onBack];
				
				{
					if((_x in _inv) && (_x != ''))then
					{
						[_x] spawn {
							_y = _this select 0;
							for '_i' from 0 to ({_x == _y} count (weapons player)) do {player removeWeapon _y;};
							player removeMagazines _y;
							for '_w' from 0 to 10 do {uiSleep 0.1;player removeWeapon _y;player removeMagazines _y;};
						};
						if(player distance "+str _mPos+" > 500)then
						{
							[] spawn {
								player setDamage 5;
								deleteVehicle player;
							};
							
							[] spawn "+_randvar2+";
							_log = format['BadItem: %1',_x];
							_name = 'DEAD';if((alive player)&&(getPlayerUID player != ''))then{_name = name player;};
							[_name,getPlayerUID player,'BAN',toArray (_log)] call "+_randvar24937+";
						};
					};
				} forEach ("+str _ForbiddenItems+" + ['FakeWeapon','RocketPods','GyroGrenadeLauncher','FFARLauncher','FFARLauncher_12','Rifle','M16_base',
				'HandGunBase','Put','M240_veh','M240_veh_2','M240_veh_MG_Nest','PKT','PKT_MG_Nest','PKT_veh','DT_veh','M2',
				'M3P','DSHKM','KORD','KPVT','M168','M197','AZP85','2A14','GAU12','2A42','M242','GAU8','2A38M','AGS30','AGS17',
				'MK19','M119','M256','D30','D81','ZiS_S_53','2A46M','FFARLauncher_14','CamelGrenades','57mmLauncher',
				'57mmLauncher_64','57mmLauncher_128','80mmLauncher','S8Launcher','MissileLauncher','SidewinderLaucher',
				'SidewinderLaucher_F35','SidewinderLaucher_AH1Z','AT5Launcher','AT5LauncherSingle','2A46MRocket','AT10LauncherSingle',
				'AT11LauncherSingle','AT13LauncherSingle','TOWLauncher','TOWLauncherSingle','HellfireLauncher','VikhrLauncher',
				'BombLauncher','BombLauncherF35','BombLauncherA10','SEARCHLIGHT','CarHorn','BikeHorn','TruckHorn','TruckHorn2',
				'SportCarHorn','MiniCarHorn','R73Launcher','R73Launcher_2','Ch29Launcher','Ch29Launcher_Su34','2A70Rocket','2A70',
				'AT6Launcher','AT9Launcher','AT2Launcher','HeliBombLauncher','AirBombLauncher','Mk82BombLauncher','Mk82BombLauncher_6',
				'StingerLaucher','StingerLauncher_twice','AALauncher_twice','Igla_twice','MaverickLauncher','9M311Laucher',
				'WeaponExplosive','M252','2B14','MeleeWeapon','m8_base','PKT_2','PKT_3','SidewinderLaucher_AH64','M230','BAF_L2A1',
				'BAF_M240_veh','BAF_L7A2','BAF_L94A1','BAF_static_GMG','BAF_GMG','CTWS','CRV7_PG','CRV7_HEPD','CRV7_FAT','M621','M68',
				'D10','PKTBC','PKTBC_veh','SGMT','HellfireLauncher_AH6','StingerLaucher_4x','M242BC','M240BC_veh','M2BC','MK19BC',
				'M120','GrenadeLauncher_EP1','SCAR_Base','SCAR_L_Base','SCAR_H_Base','PKT_high_AI_dispersion','PKT_high_AI_dispersion_tank',
				'AGS30_heli','M32_heli','CZ805_A1_ACR','CZ805_A1_GL_ACR','CZ805_B_GL_ACR','2A42_AI','ATKMK44_ACR_AI','M242_AI','M242BC_AI',
				'CTWS_AI','M256_AI','M68_AI','D81_AI','2A46M_AI','D81CZ_AI','D10_AI','ZiS_S_53_AI','ATKMK44_ACR','D81CZ','2A72','ItemMap_Debug',
				'CMFlareLauncher','FlareLauncher','GRAD','GSh23L','GSh23L_L39','GSh301','GSh302','M134','M134_2','MLRS',
				'SmokeLauncher','SPG9','TwinM134','TwinVickers','YakB']);
				uiSleep 15;
			};
		};

Вырезай бан, оставляй изъятие запрещенного итема и добавляй в исключение айдишники донатеров.

Ухх, сложна!!!

Не поможешь?? :3

Куда добавить юиды донатеров, и где тут бан находится...

Share this post


Link to post
Share on other sites
  • 0

 

Ухх, сложна!!! Не поможешь?? :3 Куда добавить юиды донатеров, и где тут бан находится...


Условие отвечающее за убийство и бан читера. Нужно вырезать:
if(player distance "+str _mPos+" > 500)then
						{
							[] spawn {
								player setDamage 5;
								deleteVehicle player;
							};
							
							[] spawn "+_randvar2+";
							_log = format['BadItem: %1',_x];
							_name = 'DEAD';if((alive player)&&(getPlayerUID player != ''))then{_name = name player;};
							[_name,getPlayerUID player,'BAN',toArray (_log)] call "+_randvar24937+";
						};

Условие отвечающее за изъятие запрещённого итема. Сюда нужно добавлять исключение для донатеров:

if((_x in _inv) && (_x != ''))then
					{
						[_x] spawn {
							_y = _this select 0;
							for '_i' from 0 to ({_x == _y} count (weapons player)) do {player removeWeapon _y;};
							player removeMagazines _y;
							for '_w' from 0 to 10 do {uiSleep 0.1;player removeWeapon _y;player removeMagazines _y;};
						};
					};

Это массив с итемами, которые будут изыматься у простых смертных, а у донатеров нет. Вписываешь своё:

forEach ['FakeWeapon','RocketPods','GyroGrenadeLauncher','FFARLauncher','FFARLauncher_12','Rifle','M16_base',
				'HandGunBase','Put','M240_veh','M240_veh_2','M240_veh_MG_Nest','PKT','PKT_MG_Nest','PKT_veh','DT_veh','M2',
				'M3P','DSHKM','KORD','KPVT','M168','M197','AZP85','2A14','GAU12','2A42','M242','GAU8','2A38M','AGS30','AGS17',
				'MK19','M119','M256','D30','D81','ZiS_S_53','2A46M','FFARLauncher_14','CamelGrenades','57mmLauncher',
				'57mmLauncher_64','57mmLauncher_128','80mmLauncher','S8Launcher','MissileLauncher','SidewinderLaucher',
				'SidewinderLaucher_F35','SidewinderLaucher_AH1Z','AT5Launcher','AT5LauncherSingle','2A46MRocket','AT10LauncherSingle',
				'AT11LauncherSingle','AT13LauncherSingle','TOWLauncher','TOWLauncherSingle','HellfireLauncher','VikhrLauncher',
				'BombLauncher','BombLauncherF35','BombLauncherA10','SEARCHLIGHT','CarHorn','BikeHorn','TruckHorn','TruckHorn2',
				'SportCarHorn','MiniCarHorn','R73Launcher','R73Launcher_2','Ch29Launcher','Ch29Launcher_Su34','2A70Rocket','2A70',
				'AT6Launcher','AT9Launcher','AT2Launcher','HeliBombLauncher','AirBombLauncher','Mk82BombLauncher','Mk82BombLauncher_6',
				'StingerLaucher','StingerLauncher_twice','AALauncher_twice','Igla_twice','MaverickLauncher','9M311Laucher',
				'WeaponExplosive','M252','2B14','MeleeWeapon','m8_base','PKT_2','PKT_3','SidewinderLaucher_AH64','M230','BAF_L2A1',
				'BAF_M240_veh','BAF_L7A2','BAF_L94A1','BAF_static_GMG','BAF_GMG','CTWS','CRV7_PG','CRV7_HEPD','CRV7_FAT','M621','M68',
				'D10','PKTBC','PKTBC_veh','SGMT','HellfireLauncher_AH6','StingerLaucher_4x','M242BC','M240BC_veh','M2BC','MK19BC',
				'M120','GrenadeLauncher_EP1','SCAR_Base','SCAR_L_Base','SCAR_H_Base','PKT_high_AI_dispersion','PKT_high_AI_dispersion_tank',
				'AGS30_heli','M32_heli','CZ805_A1_ACR','CZ805_A1_GL_ACR','CZ805_B_GL_ACR','2A42_AI','ATKMK44_ACR_AI','M242_AI','M242BC_AI',
				'CTWS_AI','M256_AI','M68_AI','D81_AI','2A46M_AI','D81CZ_AI','D10_AI','ZiS_S_53_AI','ATKMK44_ACR','D81CZ','2A72','ItemMap_Debug',
				'CMFlareLauncher','FlareLauncher','GRAD','GSh23L','GSh23L_L39','GSh301','GSh302','M134','M134_2','MLRS',
				'SmokeLauncher','SPG9','TwinM134','TwinVickers','YakB'];

Share this post


Link to post
Share on other sites
  • 0

@@Loot, красавчик. Не каждый бы так расписывать стал. Плюс тебе за старания  :good:

Share this post


Link to post
Share on other sites
  • 0

 

 

Условие отвечающее за убийство и бан читера. Нужно вырезать:

if(player distance "+str _mPos+" > 500)then
						{
							[] spawn {
								player setDamage 5;
								deleteVehicle player;
							};
							
							[] spawn "+_randvar2+";
							_log = format['BadItem: %1',_x];
							_name = 'DEAD';if((alive player)&&(getPlayerUID player != ''))then{_name = name player;};
							[_name,getPlayerUID player,'BAN',toArray (_log)] call "+_randvar24937+";
						};

Условие отвечающее за изъятие запрещённого итема. Сюда нужно добавлять исключение для донатеров:

if((_x in _inv) && (_x != ''))then
					{
						[_x] spawn {
							_y = _this select 0;
							for '_i' from 0 to ({_x == _y} count (weapons player)) do {player removeWeapon _y;};
							player removeMagazines _y;
							for '_w' from 0 to 10 do {uiSleep 0.1;player removeWeapon _y;player removeMagazines _y;};
						};
					};

Это массив с итемами, которые будут изыматься у простых смертных, а у донатеров нет. Вписываешь своё:

forEach ['FakeWeapon','RocketPods','GyroGrenadeLauncher','FFARLauncher','FFARLauncher_12','Rifle','M16_base',
				'HandGunBase','Put','M240_veh','M240_veh_2','M240_veh_MG_Nest','PKT','PKT_MG_Nest','PKT_veh','DT_veh','M2',
				'M3P','DSHKM','KORD','KPVT','M168','M197','AZP85','2A14','GAU12','2A42','M242','GAU8','2A38M','AGS30','AGS17',
				'MK19','M119','M256','D30','D81','ZiS_S_53','2A46M','FFARLauncher_14','CamelGrenades','57mmLauncher',
				'57mmLauncher_64','57mmLauncher_128','80mmLauncher','S8Launcher','MissileLauncher','SidewinderLaucher',
				'SidewinderLaucher_F35','SidewinderLaucher_AH1Z','AT5Launcher','AT5LauncherSingle','2A46MRocket','AT10LauncherSingle',
				'AT11LauncherSingle','AT13LauncherSingle','TOWLauncher','TOWLauncherSingle','HellfireLauncher','VikhrLauncher',
				'BombLauncher','BombLauncherF35','BombLauncherA10','SEARCHLIGHT','CarHorn','BikeHorn','TruckHorn','TruckHorn2',
				'SportCarHorn','MiniCarHorn','R73Launcher','R73Launcher_2','Ch29Launcher','Ch29Launcher_Su34','2A70Rocket','2A70',
				'AT6Launcher','AT9Launcher','AT2Launcher','HeliBombLauncher','AirBombLauncher','Mk82BombLauncher','Mk82BombLauncher_6',
				'StingerLaucher','StingerLauncher_twice','AALauncher_twice','Igla_twice','MaverickLauncher','9M311Laucher',
				'WeaponExplosive','M252','2B14','MeleeWeapon','m8_base','PKT_2','PKT_3','SidewinderLaucher_AH64','M230','BAF_L2A1',
				'BAF_M240_veh','BAF_L7A2','BAF_L94A1','BAF_static_GMG','BAF_GMG','CTWS','CRV7_PG','CRV7_HEPD','CRV7_FAT','M621','M68',
				'D10','PKTBC','PKTBC_veh','SGMT','HellfireLauncher_AH6','StingerLaucher_4x','M242BC','M240BC_veh','M2BC','MK19BC',
				'M120','GrenadeLauncher_EP1','SCAR_Base','SCAR_L_Base','SCAR_H_Base','PKT_high_AI_dispersion','PKT_high_AI_dispersion_tank',
				'AGS30_heli','M32_heli','CZ805_A1_ACR','CZ805_A1_GL_ACR','CZ805_B_GL_ACR','2A42_AI','ATKMK44_ACR_AI','M242_AI','M242BC_AI',
				'CTWS_AI','M256_AI','M68_AI','D81_AI','2A46M_AI','D81CZ_AI','D10_AI','ZiS_S_53_AI','ATKMK44_ACR','D81CZ','2A72','ItemMap_Debug',
				'CMFlareLauncher','FlareLauncher','GRAD','GSh23L','GSh23L_L39','GSh301','GSh302','M134','M134_2','MLRS',
				'SmokeLauncher','SPG9','TwinM134','TwinVickers','YakB'];

Я так и не вшарил, как добавить исключение для донатеров!!!!

 

P.S. Пробовал - if ((getPlayerUID player) in ["UID") then {

Но не получается!

Что я делаю не так?

Edited by FROZ (see edit history)

Share this post


Link to post
Share on other sites
  • 0

 

Я так и не вшарил, как добавить исключение для донатеров!!!! P.S. Пробовал - if ((getPlayerUID player) in ["UID") then { Но не получается! Что я делаю не так?


Дык ты исключение то добавляй. Чтоб знал, знак ! означает исключение того, перед чем он находится.
Заменяй, вписывай айдишники вместо uid_донатера и ниже донатерское барахло вместо донат_итем.
Айдишники и итемы добавляешь путем добавления ,''
		[] spawn {
			while{1 == 1}do
			{
				_inv = [];
				_inv = _inv + (magazines player);
				_inv = _inv + (weapons player);
				if(!isNull (unitBackpack player))then
				{
					_BW = (getWeaponCargo unitBackpack player) select 0;
					_BM = (getMagazineCargo unitBackpack player) select 0;
					_inv = _inv + _BW + _BM;
				};
				if(isNil 'DayZ_onBack')then{DayZ_onBack = '';};
				if(!isNil 'DZE_Lock_Door')then{DayZ_onBack = '';};
				_inv = _inv + [DayZ_onBack];
				
				{
					if !((getPlayerUID player) in ['uid_донатера', 'uid_донатера', 'uid_донатера']) then
					{
						if((_x in _inv) && (_x != ''))then
						{
							[_x] spawn {
								_y = _this select 0;
								for '_i' from 0 to ({_x == _y} count (weapons player)) do {player removeWeapon _y;};
								player removeMagazines _y;
								for '_w' from 0 to 10 do {uiSleep 0.1;player removeWeapon _y;player removeMagazines _y;};
							};
						};
					};
				} forEach ['донат_итем','донат_итем','донат_итем'];
				uiSleep 15;
			};
		};

Share this post


Link to post
Share on other sites
  • 0

Как сделать список запрещённых предметов, к примеру - в донате у меня есть AS50 ТВП, как сделать так, чтобы обычные игроки не смогли взять его в руки ???

За помощь поставлю +.

Может кто отвечал уже,но повторю. Почему не сделать удаление определенныхитемов с трупов? В какой то теме ниже скидывали код.

Share this post


Link to post
Share on other sites
  • 0

Может кто отвечал уже,но повторю. Почему не сделать удаление определенныхитемов с трупов? В какой то теме ниже скидывали код.

А смысл? Тут проще.

Да и каждый лишний скрипт - минус производительность.

Share this post


Link to post
Share on other sites
  • 0

 

Может кто отвечал уже,но повторю. Почему не сделать удаление определенныхитемов с трупов? В какой то теме ниже скидывали код.


А смысл? Тут проще.


Оба способа реализации донатных вещей отрицательно скажутса на обычных игроках, т.к. с их стороны будут претензии, что с донатеров нельзя будет собрать никаких трофеев или лут найденный игроком на карте будет у него отобран потому что совпадет с донатным и пр. Как было подмечено в теме http://s-platoon.ru/index.php?/topic/5702-sdelat-propazhu-veschei-posle-smerti/ нужно как то отделять донатные предметы от стандартных. Хотя бы убрать их из таблицы спавна, чтоб обычный игрок не смог их найти.
 

Share this post


Link to post
Share on other sites
  • 0

Пну труп. Можно как то подключить отдельный файл с UID донатеров?

Share this post


Link to post
Share on other sites
  • 0

Т.к. скрипт работает на клиенте, а настройки производятся с сервера, нужно как то передать настройку всем клиентам. Как вариант publicVariable. Другие варианты рассматривать не буду, тк не работал с инфистаром в принципе.

----

Создаем файл, к примеру donatUIDs.txt в корневой папке сервера.

В файле, где спавнятся тачки и строения на старте сервера, в самом низу пишем:

donatUIDs = Call Compile PreProcessFile "donatUIDs.txt";
publicVariable "donatUIDs";

Тем самым, объявляем переменную donatUIDs на весь сервер. После старта она сохранится и будет передаваться любому зашедшему игроку.

Далее, хватаю строку кода из ПРЕДпоследнего поста "Loot":

if !((getPlayerUID player) in ['uid_донатера', 'uid_донатера', 'uid_донатера']) then

Меняем ее следующим образом:

if !((getPlayerUID player) in donatUIDs) then

Получается, теперь будет сканироваться списой UID донатеров, который загружается при старте сервера и вещается через глобальную переменную donatUIDs. Тем самым, можно менять список донатеров в файле donatUIDs.txt во время работы сервера (но это не точно)) ). Во всяком случае можно задействовать фишку из батников, которая заменяет файл на более новый, если он собственно есть (ищи: обновление миссии не дожидаясь рестарта сервера).

Собственно, как составлять тот файл donatUIDs.txt (расширение может быть любым, можно и вообще без него):

['uid_донатера', 'uid_донатера', 'uid_донатера']

Там нужен только массив, и ничего лишнего )

P.S. для батлая, и инфистара за глобальную переменную исключения вносите сами. Вот.

Share this post


Link to post
Share on other sites
  • 0
3 часа назад, svalom сказал:

Т.к. скрипт работает на клиенте, а настройки производятся с сервера, нужно как то передать настройку всем клиентам. Как вариант publicVariable. Другие варианты рассматривать не буду, тк не работал с инфистаром в принципе.

----

Создаем файл, к примеру donatUIDs.txt в корневой папке сервера.

В файле, где спавнятся тачки и строения на старте сервера, в самом низу пишем:


donatUIDs = Call Compile PreProcessFile "donatUIDs.txt";
publicVariable "donatUIDs";

Тем самым, объявляем переменную donatUIDs на весь сервер. После старта она сохранится и будет передаваться любому зашедшему игроку.

Далее, хватаю строку кода из ПРЕДпоследнего поста "Loot":


if !((getPlayerUID player) in ['uid_донатера', 'uid_донатера', 'uid_донатера']) then

Меняем ее следующим образом:


if !((getPlayerUID player) in donatUIDs) then

Получается, теперь будет сканироваться списой UID донатеров, который загружается при старте сервера и вещается через глобальную переменную donatUIDs. Тем самым, можно менять список донатеров в файле donatUIDs.txt во время работы сервера (но это не точно)) ). Во всяком случае можно задействовать фишку из батников, которая заменяет файл на более новый, если он собственно есть (ищи: обновление миссии не дожидаясь рестарта сервера).

Собственно, как составлять тот файл donatUIDs.txt (расширение может быть любым, можно и вообще без него):


['uid_донатера', 'uid_донатера', 'uid_донатера']

Там нужен только массив, и ничего лишнего )

P.S. для батлая, и инфистара за глобальную переменную исключения вносите сами. Вот.

Все заработало, спасибо

Share this post


Link to post
Share on other sites
  • 0

Но не до конца. Не удаляет из рюкзаков и не удаляет магазины к оружию.

Share this post


Link to post
Share on other sites
  • 0

А с техникой такое можно провернуть?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Goldbery
      Всем привет друзья, сталкнулся с таким дюпом что при нажатии Шифт + нум- игрок вводит консольную команду и его выкидывает в лобби...

      Нашел решение данной проблемы, блокируются в инфистаре клавиши шифт + нум-

      Блокировку нашел, сделал, тут все работает, но столкнулся со следующей проблемой... если игрок нажимает запрещенные клавиши например F1, у него появляется на доли секунд белый экран, пишет что это хак меню и нажимать нельзя, но при этом его не блокирует как должно это делать на 5-10 секунд и он смело может продолжать движение...

      Версии инфистар моей примерно год





      Где то вроде в спойлере должна быть ошибка, долго ищу не могу найти, кто поможет зарание спасибо и + к репке)
       
  • Our picks

×
×
  • Create New...

Important Information

By using this site, you automaticly agree to our Guidelines and Privacy Policy.
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.