Богдан

zp508 лимит гранат

6 постов в топике

zp508 лимит гранат

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

 

пс в зп4,3 это код работал 
 

public zp_fw_items_select_post(iPlayer, iItemID)
{
	if ( iItemID == g_iItemID )
	{
		if(g_Has_Bomb[iPlayer] >= 1)
		{
			return 97;
		}
		
		g_Has_Bomb[iPlayer] = true;
		ExecuteHamB(Ham_GiveAmmo, iPlayer, 1, "SmokeGrenade", 999);
		fm_give_item(iPlayer, WEAPON_REFERANCE);
		UTIL_SetWeaponList(iPlayer, WEAPON_NAME, 13, 1, -1, -1, 3, 3, 9, 24 );
		emit_sound(iPlayer, CHAN_ITEM, "items/gunpickup2.wav", VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
	}
	return PLUGIN_HANDLED;
}

 

0

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


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

Значит в zp508 другой return.

 


пробуй так:

public zp_fw_items_select_pre(iPlayer, iItemID, ignorecost)
{
	return ( iItemID == g_iItemID && g_Has_Bomb[iPlayer]) ? ZP_ITEM_DONT_SHOW : ZP_ITEM_AVAILABLE
}

public zp_fw_items_select_post(iPlayer, iItemID, ignorecost)
{
	if ( iItemID == g_iItemID )
	{
		g_Has_Bomb[iPlayer] = true;
		ExecuteHamB(Ham_GiveAmmo, iPlayer, 1, "SmokeGrenade", 999);
		fm_give_item(iPlayer, WEAPON_REFERANCE);
		UTIL_SetWeaponList(iPlayer, WEAPON_NAME, 13, 1, -1, -1, 3, 3, 9, 24 );
		emit_sound(iPlayer, CHAN_ITEM, "items/gunpickup2.wav", VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
	}
}

 

0

Я уже редко бываю в интернете...:dance2:

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


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

После того как 1 раз купил граната пропала из магазина. А мне надо что её всё время можно было купить только чтоб было не больше одной в запасе... И не было бага с аммо

 

return 97; -- в том то и проблема что его надо заменить но я не знаю на что ?!

Изменено пользователем Богдан
0

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


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

@Богдан Изучай инклуды зм мода.

 

7 часов назад, Богдан сказал:

После того как 1 раз купил граната пропала из магазина.

 

Надо сбросить когда игрок умер или при рестарте раунда (але new round)

g_Has_Bomb[iPlayer] = false;

 

Кстати в игре так и можно купить только одну смок гранату.

 

Тогда почему бы не сделать так:


#define MAX_SMOKES   1 // кол-во макс гранат.

ExecuteHamB(Ham_GiveAmmo, iPlayer, 1, "SmokeGrenade", MAX_SMOKES);

И в добавку

public zp_fw_items_select_pre(iPlayer, iItemID, ignorecost)
{
	return ( iItemID == g_iItemID && cs_get_user_bpammo(iPlayer, CSW_SMOKEGRENADE) >= MAX_SMOKES) ? ZP_ITEM_DONT_SHOW : ZP_ITEM_AVAILABLE
}

 

 

2

Я уже редко бываю в интернете...:dance2:

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


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

Это как раз то что мне надо....

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

 


спустя 7 минут

а в зп508 return 97; на что надо заменить чтоб был аналогичный эффект ???

0

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


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

Или вот то что мне надо но баг с аммо...

 

public zp_fw_items_select_post(iPlayer, iItemID)
{
	if ( iItemID == g_iItemID )
	{
		g_Has_Bomb[iPlayer] = true;
		fm_give_item(iPlayer, WEAPON_REFERANCE);
		UTIL_SetWeaponList(iPlayer, WEAPON_NAME, 13, 1, -1, -1, 3, 3, 9, 24 );
		emit_sound(iPlayer, CHAN_ITEM, "items/gunpickup2.wav", VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
	}
}

 

0

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


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

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

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

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

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


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

Войти

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


Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу