vip menu dissapear too early

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Аватар
esc-Fiv3
Извън линия
Foreigner
Foreigner
Мнения: 110
Регистриран на: 24 Ное 2018, 19:19
Се отблагодари: 16 пъти

vip menu dissapear too early

Мнение от esc-Fiv3 » 17 Яну 2019, 03:49

Hello! This menu of weapons is set to dissapear after 10 seconds but sometimes dissapear earlier. Any idea why? Here is the source:

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>
#include <engine>
#define CC_COLORS_TYPE CC_COLORS_SHORT
#include <cromchat>  
#define VIP_FLAG ADMIN_LEVEL_H

static const COLOR[] = "^x04"
static const CONTACT[] = ""
new maxplayers
new gmsgSayText
new mpd, mkb, mhb
new health_add
new health_hs_add
new health_max
new nKiller
new nKiller_hp
new nHp_add
new nHp_max
new g_awp_active
new g_menu_active
new CurrentRound
new bool:HasC4[33]
new jumpnum[33] = 0
new bool:dojump[33] = false
new cvar_vip_jumps

public plugin_init()
{
    register_plugin("VIP Menu", "3.1", "nutu.")
    mpd = register_cvar("money_per_damage","3")
    mkb = register_cvar("money_kill_bonus","200")
    mhb = register_cvar("money_hs_bonus","500")
    cvar_vip_jumps = register_cvar("vip_max_jumps", "1")
    health_add = register_cvar("amx_vip_hp", "15")
    health_hs_add = register_cvar("amx_vip_hp_hs", "30")
    health_max = register_cvar("amx_vip_max_hp", "100")
    g_awp_active = register_cvar("awp_active", "1")
    g_menu_active = register_cvar("menu_active", "1")
    register_event("Damage","Damage","b")
    register_event("DeathMsg","death_msg","a")
    register_clcmd("awp","HandleCmd")
    register_clcmd("sg550","HandleCmd")
    register_clcmd("g3sg1","HandleCmd")
    register_clcmd("say /wantvip","ShowMotd")
    maxplayers = get_maxplayers()
    gmsgSayText = get_user_msgid("SayText")
    register_clcmd("say", "handle_say")
    register_cvar("amx_contactinfo", CONTACT, FCVAR_SERVER)
    register_logevent("LogEvent_RoundStart", 2, "1=Round_Start" );
    register_event("HLTV", "new_round", "a", "1=0", "2=0");
    register_event("TextMsg","Event_RoundRestart","a","2&#Game_w")
    register_event("TextMsg","Event_RoundRestart","a","2&#Game_C");
    register_event("DeathMsg", "hook_death", "a", "1>0")
}

public Damage(id)
{
    new weapon, hitpoint, attacker = get_user_attacker(id,weapon,hitpoint)
    if(attacker<=maxplayers && is_user_alive(attacker) && attacker!=id)
        if (get_user_flags(attacker) & ADMIN_LEVEL_H) 
    {
        new money = read_data(2) * get_pcvar_num(mpd)
        if(hitpoint==1) money += get_pcvar_num(mhb)
        cs_set_user_money(attacker,cs_get_user_money(attacker) + money)
    }
}

public death_msg()
{
    if(read_data(1)<=maxplayers && read_data(1) && read_data(1)!=read_data(2)) cs_set_user_money(read_data(1),cs_get_user_money(read_data(1)) + get_pcvar_num(mkb) - 300)
}

public LogEvent_RoundStart()
{
    CurrentRound++;
    new players[32], player, pnum;
    get_players(players, pnum, "a");
    for(new i = 0; i < pnum; i++)
    {
        player = players[i];
        if(is_user_alive(player) && get_user_flags(player) & ADMIN_LEVEL_H)
        {
            give_item(player, "item_assaultsuit")
            give_item(player, "item_thighpack")
            
            if (!get_pcvar_num(g_menu_active))
                return PLUGIN_CONTINUE
            if(CurrentRound <= 2)
            {
                CromChat(player, "!g[VIP] !wYou will get only the equipment in the first two rounds.")
            }
            
            if(CurrentRound >= 3)
            {
                showvipmenu(player);
            }
        }
    }
    return PLUGIN_HANDLED
}

public Event_RoundRestart()
{
    CurrentRound=0;
}

public hook_death()
{
    nKiller = read_data(1)
    
    if ( (read_data(3) == 1) && (read_data(5) == 0) )
    {
        nHp_add = get_pcvar_num (health_hs_add)
    }
    else
        nHp_add = get_pcvar_num (health_add)
    nHp_max = get_pcvar_num (health_max)
    if(!(get_user_flags(nKiller) & ADMIN_LEVEL_H))
        return;
    
    nKiller_hp = get_user_health(nKiller)
    nKiller_hp += nHp_add
    if (nKiller_hp > nHp_max) nKiller_hp = nHp_max
    set_user_health(nKiller, nKiller_hp)
    set_hudmessage(0, 255, 0, -1.0, 0.15, 0, 1.0, 1.0, 0.1, 0.1, -1)
    show_hudmessage(nKiller, "+%d HP", nHp_add)
    message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, nKiller)
    write_short(1<<10)
    write_short(1<<10)
    write_short(0x0000)
    write_byte(0)
    write_byte(0)
    write_byte(200)
    write_byte(75)
    message_end()
    
}

public client_PreThink(id)
{
    if(!is_user_alive(id))
    {
        return PLUGIN_HANDLED;
    }
    
    new nbut = get_user_button(id)
    new obut = get_user_oldbutton(id)
    
    if((nbut & IN_JUMP) && !(get_entity_flags(id) & FL_ONGROUND) && !(obut & IN_JUMP))
    {
        if(get_user_flags(id) & VIP_FLAG)
        {
            if(jumpnum[id] < get_pcvar_num(cvar_vip_jumps))
            {
                dojump[id] = true
                jumpnum[id]++
                return PLUGIN_CONTINUE;
            }
        }
    }
    
    if((nbut & IN_JUMP) && (get_entity_flags(id) & FL_ONGROUND))
    {
        jumpnum[id] = 0
        return PLUGIN_CONTINUE;
    }
    
    return PLUGIN_CONTINUE;
}

public client_PostThink(id)
{
    if(!is_user_alive(id))
    {
        return PLUGIN_CONTINUE;
    }
    
    if(get_user_flags(id) & VIP_FLAG)
    {
        if(dojump[id] == true)
        {
            new Float:velocity[3]
            entity_get_vector(id,EV_VEC_velocity, velocity)
            velocity[2] = random_float(265.0,285.0)
            entity_set_vector(id,EV_VEC_velocity, velocity)
            dojump[id] = false
            return PLUGIN_CONTINUE;
        }
    }
    
    return PLUGIN_CONTINUE;
}

public showvipmenu(id) {
    new menu = menu_create ("\yFREE \rVIP \yGUNS MENU", "vipmenuheadler");
    menu_additem(menu, "\wGet M4A1+DEAGLE+EQUIPMENT \r[GRENADES/ARRMOR]", "1");
    menu_additem(menu, "\wGet AK47+DEAGLE+EQUIPMENT \r[GRENADES/ARRMOR]", "2");
    menu_additem(menu, "\wGet GALIL+DEAGLE+EQUIPMENT \r[GRENADES/ARRMOR]", "3");
    menu_additem(menu, "\wGet FAMAS+DEAGLE+EQUIPMENT \r[GRENADES/ARRMOR]", "4");
    menu_additem(menu, "\wGet XM1014+DEAGLE+EQUIPMENT \r[GRENADES/ARRMOR]", "5");
    
    menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
    menu_display(id, menu, 0 );
    set_task(0.1,"task",id)
}
public closemenu( id ) 
{ 
    client_cmd(id,"slot10") 
} 
public task(id) 
{ 
    set_task(10.0,"closemenu",id) 
} 
public vipmenuheadler(id, menu, item) {
    if(item == MENU_EXIT || !is_user_alive(id)) {
        menu_destroy(menu);
        return PLUGIN_HANDLED;
    }
    new data [6], szName [64];
    new access, callback;
    menu_item_getinfo (menu, item, access, data,charsmax (data), szName,charsmax (szName), callback);
    new key = str_to_num (data);
    
    switch (key) {
        case 1: { 
            if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)
                HasC4[id] = true;
            else
                HasC4[id] = false;
            
            strip_user_weapons (id)
            give_item(id,"weapon_m4a1")
            give_item(id,"weapon_deagle")
            give_item(id,"weapon_knife")
            give_item(id,"weapon_hegrenade")
            give_item(id, "weapon_flashbang");
            give_item(id, "weapon_flashbang");
            give_item(id, "weapon_smokegrenade");
            give_item(id, "item_assaultsuit");
            give_item(id, "item_thighpack");
            cs_set_user_bpammo(id, CSW_M4A1,90);
            cs_set_user_bpammo(id, CSW_DEAGLE, 35);
            CromChat(id, "!g[VIP] !wYou have taken free !gM4A1+DEAGLE+EQUIPMENT")
            
            if (HasC4[id])
            {
                give_item(id, "weapon_c4");
                cs_set_user_plant( id );
            }
        }
        case 2: { 
            if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)
                HasC4[id] = true;
            else
                HasC4[id] = false;
            
            strip_user_weapons (id)
            give_item(id,"weapon_ak47")
            give_item(id,"weapon_deagle")
            give_item(id,"weapon_knife")
            give_item(id,"weapon_hegrenade")
            give_item(id, "weapon_flashbang");
            give_item(id, "weapon_flashbang");
            give_item(id, "weapon_smokegrenade");
            give_item(id, "item_assaultsuit");
            give_item(id, "item_thighpack");
            cs_set_user_bpammo(id, CSW_AK47,90);
            cs_set_user_bpammo(id, CSW_DEAGLE, 35);
            CromChat(id, "!g[VIP] !wYou have taken free !gAK47+DEAGLE+EQUIPMENT")
            
            if (HasC4[id])
            {
                give_item(id, "weapon_c4");
                cs_set_user_plant( id );
            }
        }
        case 3: { 
            if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)
                HasC4[id] = true;
            else
                HasC4[id] = false;
            
            strip_user_weapons (id)
            give_item(id,"weapon_galil")
            give_item(id,"weapon_deagle")
            give_item(id,"weapon_knife")
            give_item(id,"weapon_hegrenade")
            give_item(id, "weapon_flashbang");
            give_item(id, "weapon_flashbang");
            give_item(id, "weapon_smokegrenade");
            give_item(id, "item_assaultsuit");
            give_item(id, "item_thighpack");
            cs_set_user_bpammo(id, CSW_GALIL,90);
            cs_set_user_bpammo(id, CSW_DEAGLE, 35);
            CromChat(id, "!g[VIP] !wYou have taken free !gGALIL+DEAGLE+EQUIPMENT")
            
            if (HasC4[id])
            {
                give_item(id, "weapon_c4");
                cs_set_user_plant( id );
            }
        }
        case 4: { 
            if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)
                HasC4[id] = true;
            else
                HasC4[id] = false;
            
            strip_user_weapons (id)
            give_item(id,"weapon_famas")
            give_item(id,"weapon_deagle")
            give_item(id,"weapon_knife")
            give_item(id,"weapon_hegrenade")
            give_item(id, "weapon_flashbang");
            give_item(id, "weapon_flashbang");
            give_item(id, "weapon_smokegrenade");
            give_item(id, "item_assaultsuit");
            give_item(id, "item_thighpack");
            cs_set_user_bpammo(id, CSW_FAMAS, 90);
            cs_set_user_bpammo(id, CSW_DEAGLE, 35);
            CromChat(id, "!g[VIP] !wYou have taken free !gFAMAS+DEAGLE+EQUIPMENT")
            
            if (HasC4[id])
            {
                give_item(id, "weapon_c4");
                cs_set_user_plant( id );
            }
        }
        case 5: { 
            if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)
                HasC4[id] = true;
            else
                HasC4[id] = false;
            
            strip_user_weapons (id)
            give_item(id,"weapon_xm1014")
            give_item(id,"weapon_deagle")
            give_item(id,"weapon_knife")
            give_item(id,"weapon_hegrenade")
            give_item(id, "weapon_flashbang");
            give_item(id, "weapon_flashbang");
            give_item(id, "weapon_smokegrenade");
            give_item(id, "item_assaultsuit");
            give_item(id, "item_thighpack");
            cs_set_user_bpammo(id, CSW_XM1014,32);
            cs_set_user_bpammo(id, CSW_DEAGLE, 35);
            CromChat(id, "!g[VIP] !wYou have taken free !gXM1014+DEAGLE+EQUIPMENT")
            
            if (HasC4[id])
            {
                give_item(id, "weapon_c4");
                cs_set_user_plant( id );
            }
        }
        case 9: {             
        }
    }
    menu_destroy (menu);
    return PLUGIN_HANDLED;
}

