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

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

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

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

    Там вы можете продать или купить
    Всё что касается игровых серверов
  • 0
PJIIOxa

Как создать группировки с помощью скрипта

Вопрос

Подскажите как создать группировки с помощью скрипта + привязать к ним определенный сет экипировки + собственные точки респа?

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


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

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

Забронировать это рекламное место


  • 0

BorizzK Пробовал вот этот скрипт он работает, только вот проблемка в init.c у меня прописаны определенные стартовые комплекты экипировки которые идут рандомно для игрока, а при спавне игрока в комплекте из этого скрипта у него добавляются не нужные предметы из комплектов которые прописаны в init.c уже третий день мучаюсь и не знаю как это исправить.

Скрипт такой:

Как пример

Листинг fractions.c

class FGCL_PlayerData
{
	int side;
}

ref map<string, ref FGCL_PlayerData> FGV_PlayerList = new map<string, ref FGCL_PlayerData>;

class FGCL_Fractions
{
	
	void FGCL_Fractions()
	{
		FileHandle fp;
		
		fp = OpenFile( "$profile:data\\players.txt", FileMode.READ );
		if( !fp )
		{
			Print("[E] Can't read players list");
			return;
		}
		string buffer = "";
		while( FGets( fp, buffer ) > 0 )
		{
			int elements;
			TStringArray tokens = new TStringArray;
			
			buffer.Split( "|", tokens );
			elements = tokens.Count();
			if( elements > 1 ) {
				ref FGCL_PlayerData player = new FGCL_PlayerData;
				int side;
				string steamid;
				
				side = tokens.Get( 0 ).ToInt();
				steamid = tokens.Get( 1 );
				player.side = side;
				FGV_PlayerList.Set( steamid, player );
			}
		}
		CloseFile( fp );
	}
	
	void ~FGCL_Fractions()
	{
		
	}
	
	static int GetPlayerSide(PlayerIdentity identity)
	{
		FGCL_PlayerData player;
		
		if( !identity )
			return 0;
		
		player = FGV_PlayerList.Get( identity.GetPlainId() );
		if( !player ) {
			Print("[W] GetPlayerSide : No data for " + identity.GetPlainId() );
			Print("PlayerList.Count = " + FGV_PlayerList.Count().ToString() );
			return 0;
		}
		
		return player.side;
	}
	
	static vector GetPos(PlayerIdentity identity, vector pos)
	{
		FileHandle fp;
		FGCL_PlayerData player;
		int side;
		vector newpos;
		string posfilepath;
		
		side = GetPlayerSide( identity );
		if( !side )
			return pos;
		
		posfilepath = "$profile:data\\pos" + side.ToString() + ".txt";
		
		fp = OpenFile( posfilepath, FileMode.READ );
		if( !fp )
		{
			Print("[E] GetPos : Can't open posX.txt");
			return pos;
		}
		TVectorArray poses = new TVectorArray;
		string buffer = "";
		while( FGets( fp, buffer ) > 0 )
		{
			vector tmppos;
			newpos = buffer.ToVector();
			if( newpos )
			{
				poses.Insert( newpos );
			}
		}
		CloseFile(fp);
		
		int elements;
		elements = poses.Count();
		if( !elements )
		{
			return pos;
		}
		
		pos = poses.GetRandomElement();
		
		return pos;
	}
	
	static void EquipPlayer(PlayerBase player)
	{
		int side;
		
		side = GetPlayerSide( player.GetIdentity() );
		if( !side )
		{
			EquipDefault( player );
			return;
		}
		
		if( side == 100 )
			EquipRed( player );
		else if( side == 200 )
			EquipBlue( player );
		else if( side == 300 )
			EquipYellow( player );
		else if( side == 400 )
			EquipDefault( player );
		else if( side == 700 ) // me
			Equip700( player );
		else if( side == 701 ) // admin2
			Equip701( player );
		else if( side == 702 ) // admin3
			Equip702( player );
		else if( side == 703 ) // admin4
			Equip703( player );
		else if( side == 704 ) // admin5
			Equip704( player );
		else if( side == 705 ) // admin6
			Equip705( player );
		else
			EquipDefault( player );
		return;
	}
	
	static void EquipDefault(PlayerBase player)
	{
		GameInventory inv;
		EntityAI itemEnt;
		EntityAI iebag;
		EntityAI ietop;
		EntityAI iepants;
		
		inv = player.GetInventory();

		inv.CreateInInventory("Armband_White");

		TStringArray backpack = {"MountainBag_Red","MountainBag_Blue","MountainBag_Orange","MountainBag_Green"};
		iebag = inv.CreateInInventory(backpack.GetRandomElement());

		TStringArray headgear = {"RadarCap_Black","RadarCap_Blue","RadarCap_Brown","RadarCap_Green","RadarCap_Red"};
		inv.CreateInInventory(headgear.GetRandomElement());
		TStringArray jackets = {"JumpsuitJacket_Blue","JumpsuitJacket_Gray","JumpsuitJacket_Green","JumpsuitJacket_Red"};
		ietop = inv.CreateInInventory(jackets.GetRandomElement());
		TStringArray pants = {"JumpsuitPants_Blue","JumpsuitPants_Green","JumpsuitPants_Grey","JumpsuitPants_Red"};
		iepants = inv.CreateInInventory(pants.GetRandomElement());
		TStringArray shoes = {"HikingBootsLow_Black","HikingBootsLow_Blue","HikingBootsLow_Beige","HikingBootsLow_Grey"};
		inv.CreateInInventory(shoes.GetRandomElement());

		iebag.GetInventory().CreateInInventory("Raincoat_Orange");

		TStringArray knife = {"SteakKnife","HuntingKnife","CombatKnife"};
		iepants.GetInventory().CreateInInventory(knife.GetRandomElement());

		itemEnt = iebag.GetInventory().CreateInInventory("Flashlight");
		itemEnt.GetInventory().CreateAttachment("Battery9V");
		
		ietop.GetInventory().CreateInInventory("OrienteeringCompass");

		TStringArray drink = {"WaterBottle","SodaCan_Cola","SodaCan_Kvass","SodaCan_Pipsi","SodaCan_Spite"};
		iebag.GetInventory().CreateInInventory(drink.GetRandomElement());

		TStringArray food = {"BakedBeansCan","PeachesCan","SpaghettiCan","SardinesCan","TunaCan"};
		iebag.GetInventory().CreateInInventory(food.GetRandomElement());
		iebag.GetInventory().CreateInInventory(food.GetRandomElement());
		
		itemEnt = ietop.GetInventory().CreateInInventory("PersonalRadio");
		itemEnt.GetInventory().CreateAttachment("Battery9V");

		player.GetHumanInventory().CreateInHands("Izh18");
		inv.CreateInInventory("AmmoBox_762x39_20Rnd");

		
		switch( Math.RandomInt(0,1) )
		{
			case 0:
			{
				ItemBase itemBs;
				itemEnt = iebag.GetInventory().CreateInInventory("Rag");
				itemBs = ItemBase.Cast(itemEnt);
				itemBs.SetQuantity(4);
				break;
			}
			case 1:
			{
				itemEnt = iebag.GetInventory().CreateInInventory("BandageDressing");
				break;
			}
		}
		
		ietop.GetInventory().CreateInInventory("Matchbox");

		iebag.GetInventory().CreateInInventory("Hatchet");
		
		return;
	}
	
	static void EquipRed(PlayerBase player)
	{
		GameInventory inv;
		EntityAI itemEnt;
		EntityAI ietop;
		EntityAI iepants;
		
		inv = player.GetInventory();
		
		inv.CreateInInventory("Armband_Red");

		inv.CreateInInventory("MilitaryBeret_Red");
		ietop = inv.CreateInInventory("TTsKOJacket_Camo");
		iepants = inv.CreateInInventory("TTSKOPants");
		itemEnt = inv.CreateInInventory("MilitaryBoots_Black");
		itemEnt = itemEnt.GetInventory().CreateInInventory("CombatKnife");

		ietop.GetInventory().CreateInInventory("BandageDressing");
		
		itemEnt = ietop.GetInventory().CreateInInventory("PersonalRadio");
		itemEnt.GetInventory().CreateAttachment("Battery9V");

		itemEnt = ietop.GetInventory().CreateInInventory("Flashlight");
		itemEnt.GetInventory().CreateAttachment("Battery9V");
		
		iepants.GetInventory().CreateInInventory("Matchbox");
		
		TStringArray food = {"BakedBeansCan","PeachesCan","TacticalBaconCan","SpaghettiCan","SardinesCan","TunaCan"};
		ietop.GetInventory().CreateInInventory(food.GetRandomElement());
		iepants.GetInventory().CreateInInventory(food.GetRandomElement());

		itemEnt = player.GetHumanInventory().CreateInHands("AKM");
		itemEnt.GetInventory().CreateAttachment("AK_PlasticHndgrd");
		itemEnt.GetInventory().CreateAttachment("AK_PlasticBttstck_Black");
		inv.CreateInInventory("Mag_AKM_30Rnd");
		inv.CreateInInventory("Mag_AKM_30Rnd");
		
		return;
	}
	
	static void EquipBlue(PlayerBase player)
	{
		GameInventory inv;
		EntityAI itemEnt;
		EntityAI ietop;
		EntityAI iepants;
		
		inv = player.GetInventory();
		
		inv.CreateInInventory("Armband_Blue");

		inv.CreateInInventory("MilitaryBeret_UN");
		ietop = inv.CreateInInventory("USMCJacket_Woodland");
		iepants = inv.CreateInInventory("USMCPants_Woodland");
		itemEnt = inv.CreateInInventory("MilitaryBoots_Beige");
		itemEnt = itemEnt.GetInventory().CreateInInventory("CombatKnife");

		ietop.GetInventory().CreateInInventory("BandageDressing");
		
		itemEnt = ietop.GetInventory().CreateInInventory("PersonalRadio");
		itemEnt.GetInventory().CreateAttachment("Battery9V");

		itemEnt = ietop.GetInventory().CreateInInventory("Flashlight");
		itemEnt.GetInventory().CreateAttachment("Battery9V");
		
		iepants.GetInventory().CreateInInventory("Matchbox");
		
		TStringArray food = {"BakedBeansCan","PeachesCan","TacticalBaconCan","SpaghettiCan","SardinesCan","TunaCan"};
		ietop.GetInventory().CreateInInventory(food.GetRandomElement());
		iepants.GetInventory().CreateInInventory(food.GetRandomElement());
		
		inv.CreateInInventory("M4_OEBttstck");
		inv.CreateInInventory("M4_MPBttstck");
		inv.CreateInInventory("M4_M4_CQBBttstck");

		itemEnt = player.GetHumanInventory().CreateInHands("M4A1");
		itemEnt.GetInventory().CreateAttachment("M4_OEBttstk");
		itemEnt.GetInventory().CreateAttachment("M4_PlasticHndgrd_Black");
		inv.CreateInInventory("Mag_STANAG_30Rnd");
		inv.CreateInInventory("Mag_STANAG_30Rnd");
		
		return;
	}
	
	static void EquipYellow(PlayerBase player)
	{
		GameInventory inv;
		EntityAI itemEnt;
		EntityAI ietop;
		EntityAI iepants;
		
		inv = player.GetInventory();
		
		inv.CreateInInventory("Armband_Yellow");

		inv.CreateInInventory("ImprovisedBag");

		inv.CreateInInventory("PrisonerCap");
		ietop = inv.CreateInInventory("PrisonUniformJacket");
		iepants = inv.CreateInInventory("PrisonUniformPants");

		TStringArray boots = {"WorkingBoots_Grey","WorkingBoots_Brown","WorkingBoots_Green","WorkingBoots_Yellow","WorkingBoots_Beige"};
		inv.CreateInInventory(boots.GetRandomElement());
		
		iepants.GetInventory().CreateInInventory("HuntingKnife");

		ietop.GetInventory().CreateInInventory("BandageDressing");
		
		itemEnt = ietop.GetInventory().CreateInInventory("PersonalRadio");
		itemEnt.GetInventory().CreateAttachment("Battery9V");

		itemEnt = iepants.GetInventory().CreateInInventory("Flashlight");
		itemEnt.GetInventory().CreateAttachment("Battery9V");
		
		ietop.GetInventory().CreateInInventory("Matchbox");
		
		TStringArray drink = {"WaterBottle","Vodka","SodaCan_Pipsi","SodaCan_Cola","SodaCan_Spite","SodaCan_Kvass"};
		ietop.GetInventory().CreateInInventory(drink.GetRandomElement());

		itemEnt = player.GetHumanInventory().CreateInHands("UMP45");
		itemEnt.GetInventory().CreateAttachment("M4_PlasticHndgrd");
		itemEnt.GetInventory().CreateAttachment("M4_MPBttstck");
		inv.CreateInInventory("Mag_UMP_25Rnd");
		
		return;
	}
	
	static void EquipMercenary(PlayerBase player) // Green - Наёмники
	{
		GameInventory inv;
		EntityAI itemEnt;
		EntityAI ietop;
		EntityAI iepants;
		
		inv = player.GetInventory();
		
		inv.CreateInInventory("Armband_Green");

		inv.CreateInInventory("ImprovisedBag");

		inv.CreateInInventory("PrisonerCap");
		ietop = inv.CreateInInventory("PrisonUniformJacket");
		iepants = inv.CreateInInventory("PrisonUniformPants");

		TStringArray boots = {"WorkingBoots_Grey","WorkingBoots_Brown","WorkingBoots_Green","WorkingBoots_Yellow","WorkingBoots_Beige"};
		inv.CreateInInventory(boots.GetRandomElement());
		
		iepants.GetInventory().CreateInInventory("HuntingKnife");

		ietop.GetInventory().CreateInInventory("BandageDressing");
		
		itemEnt = ietop.GetInventory().CreateInInventory("PersonalRadio");
		itemEnt.GetInventory().CreateAttachment("Battery9V");

		itemEnt = iepants.GetInventory().CreateInInventory("Flashlight");
		itemEnt.GetInventory().CreateAttachment("Battery9V");
		
		ietop.GetInventory().CreateInInventory("Matchbox");
		
		TStringArray drink = {"WaterBottle","Vodka","SodaCan_Pipsi","SodaCan_Cola","SodaCan_Spite","SodaCan_Kvass"};
		ietop.GetInventory().CreateInInventory(drink.GetRandomElement());

		itemEnt = player.GetHumanInventory().CreateInHands("UMP45");
		itemEnt.GetInventory().CreateAttachment("M4_PlasticHndgrd");
		itemEnt.GetInventory().CreateAttachment("M4_MPBttstck");
		inv.CreateInInventory("Mag_UMP_25Rnd");
		
		return;
	}
	
