Kill bomb Лимит в zp 4.3

Сообщения
27
Реакции
12
Добрый день. Столкнулся с проблемой от незнания.. Собирал по кускам плагин Kill Bomba для Выжившего, что бы убивать зомби.
1) Моя задача была сделать предупреждения о лимите и самой покупки в чат(сделано 98/100)
2) Сделал почти все кроме одного! Показ лимита в самом меню extra items где идет "Kill Bomb 28 ammo и далее лимит [0/2]" . Т.е 2- это лимит. 0 - это сколько куплено гранат.
3) Что бы я не делал не могу добиться , чтоб значение 0 менялось после покупки. [0/2] и так постоянно.

Сначала добавил регистрацию:
new item_name[64]
formatex(item_name, charsmax(item_name), "%s [%d/%d]", ITEM_NAME, g_killbombbuycount[id], BUY_LIMIT)
g_itemid_killbomb = zp_register_extra_item(item_name, ITEM_COST, ZP_TEAM_SURVIVOR)

Затем вывод:
public zp_extra_item_text(id, itemid, text[], maxlen)
{
// If the item is the Kill Bomb, update the text with the current buy count
if (itemid == g_itemid_killbomb)
{
// Format the item text to include the cost and the dynamic purchase count
formatex(text, maxlen, "%s [%d/%d]", ITEM_NAME, g_killbombbuycount[id] + 1, BUY_LIMIT);


}
}

Но не получается обновить ноль до лимита. Ноль неизменим. Подскажите что я не так делаю???

2025-02-03_00-48-53.png


Получил ошибку error 017: undefined symbol "id". Так как в inite это нельзя проделать. Убрал id но ничего не изменилось.
 

Download all Attachments

Последнее редактирование:
Сообщения
27
Реакции
12
Подскажите хотябы куда капать..???
3 Фев 2025
1738597835178.png
 
Сообщения
27
Реакции
12
@Code_0xABC,В том то и прикол, что ошибок нет.
Все компилиться.
1738598686678.png
 
Сообщения
1,193
Реакции
90
Помог
15 раз(а)
DargVeral, ошибки в процессе работы плагина. И вообще, от куда может взяться индекс игрока в plugin_init?
 
Сообщения
27
Реакции
12
@Code_0xABC,Их тоже нет. По данному плагину. В самой игре когда я покупаю Гранату, значение 0 не меняется на 1 и 2. А тоесть [0/2], купил гранату и должно быть [1/2]. В самом чате игры все показывает и меняться, но в меню покупки как будто 0 просто статичен.
 
Сообщения
1,193
Реакции
90
Помог
15 раз(а)
DargVeral, например покупки бомб твоих хранятся в массиве g_killbombbuycount[id]. Если я правильно понял, за меню твое отвечает иной плагин, если так, то туда нужно передать эти данные
 
Сообщения
39
Реакции
5
DargVeral, item_name, который вы передаёте при регистрации итема, имеет тип const, т.е название предмета не может быть изменено
Из zombieplague.inc
Код:
/**
 * Registers a custom item which will be added to the extra items menu of ZP.
 *
 * Note: The returned extra item ID can be later used to catch item
 * purchase events for the zp_extra_item_selected() forward.
 *
 * Note: ZP_TEAM_NEMESIS and ZP_TEAM_SURVIVOR can be used to make
 * an item available to Nemesis and Survivors respectively.
 *
 * @param name        Caption to display on the menu.
 * @param cost        Ammo packs to be deducted on purchase.
 * @param teams        Bitsum of teams it should be available for.
 * @return        An internal extra item ID, or -1 on failure.
 */
native zp_register_extra_item(const name[], cost, teams)
3 Фев 2025
А вообще, взгляните на Zombie Plague Special. Это усовершенствованный ZP 4.3 с большим простором для кастомизации и фиксом багов. Всё что работает на ZP 4.3 без проблем работает и на ZPS. У него в комплекте есть плагин zpsp_extra_item_limiter. Это именно то, что вам нужно (лимит по количеству итемов на игроков, на раунд и на карту.
 
Сообщения
27
Реакции
12
@lionel142,Знаю проект где это реализовали.Сижу и думаю как это сделать... Спасибо за ответ.
 
Сообщения
39
Реакции
5
Ошибка в тексте. ZPS использует ядро от Zombie Plauge Advanced 1.6.1, но при этом совместим с ZP 4.3
 
Сообщения
87
Реакции
20
DargVeral, Что за функция zp_extra_item_text и как она работает (какой код)? Не видел ниразу такую в ZP 4.3 . Возможно в ней надо возвращать текст return text; конструктору меню.
 

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу