Raised This Month: $ Target: $400
 0% 

[ZP] Extra Item MultiJump + MultiJumps at the Beginning


  
 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
Author Message
bombey
Member
Join Date: Jul 2006
Old 04-18-2009 , 08:09   [ZP] Extra Item MultiJump + MultiJumps at the Beginning
Reply With Quote #1

Code:
/*================================================================================
    
    -------------------------------------------
    -*- [ZP] Extra Item: Multijump 1.0 -*-
    -------------------------------------------
    
    ~~~~~~~~~~~~~~~
    - Description -
    ~~~~~~~~~~~~~~~
    
    This item/upgrade allows humans to jump multiple times, even being in mid air.
    Each upgrade adds one jump.
    
    By default there is no maximum of jumps in mid air.
    
    Credits to:
    twistedeuphoria
    Dabbi
================================================================================*/

#include <amxmodx>
#include <fakemeta>
#include <zombieplague.inc>

/*================================================================================
 [Plugin Customization]
=================================================================================*/

new const g_item_name[] = { "Multijump (+1)" };
const g_item_cost = 50;
new g_maxJumps = 0; // maximum amount of jumps in mid air. If set to 0 then it is infinitely

/*============================================================================*/

new jumpnum[33] = 0;
new bool:dojump[33] = false;
new g_itemid_multijump;
new g_multijumps[33] = 0;

public plugin_init()
{
    register_plugin("[ZP] Extra Item: Multijump", "1.0", "pharse");
    
    g_itemid_multijump = zp_register_extra_item(g_item_name, g_item_cost, ZP_TEAM_HUMAN);
    
    register_forward(FM_PlayerPreThink, "FW_PlayerPreThink");
    register_forward(FM_PlayerPostThink, "FW_PlayerPostThink");
    
    register_event("HLTV", "EVENT_round_start", "a", "1=0", "2=0");
    register_cvar("amx_start_multijumps","2");
}

public FW_PlayerPreThink(id)
{
    if(!is_user_alive(id) || zp_get_user_zombie(id) || !get_cvar_num("amx_start_multijumps")+g_multijumps[id]) return PLUGIN_CONTINUE
    new nbut = pev(id,pev_button);
    new obut = pev(id,pev_oldbuttons);
    if((nbut & IN_JUMP) && !(pev(id,pev_flags) & FL_ONGROUND) && !(obut & IN_JUMP))
    {
        if(jumpnum[id] < get_cvar_num("amx_start_multijumps")+g_multijumps[id])
        {
            dojump[id] = true;
            jumpnum[id]++;
            return PLUGIN_CONTINUE
        }
    }
    if((nbut & IN_JUMP) && (pev(id,pev_flags) & FL_ONGROUND))
    {
        jumpnum[id] = 0;
        return PLUGIN_CONTINUE
    }
    return PLUGIN_CONTINUE
}

public FW_PlayerPostThink(id)
{
    if(!is_user_alive(id) || zp_get_user_zombie(id) || !get_cvar_num("amx_start_multijumps")+g_multijumps[id]) return PLUGIN_CONTINUE
    if(dojump[id] == true)
    {
        new Float:velocity[3];
        pev(id,pev_velocity,velocity);
        velocity[2] = random_float(265.0,285.0);
        set_pev(id,pev_velocity,velocity)
        dojump[id] = false
        return PLUGIN_CONTINUE
    }
    return PLUGIN_CONTINUE
}    

// Player buys our upgrade, add one multijump
public zp_extra_item_selected(player, itemid)
{
    if (itemid == g_itemid_multijump){
        if (g_multijumps[player] < g_maxJumps || !g_maxJumps){
            g_multijumps[player]++;
            if (g_maxJumps)
                client_print(player, print_center, "Now you can jump %d / %d times in mid air.", g_multijumps[player], g_maxJumps);
            else
                client_print(player, print_center, "Now you can jump %d times in mid air.", g_multijumps[player]);
        }
        else
            client_print(player, print_center, "You can't jump more than %d times in mid air!", g_maxJumps);
    }
}

// Reset multijump for all players on newround
public EVENT_round_start()
{
    for (new id; id <= 32; id++) g_multijumps[id] = false;
}
I can't code but I tried to change (red marked) the code logically but when I wanna compile the code, it shows me the error "warning 213: tag mismatch"?

As I said before in the title, I want to set on every player 2 multijumps which can't be reduced, just increased by buying a multijump.

I hope you understand what Im looking for and you can help me.

In return I'll give you karma.
__________________
I'm the creator of:
-zm_lila_panic_cs
, zm_office


bombey 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 16:57.


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