Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

денежные бонусы

, ошибка в логах всегда [РЕШЕНО]
Статус пользователя bruk
сообщение 31.3.2016, 10:05
Сообщение #1
Стаж: 11 лет

Сообщений: 40
Благодарностей: 14
Полезность: 104

Добрый день парни может кто нить будь поглядит код ,а то в логах идет ошибка а плагин работает , суть плагина на csdm каждые 30 сек давать админа и випам разный денежный бонус.
Иногда говорят не приходят деньги
SMA
Код:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <colorchat>

#define PLUGIN "name"
#define VERSION "0.2"
#define AUTHOR "author"

#define BONUS_MONEY 555
#define MAX_MONEY 32000

new g_MaxPlayers

public plugin_init()
{
register_plugin( PLUGIN, VERSION, AUTHOR )

g_MaxPlayers = get_maxplayers()
set_task( 30.0, "give_bonus", _, _, _, "b" )
}

public give_bonus()
{
for( new j = 1; j <= g_MaxPlayers; j ++ )
{
if( is_user_connected( j ) )
{
if( get_user_flags( j ) & ADMIN_BAN )
{
new money = cs_get_user_money( j )
if( money < MAX_MONEY )
{
cs_set_user_money( j, money + BONUS_MONEY )
ColorChat( j, NORMAL, "^3Вы получили свой бонус:^4 +%d$", BONUS_MONEY )
}

if( money > MAX_MONEY )
{
cs_set_user_money( j, MAX_MONEY )
}
}
}
{
if( get_user_flags( j ) & ADMIN_LEVEL_H )
{
new money = cs_get_user_money( j )
if( money < MAX_MONEY )
{
cs_set_user_money( j, money + 400 )
ColorChat( j, NORMAL, "^3Вы получили свой бонус:^4 +%d$", 400 )
}

if( money > MAX_MONEY )
{
cs_set_user_money( j, MAX_MONEY )
}
}
}
}

}


Ошибка в логах
Код:
L 03/31/2016 - 12:02:18: [AMXX] Displaying debug trace (plugin "csdm_bonus.amxx")
L 03/31/2016 - 12:02:18: [AMXX] Run time error 10: native error (native "cs_get_user_money")
L 03/31/2016 - 12:02:18: [AMXX] [0] csdm_bonus.sma::give_bonus (line 62)


Отредактировал: meloman, - 31.3.2016, 10:25
Причина: Выдано предупреждение!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя BaJIepbI4
сообщение 31.3.2016, 10:10
Сообщение #2


Стаж: 11 лет

Сообщений: 457
Благодарностей: 115
Полезность: 456

Первое, что бросилось в глаза это лишние скобки на 44 и 60 строках.
Второе, скорее всего нужно добавить проверку на живого игрока:
Код:
if(is_user_alive(j))


Отредактировал: BaJIepbI4, - 31.3.2016, 10:12



Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя IAMHARD
сообщение 31.3.2016, 10:17
Сообщение #3
Стаж: 11 лет

Сообщений: 194
Благодарностей: 57
Полезность: 234

Это конечно не мое дело, но зачем таском выдавать деньги?
Может лучше отлавливать начало раунда или у вас мод какой?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя BaJIepbI4
сообщение 31.3.2016, 10:22
Сообщение #4


Стаж: 11 лет

Сообщений: 457
Благодарностей: 115
Полезность: 456

Цитата(IAMHARD @ 31.3.2016, 11:17) *
Это конечно не мое дело, но зачем таском выдавать деньги?
Может лучше отлавливать начало раунда или у вас мод какой?


Автор же написал, что у него csdm. Какое начало раунда? :D



Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя bruk
сообщение 31.3.2016, 11:30
Сообщение #5
Стаж: 11 лет

Сообщений: 40
Благодарностей: 14
Полезность: 104

BaJIepbI4, спасибо
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: