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

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

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

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

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

Удалить выбранную вещь из игрока. (не очистка!!!)

Подскажите знающие товарищи! Каким оператором можно удалить выбранный лут из инвентаря, тобишь не очистить а именно выборочно удалить.?

Вот суть. Выдаю патроны игроку, но они зараза спавняться в строчку, а мне нужно чтоб они спавнились как мне нужно. Решение придумал, но не знаю какими операторами это все реализовать. Тобиш есть например место в инвентаре. 6х2, мне нужно чтоб 3х2 были заняты, а в итоге заняты 6х1. Но вы поняли. Решение я нахожу таким.... заспавнить патроны в строчку 3шт, тобиш это будет 3х1, после выдаю например что то размером 3х2 и дальше еще выдаю патроны, поскольку свободно только осталось 3х1 ячеек под ранее выданными патронами, поэтому они только туда и заспавняться. А после это предмет 3х2 удалить. В итоге буду иметь заспававшиеся патроны 3х2 и 3х2 свободного места.

 

Спавнить:

      n = 0; while (n < 3){n++;  vest.GetInventory().CreateInInventory("Ammo_9x39AP");} 

      vest.GetInventory().CreateInInventory("WeaponCleaningKit");}  // предмет 3х2 - предмет можно любой, можно скотч + швека например (потом его нужно удалить)

      n = 0; while (n < 3){n++;  vest.GetInventory().CreateInInventory("Ammo_9x39AP");} 

И как потом удалить мне "WeaponCleaningKit" ?

 

Я так понял нужно его сперва найти както, а потом удалять, но какими операторами, я не знаю. Возможно объявить переменную для него dellut например и потом его удалить.

dellut  = vest.GetInventory().CreateInInventory("WeaponCleaningKit");}  // с переменной если.

 

Понятное дело это потом все красиво, тобиш код оформить, мне щас главное понимать как удалить это добро. И подскажите еще, есть ли такой функционал... при выдачи лута, можно ли его както поворачивать на 90 градусов при выдачи?

 

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


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

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

  • 0

Разобрался.  GetGame().ObjectDelete(переменная); 

 

void create_ammo(string a1, int b, string a2, int b24, int b30, int b35, int c1, int c2) // Функция выдает боеприпасы [название обоймы][кол-во занимаемых слотов][название патронов][max. кол-во обойм в жилете на 24][max. кол-во обойм в жилете на 30][max. кол-во обойм в жилете на 35][кол-во обойм по умолчанию][кол-во свободных слотов]
	{
		int z = 0;
		int z2 = 0;
		int z3 = 0;
		int t = 0;
		z = b;
		// --- выдача обойм
		if (vest_size == 24){z2 = b24;} if (vest_size == 30){z2 = b30;} if (vest_size == 35){z2 = b35;}
		if (vest_size > 0){p = vest;} else {p = jacket;}
		n = 0; while (n < c1){n++; p.GetInventory().CreateInInventory(a1); z2 = z2 - 1; z3 = z3 + z;}		        				// Выдаем на M4 Магазин 60 пат.
		if (random_top_weapontwo > 1){n = 0; while (n < 1){n++; p.GetInventory().CreateInInventory(a1); z2 = z2 - 1; z3 = z3 + z;}}// Если оружие для дальнего боя не выдаеться, то конпенсируем это дополнительно обоймами
		if (top_magplus == 1){n = 0; while (n < z2){n++; p.GetInventory().CreateInInventory(a1); z3 = z3 + z;}}	// Выдаем дополнительно на M4 Магазин 60 пат.
		
		// --- выдача патронов	
		n = 0; while (n < 2){n++; p.GetInventory().CreateInInventory(a2); z3 = z3 + 1;}	  	      						// Выдаем патроны
		
		if (vest_size == 24){z3 = vest_size - z3;} else{z3 = vest_size - z3 - c2;}
		if (z3 > 16){z3 = z3 - 30;}
		if (z3 > 12){z3 = z3 - c2 - 6;}
		if (z3 > 6){z3 = z3 - c2;} 
		if (z3 == 4){t = 1;}
		if (z3 == 6){t = 2;}
		if (z3 == 3){t = 1;}
		if (top_ammoboxplus == 1)
		{
			n = 0; 
			while (n < z3)
			{
				n++; 
				p.GetInventory().CreateInInventory(a2); 
				if (n == t){p1 = p.GetInventory().CreateInInventory("DuctTape"); p3 = p.GetInventory().CreateInInventory("BandageDressing");}
				if (n == t && z3 == 3){p2 = p.GetInventory().CreateInInventory("DuctTape"); p4 = p.GetInventory().CreateInInventory("BandageDressing");}
				
			}
			GetGame().ObjectDelete(p1); GetGame().ObjectDelete(p2); GetGame().ObjectDelete(p3); GetGame().ObjectDelete(p4);

 

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


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

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

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

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

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

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

Войти

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

Войти сейчас

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

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

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

Поддержка