Solved Skin Menu with VIP

Coding Help/Re-API Supported
User avatar
Raheem
Mod Developer
Mod Developer
Posts: 2214
Joined: 7 years ago
Contact:

#11

Post by Raheem » 5 years ago

You should set player models at start of every new round, on user humanized forward.

Here it's:
  • Code: Select all

    #include <zombie_escape>
    #include <ze_vip>
     
     
    #define PLUGIN "Admin Model Menu"
    #define VERSION "1.0"
    #define AUTHOR "Mark"
     
    new const Asasin_Models[][] =
    {
        "models/player/Asasin/Asasin.mdl"
    }
     
    new const Death_Models[][] =
    {
        "models/player/Death/Death.mdl"
    }
     
    new const Dobby_Models[][] =
    {
        "models/player/Dobby/Dobby.mdl"
    }
     
    new const Sonic_Models[][] =
    {
        "models/player/Sonic/Sonic.mdl"
    }
     
    new const Fiftycent_Models[][] =
    {
        "models/player/50cent/50cent.mdl"
    }
     
    new const Joker_Models[][] =
    {
        "models/player/Joker/Joker.mdl"
    }
     
    new const Iron_Models[][] =
    {
        "models/player/Iron/Iron.mdl"
    }
     
    new const DeadSpace2_Models[][] =
    {
        "models/player/DeadSpace2/DeadSpace2.mdl"
    }
     
    new const Trump_Models[][] =
    {
        "models/player/Trump/Trump.mdl"
    }
     
    new const Trollface_Models[][] =
    {
        "models/player/Trollface/Trollface.mdl"
    }
     
    new const Phantom_Models[][] =
    {
        "models/player/Phantom/Phantom.mdl"
    }
     
    new const Pirategirl_Models[][] =
    {
        "models/player/Pirategirl/Pirategirl.mdl"
    }
     
    new const Leo_Models[][] =
    {
        "models/player/leo/leo.mdl"
    }
     
    new const Mike_Models[][] =
    {
        "models/player/mike/mike.mdl"
    }
     
    new const Donatello_Models[][] =
    {
        "models/player/don/don.mdl"
    }
     
    new const Raphael_Models[][] =
    {
        "models/player/raphael/raphael.mdl"
    }
     
    new const Capamerica_Models[][] =
    {
        "models/player/capamerica/capamerica.mdl"
    }
     
    new const Batman_Models[][] =
    {
        "models/player/batman/batman.mdl"
    }
     
    new g_pCvarUseTimes
    new g_iUsedTimes[33]
     
    new bool:g_bAssasin[33], bool:g_bDeath[33], bool:g_bDobby[33], bool:g_bSonic[33],
    bool:g_b50cent[33], bool:g_bJoker[33], bool:g_bIron[33], bool:g_bDeadSpace2[33],
    bool:g_bTrump[33], bool:g_bTrollface[33], bool:g_bPhantom[33], bool:g_bPirategirl[33],
    bool:g_bLeo[33], bool:g_bMike[33],bool:g_bDon[33], bool:g_bRaphael[33], bool:g_bCapamerica[33],
    bool:g_bBatman[33]
     
     
    public plugin_natives()
    {
        register_native("ze_open_hskin_menu", "native_ze_open_hskin_menu", 1)
    }
     
    public plugin_precache()
    {
        new i
     
        for (i = 0; i <= charsmax(Asasin_Models); i++)
            precache_model(Asasin_Models[i])
     
        for (i = 0; i <= charsmax(Death_Models); i++)
            precache_model(Death_Models[i])
     
        for (i = 0; i <= charsmax(Dobby_Models); i++)
            precache_model(Dobby_Models[i])
     
        for (i = 0; i <= charsmax(Sonic_Models); i++)
            precache_model(Sonic_Models[i])
     
        for (i = 0; i <= charsmax(Fiftycent_Models); i++)
            precache_model(Fiftycent_Models[i])
     
        for (i = 0; i <= charsmax(Joker_Models); i++)
            precache_model(Joker_Models[i])
     
        for (i = 0; i <= charsmax(Iron_Models); i++)
            precache_model(Iron_Models[i])
     
        for (i = 0; i <= charsmax(DeadSpace2_Models); i++)
            precache_model(DeadSpace2_Models[i])
     
        for (i = 0; i <= charsmax(Trump_Models); i++)
            precache_model(Trump_Models[i])
     
        for (i = 0; i <= charsmax(Trollface_Models); i++)
            precache_model(Trollface_Models[i])
     
        for (i = 0; i <= charsmax(Phantom_Models); i++)
            precache_model(Phantom_Models[i])
     
        for (i = 0; i <= charsmax(Pirategirl_Models); i++)
            precache_model(Pirategirl_Models[i])
           
        for (i = 0; i <= charsmax(Leo_Models); i++)
            precache_model(Leo_Models[i])
     
        for (i = 0; i <= charsmax(Mike_Models); i++)
            precache_model(Mike_Models[i])
     
        for (i = 0; i <= charsmax(Donatello_Models); i++)
            precache_model(Donatello_Models[i])
     
        for (i = 0; i <= charsmax(Raphael_Models); i++)
            precache_model(Raphael_Models[i])
     
        for (i = 0; i <= charsmax(Capamerica_Models); i++)
            precache_model(Capamerica_Models[i])
     
        for (i = 0; i <= charsmax(Batman_Models); i++)
            precache_model(Batman_Models[i])
    }
     
    public plugin_init()
    {
        register_plugin(PLUGIN, VERSION, AUTHOR)
        g_pCvarUseTimes = register_cvar("ze_hskin_menu_used", "1")
    }
     
    public ze_user_humanized(id)
    {
    	if (g_bAssasin[id])
    	{
    		rg_set_user_model(id, "Asasin")
    	}
    	else if (g_bDeath[id])
    	{
    		rg_set_user_model(id, "Death")
    	}
    	else if (g_bDobby[id])
    	{
    		rg_set_user_model(id, "Dobby")
    	}
    	else if (g_bSonic[id])
    	{
    		rg_set_user_model(id, "Sonic")
    	}
    	else if (g_b50cent[id])
    	{
    		rg_set_user_model(id, "50cent")
    	}
    	else if (g_bJoker[id])
    	{
    		rg_set_user_model(id, "Joker")
    	}
    	else if (g_bIron[id])
    	{
    		rg_set_user_model(id, "Iron")
    	}
    	else if (g_bDeadSpace2[id])
    	{
    		rg_set_user_model(id, "DeadSpace2")
    	}
    	else if (g_bTrump[id])
    	{
    		rg_set_user_model(id, "Trump")
    	}
    	else if (g_bTrollface[id])
    	{
    		rg_set_user_model(id, "Trollface")
    	}
    	else if (g_bPhantom[id])
    	{
    		rg_set_user_model(id, "Phantom")
    	}
    	else if (g_bPirategirl[id])
    	{
    		rg_set_user_model(id, "Pirategirl")
    	}
    	else if (g_bLeo[id])
    	{
    		rg_set_user_model(id, "leo")
    	}
    	else if (g_bMike[id])
    	{
    		rg_set_user_model(id, "mike")
    	}
    	else if (g_bDon[id])
    	{
    		rg_set_user_model(id, "don")
    	}
    	else if (g_bRaphael[id])
    	{
    		rg_set_user_model(id, "raphael")
    	}
    	else if (g_bCapamerica[id])
    	{
    		rg_set_user_model(id, "capamerica")
    	}
    	else if (g_bBatman[id])
    	{
    		rg_set_user_model(id, "batman")
    	}
    	
        g_iUsedTimes[id] = 0
    }
     
    public ze_user_infected(Victim)
    {
        g_bAssasin[Victim] = false
        g_bDeath[Victim] = false
        g_bDobby[Victim] = false
        g_bSonic[Victim] = false
        g_b50cent[Victim] = false
        g_bJoker[Victim] = false
        g_bIron[Victim] = false
        g_bDeadSpace2[Victim] = false
        g_bTrump[Victim] = false
        g_bTrollface[Victim] = false
        g_bPhantom[Victim] = false
        g_bPirategirl[Victim] = false
        g_bLeo[Victim] = false
        g_bMike[Victim] = false
        g_bDon[Victim] = false
        g_bRaphael[Victim] = false
        g_bCapamerica[Victim] = false
        g_bBatman[Victim] = false
        g_iUsedTimes[Victim] = 0
    }
     
    public client_putinserver(id)
    {
        g_bAssasin[id] = false
        g_bDeath[id] = false
        g_bDobby[id] = false
        g_bSonic[id] = false
        g_b50cent[id] = false
        g_bJoker[id] = false
        g_bIron[id] = false
        g_bDeadSpace2[id] = false
        g_bTrump[id] = false
        g_bTrollface[id] = false
        g_bPhantom[id] = false
        g_bPirategirl[id] = false
        g_bLeo[id] = false
        g_bMike[id] = false
        g_bDon[id] = false
        g_bRaphael[id] = false
        g_bCapamerica[id] = false
        g_bBatman[id] = false
        g_iUsedTimes[id] = 0
    }
     
    public client_disconnected(id)
    {
        g_bAssasin[id] = false
        g_bDeath[id] = false
        g_bDobby[id] = false
        g_bSonic[id] = false
        g_b50cent[id] = false
        g_bJoker[id] = false
        g_bIron[id] = false
        g_bDeadSpace2[id] = false
        g_bTrump[id] = false
        g_bTrollface[id] = false
        g_bPhantom[id] = false
        g_bPirategirl[id] = false
        g_bLeo[id] = false
        g_bMike[id] = false
        g_bDon[id] = false
        g_bRaphael[id] = false
        g_bCapamerica[id] = false
        g_bBatman[id] = false
        g_iUsedTimes[id] = 0
    }
     
    public Show_Hmodel_Menu(id)
    {
        if (!is_user_connected(id))
        {
            return PLUGIN_CONTINUE
        }
    	
        if (ze_is_user_zombie(id))
        {
            ze_colored_print(id, "!tYou can't change your skin while zombie!y.")
            return PLUGIN_HANDLED
        }
    	
        if (g_iUsedTimes[id] >= get_pcvar_num(g_pCvarUseTimes))
        {
            ze_colored_print(id, "!tMaximum have been reached !y[!g%d!y]!", get_pcvar_num(g_pCvarUseTimes))
            return PLUGIN_HANDLED
        }
    	
        if (!is_user_alive(id))
        {
            ze_colored_print(id, "!tDead can't open knife menu!y.")
            return PLUGIN_HANDLED
        }
    	
        Hmodel_Menu(id)
        return PLUGIN_CONTINUE
    }
     
    public Hmodel_Menu(id)
    {
        new hmenu = menu_create("\r[\wHuman Models\r]\r", "menu_hskins")
        menu_additem(hmenu, "\wAssasin", "", 0)
        menu_additem(hmenu, "\wDeath", "", 0)
        menu_additem(hmenu, "\wDobby", "", 0)
        menu_additem(hmenu, "\wSonic", "", 0)
        menu_additem(hmenu, "\w50cent", "", 0)
        menu_additem(hmenu, "\wJoker", "", 0)
        menu_additem(hmenu, "\wIronMan", "", 0)
        menu_additem(hmenu, "\wDead Space", "", 0)
     
        if (ze_get_vip_flags(id) & VIP_D)
        {
            menu_additem(hmenu, "\wTrump \r[VIP]", "", 0)
            menu_additem(hmenu, "\wTrollFace \r[VIP]", "", 0)
            menu_additem(hmenu, "\wPhantom \r[VIP]", "", 0)
            menu_additem(hmenu, "\wPirategirl \r[VIP]", "", 0)
        }
     
        if (ze_get_vip_flags(id) & VIP_E)
        {
            menu_additem(hmenu, "\wLeo \r[VIP]", "", 0)
            menu_additem(hmenu, "\wMike \r[VIP]", "", 0)
            menu_additem(hmenu, "\wDon \r[VIP]", "", 0)
            menu_additem(hmenu, "\wRaphael \r[VIP]", "", 0)
            menu_additem(hmenu, "\wCaptain America \r[VIP]", "", 0)
            menu_additem(hmenu, "\wBatman \r[VIP]", "", 0)
        }
     
        menu_setprop(hmenu, MPROP_EXIT, MEXIT_ALL)
        menu_display(id, hmenu, 0)
    }
     
    public menu_hskins(id, hmenu, item)
    {
        if(!is_user_alive(id) || ze_is_user_zombie(id))
            return PLUGIN_HANDLED
     
        switch(item)
        {
            case 0 : // Assassin
            {
                g_bAssasin[id] = true
                g_bDeath[id] = false
                g_bDobby[id] = false
                g_bSonic[id] = false
                g_b50cent[id] = false
                g_bJoker[id] = false
                g_bIron[id] = false
                g_bDeadSpace2[id] = false
                g_bTrump[id] = false
                g_bTrollface[id] = false
                g_bPhantom[id] = false
                g_bPirategirl[id] = false
                g_bLeo[id] = false
                g_bMike[id] = false
                g_bDon[id] = false
                g_bRaphael[id] = false
                g_bCapamerica[id] = false
                g_bBatman[id] = false
                rg_set_user_model(id, "Asasin")
                ze_colored_print(id, "You picked the Assassin skin", id)
                g_iUsedTimes[id]++
            }
            case 1 : // Death
            {
                g_bAssasin[id] = false
                g_bDeath[id] = true
                g_bDobby[id] = false
                g_bSonic[id] = false
                g_b50cent[id] = false
                g_bJoker[id] = false
                g_bIron[id] = false
                g_bDeadSpace2[id] = false
                g_bTrump[id] = false
                g_bTrollface[id] = false
                g_bPhantom[id] = false
                g_bPirategirl[id] = false
                g_bLeo[id] = false
                g_bMike[id] = false
                g_bDon[id] = false
                g_bRaphael[id] = false
                g_bCapamerica[id] = false
                g_bBatman[id] = false
                rg_set_user_model(id, "Death")
                ze_colored_print(id, "You picked the Death skin", id)
                g_iUsedTimes[id]++
            }
            case 2 : // Dobby
            {
                g_bAssasin[id] = false
                g_bDeath[id] = false
                g_bDobby[id] = true
                g_bSonic[id] = false
                g_b50cent[id] = false
                g_bJoker[id] = false
                g_bIron[id] = false
                g_bDeadSpace2[id] = false
                g_bTrump[id] = false
                g_bTrollface[id] = false
                g_bPhantom[id] = false
                g_bPirategirl[id] = false
                g_bLeo[id] = false
                g_bMike[id] = false
                g_bDon[id] = false
                g_bRaphael[id] = false
                g_bCapamerica[id] = false
                g_bBatman[id] = false
                rg_set_user_model(id, "Dobby")
                ze_colored_print(id, "You picked the Dobby skin", id)
                g_iUsedTimes[id]++
            }
            case 3 : // Sonic
            {
                g_bAssasin[id] = false
                g_bDeath[id] = false
                g_bDobby[id] = false
                g_bSonic[id] = true
                g_b50cent[id] = false
                g_bJoker[id] = false
                g_bIron[id] = false
                g_bDeadSpace2[id] = false
                g_bTrump[id] = false
                g_bTrollface[id] = false
                g_bPhantom[id] = false
                g_bPirategirl[id] = false
                g_bLeo[id] = false
                g_bMike[id] = false
                g_bDon[id] = false
                g_bRaphael[id] = false
                g_bCapamerica[id] = false
                g_bBatman[id] = false
                rg_set_user_model(id, "Sonic")
                ze_colored_print(id, "You picked the Sonic skin", id)
                g_iUsedTimes[id]++
            }
            case 4 : // 50cent
            {
                g_bAssasin[id] = false
                g_bDeath[id] = false
                g_bDobby[id] = false
                g_bSonic[id] = false
                g_b50cent[id] = true
                g_bJoker[id] = false
                g_bIron[id] = false
                g_bDeadSpace2[id] = false
                g_bTrump[id] = false
                g_bTrollface[id] = false
                g_bPhantom[id] = false
                g_bPirategirl[id] = false
                g_bLeo[id] = false
                g_bMike[id] = false
                g_bDon[id] = false
                g_bRaphael[id] = false
                g_bCapamerica[id] = false
                g_bBatman[id] = false
                rg_set_user_model(id, "50cent")
                ze_colored_print(id, "You picked the 50cent skin", id)
                g_iUsedTimes[id]++
            }
            case 5 : // Joker
            {
                g_bAssasin[id] = false
                g_bDeath[id] = false
                g_bDobby[id] = false
                g_bSonic[id] = false
                g_b50cent[id] = false
                g_bJoker[id] = true
                g_bIron[id] = false
                g_bDeadSpace2[id] = false
                g_bTrump[id] = false
                g_bTrollface[id] = false
                g_bPhantom[id] = false
                g_bPirategirl[id] = false
                g_bLeo[id] = false
                g_bMike[id] = false
                g_bDon[id] = false
                g_bRaphael[id] = false
                g_bCapamerica[id] = false
                g_bBatman[id] = false
                rg_set_user_model(id, "Joker")
                ze_colored_print(id, "You picked the Joker skin", id)
                g_iUsedTimes[id]++
            }
            case 6 : //Iron
            {
                g_bAssasin[id] = false
                g_bDeath[id] = false
                g_bDobby[id] = false
                g_bSonic[id] = false
                g_b50cent[id] = false
                g_bJoker[id] = false
                g_bIron[id] = true
                g_bDeadSpace2[id] = false
                g_bTrump[id] = false
                g_bTrollface[id] = false
                g_bPhantom[id] = false
                g_bPirategirl[id] = false
                g_bLeo[id] = false
                g_bMike[id] = false
                g_bDon[id] = false
                g_bRaphael[id] = false
                g_bCapamerica[id] = false
                g_bBatman[id] = false
                rg_set_user_model(id, "Iron")
                ze_colored_print(id, "You picked the Iron Man skin", id)
                g_iUsedTimes[id]++
            }
            case 7 : // DeadSpace2
            {
                g_bAssasin[id] = false
                g_bDeath[id] = false
                g_bDobby[id] = false
                g_bSonic[id] = false
                g_b50cent[id] = false
                g_bJoker[id] = false
                g_bIron[id] = false
                g_bDeadSpace2[id] = true
                g_bTrump[id] = false
                g_bTrollface[id] = false
                g_bPhantom[id] = false
                g_bPirategirl[id] = false
                g_bLeo[id] = false
                g_bMike[id] = false
                g_bDon[id] = false
                g_bRaphael[id] = false
                g_bCapamerica[id] = false
                g_bBatman[id] = false
                rg_set_user_model(id, "DeadSpace2")
                ze_colored_print(id, "You picked the Dead Space skin", id)
                g_iUsedTimes[id]++
            }
            case 8 : // Trump
            {      
                if (ze_get_vip_flags(id) & VIP_D)
                {
                    g_bAssasin[id] = false
                    g_bDeath[id] = false
                    g_bDobby[id] = false
                    g_bSonic[id] = false
                    g_b50cent[id] = false
                    g_bJoker[id] = false
                    g_bIron[id] = false
                    g_bDeadSpace2[id] = false
                    g_bTrump[id] = true
                    g_bTrollface[id] = false
                    g_bPhantom[id] = false
                    g_bPirategirl[id] = false
                    g_bLeo[id] = false
                    g_bMike[id] = false
                    g_bDon[id] = false
                    g_bRaphael[id] = false
                    g_bCapamerica[id] = false
                    g_bBatman[id] = false
                    rg_set_user_model(id, "Trump")
                    ze_colored_print(id, "You picked the Trump skin", id)
                    g_iUsedTimes[id]++
                }            
            }
            case 9 : // Trollface
            {
                if (ze_get_vip_flags(id) & VIP_D)
                {
                    g_bAssasin[id] = false
                    g_bDeath[id] = false
                    g_bDobby[id] = false
                    g_bSonic[id] = false
                    g_b50cent[id] = false
                    g_bJoker[id] = false
                    g_bIron[id] = false
                    g_bDeadSpace2[id] = false
                    g_bTrump[id] = false
                    g_bTrollface[id] = true
                    g_bPhantom[id] = false
                    g_bPirategirl[id] = false
                    g_bLeo[id] = false
                    g_bMike[id] = false
                    g_bDon[id] = false
                    g_bRaphael[id] = false
                    g_bCapamerica[id] = false
                    g_bBatman[id] = false
                    rg_set_user_model(id, "Trollface")
                    ze_colored_print(id, "You picked the Trollface skin", id)
                    g_iUsedTimes[id]++
                }              
            }
            case 10 : // Phantom
            {
                if (ze_get_vip_flags(id) & VIP_D)
                {
                    g_bAssasin[id] = false
                    g_bDeath[id] = false
                    g_bDobby[id] = false
                    g_bSonic[id] = false
                    g_b50cent[id] = false
                    g_bJoker[id] = false
                    g_bIron[id] = false
                    g_bDeadSpace2[id] = false
                    g_bTrump[id] = false
                    g_bTrollface[id] = false
                    g_bPhantom[id] = true
                    g_bPirategirl[id] = false
                    g_bLeo[id] = false
                    g_bMike[id] = false
                    g_bDon[id] = false
                    g_bRaphael[id] = false
                    g_bCapamerica[id] = false
                    g_bBatman[id] = false
                    rg_set_user_model(id, "Phantom")
                    ze_colored_print(id, "You picked the Phantom skin", id)
                    g_iUsedTimes[id]++
                }            
            }
            case 11 : // Pirategirl
            {
                if (ze_get_vip_flags(id) & VIP_D)
                {
                    g_bAssasin[id] = false
                    g_bDeath[id] = false
                    g_bDobby[id] = false
                    g_bSonic[id] = false
                    g_b50cent[id] = false
                    g_bJoker[id] = false
                    g_bIron[id] = false
                    g_bDeadSpace2[id] = false
                    g_bTrump[id] = false
                    g_bTrollface[id] = false
                    g_bPhantom[id] = false
                    g_bPirategirl[id] = true
                    g_bLeo[id] = false
                    g_bMike[id] = false
                    g_bDon[id] = false
                    g_bRaphael[id] = false
                    g_bCapamerica[id] = false
                    g_bBatman[id] = false
                    rg_set_user_model(id, "Pirategirl")
                    ze_colored_print(id, "You picked the Pirategirl skin", id)
                    g_iUsedTimes[id]++
                }                      
            }
            case 12 : //Leonardo
            {
                if (ze_get_vip_flags(id) & VIP_E)
                {
                    g_bAssasin[id] = false
                    g_bDeath[id] = false
                    g_bDobby[id] = false
                    g_bSonic[id] = false
                    g_b50cent[id] = false
                    g_bJoker[id] = false
                    g_bIron[id] = false
                    g_bDeadSpace2[id] = false
                    g_bTrump[id] = false
                    g_bTrollface[id] = false
                    g_bPhantom[id] = false
                    g_bPirategirl[id] = false
                    g_bLeo[id] = true
                    g_bMike[id] = false
                    g_bDon[id] = false
                    g_bRaphael[id] = false
                    g_bCapamerica[id] = false
                    g_bBatman[id] = false
                    rg_set_user_model(id, "leo")
                    ze_colored_print(id, "You picked the Leonardo skin", id)
                    g_iUsedTimes[id]++
                }              
            }
            case 13 : // Michelangelo
            {
                if (ze_get_vip_flags(id) & VIP_E)
                {
                    g_bAssasin[id] = false
                    g_bDeath[id] = false
                    g_bDobby[id] = false
                    g_bSonic[id] = false
                    g_b50cent[id] = false
                    g_bJoker[id] = false
                    g_bIron[id] = false
                    g_bDeadSpace2[id] = false
                    g_bTrump[id] = false
                    g_bTrollface[id] = false
                    g_bPhantom[id] = false
                    g_bPirategirl[id] = false
                    g_bLeo[id] = false
                    g_bMike[id] = true
                    g_bDon[id] = false
                    g_bRaphael[id] = false
                    g_bCapamerica[id] = false
                    g_bBatman[id] = false
                    rg_set_user_model(id, "mike")
                    ze_colored_print(id, "You picked the Michelangelo skin", id)
                    g_iUsedTimes[id]++
                }      
            }
            case 14 : // Donatello
            {
                if (ze_get_vip_flags(id) & VIP_E)
                {
                    g_bAssasin[id] = false
                    g_bDeath[id] = false
                    g_bDobby[id] = false
                    g_bSonic[id] = false
                    g_b50cent[id] = false
                    g_bJoker[id] = false
                    g_bIron[id] = false
                    g_bDeadSpace2[id] = false
                    g_bTrump[id] = false
                    g_bTrollface[id] = false
                    g_bPhantom[id] = false
                    g_bPirategirl[id] = false
                    g_bLeo[id] = false
                    g_bMike[id] = false
                    g_bDon[id] = true
                    g_bRaphael[id] = false
                    g_bCapamerica[id] = false
                    g_bBatman[id] = false
                    rg_set_user_model(id, "don")
                    ze_colored_print(id, "You picked the Donatello skin", id)
                    g_iUsedTimes[id]++
                }            
            }
            case 15 : // Raphael
            {
                if (ze_get_vip_flags(id) & VIP_E)
                {
                    g_bAssasin[id] = false
                    g_bDeath[id] = false
                    g_bDobby[id] = false
                    g_bSonic[id] = false
                    g_b50cent[id] = false
                    g_bJoker[id] = false
                    g_bIron[id] = false
                    g_bDeadSpace2[id] = false
                    g_bTrump[id] = false
                    g_bTrollface[id] = false
                    g_bPhantom[id] = false
                    g_bPirategirl[id] = false
                    g_bLeo[id] = false
                    g_bMike[id] = false
                    g_bDon[id] = false
                    g_bRaphael[id] = true
                    g_bCapamerica[id] = false
                    g_bBatman[id] = false
                    rg_set_user_model(id, "raphael")
                    ze_colored_print(id, "You picked the Raphael skin", id)
                    g_iUsedTimes[id]++
                }              
            }
            case 16 : // Captian America
            {
                if (ze_get_vip_flags(id) & VIP_E)
                {
                    g_bAssasin[id] = false
                    g_bDeath[id] = false
                    g_bDobby[id] = false
                    g_bSonic[id] = false
                    g_b50cent[id] = false
                    g_bJoker[id] = false
                    g_bIron[id] = false
                    g_bDeadSpace2[id] = false
                    g_bTrump[id] = false
                    g_bTrollface[id] = false
                    g_bPhantom[id] = false
                    g_bPirategirl[id] = false
                    g_bLeo[id] = false
                    g_bMike[id] = false
                    g_bDon[id] = false
                    g_bRaphael[id] = false
                    g_bCapamerica[id] = true
                    g_bBatman[id] = false
                    rg_set_user_model(id, "capamerica")
                    ze_colored_print(id, "You picked the Captian America skin", id)
                    g_iUsedTimes[id]++
                }          
            }
            case 17 : // Batman
            {
                if (ze_get_vip_flags(id) & VIP_E)
                {
                    g_bAssasin[id] = false
                    g_bDeath[id] = false
                    g_bDobby[id] = false
                    g_bSonic[id] = false
                    g_b50cent[id] = false
                    g_bJoker[id] = false
                    g_bIron[id] = false
                    g_bDeadSpace2[id] = false
                    g_bTrump[id] = false
                    g_bTrollface[id] = false
                    g_bPhantom[id] = false
                    g_bPirategirl[id] = false
                    g_bLeo[id] = false
                    g_bMike[id] = false
                    g_bDon[id] = false
                    g_bRaphael[id] = false
                    g_bCapamerica[id] = false
                    g_bBatman[id] = true
                    rg_set_user_model(id, "batman")
                    ze_colored_print(id, "You picked the Batman skin", id)
                    g_iUsedTimes[id]++
                }            
            }
     
        }    
        menu_destroy(hmenu)
        return PLUGIN_HANDLED
    }
     
    public native_ze_open_hskin_menu(id)
    {
        Show_Hmodel_Menu(id)
    }
Also make sure to place plugin name at the end of plugins-zombie_escape.ini
I removed useless includes and used reapi function for setting models.
He who fails to plan is planning to fail

User avatar
Mark
VIP
VIP
United States of America
Posts: 283
Joined: 5 years ago
Location: Des Moines/USA
Contact:

#12

Post by Mark » 5 years ago

Raheem wrote: 5 years ago You should set player models at start of every new round, on user humanized forward.

Here it's:
  • Code: Select all

    #include <zombie_escape>
    #include <ze_vip>
     
     
    #define PLUGIN "Admin Model Menu"
    #define VERSION "1.0"
    #define AUTHOR "Mark"
     
    new const Asasin_Models[][] =
    {
        "models/player/Asasin/Asasin.mdl"
    }
     
    new const Death_Models[][] =
    {
        "models/player/Death/Death.mdl"
    }
     
    new const Dobby_Models[][] =
    {
        "models/player/Dobby/Dobby.mdl"
    }
     
    new const Sonic_Models[][] =
    {
        "models/player/Sonic/Sonic.mdl"
    }
     
    new const Fiftycent_Models[][] =
    {
        "models/player/50cent/50cent.mdl"
    }
     
    new const Joker_Models[][] =
    {
        "models/player/Joker/Joker.mdl"
    }
     
    new const Iron_Models[][] =
    {
        "models/player/Iron/Iron.mdl"
    }
     
    new const DeadSpace2_Models[][] =
    {
        "models/player/DeadSpace2/DeadSpace2.mdl"
    }
     
    new const Trump_Models[][] =
    {
        "models/player/Trump/Trump.mdl"
    }
     
    new const Trollface_Models[][] =
    {
        "models/player/Trollface/Trollface.mdl"
    }
     
    new const Phantom_Models[][] =
    {
        "models/player/Phantom/Phantom.mdl"
    }
     
    new const Pirategirl_Models[][] =
    {
        "models/player/Pirategirl/Pirategirl.mdl"
    }
     
    new const Leo_Models[][] =
    {
        "models/player/leo/leo.mdl"
    }
     
    new const Mike_Models[][] =
    {
        "models/player/mike/mike.mdl"
    }
     
    new const Donatello_Models[][] =
    {
        "models/player/don/don.mdl"
    }
     
    new const Raphael_Models[][] =
    {
        "models/player/raphael/raphael.mdl"
    }
     
    new const Capamerica_Models[][] =
    {
        "models/player/capamerica/capamerica.mdl"
    }
     
    new const Batman_Models[][] =
    {
        "models/player/batman/batman.mdl"
    }
     
    new g_pCvarUseTimes
    new g_iUsedTimes[33]
     
    new bool:g_bAssasin[33], bool:g_bDeath[33], bool:g_bDobby[33], bool:g_bSonic[33],
    bool:g_b50cent[33], bool:g_bJoker[33], bool:g_bIron[33], bool:g_bDeadSpace2[33],
    bool:g_bTrump[33], bool:g_bTrollface[33], bool:g_bPhantom[33], bool:g_bPirategirl[33],
    bool:g_bLeo[33], bool:g_bMike[33],bool:g_bDon[33], bool:g_bRaphael[33], bool:g_bCapamerica[33],
    bool:g_bBatman[33]
     
     
    public plugin_natives()
    {
        register_native("ze_open_hskin_menu", "native_ze_open_hskin_menu", 1)
    }
     
    public plugin_precache()
    {
        new i
     
        for (i = 0; i <= charsmax(Asasin_Models); i++)
            precache_model(Asasin_Models[i])
     
        for (i = 0; i <= charsmax(Death_Models); i++)
            precache_model(Death_Models[i])
     
        for (i = 0; i <= charsmax(Dobby_Models); i++)
            precache_model(Dobby_Models[i])
     
        for (i = 0; i <= charsmax(Sonic_Models); i++)
            precache_model(Sonic_Models[i])
     
        for (i = 0; i <= charsmax(Fiftycent_Models); i++)
            precache_model(Fiftycent_Models[i])
     
        for (i = 0; i <= charsmax(Joker_Models); i++)
            precache_model(Joker_Models[i])
     
        for (i = 0; i <= charsmax(Iron_Models); i++)
            precache_model(Iron_Models[i])
     
        for (i = 0; i <= charsmax(DeadSpace2_Models); i++)
            precache_model(DeadSpace2_Models[i])
     
        for (i = 0; i <= charsmax(Trump_Models); i++)
            precache_model(Trump_Models[i])
     
        for (i = 0; i <= charsmax(Trollface_Models); i++)
            precache_model(Trollface_Models[i])
     
        for (i = 0; i <= charsmax(Phantom_Models); i++)
            precache_model(Phantom_Models[i])
     
        for (i = 0; i <= charsmax(Pirategirl_Models); i++)
            precache_model(Pirategirl_Models[i])
           
        for (i = 0; i <= charsmax(Leo_Models); i++)
            precache_model(Leo_Models[i])
     
        for (i = 0; i <= charsmax(Mike_Models); i++)
            precache_model(Mike_Models[i])
     
        for (i = 0; i <= charsmax(Donatello_Models); i++)
            precache_model(Donatello_Models[i])
     
        for (i = 0; i <= charsmax(Raphael_Models); i++)
            precache_model(Raphael_Models[i])
     
        for (i = 0; i <= charsmax(Capamerica_Models); i++)
            precache_model(Capamerica_Models[i])
     
        for (i = 0; i <= charsmax(Batman_Models); i++)
            precache_model(Batman_Models[i])
    }
     
    public plugin_init()
    {
        register_plugin(PLUGIN, VERSION, AUTHOR)
        g_pCvarUseTimes = register_cvar("ze_hskin_menu_used", "1")
    }
     
    public ze_user_humanized(id)
    {
    	if (g_bAssasin[id])
    	{
    		rg_set_user_model(id, "Asasin")
    	}
    	else if (g_bDeath[id])
    	{
    		rg_set_user_model(id, "Death")
    	}
    	else if (g_bDobby[id])
    	{
    		rg_set_user_model(id, "Dobby")
    	}
    	else if (g_bSonic[id])
    	{
    		rg_set_user_model(id, "Sonic")
    	}
    	else if (g_b50cent[id])
    	{
    		rg_set_user_model(id, "50cent")
    	}
    	else if (g_bJoker[id])
    	{
    		rg_set_user_model(id, "Joker")
    	}
    	else if (g_bIron[id])
    	{
    		rg_set_user_model(id, "Iron")
    	}
    	else if (g_bDeadSpace2[id])
    	{
    		rg_set_user_model(id, "DeadSpace2")
    	}
    	else if (g_bTrump[id])
    	{
    		rg_set_user_model(id, "Trump")
    	}
    	else if (g_bTrollface[id])
    	{
    		rg_set_user_model(id, "Trollface")
    	}
    	else if (g_bPhantom[id])
    	{
    		rg_set_user_model(id, "Phantom")
    	}
    	else if (g_bPirategirl[id])
    	{
    		rg_set_user_model(id, "Pirategirl")
    	}
    	else if (g_bLeo[id])
    	{
    		rg_set_user_model(id, "leo")
    	}
    	else if (g_bMike[id])
    	{
    		rg_set_user_model(id, "mike")
    	}
    	else if (g_bDon[id])
    	{
    		rg_set_user_model(id, "don")
    	}
    	else if (g_bRaphael[id])
    	{
    		rg_set_user_model(id, "raphael")
    	}
    	else if (g_bCapamerica[id])
    	{
    		rg_set_user_model(id, "capamerica")
    	}
    	else if (g_bBatman[id])
    	{
    		rg_set_user_model(id, "batman")
    	}
    	
        g_iUsedTimes[id] = 0
    }
     
    public ze_user_infected(Victim)
    {
        g_bAssasin[Victim] = false
        g_bDeath[Victim] = false
        g_bDobby[Victim] = false
        g_bSonic[Victim] = false
        g_b50cent[Victim] = false
        g_bJoker[Victim] = false
        g_bIron[Victim] = false
        g_bDeadSpace2[Victim] = false
        g_bTrump[Victim] = false
        g_bTrollface[Victim] = false
        g_bPhantom[Victim] = false
        g_bPirategirl[Victim] = false
        g_bLeo[Victim] = false
        g_bMike[Victim] = false
        g_bDon[Victim] = false
        g_bRaphael[Victim] = false
        g_bCapamerica[Victim] = false
        g_bBatman[Victim] = false
        g_iUsedTimes[Victim] = 0
    }
     
    public client_putinserver(id)
    {
        g_bAssasin[id] = false
        g_bDeath[id] = false
        g_bDobby[id] = false
        g_bSonic[id] = false
        g_b50cent[id] = false
        g_bJoker[id] = false
        g_bIron[id] = false
        g_bDeadSpace2[id] = false
        g_bTrump[id] = false
        g_bTrollface[id] = false
        g_bPhantom[id] = false
        g_bPirategirl[id] = false
        g_bLeo[id] = false
        g_bMike[id] = false
        g_bDon[id] = false
        g_bRaphael[id] = false
        g_bCapamerica[id] = false
        g_bBatman[id] = false
        g_iUsedTimes[id] = 0
    }
     
    public client_disconnected(id)
    {
        g_bAssasin[id] = false
        g_bDeath[id] = false
        g_bDobby[id] = false
        g_bSonic[id] = false
        g_b50cent[id] = false
        g_bJoker[id] = false
        g_bIron[id] = false
        g_bDeadSpace2[id] = false
        g_bTrump[id] = false
        g_bTrollface[id] = false
        g_bPhantom[id] = false
        g_bPirategirl[id] = false
        g_bLeo[id] = false
        g_bMike[id] = false
        g_bDon[id] = false
        g_bRaphael[id] = false
        g_bCapamerica[id] = false
        g_bBatman[id] = false
        g_iUsedTimes[id] = 0
    }
     
    public Show_Hmodel_Menu(id)
    {
        if (!is_user_connected(id))
        {
            return PLUGIN_CONTINUE
        }
    	
        if (ze_is_user_zombie(id))
        {
            ze_colored_print(id, "!tYou can't change your skin while zombie!y.")
            return PLUGIN_HANDLED
        }
    	
        if (g_iUsedTimes[id] >= get_pcvar_num(g_pCvarUseTimes))
        {
            ze_colored_print(id, "!tMaximum have been reached !y[!g%d!y]!", get_pcvar_num(g_pCvarUseTimes))
            return PLUGIN_HANDLED
        }
    	
        if (!is_user_alive(id))
        {
            ze_colored_print(id, "!tDead can't open knife menu!y.")
            return PLUGIN_HANDLED
        }
    	
        Hmodel_Menu(id)
        return PLUGIN_CONTINUE
    }
     
    public Hmodel_Menu(id)
    {
        new hmenu = menu_create("\r[\wHuman Models\r]\r", "menu_hskins")
        menu_additem(hmenu, "\wAssasin", "", 0)
        menu_additem(hmenu, "\wDeath", "", 0)
        menu_additem(hmenu, "\wDobby", "", 0)
        menu_additem(hmenu, "\wSonic", "", 0)
        menu_additem(hmenu, "\w50cent", "", 0)
        menu_additem(hmenu, "\wJoker", "", 0)
        menu_additem(hmenu, "\wIronMan", "", 0)
        menu_additem(hmenu, "\wDead Space", "", 0)
     
        if (ze_get_vip_flags(id) & VIP_D)
        {
            menu_additem(hmenu, "\wTrump \r[VIP]", "", 0)
            menu_additem(hmenu, "\wTrollFace \r[VIP]", "", 0)
            menu_additem(hmenu, "\wPhantom \r[VIP]", "", 0)
            menu_additem(hmenu, "\wPirategirl \r[VIP]", "", 0)
        }
     
        if (ze_get_vip_flags(id) & VIP_E)
        {
            menu_additem(hmenu, "\wLeo \r[VIP]", "", 0)
            menu_additem(hmenu, "\wMike \r[VIP]", "", 0)
            menu_additem(hmenu, "\wDon \r[VIP]", "", 0)
            menu_additem(hmenu, "\wRaphael \r[VIP]", "", 0)
            menu_additem(hmenu, "\wCaptain America \r[VIP]", "", 0)
            menu_additem(hmenu, "\wBatman \r[VIP]", "", 0)
        }
     
        menu_setprop(hmenu, MPROP_EXIT, MEXIT_ALL)
        menu_display(id, hmenu, 0)
    }
     
    public menu_hskins(id, hmenu, item)
    {
        if(!is_user_alive(id) || ze_is_user_zombie(id))
            return PLUGIN_HANDLED
     
        switch(item)
        {
            case 0 : // Assassin
            {
                g_bAssasin[id] = true
                g_bDeath[id] = false
                g_bDobby[id] = false
                g_bSonic[id] = false
                g_b50cent[id] = false
                g_bJoker[id] = false
                g_bIron[id] = false
                g_bDeadSpace2[id] = false
                g_bTrump[id] = false
                g_bTrollface[id] = false
                g_bPhantom[id] = false
                g_bPirategirl[id] = false
                g_bLeo[id] = false
                g_bMike[id] = false
                g_bDon[id] = false
                g_bRaphael[id] = false
                g_bCapamerica[id] = false
                g_bBatman[id] = false
                rg_set_user_model(id, "Asasin")
                ze_colored_print(id, "You picked the Assassin skin", id)
                g_iUsedTimes[id]++
            }
            case 1 : // Death
            {
                g_bAssasin[id] = false
                g_bDeath[id] = true
                g_bDobby[id] = false
                g_bSonic[id] = false
                g_b50cent[id] = false
                g_bJoker[id] = false
                g_bIron[id] = false
                g_bDeadSpace2[id] = false
                g_bTrump[id] = false
                g_bTrollface[id] = false
                g_bPhantom[id] = false
                g_bPirategirl[id] = false
                g_bLeo[id] = false
                g_bMike[id] = false
                g_bDon[id] = false
                g_bRaphael[id] = false
                g_bCapamerica[id] = false
                g_bBatman[id] = false
                rg_set_user_model(id, "Death")
                ze_colored_print(id, "You picked the Death skin", id)
                g_iUsedTimes[id]++
            }
            case 2 : // Dobby
            {
                g_bAssasin[id] = false
                g_bDeath[id] = false
                g_bDobby[id] = true
                g_bSonic[id] = false
                g_b50cent[id] = false
                g_bJoker[id] = false
                g_bIron[id] = false
                g_bDeadSpace2[id] = false
                g_bTrump[id] = false
                g_bTrollface[id] = false
                g_bPhantom[id] = false
                g_bPirategirl[id] = false
                g_bLeo[id] = false
                g_bMike[id] = false
                g_bDon[id] = false
                g_bRaphael[id] = false
                g_bCapamerica[id] = false
                g_bBatman[id] = false
                rg_set_user_model(id, "Dobby")
                ze_colored_print(id, "You picked the Dobby skin", id)
                g_iUsedTimes[id]++
            }
            case 3 : // Sonic
            {
                g_bAssasin[id] = false
                g_bDeath[id] = false
                g_bDobby[id] = false
                g_bSonic[id] = true
                g_b50cent[id] = false
                g_bJoker[id] = false
                g_bIron[id] = false
                g_bDeadSpace2[id] = false
                g_bTrump[id] = false
                g_bTrollface[id] = false
                g_bPhantom[id] = false
                g_bPirategirl[id] = false
                g_bLeo[id] = false
                g_bMike[id] = false
                g_bDon[id] = false
                g_bRaphael[id] = false
                g_bCapamerica[id] = false
                g_bBatman[id] = false
                rg_set_user_model(id, "Sonic")
                ze_colored_print(id, "You picked the Sonic skin", id)
                g_iUsedTimes[id]++
            }
            case 4 : // 50cent
            {
                g_bAssasin[id] = false
                g_bDeath[id] = false
                g_bDobby[id] = false
                g_bSonic[id] = false
                g_b50cent[id] = true
                g_bJoker[id] = false
                g_bIron[id] = false
                g_bDeadSpace2[id] = false
                g_bTrump[id] = false
                g_bTrollface[id] = false
                g_bPhantom[id] = false
                g_bPirategirl[id] = false
                g_bLeo[id] = false
                g_bMike[id] = false
                g_bDon[id] = false
                g_bRaphael[id] = false
                g_bCapamerica[id] = false
                g_bBatman[id] = false
                rg_set_user_model(id, "50cent")
                ze_colored_print(id, "You picked the 50cent skin", id)
                g_iUsedTimes[id]++
            }
            case 5 : // Joker
            {
                g_bAssasin[id] = false
                g_bDeath[id] = false
                g_bDobby[id] = false
                g_bSonic[id] = false
                g_b50cent[id] = false
                g_bJoker[id] = true
                g_bIron[id] = false
                g_bDeadSpace2[id] = false
                g_bTrump[id] = false
                g_bTrollface[id] = false
                g_bPhantom[id] = false
                g_bPirategirl[id] = false
                g_bLeo[id] = false
                g_bMike[id] = false
                g_bDon[id] = false
                g_bRaphael[id] = false
                g_bCapamerica[id] = false
                g_bBatman[id] = false
                rg_set_user_model(id, "Joker")
                ze_colored_print(id, "You picked the Joker skin", id)
                g_iUsedTimes[id]++
            }
            case 6 : //Iron
            {
                g_bAssasin[id] = false
                g_bDeath[id] = false
                g_bDobby[id] = false
                g_bSonic[id] = false
                g_b50cent[id] = false
                g_bJoker[id] = false
                g_bIron[id] = true
                g_bDeadSpace2[id] = false
                g_bTrump[id] = false
                g_bTrollface[id] = false
                g_bPhantom[id] = false
                g_bPirategirl[id] = false
                g_bLeo[id] = false
                g_bMike[id] = false
                g_bDon[id] = false
                g_bRaphael[id] = false
                g_bCapamerica[id] = false
                g_bBatman[id] = false
                rg_set_user_model(id, "Iron")
                ze_colored_print(id, "You picked the Iron Man skin", id)
                g_iUsedTimes[id]++
            }
            case 7 : // DeadSpace2
            {
                g_bAssasin[id] = false
                g_bDeath[id] = false
                g_bDobby[id] = false
                g_bSonic[id] = false
                g_b50cent[id] = false
                g_bJoker[id] = false
                g_bIron[id] = false
                g_bDeadSpace2[id] = true
                g_bTrump[id] = false
                g_bTrollface[id] = false
                g_bPhantom[id] = false
                g_bPirategirl[id] = false
                g_bLeo[id] = false
                g_bMike[id] = false
                g_bDon[id] = false
                g_bRaphael[id] = false
                g_bCapamerica[id] = false
                g_bBatman[id] = false
                rg_set_user_model(id, "DeadSpace2")
                ze_colored_print(id, "You picked the Dead Space skin", id)
                g_iUsedTimes[id]++
            }
            case 8 : // Trump
            {      
                if (ze_get_vip_flags(id) & VIP_D)
                {
                    g_bAssasin[id] = false
                    g_bDeath[id] = false
                    g_bDobby[id] = false
                    g_bSonic[id] = false
                    g_b50cent[id] = false
                    g_bJoker[id] = false
                    g_bIron[id] = false
                    g_bDeadSpace2[id] = false
                    g_bTrump[id] = true
                    g_bTrollface[id] = false
                    g_bPhantom[id] = false
                    g_bPirategirl[id] = false
                    g_bLeo[id] = false
                    g_bMike[id] = false
                    g_bDon[id] = false
                    g_bRaphael[id] = false
                    g_bCapamerica[id] = false
                    g_bBatman[id] = false
                    rg_set_user_model(id, "Trump")
                    ze_colored_print(id, "You picked the Trump skin", id)
                    g_iUsedTimes[id]++
                }            
            }
            case 9 : // Trollface
            {
                if (ze_get_vip_flags(id) & VIP_D)
                {
                    g_bAssasin[id] = false
                    g_bDeath[id] = false
                    g_bDobby[id] = false
                    g_bSonic[id] = false
                    g_b50cent[id] = false
                    g_bJoker[id] = false
                    g_bIron[id] = false
                    g_bDeadSpace2[id] = false
                    g_bTrump[id] = false
                    g_bTrollface[id] = true
                    g_bPhantom[id] = false
                    g_bPirategirl[id] = false
                    g_bLeo[id] = false
                    g_bMike[id] = false
                    g_bDon[id] = false
                    g_bRaphael[id] = false
                    g_bCapamerica[id] = false
                    g_bBatman[id] = false
                    rg_set_user_model(id, "Trollface")
                    ze_colored_print(id, "You picked the Trollface skin", id)
                    g_iUsedTimes[id]++
                }              
            }
            case 10 : // Phantom
            {
                if (ze_get_vip_flags(id) & VIP_D)
                {
                    g_bAssasin[id] = false
                    g_bDeath[id] = false
                    g_bDobby[id] = false
                    g_bSonic[id] = false
                    g_b50cent[id] = false
                    g_bJoker[id] = false
                    g_bIron[id] = false
                    g_bDeadSpace2[id] = false
                    g_bTrump[id] = false
                    g_bTrollface[id] = false
                    g_bPhantom[id] = true
                    g_bPirategirl[id] = false
                    g_bLeo[id] = false
                    g_bMike[id] = false
                    g_bDon[id] = false
                    g_bRaphael[id] = false
                    g_bCapamerica[id] = false
                    g_bBatman[id] = false
                    rg_set_user_model(id, "Phantom")
                    ze_colored_print(id, "You picked the Phantom skin", id)
                    g_iUsedTimes[id]++
                }            
            }
            case 11 : // Pirategirl
            {
                if (ze_get_vip_flags(id) & VIP_D)
                {
                    g_bAssasin[id] = false
                    g_bDeath[id] = false
                    g_bDobby[id] = false
                    g_bSonic[id] = false
                    g_b50cent[id] = false
                    g_bJoker[id] = false
                    g_bIron[id] = false
                    g_bDeadSpace2[id] = false
                    g_bTrump[id] = false
                    g_bTrollface[id] = false
                    g_bPhantom[id] = false
                    g_bPirategirl[id] = true
                    g_bLeo[id] = false
                    g_bMike[id] = false
                    g_bDon[id] = false
                    g_bRaphael[id] = false
                    g_bCapamerica[id] = false
                    g_bBatman[id] = false
                    rg_set_user_model(id, "Pirategirl")
                    ze_colored_print(id, "You picked the Pirategirl skin", id)
                    g_iUsedTimes[id]++
                }                      
            }
            case 12 : //Leonardo
            {
                if (ze_get_vip_flags(id) & VIP_E)
                {
                    g_bAssasin[id] = false
                    g_bDeath[id] = false
                    g_bDobby[id] = false
                    g_bSonic[id] = false
                    g_b50cent[id] = false
                    g_bJoker[id] = false
                    g_bIron[id] = false
                    g_bDeadSpace2[id] = false
                    g_bTrump[id] = false
                    g_bTrollface[id] = false
                    g_bPhantom[id] = false
                    g_bPirategirl[id] = false
                    g_bLeo[id] = true
                    g_bMike[id] = false
                    g_bDon[id] = false
                    g_bRaphael[id] = false
                    g_bCapamerica[id] = false
                    g_bBatman[id] = false
                    rg_set_user_model(id, "leo")
                    ze_colored_print(id, "You picked the Leonardo skin", id)
                    g_iUsedTimes[id]++
                }              
            }
            case 13 : // Michelangelo
            {
                if (ze_get_vip_flags(id) & VIP_E)
                {
                    g_bAssasin[id] = false
                    g_bDeath[id] = false
                    g_bDobby[id] = false
                    g_bSonic[id] = false
                    g_b50cent[id] = false
                    g_bJoker[id] = false
                    g_bIron[id] = false
                    g_bDeadSpace2[id] = false
                    g_bTrump[id] = false
                    g_bTrollface[id] = false
                    g_bPhantom[id] = false
                    g_bPirategirl[id] = false
                    g_bLeo[id] = false
                    g_bMike[id] = true
                    g_bDon[id] = false
                    g_bRaphael[id] = false
                    g_bCapamerica[id] = false
                    g_bBatman[id] = false
                    rg_set_user_model(id, "mike")
                    ze_colored_print(id, "You picked the Michelangelo skin", id)
                    g_iUsedTimes[id]++
                }      
            }
            case 14 : // Donatello
            {
                if (ze_get_vip_flags(id) & VIP_E)
                {
                    g_bAssasin[id] = false
                    g_bDeath[id] = false
                    g_bDobby[id] = false
                    g_bSonic[id] = false
                    g_b50cent[id] = false
                    g_bJoker[id] = false
                    g_bIron[id] = false
                    g_bDeadSpace2[id] = false
                    g_bTrump[id] = false
                    g_bTrollface[id] = false
                    g_bPhantom[id] = false
                    g_bPirategirl[id] = false
                    g_bLeo[id] = false
                    g_bMike[id] = false
                    g_bDon[id] = true
                    g_bRaphael[id] = false
                    g_bCapamerica[id] = false
                    g_bBatman[id] = false
                    rg_set_user_model(id, "don")
                    ze_colored_print(id, "You picked the Donatello skin", id)
                    g_iUsedTimes[id]++
                }            
            }
            case 15 : // Raphael
            {
                if (ze_get_vip_flags(id) & VIP_E)
                {
                    g_bAssasin[id] = false
                    g_bDeath[id] = false
                    g_bDobby[id] = false
                    g_bSonic[id] = false
                    g_b50cent[id] = false
                    g_bJoker[id] = false
                    g_bIron[id] = false
                    g_bDeadSpace2[id] = false
                    g_bTrump[id] = false
                    g_bTrollface[id] = false
                    g_bPhantom[id] = false
                    g_bPirategirl[id] = false
                    g_bLeo[id] = false
                    g_bMike[id] = false
                    g_bDon[id] = false
                    g_bRaphael[id] = true
                    g_bCapamerica[id] = false
                    g_bBatman[id] = false
                    rg_set_user_model(id, "raphael")
                    ze_colored_print(id, "You picked the Raphael skin", id)
                    g_iUsedTimes[id]++
                }              
            }
            case 16 : // Captian America
            {
                if (ze_get_vip_flags(id) & VIP_E)
                {
                    g_bAssasin[id] = false
                    g_bDeath[id] = false
                    g_bDobby[id] = false
                    g_bSonic[id] = false
                    g_b50cent[id] = false
                    g_bJoker[id] = false
                    g_bIron[id] = false
                    g_bDeadSpace2[id] = false
                    g_bTrump[id] = false
                    g_bTrollface[id] = false
                    g_bPhantom[id] = false
                    g_bPirategirl[id] = false
                    g_bLeo[id] = false
                    g_bMike[id] = false
                    g_bDon[id] = false
                    g_bRaphael[id] = false
                    g_bCapamerica[id] = true
                    g_bBatman[id] = false
                    rg_set_user_model(id, "capamerica")
                    ze_colored_print(id, "You picked the Captian America skin", id)
                    g_iUsedTimes[id]++
                }          
            }
            case 17 : // Batman
            {
                if (ze_get_vip_flags(id) & VIP_E)
                {
                    g_bAssasin[id] = false
                    g_bDeath[id] = false
                    g_bDobby[id] = false
                    g_bSonic[id] = false
                    g_b50cent[id] = false
                    g_bJoker[id] = false
                    g_bIron[id] = false
                    g_bDeadSpace2[id] = false
                    g_bTrump[id] = false
                    g_bTrollface[id] = false
                    g_bPhantom[id] = false
                    g_bPirategirl[id] = false
                    g_bLeo[id] = false
                    g_bMike[id] = false
                    g_bDon[id] = false
                    g_bRaphael[id] = false
                    g_bCapamerica[id] = false
                    g_bBatman[id] = true
                    rg_set_user_model(id, "batman")
                    ze_colored_print(id, "You picked the Batman skin", id)
                    g_iUsedTimes[id]++
                }            
            }
     
        }    
        menu_destroy(hmenu)
        return PLUGIN_HANDLED
    }
     
    public native_ze_open_hskin_menu(id)
    {
        Show_Hmodel_Menu(id)
    }
Also make sure to place plugin name at the end of plugins-zombie_escape.ini
I removed useless includes and used reapi function for setting models.
Seems better but when they are infected and the round is over when they are human there custom skin is gone and they have to repick. How can i make it so that untill they select a new skin they will always have the one the picked?

User avatar
Raheem
Mod Developer
Mod Developer
Posts: 2214
Joined: 7 years ago
Contact:

#13

Post by Raheem » 5 years ago

Remove those from infection forward:
  • Code: Select all

        g_bAssasin[Victim] = false
        g_bDeath[Victim] = false
        g_bDobby[Victim] = false
        g_bSonic[Victim] = false
        g_b50cent[Victim] = false
        g_bJoker[Victim] = false
        g_bIron[Victim] = false
        g_bDeadSpace2[Victim] = false
        g_bTrump[Victim] = false
        g_bTrollface[Victim] = false
        g_bPhantom[Victim] = false
        g_bPirategirl[Victim] = false
        g_bLeo[Victim] = false
        g_bMike[Victim] = false
        g_bDon[Victim] = false
        g_bRaphael[Victim] = false
        g_bCapamerica[Victim] = false
        g_bBatman[Victim] = false
He who fails to plan is planning to fail

User avatar
Mark
VIP
VIP
United States of America
Posts: 283
Joined: 5 years ago
Location: Des Moines/USA
Contact:

#14

Post by Mark » 5 years ago

Solved

User avatar
Mark
VIP
VIP
United States of America
Posts: 283
Joined: 5 years ago
Location: Des Moines/USA
Contact:

#15

Post by Mark » 5 years ago

Trying todo a Zombie Skin Menu but the skin changes to default when new round begins.

Maybe add a native is_user_human?

Also why don't you have a donation link on website?
  1. #include <zombie_escape>
  2. #include <ze_vip>
  3.  
  4.  
  5. #define PLUGIN "Custom zModel Menu"
  6. #define VERSION "1.0"
  7. #define AUTHOR "Mark"
  8.  
  9. new const Butcher_Models[][] =
  10. {
  11.     "models/player/butcher_zom/butcher_zom.mdl"
  12. }
  13.  
  14. new const Doom_Models[][] =
  15. {
  16.     "models/player/doom_zom/doom_zom.mdl"
  17. }
  18.  
  19. new const Fleshpound_Models[][] =
  20. {
  21.     "models/player/fleshpound_zom/fleshpound_zom.mdl"
  22. }
  23.  
  24. new const Jumper_Models[][] =
  25. {
  26.     "models/player/jumper_zom/jumper_zom.mdl"
  27. }
  28.  
  29. new const Mon_Assassin_Models[][] =
  30. {
  31.     "models/player/monster_assassin_zom/monster_assassin_zom.mdl"
  32. }
  33.  
  34. new const Mon_Zom_Models[][] =
  35. {
  36.     "models/player/monster_zom/monster_zom.mdl"
  37. }
  38.  
  39. new const Abaddon_Models[][] =
  40. {
  41.     "models/player/abaddon_zom/abaddon_zom.mdl"
  42. }
  43.  
  44. new const Assassin_Zom_Models[][] =
  45. {
  46.     "models/player/assassin_zom/assassin_zom.mdl"
  47. }
  48.  
  49. new const Deimosboss_Models[][] =
  50. {
  51.     "models/player/deimosboss_zom/deimosboss_zom.mdl"
  52. }
  53.  
  54. new const Lockerz_Models[][] =
  55. {
  56.     "models/player/lockerz_zom/lockerz_zom.mdl"
  57. }
  58.  
  59. new const Mon_Nemesis_Models[][] =
  60. {
  61.     "models/player/monster_nemesis_zom/monster_nemesis_zom.mdl"
  62. }
  63.  
  64. new const NightCrawler_Models[][] =
  65. {
  66.     "models/player/nightcrawler_zom/nightcrawler_zom.mdl"
  67. }
  68.  
  69. new const NightRider_Models[][] =
  70. {
  71.     "models/player/nightrider_zom/nightrider_zom.mdl"
  72. }
  73.  
  74. new const Poison_Models[][] =
  75. {
  76.     "models/player/poison_nshaman_zom/poison_nshaman_zom.mdl"
  77. }
  78.  
  79. new const Predator_Models[][] =
  80. {
  81.     "models/player/predator_zom/predator_zom.mdl"
  82. }
  83.  
  84. new const Raptor_Models[][] =
  85. {
  86.     "models/player/raptor_zom/raptor_zom.mdl"
  87. }
  88.  
  89. new const RealBoss_Models[][] =
  90. {
  91.     "models/player/realboss_zom/realboss_zom.mdl"
  92. }
  93.  
  94. new const Replican_Models[][] =
  95. {
  96.     "models/player/replican_fear_zom/replican_fear_zom.mdl"
  97. }
  98.  
  99. new const Terminator_Models[][] =
  100. {
  101.     "models/player/terminator_zom/terminator_zom.mdl"
  102. }
  103.  
  104. new g_pCvarUseTimes
  105. new g_iUsedTimes[33]
  106.  
  107. new bool:g_bButcher[33], bool:g_bDoom[33], bool:g_bFleshpound[33], bool:g_bJumper[33],
  108. bool:g_bMon_Assassin[33], bool:g_bMon_Zom[33], bool:g_bAbaddon[33], bool:g_bAssassin_Zom[33],
  109. bool:g_bDeimosboss[33], bool:g_bLockerz[33], bool:g_bMon_Nemesis[33], bool:g_bNightCrawler[33],
  110. bool:g_bNightRider[33], bool:g_bPoison[33],bool:g_bPredator[33], bool:g_bRaptor[33], bool:g_bRealBoss[33],
  111. bool:g_bReplican[33], bool:g_bTerminator[33]
  112.  
  113.  
  114. public plugin_natives()
  115. {
  116.     register_native("ze_open_zskin_menu", "native_ze_open_zskin_menu", 1)
  117. }
  118.  
  119. public plugin_precache()
  120. {
  121.     new i
  122.  
  123.     for (i = 0; i <= charsmax(Butcher_Models); i++)
  124.         precache_model(Butcher_Models[i])
  125.  
  126.     for (i = 0; i <= charsmax(Doom_Models); i++)
  127.         precache_model(Doom_Models[i])
  128.  
  129.     for (i = 0; i <= charsmax(Fleshpound_Models); i++)
  130.         precache_model(Fleshpound_Models[i])
  131.  
  132.     for (i = 0; i <= charsmax(Jumper_Models); i++)
  133.         precache_model(Jumper_Models[i])
  134.  
  135.     for (i = 0; i <= charsmax(Mon_Assassin_Models); i++)
  136.         precache_model(Mon_Assassin_Models[i])
  137.  
  138.     for (i = 0; i <= charsmax(Mon_Zom_Models); i++)
  139.         precache_model(Mon_Zom_Models[i])
  140.  
  141.     for (i = 0; i <= charsmax(Abaddon_Models); i++)
  142.         precache_model(Abaddon_Models[i])
  143.  
  144.     for (i = 0; i <= charsmax(Assassin_Zom_Models); i++)
  145.         precache_model(Assassin_Zom_Models[i])
  146.  
  147.     for (i = 0; i <= charsmax(Deimosboss_Models); i++)
  148.         precache_model(Deimosboss_Models[i])
  149.  
  150.     for (i = 0; i <= charsmax(Lockerz_Models); i++)
  151.         precache_model(Lockerz_Models[i])
  152.  
  153.     for (i = 0; i <= charsmax(Mon_Nemesis_Models); i++)
  154.         precache_model(Mon_Nemesis_Models[i])
  155.  
  156.     for (i = 0; i <= charsmax(NightCrawler_Models); i++)
  157.         precache_model(NightCrawler_Models[i])
  158.        
  159.     for (i = 0; i <= charsmax(NightRider_Models); i++)
  160.         precache_model(NightRider_Models[i])
  161.  
  162.     for (i = 0; i <= charsmax(Poison_Models); i++)
  163.         precache_model(Poison_Models[i])
  164.  
  165.     for (i = 0; i <= charsmax(Predator_Models); i++)
  166.         precache_model(Predator_Models[i])
  167.  
  168.     for (i = 0; i <= charsmax(Raptor_Models); i++)
  169.         precache_model(Raptor_Models[i])
  170.  
  171.     for (i = 0; i <= charsmax(RealBoss_Models); i++)
  172.         precache_model(RealBoss_Models[i])
  173.  
  174.     for (i = 0; i <= charsmax(Replican_Models); i++)
  175.         precache_model(Replican_Models[i])
  176.        
  177.     for (i = 0; i <= charsmax(Terminator_Models); i++)
  178.         precache_model(Terminator_Models[i])
  179. }
  180.  
  181. public plugin_init()
  182. {
  183.     register_plugin(PLUGIN, VERSION, AUTHOR)
  184.     g_pCvarUseTimes = register_cvar("ze_hskin_menu_used", "1")
  185. }
  186.  
  187. public ze_user_infected_pre(id)
  188. {
  189.     if (g_bButcher[id])
  190.     {
  191.         rg_set_user_model(id, "butcher_zom")
  192.     }
  193.     else if (g_bDoom[id])
  194.     {
  195.         rg_set_user_model(id, "doom_zom")
  196.     }
  197.     else if (g_bFleshpound[id])
  198.     {
  199.         rg_set_user_model(id, "fleshpound_zom")
  200.     }
  201.     else if (g_bJumper[id])
  202.     {
  203.         rg_set_user_model(id, "jumper_zom")
  204.     }
  205.     else if (g_bMon_Assassin[id])
  206.     {
  207.         rg_set_user_model(id, "monster_assassin_zom")
  208.     }
  209.     else if (g_bMon_Zom[id])
  210.     {
  211.         rg_set_user_model(id, "monster_zom")
  212.     }
  213.     else if (g_bAbaddon[id])
  214.     {
  215.         rg_set_user_model(id, "abaddon_zom")
  216.     }
  217.     else if (g_bAssassin_Zom[id])
  218.     {
  219.         rg_set_user_model(id, "assassin_zom")
  220.     }
  221.     else if (g_bDeimosboss[id])
  222.     {
  223.         rg_set_user_model(id, "deimosboss_zom")
  224.     }
  225.     else if (g_bLockerz[id])
  226.     {
  227.         rg_set_user_model(id, "lockerz_zom")
  228.     }
  229.     else if (g_bMon_Nemesis[id])
  230.     {
  231.         rg_set_user_model(id, "monster_nemesis_zom")
  232.     }
  233.     else if (g_bNightCrawler[id])
  234.     {
  235.         rg_set_user_model(id, "nightcrawler_zom")
  236.     }
  237.     else if (g_bNightRider[id])
  238.     {
  239.         rg_set_user_model(id, "nightrider_zom")
  240.     }
  241.     else if (g_bPoison[id])
  242.     {
  243.         rg_set_user_model(id, "poison_nshaman_zom")
  244.     }
  245.     else if (g_bPredator[id])
  246.     {
  247.         rg_set_user_model(id, "predator_zom")
  248.     }
  249.     else if (g_bRaptor[id])
  250.     {
  251.         rg_set_user_model(id, "raptor_zom")
  252.     }
  253.     else if (g_bRealBoss[id])
  254.     {
  255.         rg_set_user_model(id, "realboss_zom")
  256.     }
  257.     else if (g_bReplican[id])
  258.     {
  259.         rg_set_user_model(id, "replican_fear_zom")
  260.     }
  261.     else if (g_bTerminator[id])
  262.     {
  263.         rg_set_user_model(id, "terminator_zom")
  264.     }
  265.    
  266.     g_iUsedTimes[id] = 0
  267. }
  268.  
  269. public ze_user_infected(Victim)
  270. {
  271.     g_iUsedTimes[Victim] = 0
  272. }
  273.  
  274. public client_putinserver(id)
  275. {
  276.     g_bButcher[id] = false
  277.     g_bDoom[id] = false
  278.     g_bFleshpound[id] = false
  279.     g_bJumper[id] = false
  280.     g_bMon_Assassin[id] = false
  281.     g_bMon_Zom[id] = false
  282.     g_bAbaddon[id] = false
  283.     g_bAssassin_Zom[id] = false
  284.     g_bDeimosboss[id] = false
  285.     g_bLockerz[id] = false
  286.     g_bMon_Nemesis[id] = false
  287.     g_bNightCrawler[id] = false
  288.     g_bNightRider[id] = false
  289.     g_bPoison[id] = false
  290.     g_bPredator[id] = false
  291.     g_bRaptor[id] = false
  292.     g_bRealBoss[id] = false
  293.     g_bReplican[id] = false
  294.     g_bTerminator[id] = false
  295.     g_iUsedTimes[id] = 0
  296. }
  297.  
  298. public client_disconnected(id)
  299. {
  300.     g_bButcher[id] = false
  301.     g_bDoom[id] = false
  302.     g_bFleshpound[id] = false
  303.     g_bJumper[id] = false
  304.     g_bMon_Assassin[id] = false
  305.     g_bMon_Zom[id] = false
  306.     g_bAbaddon[id] = false
  307.     g_bAssassin_Zom[id] = false
  308.     g_bDeimosboss[id] = false
  309.     g_bLockerz[id] = false
  310.     g_bMon_Nemesis[id] = false
  311.     g_bNightCrawler[id] = false
  312.     g_bNightRider[id] = false
  313.     g_bPoison[id] = false
  314.     g_bPredator[id] = false
  315.     g_bRaptor[id] = false
  316.     g_bRealBoss[id] = false
  317.     g_bReplican[id] = false
  318.     g_bTerminator[id] = false
  319.     g_iUsedTimes[id] = 0
  320. }
  321.  
  322. public Show_Zmodel_Menu(id)
  323. {
  324.     if (!is_user_connected(id))
  325.     {
  326.         return PLUGIN_CONTINUE
  327.     }
  328.  
  329.     if (!ze_is_user_zombie(id))
  330.     {
  331.         ze_colored_print(id, "!tYou can't change your zombie skin while Human!y.")
  332.         return PLUGIN_HANDLED
  333.     }
  334.  
  335.     if (g_iUsedTimes[id] >= get_pcvar_num(g_pCvarUseTimes))
  336.     {
  337.         ze_colored_print(id, "!tMaximum have been reached !y[!g%d!y]!", get_pcvar_num(g_pCvarUseTimes))
  338.         return PLUGIN_HANDLED
  339.     }
  340.  
  341.     if (!is_user_alive(id))
  342.     {
  343.         ze_colored_print(id, "!tDead can't open menu!y.")
  344.         return PLUGIN_HANDLED
  345.     }
  346.  
  347.     Zmodel_Menu(id)
  348.     return PLUGIN_CONTINUE
  349. }
  350.  
  351. public Zmodel_Menu(id)
  352. {
  353.     new zmenu = menu_create("\r[\wZombie Models\r]\r", "menu_zskins")
  354.     menu_additem(zmenu, "\wButcher", "", 0)
  355.     menu_additem(zmenu, "\wDoom", "", 0)
  356.     menu_additem(zmenu, "\wFleshpound", "", 0)
  357.     menu_additem(zmenu, "\wJumper", "", 0)
  358.  
  359.     if (ze_get_vip_flags(id) & VIP_A)
  360.     {
  361.         menu_additem(zmenu, "\wMonster Assassin\r[VIP]", "", 0)
  362.         menu_additem(zmenu, "\wMonster\r[VIP]", "", 0)
  363.         menu_additem(zmenu, "\wAbaddon\r[VIP]", "", 0)
  364.         menu_additem(zmenu, "\wAssassin\r[VIP]", "", 0)
  365.     }
  366.  
  367.     if (ze_get_vip_flags(id) & VIP_D)
  368.     {
  369.         menu_additem(zmenu, "\wDeimosboss \r[VIP+]", "", 0)
  370.         menu_additem(zmenu, "\wLockerz \r[VIP+]", "", 0)
  371.         menu_additem(zmenu, "\wMonster Nemesis \r[VIP+]", "", 0)
  372.         menu_additem(zmenu, "\wNight Crawler \r[VIP+]", "", 0)
  373.         menu_additem(zmenu, "\wNight Rider \r[VIP+]", "", 0)
  374.     }
  375.  
  376.     if (ze_get_vip_flags(id) & VIP_E)
  377.     {
  378.         menu_additem(zmenu, "\wPoison \r[VIP++]", "", 0)
  379.         menu_additem(zmenu, "\wPredator \r[VIP++]", "", 0)
  380.         menu_additem(zmenu, "\wRaptor \r[VIP++]", "", 0)
  381.         menu_additem(zmenu, "\wRealBoss \r[VIP++]", "", 0)
  382.         menu_additem(zmenu, "\wReplican \r[VIP++]", "", 0)
  383.         menu_additem(zmenu, "\wTerminator \r[VIP++]", "", 0)
  384.     }
  385.  
  386.     menu_setprop(zmenu, MPROP_EXIT, MEXIT_ALL)
  387.     menu_display(id, zmenu, 0)
  388. }
  389.  
  390. public menu_zskins(id, zmenu, item)
  391. {
  392.     if(!is_user_alive(id) || !ze_is_user_zombie(id))
  393.         return PLUGIN_HANDLED
  394.  
  395.     switch(item)
  396.     {
  397.         case 0 : // Butcher
  398.         {
  399.             g_bButcher[id] = true
  400.             g_bDoom[id] = false
  401.             g_bFleshpound[id] = false
  402.             g_bJumper[id] = false
  403.             g_bMon_Assassin[id] = false
  404.             g_bMon_Zom[id] = false
  405.             g_bAbaddon[id] = false
  406.             g_bAssassin_Zom[id] = false
  407.             g_bDeimosboss[id] = false
  408.             g_bLockerz[id] = false
  409.             g_bMon_Nemesis[id] = false
  410.             g_bNightCrawler[id] = false
  411.             g_bNightRider[id] = false
  412.             g_bPoison[id] = false
  413.             g_bPredator[id] = false
  414.             g_bRaptor[id] = false
  415.             g_bRealBoss[id] = false
  416.             g_bReplican[id] = false
  417.             g_bTerminator[id] = false
  418.             rg_set_user_model(id, "butcher_zom")
  419.             ze_colored_print(id, "You picked the Butcher skin", id)
  420.             g_iUsedTimes[id]++
  421.         }
  422.         case 1 : // Doom
  423.         {
  424.             g_bButcher[id] = false
  425.             g_bDoom[id] = true
  426.             g_bFleshpound[id] = false
  427.             g_bJumper[id] = false
  428.             g_bMon_Assassin[id] = false
  429.             g_bMon_Zom[id] = false
  430.             g_bAbaddon[id] = false
  431.             g_bAssassin_Zom[id] = false
  432.             g_bDeimosboss[id] = false
  433.             g_bLockerz[id] = false
  434.             g_bMon_Nemesis[id] = false
  435.             g_bNightCrawler[id] = false
  436.             g_bNightRider[id] = false
  437.             g_bPoison[id] = false
  438.             g_bPredator[id] = false
  439.             g_bRaptor[id] = false
  440.             g_bRealBoss[id] = false
  441.             g_bReplican[id] = false
  442.             g_bTerminator[id] = false
  443.             rg_set_user_model(id, "doom_zom")
  444.             ze_colored_print(id, "You picked the Doom skin", id)
  445.             g_iUsedTimes[id]++
  446.         }
  447.         case 2 : // Fleshpound
  448.         {
  449.             g_bButcher[id] = false
  450.             g_bDoom[id] = false
  451.             g_bFleshpound[id] = true
  452.             g_bJumper[id] = false
  453.             g_bMon_Assassin[id] = false
  454.             g_bMon_Zom[id] = false
  455.             g_bAbaddon[id] = false
  456.             g_bAssassin_Zom[id] = false
  457.             g_bDeimosboss[id] = false
  458.             g_bLockerz[id] = false
  459.             g_bMon_Nemesis[id] = false
  460.             g_bNightCrawler[id] = false
  461.             g_bNightRider[id] = false
  462.             g_bPoison[id] = false
  463.             g_bPredator[id] = false
  464.             g_bRaptor[id] = false
  465.             g_bRealBoss[id] = false
  466.             g_bReplican[id] = false
  467.             g_bTerminator[id] = false
  468.             rg_set_user_model(id, "fleshpound_zom")
  469.             ze_colored_print(id, "You picked the Fleshpound skin", id)
  470.             g_iUsedTimes[id]++
  471.         }
  472.         case 3 : // Jumper
  473.         {
  474.             g_bButcher[id] = false
  475.             g_bDoom[id] = false
  476.             g_bFleshpound[id] = false
  477.             g_bJumper[id] = true
  478.             g_bMon_Assassin[id] = false
  479.             g_bMon_Zom[id] = false
  480.             g_bAbaddon[id] = false
  481.             g_bAssassin_Zom[id] = false
  482.             g_bDeimosboss[id] = false
  483.             g_bLockerz[id] = false
  484.             g_bMon_Nemesis[id] = false
  485.             g_bNightCrawler[id] = false
  486.             g_bNightRider[id] = false
  487.             g_bPoison[id] = false
  488.             g_bPredator[id] = false
  489.             g_bRaptor[id] = false
  490.             g_bRealBoss[id] = false
  491.             g_bReplican[id] = false
  492.             g_bTerminator[id] = false
  493.             rg_set_user_model(id, "jumper_zom")
  494.             ze_colored_print(id, "You picked the Jumper skin", id)
  495.             g_iUsedTimes[id]++
  496.         }
  497.         case 4 : // Mon_Assassin
  498.         {
  499.             if (ze_get_vip_flags(id) & VIP_A)
  500.             {
  501.                 g_bButcher[id] = false
  502.                 g_bDoom[id] = false
  503.                 g_bFleshpound[id] = false
  504.                 g_bJumper[id] = false
  505.                 g_bMon_Assassin[id] = true
  506.                 g_bMon_Zom[id] = false
  507.                 g_bAbaddon[id] = false
  508.                 g_bAssassin_Zom[id] = false
  509.                 g_bDeimosboss[id] = false
  510.                 g_bLockerz[id] = false
  511.                 g_bMon_Nemesis[id] = false
  512.                 g_bNightCrawler[id] = false
  513.                 g_bNightRider[id] = false
  514.                 g_bPoison[id] = false
  515.                 g_bPredator[id] = false
  516.                 g_bRaptor[id] = false
  517.                 g_bRealBoss[id] = false
  518.                 g_bReplican[id] = false
  519.                 g_bTerminator[id] = false
  520.                 rg_set_user_model(id, "Mon_Assassin_zom")
  521.                 ze_colored_print(id, "You picked the Monster Assassin skin", id)
  522.                 g_iUsedTimes[id]++
  523.             }
  524.         }
  525.         case 5 : // Mon_Zom
  526.         {
  527.             if (ze_get_vip_flags(id) & VIP_A)
  528.             {
  529.                 g_bButcher[id] = false
  530.                 g_bDoom[id] = false
  531.                 g_bFleshpound[id] = false
  532.                 g_bJumper[id] = false
  533.                 g_bMon_Assassin[id] = false
  534.                 g_bMon_Zom[id] = true
  535.                 g_bAbaddon[id] = false
  536.                 g_bAssassin_Zom[id] = false
  537.                 g_bDeimosboss[id] = false
  538.                 g_bLockerz[id] = false
  539.                 g_bMon_Nemesis[id] = false
  540.                 g_bNightCrawler[id] = false
  541.                 g_bNightRider[id] = false
  542.                 g_bPoison[id] = false
  543.                 g_bPredator[id] = false
  544.                 g_bRaptor[id] = false
  545.                 g_bRealBoss[id] = false
  546.                 g_bReplican[id] = false
  547.                 g_bTerminator[id] = false
  548.                 rg_set_user_model(id, "monster_zom")
  549.                 ze_colored_print(id, "You picked the Monster skin", id)
  550.                 g_iUsedTimes[id]++
  551.             }
  552.         }
  553.         case 6 : // Abaddon
  554.         {
  555.             if (ze_get_vip_flags(id) & VIP_A)
  556.             {
  557.                 g_bButcher[id] = false
  558.                 g_bDoom[id] = false
  559.                 g_bFleshpound[id] = false
  560.                 g_bJumper[id] = false
  561.                 g_bMon_Assassin[id] = false
  562.                 g_bMon_Zom[id] = false
  563.                 g_bAbaddon[id] = true
  564.                 g_bAssassin_Zom[id] = false
  565.                 g_bDeimosboss[id] = false
  566.                 g_bLockerz[id] = false
  567.                 g_bMon_Nemesis[id] = false
  568.                 g_bNightCrawler[id] = false
  569.                 g_bNightRider[id] = false
  570.                 g_bPoison[id] = false
  571.                 g_bPredator[id] = false
  572.                 g_bRaptor[id] = false
  573.                 g_bRealBoss[id] = false
  574.                 g_bReplican[id] = false
  575.                 g_bTerminator[id] = false
  576.                 rg_set_user_model(id, "abaddon_zom")
  577.                 ze_colored_print(id, "You picked the Abaddon skin", id)
  578.                 g_iUsedTimes[id]++
  579.             }
  580.         }
  581.         case 7 : // Assassin_Zom
  582.         {
  583.             if (ze_get_vip_flags(id) & VIP_A)
  584.             {
  585.                 g_bButcher[id] = false
  586.                 g_bDoom[id] = false
  587.                 g_bFleshpound[id] = false
  588.                 g_bJumper[id] = false
  589.                 g_bMon_Assassin[id] = false
  590.                 g_bMon_Zom[id] = false
  591.                 g_bAbaddon[id] = false
  592.                 g_bAssassin_Zom[id] = true
  593.                 g_bDeimosboss[id] = false
  594.                 g_bLockerz[id] = false
  595.                 g_bMon_Nemesis[id] = false
  596.                 g_bNightCrawler[id] = false
  597.                 g_bNightRider[id] = false
  598.                 g_bPoison[id] = false
  599.                 g_bPredator[id] = false
  600.                 g_bRaptor[id] = false
  601.                 g_bRealBoss[id] = false
  602.                 g_bReplican[id] = false
  603.                 g_bTerminator[id] = false
  604.                 rg_set_user_model(id, "assassin_zom")
  605.                 ze_colored_print(id, "You picked the Assassin skin", id)
  606.                 g_iUsedTimes[id]++
  607.             }
  608.         }
  609.         case 8 : // Deimosboss
  610.         {      
  611.             if (ze_get_vip_flags(id) & VIP_D)
  612.             {
  613.                 g_bButcher[id] = false
  614.                 g_bDoom[id] = false
  615.                 g_bFleshpound[id] = false
  616.                 g_bJumper[id] = false
  617.                 g_bMon_Assassin[id] = false
  618.                 g_bMon_Zom[id] = false
  619.                 g_bAbaddon[id] = false
  620.                 g_bAssassin_Zom[id] = false
  621.                 g_bDeimosboss[id] = true
  622.                 g_bLockerz[id] = false
  623.                 g_bMon_Nemesis[id] = false
  624.                 g_bNightCrawler[id] = false
  625.                 g_bNightRider[id] = false
  626.                 g_bPoison[id] = false
  627.                 g_bPredator[id] = false
  628.                 g_bRaptor[id] = false
  629.                 g_bRealBoss[id] = false
  630.                 g_bReplican[id] = false
  631.                 g_bTerminator[id] = false
  632.                 rg_set_user_model(id, "deimosboss_zom")
  633.                 ze_colored_print(id, "You picked the Deimosboss skin", id)
  634.                 g_iUsedTimes[id]++
  635.             }            
  636.         }
  637.         case 9 : // Lockerz
  638.         {
  639.             if (ze_get_vip_flags(id) & VIP_D)
  640.             {
  641.                 g_bButcher[id] = false
  642.                 g_bDoom[id] = false
  643.                 g_bFleshpound[id] = false
  644.                 g_bJumper[id] = false
  645.                 g_bMon_Assassin[id] = false
  646.                 g_bMon_Zom[id] = false
  647.                 g_bAbaddon[id] = false
  648.                 g_bAssassin_Zom[id] = false
  649.                 g_bDeimosboss[id] = false
  650.                 g_bLockerz[id] = true
  651.                 g_bMon_Nemesis[id] = false
  652.                 g_bNightCrawler[id] = false
  653.                 g_bNightRider[id] = false
  654.                 g_bPoison[id] = false
  655.                 g_bPredator[id] = false
  656.                 g_bRaptor[id] = false
  657.                 g_bRealBoss[id] = false
  658.                 g_bReplican[id] = false
  659.                 g_bTerminator[id] = false
  660.                 rg_set_user_model(id, "lockerz_zom")
  661.                 ze_colored_print(id, "You picked the Lockerz skin", id)
  662.                 g_iUsedTimes[id]++
  663.             }              
  664.         }
  665.         case 10 : // Monster Nemesis
  666.         {
  667.             if (ze_get_vip_flags(id) & VIP_D)
  668.             {
  669.                 g_bButcher[id] = false
  670.                 g_bDoom[id] = false
  671.                 g_bFleshpound[id] = false
  672.                 g_bJumper[id] = false
  673.                 g_bMon_Assassin[id] = false
  674.                 g_bMon_Zom[id] = false
  675.                 g_bAbaddon[id] = false
  676.                 g_bAssassin_Zom[id] = false
  677.                 g_bDeimosboss[id] = false
  678.                 g_bLockerz[id] = false
  679.                 g_bMon_Nemesis[id] = true
  680.                 g_bNightCrawler[id] = false
  681.                 g_bNightRider[id] = false
  682.                 g_bPoison[id] = false
  683.                 g_bPredator[id] = false
  684.                 g_bRaptor[id] = false
  685.                 g_bRealBoss[id] = false
  686.                 g_bReplican[id] = false
  687.                 g_bTerminator[id] = false
  688.                 rg_set_user_model(id, "monster_nemesis_zom")
  689.                 ze_colored_print(id, "You picked the Monster Nemesis skin", id)
  690.                 g_iUsedTimes[id]++
  691.             }            
  692.         }
  693.         case 11 : // Night Crawler
  694.         {
  695.             if (ze_get_vip_flags(id) & VIP_D)
  696.             {
  697.                 g_bButcher[id] = false
  698.                 g_bDoom[id] = false
  699.                 g_bFleshpound[id] = false
  700.                 g_bJumper[id] = false
  701.                 g_bMon_Assassin[id] = false
  702.                 g_bMon_Zom[id] = false
  703.                 g_bAbaddon[id] = false
  704.                 g_bAssassin_Zom[id] = false
  705.                 g_bDeimosboss[id] = false
  706.                 g_bLockerz[id] = false
  707.                 g_bMon_Nemesis[id] = false
  708.                 g_bNightCrawler[id] = true
  709.                 g_bNightRider[id] = false
  710.                 g_bPoison[id] = false
  711.                 g_bPredator[id] = false
  712.                 g_bRaptor[id] = false
  713.                 g_bRealBoss[id] = false
  714.                 g_bReplican[id] = false
  715.                 g_bTerminator[id] = false
  716.                 rg_set_user_model(id, "nightcrawler_zom")
  717.                 ze_colored_print(id, "You picked the NightCrawler skin", id)
  718.                 g_iUsedTimes[id]++
  719.             }                      
  720.         }
  721.         case 12 : //NightRider
  722.         {
  723.             if (ze_get_vip_flags(id) & VIP_D)
  724.             {
  725.                 g_bButcher[id] = false
  726.                 g_bDoom[id] = false
  727.                 g_bFleshpound[id] = false
  728.                 g_bJumper[id] = false
  729.                 g_bMon_Assassin[id] = false
  730.                 g_bMon_Zom[id] = false
  731.                 g_bAbaddon[id] = false
  732.                 g_bAssassin_Zom[id] = false
  733.                 g_bDeimosboss[id] = false
  734.                 g_bLockerz[id] = false
  735.                 g_bMon_Nemesis[id] = false
  736.                 g_bNightCrawler[id] = false
  737.                 g_bNightRider[id] = true
  738.                 g_bPoison[id] = false
  739.                 g_bPredator[id] = false
  740.                 g_bRaptor[id] = false
  741.                 g_bRealBoss[id] = false
  742.                 g_bReplican[id] = false
  743.                 g_bTerminator[id] = false
  744.                 rg_set_user_model(id, "nightrider_zom")
  745.                 ze_colored_print(id, "You picked the NightRider skin", id)
  746.                 g_iUsedTimes[id]++
  747.             }              
  748.         }
  749.         case 13 : // Poison
  750.         {
  751.             if (ze_get_vip_flags(id) & VIP_E)
  752.             {
  753.                 g_bButcher[id] = false
  754.                 g_bDoom[id] = false
  755.                 g_bFleshpound[id] = false
  756.                 g_bJumper[id] = false
  757.                 g_bMon_Assassin[id] = false
  758.                 g_bMon_Zom[id] = false
  759.                 g_bAbaddon[id] = false
  760.                 g_bAssassin_Zom[id] = false
  761.                 g_bDeimosboss[id] = false
  762.                 g_bLockerz[id] = false
  763.                 g_bMon_Nemesis[id] = false
  764.                 g_bNightCrawler[id] = false
  765.                 g_bNightRider[id] = false
  766.                 g_bPoison[id] = true
  767.                 g_bPredator[id] = false
  768.                 g_bRaptor[id] = false
  769.                 g_bRealBoss[id] = false
  770.                 g_bReplican[id] = false
  771.                 g_bTerminator[id] = false
  772.                 rg_set_user_model(id, "poison_nshaman_zom")
  773.                 ze_colored_print(id, "You picked the Poison skin", id)
  774.                 g_iUsedTimes[id]++
  775.             }      
  776.         }
  777.         case 14 : // Predator
  778.         {
  779.             if (ze_get_vip_flags(id) & VIP_E)
  780.             {
  781.                 g_bButcher[id] = false
  782.                 g_bDoom[id] = false
  783.                 g_bFleshpound[id] = false
  784.                 g_bJumper[id] = false
  785.                 g_bMon_Assassin[id] = false
  786.                 g_bMon_Zom[id] = false
  787.                 g_bAbaddon[id] = false
  788.                 g_bAssassin_Zom[id] = false
  789.                 g_bDeimosboss[id] = false
  790.                 g_bLockerz[id] = false
  791.                 g_bMon_Nemesis[id] = false
  792.                 g_bNightCrawler[id] = false
  793.                 g_bNightRider[id] = false
  794.                 g_bPoison[id] = false
  795.                 g_bPredator[id] = true
  796.                 g_bRaptor[id] = false
  797.                 g_bRealBoss[id] = false
  798.                 g_bReplican[id] = false
  799.                 g_bTerminator[id] = false
  800.                 rg_set_user_model(id, "predator_zom")
  801.                 ze_colored_print(id, "You picked the Predator skin", id)
  802.                 g_iUsedTimes[id]++
  803.             }            
  804.         }
  805.         case 15 : // Raptor
  806.         {
  807.             if (ze_get_vip_flags(id) & VIP_E)
  808.             {
  809.                 g_bButcher[id] = false
  810.                 g_bDoom[id] = false
  811.                 g_bFleshpound[id] = false
  812.                 g_bJumper[id] = false
  813.                 g_bMon_Assassin[id] = false
  814.                 g_bMon_Zom[id] = false
  815.                 g_bAbaddon[id] = false
  816.                 g_bAssassin_Zom[id] = false
  817.                 g_bDeimosboss[id] = false
  818.                 g_bLockerz[id] = false
  819.                 g_bMon_Nemesis[id] = false
  820.                 g_bNightCrawler[id] = false
  821.                 g_bNightRider[id] = false
  822.                 g_bPoison[id] = false
  823.                 g_bPredator[id] = false
  824.                 g_bRaptor[id] = true
  825.                 g_bRealBoss[id] = false
  826.                 g_bReplican[id] = false
  827.                 g_bTerminator[id] = false
  828.                 rg_set_user_model(id, "raptor_zom")
  829.                 ze_colored_print(id, "You picked the Raptor skin", id)
  830.                 g_iUsedTimes[id]++
  831.             }              
  832.         }
  833.         case 16 : // RealBoss
  834.         {
  835.             if (ze_get_vip_flags(id) & VIP_E)
  836.             {
  837.                 g_bButcher[id] = false
  838.                 g_bDoom[id] = false
  839.                 g_bFleshpound[id] = false
  840.                 g_bJumper[id] = false
  841.                 g_bMon_Assassin[id] = false
  842.                 g_bMon_Zom[id] = false
  843.                 g_bAbaddon[id] = false
  844.                 g_bAssassin_Zom[id] = false
  845.                 g_bDeimosboss[id] = false
  846.                 g_bLockerz[id] = false
  847.                 g_bMon_Nemesis[id] = false
  848.                 g_bNightCrawler[id] = false
  849.                 g_bNightRider[id] = false
  850.                 g_bPoison[id] = false
  851.                 g_bPredator[id] = false
  852.                 g_bRaptor[id] = false
  853.                 g_bRealBoss[id] = true
  854.                 g_bReplican[id] = false
  855.                 g_bTerminator[id] = false
  856.                 rg_set_user_model(id, "realboss_zom")
  857.                 ze_colored_print(id, "You picked the RealBoss skin", id)
  858.                 g_iUsedTimes[id]++
  859.             }          
  860.         }
  861.         case 17 : // Replican
  862.         {
  863.             if (ze_get_vip_flags(id) & VIP_E)
  864.             {
  865.                 g_bButcher[id] = false
  866.                 g_bDoom[id] = false
  867.                 g_bFleshpound[id] = false
  868.                 g_bJumper[id] = false
  869.                 g_bMon_Assassin[id] = false
  870.                 g_bMon_Zom[id] = false
  871.                 g_bAbaddon[id] = false
  872.                 g_bAssassin_Zom[id] = false
  873.                 g_bDeimosboss[id] = false
  874.                 g_bLockerz[id] = false
  875.                 g_bMon_Nemesis[id] = false
  876.                 g_bNightCrawler[id] = false
  877.                 g_bNightRider[id] = false
  878.                 g_bPoison[id] = false
  879.                 g_bPredator[id] = false
  880.                 g_bRaptor[id] = false
  881.                 g_bRealBoss[id] = false
  882.                 g_bReplican[id] = true
  883.                 g_bTerminator[id] = false
  884.                 rg_set_user_model(id, "replican_fear_zom")
  885.                 ze_colored_print(id, "You picked the Replican skin", id)
  886.                 g_iUsedTimes[id]++
  887.             }            
  888.         }
  889.         case 18 : // Terminator
  890.         {
  891.             if (ze_get_vip_flags(id) & VIP_E)
  892.             {
  893.                 g_bButcher[id] = false
  894.                 g_bDoom[id] = false
  895.                 g_bFleshpound[id] = false
  896.                 g_bJumper[id] = false
  897.                 g_bMon_Assassin[id] = false
  898.                 g_bMon_Zom[id] = false
  899.                 g_bAbaddon[id] = false
  900.                 g_bAssassin_Zom[id] = false
  901.                 g_bDeimosboss[id] = false
  902.                 g_bLockerz[id] = false
  903.                 g_bMon_Nemesis[id] = false
  904.                 g_bNightCrawler[id] = false
  905.                 g_bNightRider[id] = false
  906.                 g_bPoison[id] = false
  907.                 g_bPredator[id] = false
  908.                 g_bRaptor[id] = false
  909.                 g_bRealBoss[id] = false
  910.                 g_bReplican[id] = false
  911.                 g_bTerminator[id] = true
  912.                 rg_set_user_model(id, "terminator_zom")
  913.                 ze_colored_print(id, "You picked the Terminator skin", id)
  914.                 g_iUsedTimes[id]++
  915.             }            
  916.         }
  917.  
  918.     }    
  919.     menu_destroy(zmenu)
  920.     return PLUGIN_HANDLED
  921. }
  922.  
  923. public native_ze_open_zskin_menu(id)
  924. {
  925.     Show_Zmodel_Menu(id)
  926. }

User avatar
Raheem
Mod Developer
Mod Developer
Posts: 2214
Joined: 7 years ago
Contact:

#16

Post by Raheem » 5 years ago

For zombies you will need to set the players models whenever they infected.

We have two cases if they got infection from server---> First players choosen by server to be zombie i mean.
Another is if player infect another player.

You did it right except you are using user infected pre, which wrong as you set the models in pre and it's overriden in post. So what you should do is:
  • Code: Select all

    #include <zombie_escape>
    #include <ze_vip>
     
     
    #define PLUGIN "Custom zModel Menu"
    #define VERSION "1.0"
    #define AUTHOR "Mark"
     
    new const Butcher_Models[][] =
    {
        "models/player/butcher_zom/butcher_zom.mdl"
    }
     
    new const Doom_Models[][] =
    {
        "models/player/doom_zom/doom_zom.mdl"
    }
     
    new const Fleshpound_Models[][] =
    {
        "models/player/fleshpound_zom/fleshpound_zom.mdl"
    }
     
    new const Jumper_Models[][] =
    {
        "models/player/jumper_zom/jumper_zom.mdl"
    }
     
    new const Mon_Assassin_Models[][] =
    {
        "models/player/monster_assassin_zom/monster_assassin_zom.mdl"
    }
     
    new const Mon_Zom_Models[][] =
    {
        "models/player/monster_zom/monster_zom.mdl"
    }
     
    new const Abaddon_Models[][] =
    {
        "models/player/abaddon_zom/abaddon_zom.mdl"
    }
     
    new const Assassin_Zom_Models[][] =
    {
        "models/player/assassin_zom/assassin_zom.mdl"
    }
     
    new const Deimosboss_Models[][] =
    {
        "models/player/deimosboss_zom/deimosboss_zom.mdl"
    }
     
    new const Lockerz_Models[][] =
    {
        "models/player/lockerz_zom/lockerz_zom.mdl"
    }
     
    new const Mon_Nemesis_Models[][] =
    {
        "models/player/monster_nemesis_zom/monster_nemesis_zom.mdl"
    }
     
    new const NightCrawler_Models[][] =
    {
        "models/player/nightcrawler_zom/nightcrawler_zom.mdl"
    }
     
    new const NightRider_Models[][] =
    {
        "models/player/nightrider_zom/nightrider_zom.mdl"
    }
     
    new const Poison_Models[][] =
    {
        "models/player/poison_nshaman_zom/poison_nshaman_zom.mdl"
    }
     
    new const Predator_Models[][] =
    {
        "models/player/predator_zom/predator_zom.mdl"
    }
     
    new const Raptor_Models[][] =
    {
        "models/player/raptor_zom/raptor_zom.mdl"
    }
     
    new const RealBoss_Models[][] =
    {
        "models/player/realboss_zom/realboss_zom.mdl"
    }
     
    new const Replican_Models[][] =
    {
        "models/player/replican_fear_zom/replican_fear_zom.mdl"
    }
     
    new const Terminator_Models[][] =
    {
        "models/player/terminator_zom/terminator_zom.mdl"
    }
     
    new g_pCvarUseTimes
    new g_iUsedTimes[33]
     
    new bool:g_bButcher[33], bool:g_bDoom[33], bool:g_bFleshpound[33], bool:g_bJumper[33],
    bool:g_bMon_Assassin[33], bool:g_bMon_Zom[33], bool:g_bAbaddon[33], bool:g_bAssassin_Zom[33],
    bool:g_bDeimosboss[33], bool:g_bLockerz[33], bool:g_bMon_Nemesis[33], bool:g_bNightCrawler[33],
    bool:g_bNightRider[33], bool:g_bPoison[33],bool:g_bPredator[33], bool:g_bRaptor[33], bool:g_bRealBoss[33],
    bool:g_bReplican[33], bool:g_bTerminator[33]
     
     
    public plugin_natives()
    {
        register_native("ze_open_zskin_menu", "native_ze_open_zskin_menu", 1)
    }
     
    public plugin_precache()
    {
        new i
     
        for (i = 0; i <= charsmax(Butcher_Models); i++)
            precache_model(Butcher_Models[i])
     
        for (i = 0; i <= charsmax(Doom_Models); i++)
            precache_model(Doom_Models[i])
     
        for (i = 0; i <= charsmax(Fleshpound_Models); i++)
            precache_model(Fleshpound_Models[i])
     
        for (i = 0; i <= charsmax(Jumper_Models); i++)
            precache_model(Jumper_Models[i])
     
        for (i = 0; i <= charsmax(Mon_Assassin_Models); i++)
            precache_model(Mon_Assassin_Models[i])
     
        for (i = 0; i <= charsmax(Mon_Zom_Models); i++)
            precache_model(Mon_Zom_Models[i])
     
        for (i = 0; i <= charsmax(Abaddon_Models); i++)
            precache_model(Abaddon_Models[i])
     
        for (i = 0; i <= charsmax(Assassin_Zom_Models); i++)
            precache_model(Assassin_Zom_Models[i])
     
        for (i = 0; i <= charsmax(Deimosboss_Models); i++)
            precache_model(Deimosboss_Models[i])
     
        for (i = 0; i <= charsmax(Lockerz_Models); i++)
            precache_model(Lockerz_Models[i])
     
        for (i = 0; i <= charsmax(Mon_Nemesis_Models); i++)
            precache_model(Mon_Nemesis_Models[i])
     
        for (i = 0; i <= charsmax(NightCrawler_Models); i++)
            precache_model(NightCrawler_Models[i])
           
        for (i = 0; i <= charsmax(NightRider_Models); i++)
            precache_model(NightRider_Models[i])
     
        for (i = 0; i <= charsmax(Poison_Models); i++)
            precache_model(Poison_Models[i])
     
        for (i = 0; i <= charsmax(Predator_Models); i++)
            precache_model(Predator_Models[i])
     
        for (i = 0; i <= charsmax(Raptor_Models); i++)
            precache_model(Raptor_Models[i])
     
        for (i = 0; i <= charsmax(RealBoss_Models); i++)
            precache_model(RealBoss_Models[i])
     
        for (i = 0; i <= charsmax(Replican_Models); i++)
            precache_model(Replican_Models[i])
           
        for (i = 0; i <= charsmax(Terminator_Models); i++)
            precache_model(Terminator_Models[i])
    }
     
    public plugin_init()
    {
        register_plugin(PLUGIN, VERSION, AUTHOR)
        g_pCvarUseTimes = register_cvar("ze_hskin_menu_used", "1")
    }
    
    public ze_user_infected(Victim)
    {
        if (g_bButcher[Victim])
        {
            rg_set_user_model(Victim, "butcher_zom")
        }
        else if (g_bDoom[Victim])
        {
            rg_set_user_model(Victim, "doom_zom")
        }
        else if (g_bFleshpound[Victim])
        {
            rg_set_user_model(Victim, "fleshpound_zom")
        }
        else if (g_bJumper[Victim])
        {
            rg_set_user_model(Victim, "jumper_zom")
        }
        else if (g_bMon_Assassin[Victim])
        {
            rg_set_user_model(Victim, "monster_assassin_zom")
        }
        else if (g_bMon_Zom[Victim])
        {
            rg_set_user_model(Victim, "monster_zom")
        }
        else if (g_bAbaddon[Victim])
        {
            rg_set_user_model(Victim, "abaddon_zom")
        }
        else if (g_bAssassin_Zom[Victim])
        {
            rg_set_user_model(Victim, "assassin_zom")
        }
        else if (g_bDeimosboss[Victim])
        {
            rg_set_user_model(Victim, "deimosboss_zom")
        }
        else if (g_bLockerz[Victim])
        {
            rg_set_user_model(Victim, "lockerz_zom")
        }
        else if (g_bMon_Nemesis[Victim])
        {
            rg_set_user_model(Victim, "monster_nemesis_zom")
        }
        else if (g_bNightCrawler[Victim])
        {
            rg_set_user_model(Victim, "nightcrawler_zom")
        }
        else if (g_bNightRider[Victim])
        {
            rg_set_user_model(Victim, "nightrider_zom")
        }
        else if (g_bPoison[Victim])
        {
            rg_set_user_model(Victim, "poison_nshaman_zom")
        }
        else if (g_bPredator[Victim])
        {
            rg_set_user_model(Victim, "predator_zom")
        }
        else if (g_bRaptor[Victim])
        {
            rg_set_user_model(Victim, "raptor_zom")
        }
        else if (g_bRealBoss[Victim])
        {
            rg_set_user_model(Victim, "realboss_zom")
        }
        else if (g_bReplican[Victim])
        {
            rg_set_user_model(Victim, "replican_fear_zom")
        }
        else if (g_bTerminator[Victim])
        {
            rg_set_user_model(Victim, "terminator_zom")
        }
    	
        g_iUsedTimes[Victim] = 0
    }
     
    public client_putinserver(id)
    {
        g_bButcher[id] = false
        g_bDoom[id] = false
        g_bFleshpound[id] = false
        g_bJumper[id] = false
        g_bMon_Assassin[id] = false
        g_bMon_Zom[id] = false
        g_bAbaddon[id] = false
        g_bAssassin_Zom[id] = false
        g_bDeimosboss[id] = false
        g_bLockerz[id] = false
        g_bMon_Nemesis[id] = false
        g_bNightCrawler[id] = false
        g_bNightRider[id] = false
        g_bPoison[id] = false
        g_bPredator[id] = false
        g_bRaptor[id] = false
        g_bRealBoss[id] = false
        g_bReplican[id] = false
        g_bTerminator[id] = false
        g_iUsedTimes[id] = 0
    }
     
    public client_disconnected(id)
    {
        g_bButcher[id] = false
        g_bDoom[id] = false
        g_bFleshpound[id] = false
        g_bJumper[id] = false
        g_bMon_Assassin[id] = false
        g_bMon_Zom[id] = false
        g_bAbaddon[id] = false
        g_bAssassin_Zom[id] = false
        g_bDeimosboss[id] = false
        g_bLockerz[id] = false
        g_bMon_Nemesis[id] = false
        g_bNightCrawler[id] = false
        g_bNightRider[id] = false
        g_bPoison[id] = false
        g_bPredator[id] = false
        g_bRaptor[id] = false
        g_bRealBoss[id] = false
        g_bReplican[id] = false
        g_bTerminator[id] = false
        g_iUsedTimes[id] = 0
    }
     
    public Show_Zmodel_Menu(id)
    {
        if (!is_user_connected(id))
        {
            return PLUGIN_CONTINUE
        }
     
        if (!ze_is_user_zombie(id))
        {
            ze_colored_print(id, "!tYou can't change your zombie skin while Human!y.")
            return PLUGIN_HANDLED
        }
     
        if (g_iUsedTimes[id] >= get_pcvar_num(g_pCvarUseTimes))
        {
            ze_colored_print(id, "!tMaximum have been reached !y[!g%d!y]!", get_pcvar_num(g_pCvarUseTimes))
            return PLUGIN_HANDLED
        }
     
        if (!is_user_alive(id))
        {
            ze_colored_print(id, "!tDead can't open menu!y.")
            return PLUGIN_HANDLED
        }
     
        Zmodel_Menu(id)
        return PLUGIN_CONTINUE
    }
     
    public Zmodel_Menu(id)
    {
        new zmenu = menu_create("\r[\wZombie Models\r]\r", "menu_zskins")
        menu_additem(zmenu, "\wButcher", "", 0)
        menu_additem(zmenu, "\wDoom", "", 0)
        menu_additem(zmenu, "\wFleshpound", "", 0)
        menu_additem(zmenu, "\wJumper", "", 0)
     
        if (ze_get_vip_flags(id) & VIP_A)
        {
            menu_additem(zmenu, "\wMonster Assassin\r[VIP]", "", 0)
            menu_additem(zmenu, "\wMonster\r[VIP]", "", 0)
            menu_additem(zmenu, "\wAbaddon\r[VIP]", "", 0)
            menu_additem(zmenu, "\wAssassin\r[VIP]", "", 0)
        }
     
        if (ze_get_vip_flags(id) & VIP_D)
        {
            menu_additem(zmenu, "\wDeimosboss \r[VIP+]", "", 0)
            menu_additem(zmenu, "\wLockerz \r[VIP+]", "", 0)
            menu_additem(zmenu, "\wMonster Nemesis \r[VIP+]", "", 0)
            menu_additem(zmenu, "\wNight Crawler \r[VIP+]", "", 0)
            menu_additem(zmenu, "\wNight Rider \r[VIP+]", "", 0)
        }
     
        if (ze_get_vip_flags(id) & VIP_E)
        {
            menu_additem(zmenu, "\wPoison \r[VIP++]", "", 0)
            menu_additem(zmenu, "\wPredator \r[VIP++]", "", 0)
            menu_additem(zmenu, "\wRaptor \r[VIP++]", "", 0)
            menu_additem(zmenu, "\wRealBoss \r[VIP++]", "", 0)
            menu_additem(zmenu, "\wReplican \r[VIP++]", "", 0)
            menu_additem(zmenu, "\wTerminator \r[VIP++]", "", 0)
        }
     
        menu_setprop(zmenu, MPROP_EXIT, MEXIT_ALL)
        menu_display(id, zmenu, 0)
    }
     
    public menu_zskins(id, zmenu, item)
    {
        if(!is_user_alive(id) || !ze_is_user_zombie(id))
            return PLUGIN_HANDLED
     
        switch(item)
        {
            case 0 : // Butcher
            {
                g_bButcher[id] = true
                g_bDoom[id] = false
                g_bFleshpound[id] = false
                g_bJumper[id] = false
                g_bMon_Assassin[id] = false
                g_bMon_Zom[id] = false
                g_bAbaddon[id] = false
                g_bAssassin_Zom[id] = false
                g_bDeimosboss[id] = false
                g_bLockerz[id] = false
                g_bMon_Nemesis[id] = false
                g_bNightCrawler[id] = false
                g_bNightRider[id] = false
                g_bPoison[id] = false
                g_bPredator[id] = false
                g_bRaptor[id] = false
                g_bRealBoss[id] = false
                g_bReplican[id] = false
                g_bTerminator[id] = false
                rg_set_user_model(id, "butcher_zom")
                ze_colored_print(id, "You picked the Butcher skin", id)
                g_iUsedTimes[id]++
            }
            case 1 : // Doom
            {
                g_bButcher[id] = false
                g_bDoom[id] = true
                g_bFleshpound[id] = false
                g_bJumper[id] = false
                g_bMon_Assassin[id] = false
                g_bMon_Zom[id] = false
                g_bAbaddon[id] = false
                g_bAssassin_Zom[id] = false
                g_bDeimosboss[id] = false
                g_bLockerz[id] = false
                g_bMon_Nemesis[id] = false
                g_bNightCrawler[id] = false
                g_bNightRider[id] = false
                g_bPoison[id] = false
                g_bPredator[id] = false
                g_bRaptor[id] = false
                g_bRealBoss[id] = false
                g_bReplican[id] = false
                g_bTerminator[id] = false
                rg_set_user_model(id, "doom_zom")
                ze_colored_print(id, "You picked the Doom skin", id)
                g_iUsedTimes[id]++
            }
            case 2 : // Fleshpound
            {
                g_bButcher[id] = false
                g_bDoom[id] = false
                g_bFleshpound[id] = true
                g_bJumper[id] = false
                g_bMon_Assassin[id] = false
                g_bMon_Zom[id] = false
                g_bAbaddon[id] = false
                g_bAssassin_Zom[id] = false
                g_bDeimosboss[id] = false
                g_bLockerz[id] = false
                g_bMon_Nemesis[id] = false
                g_bNightCrawler[id] = false
                g_bNightRider[id] = false
                g_bPoison[id] = false
                g_bPredator[id] = false
                g_bRaptor[id] = false
                g_bRealBoss[id] = false
                g_bReplican[id] = false
                g_bTerminator[id] = false
                rg_set_user_model(id, "fleshpound_zom")
                ze_colored_print(id, "You picked the Fleshpound skin", id)
                g_iUsedTimes[id]++
            }
            case 3 : // Jumper
            {
                g_bButcher[id] = false
                g_bDoom[id] = false
                g_bFleshpound[id] = false
                g_bJumper[id] = true
                g_bMon_Assassin[id] = false
                g_bMon_Zom[id] = false
                g_bAbaddon[id] = false
                g_bAssassin_Zom[id] = false
                g_bDeimosboss[id] = false
                g_bLockerz[id] = false
                g_bMon_Nemesis[id] = false
                g_bNightCrawler[id] = false
                g_bNightRider[id] = false
                g_bPoison[id] = false
                g_bPredator[id] = false
                g_bRaptor[id] = false
                g_bRealBoss[id] = false
                g_bReplican[id] = false
                g_bTerminator[id] = false
                rg_set_user_model(id, "jumper_zom")
                ze_colored_print(id, "You picked the Jumper skin", id)
                g_iUsedTimes[id]++
            }
            case 4 : // Mon_Assassin
            {
                if (ze_get_vip_flags(id) & VIP_A)
                {
                    g_bButcher[id] = false
                    g_bDoom[id] = false
                    g_bFleshpound[id] = false
                    g_bJumper[id] = false
                    g_bMon_Assassin[id] = true
                    g_bMon_Zom[id] = false
                    g_bAbaddon[id] = false
                    g_bAssassin_Zom[id] = false
                    g_bDeimosboss[id] = false
                    g_bLockerz[id] = false
                    g_bMon_Nemesis[id] = false
                    g_bNightCrawler[id] = false
                    g_bNightRider[id] = false
                    g_bPoison[id] = false
                    g_bPredator[id] = false
                    g_bRaptor[id] = false
                    g_bRealBoss[id] = false
                    g_bReplican[id] = false
                    g_bTerminator[id] = false
                    rg_set_user_model(id, "Mon_Assassin_zom")
                    ze_colored_print(id, "You picked the Monster Assassin skin", id)
                    g_iUsedTimes[id]++
                }
            }
            case 5 : // Mon_Zom
            {
                if (ze_get_vip_flags(id) & VIP_A)
                {
                    g_bButcher[id] = false
                    g_bDoom[id] = false
                    g_bFleshpound[id] = false
                    g_bJumper[id] = false
                    g_bMon_Assassin[id] = false
                    g_bMon_Zom[id] = true
                    g_bAbaddon[id] = false
                    g_bAssassin_Zom[id] = false
                    g_bDeimosboss[id] = false
                    g_bLockerz[id] = false
                    g_bMon_Nemesis[id] = false
                    g_bNightCrawler[id] = false
                    g_bNightRider[id] = false
                    g_bPoison[id] = false
                    g_bPredator[id] = false
                    g_bRaptor[id] = false
                    g_bRealBoss[id] = false
                    g_bReplican[id] = false
                    g_bTerminator[id] = false
                    rg_set_user_model(id, "monster_zom")
                    ze_colored_print(id, "You picked the Monster skin", id)
                    g_iUsedTimes[id]++
                }
            }
            case 6 : // Abaddon
            {
                if (ze_get_vip_flags(id) & VIP_A)
                {
                    g_bButcher[id] = false
                    g_bDoom[id] = false
                    g_bFleshpound[id] = false
                    g_bJumper[id] = false
                    g_bMon_Assassin[id] = false
                    g_bMon_Zom[id] = false
                    g_bAbaddon[id] = true
                    g_bAssassin_Zom[id] = false
                    g_bDeimosboss[id] = false
                    g_bLockerz[id] = false
                    g_bMon_Nemesis[id] = false
                    g_bNightCrawler[id] = false
                    g_bNightRider[id] = false
                    g_bPoison[id] = false
                    g_bPredator[id] = false
                    g_bRaptor[id] = false
                    g_bRealBoss[id] = false
                    g_bReplican[id] = false
                    g_bTerminator[id] = false
                    rg_set_user_model(id, "abaddon_zom")
                    ze_colored_print(id, "You picked the Abaddon skin", id)
                    g_iUsedTimes[id]++
                }
            }
            case 7 : // Assassin_Zom
            {
                if (ze_get_vip_flags(id) & VIP_A)
                {
                    g_bButcher[id] = false
                    g_bDoom[id] = false
                    g_bFleshpound[id] = false
                    g_bJumper[id] = false
                    g_bMon_Assassin[id] = false
                    g_bMon_Zom[id] = false
                    g_bAbaddon[id] = false
                    g_bAssassin_Zom[id] = true
                    g_bDeimosboss[id] = false
                    g_bLockerz[id] = false
                    g_bMon_Nemesis[id] = false
                    g_bNightCrawler[id] = false
                    g_bNightRider[id] = false
                    g_bPoison[id] = false
                    g_bPredator[id] = false
                    g_bRaptor[id] = false
                    g_bRealBoss[id] = false
                    g_bReplican[id] = false
                    g_bTerminator[id] = false
                    rg_set_user_model(id, "assassin_zom")
                    ze_colored_print(id, "You picked the Assassin skin", id)
                    g_iUsedTimes[id]++
                }
            }
            case 8 : // Deimosboss
            {      
                if (ze_get_vip_flags(id) & VIP_D)
                {
                    g_bButcher[id] = false
                    g_bDoom[id] = false
                    g_bFleshpound[id] = false
                    g_bJumper[id] = false
                    g_bMon_Assassin[id] = false
                    g_bMon_Zom[id] = false
                    g_bAbaddon[id] = false
                    g_bAssassin_Zom[id] = false
                    g_bDeimosboss[id] = true
                    g_bLockerz[id] = false
                    g_bMon_Nemesis[id] = false
                    g_bNightCrawler[id] = false
                    g_bNightRider[id] = false
                    g_bPoison[id] = false
                    g_bPredator[id] = false
                    g_bRaptor[id] = false
                    g_bRealBoss[id] = false
                    g_bReplican[id] = false
                    g_bTerminator[id] = false
                    rg_set_user_model(id, "deimosboss_zom")
                    ze_colored_print(id, "You picked the Deimosboss skin", id)
                    g_iUsedTimes[id]++
                }            
            }
            case 9 : // Lockerz
            {
                if (ze_get_vip_flags(id) & VIP_D)
                {
                    g_bButcher[id] = false
                    g_bDoom[id] = false
                    g_bFleshpound[id] = false
                    g_bJumper[id] = false
                    g_bMon_Assassin[id] = false
                    g_bMon_Zom[id] = false
                    g_bAbaddon[id] = false
                    g_bAssassin_Zom[id] = false
                    g_bDeimosboss[id] = false
                    g_bLockerz[id] = true
                    g_bMon_Nemesis[id] = false
                    g_bNightCrawler[id] = false
                    g_bNightRider[id] = false
                    g_bPoison[id] = false
                    g_bPredator[id] = false
                    g_bRaptor[id] = false
                    g_bRealBoss[id] = false
                    g_bReplican[id] = false
                    g_bTerminator[id] = false
                    rg_set_user_model(id, "lockerz_zom")
                    ze_colored_print(id, "You picked the Lockerz skin", id)
                    g_iUsedTimes[id]++
                }              
            }
            case 10 : // Monster Nemesis
            {
                if (ze_get_vip_flags(id) & VIP_D)
                {
                    g_bButcher[id] = false
                    g_bDoom[id] = false
                    g_bFleshpound[id] = false
                    g_bJumper[id] = false
                    g_bMon_Assassin[id] = false
                    g_bMon_Zom[id] = false
                    g_bAbaddon[id] = false
                    g_bAssassin_Zom[id] = false
                    g_bDeimosboss[id] = false
                    g_bLockerz[id] = false
                    g_bMon_Nemesis[id] = true
                    g_bNightCrawler[id] = false
                    g_bNightRider[id] = false
                    g_bPoison[id] = false
                    g_bPredator[id] = false
                    g_bRaptor[id] = false
                    g_bRealBoss[id] = false
                    g_bReplican[id] = false
                    g_bTerminator[id] = false
                    rg_set_user_model(id, "monster_nemesis_zom")
                    ze_colored_print(id, "You picked the Monster Nemesis skin", id)
                    g_iUsedTimes[id]++
                }            
            }
            case 11 : // Night Crawler
            {
                if (ze_get_vip_flags(id) & VIP_D)
                {
                    g_bButcher[id] = false
                    g_bDoom[id] = false
                    g_bFleshpound[id] = false
                    g_bJumper[id] = false
                    g_bMon_Assassin[id] = false
                    g_bMon_Zom[id] = false
                    g_bAbaddon[id] = false
                    g_bAssassin_Zom[id] = false
                    g_bDeimosboss[id] = false
                    g_bLockerz[id] = false
                    g_bMon_Nemesis[id] = false
                    g_bNightCrawler[id] = true
                    g_bNightRider[id] = false
                    g_bPoison[id] = false
                    g_bPredator[id] = false
                    g_bRaptor[id] = false
                    g_bRealBoss[id] = false
                    g_bReplican[id] = false
                    g_bTerminator[id] = false
                    rg_set_user_model(id, "nightcrawler_zom")
                    ze_colored_print(id, "You picked the NightCrawler skin", id)
                    g_iUsedTimes[id]++
                }                      
            }
            case 12 : //NightRider
            {
                if (ze_get_vip_flags(id) & VIP_D)
                {
                    g_bButcher[id] = false
                    g_bDoom[id] = false
                    g_bFleshpound[id] = false
                    g_bJumper[id] = false
                    g_bMon_Assassin[id] = false
                    g_bMon_Zom[id] = false
                    g_bAbaddon[id] = false
                    g_bAssassin_Zom[id] = false
                    g_bDeimosboss[id] = false
                    g_bLockerz[id] = false
                    g_bMon_Nemesis[id] = false
                    g_bNightCrawler[id] = false
                    g_bNightRider[id] = true
                    g_bPoison[id] = false
                    g_bPredator[id] = false
                    g_bRaptor[id] = false
                    g_bRealBoss[id] = false
                    g_bReplican[id] = false
                    g_bTerminator[id] = false
                    rg_set_user_model(id, "nightrider_zom")
                    ze_colored_print(id, "You picked the NightRider skin", id)
                    g_iUsedTimes[id]++
                }              
            }
            case 13 : // Poison
            {
                if (ze_get_vip_flags(id) & VIP_E)
                {
                    g_bButcher[id] = false
                    g_bDoom[id] = false
                    g_bFleshpound[id] = false
                    g_bJumper[id] = false
                    g_bMon_Assassin[id] = false
                    g_bMon_Zom[id] = false
                    g_bAbaddon[id] = false
                    g_bAssassin_Zom[id] = false
                    g_bDeimosboss[id] = false
                    g_bLockerz[id] = false
                    g_bMon_Nemesis[id] = false
                    g_bNightCrawler[id] = false
                    g_bNightRider[id] = false
                    g_bPoison[id] = true
                    g_bPredator[id] = false
                    g_bRaptor[id] = false
                    g_bRealBoss[id] = false
                    g_bReplican[id] = false
                    g_bTerminator[id] = false
                    rg_set_user_model(id, "poison_nshaman_zom")
                    ze_colored_print(id, "You picked the Poison skin", id)
                    g_iUsedTimes[id]++
                }      
            }
            case 14 : // Predator
            {
                if (ze_get_vip_flags(id) & VIP_E)
                {
                    g_bButcher[id] = false
                    g_bDoom[id] = false
                    g_bFleshpound[id] = false
                    g_bJumper[id] = false
                    g_bMon_Assassin[id] = false
                    g_bMon_Zom[id] = false
                    g_bAbaddon[id] = false
                    g_bAssassin_Zom[id] = false
                    g_bDeimosboss[id] = false
                    g_bLockerz[id] = false
                    g_bMon_Nemesis[id] = false
                    g_bNightCrawler[id] = false
                    g_bNightRider[id] = false
                    g_bPoison[id] = false
                    g_bPredator[id] = true
                    g_bRaptor[id] = false
                    g_bRealBoss[id] = false
                    g_bReplican[id] = false
                    g_bTerminator[id] = false
                    rg_set_user_model(id, "predator_zom")
                    ze_colored_print(id, "You picked the Predator skin", id)
                    g_iUsedTimes[id]++
                }            
            }
            case 15 : // Raptor
            {
                if (ze_get_vip_flags(id) & VIP_E)
                {
                    g_bButcher[id] = false
                    g_bDoom[id] = false
                    g_bFleshpound[id] = false
                    g_bJumper[id] = false
                    g_bMon_Assassin[id] = false
                    g_bMon_Zom[id] = false
                    g_bAbaddon[id] = false
                    g_bAssassin_Zom[id] = false
                    g_bDeimosboss[id] = false
                    g_bLockerz[id] = false
                    g_bMon_Nemesis[id] = false
                    g_bNightCrawler[id] = false
                    g_bNightRider[id] = false
                    g_bPoison[id] = false
                    g_bPredator[id] = false
                    g_bRaptor[id] = true
                    g_bRealBoss[id] = false
                    g_bReplican[id] = false
                    g_bTerminator[id] = false
                    rg_set_user_model(id, "raptor_zom")
                    ze_colored_print(id, "You picked the Raptor skin", id)
                    g_iUsedTimes[id]++
                }              
            }
            case 16 : // RealBoss
            {
                if (ze_get_vip_flags(id) & VIP_E)
                {
                    g_bButcher[id] = false
                    g_bDoom[id] = false
                    g_bFleshpound[id] = false
                    g_bJumper[id] = false
                    g_bMon_Assassin[id] = false
                    g_bMon_Zom[id] = false
                    g_bAbaddon[id] = false
                    g_bAssassin_Zom[id] = false
                    g_bDeimosboss[id] = false
                    g_bLockerz[id] = false
                    g_bMon_Nemesis[id] = false
                    g_bNightCrawler[id] = false
                    g_bNightRider[id] = false
                    g_bPoison[id] = false
                    g_bPredator[id] = false
                    g_bRaptor[id] = false
                    g_bRealBoss[id] = true
                    g_bReplican[id] = false
                    g_bTerminator[id] = false
                    rg_set_user_model(id, "realboss_zom")
                    ze_colored_print(id, "You picked the RealBoss skin", id)
                    g_iUsedTimes[id]++
                }          
            }
            case 17 : // Replican
            {
                if (ze_get_vip_flags(id) & VIP_E)
                {
                    g_bButcher[id] = false
                    g_bDoom[id] = false
                    g_bFleshpound[id] = false
                    g_bJumper[id] = false
                    g_bMon_Assassin[id] = false
                    g_bMon_Zom[id] = false
                    g_bAbaddon[id] = false
                    g_bAssassin_Zom[id] = false
                    g_bDeimosboss[id] = false
                    g_bLockerz[id] = false
                    g_bMon_Nemesis[id] = false
                    g_bNightCrawler[id] = false
                    g_bNightRider[id] = false
                    g_bPoison[id] = false
                    g_bPredator[id] = false
                    g_bRaptor[id] = false
                    g_bRealBoss[id] = false
                    g_bReplican[id] = true
                    g_bTerminator[id] = false
                    rg_set_user_model(id, "replican_fear_zom")
                    ze_colored_print(id, "You picked the Replican skin", id)
                    g_iUsedTimes[id]++
                }            
            }
            case 18 : // Terminator
            {
                if (ze_get_vip_flags(id) & VIP_E)
                {
                    g_bButcher[id] = false
                    g_bDoom[id] = false
                    g_bFleshpound[id] = false
                    g_bJumper[id] = false
                    g_bMon_Assassin[id] = false
                    g_bMon_Zom[id] = false
                    g_bAbaddon[id] = false
                    g_bAssassin_Zom[id] = false
                    g_bDeimosboss[id] = false
                    g_bLockerz[id] = false
                    g_bMon_Nemesis[id] = false
                    g_bNightCrawler[id] = false
                    g_bNightRider[id] = false
                    g_bPoison[id] = false
                    g_bPredator[id] = false
                    g_bRaptor[id] = false
                    g_bRealBoss[id] = false
                    g_bReplican[id] = false
                    g_bTerminator[id] = true
                    rg_set_user_model(id, "terminator_zom")
                    ze_colored_print(id, "You picked the Terminator skin", id)
                    g_iUsedTimes[id]++
                }            
            }
     
        }    
        menu_destroy(zmenu)
        return PLUGIN_HANDLED
    }
     
    public native_ze_open_zskin_menu(id)
    {
        Show_Zmodel_Menu(id)
    }
Again you must make sure that this plugin name to be at the end of the plugins-zombie_escape.ini, why i always say this?
I say this because ze_resources plugin set players models at user humanized and user infected so it should be like:
  • Code: Select all

    // Here ze_resources.amxx it will be called first and user models will be set before any plugin under it load
    ze_resources.amxx
    
    // Your plugins under it will be called after it's called and will override the models set by ze_resources
    human_models_menu.amxx
    zombie_models_menu.amxx
RapidFlush wrote: 5 years agoAlso why don't you have a donation link on website?
Just right now we don't need donations as everythings OK, you may support us by telling others about Mod, running the mod and report bugs.
He who fails to plan is planning to fail

User avatar
Mark
VIP
VIP
United States of America
Posts: 283
Joined: 5 years ago
Location: Des Moines/USA
Contact:

#17

Post by Mark » 5 years ago

If i wanted to have custom hands with these models how would i do this can you add an example to the code above im sure ill figure the rest out.

User avatar
Raheem
Mod Developer
Mod Developer
Posts: 2214
Joined: 7 years ago
Contact:

#18

Post by Raheem » 5 years ago

We are using cs_weap_models_api.amxx for this, we updated this plugin to use ReAPI natives. This plugin is very simple in using that's why we are using. Same for you it's recommended to use it.

Example of using it (setting v_/p_ models):
    1. cs_set_player_view_model(id, CSW_KNIFE, "models/v_knife.mdl")
    2. cs_set_player_weap_model(id, CSW_KNIFE, "models/p_knife.mdl")
If you don't like to use this API, you can use item deploy method or current weapon.
He who fails to plan is planning to fail

User avatar
Mark
VIP
VIP
United States of America
Posts: 283
Joined: 5 years ago
Location: Des Moines/USA
Contact:

#19

Post by Mark » 5 years ago

Would this work?
  1. new const Terminator_Models[][] =
  2. {
  3.     "models/player/terminator_zom/terminator_zom.mdl"
  4.     "models/v_knife.mdl"
  5.     "models/p_knife.mdl"
  6. }
  1.     else if (g_bTerminator[Victim])
  2.     {
  3.         rg_set_user_model(Victim, "terminator_zom")
  4.         cs_set_player_view_model(Victim, CSW_KNIFE, "models/v_knife.mdl")
  5.         cs_set_player_weap_model(Victim, CSW_KNIFE, "models/p_knife.mdl")
  6.     }
Then with the bool it should set it right?

User avatar
Raheem
Mod Developer
Mod Developer
Posts: 2214
Joined: 7 years ago
Contact:

#20

Post by Raheem » 5 years ago

Will work if placed in zombie infection event.
He who fails to plan is planning to fail

User avatar
Mark
VIP
VIP
United States of America
Posts: 283
Joined: 5 years ago
Location: Des Moines/USA
Contact:

#21

Post by Mark » 5 years ago

Raheem wrote: 5 years ago Will work if placed in zombie infection event.
Raheem