	static void EquipScientist(PlayerBase player)  // Pink - Учёные
	{
		GameInventory inv;
		EntityAI itemEnt;
		EntityAI ietop;
		EntityAI iebag;
		EntityAI iepants;
		
		inv = player.GetInventory();
		
		inv.CreateInInventory("Armband_Pink");

		iebag = inv.CreateInInventory("TortillaBag");

		inv.CreateInInventory("BaseballCap_Pink");
		inv.CreateInInventory("NBCHoodGray");
		ietop = inv.CreateInInventory("NBCJacketGray");
		iepants = inv.CreateInInventory("NBCPantsGray");
		inv.CreateInInventory("NBCGlovesGray");
		inv.CreateInInventory("NBCBootsGray");
		inv.CreateInInventory("GasMask");
		
		iepants.GetInventory().CreateInInventory("CombatKnife");

		ietop.GetInventory().CreateInInventory("BandageDressing");
		ietop.GetInventory().CreateInInventory("BandageDressing");
		
		itemEnt = ietop.GetInventory().CreateInInventory("PersonalRadio");
		itemEnt.GetInventory().CreateAttachment("Battery9V");

		itemEnt = iepants.GetInventory().CreateInInventory("Flashlight");
		itemEnt.GetInventory().CreateAttachment("Battery9V");
		
		ietop.GetInventory().CreateInInventory("Matchbox");
		
		TStringArray drink = {"WaterBottle","Vodka","SodaCan_Pipsi","SodaCan_Cola","SodaCan_Spite","SodaCan_Kvass"};
		iebag.GetInventory().CreateInInventory(drink.GetRandomElement());
		iebag.GetInventory().CreateInInventory(drink.GetRandomElement());

		TStringArray food = {"BakedBeansCan","PeachesCan","SpaghettiCan","SardinesCan","TunaCan"};
		iebag.GetInventory().CreateInInventory(food.GetRandomElement());
		iebag.GetInventory().CreateInInventory(food.GetRandomElement());
		
		itemEnt = player.GetHumanInventory().CreateInHands("CZ61");
		itemEnt.GetInventory().CreateAttachment("AK_Suppressor");
		inv.CreateInInventory("Mag_CZ61_20Rnd");
		inv.CreateInInventory("Mag_CZ61_20Rnd");
		inv.CreateInInventory("AmmoBox_380_35rnd");
		inv.CreateInInventory("AmmoBox_380_35rnd");

		iebag.GetInventory().CreateInInventory("SmallProtectorCase");
		iebag.GetInventory().CreateInInventory("BookFrankenstein");
		
		iebag.GetInventory().CreateInInventory("CharcoalTablets");
		iebag.GetInventory().CreateInInventory("PainkillerTablets");
		iebag.GetInventory().CreateInInventory("TetracyclineAntibiotics");
		iebag.GetInventory().CreateInInventory("Epinephrine");
		iebag.GetInventory().CreateInInventory("Morphine");
		iebag.GetInventory().CreateInInventory("Thermometer");
		iebag.GetInventory().CreateInInventory("Heatpack");
		
		return;
	}
	
	static void EquipAdmin(PlayerBase player) // ADMIN DEFAULT
	{
		GameInventory inv;
		EntityAI itemEnt;
		
		inv = player.GetInventory();

		inv.CreateInInventory("BaseballCap_Cammo");
		inv.CreateInInventory("GorkaPants_Flat");
		inv.CreateInInventory("GorkaEJacket_Flat");
		inv.CreateInInventory("TacticalGloves_Black");
		inv.CreateInInventory("PoliceVest");
		inv.CreateInInventory("AliceBag_Camo");
		inv.CreateInInventory("Armband_Pink");
		inv.CreateInInventory("Armband_Red");
		inv.CreateInInventory("Armband_White");
		inv.CreateInInventory("Armband_Yellow");
		inv.CreateInInventory("Armband_Blue");

		itemEnt = player.GetHumanInventory().CreateInHands("AKM");
		itemEnt.GetInventory().CreateAttachment("AK_PlasticHndgrd");
		itemEnt.GetInventory().CreateAttachment("AK_PlasticBttstck_Black");
		itemEnt.GetInventory().CreateAttachment("AK_Suppressor");
		itemEnt.GetInventory().CreateAttachment("AK_Bayonet");
		player.SetQuickBarEntityShortcut(itemEnt, 1, true);

		inv.CreateInInventory("Mag_AKM_Drum75Rnd_Black");
		inv.CreateInInventory("Mag_AKM_Drum75Rnd_Black");
		inv.CreateInInventory("Mag_AKM_Drum75Rnd_Black");
		itemEnt = inv.CreateInInventory("Mag_AKM_Drum75Rnd_Black");
		player.SetQuickBarEntityShortcut(itemEnt, 2, true);

		inv.CreateInInventory("GP5GasMask");
		inv.CreateInInventory("Canteen");
		inv.CreateInInventory("Canteen");
		inv.CreateInInventory("TacticalBaconCan");
		inv.CreateInInventory("TacticalBaconCan");
		inv.CreateInInventory("TacticalBaconCan");
		inv.CreateInInventory("TacticalBaconCan");
		inv.CreateInInventory("PSO1Optic");
		inv.CreateInInventory("KobraOptic");

		itemEnt = inv.CreateInInventory("MilitaryBoots_Black");
		itemEnt = itemEnt.GetInventory().CreateInInventory("CombatKnife");
		player.SetQuickBarEntityShortcut(itemEnt, 3, true);
		
		inv.CreateInInventory("BandageDressing");
		inv.CreateInInventory("BandageDressing");
		
		itemEnt = inv.CreateInInventory("FirefighterAxe_Black");
		player.SetQuickBarEntityShortcut(itemEnt, 0, true);

		itemEnt = inv.CreateInInventory("PersonalRadio");
		itemEnt.GetInventory().CreateAttachment("Battery9V");

		inv.CreateInInventory("OrienteeringCompass");
		
		itemEnt = inv.CreateInInventory("Flashlight");
		itemEnt.GetInventory().CreateAttachment("Battery9V");

		player.GetStatStamina().Set(1000);
		player.GetStatEnergy().Set(1000);
		player.GetStatWater().Set(1000);
		
		return;
	}
	
	static void Equip700(PlayerBase player) // ELANC
	{
		GameInventory inv;
		EntityAI itemEnt;
		
		inv = player.GetInventory();
		
		inv.CreateInInventory("Armband_Pink");
		inv.CreateInInventory("BalaclavaMask_Pink");
		inv.CreateInInventory("Breeches_Pink");
		inv.CreateInInventory("Raincoat_Pink");
		inv.CreateInInventory("SurgicalGloves_LightBlue");
		inv.CreateInInventory("ReflexVest");
		inv.CreateInInventory("MountainBag_Red");

		inv.CreateInInventory("GP5GasMask");
		inv.CreateInInventory("Canteen");
		inv.CreateInInventory("Canteen");
		inv.CreateInInventory("TacticalBaconCan");
		inv.CreateInInventory("TacticalBaconCan");
		inv.CreateInInventory("TacticalBaconCan");

		itemEnt = inv.CreateInInventory("MilitaryBoots_Redpunk");
		itemEnt = itemEnt.GetInventory().CreateInInventory("CombatKnife");
		player.SetQuickBarEntityShortcut(itemEnt, 2, true);
		
		inv.CreateInInventory("BandageDressing");
		inv.CreateInInventory("BandageDressing");
		
		itemEnt = inv.CreateInInventory("FirefighterAxe");
		player.SetQuickBarEntityShortcut(itemEnt, 0, true);

		itemEnt = inv.CreateInInventory("PersonalRadio");
		itemEnt.GetInventory().CreateAttachment("Battery9V");

		itemEnt = inv.CreateInInventory("Megaphone");
		itemEnt.GetInventory().CreateAttachment("Battery9V");

		inv.CreateInInventory("OrienteeringCompass");

		player.GetHumanInventory().CreateInHands("Bear_Pink");

		player.GetStatStamina().Set(1000);
		player.GetStatEnergy().Set(1000);
		player.GetStatWater().Set(1000);
		
		return;
	}
	
	static void Equip701(PlayerBase player) // DMISER
	{
		GameInventory inv;
		EntityAI itemEnt;
		
		inv = player.GetInventory();

		inv.CreateInInventory("Armband_Yellow");
		inv.CreateInInventory("BallisticHelmet_Black");
		inv.CreateInInventory("GorkaPants_Flat");
		inv.CreateInInventory("GorkaEJacket_Flat");
		inv.CreateInInventory("TacticalGloves_Black");
		inv.CreateInInventory("SmershVest");
		inv.CreateInInventory("SmershBag");

		itemEnt = player.GetHumanInventory().CreateInHands("AKM");
		itemEnt.GetInventory().CreateAttachment("AK_PlasticHndgrd");
		itemEnt.GetInventory().CreateAttachment("AK_PlasticBttstck_Black");
		itemEnt.GetInventory().CreateAttachment("AK_Suppressor");
		itemEnt.GetInventory().CreateAttachment("AK_Bayonet");
		player.SetQuickBarEntityShortcut(itemEnt, 1, true);

		inv.CreateInInventory("Mag_AKM_Drum75Rnd_Black");
		inv.CreateInInventory("Mag_AKM_Drum75Rnd_Black");
		inv.CreateInInventory("Mag_AKM_Drum75Rnd_Black");
		inv.CreateInInventory("Mag_AKM_Drum75Rnd_Black");
		inv.CreateInInventory("Mag_AKM_Drum75Rnd_Black");
		itemEnt = inv.CreateInInventory("Mag_AKM_Drum75Rnd_Black");
		player.SetQuickBarEntityShortcut(itemEnt, 2, true);

		inv.CreateInInventory("GP5GasMask");
		inv.CreateInInventory("Canteen");
		inv.CreateInInventory("Canteen");
		inv.CreateInInventory("TacticalBaconCan");
		inv.CreateInInventory("TacticalBaconCan");
		inv.CreateInInventory("TacticalBaconCan");
		inv.CreateInInventory("TacticalBaconCan");
		inv.CreateInInventory("TacticalBaconCan");
		inv.CreateInInventory("TacticalBaconCan");
		inv.CreateInInventory("PSO1Optic");
		inv.CreateInInventory("KobraOptic");

		itemEnt = inv.CreateInInventory("MilitaryBoots_Black");
		itemEnt = itemEnt.GetInventory().CreateInInventory("CombatKnife");
		player.SetQuickBarEntityShortcut(itemEnt, 3, true);
		
		inv.CreateInInventory("BandageDressing");
		inv.CreateInInventory("BandageDressing");
		
		itemEnt = inv.CreateInInventory("FirefighterAxe");
		player.SetQuickBarEntityShortcut(itemEnt, 0, true);

		itemEnt = inv.CreateInInventory("PersonalRadio");
		itemEnt.GetInventory().CreateAttachment("Battery9V");

		inv.CreateInInventory("OrienteeringCompass");
		
		itemEnt = inv.CreateInInventory("Flashlight");
		itemEnt.GetInventory().CreateAttachment("Battery9V");

		player.GetStatStamina().Set(1000);
		player.GetStatEnergy().Set(1000);
		player.GetStatWater().Set(1000);
		
		return;
	}
	
