Jump to content

graf88

Membru
  • Posts

    4
  • Joined

  • Last visited

Posts posted by graf88

  1. Salut,

     

    Eu sincer n-am inteles absolut nimic din ce ai spus:

     

    1. Dacă VIP scrie că /vmenu , se deschide un meniu (așa cum se vede în imagine)

     

    2. Maxim BAN timp 3 de ori.

     

    imagine: ndtv9bM.png

     

    SMA:

    #include <amxmodx>
    #include <cstrike>
    #include <fun>
    #include <hamsandwich>
    #include <engine>
    #include <colorchat>
     
    #define VIP_LEVEL_ACCES ADMIN_LEVEL_F
     
    #define SCOREATTRIB_NONE    0
    #define SCOREATTRIB_DEAD    ( 1 << 0 )
    #define SCOREATTRIB_BOMB    ( 1 << 1 )
    #define SCOREATTRIB_VIP  ( 1 << 2 )
     
    #define REMOVE_FLAGS "r"
     
    new const RMaps [ ] [ ] =
    {
        "35hp",
        "35hp_2",
        "31hp",
        "1hp",
        "100hp"
    };
     
    new const g_szBeginning[ ] = "Membrii VIP"
    new g_szMessage[ 256 ];
     
    new cvar_vip_maxap, cvar_vip_maxhp, cvar_vip_showC, cvar_vip_showH, cvar_vip_in_out, cvar_tag, cvar_start_hp, cvar_start_ap, cvar_start_money, cvar_vip_jump, cvar_hp_kill, cvar_ap_kill, jumpnum[33], bool: dojump[33], bool:use[33], SyncHudMessage;
     
    public plugin_init()
    {
        register_plugin("Classic VIP", "5.0", "Devil aKa. StefaN@CSX");
       
        RegisterHam(Ham_Spawn, "player", "Spawn", 1);
       
        //register_clcmd("say /vmenu", "vip_menu", -1);
        register_clcmd("say /vip", "vip_info");
        register_clcmd("say", "handle_say");
        register_clcmd("say_team", "handle_say");
       
        register_event("DeathMsg", "eDeathMsg", "a");
        register_event("HLTV", "Event_NewRound", "a", "1=0", "2=0");
        register_message(get_user_msgid( "ScoreAttrib" ), "MessageScoreAttrib");   
     
        cvar_tag = register_cvar("amx_vip_tag", "VIP");
        cvar_start_hp = register_cvar("amx_start_hp", "150");
        cvar_start_ap = register_cvar("amx_start_ap", "180");
        cvar_start_money = register_cvar("amx_start_money", "8000");
        cvar_vip_jump = register_cvar("amx_vip_jump", "1" );
        cvar_hp_kill = register_cvar("amx_vip_addhp", "10");   
        cvar_ap_kill = register_cvar("amx_vip_addap", "10");
        cvar_vip_in_out = register_cvar("amx_vip_in_out", "1");
        cvar_vip_showC = register_cvar("amx_vip_show_chat", "1");
        cvar_vip_showH = register_cvar("amx_vip_show_hud", "1");
        cvar_vip_maxhp = register_cvar("amx_vip_maxhp", "180");
        cvar_vip_maxap = register_cvar("amx_vip_maxap", "200");
     
        set_task(120.0, "mesaj_info", _, _, _, "b");
        set_task( 1.0, "TaskDisplayVips", _, _, _, "b", 0 );
        SyncHudMessage = CreateHudSyncObj( );
           
    }
     
    public Event_NewRound()
    {
        arrayset(use, false, 33);
    }
     
    public Spawn(id)
    {
        if(!is_user_alive(id))
            return;
       
        new CsTeams:team = cs_get_user_team(id)
        if(get_user_flags(id) & VIP_LEVEL_ACCES)
        {
            switch(team)
            {
            case CS_TEAM_T:
            {
                set_user_health(id, get_pcvar_num(cvar_start_hp));
                set_user_armor(id, get_pcvar_num(cvar_start_ap));
                cs_set_user_money(id, cs_get_user_money(id) + get_pcvar_num(cvar_start_money));
            }
            case CS_TEAM_CT:
            {
                set_user_health(id, get_pcvar_num( cvar_start_hp ));
                set_user_armor(id, get_pcvar_num( cvar_start_ap ));
                cs_set_user_money(id, cs_get_user_money(id) + get_pcvar_num(cvar_start_money));
            }
            }
        }
    }
     
    public client_putinserver(id)
    {  
        set_task(2.0, "in", id);
       
        jumpnum[id] = 0;
        dojump[id] = false;
     
        new MapName[32]; get_mapname(MapName, sizeof(MapName));
       
        for (new i = 0; i < sizeof (RMaps); i ++)
        {
            if(equali (MapName, RMaps[i]))
            {
                remove_user_flags (id, read_flags(REMOVE_FLAGS));
            }
        }
    }
     
    public client_disconnect( id )
    {
        set_task(2.0, "out", id);
     
        jumpnum[id] = 0;
        dojump[id] = false;
    }
     
    public client_PreThink( id )
    {
        if(!is_user_alive(id))
            return PLUGIN_CONTINUE;
     
        new BUTON = get_user_button(id)
        new OLDBUTON = get_user_oldbutton(id)
        new JUMP_VIP = get_pcvar_num(cvar_vip_jump)
     
        if((BUTON & IN_JUMP) && !(get_entity_flags(id) & FL_ONGROUND) && !(OLDBUTON & IN_JUMP))
        {
            if(((get_user_flags(id) & VIP_LEVEL_ACCES) && (jumpnum[id] < JUMP_VIP)))
            {
                dojump[id] = true
                jumpnum[id]++
            }
        }
     
        if((BUTON & IN_JUMP) && (get_entity_flags(id) & FL_ONGROUND))
        {
            jumpnum[id] = 0
        }
     
        return PLUGIN_CONTINUE;
    }
     
    public client_PostThink(id)
    {
        if(!is_user_alive(id))
            return PLUGIN_CONTINUE;
     
        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;
    }
     
    public eDeathMsg()
    {
        new id_Killer = read_data(1);
        new VIP_MAXHP = get_pcvar_num(cvar_vip_maxhp);
        new VIP_MAX_HP = get_user_health(id_Killer);
        new VIP_MAXAP = get_pcvar_num(cvar_vip_maxap);
        new VIP_MAX_AP = get_user_armor(id_Killer);
     
        if(is_user_alive(id_Killer))
        {
            if(get_user_flags(id_Killer) & VIP_LEVEL_ACCES )
                {
                    set_user_health(id_Killer, get_user_health(id_Killer) + get_pcvar_num(cvar_hp_kill));
                    set_user_armor(id_Killer, get_user_armor(id_Killer) + get_pcvar_num(cvar_ap_kill));
                }
        }
     
        if(VIP_MAX_HP >= VIP_MAXHP)
        {
                    set_user_health(id_Killer, get_pcvar_num(cvar_vip_maxhp));
            return PLUGIN_HANDLED;
        }
       
        if(VIP_MAX_AP >= VIP_MAXAP)
        {
                    set_user_armor(id_Killer, get_pcvar_num(cvar_vip_maxap));
            return PLUGIN_HANDLED;
        }
     
        return PLUGIN_HANDLED;
    }
     
    public in(id)  
    {
        if(get_pcvar_num(cvar_vip_in_out))
        {
            new tag[32], name[32];
     
            get_pcvar_string(cvar_tag, tag, charsmax(tag));
            get_user_name(id, name, charsmax(name));
     
            if(get_user_flags(id) & VIP_LEVEL_ACCES)  
            {
                ColorChat(0, GREEN, "^3[%s] ^1VIP: ^4%s ^1s-a conectat.", tag, name);
            }
            return PLUGIN_HANDLED;
        }
        return PLUGIN_CONTINUE;
    }
     
    public out(id)  
    {  
        if(get_pcvar_num(cvar_vip_in_out))
        {
            new tag[32], name[32];
     
            get_pcvar_string(cvar_tag, tag, charsmax(tag));
            get_user_name(id, name, charsmax(name));
     
            if(get_user_flags(id) & VIP_LEVEL_ACCES)  
            {
                ColorChat(0, GREEN, "^3[%s] ^1VIP: ^4%s ^1s-a deconectat.", tag, name);
            }
            return PLUGIN_HANDLED;
        }
        return PLUGIN_CONTINUE;
    }
     
    public vip_info(id)
    {
        show_motd(id, "/addons/amxmodx/configs/vip_info.html");
    }
     
    public mesaj_info()
    {
        new tag[32];
        get_pcvar_string(cvar_tag, tag, charsmax(tag));
       
        ColorChat(0, GREEN, "^3[%s] ^1Tastati in chat ^4/vip ^1pentru a vedea beneficiile si pretul vip-ului.", tag);
    }
     
    public TaskDisplayVips( )
    {
        if(get_pcvar_num(cvar_vip_showH))
        {
            static iPlayers[ 32 ];
            static iPlayersNum;
       
            get_players( iPlayers, iPlayersNum, "ch" );
            if( !iPlayersNum )
                return 1;
       
            static iVipsConnected, szVipsNames[ 128 ], szName[ 32 ];
            formatex( szVipsNames, sizeof ( szVipsNames ) -1, "" ); // Is this needed ?
            iVipsConnected = 0;
       
            static id, i;
            for( i = 0; i < iPlayersNum; i++ )
            {
                id = iPlayers[ i ];
                if( get_user_flags( id ) & VIP_LEVEL_ACCES )
                {
                    get_user_name( id, szName, sizeof ( szName ) -1 );
               
                    add( szVipsNames, sizeof ( szVipsNames ) -1, szName );
                    add( szVipsNames, sizeof ( szVipsNames ) -1, "^n" );
               
                    iVipsConnected++;
                }
            }
       
            formatex( g_szMessage, sizeof ( g_szMessage ) -1, "%s ( %i )^n%s",
                g_szBeginning, iVipsConnected, szVipsNames );
           
            set_hudmessage( 25, 255, 25, 0.01, 0.25, 0, 0.0, 1.0, 0.1, 0.1, -1 );
            ShowSyncHudMsg( 0, SyncHudMessage, g_szMessage );
        }
        return PLUGIN_CONTINUE;
           
    }
     
    public handle_say(id)
    {
        new said[192];
        read_args(said,192);
        if(contain(said, "/vips") != -1)
        set_task(0.1,"print_adminlist",id);
        return PLUGIN_CONTINUE;
    }
     
    public print_adminlist(user)
    {
        if(get_pcvar_num(cvar_vip_showC))
        {
            new tag[32];
            get_pcvar_string(cvar_tag, tag, charsmax(tag));
       
            new adminnames[33][32];
            new message[256];
            new id, count, x, len;
     
            for(id = 1 ; id <= get_maxplayers() ; id++)
                if(is_user_connected(id))
                    if(get_user_flags(id) & VIP_LEVEL_ACCES)
                        get_user_name(id, adminnames[count++], charsmax(adminnames[ ]));
       
            len = format(message, 255, "^3[%s] ^1VIP-ii online sunt:^4 " ,tag);
            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, " ");
                    }
                    }
                print_message(user, message);
                }
            else
            {
                ColorChat(0, GREEN, "^3[%s] ^1Nu sunt ^4VIP^1-i online.", tag);
            }
        }
        return PLUGIN_CONTINUE;  
    }
     
    print_message(id, msg[])
    {
        message_begin(MSG_ONE, get_user_msgid("SayText"), {0,0,0}, id);
        write_byte(id);
        write_string(msg);
        message_end();
    }
     
    public MessageScoreAttrib(iMsgID, iDest, iReceiver)
    {
            new iPlayer = get_msg_arg_int(1);
            if(is_user_connected( iPlayer )
            && (get_user_flags( iPlayer ) & VIP_LEVEL_ACCES))
            {
                    set_msg_arg_int(2, ARG_BYTE, is_user_alive(iPlayer) ? SCOREATTRIB_VIP : SCOREATTRIB_DEAD);
                }
    }
    

    Nu pot vorbi în întregime în limba română! Eu mă scuzați.

  2. Bună!

    Există un plugin VIP, care ar trebui să editați următoarele și se adaugă:

    Nu fi un meniu de armă.

    /vmenu afișează o comandă de meniu, care este Jucător Kick, și Jucător Ban.

     Jucator ban funcția de VIP, legea poate obține numai la fiecare 15 minute, la maxim, în timp este de 3 zile.

     

    #include <amxmodx>
    #include <cstrike>
    #include <fun>
    #include <hamsandwich>
    #include <engine>
    #include <colorchat>
     
    #define VIP_LEVEL_ACCES ADMIN_LEVEL_F
     
    #define SCOREATTRIB_NONE    0
    #define SCOREATTRIB_DEAD    ( 1 << 0 )
    #define SCOREATTRIB_BOMB    ( 1 << 1 )
    #define SCOREATTRIB_VIP  ( 1 << 2 )
     
    #define REMOVE_FLAGS "r"
     
    new const RMaps [ ] [ ] =
    {
        "35hp",
        "35hp_2",
        "31hp",
        "1hp",
        "100hp"
    };
     
    new const g_szBeginning[ ] = "Membrii VIP"
    new g_szMessage[ 256 ];
     
    new cvar_vip_maxap, cvar_vip_maxhp, cvar_vip_showC, cvar_vip_showH, cvar_vip_in_out, cvar_tag, cvar_start_hp, cvar_start_ap, cvar_start_money, cvar_vip_jump, cvar_hp_kill, cvar_ap_kill, jumpnum[33], bool: dojump[33], bool:use[33], SyncHudMessage;
     
    public plugin_init()
    {
        register_plugin("Classic VIP", "5.0", "Devil aKa. StefaN@CSX");
       
        RegisterHam(Ham_Spawn, "player", "Spawn", 1);
       
        register_clcmd("say /vmenu", "vip_menu", -1);
        register_clcmd("say /vip", "vip_info");
        register_clcmd("say", "handle_say");
        register_clcmd("say_team", "handle_say");
       
        register_event("DeathMsg", "eDeathMsg", "a");
        register_event("HLTV", "Event_NewRound", "a", "1=0", "2=0");
        register_message(get_user_msgid( "ScoreAttrib" ), "MessageScoreAttrib");   
     
        cvar_tag = register_cvar("amx_vip_tag", "VIP");
        cvar_start_hp = register_cvar("amx_start_hp", "150");
        cvar_start_ap = register_cvar("amx_start_ap", "180");
        cvar_start_money = register_cvar("amx_start_money", "8000");
        cvar_vip_jump = register_cvar("amx_vip_jump", "1" );
        cvar_hp_kill = register_cvar("amx_vip_addhp", "10");   
        cvar_ap_kill = register_cvar("amx_vip_addap", "10");
        cvar_vip_in_out = register_cvar("amx_vip_in_out", "1");
        cvar_vip_showC = register_cvar("amx_vip_show_chat", "1");
        cvar_vip_showH = register_cvar("amx_vip_show_hud", "1");
        cvar_vip_maxhp = register_cvar("amx_vip_maxhp", "180");
        cvar_vip_maxap = register_cvar("amx_vip_maxap", "200");
     
        set_task(120.0, "mesaj_info", _, _, _, "b");
        set_task( 1.0, "TaskDisplayVips", _, _, _, "b", 0 );
        SyncHudMessage = CreateHudSyncObj( );
           
    }
     
    public Event_NewRound()
    {
        arrayset(use, false, 33);
    }
     
    public vip_menu(id)
    {
        if(!is_user_alive(id))
            return;
           
        new menu
        switch(cs_get_user_team(id))
        {
            case CS_TEAM_CT:
            {
                menu = menu_create("\y[\rVIP Classic\y] \wMeniu \yVIP", "menu_ammunition");
                menu_additem(menu, "M4a1+Deagle+Set grenazi", "1", VIP_LEVEL_ACCES);
                menu_additem(menu, "Famas+Deagle+Set grenazi", "2", VIP_LEVEL_ACCES);
                menu_additem(menu, "Awp+Deagle+Set grenazi", "3", VIP_LEVEL_ACCES);
            }
       
            case CS_TEAM_T:
            {
                menu = menu_create("\y[\rVIP Classic\y] \wMeniu \yVIP", "menu_ammunition");
                menu_additem(menu, "Ak47+Deagle+Set grenazi", "1", VIP_LEVEL_ACCES);
                menu_additem(menu, "Galil+Deagle+Set grenazi", "2", VIP_LEVEL_ACCES);
                menu_additem(menu, "Awp+Deagle+Set grenazi", "3", VIP_LEVEL_ACCES);
            }
        }
        menu_display(id, menu, 0)
        return PLUGIN_HANDLED;
    }
     
    public menu_ammunition ( id, menu, item )
    {
        new tag[32];
        get_pcvar_string(cvar_tag, tag, charsmax(tag));
       
        if(use[id])
        {
            ColorChat(id, GREEN,"^3[%s] ^1Meniul poate fi folosit doar o data pe runda !", tag);
            return PLUGIN_HANDLED;
        }
       
        if(item == MENU_EXIT)
        {
            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);
     
        if(cs_get_user_team(id) == CS_TEAM_CT)
            switch(key)
        {
            case 1:
        {
                strip_user_weapons(id)
                give_item(id, "weapon_knife"); 
                give_item(id, "weapon_m4a1");
                give_item(id, "weapon_deagle");
                give_item(id, "weapon_hegrenade");
                give_item(id, "weapon_flashbang");
                give_item(id, "weapon_smokegrenade");
                cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 1);
                cs_set_user_bpammo(id, CSW_HEGRENADE, 1);
                cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
                cs_set_user_bpammo(id, CSW_M4A1, 90);
                cs_set_user_bpammo(id, CSW_DEAGLE, 35);
                ColorChat(id,GREEN,"^3[%s] ^1Ai ales ^4M4a1^1+^4Deagle^1+^4Set grenazi^1.",tag);
        }
            case 2:
        {
                strip_user_weapons(id)
                give_item(id, "weapon_knife");
                give_item(id, "weapon_famas");
                give_item(id, "weapon_deagle");
                give_item(id, "weapon_hegrenade");
                give_item(id, "weapon_flashbang");
                give_item(id, "weapon_smokegrenade");
                cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 1);
                cs_set_user_bpammo(id, CSW_HEGRENADE, 1);
                cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
                cs_set_user_bpammo(id, CSW_FAMAS, 90);
                cs_set_user_bpammo(id, CSW_DEAGLE, 35);
                ColorChat(id,GREEN,"^3[%s] ^1Ai ales ^4Famas^1+^4Deagle^1+^4Set grenazi^1.",tag);
        }
            case 3:
        {
                strip_user_weapons(id)
                give_item(id, "weapon_knife");
                give_item(id, "weapon_awp");
                give_item(id, "weapon_deagle");
                give_item(id, "weapon_hegrenade");
                give_item(id, "weapon_flashbang");
                give_item(id, "weapon_smokegrenade");
                cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 1);
                cs_set_user_bpammo(id, CSW_HEGRENADE, 1);
                cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
                cs_set_user_bpammo(id, CSW_AWP, 30);
                cs_set_user_bpammo(id, CSW_DEAGLE, 35);
                ColorChat(id,GREEN,"^3[%s] ^1Ai ales ^4Awp^1+^4Deagle^1+^4Set grenazi^1.",tag);
        }      
    }
        if(cs_get_user_team(id) == CS_TEAM_T)
            switch(key)
        {
            case 1:
        {
                strip_user_weapons(id)
                give_item(id, "weapon_knife");
                give_item(id, "weapon_ak47");
                give_item(id, "weapon_deagle");
                give_item(id, "weapon_hegrenade");
                give_item(id, "weapon_flashbang");
                give_item(id, "weapon_smokegrenade");
                cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 1);
                cs_set_user_bpammo(id, CSW_HEGRENADE, 1);
                cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
                cs_set_user_bpammo(id, CSW_AK47, 90);
                cs_set_user_bpammo(id, CSW_DEAGLE, 35);
                ColorChat(id,GREEN,"^3[%s] ^1Ai ales ^4Ak47^1+^4Deagle^1+^4Set grenazi^1.",tag);
        }      
            case 2:
        {
                strip_user_weapons(id)
                give_item(id, "weapon_knife");
                give_item(id, "weapon_galil");
                give_item(id, "weapon_deagle");
                give_item(id, "weapon_hegrenade");
                give_item(id, "weapon_flashbang");
                give_item(id, "weapon_smokegrenade");
                cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 1);
                cs_set_user_bpammo(id, CSW_HEGRENADE, 1);
                cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
                cs_set_user_bpammo(id, CSW_GALIL, 90);
                cs_set_user_bpammo(id, CSW_DEAGLE, 35);
                ColorChat(id,GREEN,"^3[%s] ^1Ai ales ^4Galil^1+^4Deagle^1+^4Set grenazi^1.",tag);
        }
            case 3:
        {
                strip_user_weapons(id)
                give_item(id, "weapon_knife");
                give_item(id, "weapon_awp");
                give_item(id, "weapon_deagle");
                give_item(id, "weapon_hegrenade");
                give_item(id, "weapon_flashbang");
                give_item(id, "weapon_smokegrenade");
                cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 1);
                cs_set_user_bpammo(id, CSW_HEGRENADE, 1);
                cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
                cs_set_user_bpammo(id, CSW_AWP, 30);
                cs_set_user_bpammo(id, CSW_DEAGLE, 35);
                ColorChat(id,GREEN,"^3[%s] ^1Ai ales ^4Awp^1+^4Deagle^1+^4Set grenazi^1.",tag);
        }      
        }
        menu_destroy(menu);
        use[id] = true;
        return PLUGIN_HANDLED;  
    }
     
    public Spawn(id)
    {
        if(!is_user_alive(id))
            return;
       
        new CsTeams:team = cs_get_user_team(id)
        if(get_user_flags(id) & VIP_LEVEL_ACCES)
        {
            switch(team)
            {
            case CS_TEAM_T:
            {
                set_user_health(id, get_pcvar_num(cvar_start_hp));
                set_user_armor(id, get_pcvar_num(cvar_start_ap));
                cs_set_user_money(id, cs_get_user_money(id) + get_pcvar_num(cvar_start_money));
            }
            case CS_TEAM_CT:
            {
                set_user_health(id, get_pcvar_num( cvar_start_hp ));
                set_user_armor(id, get_pcvar_num( cvar_start_ap ));
                cs_set_user_money(id, cs_get_user_money(id) + get_pcvar_num(cvar_start_money));
            }
            }
        }
    }
     
    public client_putinserver(id)
    {  
        set_task(2.0, "in", id);
       
        jumpnum[id] = 0;
        dojump[id] = false;
     
        new MapName[32]; get_mapname(MapName, sizeof(MapName));
       
        for (new i = 0; i < sizeof (RMaps); i ++)
        {
            if(equali (MapName, RMaps[i]))
            {
                remove_user_flags (id, read_flags(REMOVE_FLAGS));
            }
        }
    }
     
    public client_disconnect( id )
    {
        set_task(2.0, "out", id);
     
        jumpnum[id] = 0;
        dojump[id] = false;
    }
     
    public client_PreThink( id )
    {
        if(!is_user_alive(id))
            return PLUGIN_CONTINUE;
     
        new BUTON = get_user_button(id)
        new OLDBUTON = get_user_oldbutton(id)
        new JUMP_VIP = get_pcvar_num(cvar_vip_jump)
     
        if((BUTON & IN_JUMP) && !(get_entity_flags(id) & FL_ONGROUND) && !(OLDBUTON & IN_JUMP))
        {
            if(((get_user_flags(id) & VIP_LEVEL_ACCES) && (jumpnum[id] < JUMP_VIP)))
            {
                dojump[id] = true
                jumpnum[id]++
            }
        }
     
        if((BUTON & IN_JUMP) && (get_entity_flags(id) & FL_ONGROUND))
        {
            jumpnum[id] = 0
        }
     
        return PLUGIN_CONTINUE;
    }
     
    public client_PostThink(id)
    {
        if(!is_user_alive(id))
            return PLUGIN_CONTINUE;
     
        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;
    }
     
    public eDeathMsg()
    {
        new id_Killer = read_data(1);
        new VIP_MAXHP = get_pcvar_num(cvar_vip_maxhp);
        new VIP_MAX_HP = get_user_health(id_Killer);
        new VIP_MAXAP = get_pcvar_num(cvar_vip_maxap);
        new VIP_MAX_AP = get_user_armor(id_Killer);
     
        if(is_user_alive(id_Killer))
        {
            if(get_user_flags(id_Killer) & VIP_LEVEL_ACCES )
                {
                    set_user_health(id_Killer, get_user_health(id_Killer) + get_pcvar_num(cvar_hp_kill));
                    set_user_armor(id_Killer, get_user_armor(id_Killer) + get_pcvar_num(cvar_ap_kill));
                }
        }
     
        if(VIP_MAX_HP >= VIP_MAXHP)
        {
                    set_user_health(id_Killer, get_pcvar_num(cvar_vip_maxhp));
            return PLUGIN_HANDLED;
        }
       
        if(VIP_MAX_AP >= VIP_MAXAP)
        {
                    set_user_armor(id_Killer, get_pcvar_num(cvar_vip_maxap));
            return PLUGIN_HANDLED;
        }
     
        return PLUGIN_HANDLED;
    }
     
    public in(id)  
    {
        if(get_pcvar_num(cvar_vip_in_out))
        {
            new tag[32], name[32];
     
            get_pcvar_string(cvar_tag, tag, charsmax(tag));
            get_user_name(id, name, charsmax(name));
     
            if(get_user_flags(id) & VIP_LEVEL_ACCES)  
            {
                ColorChat(0, GREEN, "^3[%s] ^1VIP: ^4%s ^1s-a conectat.", tag, name);
            }
            return PLUGIN_HANDLED;
        }
        return PLUGIN_CONTINUE;
    }
     
    public out(id)  
    {  
        if(get_pcvar_num(cvar_vip_in_out))
        {
            new tag[32], name[32];
     
            get_pcvar_string(cvar_tag, tag, charsmax(tag));
            get_user_name(id, name, charsmax(name));
     
            if(get_user_flags(id) & VIP_LEVEL_ACCES)  
            {
                ColorChat(0, GREEN, "^3[%s] ^1VIP: ^4%s ^1s-a deconectat.", tag, name);
            }
            return PLUGIN_HANDLED;
        }
        return PLUGIN_CONTINUE;
    }
     
    public vip_info(id)
    {
        show_motd(id, "/addons/amxmodx/configs/vip_info.html");
    }
     
    public mesaj_info()
    {
        new tag[32];
        get_pcvar_string(cvar_tag, tag, charsmax(tag));
       
        ColorChat(0, GREEN, "^3[%s] ^1Tastati in chat ^4/vip ^1pentru a vedea beneficiile si pretul vip-ului.", tag);
    }
     
    public TaskDisplayVips( )
    {
        if(get_pcvar_num(cvar_vip_showH))
        {
            static iPlayers[ 32 ];
            static iPlayersNum;
       
            get_players( iPlayers, iPlayersNum, "ch" );
            if( !iPlayersNum )
                return 1;
       
            static iVipsConnected, szVipsNames[ 128 ], szName[ 32 ];
            formatex( szVipsNames, sizeof ( szVipsNames ) -1, "" ); // Is this needed ?
            iVipsConnected = 0;
       
            static id, i;
            for( i = 0; i < iPlayersNum; i++ )
            {
                id = iPlayers[ i ];
                if( get_user_flags( id ) & VIP_LEVEL_ACCES )
                {
                    get_user_name( id, szName, sizeof ( szName ) -1 );
               
                    add( szVipsNames, sizeof ( szVipsNames ) -1, szName );
                    add( szVipsNames, sizeof ( szVipsNames ) -1, "^n" );
               
                    iVipsConnected++;
                }
            }
       
            formatex( g_szMessage, sizeof ( g_szMessage ) -1, "%s ( %i )^n%s",
                g_szBeginning, iVipsConnected, szVipsNames );
           
            set_hudmessage( 25, 255, 25, 0.01, 0.25, 0, 0.0, 1.0, 0.1, 0.1, -1 );
            ShowSyncHudMsg( 0, SyncHudMessage, g_szMessage );
        }
        return PLUGIN_CONTINUE;
           
    }
     
    public handle_say(id)
    {
        new said[192];
        read_args(said,192);
        if(contain(said, "/vips") != -1)
        set_task(0.1,"print_adminlist",id);
        return PLUGIN_CONTINUE;
    }
     
    public print_adminlist(user)
    {
        if(get_pcvar_num(cvar_vip_showC))
        {
            new tag[32];
            get_pcvar_string(cvar_tag, tag, charsmax(tag));
       
            new adminnames[33][32];
            new message[256];
            new id, count, x, len;
     
            for(id = 1 ; id <= get_maxplayers() ; id++)
                if(is_user_connected(id))
                    if(get_user_flags(id) & VIP_LEVEL_ACCES)
                        get_user_name(id, adminnames[count++], charsmax(adminnames[ ]));
       
            len = format(message, 255, "^3[%s] ^1VIP-ii online sunt:^4 " ,tag);
            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, " ");
                    }
                    }
                print_message(user, message);
                }
            else
            {
                ColorChat(0, GREEN, "^3[%s] ^1Nu sunt ^4VIP^1-i online.", tag);
            }
        }
        return PLUGIN_CONTINUE;  
    }
     
    print_message(id, msg[])
    {
        message_begin(MSG_ONE, get_user_msgid("SayText"), {0,0,0}, id);
        write_byte(id);
        write_string(msg);
        message_end();
    }
     
    public MessageScoreAttrib(iMsgID, iDest, iReceiver)
    {
            new iPlayer = get_msg_arg_int(1);
            if(is_user_connected( iPlayer )
            && (get_user_flags( iPlayer ) & VIP_LEVEL_ACCES))
            {
                    set_msg_arg_int(2, ARG_BYTE, is_user_alive(iPlayer) ? SCOREATTRIB_VIP : SCOREATTRIB_DEAD);
                }
    }
    
×
×
  • Create New...