I tryed to add speed for the knifes the only issue im having is on freeze time if they select the knife they can freely move but if they put back the gun they are frozen again how can i fix this?
  1. public fw_PlayerPreThink(id)
  2. {
  3.         if(!is_user_alive(id))
  4.                 return FMRES_IGNORED
  5.  
  6.         new weapon = get_user_weapon(id)
  7.  
  8.         if (weapon == CSW_KNIFE && g_bCompat[id])
  9.         {              
  10.                 if ((pev(id, pev_button) & IN_JUMP) && !(pev(id, pev_oldbuttons) & IN_JUMP))
  11.                 {
  12.                     new flags = pev(id, pev_flags)
  13.                     new waterlvl = pev(id, pev_waterlevel)
  14.                    
  15.                     if (!(flags & FL_ONGROUND))
  16.                             return FMRES_IGNORED
  17.  
  18.                     if (flags & FL_WATERJUMP)
  19.                             return FMRES_IGNORED
  20.  
  21.                     if (waterlvl > 1)
  22.                             return FMRES_IGNORED
  23.  
  24.                     new Float:fVelocity[ 3 ]
  25.                     pev( id , pev_velocity , fVelocity )
  26.    
  27.                     fVelocity[ 2 ] += 325
  28.  
  29.                     set_pev( id , pev_velocity , fVelocity )
  30.  
  31.                     set_pev(id, pev_gaitsequence, 6)
  32.                 }
  33.                 set_user_maxspeed(id,get_pcvar_float(cvar_speed_combat))
  34.         }
  35.        
  36.         if(weapon == CSW_KNIFE && g_bStrong[id])
  37.         {    
  38.                 if ((pev(id, pev_button) & IN_JUMP) && !(pev(id, pev_oldbuttons) & IN_JUMP))
  39.                 {
  40.                     new flags = pev(id, pev_flags)
  41.                     new waterlvl = pev(id, pev_waterlevel)
  42.                    
  43.                     if (!(flags & FL_ONGROUND))
  44.                             return FMRES_IGNORED
  45.  
  46.                     if (flags & FL_WATERJUMP)
  47.                             return FMRES_IGNORED
  48.  
  49.                     if (waterlvl > 1)
  50.                             return FMRES_IGNORED
  51.  
  52.                     new Float:fVelocity[ 3 ]
  53.                     pev( id , pev_velocity , fVelocity )
  54.    
  55.                     fVelocity[ 2 ] += 320
  56.  
  57.                     set_pev( id , pev_velocity , fVelocity )
  58.                    
  59.                     set_pev(id, pev_gaitsequence, 6)
  60.                 }
  61.                 set_user_maxspeed(id,get_pcvar_float(cvar_speed_strong))                                
  62.         }
  63.  
  64.         if(weapon == CSW_KNIFE && g_bKatana[id])  
  65.         {    
  66.                 if ((pev(id, pev_button) & IN_JUMP) && !(pev(id, pev_oldbuttons) & IN_JUMP))
  67.                 {
  68.                     new flags = pev(id, pev_flags)
  69.                     new waterlvl = pev(id, pev_waterlevel)
  70.                    
  71.                     if (!(flags & FL_ONGROUND))
  72.                             return FMRES_IGNORED
  73.  
  74.                     if (flags & FL_WATERJUMP)
  75.                             return FMRES_IGNORED
  76.  
  77.                     if (waterlvl > 1)
  78.                             return FMRES_IGNORED
  79.  
  80.                     new Float:fVelocity[ 3 ]
  81.                     pev( id , pev_velocity , fVelocity )
  82.    
  83.                     fVelocity[ 2 ] += 320
  84.  
  85.                     set_pev( id , pev_velocity , fVelocity )
  86.                    
  87.                     set_pev(id, pev_gaitsequence, 6)
  88.                 }
  89.                
  90.                 set_user_maxspeed(id,get_pcvar_float(cvar_speed_katana))  
  91.         }
  92.         if (weapon == CSW_KNIFE && g_bHammer[id])
  93.         {
  94.                 if ((pev(id, pev_button) & IN_JUMP) && !(pev(id, pev_oldbuttons) & IN_JUMP))
  95.                 {
  96.                     new flags = pev(id, pev_flags)
  97.                     new waterlvl = pev(id, pev_waterlevel)
  98.                    
  99.                     if (!(flags & FL_ONGROUND))
  100.                             return FMRES_IGNORED
  101.  
  102.                     if (flags & FL_WATERJUMP)
  103.                             return FMRES_IGNORED
  104.  
  105.                     if (waterlvl > 1)
  106.                             return FMRES_IGNORED
  107.  
  108.                     new Float:fVelocity[ 3 ]
  109.                     pev( id , pev_velocity , fVelocity )
  110.    
  111.                     fVelocity[ 2 ] += 345
  112.  
  113.                     set_pev( id , pev_velocity , fVelocity )
  114.                    
  115.                     set_pev(id, pev_gaitsequence, 6)
  116.                 }
  117.                
  118.                 set_user_maxspeed(id, get_pcvar_float(cvar_speed_hammer))
  119.         }
  120.         if (weapon == CSW_KNIFE && g_bTurbulent9[id])
  121.         {
  122.                 if ((pev(id, pev_button) & IN_JUMP) && !(pev(id, pev_oldbuttons) & IN_JUMP))
  123.                 {
  124.                     new flags = pev(id, pev_flags)
  125.                     new waterlvl = pev(id, pev_waterlevel)
  126.                    
  127.                     if (!(flags & FL_ONGROUND))
  128.                             return FMRES_IGNORED
  129.  
  130.                     if (flags & FL_WATERJUMP)
  131.                             return FMRES_IGNORED
  132.  
  133.                     if (waterlvl > 1)
  134.                             return FMRES_IGNORED
  135.  
  136.                     new Float:fVelocity[ 3 ]
  137.                     pev( id , pev_velocity , fVelocity )
  138.    
  139.                     fVelocity[ 2 ] += 345
  140.  
  141.                     set_pev( id , pev_velocity , fVelocity )
  142.                    
  143.                     set_pev(id, pev_gaitsequence, 6)
  144.                 }
  145.                
  146.                 set_user_maxspeed(id, get_pcvar_float(cvar_speed_turb))
  147.         }
  148.         if (weapon == CSW_KNIFE && g_bBio[id])
  149.         {
  150.                 if ((pev(id, pev_button) & IN_JUMP) && !(pev(id, pev_oldbuttons) & IN_JUMP))
  151.                 {
  152.                     new flags = pev(id, pev_flags)
  153.                     new waterlvl = pev(id, pev_waterlevel)
  154.                    
  155.                     if (!(flags & FL_ONGROUND))
  156.                             return FMRES_IGNORED
  157.  
  158.                     if (flags & FL_WATERJUMP)
  159.                             return FMRES_IGNORED
  160.  
  161.                     if (waterlvl > 1)
  162.                             return FMRES_IGNORED
  163.  
  164.                     new Float:fVelocity[ 3 ]
  165.                     pev( id , pev_velocity , fVelocity )
  166.    
  167.                     fVelocity[ 2 ] += 345
  168.  
  169.                     set_pev( id , pev_velocity , fVelocity )
  170.                    
  171.                     set_pev(id, pev_gaitsequence, 6)
  172.                 }
  173.                
  174.                 set_user_maxspeed(id, get_pcvar_float(cvar_speed_bio))
  175.         }
  176.         if (weapon == CSW_KNIFE && g_bSabers[id])
  177.         {
  178.                 if ((pev(id, pev_button) & IN_JUMP) && !(pev(id, pev_oldbuttons) & IN_JUMP))
  179.                 {
  180.                     new flags = pev(id, pev_flags)
  181.                     new waterlvl = pev(id, pev_waterlevel)
  182.                    
  183.                     if (!(flags & FL_ONGROUND))
  184.                             return FMRES_IGNORED
  185.  
  186.                     if (flags & FL_WATERJUMP)
  187.                             return FMRES_IGNORED
  188.  
  189.                     if (waterlvl > 1)
  190.                             return FMRES_IGNORED
  191.  
  192.                     new Float:fVelocity[ 3 ]
  193.                     pev( id , pev_velocity , fVelocity )
  194.    
  195.                     fVelocity[ 2 ] += 345
  196.  
  197.                     set_pev( id , pev_velocity , fVelocity )
  198.                    
  199.                     set_pev(id, pev_gaitsequence, 6)
  200.                 }
  201.                
  202.                 set_user_maxspeed(id, get_pcvar_float(cvar_speed_sabers))
  203.         }
  204.         if (weapon == CSW_KNIFE && g_bPlasma[id])
  205.         {
  206.                 if ((pev(id, pev_button) & IN_JUMP) && !(pev(id, pev_oldbuttons) & IN_JUMP))
  207.                 {
  208.                     new flags = pev(id, pev_flags)
  209.                     new waterlvl = pev(id, pev_waterlevel)
  210.                    
  211.                     if (!(flags & FL_ONGROUND))
  212.                             return FMRES_IGNORED
  213.  
  214.                     if (flags & FL_WATERJUMP)
  215.                             return FMRES_IGNORED
  216.  
  217.                     if (waterlvl > 1)
  218.                             return FMRES_IGNORED
  219.  
  220.                     new Float:fVelocity[ 3 ]
  221.                     pev( id , pev_velocity , fVelocity )
  222.    
  223.                     fVelocity[ 2 ] += 357
  224.  
  225.                     set_pev( id , pev_velocity , fVelocity )
  226.                    
  227.                     set_pev(id, pev_gaitsequence, 6)
  228.                 }
  229.                 set_user_maxspeed(id, get_pcvar_float(cvar_speed_plasma))
  230.         }
  231.         if (weapon == CSW_KNIFE && g_bStorm[id])
  232.         {
  233.                 if ((pev(id, pev_button) & IN_JUMP) && !(pev(id, pev_oldbuttons) & IN_JUMP))
  234.                 {
  235.                     new flags = pev(id, pev_flags)
  236.                     new waterlvl = pev(id, pev_waterlevel)
  237.                    
  238.                     if (!(flags & FL_ONGROUND))
  239.                             return FMRES_IGNORED
  240.  
  241.                     if (flags & FL_WATERJUMP)
  242.                             return FMRES_IGNORED
  243.  
  244.                     if (waterlvl > 1)
  245.                             return FMRES_IGNORED
  246.  
  247.                     new Float:fVelocity[ 3 ]
  248.                     pev( id , pev_velocity , fVelocity )
  249.    
  250.                     fVelocity[ 2 ] += 357
  251.  
  252.                     set_pev( id , pev_velocity , fVelocity )
  253.                    
  254.                     set_pev(id, pev_gaitsequence, 6)
  255.                 }
  256.                 set_user_maxspeed(id, get_pcvar_float(cvar_speed_storm))
  257.         }
  258.         if (weapon == CSW_KNIFE && g_bLaevateinn[id])
  259.         {
  260.                 if ((pev(id, pev_button) & IN_JUMP) && !(pev(id, pev_oldbuttons) & IN_JUMP))
  261.                 {
  262.                     new flags = pev(id, pev_flags)
  263.                     new waterlvl = pev(id, pev_waterlevel)
  264.                    
  265.                     if (!(flags & FL_ONGROUND))
  266.                             return FMRES_IGNORED
  267.  
  268.                     if (flags & FL_WATERJUMP)
  269.                             return FMRES_IGNORED
  270.  
  271.                     if (waterlvl > 1)
  272.                             return FMRES_IGNORED
  273.  
  274.                     new Float:fVelocity[ 3 ]
  275.                     pev( id , pev_velocity , fVelocity )
  276.    
  277.                     fVelocity[ 2 ] += 357
  278.  
  279.                     set_pev( id , pev_velocity , fVelocity )
  280.                    
  281.                     set_pev(id, pev_gaitsequence, 6)
  282.                 }
  283.                 set_user_maxspeed(id, get_pcvar_float(cvar_speed_laevat))
  284.         }
  285.         if (weapon == CSW_KNIFE && g_bWarHammer_Dark_Knight[id])
  286.         {
  287.                 if ((pev(id, pev_button) & IN_JUMP) && !(pev(id, pev_oldbuttons) & IN_JUMP))
  288.                 {
  289.                     new flags = pev(id, pev_flags)
  290.                     new waterlvl = pev(id, pev_waterlevel)
  291.                    
  292.                     if (!(flags & FL_ONGROUND))
  293.                             return FMRES_IGNORED
  294.  
  295.                     if (flags & FL_WATERJUMP)
  296.                             return FMRES_IGNORED
  297.  
  298.                     if (waterlvl > 1)
  299.                             return FMRES_IGNORED
  300.  
  301.                     new Float:fVelocity[ 3 ]
  302.                     pev( id , pev_velocity , fVelocity )
  303.    
  304.                     fVelocity[ 2 ] += 357
  305.  
  306.                     set_pev( id , pev_velocity , fVelocity )
  307.                    
  308.                     set_pev(id, pev_gaitsequence, 6)
  309.                 }
  310.                 set_user_maxspeed(id, get_pcvar_float(cvar_speed_darknight))
  311.         }
  312.         if (weapon == CSW_KNIFE && g_bBalrog_Kosa[id])
  313.         {
  314.                 if ((pev(id, pev_button) & IN_JUMP) && !(pev(id, pev_oldbuttons) & IN_JUMP))
  315.                 {
  316.                     new flags = pev(id, pev_flags)
  317.                     new waterlvl = pev(id, pev_waterlevel)
  318.                    
  319.                     if (!(flags & FL_ONGROUND))
  320.                             return FMRES_IGNORED
  321.  
  322.                     if (flags & FL_WATERJUMP)
  323.                             return FMRES_IGNORED
  324.  
  325.                     if (waterlvl > 1)
  326.                             return FMRES_IGNORED
  327.  
  328.                     new Float:fVelocity[ 3 ]
  329.                     pev( id , pev_velocity , fVelocity )
  330.    
  331.                     fVelocity[ 2 ] += 357
  332.  
  333.                     set_pev( id , pev_velocity , fVelocity )
  334.                    
  335.                     set_pev(id, pev_gaitsequence, 6)
  336.                 }
  337.                 set_user_maxspeed(id, get_pcvar_float(cvar_speed_kosa))
  338.         }
  339.        
  340.     return FMRES_IGNORED
  341. }  

User avatar
Raheem
Mod Developer
Mod Developer
Posts: 2214
Joined: 7 years ago
Contact:

#22

Post by Raheem » 5 years ago

Using forwards we will block it in specific time, you will add:

  1. new bool:g_bNoSpeed
  2.  
  3. public ze_game_started()
  4. {
  5.     g_bNoSpeed = true
  6. }
  7.  
  8. public ze_zombie_release()
  9. {
  10.     g_bNoSpeed = false
  11. }

Then edit in your code this check: TO:
    1.         if(!is_user_alive(id) || g_bNoSpeed)
    2.                 return FMRES_IGNORED
He who fails to plan is planning to fail

User avatar
Mark
VIP
VIP
United States of America
Posts: 283
Joined: 5 years ago
Location: Des Moines/USA
Contact:

#23

Post by Mark » 5 years ago

Raheem wrote: 5 years ago Using forwards we will block it in specific time, you will add:

  1. new bool:g_bNoSpeed
  2.  
  3. public ze_game_started()
  4. {
  5.     g_bNoSpeed = true
  6. }
  7.  
  8. public ze_zombie_release()
  9. {
  10.     g_bNoSpeed = false
  11. }

Then edit in your code this check: TO:
    1.         if(!is_user_alive(id) || g_bNoSpeed)
    2.                 return FMRES_IGNORED
Heres the issue im facing now look in image for different weapons.

When have nade 300 speed
20180908081935_1.jpg
when have knife 300 speed
20180908081929_1.jpg
when have deagle 270 speed
20180908081923_1.jpg
when have primary 250 speed
20180908081912_1.jpg
I understand with primary weapon you run slower by default how can i change the nade to 270
if happens when i switch from knife to nade or knife to deagle speed stays at 300

User avatar
Raheem
Mod Developer
Mod Developer
Posts: 2214
Joined: 7 years ago
Contact:

#24

Post by Raheem » 5 years ago

EDIT: I misunderstand you, one thing to know is that speed of knife = grenades = pistols.

Optimization for you:

You can better hook the ResetMaxSpeed event via reapi and set their the speed in case of some cases. If user changed weapon, it will back to normal i think.

Here an optimized code example, i used reapi over it's all (Recommended to do in all ur cases):

  1. RegisterHookChain(RG_CBasePlayer_ResetMaxSpeed, "Fw_RestMaxSpeed_Post", 1)
  2.  
  3. public Fw_RestMaxSpeed_Post(id)
  4. {
  5.     new iWpnId = get_user_weapon(id)
  6.    
  7.     if (iWpnId == CSW_KNIFE && g_bCompat[id])
  8.     {
  9.         if ((get_entvar(id, var_button) & IN_JUMP) && !(get_entvar(id, var_oldbuttons) & IN_JUMP))
  10.         {
  11.             new iFlags = get_entvar(id, var_flags);
  12.             new iWaterlvl = get_entvar(id, var_waterlevel)
  13.            
  14.             if (!(iFlags & FL_ONGROUND))
  15.                 return HAM_IGNORED
  16.  
  17.             if (iFlags & FL_WATERJUMP)
  18.                 return HAM_IGNORED
  19.  
  20.             if (iWaterlvl > 1)
  21.                 return HAM_IGNORED
  22.            
  23.             new Float:flVelocity[3]
  24.             get_entvar(id , var_velocity , flVelocity)
  25.  
  26.             flVelocity[2] += 325
  27.  
  28.             set_entvar(id , var_velocity , flVelocity)
  29.  
  30.             set_entvar(id, var_gaitsequence, 6)
  31.         }
  32.        
  33.         set_entvar(id, var_maxspeed, get_pcvar_float(cvar_speed_combat))
  34.     }
  35.    
  36.     return HAM_IGNORED
  37. }
Last edited by Raheem 5 years ago, edited 1 time in total.
Reason: Misunderstanding
He who fails to plan is planning to fail

User avatar
Mark
VIP
VIP
United States of America
Posts: 283
Joined: 5 years ago
Location: Des Moines/USA
Contact:

#25

Post by Mark » 5 years ago

let me check
Last edited by Mark 5 years ago, edited 1 time in total.

User avatar
Raheem
Mod Developer
Mod Developer
Posts: 2214
Joined: 7 years ago
Contact:

#26

Post by Raheem » 5 years ago

If you got the knife, you will get it's speed? And what if you changed to ak47? your speed now?
He who fails to plan is planning to fail

User avatar
Mark
VIP
VIP
United States of America
Posts: 283
Joined: 5 years ago
Location: Des Moines/USA
Contact:

#27

Post by Mark » 5 years ago

Raheem wrote: 5 years ago If you got the knife, you will get it's speed? And what if you changed to ak47? your speed now?
20180908124953_1.jpg
20180908125001_1.jpg
20180908125013_1.jpg
20180908125019_1.jpg
  1. #include <zombie_escape>
  2. #include <engine>
  3. #include <fun>
  4. #include <ze_vip>
  5.  
  6. // Models
  7. new const Compat_Models[][] =
  8. {
  9.     "models/zombie_escape/v_combat_knife.mdl",
  10.     "models/zombie_escape/p_combat_knife.mdl"
  11. }
  12.  
  13. new const Strong_Models[][] =
  14. {
  15.     "models/zombie_escape/v_strong_knife.mdl",
  16.     "models/zombie_escape/p_strong_knife.mdl"
  17. }
  18.  
  19. new const Katana_Models[][] =
  20. {
  21.     "models/zombie_escape/v_katana_knife.mdl",
  22.     "models/zombie_escape/p_katana_knife.mdl"
  23. }
  24.  
  25. new const Hammer_Models[][] =
  26. {
  27.     "models/zombie_escape/v_hammer_knife.mdl",
  28.     "models/zombie_escape/p_hammer_knife.mdl"
  29. }
  30.  
  31. new const Turbulent9_Models[][] =
  32. {
  33.     "models/zombie_escape/v_turbulent9_knife.mdl",
  34.     "models/zombie_escape/p_turbulent9_knife.mdl"
  35. }
  36.  
  37. new const Bio_Models[][] =
  38. {
  39.     "models/zombie_escape/v_bio_knife.mdl",
  40.     "models/zombie_escape/p_bio_knife.mdl"
  41. }
  42.  
  43. new const Sabers_Models[][] =
  44. {
  45.     "models/zombie_escape/v_laser_knife.mdl",
  46.     "models/zombie_escape/p_laser_knife.mdl"
  47. }
  48.  
  49. new const Plasma_Models[][] =
  50. {
  51.     "models/zombie_escape/v_plasma_knife.mdl",
  52.     "models/zombie_escape/p_plasma_knife.mdl"
  53. }
  54.  
  55. new const Storm_Models[][] =
  56. {
  57.     "models/zombie_escape/v_storm_sword_knife.mdl",
  58.     "models/zombie_escape/p_storm_sword_knife.mdl"
  59. }
  60.  
  61. new const Laevateinn_Models[][] =
  62. {
  63.     "models/zombie_escape/v_laevateinn_knife.mdl",
  64.     "models/zombie_escape/p_laevateinn_knife.mdl"
  65. }
  66.  
  67. new const WarHammer_Dark_Knight_Models[][] =
  68. {
  69.     "models/zombie_escape/v_WarHammer_dark_knight_knife.mdl",
  70.     "models/zombie_escape/p_WarHammer_dark_knight_knife.mdl"
  71. }
  72.  
  73. new const Balrog_Kosa_Models[][] =
  74. {
  75.     "models/zombie_escape/v_balrog_kosa_knife.mdl",
  76.     "models/zombie_escape/p_balrog_kosa_knife.mdl"
  77. }
  78.  
  79. // Sounds
  80. new const g_sound_knife[] = "items/gunpickup2.wav"
  81.  
  82. new const combat_sounds[][] =
  83. {
  84.     "zombie_escape/knife_menu/combat_deploy.wav",
  85.     "zombie_escape/knife_menu/combat_hit.wav",
  86.     "zombie_escape/knife_menu/combat_hit.wav",
  87.     "zombie_escape/knife_menu/combat_hit.wav",
  88.     "zombie_escape/knife_menu/combat_hit.wav",
  89.     "zombie_escape/knife_menu/combat_hitwall.wav",
  90.     "zombie_escape/knife_menu/combat_slash.wav",
  91.     "zombie_escape/knife_menu/combat_slash.wav",
  92.     "zombie_escape/knife_menu/combat_stab.wav"
  93. }
  94.  
  95. new const strong_sounds[][] =
  96. {
  97.     "zombie_escape/knife_menu/strong_deploy.wav",
  98.     "zombie_escape/knife_menu/strong_hit.wav",
  99.     "zombie_escape/knife_menu/strong_hit.wav",
  100.     "zombie_escape/knife_menu/strong_hit.wav",
  101.     "zombie_escape/knife_menu/strong_hit.wav",
  102.     "zombie_escape/knife_menu/strong_hitwall.wav",
  103.     "zombie_escape/knife_menu/strong_slash.wav",
  104.     "zombie_escape/knife_menu/strong_slash.wav",
  105.     "zombie_escape/knife_menu/strong_stab.wav"
  106. }
  107.  
  108. new const katana_sounds[][] =
  109. {
  110.     "zombie_escape/knife_menu/katana_deploy.wav",
  111.     "zombie_escape/knife_menu/katana_hit.wav",
  112.     "zombie_escape/knife_menu/katana_hit.wav",
  113.     "zombie_escape/knife_menu/katana_hit.wav",
  114.     "zombie_escape/knife_menu/katana_hit.wav",
  115.     "zombie_escape/knife_menu/katana_hitwall.wav",
  116.     "zombie_escape/knife_menu/katana_slash.wav",
  117.     "zombie_escape/knife_menu/katana_slash.wav",
  118.     "zombie_escape/knife_menu/katana_stab.wav"
  119. }
  120.  
  121. new const hammer_sounds[][] =
  122. {
  123.     "zombie_escape/knife_menu/hammer_deploy.wav",
  124.     "zombie_escape/knife_menu/hammer_hit.wav",
  125.     "zombie_escape/knife_menu/hammer_hit.wav",
  126.     "zombie_escape/knife_menu/hammer_hit.wav",
  127.     "zombie_escape/knife_menu/hammer_hit.wav",
  128.     "zombie_escape/knife_menu/hammer_hitwall.wav",
  129.     "zombie_escape/knife_menu/hammer_slash.wav",
  130.     "zombie_escape/knife_menu/hammer_slash.wav",
  131.     "zombie_escape/knife_menu/hammer_stab.wav"
  132. }
  133.  
  134. new const turbulent9_sounds[][] =
  135. {
  136.     "zombie_escape/knife_menu/turbulent9_deploy.wav",
  137.     "zombie_escape/knife_menu/turbulent9_hit.wav",
  138.     "zombie_escape/knife_menu/turbulent9_hit.wav",
  139.     "zombie_escape/knife_menu/turbulent9_hit.wav",
  140.     "zombie_escape/knife_menu/turbulent9_hit.wav",
  141.     "zombie_escape/knife_menu/turbulent9_hitwall.wav",
  142.     "zombie_escape/knife_menu/turbulent9_slash.wav",
  143.     "zombie_escape/knife_menu/turbulent9_slash.wav",
  144.     "zombie_escape/knife_menu/turbulent9_stab.wav"
  145. }
  146.  
  147. new const bio_sounds[][] =
  148. {
  149.     "zombie_escape/knife_menu/bio_deploy.wav",
  150.     "zombie_escape/knife_menu/bio_hit.wav",
  151.     "zombie_escape/knife_menu/bio_hit.wav",
  152.     "zombie_escape/knife_menu/bio_hit.wav",
  153.     "zombie_escape/knife_menu/bio_hit.wav",
  154.     "zombie_escape/knife_menu/bio_hitwall.wav",
  155.     "zombie_escape/knife_menu/bio_slash.wav",
  156.     "zombie_escape/knife_menu/bio_slash.wav",
  157.     "zombie_escape/knife_menu/bio_stab.wav"
  158. }
  159.  
  160. new const sabers_sounds[][] =
  161. {
  162.     "zombie_escape/knife_menu/laser_deploy.wav",
  163.     "zombie_escape/knife_menu/laser_hit.wav",
  164.     "zombie_escape/knife_menu/laser_hit.wav",
  165.     "zombie_escape/knife_menu/laser_hit.wav",
  166.     "zombie_escape/knife_menu/laser_hit.wav",
  167.     "zombie_escape/knife_menu/laser_hitwall.wav",
  168.     "zombie_escape/knife_menu/laser_slash1.wav",
  169.     "zombie_escape/knife_menu/laser_slash2.wav",
  170.     "zombie_escape/knife_menu/laser_stab.wav"
  171. }
  172.  
  173. new const plasma_sounds[][] =
  174. {
  175.     "zombie_escape/knife_menu/plasma_deploy.wav",
  176.     "zombie_escape/knife_menu/plasma_hit.wav",
  177.     "zombie_escape/knife_menu/plasma_hit.wav",
  178.     "zombie_escape/knife_menu/plasma_hit.wav",
  179.     "zombie_escape/knife_menu/plasma_hit.wav",
  180.     "zombie_escape/knife_menu/plasma_hitwall.wav",
  181.     "zombie_escape/knife_menu/plasma_slash.wav",
  182.     "zombie_escape/knife_menu/plasma_slash.wav",
  183.     "zombie_escape/knife_menu/plasma_stab.wav"
  184. }
  185.  
  186. new const storm_sounds[][] =
  187. {
  188.     "zombie_escape/knife_menu/storm_sword_deploy.wav",
  189.     "zombie_escape/knife_menu/storm_sword_hit.wav",
  190.     "zombie_escape/knife_menu/storm_sword_hit.wav",
  191.     "zombie_escape/knife_menu/storm_sword_hit.wav",
  192.     "zombie_escape/knife_menu/storm_sword_hit.wav",
  193.     "zombie_escape/knife_menu/storm_sword_hitwall.wav",
  194.     "zombie_escape/knife_menu/storm_sword_slash.wav",
  195.     "zombie_escape/knife_menu/storm_sword_slash.wav",
  196.     "zombie_escape/knife_menu/storm_sword_stab.wav"
  197. }
  198.  
  199. new const laevateinn_sounds[][] =
  200. {
  201.     "zombie_escape/knife_menu/laevateinn_deploy.wav",
  202.     "zombie_escape/knife_menu/laevateinn_hit.wav",
  203.     "zombie_escape/knife_menu/laevateinn_hit.wav",
  204.     "zombie_escape/knife_menu/laevateinn_hit.wav",
  205.     "zombie_escape/knife_menu/laevateinn_hit.wav",
  206.     "zombie_escape/knife_menu/laevateinn_hitwall.wav",
  207.     "zombie_escape/knife_menu/laevateinn_slash.wav",
  208.     "zombie_escape/knife_menu/laevateinn_slash.wav",
  209.     "zombie_escape/knife_menu/laevateinn_stab.wav"
  210. }
  211.  
  212. new const warhammer_dark_knight_sounds[][] =
  213. {
  214.     "zombie_escape/knife_menu/WarHammer_dark_knight_deploy.wav",
  215.     "zombie_escape/knife_menu/WarHammer_dark_knight_hit.wav",
  216.     "zombie_escape/knife_menu/WarHammer_dark_knight_hit.wav",
  217.     "zombie_escape/knife_menu/WarHammer_dark_knight_hit.wav",
  218.     "zombie_escape/knife_menu/WarHammer_dark_knight_hit.wav",
  219.     "zombie_escape/knife_menu/WarHammer_dark_knight_hitwall.wav",
  220.     "zombie_escape/knife_menu/WarHammer_dark_knight_slash.wav",
  221.     "zombie_escape/knife_menu/WarHammer_dark_knight_slash.wav",
  222.     "zombie_escape/knife_menu/WarHammer_dark_knight_stab.wav"
  223. }
  224.  
  225. new const balrog_kosa_sounds[][] =
  226. {
  227.     "zombie_escape/knife_menu/balrog_kosa_deploy.wav",
  228.     "zombie_escape/knife_menu/balrog_kosa_hit.wav",
  229.     "zombie_escape/knife_menu/balrog_kosa_hit.wav",
  230.     "zombie_escape/knife_menu/balrog_kosa_hit.wav",
  231.     "zombie_escape/knife_menu/balrog_kosa_hit.wav",
  232.     "zombie_escape/knife_menu/balrog_kosa_hitwall.wav",
  233.     "zombie_escape/knife_menu/balrog_kosa_slash.wav",
  234.     "zombie_escape/knife_menu/balrog_kosa_slash.wav",
  235.     "zombie_escape/knife_menu/balrog_kosa_stab.wav"
  236. }
  237.  
  238. new const oldknife_sounds[][] =
  239. {
  240.     "weapons/knife_deploy1.wav",
  241.     "weapons/knife_hit1.wav",
  242.     "weapons/knife_hit2.wav",
  243.     "weapons/knife_hit3.wav",
  244.     "weapons/knife_hit4.wav",
  245.     "weapons/knife_hitwall1.wav",
  246.     "weapons/knife_slash1.wav",
  247.     "weapons/knife_slash2.wav",
  248.     "weapons/knife_stab.wav"
  249. }
  250.  
  251. new bool:g_bCompat[33], bool:g_bStrong[33], bool:g_bKatana[33], bool:g_bHammer[33], bool:g_bTurbulent9[33], bool:g_bBio[33], bool:g_bSabers[33], bool:g_bPlasma[33],
  252. bool:g_bStorm[33], bool:g_bLaevateinn[33], bool:g_bWarHammer_Dark_Knight[33], bool:g_bBalrog_Kosa[33], bool:g_bNoSpeed, g_iUsedTimes[33], g_pCvarUseTimes
  253.  
  254. new cvar_speed_compat
  255. new cvar_speed_strong
  256. new cvar_speed_katana
  257. new cvar_speed_hammer
  258. new cvar_speed_turb
  259. new cvar_speed_bio
  260. new cvar_speed_sabers
  261. new cvar_speed_plasma
  262. new cvar_speed_storm
  263. new cvar_speed_laevat
  264. new cvar_speed_darknight
  265. new cvar_speed_kosa
  266.  
  267. public plugin_precache()
  268. {
  269.     new i
  270.  
  271.     for (i = 0; i <= charsmax(Compat_Models); i++)
  272.         precache_model(Compat_Models[i])
  273.  
  274.     for (i = 0; i <= charsmax(Hammer_Models); i++)
  275.         precache_model(Hammer_Models[i])
  276.  
  277.     for (i = 0; i <= charsmax(Katana_Models); i++)
  278.         precache_model(Katana_Models[i])
  279.  
  280.     for (i = 0; i <= charsmax(Strong_Models); i++)
  281.         precache_model(Strong_Models[i])
  282.  
  283.     for (i = 0; i <= charsmax(Turbulent9_Models); i++)
  284.         precache_model(Turbulent9_Models[i])
  285.  
  286.     for (i = 0; i <= charsmax(Bio_Models); i++)
  287.         precache_model(Bio_Models[i])
  288.  
  289.     for (i = 0; i <= charsmax(Sabers_Models); i++)
  290.         precache_model(Sabers_Models[i])
  291.  
  292.     for (i = 0; i <= charsmax(Plasma_Models); i++)
  293.         precache_model(Plasma_Models[i])
  294.  
  295.     for (i = 0; i <= charsmax(Storm_Models); i++)
  296.         precache_model(Storm_Models[i])
  297.  
  298.     for (i = 0; i <= charsmax(Laevateinn_Models); i++)
  299.         precache_model(Laevateinn_Models[i])
  300.  
  301.     for (i = 0; i <= charsmax(WarHammer_Dark_Knight_Models); i++)
  302.         precache_model(WarHammer_Dark_Knight_Models[i])
  303.  
  304.     for (i = 0; i <= charsmax(Balrog_Kosa_Models); i++)
  305.         precache_model(Balrog_Kosa_Models[i])
  306.  
  307.     for (i = 0; i <= charsmax(combat_sounds); i++)
  308.         precache_sound(combat_sounds[i])
  309.  
  310.     for (i = 0; i <= charsmax(strong_sounds); i++)
  311.         precache_sound(strong_sounds[i])
  312.  
  313.     for (i = 0; i <= charsmax(katana_sounds); i++)
  314.         precache_sound(katana_sounds[i])
  315.  
  316.     for (i = 0; i <= charsmax(hammer_sounds); i++)
  317.         precache_sound(hammer_sounds[i])
  318.  
  319.     for (i = 0; i <= charsmax(turbulent9_sounds); i++)
  320.         precache_sound(turbulent9_sounds[i])
  321.  
  322.     for (i = 0; i <= charsmax(bio_sounds); i++)
  323.         precache_sound(bio_sounds[i])
  324.  
  325.     for (i = 0; i <= charsmax(sabers_sounds); i++)
  326.         precache_sound(sabers_sounds[i])
  327.  
  328.     for (i = 0; i <= charsmax(plasma_sounds); i++)
  329.         precache_sound(plasma_sounds[i])
  330.  
  331.     for (i = 0; i <= charsmax(storm_sounds); i++)
  332.         precache_sound(storm_sounds[i])
  333.  
  334.     for (i = 0; i <= charsmax(laevateinn_sounds); i++)
  335.         precache_sound(laevateinn_sounds[i])
  336.  
  337.     for (i = 0; i <= charsmax(warhammer_dark_knight_sounds); i++)
  338.         precache_sound(warhammer_dark_knight_sounds[i])
  339.  
  340.     for (i = 0; i <= charsmax(balrog_kosa_sounds); i++)
  341.         precache_sound(balrog_kosa_sounds[i])
  342.  
  343.     precache_sound(g_sound_knife)
  344. }
  345.  
  346. public plugin_natives()
  347. {
  348.     register_native("ze_open_knife_menu", "native_ze_open_knife_menu", 1)
  349. }
  350.  
  351. public plugin_init()
  352. {
  353.     register_plugin("[ZE] Addon: Knife Menu", "1.2", "Jack GamePlay")
  354.  
  355.     register_forward(FM_EmitSound, "fw_EmitSound")
  356.     register_forward(FM_PlayerPreThink, "fw_PlayerPreThink");
  357.  
  358.     register_event("CurWeapon", "CurrentWeapon", "be", "1=1")
  359.     RegisterHookChain(RG_CBasePlayer_ResetMaxSpeed, "Fw_RestMaxSpeed_Post", 1)
  360.    
  361.     g_pCvarUseTimes = register_cvar("ze_knife_menu_use_times", "1")
  362.  
  363.     register_message(get_user_msgid("DeathMsg"), "DeathMsg")
  364.  
  365.     register_clcmd("say /k", "Show_Knife_Menu")
  366.    
  367.     cvar_speed_compat = register_cvar("ze_compat_speed", "400.0")
  368.     cvar_speed_strong = register_cvar("ze_strong_speed", "270.0")
  369.     cvar_speed_katana = register_cvar("ze_katana_speed", "270.0")
  370.     cvar_speed_hammer = register_cvar("ze_hammer_speed", "270.0")
  371.     cvar_speed_turb = register_cvar("ze_turb_speed", "275.0")    
  372.     cvar_speed_bio = register_cvar("ze_bio_speed", "275.0")
  373.     cvar_speed_sabers = register_cvar("ze_sabers_speed", "275.0")
  374.     cvar_speed_plasma = register_cvar("ze_plasma_speed", "275.0")
  375.     cvar_speed_storm = register_cvar("ze_storm_speed", "280.0")    
  376.     cvar_speed_laevat = register_cvar("ze_laevat_speed", "280.0")  
  377.     cvar_speed_darknight = register_cvar("ze_darknight_speed", "280.0")
  378.     cvar_speed_kosa = register_cvar("ze_kosa_speed", "280.0")
  379. }
  380.  
  381. public ze_user_humanized(id)
  382. {
  383.     g_iUsedTimes[id] = 0
  384. }
  385.  
  386. public ze_user_infected(Victim)
  387. {
  388.     g_bCompat[Victim] = false
  389.     g_bStrong[Victim] = false
  390.     g_bKatana[Victim] = false
  391.     g_bHammer[Victim] = false
  392.     g_bTurbulent9[Victim] = false
  393.     g_bBio[Victim] = false
  394.     g_bSabers[Victim] = false
  395.     g_bPlasma[Victim] = false
  396.     g_bStorm[Victim] = false
  397.     g_bLaevateinn[Victim] = false
  398.     g_bWarHammer_Dark_Knight[Victim] = false
  399.     g_bBalrog_Kosa[Victim] = false
  400.     g_iUsedTimes[Victim] = 0
  401. }
  402.  
  403. public client_putinserver(id)
  404. {
  405.     g_bCompat[id] = false
  406.     g_bStrong[id] = false
  407.     g_bKatana[id] = false
  408.     g_bHammer[id] = false
  409.     g_bTurbulent9[id] = false
  410.     g_bBio[id] = false
  411.     g_bSabers[id] = false
  412.     g_bPlasma[id] = false
  413.     g_bStorm[id] = false
  414.     g_bLaevateinn[id] = false
  415.     g_bWarHammer_Dark_Knight[id] = false
  416.     g_bBalrog_Kosa[id] = false
  417.     g_iUsedTimes[id] = 0
  418. }
  419.  
  420. public client_disconnected(id)
  421. {
  422.     g_bCompat[id] = false
  423.     g_bStrong[id] = false
  424.     g_bKatana[id] = false
  425.     g_bHammer[id] = false
  426.     g_bTurbulent9[id] = false
  427.     g_bBio[id] = false
  428.     g_bSabers[id] = false
  429.     g_bPlasma[id] = false
  430.     g_bStorm[id] = false
  431.     g_bLaevateinn[id] = false
  432.     g_bWarHammer_Dark_Knight[id] = false
  433.     g_bBalrog_Kosa[id] = false
  434.     g_iUsedTimes[id] = 0
  435. }
  436.  
  437. public Show_Knife_Menu(id)
  438. {
  439.     if (!is_user_connected(id))
  440.         return PLUGIN_CONTINUE
  441.  
  442.     if (ze_is_user_zombie(id))
  443.     {
  444.         ze_colored_print(id, "!tZombies can't open knife menu!y.")
  445.         return PLUGIN_HANDLED
  446.     }
  447.  
  448.     if (g_iUsedTimes[id] >= get_pcvar_num(g_pCvarUseTimes))
  449.     {
  450.         ze_colored_print(id, "!tYou can only open knife menu !y[!g%dx!y] per round!", get_pcvar_num(g_pCvarUseTimes))
  451.         return PLUGIN_HANDLED
  452.     }
  453.  
  454.     if (!is_user_alive(id))
  455.     {
  456.         ze_colored_print(id, "!tDead can't open knife menu!y.")
  457.         return PLUGIN_HANDLED
  458.     }
  459.  
  460.     Knife_Menu(id)
  461.     return PLUGIN_CONTINUE
  462. }
  463.  
  464. public Knife_Menu(id)
  465. {
  466.     new iMenu = menu_create("\rChoose Your Knife\w:", "Menu_Handler")
  467.     menu_additem(iMenu, "\yCombat", "", 0)
  468.     menu_additem(iMenu, "\yStrong", "", 0)
  469.     menu_additem(iMenu, "\yKatana", "", 0)
  470.     menu_additem(iMenu, "\yHammer", "", 0)
  471.  
  472.     if (ze_get_vip_flags(id) & VIP_A)
  473.     {
  474.         menu_additem(iMenu, "\yTurbulent9 \r[VIP]", "", 0)
  475.         menu_additem(iMenu, "\yBio Hazard \r[VIP]", "", 0)
  476.     }
  477.    
  478.     if (ze_get_vip_flags(id) & VIP_B)
  479.     {
  480.         menu_additem(iMenu, "\ySabers \r[VIP+]", "", 0)
  481.         menu_additem(iMenu, "\yPlasma \r[VIP+]", "", 0)
  482.     }
  483.  
  484.     if (ze_get_vip_flags(id) & VIP_C)
  485.     {
  486.         menu_additem(iMenu, "\yStorm \r[VIP++]", "", 0)
  487.         menu_additem(iMenu, "\yLaevateinn \r[VIP++]", "", 0)
  488.         menu_additem(iMenu, "\yWarHammer Dark Night \r[VIP++]", "", 0)
  489.         menu_additem(iMenu, "\yBalrog Kosa \r[VIP++]", "", 0)
  490.     }
  491.  
  492.     menu_setprop(iMenu, MPROP_EXIT, MEXIT_ALL)
  493.     menu_display(id, iMenu, 0)
  494. }
  495.  
  496. public Menu_Handler(id, iMenu, iKey)
  497. {
  498.     if(!is_user_alive(id) || ze_is_user_zombie(id))
  499.         return PLUGIN_HANDLED
  500.        
  501.     switch(iKey)
  502.     {
  503.         case 0: // Compat
  504.         {
  505.             g_bCompat[id] = true
  506.             g_bStrong[id] = false
  507.             g_bKatana[id] = false
  508.             g_bHammer[id] = false
  509.             g_bTurbulent9[id] = false
  510.             g_bBio[id] = false
  511.             g_bSabers[id] = false
  512.             g_bPlasma[id] = false
  513.             g_bStorm[id] = false
  514.             g_bLaevateinn[id] = false
  515.             g_bWarHammer_Dark_Knight[id] = false
  516.             g_bBalrog_Kosa[id] = false
  517.             g_iUsedTimes[id]++
  518.             /*rg_remove_item(id, "weapon_knife")
  519.             rg_give_item(id, "weapon_knife", GT_APPEND)
  520.             engclient_cmd(id, "weapon_knife")
  521.             g_iUsedTimes[id]++
  522.             emit_sound(id, CHAN_BODY, g_sound_knife, 1.0, ATTN_NORM, 0, PITCH_NORM)*/
  523.         }
  524.         case 1: // Strong
  525.         {
  526.             g_bCompat[id] = false
  527.             g_bStrong[id] = true
  528.             g_bKatana[id] = false
  529.             g_bHammer[id] = false
  530.             g_bTurbulent9[id] = false
  531.             g_bBio[id] = false
  532.             g_bSabers[id] = false
  533.             g_bPlasma[id] = false
  534.             g_bStorm[id] = false
  535.             g_bLaevateinn[id] = false
  536.             g_bWarHammer_Dark_Knight[id] = false
  537.             g_bBalrog_Kosa[id] = false
  538.             g_iUsedTimes[id]++
  539.             /*rg_remove_item(id, "weapon_knife")
  540.             rg_give_item(id, "weapon_knife", GT_APPEND)
  541.             engclient_cmd(id, "weapon_knife")
  542.             g_iUsedTimes[id]++
  543.             emit_sound(id, CHAN_BODY, g_sound_knife, 1.0, ATTN_NORM, 0, PITCH_NORM)*/
  544.         }
  545.         case 2: // Katana
  546.         {
  547.             g_bCompat[id] = false
  548.             g_bStrong[id] = false
  549.             g_bKatana[id] = true
  550.             g_bHammer[id] = false
  551.             g_bTurbulent9[id] = false
  552.             g_bBio[id] = false
  553.             g_bSabers[id] = false
  554.             g_bPlasma[id] = false
  555.             g_bStorm[id] = false
  556.             g_bLaevateinn[id] = false
  557.             g_bWarHammer_Dark_Knight[id] = false
  558.             g_bBalrog_Kosa[id] = false
  559.             g_iUsedTimes[id]++
  560.             /*rg_remove_item(id, "weapon_knife")
  561.             rg_give_item(id, "weapon_knife", GT_APPEND)
  562.             engclient_cmd(id, "weapon_knife")
  563.             g_iUsedTimes[id]++
  564.             emit_sound(id, CHAN_BODY, g_sound_knife, 1.0, ATTN_NORM, 0, PITCH_NORM)*/
  565.         }
  566.         case 3: // Hammer
  567.         {
  568.             g_bCompat[id] = false
  569.             g_bStrong[id] = false
  570.             g_bKatana[id] = false
  571.             g_bHammer[id] = true
  572.             g_bTurbulent9[id] = false
  573.             g_bBio[id] = false
  574.             g_bSabers[id] = false
  575.             g_bPlasma[id] = false
  576.             g_bStorm[id] = false
  577.             g_bLaevateinn[id] = false
  578.             g_bWarHammer_Dark_Knight[id] = false
  579.             g_bBalrog_Kosa[id] = false
  580.             g_iUsedTimes[id]++
  581.             /*rg_remove_item(id, "weapon_knife")
  582.             rg_give_item(id, "weapon_knife", GT_APPEND)
  583.             engclient_cmd(id, "weapon_knife")
  584.             g_iUsedTimes[id]++
  585.             emit_sound(id, CHAN_BODY, g_sound_knife, 1.0, ATTN_NORM, 0, PITCH_NORM)*/
  586.         }
  587.         case 4: // Turbulent
  588.         {
  589.             if (ze_get_vip_flags(id) & VIP_A)
  590.             {
  591.                 g_bCompat[id] = false
  592.                 g_bStrong[id] = false
  593.                 g_bKatana[id] = false
  594.                 g_bHammer[id] = false
  595.                 g_bTurbulent9[id] = true
  596.                 g_bBio[id] = false
  597.                 g_bSabers[id] = false
  598.                 g_bPlasma[id] = false
  599.                 g_bStorm[id] = false
  600.                 g_bLaevateinn[id] = false
  601.                 g_bWarHammer_Dark_Knight[id] = false
  602.                 g_bBalrog_Kosa[id] = false
  603.                 g_iUsedTimes[id]++
  604.                 /*rg_remove_item(id, "weapon_knife")
  605.                 rg_give_item(id, "weapon_knife", GT_APPEND)
  606.                 engclient_cmd(id, "weapon_knife")
  607.                 g_iUsedTimes[id]++
  608.                 emit_sound(id, CHAN_BODY, g_sound_knife, 1.0, ATTN_NORM, 0, PITCH_NORM)*/
  609.             }
  610.         }
  611.         case 5: // Bio
  612.         {
  613.             if (ze_get_vip_flags(id) & VIP_A)
  614.             {
  615.                 g_bCompat[id] = false
  616.                 g_bStrong[id] = false
  617.                 g_bKatana[id] = false
  618.                 g_bHammer[id] = false
  619.                 g_bTurbulent9[id] = false
  620.                 g_bBio[id] = true
  621.                 g_bSabers[id] = false
  622.                 g_bPlasma[id] = false
  623.                 g_bStorm[id] = false
  624.                 g_bLaevateinn[id] = false
  625.                 g_bWarHammer_Dark_Knight[id] = false
  626.                 g_bBalrog_Kosa[id] = false
  627.                 g_iUsedTimes[id]++
  628.                 /*rg_remove_item(id, "weapon_knife")
  629.                 rg_give_item(id, "weapon_knife", GT_APPEND)
  630.                 engclient_cmd(id, "weapon_knife")
  631.                 g_iUsedTimes[id]++
  632.                 emit_sound(id, CHAN_BODY, g_sound_knife, 1.0, ATTN_NORM, 0, PITCH_NORM)*/
  633.             }
  634.         }
  635.         case 6: // Sabers
  636.         {
  637.             if (ze_get_vip_flags(id) & VIP_B)
  638.             {
  639.                 g_bCompat[id] = false
  640.                 g_bStrong[id] = false
  641.                 g_bKatana[id] = false
  642.                 g_bHammer[id] = false
  643.                 g_bTurbulent9[id] = false
  644.                 g_bBio[id] = false
  645.                 g_bSabers[id] = true
  646.                 g_bPlasma[id] = false
  647.                 g_bStorm[id] = false
  648.                 g_bLaevateinn[id] = false
  649.                 g_bWarHammer_Dark_Knight[id] = false
  650.                 g_bBalrog_Kosa[id] = false
  651.                 g_iUsedTimes[id]++
  652.                 /*rg_remove_item(id, "weapon_knife")
  653.                 rg_give_item(id, "weapon_knife", GT_APPEND)
  654.                 engclient_cmd(id, "weapon_knife")
  655.                 g_iUsedTimes[id]++
  656.                 emit_sound(id, CHAN_BODY, g_sound_knife, 1.0, ATTN_NORM, 0, PITCH_NORM)*/
  657.             }
  658.         }
  659.         case 7: // Plasma
  660.         {
  661.             if (ze_get_vip_flags(id) & VIP_B)
  662.             {
  663.                 g_bCompat[id] = false
  664.                 g_bStrong[id] = false
  665.                 g_bKatana[id] = false
  666.                 g_bHammer[id] = false
  667.                 g_bTurbulent9[id] = false
  668.                 g_bBio[id] = false
  669.                 g_bSabers[id] = false
  670.                 g_bPlasma[id] = true
  671.                 g_bStorm[id] = false
  672.                 g_bLaevateinn[id] = false
  673.                 g_bWarHammer_Dark_Knight[id] = false
  674.                 g_bBalrog_Kosa[id] = false
  675.                 g_iUsedTimes[id]++
  676.                 /*rg_remove_item(id, "weapon_knife")
  677.                 rg_give_item(id, "weapon_knife", GT_APPEND)
  678.                 engclient_cmd(id, "weapon_knife")
  679.                 g_iUsedTimes[id]++
  680.                 emit_sound(id, CHAN_BODY, g_sound_knife, 1.0, ATTN_NORM, 0, PITCH_NORM)*/
  681.             }
  682.         }
  683.         case 8: // Storm
  684.         {
  685.             if (ze_get_vip_flags(id) & VIP_C)
  686.             {
  687.                 g_bCompat[id] = false
  688.                 g_bStrong[id] = false
  689.                 g_bKatana[id] = false
  690.                 g_bHammer[id] = false
  691.                 g_bTurbulent9[id] = false
  692.                 g_bBio[id] = false
  693.                 g_bSabers[id] = false
  694.                 g_bPlasma[id] = false
  695.                 g_bStorm[id] = true
  696.                 g_bLaevateinn[id] = false
  697.                 g_bWarHammer_Dark_Knight[id] = false
  698.                 g_bBalrog_Kosa[id] = false
  699.                 g_iUsedTimes[id]++
  700.                 /*rg_remove_item(id, "weapon_knife")
  701.                 rg_give_item(id, "weapon_knife", GT_APPEND)
  702.                 engclient_cmd(id, "weapon_knife")
  703.                 g_iUsedTimes[id]++
  704.                 emit_sound(id, CHAN_BODY, g_sound_knife, 1.0, ATTN_NORM, 0, PITCH_NORM)*/
  705.             }
  706.         }
  707.         case 9: // Laevateinn
  708.         {
  709.             if (ze_get_vip_flags(id) & VIP_C)
  710.             {
  711.                 g_bCompat[id] = false
  712.                 g_bStrong[id] = false
  713.                 g_bKatana[id] = false
  714.                 g_bHammer[id] = false
  715.                 g_bTurbulent9[id] = false
  716.                 g_bBio[id] = false
  717.                 g_bSabers[id] = false
  718.                 g_bPlasma[id] = false
  719.                 g_bStorm[id] = false
  720.                 g_bLaevateinn[id] = true
  721.                 g_bWarHammer_Dark_Knight[id] = false
  722.                 g_bBalrog_Kosa[id] = false
  723.                 g_iUsedTimes[id]++
  724.                 /*rg_remove_item(id, "weapon_knife")
  725.                 rg_give_item(id, "weapon_knife", GT_APPEND)
  726.                 engclient_cmd(id, "weapon_knife")
  727.                 g_iUsedTimes[id]++
  728.                 emit_sound(id, CHAN_BODY, g_sound_knife, 1.0, ATTN_NORM, 0, PITCH_NORM)*/
  729.             }
  730.         }
  731.         case 10: // Warhammer Dark Night
  732.         {
  733.             if (ze_get_vip_flags(id) & VIP_C)
  734.             {
  735.                 g_bCompat[id] = false
  736.                 g_bStrong[id] = false
  737.                 g_bKatana[id] = false
  738.                 g_bHammer[id] = false
  739.                 g_bTurbulent9[id] = false
  740.                 g_bBio[id] = false
  741.                 g_bSabers[id] = false
  742.                 g_bPlasma[id] = false
  743.                 g_bStorm[id] = false
  744.                 g_bLaevateinn[id] = false
  745.                 g_bWarHammer_Dark_Knight[id] = true
  746.                 g_bBalrog_Kosa[id] = false
  747.                 g_iUsedTimes[id]++
  748.                 /*rg_remove_item(id, "weapon_knife")
  749.                 rg_give_item(id, "weapon_knife", GT_APPEND)
  750.                 engclient_cmd(id, "weapon_knife")
  751.                 g_iUsedTimes[id]++
  752.                 emit_sound(id, CHAN_BODY, g_sound_knife, 1.0, ATTN_NORM, 0, PITCH_NORM)*/
  753.             }
  754.         }
  755.         case 11: // Balrog Kosa
  756.         {
  757.             if (ze_get_vip_flags(id) & VIP_C)
  758.             {
  759.                 g_bCompat[id] = false
  760.                 g_bStrong[id] = false
  761.                 g_bKatana[id] = false
  762.                 g_bHammer[id] = false
  763.                 g_bTurbulent9[id] = false
  764.                 g_bBio[id] = false
  765.                 g_bSabers[id] = false
  766.                 g_bPlasma[id] = false
  767.                 g_bStorm[id] = false
  768.                 g_bLaevateinn[id] = false
  769.                 g_bWarHammer_Dark_Knight[id] = false
  770.                 g_bBalrog_Kosa[id] = true
  771.                 g_iUsedTimes[id]++
  772.                 /*rg_remove_item(id, "weapon_knife")
  773.                 rg_give_item(id, "weapon_knife", GT_APPEND)
  774.                 engclient_cmd(id, "weapon_knife")
  775.                 g_iUsedTimes[id]++
  776.                 emit_sound(id, CHAN_BODY, g_sound_knife, 1.0, ATTN_NORM, 0, PITCH_NORM)*/
  777.             }
  778.         }
  779.     }
  780.  
  781.     rg_remove_item(id, "weapon_knife")
  782.     rg_give_item(id, "weapon_knife", GT_APPEND)
  783.     engclient_cmd(id, "weapon_knife")
  784.     emit_sound(id, CHAN_BODY, g_sound_knife, 1.0, ATTN_NORM, 0, PITCH_NORM)
  785.     menu_destroy(iMenu)
  786.     return PLUGIN_HANDLED
  787. }
  788.  
  789. public fw_EmitSound(id, channel, const sound[])
  790. {
  791.     if(!is_user_alive(id) || ze_is_user_zombie(id))
  792.         return FMRES_IGNORED
  793.        
  794.     new i
  795.     for (i = 0; i <= charsmax(combat_sounds); i++)
  796.     for (i = 0; i <= charsmax(strong_sounds); i++)
  797.     for (i = 0; i <= charsmax(katana_sounds); i++)
  798.     for (i = 0; i <= charsmax(hammer_sounds); i++)
  799.     for (i = 0; i <= charsmax(turbulent9_sounds); i++)
  800.     for (i = 0; i <= charsmax(bio_sounds); i++)
  801.     for (i = 0; i <= charsmax(sabers_sounds); i++)
  802.     for (i = 0; i <= charsmax(plasma_sounds); i++)
  803.     for (i = 0; i <= charsmax(storm_sounds); i++)
  804.     for (i = 0; i <= charsmax(laevateinn_sounds); i++)
  805.     for (i = 0; i <= charsmax(warhammer_dark_knight_sounds); i++)
  806.     for (i = 0; i <= charsmax(balrog_kosa_sounds); i++)
  807.     {
  808.         if(equal(sound, oldknife_sounds[i]))
  809.         {
  810.             if (g_bCompat[id])
  811.             {
  812.                 emit_sound(id, channel, combat_sounds[i], 1.0, ATTN_NORM, 0, PITCH_NORM)
  813.                 return FMRES_SUPERCEDE
  814.             }
  815.             else if (g_bStrong[id])
  816.             {
  817.                 emit_sound(id, channel, strong_sounds[i], 1.0, ATTN_NORM, 0, PITCH_NORM)
  818.                 return FMRES_SUPERCEDE
  819.             }
  820.             else if (g_bKatana[id])
  821.             {
  822.                 emit_sound(id, channel, katana_sounds[i], 1.0, ATTN_NORM, 0, PITCH_NORM)
  823.                 return FMRES_SUPERCEDE
  824.             }
  825.             else if (g_bHammer[id])
  826.             {
  827.                 emit_sound(id, channel, hammer_sounds[i], 1.0, ATTN_NORM, 0, PITCH_NORM)
  828.                 return FMRES_SUPERCEDE
  829.             }
  830.             else if ((g_bTurbulent9[id]) && (ze_get_vip_flags(id) & VIP_A))
  831.             {
  832.                 emit_sound(id, channel, turbulent9_sounds[i], 1.0, ATTN_NORM, 0, PITCH_NORM)
  833.                 return FMRES_SUPERCEDE
  834.             }
  835.             else if ((g_bBio[id]) && (ze_get_vip_flags(id) & VIP_A))
  836.             {
  837.                 emit_sound(id, channel, bio_sounds[i], 1.0, ATTN_NORM, 0, PITCH_NORM)
  838.                 return FMRES_SUPERCEDE
  839.             }
  840.             else if ((g_bSabers[id]) && (ze_get_vip_flags(id) & VIP_B))
  841.             {
  842.                 emit_sound(id, channel, sabers_sounds[i], 1.0, ATTN_NORM, 0, PITCH_NORM)
  843.                 return FMRES_SUPERCEDE
  844.             }
  845.             else if ((g_bPlasma[id]) && (ze_get_vip_flags(id) & VIP_B))
  846.             {
  847.                 emit_sound(id, channel, plasma_sounds[i], 1.0, ATTN_NORM, 0, PITCH_NORM)
  848.                 return FMRES_SUPERCEDE
  849.             }
  850.             else if ((g_bStorm[id]) && (ze_get_vip_flags(id) & VIP_C))
  851.             {
  852.                 emit_sound(id, channel, storm_sounds[i], 1.0, ATTN_NORM, 0, PITCH_NORM)
  853.                 return FMRES_SUPERCEDE
  854.             }
  855.             else if ((g_bLaevateinn[id]) && (ze_get_vip_flags(id) & VIP_C))
  856.             {
  857.                 emit_sound(id, channel, laevateinn_sounds[i], 1.0, ATTN_NORM, 0, PITCH_NORM)
  858.                 return FMRES_SUPERCEDE
  859.             }
  860.             else if ((g_bWarHammer_Dark_Knight[id]) && (ze_get_vip_flags(id) & VIP_C))
  861.             {
  862.                 emit_sound(id, channel, warhammer_dark_knight_sounds[i], 1.0, ATTN_NORM, 0, PITCH_NORM)
  863.                 return FMRES_SUPERCEDE
  864.             }
  865.             else if ((g_bBalrog_Kosa[id]) && (ze_get_vip_flags(id) & VIP_C))
  866.             {
  867.                 emit_sound(id, channel, balrog_kosa_sounds[i], 1.0, ATTN_NORM, 0, PITCH_NORM)
  868.                 return FMRES_SUPERCEDE
  869.             }
  870.             else if (!g_bCompat[id] || !g_bStrong[id] || !g_bKatana[id] || !g_bHammer[id] || !g_bTurbulent9[id] || !g_bBio[id] || !g_bSabers[id] || !g_bPlasma[id] || !g_bStorm[id] || !g_bLaevateinn[id] || !g_bWarHammer_Dark_Knight[id] || !g_bBalrog_Kosa[id])
  871.             {
  872.                 emit_sound(id, channel, oldknife_sounds[i], 1.0, ATTN_NORM, 0, PITCH_NORM)
  873.                 return FMRES_SUPERCEDE
  874.             }
  875.         }
  876.     }
  877.     return FMRES_IGNORED
  878. }
  879.  
  880. public CurrentWeapon(id)
  881. {
  882.     if(!is_user_alive(id) || ze_is_user_zombie(id))
  883.         return
  884.        
  885.     if(get_user_weapon(id) & CSW_KNIFE)
  886.     {
  887.         if(g_bCompat[id])
  888.         {
  889.             cs_set_player_view_model(id, CSW_KNIFE, Compat_Models[0])
  890.             cs_set_player_weap_model(id, CSW_KNIFE, Compat_Models[1])
  891.         }
  892.         else if(g_bStrong[id])
  893.         {
  894.             cs_set_player_view_model(id, CSW_KNIFE, Strong_Models[0])
  895.             cs_set_player_weap_model(id, CSW_KNIFE, Strong_Models[1])
  896.         }
  897.         else if(g_bKatana[id])
  898.         {
  899.             cs_set_player_view_model(id, CSW_KNIFE, Katana_Models[0])
  900.             cs_set_player_weap_model(id, CSW_KNIFE, Katana_Models[1])
  901.         }
  902.         else if(g_bHammer[id])
  903.         {
  904.             cs_set_player_view_model(id, CSW_KNIFE, Hammer_Models[0])
  905.             cs_set_player_weap_model(id, CSW_KNIFE, Hammer_Models[1])
  906.         }
  907.         else if((g_bTurbulent9[id]) && (ze_get_vip_flags(id) & VIP_A))
  908.         {
  909.             cs_set_player_view_model(id, CSW_KNIFE, Turbulent9_Models[0])
  910.             cs_set_player_weap_model(id, CSW_KNIFE, Turbulent9_Models[1])
  911.         }
  912.         else if((g_bBio[id]) && (ze_get_vip_flags(id) & VIP_A))
  913.         {
  914.             cs_set_player_view_model(id, CSW_KNIFE, Bio_Models[0])
  915.             cs_set_player_weap_model(id, CSW_KNIFE, Bio_Models[1])
  916.         }
  917.         else if((g_bSabers[id]) && (ze_get_vip_flags(id) & VIP_B))
  918.         {
  919.             cs_set_player_view_model(id, CSW_KNIFE, Sabers_Models[0])
  920.             cs_set_player_weap_model(id, CSW_KNIFE, Sabers_Models[1])
  921.         }
  922.         else if((g_bPlasma[id]) && (ze_get_vip_flags(id) & VIP_B))
  923.         {
  924.             cs_set_player_view_model(id, CSW_KNIFE, Plasma_Models[0])
  925.             cs_set_player_weap_model(id, CSW_KNIFE, Plasma_Models[1])
  926.         }
  927.         else if((g_bStorm[id]) && (ze_get_vip_flags(id) & VIP_C))
  928.         {
  929.             cs_set_player_view_model(id, CSW_KNIFE, Storm_Models[0])
  930.             cs_set_player_weap_model(id, CSW_KNIFE, Storm_Models[1])
  931.         }
  932.         else if((g_bLaevateinn[id]) && (ze_get_vip_flags(id) & VIP_C))
  933.         {
  934.             cs_set_player_view_model(id, CSW_KNIFE, Laevateinn_Models[0])
  935.             cs_set_player_weap_model(id, CSW_KNIFE, Laevateinn_Models[1])
  936.         }
  937.         else if((g_bWarHammer_Dark_Knight[id]) && (ze_get_vip_flags(id) & VIP_C))
  938.         {
  939.             cs_set_player_view_model(id, CSW_KNIFE, WarHammer_Dark_Knight_Models[0])
  940.             cs_set_player_weap_model(id, CSW_KNIFE, WarHammer_Dark_Knight_Models[1])
  941.         }
  942.         else if((g_bBalrog_Kosa[id]) && (ze_get_vip_flags(id) & VIP_C))
  943.         {
  944.             cs_set_player_view_model(id, CSW_KNIFE, Balrog_Kosa_Models[0])
  945.             cs_set_player_weap_model(id, CSW_KNIFE, Balrog_Kosa_Models[1])
  946.         }
  947.         else
  948.         {
  949.             cs_reset_player_view_model(id, CSW_KNIFE)
  950.             cs_reset_player_weap_model(id, CSW_KNIFE)
  951.         }
  952.     }
  953. }
  954.  
  955. public Fw_RestMaxSpeed_Post(id)
  956. {
  957.     new iWpnId = get_user_weapon(id)
  958.    
  959.     if (iWpnId == CSW_KNIFE && g_bCompat[id])
  960.     {
  961.         if ((get_entvar(id, var_button) & IN_JUMP) && !(get_entvar(id, var_oldbuttons) & IN_JUMP))
  962.         {
  963.             new iFlags = get_entvar(id, var_flags);
  964.             new iWaterlvl = get_entvar(id, var_waterlevel)
  965.            
  966.             if (!(iFlags & FL_ONGROUND))
  967.                 return HAM_IGNORED
  968.  
  969.             if (iFlags & FL_WATERJUMP)
  970.                 return HAM_IGNORED
  971.  
  972.             if (iWaterlvl > 1)
  973.                 return HAM_IGNORED
  974.            
  975.             new Float:flVelocity[3]
  976.             get_entvar(id , var_velocity , flVelocity)
  977.  
  978.             flVelocity[2] += 325
  979.  
  980.             set_entvar(id , var_velocity , flVelocity)
  981.  
  982.             set_entvar(id, var_gaitsequence, 6)
  983.         }
  984.        
  985.         set_entvar(id, var_maxspeed, get_pcvar_float(cvar_speed_compat))
  986.     }
  987.     else if (iWpnId == CSW_KNIFE && g_bStrong[id])
  988.     {
  989.         if ((get_entvar(id, var_button) & IN_JUMP) && !(get_entvar(id, var_oldbuttons) & IN_JUMP))
  990.         {
  991.             new iFlags = get_entvar(id, var_flags);
  992.             new iWaterlvl = get_entvar(id, var_waterlevel)
  993.            
  994.             if (!(iFlags & FL_ONGROUND))
  995.                 return HAM_IGNORED
  996.  
  997.             if (iFlags & FL_WATERJUMP)
  998.                 return HAM_IGNORED
  999.  
  1000.             if (iWaterlvl > 1)
  1001.                 return HAM_IGNORED
  1002.            
  1003.             new Float:flVelocity[3]
  1004.             get_entvar(id , var_velocity , flVelocity)
  1005.  
  1006.             flVelocity[2] += 325
  1007.  
  1008.             set_entvar(id , var_velocity , flVelocity)
  1009.  
  1010.             set_entvar(id, var_gaitsequence, 6)
  1011.         }
  1012.        
  1013.         set_entvar(id, var_maxspeed, get_pcvar_float(cvar_speed_strong))
  1014.     }
  1015.     else if (iWpnId == CSW_KNIFE && g_bKatana[id])
  1016.     {
  1017.         if ((get_entvar(id, var_button) & IN_JUMP) && !(get_entvar(id, var_oldbuttons) & IN_JUMP))
  1018.         {
  1019.             new iFlags = get_entvar(id, var_flags);
  1020.             new iWaterlvl = get_entvar(id, var_waterlevel)
  1021.            
  1022.             if (!(iFlags & FL_ONGROUND))
  1023.                 return HAM_IGNORED
  1024.  
  1025.             if (iFlags & FL_WATERJUMP)
  1026.                 return HAM_IGNORED
  1027.  
  1028.             if (iWaterlvl > 1)
  1029.                 return HAM_IGNORED
  1030.            
  1031.             new Float:flVelocity[3]
  1032.             get_entvar(id , var_velocity , flVelocity)
  1033.  
  1034.             flVelocity[2] += 325
  1035.  
  1036.             set_entvar(id , var_velocity , flVelocity)
  1037.  
  1038.             set_entvar(id, var_gaitsequence, 6)
  1039.         }
  1040.        
  1041.         set_entvar(id, var_maxspeed, get_pcvar_float(cvar_speed_katana))
  1042.     }
  1043.     else if (iWpnId == CSW_KNIFE && g_bHammer[id])
  1044.     {
  1045.         if ((get_entvar(id, var_button) & IN_JUMP) && !(get_entvar(id, var_oldbuttons) & IN_JUMP))
  1046.         {
  1047.             new iFlags = get_entvar(id, var_flags);
  1048.             new iWaterlvl = get_entvar(id, var_waterlevel)
  1049.            
  1050.             if (!(iFlags & FL_ONGROUND))
  1051.                 return HAM_IGNORED
  1052.  
  1053.             if (iFlags & FL_WATERJUMP)
  1054.                 return HAM_IGNORED
  1055.  
  1056.             if (iWaterlvl > 1)
  1057.                 return HAM_IGNORED
  1058.            
  1059.             new Float:flVelocity[3]
  1060.             get_entvar(id , var_velocity , flVelocity)
  1061.  
  1062.             flVelocity[2] += 325
  1063.  
  1064.             set_entvar(id , var_velocity , flVelocity)
  1065.  
  1066.             set_entvar(id, var_gaitsequence, 6)
  1067.         }
  1068.        
  1069.         set_entvar(id, var_maxspeed, get_pcvar_float(cvar_speed_hammer))
  1070.     }
  1071.     else if (iWpnId == CSW_KNIFE && g_bTurbulent9[id])
  1072.     {
  1073.         if ((get_entvar(id, var_button) & IN_JUMP) && !(get_entvar(id, var_oldbuttons) & IN_JUMP))
  1074.         {
  1075.             new iFlags = get_entvar(id, var_flags);
  1076.             new iWaterlvl = get_entvar(id, var_waterlevel)
  1077.            
  1078.             if (!(iFlags & FL_ONGROUND))
  1079.                 return HAM_IGNORED
  1080.  
  1081.             if (iFlags & FL_WATERJUMP)
  1082.                 return HAM_IGNORED
  1083.  
  1084.             if (iWaterlvl > 1)
  1085.                 return HAM_IGNORED
  1086.            
  1087.             new Float:flVelocity[3]
  1088.             get_entvar(id , var_velocity , flVelocity)
  1089.  
  1090.             flVelocity[2] += 325
  1091.  
  1092.             set_entvar(id , var_velocity , flVelocity)
  1093.  
  1094.             set_entvar(id, var_gaitsequence, 6)
  1095.         }
  1096.        
  1097.         set_entvar(id, var_maxspeed, get_pcvar_float(cvar_speed_turb))
  1098.     }
  1099.     else if (iWpnId == CSW_KNIFE && g_bBio[id])
  1100.     {
  1101.         if ((get_entvar(id, var_button) & IN_JUMP) && !(get_entvar(id, var_oldbuttons) & IN_JUMP))
  1102.         {
  1103.             new iFlags = get_entvar(id, var_flags);
  1104.             new iWaterlvl = get_entvar(id, var_waterlevel)
  1105.            
  1106.             if (!(iFlags & FL_ONGROUND))
  1107.                 return HAM_IGNORED
  1108.  
  1109.             if (iFlags & FL_WATERJUMP)
  1110.                 return HAM_IGNORED
  1111.  
  1112.             if (iWaterlvl > 1)
  1113.                 return HAM_IGNORED
  1114.            
  1115.             new Float:flVelocity[3]
  1116.             get_entvar(id , var_velocity , flVelocity)
  1117.  
  1118.             flVelocity[2] += 325
  1119.  
  1120.             set_entvar(id , var_velocity , flVelocity)
  1121.  
  1122.             set_entvar(id, var_gaitsequence, 6)
  1123.         }
  1124.        
  1125.         set_entvar(id, var_maxspeed, get_pcvar_float(cvar_speed_bio))
  1126.     }
  1127.     else if (iWpnId == CSW_KNIFE && g_bSabers[id])
  1128.     {
  1129.         if ((get_entvar(id, var_button) & IN_JUMP) && !(get_entvar(id, var_oldbuttons) & IN_JUMP))
  1130.         {
  1131.             new iFlags = get_entvar(id, var_flags);
  1132.             new iWaterlvl = get_entvar(id, var_waterlevel)
  1133.            
  1134.             if (!(iFlags & FL_ONGROUND))
  1135.                 return HAM_IGNORED
  1136.  
  1137.             if (iFlags & FL_WATERJUMP)
  1138.                 return HAM_IGNORED
  1139.  
  1140.             if (iWaterlvl > 1)
  1141.                 return HAM_IGNORED
  1142.            
  1143.             new Float:flVelocity[3]
  1144.             get_entvar(id , var_velocity , flVelocity)
  1145.  
  1146.             flVelocity[2] += 325
  1147.  
  1148.             set_entvar(id , var_velocity , flVelocity)
  1149.  
  1150.             set_entvar(id, var_gaitsequence, 6)
  1151.         }
  1152.        
  1153.         set_entvar(id, var_maxspeed, get_pcvar_float(cvar_speed_sabers))
  1154.     }
  1155.     else if (iWpnId == CSW_KNIFE && g_bPlasma[id])
  1156.     {
  1157.         if ((get_entvar(id, var_button) & IN_JUMP) && !(get_entvar(id, var_oldbuttons) & IN_JUMP))
  1158.         {
  1159.             new iFlags = get_entvar(id, var_flags);
  1160.             new iWaterlvl = get_entvar(id, var_waterlevel)
  1161.            
  1162.             if (!(iFlags & FL_ONGROUND))
  1163.                 return HAM_IGNORED
  1164.  
  1165.             if (iFlags & FL_WATERJUMP)
  1166.                 return HAM_IGNORED
  1167.  
  1168.             if (iWaterlvl > 1)
  1169.                 return HAM_IGNORED
  1170.            
  1171.             new Float:flVelocity[3]
  1172.             get_entvar(id , var_velocity , flVelocity)
  1173.  
  1174.             flVelocity[2] += 325
  1175.  
  1176.             set_entvar(id , var_velocity , flVelocity)
  1177.  
  1178.             set_entvar(id, var_gaitsequence, 6)
  1179.         }
  1180.        
  1181.         set_entvar(id, var_maxspeed, get_pcvar_float(cvar_speed_plasma))
  1182.     }
  1183.     else if (iWpnId == CSW_KNIFE && g_bStorm[id])
  1184.     {
  1185.         if ((get_entvar(id, var_button) & IN_JUMP) && !(get_entvar(id, var_oldbuttons) & IN_JUMP))
  1186.         {
  1187.             new iFlags = get_entvar(id, var_flags);
  1188.             new iWaterlvl = get_entvar(id, var_waterlevel)
  1189.            
  1190.             if (!(iFlags & FL_ONGROUND))
  1191.                 return HAM_IGNORED
  1192.  
  1193.             if (iFlags & FL_WATERJUMP)
  1194.                 return HAM_IGNORED
  1195.  
  1196.             if (iWaterlvl > 1)
  1197.                 return HAM_IGNORED
  1198.            
  1199.             new Float:flVelocity[3]
  1200.             get_entvar(id , var_velocity , flVelocity)
  1201.  
  1202.             flVelocity[2] += 325
  1203.  
  1204.             set_entvar(id , var_velocity , flVelocity)
  1205.  
  1206.             set_entvar(id, var_gaitsequence, 6)
  1207.         }
  1208.        
  1209.         set_entvar(id, var_maxspeed, get_pcvar_float(cvar_speed_storm))
  1210.     }
  1211.     else if (iWpnId == CSW_KNIFE && g_bLaevateinn[id])
  1212.     {
  1213.         if ((get_entvar(id, var_button) & IN_JUMP) && !(get_entvar(id, var_oldbuttons) & IN_JUMP))
  1214.         {
  1215.             new iFlags = get_entvar(id, var_flags);
  1216.             new iWaterlvl = get_entvar(id, var_waterlevel)
  1217.            
  1218.             if (!(iFlags & FL_ONGROUND))
  1219.                 return HAM_IGNORED
  1220.  
  1221.             if (iFlags & FL_WATERJUMP)
  1222.                 return HAM_IGNORED
  1223.  
  1224.             if (iWaterlvl > 1)
  1225.                 return HAM_IGNORED
  1226.            
  1227.             new Float:flVelocity[3]
  1228.             get_entvar(id , var_velocity , flVelocity)
  1229.  
  1230.             flVelocity[2] += 325
  1231.  
  1232.             set_entvar(id , var_velocity , flVelocity)
  1233.  
  1234.             set_entvar(id, var_gaitsequence, 6)
  1235.         }
  1236.        
  1237.         set_entvar(id, var_maxspeed, get_pcvar_float(cvar_speed_laevat))
  1238.     }
  1239.     else if (iWpnId == CSW_KNIFE && g_bWarHammer_Dark_Knight[id])
  1240.     {
  1241.         if ((get_entvar(id, var_button) & IN_JUMP) && !(get_entvar(id, var_oldbuttons) & IN_JUMP))
  1242.         {
  1243.             new iFlags = get_entvar(id, var_flags);
  1244.             new iWaterlvl = get_entvar(id, var_waterlevel)
  1245.            
  1246.             if (!(iFlags & FL_ONGROUND))
  1247.                 return HAM_IGNORED
  1248.  
  1249.             if (iFlags & FL_WATERJUMP)
  1250.                 return HAM_IGNORED
  1251.  
  1252.             if (iWaterlvl > 1)
  1253.                 return HAM_IGNORED
  1254.            
  1255.             new Float:flVelocity[3]
  1256.             get_entvar(id , var_velocity , flVelocity)
  1257.  
  1258.             flVelocity[2] += 325
  1259.  
  1260.             set_entvar(id , var_velocity , flVelocity)
  1261.  
  1262.             set_entvar(id, var_gaitsequence, 6)
  1263.         }
  1264.        
  1265.         set_entvar(id, var_maxspeed, get_pcvar_float(cvar_speed_darknight))
  1266.     }
  1267.     else if (iWpnId == CSW_KNIFE && g_bBalrog_Kosa[id])
  1268.     {
  1269.         if ((get_entvar(id, var_button) & IN_JUMP) && !(get_entvar(id, var_oldbuttons) & IN_JUMP))
  1270.         {
  1271.             new iFlags = get_entvar(id, var_flags);
  1272.             new iWaterlvl = get_entvar(id, var_waterlevel)
  1273.            
  1274.             if (!(iFlags & FL_ONGROUND))
  1275.                 return HAM_IGNORED
  1276.  
  1277.             if (iFlags & FL_WATERJUMP)
  1278.                 return HAM_IGNORED
  1279.  
  1280.             if (iWaterlvl > 1)
  1281.                 return HAM_IGNORED
  1282.            
  1283.             new Float:flVelocity[3]
  1284.             get_entvar(id , var_velocity , flVelocity)
  1285.  
  1286.             flVelocity[2] += 325
  1287.  
  1288.             set_entvar(id , var_velocity , flVelocity)
  1289.  
  1290.             set_entvar(id, var_gaitsequence, 6)
  1291.         }
  1292.        
  1293.         set_entvar(id, var_maxspeed, get_pcvar_float(cvar_speed_kosa))
  1294.     }
  1295.     return HAM_IGNORED
  1296. }
  1297.  
  1298.  
  1299. public DeathMsg(msg_id, msg_dest, id)
  1300. {
  1301.     static szTruncatedWeapon[33], iAttacker
  1302.     get_msg_arg_string(4, szTruncatedWeapon, charsmax(szTruncatedWeapon))
  1303.     iAttacker = get_msg_arg_int(1)
  1304.    
  1305.     if(!is_user_alive(iAttacker) || iAttacker == get_msg_arg_int(2) || !is_user_alive(get_msg_arg_int(2))) // get_msg_arg_int(2) = iVictim
  1306.         return
  1307.    
  1308.     if(equal(szTruncatedWeapon, "knife") && get_user_weapon(iAttacker) & CSW_KNIFE)
  1309.     {
  1310.         if(g_bCompat[id])
  1311.         {
  1312.             set_msg_arg_string(4, "Combat knife")
  1313.         }
  1314.         else if(g_bStrong[id])
  1315.         {
  1316.             set_msg_arg_string(4, "Strong knife")
  1317.         }
  1318.         else if(g_bKatana[id])
  1319.         {
  1320.             set_msg_arg_string(4, "Katana knife")
  1321.         }
  1322.         else if(g_bHammer[id])
  1323.         {
  1324.             set_msg_arg_string(4, "Ice knife")
  1325.         }
  1326.         else if(g_bTurbulent9[id])
  1327.         {
  1328.             set_msg_arg_string(4, "Turbulent9 knife")
  1329.         }
  1330.         else if(g_bBio[id])
  1331.         {
  1332.             set_msg_arg_string(4, "Biohazard knife")
  1333.         }
  1334.         else if(g_bSabers[id])
  1335.         {
  1336.             set_msg_arg_string(4, "Sabers knife")
  1337.         }
  1338.         else if(g_bPlasma[id])
  1339.         {
  1340.             set_msg_arg_string(4, "Plasma knife")
  1341.         }
  1342.         else if(g_bStorm[id])
  1343.         {
  1344.             set_msg_arg_string(4, "Storm knife")
  1345.         }
  1346.         else if(g_bLaevateinn[id])
  1347.         {
  1348.             set_msg_arg_string(4, "Laevateinn knife")
  1349.         }
  1350.         else if(g_bWarHammer_Dark_Knight[id])
  1351.         {
  1352.             set_msg_arg_string(4, "WarHammer Dark Knight knife")
  1353.         }
  1354.         else if(g_bBalrog_Kosa[id])
  1355.         {
  1356.             set_msg_arg_string(4, "Balrog Kosa Knife")
  1357.         }
  1358.     }
  1359. }
  1360.  
  1361. stock fm_set_user_maxspeed(index, Float:speed = -1.0)
  1362. {
  1363.         engfunc(EngFunc_SetClientMaxspeed, index, speed);
  1364.         set_pev(index, pev_maxspeed, speed);
  1365.  
  1366.         return 1;
  1367. }  
  1368.  
  1369. public native_ze_open_knife_menu(id)
  1370. {
  1371.     Show_Knife_Menu(id)
  1372. }

User avatar
Raheem
Mod Developer
Mod Developer
Posts: 2214
Joined: 7 years ago
Contact:

#28

Post by Raheem » 5 years ago

Grenade 290 and knife 270, What should it be?
He who fails to plan is planning to fail

User avatar
Mark
VIP
VIP
United States of America
Posts: 283
Joined: 5 years ago
Location: Des Moines/USA
Contact:

#29

Post by Mark » 5 years ago

Raheem wrote: 5 years ago Grenade 290 and knife 270, What should it be?
That Knife should be set to 400 as speak for testing this.

It will be 280 once its working.

User avatar
Raheem
Mod Developer
Mod Developer
Posts: 2214
Joined: 7 years ago
Contact:

#30

Post by Raheem » 5 years ago

Let me test code myself.
He who fails to plan is planning to fail

Post Reply

Create an account or sign in to join the discussion

You need to be a member in order to post a reply

Create an account

Not a member? register to join our community
Members can start their own topics & subscribe to topics
It’s free and only takes a minute

Register

Sign in

Who is online

Users browsing this forum: No registered users and 3 guests