AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   help me pls :) (https://forums.alliedmods.net/showthread.php?t=87280)

~Ice*shOt 03-09-2009 10:23

help me pls :)
 
Hello, I getting error: function or declaration in that -
#include <amxmodx>
#include <amxmisc>
#include <nvault>
#include <fun>
#define MAXCLASSES 5
#define PREFIX "x-Zombies-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] = {
300,
800,
1900,
3500,
4800,
7000
};
new PlayerXP[33], PlayerLevel[33], PlayerClass[33];
new gCvar_Kill, gCvar_Knife, gCvar_HS, gCvar_Enable, g_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", "30");
gCvar_Knife = register_cvar("xp_Knife_bonus", "20");
g_Vault = nvault_open("xzmod");

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 level", "ShowHud");
register_clcmd("say_team level", "ShowHud");
}
public eDeath() {
new attacker = read_data( 1 );
new headshot = read_data( 3 );
new clip, ammo, weapon = get_user_weapon(attacker, clip, ammo);
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(attacker, print_chat, "[GunXP-MOD] Sveikinu! Tu esi lygyje %i %s!",PlayerLevel[attacker], CLASSES[PlayerClass[attacker]])
PlayerLevel[attacker] += 1;
}
ShowHud(attacker);
SaveData(attacker);
}
public ShowHud(id) {
set_hudmessage(255, 0, 0, 0.75, 0.01, 0, 6.0, 15.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 , 5 , szName , 63 , callback);
new i = str_to_num(szCommand);
if(PlayerClass[id] != i) {
PlayerClass[id] = i;
client_print(id,print_chat,"[%s] You are now a %s", PREFIX, CLASSES[i]);
} else
client_print(id,print_chat,"[%s] You are already a %s", PREFIX, CLASSES[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(id, AuthID, 34);

new vaultkey[64], vaultdata[256];
format(vaultkey, 63, "%s-Mod", AuthID);
format(vaultdata, 255, "%i#%i#", PlayerXP[id], PlayerLevel[id]);
nvault_set(g_Vault, vaultkey, vaultdata);
return PLUGIN_CONTINUE;
}
public LoadData(id) {
new AuthID[35];
get_user_authid(id,AuthID,34);

new vaultkey[64], vaultdata[256];
format(vaultkey, 63, "%s-Mod", AuthID);
format(vaultdata, 255, "%i#%i#", PlayerXP[id], PlayerLevel[id]);
nvault_get(g_Vault, vaultkey, vaultdata,255);
replace_all(vaultdata, 255, "#", " ");
new playerxp[32], playerlevel[32];
parse(vaultdata, playerxp, 31, playerlevel, 31);
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_exp( id, level,cid ) {
if( ! cmd_access ( id, level, cid, 3 ) )
return PLUGIN_HANDLED;
new target[32], amount[21], reason[21];
read_argv( 1, target, 31 );
read_argv(2, amount, 20 );
read_argv( 3, reason, 20 );
new player = cmd_target( id, target, 8 );
if( ! player )
return PLUGIN_HANDLED;
new admin_name[32], player_name[32];
get_user_name( id, admin_name, 31 );
get_user_name( player, player_name, 31 );
new expnum = str_to_num( amount );
PlayerXP[player] += expnum;
switch( get_cvar_num ( "amx_show_activity" ) ) {
case 1: client_print( 0, print_chat, "ADMIN: gave %i points for %s.", expnum, player_name );
case 2: client_print( 0, print_chat, "ADMIN %s: gave %i points for %s.", admin_name, expnum, player_name );
}
client_print( player, print_chat, "[%s] You received %i points. (Total: %d)", PREFIX, expnum, PlayerXP[player] );
SaveData( id );
return PLUGIN_CONTINUE;
}

public cmd_take_exp( id, level,cid ) {
if( ! cmd_access ( id, level, cid, 3 ) )
return PLUGIN_HANDLED;
new target[32], amount[21], reason[21];
read_argv( 1, target, 31 );
read_argv( 2, amount, 20 );
read_argv( 3, reason, 20 );
new player = cmd_target( id, target, 8 );
if( ! player )
return PLUGIN_HANDLED;
new admin_name[32], player_name[32];
get_user_name( id, admin_name, 31 );
get_user_name( player, player_name, 31 );
new expnum = str_to_num( amount );
PlayerXP[player] -= expnum;
switch(get_cvar_num("amx_show_activity")){
case 1: client_print( 0, print_chat, "ADMIN: took %i points from %s.", expnum, player_name );
case 2: client_print( 0, print_chat, "ADMIN %s: took %i points from %s.", admin_name, expnum, player_name );
}
client_print( player, print_chat, "[%s] You lost %i points. (Total: %d)", PREFIX, expnum, PlayerXP[player] );
SaveData( id );
return PLUGIN_CONTINUE;
}
public skill(id)
{
if (PlayerClass[id] == CLASS_COW)
{
set_user_health(id, 250); // gives him 250 health if he's a Cow
}
}

if (PlayerLevel[id] == 1) // On exactly Level 1
{
give_item(id,"weapon_famas")
}
if (PlayerLevel[id] == 2) // On exactly Level 1
{
give_item(id,"weapon_galil")
}
if (PlayerLevel[id] == 3) // On exactly Level 1
{
give_item(id,"weapon_glock18")
}
if (PlayerLevel[id] == 4) // On exactly Level 1
{
give_item(id,"weapon_usp")
}
if (PlayerLevel[id] == 5) // On exactly Level 1
{
give_item(id,"weapon_m4a1")
}
if (PlayerLevel[id] == 6) // On exactly Level 1
{
give_item(id,"weapon_ak-47")
}

Bugsy 03-09-2009 10:36

Re: help me pls :)
 
Three things
  • Use whitespace so your code is not one chunk of garbled words
  • Use [php] or [code] tags when posting code.
  • Use a descriptive thread title for the purpose of your post\question

PHP Code:

#include <amxmodx>
#include <amxmisc>
#include <nvault>
#include <fun>

#define MAXCLASSES 5
#define PREFIX "x-Zombies-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] = 
{
    
300,
    
800,
    
1900,
    
3500,
    
4800,
    
7000
};

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""30");
    
gCvar_Knife register_cvar("xp_Knife_bonus""20");
    
g_Vault nvault_open("xzmod");
    
    
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 level""ShowHud");
    
register_clcmd("say_team level""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"[GunXP-MOD] Sveikinu! Tu esi lygyje %i %s!",PlayerLevel[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)
{
    switch ( 
PlayerClass[id] )
    {
         
        case 
CLASS_COW
        {
            
set_user_health(id250); 
            
give_item(id,"weapon_famas")
        }
        case 
CLASS_HORSEgive_item(id,"weapon_galil")
        case 
CLASS_CATgive_item(id,"weapon_glock18")
        case 
CLASS_DOGgive_item(id,"weapon_usp")
        case 
5give_item(id,"weapon_m4a1")
        case 
6give_item(id,"weapon_ak-47")
    } 



~Ice*shOt 03-09-2009 11:32

Re: help me pls :)
 
what is that code?

Bugsy 03-09-2009 11:44

Re: help me pls :)
 
That is the plugin you posted above, indented and spaced out a little. It will compile with 0 errors\warnings.

~Ice*shOt 03-09-2009 12:42

Re: help me pls :)
 
I dont getting gun in that what i want like: my level are 2 but i dont get anything... I can buy guns and something

YamiKaitou 03-09-2009 15:17

Re: help me pls :)
 
As per the Global Forum Rules, you need to have a descriptive topic title. If you wish for this topic to stay open, please correct the topic title before you post again.

~Ice*shOt 03-11-2009 08:17

Re: help me pls :)
 
I fency make yes that as upheave level available gun standard: me level is 1 my gun is glock - me level is 2 my gun is usp, but between levels stands xp. like superhero or war3 that standard: code:
menu_additem(menu, "\wSchmidt TMP", "1", 0)

YamiKaitou 03-11-2009 08:26

Re: help me pls :)
 
As per the Global Forum Rules, you need to have a descriptive topic title. Feel free to repost the topic again, but make sure you have a descriptive topic title


All times are GMT -4. The time now is 09:03.

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