Баг или что в плагине Change Team

Andrey777best

Пользователь
Регистрация
10 Июн 2017
Сообщения
24
Симпатии
2
Пол
Мужской
#1
Игрок меняет в середине раунда команды, умирает, и опять жив. Как это пофиксить? Это из за этого плагина? Просто играет, и в середине раунда если за КТ нажимает F11 и перешел за ТТ живым
bind "F11" "echo T Spec; kill; chooseteam;menuselect 6; chooseteam; menuselect 1; menuselect 1"
bind "F12" "echo CT Spec; kill; chooseteam;menuselect 6; chooseteam; menuselect 2; menuselect 2"
Код:
#include <amxmodx>
#include <cstrike>
#include <fakemeta>

#pragma semicolon 1

new g_iMoney[33];
new g_MapName[32], bool:g_VIPMap = false;

public plugin_init()
{
    register_plugin("Change Team", "1.1", "neygomon & Alienware");
    register_clcmd("chooseteam", "ShowMenu");
    register_menucmd(register_menuid("Team Menu"), MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_5|MENU_KEY_6|MENU_KEY_0, "HandleMenu");
    register_message(96, "MessageShowMenu");
    register_message(114, "MessageVGUIMenu");
    get_mapname(g_MapName, charsmax(g_MapName));
    if(containi(g_MapName, "as_") != -1) g_VIPMap = true;
}

public client_disconnect(id) g_iMoney[id] = 0;

public ShowMenu(id)
{
    new szMenu[512], iLen = formatex(szMenu, charsmax(szMenu), "\rВыбор команды \wby \yRB|18+|:^n^n"), iKeys = MENU_KEY_0;
    new CsTeams:iTeam = cs_get_user_team(id);
 
    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\y1. \rТеррористы^n");
    iKeys |= MENU_KEY_1;

    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\y2. \wКонтр-террористы^n^n");
    iKeys |= MENU_KEY_2;

    if(g_VIPMap) {
        if(iTeam != CS_TEAM_CT) iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\y3. \dСтать VIP^n^n");
        else {
            iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\y3. \wСтать VIP^n^n");
            iKeys |= MENU_KEY_3;
        }
    }

    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\y5. \rСлучайный \yвыбор^n");
    iKeys |= MENU_KEY_5;

    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\y6. \wНаблюдение^n^n^n");
    iKeys |= MENU_KEY_6;
    formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\y0. \rВыход");
    return show_menu(id, iKeys, szMenu, -1, "Team Menu");
}

public HandleMenu(id, iKey)
{
    new iTeam = get_pdata_int(id, 114, 5);
    switch(iKey)
    {
        case 0:
        {
            if(iTeam != 1 && iTeam != 2)
            set_task(2.0, "auto_give_money", id);
            set_pdata_int(id, 125, get_pdata_int(id, 125) & ~(1<<8));
            engclient_cmd(id, "jointeam", "1");
        }
        case 1:
        {
            if(iTeam != 1 && iTeam != 2)
            set_task(2.0, "auto_give_money", id);
            set_pdata_int(id, 125, get_pdata_int(id, 125) & ~(1<<8));
            engclient_cmd(id, "jointeam", "2");
        }
        case 2:
        {
            g_iMoney[id] = cs_get_user_money(id);
            set_pdata_int(id, 125, get_pdata_int(id, 125) & ~(1<<8));
            engclient_cmd(id, "jointeam", "3");
        }
        case 4:
        {
            g_iMoney[id] = cs_get_user_money(id);
            set_pdata_int(id, 125, get_pdata_int(id, 125) & ~(1<<8));
            engclient_cmd(id, "jointeam", "5");
        }
        case 5:
        {
            g_iMoney[id] = cs_get_user_money(id);
            user_kill(id, 1);
            engclient_cmd(id, "jointeam", "6");
        }
    }
    return PLUGIN_HANDLED;
}

public MessageShowMenu(iMsgId, iMsgDest, iReceiver)
{
    static szArg4[20]; get_msg_arg_string(4, szArg4, charsmax(szArg4));
    if(equal(szArg4, "#Team_Select", 12) || equal(szArg4, "#IG_Team_Select", 15) || equal(szArg4, "#IG_VIP_Team_Select", 19))
    {
        set_pdata_int(iReceiver, 205, 0);
        return ShowMenu(iReceiver);
    }
    return PLUGIN_CONTINUE;
}

public MessageVGUIMenu(iMsgId, iMsgDest, iReceiver)
{
    if(get_msg_arg_int(1) == 2)
    {
        set_pdata_int(iReceiver, 205, 0);
        return ShowMenu(iReceiver);
    }
    return PLUGIN_CONTINUE;
}

public auto_give_money(id)
       if(is_user_connected(id)) cs_set_user_money(id, g_iMoney[id]);
Скинул игрок бинд.
 
Последнее редактирование:

Le$hiy

Постоялец
Регистрация
10 Июн 2017
Сообщения
191
Симпатии
67
Пол
Мужской
#2
Andrey777best, отключи плагин и проверь бинд. Так хотя бы поймешь, из-за этого плагина или нет.