public HandleCmd(id){
    if (!get_pcvar_num(g_awp_active))
        return PLUGIN_CONTINUE
    if(get_user_flags(id) & ADMIN_LEVEL_H) 
        return PLUGIN_CONTINUE
    CromChat(id, "!g[VIP] !wFor buying Snipers !g(AWP, SG550, G3SG1)!w you must be a !gVIP Player.")
    return PLUGIN_HANDLED
}

public new_round()
{
    CromChat(0, "!g[VIP] !wIf you want to see what a !gVIP Player!w gets, type !g/wantvip !w| !g(c) nutu.");
}

public ShowMotd(id)
{
    show_motd(id, "vip.txt")
}

public handle_say(id) {
    new said[192]
    read_args(said,192)
    if( ( containi(said, "who") != -1 && containi(said, "admin") != -1 ) || contain(said, "/vips") != -1 )
        set_task(0.1,"print_adminlist",id)
    return PLUGIN_CONTINUE
}

public print_adminlist(user) 
{
    new adminnames[33][32]
    new message[256]
    new contactinfo[256], contact[112]
    new id, count, x, len
    
    for(id = 1 ; id <= maxplayers ; id++)
        if(is_user_connected(id))
        if(get_user_flags(id) & ADMIN_LEVEL_H)
        get_user_name(id, adminnames[count++], 31)
    
    len = format(message, 255, "%sONLINE VIPS: ",COLOR)
    if(count > 0) {
        for(x = 0 ; x < count ; x++) {
            len += format(message[len], 255-len, "%s%s ", adminnames[x], x < (count-1) ? ", ":"")
            if(len > 96 ) {
                print_message(user, message)
                len = format(message, 255, "%s ",COLOR)
            }
        }
        print_message(user, message)
    }
    else {
        len += format(message[len], 255-len, "There's no online VIP.")
        print_message(user, message)
    }
    
    get_cvar_string("amx_contactinfo", contact, 63)
    if(contact[0])  {
        format(contactinfo, 111, "%s Contact Server Admin -- %s", COLOR, contact)
        print_message(user, contactinfo)
    }
}

print_message(id, msg[]) {
    message_begin(MSG_ONE, gmsgSayText, {0,0,0}, id)
    write_byte(id)
    write_string(msg)
    message_end()
}

/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1063\\ f0\\ fs16 \n\\ par }
*/

Аватар
mi0
Извън линия
AMXX Скриптър
AMXX Скриптър
Мнения: 534
Регистриран на: 09 Дек 2016, 22:02
Се отблагодари: 97 пъти
Получена благодарност: 120 пъти
Обратна връзка:

vip menu dissapear too early

Мнение от mi0 » 17 Яну 2019, 11:07

The problem isn't in this plugin as I can see. This can be caused by another plugin.
aka kurdokoleno
Catch Mod - 87.121.112.232:27021

Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 7206
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 117 пъти
Получена благодарност: 1295 пъти
Обратна връзка:

vip menu dissapear too early

Мнение от OciXCrom » 17 Яну 2019, 12:07

If you're using AMXX 1.9, there's a built-in option for menu timers. I can edit the plugin to use that.

Аватар
esc-Fiv3
Извън линия
Foreigner
Foreigner
Мнения: 110
Регистриран на: 24 Ное 2018, 19:19
Се отблагодари: 16 пъти

vip menu dissapear too early

Мнение от esc-Fiv3 » 17 Яну 2019, 14:32

I'm using AMXMODX 1.8.2

Аватар
DaRk_StyLe
Извън линия
AMXX Скриптър
AMXX Скриптър
Мнения: 264
Регистриран на: 26 Окт 2016, 12:40
Се отблагодари: 11 пъти
Получена благодарност: 33 пъти

vip menu dissapear too early

Мнение от DaRk_StyLe » 20 Яну 2019, 15:17

Try this:
► Покажи скъсения текст

Публикувай отговор
  • Подобни теми
    Отговори
    Преглеждания
     Последно мнение

Обратно към “Заявки за плъгини”

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 11 госта