AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Zombie Plague Mod (https://forums.alliedmods.net/forumdisplay.php?f=126)
-   -   Subplugin Submission [ZP] List of VIP Zombie Classes (https://forums.alliedmods.net/showthread.php?t=241855)

zmd94 06-10-2014 04:12

[ZP] List of VIP Zombie Classes
 
4 Attachment(s)
I'm just help to edited the sma file from the original version. This is just to help person who do not know how to change and compile the original zombie classes, so that it can only be used by the VIP. I will also give a link to the original thread. This plugin is working perfectly on my server ZPA 1.6.1 and ZP 5.0.

You also can do it by yourself. Just follow the steps, here.

(ZP 4.3/ ZPA)
List of VIP Zombie Classes:
1.
L4D Tank (to download the model, you can go to the original thread, here).
2. Climb Zombie.
3. Flame Zombie.

(ZP 5.0)
List or VIP Zombie Classes:
1. Burning Zombie (
to download the model, you can go to the original thread, here).

I have not test this zombie classes plugin in ZP 5.0.6 and above. If any problem occur, do not hesitate to ask me.

If you want me to help you to convert and compile any zombie classes that only can be used by VIP, just tell me. I will do my best.

bat 06-10-2014 04:48

Re: VIP Zombie Classes
 
But if i don't wanna use ZP VIP

ArabicMan 06-10-2014 04:53

Re: VIP Zombie Classes
 
Good job.
Quote:

Originally Posted by bat (Post 2149228)
But if i don't wanna use ZP VIP


Catastrophe 06-10-2014 05:12

Re: VIP Zombie Classes
 
Why don u just use a .ini file to let the user decide the classes that should be VIP, much easier that way and it will work for any version of ZP, also that way u can set a specific flag and let the users decide that too (which could coincide with the VIP flag to make it a VIP class)

zmd94 06-10-2014 05:41

Re: VIP Zombie Classes
 
Sorry, I'm not sure how to use .ini file. :cry:

VickGamer 09-10-2014 01:31

Re: [ZP] VIP Zombie Classes
 
Hello Pro you can make this class ClimbWall , he can climb only 5 sec , and wait 5 sec to climb wall again , and if one shoot him he will go down and wait 5 sec to climb again , and plz do it he can climb in ATTACK2.

PHP Code:

/*
Wallclimb v1.0f by Python1320
Plagued Version 0.22 by Dabbi

Allows Poison Zombie to Climb Walls in Zombie Plague [3.62]

CVARS:    zp_wallclimb 0 = Off / 1 = Hold USE / 2 = Hold JUMP and DUCK  (Default 1)
    zp_wallclimb_nemesis 0 = Disable wallclimb during nemesis round. / 1 = Enable (Default 1)
    zp_wallclimb_survivor 0 = Disable wallclimb during survivor round. / 1 = Enable (Default 0)
    
Changes:
    0.22
        Made the function wallclimb return a value.
        Put plugin version to a cvar.
    0.21
        Added cvars to enable disable wallclimb durin survivor/nemesis round
    0.2
        Added cvar to enable / disable Walllclimb Plugin
    0.1
        First release.
*/

#include <amxmodx>
// #include <engine>
#include <fakemeta>

#include <cstrike>
#include <zombieplague.inc>
#include <zmvip>

//#include <fakemeta_util>
#define STR_T           33

// Stuff taken from fakemeta_util
#define fm_get_user_button(%1) pev(%1, pev_button)    
/* stock fm_get_user_button(index)
    return pev(index, pev_button) */

#define fm_get_entity_flags(%1) pev(%1, pev_flags)
/* stock fm_get_entity_flags(index)
    return pev(index, pev_flags) */

stock fm_set_user_velocity(entity, const Float:vector[3]) {
    
set_pev(entitypev_velocityvector);

    return 
1;
}
//End of stuff from fakemeta_util
//new STR_T[32]
new bool:g_WallClimb[33]
new 
Float:g_wallorigin[32][3]
new 
cvar_zp_wallclimbcvar_zp_wallclimb_nemesiscvar_zp_wallclimb_survivor
new g_zclass_climb

// Climb Zombie Atributes
new const zclass_name[] = { "Climb Zombie" // name
new const zclass_info[] = { "HP-- Speed+ Jump+ Knockback++" // description
new const zclass_model[] = { "sirenzz" // model
new const zclass_clawmodel[] = { "v_knife_zombie.mdl" // claw model
const zclass_health 1200 // health
const zclass_speed 220 // speed
const Float:zclass_gravity 0.8 // gravity
const Float:zclass_knockback 1.5 // knockback

public plugin_init() 
{
    
register_plugin("[ZP] Wallclimb ""1.0""WallClimb by Python1320/Cheap_Suit, Plagued by Dabbi")
    
register_forward(FM_Touch,         "fwd_touch")
    
register_forward(FM_PlayerPreThink,     "fwd_playerprethink")
    
//register_forward(FM_PlayerPostThink,     "fwd_playerpostthink")
    
register_event("DeathMsg","EventDeathMsg","a")
    
//register_cvar("zp_wallclimb_version", PLUGIN_VERSION, FCVAR_SERVER|FCVAR_SPONLY)
    
cvar_zp_wallclimb register_cvar("zp_wallclimb""1")
    
cvar_zp_wallclimb_survivor register_cvar("zp_wallclimb_survivor""0")
    
cvar_zp_wallclimb_nemesis register_cvar("zp_wallclimb_nemesis""1")
    
}

public 
plugin_precache()
{
    
g_zclass_climb zp_register_zombie_class(zclass_namezclass_infozclass_modelzclass_clawmodelzclass_healthzclass_speedzclass_gravityzclass_knockback)
}

public 
zp_user_infected_pre(id) { 
    if(!(
get_user_flags(id) & ADMIN_LEVEL_H)) {  
        if(
zp_get_user_next_class(id) == g_zclass_climb) { 
            
zp_set_user_zombie_class(id0
            
client_print(idprint_center"Your selected class in only for *VIP* members"
            
client_print(idprint_chat"Your selected class in only for *VIP* members. Changed to default zombie class."
        } 
    } 


public 
EventDeathMsg()    
{
    new 
id read_data(2)
    
g_WallClimb[id] = true
    
return PLUGIN_HANDLED
}

public 
client_connect(id) {
    
g_WallClimb[id] = true    
}

public 
fwd_touch(idworld)
{
    if(!
is_user_alive(id) || !g_WallClimb[id] || !pev_valid(id))
        return 
FMRES_IGNORED

    
new player STR_T
    
if (!player)
        return 
FMRES_IGNORED
        
    
new classname[STR_T]
    
pev(worldpev_classnameclassname, (STR_T))
    
    if(
equal(classname"worldspawn") || equal(classname"func_wall") || equal(classname"func_breakable"))
        
pev(idpev_origing_wallorigin[id])

    return 
FMRES_IGNORED
}

public 
wallclimb(idbutton)
{
    static 
Float:origin[3]
    
pev(idpev_originorigin)

    if(
get_distance_f(origing_wallorigin[id]) > 25.0)
        return 
FMRES_IGNORED  // if not near wall
    
    
if(fm_get_entity_flags(id) & FL_ONGROUND)
        return 
FMRES_IGNORED
        
    
if(button IN_FORWARD)
    {
        static 
Float:velocity[3]
        
velocity_by_aim(id120velocity)
        
fm_set_user_velocity(idvelocity)
    }
    else if(
button IN_BACK)
    {
        static 
Float:velocity[3]
        
velocity_by_aim(id, -120velocity)
        
fm_set_user_velocity(idvelocity)
    }
    return 
FMRES_IGNORED
}    

public 
fwd_playerprethink(id
{
    if(!
g_WallClimb[id] || !zp_get_user_zombie(id)) 
        return 
FMRES_IGNORED
        
    
if(zp_is_survivor_round() && get_pcvar_num(cvar_zp_wallclimb_survivor) == 0)
        return 
FMRES_IGNORED
        
    
if(zp_is_nemesis_round() && get_pcvar_num(cvar_zp_wallclimb_nemesis) == 0)
        return 
FMRES_IGNORED
    
    
new button fm_get_user_button(id)
    
    if((
get_pcvar_num(cvar_zp_wallclimb) == 1) && (button IN_USE) && (zp_get_user_zombie_class(id) == g_zclass_climb)) //Use button = climb
    
wallclimb(idbutton)
    else if((
get_pcvar_num(cvar_zp_wallclimb) == 2) && (button IN_JUMP) && button IN_DUCK && (zp_get_user_zombie_class(id) == g_zclass_climb)) //Jump + Duck = climb
    
wallclimb(idbutton)

    return 
FMRES_IGNORED



VickGamer 09-10-2014 12:31

Re: [ZP] VIP Zombie Classes
 
someone can do that ?

zmd94 09-10-2014 12:39

Re: [ZP] VIP Zombie Classes
 
@ VickGamer, I will try to help. Then, I'll inform you the progress. ;)

VickGamer 09-11-2014 07:33

Re: [ZP] VIP Zombie Classes
 
you can do it plzzz ?

zmd94 09-11-2014 08:22

Re: [ZP] VIP Zombie Classes
 
1 Attachment(s)
Just try below. ;)

What you can edit:
Quote:

cvar_zp_wallclimb = register_cvar("zp_wallclimb", "1")
cvar_zp_wallclimb_survivor = register_cvar("zp_wallclimb_survivor", "0")
cvar_zp_wallclimb_nemesis = register_cvar("zp_wallclimb_nemesis", "1")
cvar_cooldown = register_cvar("zp_cooldown", "10")


All times are GMT -4. The time now is 21:08.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.