pollfank
Участник
- Сообщения
- 167
- Решения
- 1
- Реакции
- 32
- Баллы
- 28
Всем здравствуйте.
Уже давно отошел от игровой индустрии), но сын начал бомбить, захотел сервер свой).
Если в кратце. Так как другой хостинг, привязки нет на ключи, на быструю руку накидал плагин, аналог zhorzh78 -а. После убийства, выпадают монеты. Только с отвязкой от ядра cms present.
Все работает, но есть один момент, который хотел бы поправить.
Сообщение в чат выводиться с дублированием. То есть, одно и то самое сообщение в несколько строк.
Выглядит примерно так:
[Info] Монеты только для зарегистрированных пользователей ...
[Info] Монеты только для зарегистрированных пользователей ...
[Info] Монеты только для зарегистрированных пользователей ...
[Info] Монеты только для зарегистрированных пользователей ...
Весь код выкладывать не буду, да бы как не портить интерес к главному модулю)). Но вот часть. Кто может подскажет что ни так, а то уже много чего призабыл с amx скриптинга.
Уже давно отошел от игровой индустрии), но сын начал бомбить, захотел сервер свой).
Если в кратце. Так как другой хостинг, привязки нет на ключи, на быструю руку накидал плагин, аналог zhorzh78 -а. После убийства, выпадают монеты. Только с отвязкой от ядра cms present.
Все работает, но есть один момент, который хотел бы поправить.
Сообщение в чат выводиться с дублированием. То есть, одно и то самое сообщение в несколько строк.
Выглядит примерно так:
[Info] Монеты только для зарегистрированных пользователей ...
[Info] Монеты только для зарегистрированных пользователей ...
[Info] Монеты только для зарегистрированных пользователей ...
[Info] Монеты только для зарегистрированных пользователей ...
Весь код выкладывать не буду, да бы как не портить интерес к главному модулю)). Но вот часть. Кто может подскажет что ни так, а то уже много чего призабыл с amx скриптинга.
Код:
public fw_TouchCoinPost(iEnt, id)
{
if(!pev_valid(iEnt) || !is_user_alive(id))
return;
if (cmsapi_is_user_member(id))
{
static sClassName[32];
pev(iEnt, pev_classname, sClassName, charsmax(sClassName));
if(!equal(sClassName, CLASSNAME_SET))
return;
cmsapi_add_user_money(id, fMoney);
client_print_color(id, print_team_default, "%L", LANG_SERVER, "CMS_COINT_TAKE", fMoney);
emit_sound(id, CHAN_WEAPON, COIN_SOUND, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
set_pev(iEnt, pev_flags, pev(iEnt, pev_flags) | FL_KILLME);
}
else
{
client_print_color(id, print_team_default, "%L", LANG_SERVER, "CMS_COINT_NO_TAKE");
}
}