	static void Equip702(PlayerBase player) // DEVIL
	{
		GameInventory inv;
		EntityAI itemEnt;
		
		inv = player.GetInventory();

		inv.CreateInInventory("Armband_Blue");
		inv.CreateInInventory("BalaclavaMask_Black");
		inv.CreateInInventory("M65Jacket_Black");
		inv.CreateInInventory("CargoPants_Black");
		inv.CreateInInventory("HighCapacityVest_Black");

		itemEnt = player.GetHumanInventory().CreateInHands("AKM");
		itemEnt.GetInventory().CreateAttachment("AK_PlasticHndgrd");
		itemEnt.GetInventory().CreateAttachment("AK_PlasticBttstck_Black");
		itemEnt.GetInventory().CreateAttachment("AK_Suppressor");
		itemEnt.GetInventory().CreateAttachment("AK_Bayonet");
		itemEnt.GetInventory().CreateAttachment("PSO1Optic");
		player.SetQuickBarEntityShortcut(itemEnt, 1, true);

		itemEnt = inv.CreateInInventory("Mag_AKM_Drum75Rnd_Black");
		player.SetQuickBarEntityShortcut(itemEnt, 2, true);
		inv.CreateInInventory("AmmoBox_762x39_20Rnd");
		inv.CreateInInventory("AmmoBox_762x39_20Rnd");
		inv.CreateInInventory("AmmoBox_762x39_20Rnd");

		inv.CreateInInventory("Canteen");
		inv.CreateInInventory("TacticalBaconCan");
		inv.CreateInInventory("TacticalBaconCan");

		itemEnt = inv.CreateInInventory("MilitaryBoots_Beige");
		itemEnt = itemEnt.GetInventory().CreateInInventory("CombatKnife");
		player.SetQuickBarEntityShortcut(itemEnt, 3, true);
		
		inv.CreateInInventory("BandageDressing");
		inv.CreateInInventory("BandageDressing");
		
		itemEnt = inv.CreateInInventory("PersonalRadio");
		itemEnt.GetInventory().CreateAttachment("Battery9V");

		inv.CreateInInventory("MatchBox");
		
		itemEnt = inv.CreateInInventory("Flashlight");
		itemEnt.GetInventory().CreateAttachment("Battery9V");

		player.GetStatStamina().Set(1000);
		player.GetStatEnergy().Set(1000);
		player.GetStatWater().Set(1000);
		
		return;
	}

	static void Equip703(PlayerBase player) // LITSEDEY - 1 (WHITE)
	{
		GameInventory inv;
		EntityAI itemEnt;
		EntityAI iebag;
		EntityAI ietop;
		EntityAI iepants;
		
		inv = player.GetInventory();

		inv.CreateInInventory("Armband_White");

		TStringArray backpack = {"MountainBag_Red","MountainBag_Blue","MountainBag_Orange","MountainBag_Green"};
		iebag = inv.CreateInInventory(backpack.GetRandomElement());

		TStringArray headgear = {"RadarCap_Black","RadarCap_Blue","RadarCap_Brown","RadarCap_Green","RadarCap_Red"};
		inv.CreateInInventory(headgear.GetRandomElement());
		TStringArray jackets = {"JumpsuitJacket_Blue","JumpsuitJacket_Gray","JumpsuitJacket_Green","JumpsuitJacket_Red"};
		ietop = inv.CreateInInventory(jackets.GetRandomElement());
		TStringArray pants = {"JumpsuitPants_Blue","JumpsuitPants_Green","JumpsuitPants_Grey","JumpsuitPants_Red"};
		iepants = inv.CreateInInventory(pants.GetRandomElement());
		TStringArray shoes = {"HikingBootsLow_Black","HikingBootsLow_Blue","HikingBootsLow_Beige","HikingBootsLow_Grey"};
		inv.CreateInInventory(shoes.GetRandomElement());

		iebag.GetInventory().CreateInInventory("Raincoat_Orange");

		TStringArray knife = {"SteakKnife","HuntingKnife","CombatKnife"};
		iepants.GetInventory().CreateInInventory(knife.GetRandomElement());

		itemEnt = iebag.GetInventory().CreateInInventory("Flashlight");
		itemEnt.GetInventory().CreateAttachment("Battery9V");
		
		ietop.GetInventory().CreateInInventory("OrienteeringCompass");

		TStringArray drink = {"WaterBottle","SodaCan_Cola","SodaCan_Kvass","SodaCan_Pipsi","SodaCan_Spite"};
		iebag.GetInventory().CreateInInventory(drink.GetRandomElement());

		TStringArray food = {"BakedBeansCan","PeachesCan","SpaghettiCan","SardinesCan","TunaCan"};
		iebag.GetInventory().CreateInInventory(food.GetRandomElement());
		iebag.GetInventory().CreateInInventory(food.GetRandomElement());
		
		itemEnt = ietop.GetInventory().CreateInInventory("PersonalRadio");
		itemEnt.GetInventory().CreateAttachment("Battery9V");

		switch( Math.RandomInt(0,1) )
		{
			case 0:
			{
				ItemBase itemBs;
				itemEnt = iebag.GetInventory().CreateInInventory("Rag");
				itemBs = ItemBase.Cast(itemEnt);
				itemBs.SetQuantity(4);
				break;
			}
			case 1:
			{
				itemEnt = iebag.GetInventory().CreateInInventory("BandageDressing");
				break;
			}
		}
		
		ietop.GetInventory().CreateInInventory("Matchbox");

		iebag.GetInventory().CreateInInventory("Hatchet");

		itemEnt = player.GetHumanInventory().CreateInHands("AKM");
		itemEnt.GetInventory().CreateAttachment("AK_PlasticHndgrd");
		itemEnt.GetInventory().CreateAttachment("AK_PlasticBttstck_Black");
		itemEnt.GetInventory().CreateAttachment("AK_Suppressor");
		itemEnt.GetInventory().CreateAttachment("AK_Bayonet");
		player.SetQuickBarEntityShortcut(itemEnt, 1, true);

		itemEnt = inv.CreateInInventory("Mag_AKM_30Rnd");
		player.SetQuickBarEntityShortcut(itemEnt, 2, true);
		inv.CreateInInventory("Mag_AKM_30Rnd");

		player.GetStatStamina().Set(1000);
		player.GetStatEnergy().Set(1000);
		player.GetStatWater().Set(1000);
		
		return;
	}

	static void Equip704(PlayerBase player) // LITSEDEY - 2 (RED)
	{
		GameInventory inv;
		EntityAI itemEnt;
		
		inv = player.GetInventory();

		inv.CreateInInventory("GorkaHelmetComplete");
		inv.CreateInInventory("TTsKOJacket_Camo");
		inv.CreateInInventory("TTSKOPants");
		inv.CreateInInventory("TacticalGloves_Black");
		inv.CreateInInventory("PlateCarrierVest");
		inv.CreateInInventory("AliceBag_Camo");
		inv.CreateInInventory("Armband_Red");

		itemEnt = player.GetHumanInventory().CreateInHands("SVD");
		player.SetQuickBarEntityShortcut(itemEnt, 1, true);

		inv.CreateInInventory("Mag_SVD_10Rnd");
		inv.CreateInInventory("Mag_SVD_10Rnd");
		inv.CreateInInventory("Mag_SVD_10Rnd");
		itemEnt = inv.CreateInInventory("Mag_SVD_10Rnd");
		player.SetQuickBarEntityShortcut(itemEnt, 2, true);

		inv.CreateInInventory("PSO1Optic");
		inv.CreateInInventory("KobraOptic");

		itemEnt = inv.CreateInInventory("KazuarOptic");
		itemEnt.GetInventory().CreateAttachment("Battery9V");
		
		inv.CreateInInventory("SportGlasses_Green");
		inv.CreateInInventory("MilitaryBeret_Red");
		inv.CreateInInventory("GP5GasMask");
		inv.CreateInInventory("Canteen");
		inv.CreateInInventory("Canteen");
		inv.CreateInInventory("TacticalBaconCan");
		inv.CreateInInventory("TacticalBaconCan");
		inv.CreateInInventory("TacticalBaconCan");
		inv.CreateInInventory("TacticalBaconCan");
		
		itemEnt = inv.CreateInInventory("MilitaryBoots_Black");
		itemEnt = itemEnt.GetInventory().CreateInInventory("CombatKnife");
		player.SetQuickBarEntityShortcut(itemEnt, 3, true);
		
		inv.CreateInInventory("BandageDressing");
		inv.CreateInInventory("BandageDressing");
		inv.CreateInInventory("Binoculars");
		
		itemEnt = inv.CreateInInventory("FirefighterAxe_Black");
		player.SetQuickBarEntityShortcut(itemEnt, 0, true);

		itemEnt = inv.CreateInInventory("PersonalRadio");
		itemEnt.GetInventory().CreateAttachment("Battery9V");

		inv.CreateInInventory("Compass");
		
		itemEnt = inv.CreateInInventory("Flashlight");
		itemEnt.GetInventory().CreateAttachment("Battery9V");

		inv.CreateInInventory("AmmoBox_762x54_20Rnd");
		inv.CreateInInventory("AmmoBox_762x54_20Rnd");
		inv.CreateInInventory("AmmoBox_762x54_20Rnd");
		inv.CreateInInventory("AmmoBox_762x54_20Rnd");
		inv.CreateInInventory("AmmoBox_762x54_20Rnd");
		inv.CreateInInventory("AmmoBox_762x54_20Rnd");
		inv.CreateInInventory("AmmoBox_762x54_20Rnd");
		inv.CreateInInventory("AmmoBox_762x54_20Rnd");
		inv.CreateInInventory("AmmoBox_762x54_20Rnd");
		inv.CreateInInventory("AmmoBox_762x54_20Rnd");
		
		player.GetStatStamina().Set(1000);
		player.GetStatEnergy().Set(1000);
		player.GetStatWater().Set(1000);
		
		return;
	}	

	static void Equip705(PlayerBase player) // LITSEDEY - 3 
	{
		EquipAdmin(player);
	}	
}

ref FGCL_Fractions FGCTRL_Fractions = new FGCL_Fractions();

Листинг init.c

#include "$CurrentDir:mpmissions\\dayzOffline.chernarusplus\\fas_fractions.c"

...
  
