Raised This Month: $ Target: $400
 0% 

ammo


  
 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
~Ice*shOt
Veteran Member
Join Date: Mar 2009
Location: Lithuania
Old 04-05-2009 , 06:08   Re: ammo
#7

Quote:
Originally Posted by TheRadiance View Post
PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <nvault>
#include <fun>
#include <fakemeta>
#include <cstrike>
 
#define MAXCLASSES 5
#define PREFIX "Animal Mod"
enum {
PLAYERLEVEL_1,
PLAYERLEVEL_2,
PLAYERLEVEL_3// How many Levels
PLAYERLEVEL_4,
PLAYERLEVEL_5,
PLAYERLEVEL_6
}
enum {
CLASS_NONE 0,
CLASS_COW,
CLASS_HORSE// Add your Classes there..
CLASS_CAT,
CLASS_DOG
}
new const 
CLASSES[MAXCLASSES][] = {
    
"None",
    
"Dog",
    
"Cat",
    
"Horse",
    
"Cow"
};
new const 
LEVELS[6] = {
    
100
    
200
    
400
    
800,
    
1600,
    
3200
};
new 
PlayerXP[33], PlayerLevel[33], PlayerClass[33];
new 
gCvar_KillgCvar_KnifegCvar_HSgCvar_Enableg_Vault;
public 
plugin_init() {
    
register_plugin("XP Mod""1.0""fxfighter");
    
register_event("DeathMsg""eDeath""a");
    
register_event("ResetHUD""skill""be");
    
gCvar_Enable    register_cvar("xp_save""1");
    
gCvar_Kill    register_cvar("xp_per_kill""20");
    
gCvar_HS    register_cvar("xp_hs_bonus""20");
    
gCvar_Knife    register_cvar("xp_Knife_bonus""20");
    
g_Vault        nvault_open("animod");
 
    
register_concmd("amx_take_exp""cmd_take_exp"ADMIN_KICK"<target> <amount>"); 
    
register_concmd("amx_give_exp""cmd_give_exp"ADMIN_KICK"<target> <amount>");
 
    
register_clcmd("say /class",    "ChangeClass");
    
register_clcmd("say_team /class""ChangeClass");
    
register_clcmd("say /xp",    "ShowHud");
    
register_clcmd("say_team /xp",    "ShowHud");
}
public 
eDeath() {
    new 
attacker read_data);
    new 
headshot read_data);
    new 
clipammoweapon get_user_weapon(attackerclipammo);
    
PlayerXP[attacker] += get_pcvar_num(gCvar_Kill);
    if(
headshot)
        
PlayerXP[attacker] += get_pcvar_num(gCvar_HS);
    if(
weapon == CSW_KNIFE)
        
PlayerXP[attacker] += get_pcvar_num(gCvar_Knife);
    while(
PlayerXP[attacker] >= LEVELS[PlayerLevel[attacker]]) {
        
client_print(attackerprint_chat"[%s] Congratulations! You are a level %i %s!"PREFIXPlayerLevel[attacker], CLASSES[PlayerClass[attacker]]);
        
PlayerLevel[attacker] += 1;
    }
    
ShowHud(attacker);
    
SaveData(attacker);
}
public 
ShowHud(id) {
    
set_hudmessage(255000.750.0106.015.0);
    
show_hudmessage(id"Level: %i^nXP: %i^nClass: %s"PlayerLevel[id], PlayerXP[id], CLASSES[PlayerClass[id]]);
}
public 
ChangeClass(id) {
    new 
menu menu_create("Class Menu" "Class_Handle");
    
menu_additem(menu ,"Dog""1" 0);
    
menu_additem(menu ,"Cat""2" 0);
    
menu_additem(menu ,"Horse""3" 0);
    
menu_additem(menu ,"Cow""4" 0);
    
menu_setprop(menu MPROP_EXIT MEXIT_ALL);
    
menu_display(id menu 0);
    return 
PLUGIN_CONTINUE;
}
public 
Class_Handle(id menu item)  {
    if(
item == MENU_EXIT
        
menu_destroy(menu);
    new 
szCommand[6] , szName[64];
    new 
access callback;
    
menu_item_getinfo(menu item access szCommand szName 63 callback);
    new 
str_to_num(szCommand);
    if(
PlayerClass[id] != i) {
        
PlayerClass[id] = i;
        
client_print(id,print_chat,"[%s] You are now a %s"PREFIXCLASSES[i]);
    } else
        
client_print(id,print_chat,"[%s] You are already a %s"PREFIXCLASSES[i]);
    
menu_destroy(menu);
    return 
PLUGIN_CONTINUE;
}
public 
client_connect(id)
    if(
get_pcvar_num(gCvar_Enable) == 1)
        
LoadData(id);
public 
client_disconnect(id) {
    if(
get_pcvar_num(gCvar_Enable) == 1)
        
SaveData(id);
    
PlayerXP[id]    = 0;
    
PlayerLevel[id]    = 0;
    
PlayerClass[id]    = 0;
}
public 
SaveData(id) {
    new 
AuthID[35];
    
get_user_authid(idAuthID34);
 
    new 
vaultkey[64], vaultdata[256];
    
format(vaultkey63"%s-Mod"AuthID);
    
format(vaultdata255"%i#%i#"PlayerXP[id], PlayerLevel[id]);
    
nvault_set(g_Vaultvaultkeyvaultdata);
    return 
PLUGIN_CONTINUE;
}
public 
LoadData(id) {
    new 
AuthID[35];
    
get_user_authid(id,AuthID,34);
 
    new 
vaultkey[64], vaultdata[256];
    
format(vaultkey63"%s-Mod"AuthID);
    
format(vaultdata255"%i#%i#"PlayerXP[id], PlayerLevel[id]);
    
nvault_get(g_Vaultvaultkeyvaultdata,255);
    
replace_all(vaultdata255"#"" ");
    new 
playerxp[32], playerlevel[32];
    
parse(vaultdataplayerxp31playerlevel31);
    
PlayerXP[id] = str_to_num(playerxp);
    
PlayerLevel[id] = str_to_num(playerlevel);
    return 
PLUGIN_CONTINUE;
}
// Give/Take XP addaon by [X]-RayCat
public cmd_give_expidlevel,cid ) {
    if( ! 
cmd_access idlevelcid) )
        return 
PLUGIN_HANDLED;
    new 
target[32], amount[21], reason[21];
    
read_argv1target31 );
    
read_argv(2amount20 );
    
read_argv3reason20 );
    new 
player cmd_targetidtarget);
    if( ! 
player 
        return 
PLUGIN_HANDLED;
    new 
admin_name[32], player_name[32];
    
get_user_nameidadmin_name31 );
    
get_user_nameplayerplayer_name31 );
    new 
expnum str_to_numamount );
    
PlayerXP[player] += expnum;
    switch( 
get_cvar_num "amx_show_activity" ) ) {
        case 
1client_print0print_chat"ADMIN: gave %i points for %s."expnumplayer_name );
        case 
2client_print0print_chat"ADMIN %s: gave %i points for %s."admin_nameexpnumplayer_name );
    }
    
client_printplayerprint_chat"[%s] You received %i points. (Total: %d)"PREFIXexpnumPlayerXP[player] );
    
SaveDataid );
    return 
PLUGIN_CONTINUE;
}
 
public 
cmd_take_expidlevel,cid ) {
    if( ! 
cmd_access idlevelcid) )
       return 
PLUGIN_HANDLED;
    new 
target[32], amount[21], reason[21];
    
read_argv1target31 );
    
read_argv2amount20 );
    
read_argv3reason20 );
    new 
player cmd_targetidtarget);
    if( ! 
player 
       return 
PLUGIN_HANDLED;
    new 
admin_name[32], player_name[32];
    
get_user_nameidadmin_name31 );
    
get_user_nameplayerplayer_name31 );
    new 
expnum str_to_numamount );
    
PlayerXP[player] -= expnum;
    switch(
get_cvar_num("amx_show_activity")){
        case 
1client_print0print_chat"ADMIN: took %i points from %s."expnumplayer_name );
        case 
2client_print0print_chat"ADMIN %s: took %i points from %s."admin_nameexpnumplayer_name );
    }
    
client_printplayerprint_chat"[%s] You lost %i points. (Total: %d)"PREFIXexpnumPlayerXP[player] );
    
SaveDataid );
    return 
PLUGIN_CONTINUE;
}  
public 
skill(id)
{
 if(
PlayerLevel[id] == 0// Checks level. 
    

        
give_item(id,"weapon_glock18"); // Give yourself glock18 at level 0
        
cs_set_weapon_ammo fm_get_weapon_ent idCSW_GLOCK18 ), 120 
    } 
 if(
PlayerLevel[id] == 1// Checks level. 
    

        
give_item(id,"weapon_usp"); // Give yourself usp at level 1
        
cs_set_weapon_ammo fm_get_weapon_ent idCSW_USP ), 100 
    }
 if(
PlayerLevel[id] == 2// Checks level. 
    

        
give_item(id,"weapon_deagle"); // Give yourself deagle at level 2
        
cs_set_weapon_ammo fm_get_weapon_ent idCSW_DEAGLE ), 35 
    } 
 if(
PlayerLevel[id] == 3// Checks level. 
    

        
give_item(id,"weapon_elites"); // Give yourself elites at level 3
        
cs_set_weapon_ammo fm_get_weapon_ent idCSW_ELITE ), 120 
    } 
 if(
PlayerLevel[id] == 4// Checks level. 
    

        
give_item(id,"weapon_tmp"); // Give yourself tmp at level 4
        
cs_set_weapon_ammo fm_get_weapon_ent idCSW_TMP ), 120 
    } 
 if(
PlayerLevel[id] == 5// Checks level. 
    

        
give_item(id,"weapon_ump45"); // Give yourself ump45 at level 5
        
cs_set_weapon_ammo fm_get_weapon_ent idCSW_UMP45 ), 120 
    } 
 if(
PlayerLevel[id] == 6// Checks level. 
    

        
give_item(id,"weapon_mp5"); // Give yourself mp5 at level 6
        
cs_set_weapon_ammo fm_get_weapon_ent idCSW_MP5NAVY ), 120
    } 

 
fm_get_weapon_ent(idwpnid 0)
{
    new 
name[32]
 
    if(
wpnid)
        
get_weaponname(wpnidname31)
 
    if (!
equal(name"weapon_"7))
        
format(namesizeof (name) - 1"weapon_%s"name)
 
    return 
fm_find_ent_by_owner(get_maxplayers(), nameid)
}
 
fm_find_ent_by_owner(id, const classname[], ownerjghgtype 0)
{
    new 
strtype[16] = "classname"
    
new ent id
 
    
switch (jghgtype)
    {
        case 
1strtype "target"
        
case 2strtype "targetname"
    
}
 
    while ((
ent engfunc(EngFunc_FindEntityByStringentstrtypeclassname)) && pev(entpev_owner) != owner)
    {
    }
 
    return 
ent

THX,
0 Errors, 0 Warrings. Maybe can help with the situ? when tying in the server and command me jungiuos emit SERVER error: ED_Alloc: no free edits
~Ice*shOt is offline
Send a message via Skype™ to ~Ice*shOt
 



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 02:27.


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