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

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

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

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

помощь по плагину

, steam_bonus [РЕШЕНО]
Статус пользователя bandit123
сообщение 18.3.2015, 22:52
Сообщение #1


Стаж: 12 лет

Сообщений: 85
Благодарностей: 19
Полезность: 175

Доброго времени суток уважаемые пользователи данного форума. Пытался сам исправить, но так и не выщло, поэтому решил обратиться за помощью сюда. Вот собственно проблема:
немного переделал под себя плагин для выдачи бонусов стим игрокам- добавил выдачу дигла, брони, сделал запрет выдачи бонусов на определеных картах, все работает, но бонусы даются сразу же с первого раунда, хотя в плагине прописан код на выдачу бонусов со 2 раунда, и появляется ошибка в логах от этого плагина. Добрые люди помогите исправить эти недочеты буду благодарен thank_you2.gif
Ошибка в логах
L 03/18/2015 - 23:57:39: Start of error session.
L 03/18/2015 - 23:57:39: Info (map "de_dust2_2x2") (file "addons/amxmodx/logs/error_20150318.log")
L 03/18/2015 - 23:57:39: [FUN] Invalid player 1
L 03/18/2015 - 23:57:39: [AMXX] Run time error 10 (plugin "steam_bonus.amxx") (native "give_item") - debug not enabled!
L 03/18/2015 - 23:57:39: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).

Исходник

Код
Код:
#include <amxmodx>
#include <hamsandwich>
#include <fun>
#include <cstrike>
#include <fakemeta_util>

static const iPistols[] = {CSW_P228, CSW_ELITE, CSW_FIVESEVEN, CSW_USP, CSW_GLOCK18}

new bool:playerPutOrAuth[33]
new g_steam[33]
new pcvar_dp_r_id_provider
new round_count
new bool:g_iBlockBonus;

public plugin_init()
{
    register_plugin("Steam Bonus", "1.2", "Cruel")
    register_event("TextMsg", "RoundRestart", "a", "2=#Game_Commencing", "2=#Game_will_restart_in")
    register_logevent("logevent_round_start",2, "1=Round_Start")
    
    RegisterHam(Ham_Spawn, "player", "player_spawn", 1)
    
    pcvar_dp_r_id_provider = get_cvar_pointer ("dp_r_id_provider")
    
    new iMap_Name[32], iMap_Prefix[][] = { "awp_", "fy_" }
    get_mapname(iMap_Name, charsmax(iMap_Name))
    for(new i; i < sizeof(iMap_Prefix); i++)
    {
        if(containi(iMap_Name, iMap_Prefix[i]) != -1)
        g_iBlockBonus = true
        
    }
}

public logevent_round_start()
{
    round_count++
}

public RoundRestart(id)
{
    round_count = 1
}

public client_connect(id)
{
    g_steam[id] = 0
    playerPutOrAuth[id] = false;
}

public client_authorized(id)
{
    if (playerPutOrAuth[id])
    {
        return check_client_type(id)
    }
    playerPutOrAuth[id] = true;
    return PLUGIN_CONTINUE;
}

public client_putinserver(id)
{
    set_task(7.0, "WelcomeMessage", id);
    {
        if (playerPutOrAuth[id])
        {
            return check_client_type(id)
        }
        playerPutOrAuth[id] = true;
        return PLUGIN_CONTINUE;
    }
}    

public WelcomeMessage(id)
{
    if(g_iBlockBonus) return;
    {
        set_hudmessage(0, 200, 0, -1.0, 0.30, 0, 0.0, 5.0);
        show_hudmessage(id, "У тебя Steam, поэтому каждый раунд ты будешь получать бонусы");
    }
}    

public player_spawn(id)
{
    if(g_iBlockBonus) return;
    {
        if(is_user_alive(id) && g_steam[id] && round_count > 1)
        
        for(new i = 0; i < 5; i++){
            if(fm_strip_user_gun(id, iPistols[i]))
            break
        }
        give_item(id, "item_assaultsuit")
        cs_set_user_money(id, cs_get_user_money(id) +2000)
        give_item(id, "weapon_deagle")
        cs_set_user_bpammo(id, CSW_DEAGLE, 35)
        give_item(id, "weapon_flashbang")
        cs_set_user_bpammo(id, CSW_FLASHBANG, 2)
        give_item(id, "weapon_hegrenade")
        give_item(id, "item_thighpack")
    }
}    
check_client_type(id)
{
    if (!pcvar_dp_r_id_provider)
    return PLUGIN_CONTINUE

    server_cmd("dp_clientinfo %d", id)
    server_exec()

    new authprov = get_pcvar_num(pcvar_dp_r_id_provider)

    if (authprov == 2)
    {
        g_steam[id] = true
    }

    return PLUGIN_CONTINUE
}


И если можно добавить поддержку разминочного раунда.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя iLLuSioN
сообщение 18.3.2015, 22:57
Сообщение #2
Иконка группы

Стаж: 19 лет

Сообщений: 6911
Благодарностей: 7990
Полезность: 1639

round_count = 1
>>
round_count = 0

Код:
public player_spawn(id)
{
if(g_iBlockBonus) return;
{
if(is_user_alive(id) && g_steam[id] && round_count > 1)

for(new i = 0; i < 5; i++){
if(fm_strip_user_gun(id, iPistols[i]))
break
}
give_item(id, "item_assaultsuit")
cs_set_user_money(id, cs_get_user_money(id) +2000)
give_item(id, "weapon_deagle")
cs_set_user_bpammo(id, CSW_DEAGLE, 35)
give_item(id, "weapon_flashbang")
cs_set_user_bpammo(id, CSW_FLASHBANG, 2)
give_item(id, "weapon_hegrenade")
give_item(id, "item_thighpack")
}
}


>>

Код:
public player_spawn(id)
{
if(is_user_alive(id) && g_steam[id] && round_count > 1 && !g_iBlockBonus)
{
for(new i = 0; i < 5; i++)
{
if(fm_strip_user_gun(id, iPistols[i]))
break
}
give_item(id, "item_assaultsuit")
cs_set_user_money(id, cs_get_user_money(id) +2000)
give_item(id, "weapon_deagle")
cs_set_user_bpammo(id, CSW_DEAGLE, 35)
give_item(id, "weapon_flashbang")
cs_set_user_bpammo(id, CSW_FLASHBANG, 2)
give_item(id, "weapon_hegrenade")
give_item(id, "item_thighpack")
}
}


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
Статус пользователя Andrei
сообщение 18.3.2015, 22:59
Сообщение #3


Стаж: 15 лет

Сообщений: 1335
Благодарностей: 693
Полезность: 740

iLLuSioN, ну ты батька
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 4 раз
   + Цитировать сообщение
Статус пользователя iLLuSioN
сообщение 18.3.2015, 23:01
Сообщение #4
Иконка группы

Стаж: 19 лет

Сообщений: 6911
Благодарностей: 7990
Полезность: 1639

Andrei, и не говори


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
Статус пользователя bandit123
сообщение 18.3.2015, 23:49
Сообщение #5


Стаж: 12 лет

Сообщений: 85
Благодарностей: 19
Полезность: 175

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