class CustomMission: MissionServer
{
  ...
  override PlayerBase CreateCharacter(PlayerIdentity identity, vector pos, ParamsReadContext ctx, string characterName)
  {
    Entity playerEnt;

    pos = FGCTRL_Fractions.GetPos( identity, pos );

    playerEnt = GetGame().CreatePlayer(identity, characterName, pos, 0, "NONE");
    Class.CastTo(m_player, playerEnt);

    GetGame().SelectPlayer(identity, m_player);

    return m_player;
  }

  override void StartingEquipSetup(PlayerBase player, bool clothesChosen)
  {
    player.RemoveAllItems();
    FGCTRL_Fractions.EquipPlayer( player );
  }
  ...
}

Пример players.txt

700|76561187991212400|ADMIN
701|76561188041751500|ADMIN2
702|76561188008238500|ADMIN3
703|76561187996493400|ADMIN4
704|76561188167965500|ADMIN5
705|76561188217116600|ADMIN6
100|76561198141682900|Player1 [R]
100|76561198147854200|Player2 [R]
100|76561198169514100|Player3 [R]
200|76561198035216311|Vasya [N] 
200|76561198044881811|Petya [N]
200|76561198053485211|Roma [N] 
...
400|76561198242431700|Player50 [W]
400|76561198248912500|Player51 [W]
400|76561198230455600|Player52 [W]

Пример pos100.txt (точки спавна для фракции с id 100)

12099.0 0.0 7270.0
12205.0 0.0 7275.0

 

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


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

Как все сложно

Смотрю народ идет по пути богемии

Накера какие-то лишние классы создавать

Блин

 

Есть же тема в 063
Там все разжовано по этой теме

 

Но в кратце смогу обьяснить

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


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

BorizzK подскажите как прописать для определённых игроков свои точки спавна, +что бы к примеру 3+ игрока спавнились к примеру по координатам ближе к своей базе. Так же и другие игроки чтоб спавнились у своих баз 

Изменено пользователем PJIIOxa (история изменений)

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


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

BorizzK ну можете подсказать я просто не силен в написании скриптов. Буду очень благодарен

Изменено пользователем PJIIOxa (история изменений)

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


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

PJIIOxa чтобы ерундистикой страдать не приходилось, можно взять за основу:

и добавить в Sets.c после выдачи набора сета комманду:

player.SetPosition("координаты");

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

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


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

Присоеденяюсь к вопросу. У кого получилось создать группировки на сервере в адекватном виде?

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


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

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить на вопрос...

×   Вставлено в виде отформатированного текста.   Восстановить форматирование

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Загрузка...

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

    • Автор: Serdce
      Данный скрипт, меняет процесс ремонта вашей техники, делая её более логичней, как было в А2.
      Для замены колеса, на нужно собственно само колесо, и тд. и тп. 
      Подробный список чего и для чего вы найдёте в файлах.
       
      Итак, преступим!
      Я не автор, я всего лишь перевожу.
      Первоисточник - https://github.com/aussie-battler/Exilemod-Super-Advanced-Repair-System-SARS
      По ссылке выше скачиваем архив, распаковываем в удобное место.
      Распаковываем ваше миссию "Exile.ваша карта"
      Из архива копируем папку "Custom" в папку вашей миссии "Exile.ваша карта"
      Открываем ваш description.ext  в нем мы ищем showHUD[] = 
      и полностью меняем на это - 
      Далее открываем ваш - initPLayerLocal.sqf
      В этом файле, сразу после строки - if (!hasInterface || isServer) exitWith {};
      Мы добавляем 
      //Bones Super Advanced Repair System (SARS)
      Bones_fnc_salvageAndRepairMenu = compileFinal preprocessFileLineNumbers "Custom\advancedRepair\Bones_fnc_salvageAndRepairMenu.sqf"; 
      Далее открываем ваш - config.cpp
      В нем мы ищем - class Car
      Внутри этого класса мы ищем
       
      И меняем на 
      Так же далее чуть ниже - class Air
      В нем мы также меняем это
      На это 
       
      Далее для если у вас есть Infistar!
      Распаковываем ваш инфистар и открываем его конфиг.
      В нём ищем     KCM = "true"; /* Just close ALL CommandingMenus */
      И меняем значение на false
      Чуть ниже в строке allowedCommandingMenus
      Мы добавляем  "#USER:ASL_Show_Repair_Options_Menu_Array"
      Ну вот и всё готово, всё сохранили и запаковали как было!
       
    • Автор: fedotovyasha
      Хочу немного изменить сообщения перед отправкой клиенту
    • Автор: fedotovyasha
      Пишу свой лаунчер на c#. Скачал клиент в котором был loader.exe. С ним работает норм, но я хочу без него запускать игру. Как это сделать? (Пиратка)
    • Автор: Miduznya
      Собственно как, как отключить battleye на сервере античит

      параметр BattlEye=0; не работает я так понял 
    • Автор: DrTauren
      На нашем сайте предусмотрена возможность рекламирования вашего игрового сервера/сайта/програмного обеспечения при помощи баннеров и ссылок.
       
      Баннеры под первым сообщением темы ↓
       
      Баннер на главной странице (над чатом) ↓
       
      Ссылки над первым сообщением темы ↓
       
      Ссылка на главной странице (над чатом) ↓
       
       

      Заявку вы можете заполнить в этой же теме, либо написать мне в ЛС.
      Любые сообщения не по теме запрещены.
×
×
  • Создать...