Raised This Month: $ Target: $400
 0% 

[ZP 4.3] MultiJump Only for Human and Surviour


  
 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
Torge
Veteran Member
Join Date: Oct 2011
Old 01-09-2014 , 09:49   Re: [ZP 4.3] MultiJump Only for Human and Surviour
Reply With Quote #2

Try this:

PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <zombieplague>
 
//#define ADMINACCESS ADMIN_CHAT
 
new jumpnum[33] = 0
new bool:dojump[33] = false
 
public plugin_init()
{
    
register_plugin("MultiJump","1.1","twistedeuphoria")
    
register_cvar("amx_maxjumps","2")
    
register_cvar("amx_mjadminonly","0")
}
 
public 
client_putinserver(id)
{
    
jumpnum[id] = 0
    dojump
[id] = false
}
 
public 
client_disconnect(id)
{
    
jumpnum[id] = 0
    dojump
[id] = false
}
 
public 
client_PreThink(id)
{
    if(!
is_user_alive(id)) return PLUGIN_CONTINUE
    
//if(get_cvar_num("amx_mjadminonly") && (!access(id,ADMINACCESS))) return PLUGIN_CONTINUE
    
if(!zp_get_user_zombie(id) || zp_get_user_survivor(id))
    {
        new 
nbut get_user_button(id)
        new 
obut get_user_oldbutton(id)
        if((
nbut IN_JUMP) && !(get_entity_flags(id) & FL_ONGROUND) && !(obut IN_JUMP) && (get_user_weapon(id) == CSW_KNIFE))
        {
            if(
jumpnum[id] < get_cvar_num("amx_maxjumps"))
            {
                
dojump[id] = true
                jumpnum
[id]++
                return 
PLUGIN_CONTINUE
            
}
        }
        if((
nbut IN_JUMP) && (get_entity_flags(id) & FL_ONGROUND))
        {
            
jumpnum[id] = 0
            
return PLUGIN_CONTINUE
        
}
    }
    
    return 
PLUGIN_CONTINUE
}
 
public 
client_PostThink(id)
{
    if(!
is_user_alive(id)) return PLUGIN_CONTINUE
    
//if(get_cvar_num("amx_mjadminonly") && (!access(id,ADMINACCESS))) return PLUGIN_CONTINUE
    
    
if(!zp_get_user_zombie(id) || zp_get_user_survivor(id))
    {
        if(
dojump[id] == true)
        {
            new 
Float:velocity[3]    
            
entity_get_vector(id,EV_VEC_velocity,velocity)
            
velocity[2] = random_float(265.0,285.0)
            
entity_set_vector(id,EV_VEC_velocity,velocity)
            
dojump[id] = false
            
            
return PLUGIN_CONTINUE
        
}
    }
    
    return 
PLUGIN_CONTINUE

If loose indentation occurs, just ignore it.

Last edited by Torge; 01-10-2014 at 10:02.
Torge is offline
 



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 10:15.


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