Raised This Month: $51 Target: $400
 12% 

[HELP] GunXP Please (XP Per Damage Errors)


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
Dr Zayd
Senior Member
Join Date: Jun 2014
Location: forums.alliedmods.net
Old 09-13-2014 , 10:23   [HELP] GunXP Please (XP Per Damage Errors)
Reply With Quote #1

Code:
//AMXXPC compile.exe
// by the AMX Mod X Dev Team


//// gunxpmod.sma
// gunxpmod.cfg(74) : error 018: initialization data exceeds declared size
// gunxpmod.cfg(103) : error 018: initialization data exceeds declared size
// gunxpmod.cfg(107) : error 018: initialization data exceeds declared size
// gunxpmod.cfg(108) : error 010: invalid function or declaration
//
// 4 Errors.
// Could not locate output file C:\Users\pc\Desktop\Nouveau dossier\all addons\a
ddons-zm + GunXp\addons\scripting\compiled\gunxpmod.amx (compile failed).
//
// Compilation Time: 0,28 sec
// ----------------------------------------

Press enter to exit ...
I Try to Add XP Per Damage Please Help Me ?

PHP Code:
#include "gunxpmod.cfg"

#if defined ZOMBIE_BIOHAZARD
  #include <biohazard>
#endif
#if defined ZOMBIE_PLAGUE
  #include <zombieplague>
#endif

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <fun>
#include <cstrike>
#include <nvault>
#include <sqlx>
#include <hamsandwich>

#define PLUGIN    "Gun Xp Mod"
#define AUTHOR    "xbatista"
#define VERSION    "2.3"


#define OFFSET_PRIMARYWEAPON 116
#define TASK_SHOW_LEVEL 10113
#define fm_cs_set_user_nobuy(%1) set_pdata_int(%1, 235, get_pdata_int(%1, 235) & ~(1<<0) ) //no weapon buy

new PlayerXp[33];
new 
PlayerLevel[33];

new 
g_Vault;
new 
g_remember_selection[33], g_kills[33], g_remember_selection_pistol[33];
new 
g_maxplayersg_msgHudSync1SayTxTenable_grenades;
new 
levelsprlevelspr2show_level_textshow_rank;
new 
savexpsave_typexp_killxp_tripleenable_tripletriple_killsxp_ultraultra_killsenable_ultrap_Enabledlevel_style;
new 
enable_admin_xpadmin_xp;
new 
pack_bonus2

/*================================================================================
                        [MySQLx Vars, other]
=================================================================================*/
new Handle:g_hTuple;

new 
mysqlx_hostmysqlx_usermysqlx_dbmysqlx_pass;

new const 
szTables[][] = 
{
    
"CREATE TABLE IF NOT EXISTS `mytable` ( `player_id` varchar(32) NOT NULL,`player_level` int(8) default NULL,`player_xp` int(16) default NULL,PRIMARY KEY (`player_id`) ) TYPE=MyISAM;"
}

new const 
WEAPONCONST[MAXLEVEL][] = { "weapon_glock18""weapon_usp""weapon_p228""weapon_fiveseven""weapon_deagle""weapon_elite""weapon_tmp"
"weapon_mac10""weapon_ump45""weapon_mp5navy""weapon_p90""weapon_scout""weapon_awp""weapon_famas""weapon_galil""weapon_m3""weapon_xm1014"
"weapon_ak47""weapon_m4a1""weapon_aug""weapon_sg552""weapon_sg550""weapon_g3sg1""weapon_m249" 
}; // Give Weapons

new const WEAPONMDL[MAXLEVEL][] = { "models/w_glock18.mdl""models/w_usp.mdl""models/w_p228.mdl""models/w_fiveseven.mdl""models/w_deagle.mdl""models/w_elite.mdl""models/w_tmp.mdl"
"models/w_mac10.mdl""models/w_ump45.mdl""models/w_mp5.mdl""models/w_p90.mdl""models/w_scout.mdl""models/w_awp.mdl""models/w_famas.mdl""models/w_galil.mdl""models/w_m3.mdl""models/w_xm1014.mdl"
"models/w_ak47.mdl""models/w_m4a1.mdl""models/w_aug.mdl""models/w_sg552.mdl""models/w_sg550.mdl""models/w_g3sg1.mdl""models/w_m249.mdl" 
}; // Blocks pick up weapon, don't change!

new const AMMOCONST[MAXLEVEL] = { 17161112610237121930318
15142152822827132420 
}; // Weapons ID(CSW) don't change!

/*================================================================================
                        [Plugin natives,precache,init]
=================================================================================*/
public plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR);
    
register_cvar("gxm_version"VERSIONFCVAR_SPONLY|FCVAR_SERVER)
    
set_cvar_string("gxm_version"VERSION)
    
    
register_concmd("nglvl""cmd_give_level"ADMIN_RCON"cmd give lvl" );
    
register_clcmd("say level""showlevel");
    
register_clcmd("say /level""showlevel");
    
register_clcmd("say /top20","showtop20");
    
register_clcmd("say /menu","show_main_menu_info");
    
register_clcmd("say menu","show_main_menu_info");
    
    
p_Enabled register_cvar"gxm_enable""1" ); // Plugin enabled? 1 = Yes, 0 = No.
    
save_type register_cvar("gxm_savetype","1"); // Save Xp to : 1 = MySQL, 0 = NVault.
    
savexp register_cvar("gxm_save","1"); // Save Xp by : 1 = SteamID, 0 = IP.
    
xp_kill register_cvar("gxm_xp","10"); // How much xp gain if you killed someone?
    
show_level_text register_cvar("gxm_level_text","1"); // Show your level by : 1 = HUD message, 0 = Simple colored text message.
    
show_rank register_cvar("gxm_show_rank","1"); // Show rank in /top20? 1 = Yes, 0 = No.
    
level_style register_cvar("gxm_level_style","0"); // You will gain each level new gun : 1 = Yes, 0 = No,select your gun by menu.
    
enable_grenades register_cvar("gxm_grenades","1"); // Give to player grenades? 1 = Yes, 0 = No.
    
pack_bonus2=register_cvar("xp_per_dmg","500"//  za ile dmg jeden ammopack
    
    
enable_triple register_cvar("gxm_triple","1"); // Enable Triple Kill bonus xp? 1 = Yes, 0 = No.
    
xp_triple register_cvar("gxm_triple_xp","3"); // How much bonus xp give for Triple Kill?
    
triple_kills register_cvar("gxm_triple_kills","3"); // How much kills needed to give bonus xp?
    
enable_ultra register_cvar("gxm_ultra","1"); // Enable Ultra Kill bonus xp? 1 = Yes, 0 = No.
    
xp_ultra register_cvar("gxm_ultra_xp","5"); // How much bonus xp give for Ultra Kill?
    
ultra_kills register_cvar("gxm_ultra_kills","6"); // How much kills needed to give bonus xp?
    
    
enable_admin_xp register_cvar("gxm_admin_xp","1"); // Enable Extra xp for killing? 1 = Yes, 0 = No.
    
admin_xp register_cvar("gxm_extra_xp","10"); // How much extra xp give to admins?
    
                    // SQLx cvars
    
mysqlx_host register_cvar ("gxm_host"""); // The host from the db
    
mysqlx_user register_cvar ("gxm_user"""); // The username from the db login
    
mysqlx_pass register_cvar ("gxm_pass"""); // The password from the db login
    
mysqlx_db register_cvar ("gxm_dbname"""); // The database name 
    
                    // Events //
    
register_event("DeathMsg""event_deathmsg""a");
    
register_event("StatusValue""Event_StatusValue""bd""1=2")
    
                    
// Forwards //
    
RegisterHam(Ham_Spawn"player""fwd_PlayerSpawn"1);
    
    
register_forward(FM_Touch"fwd_Touch");
    
                    
// Messages //
    #if defined NORMAL_MOD || defined ZOMBIE_SWARM
    
register_message(get_user_msgid("StatusIcon"),    "Message_StatusIcon")
    
#endif
    
                    // Other //    
    
register_menucmd(register_menuid("Main Menu"), 1023"main_menu_info")
    
    
register_dictionary("gunxpmod.txt");
    
MySQLx_Init()
                    
    
SayTxT get_user_msgid("SayText");
    
    
g_msgHudSync1 CreateHudSyncObj()
    
g_maxplayers get_maxplayers();
}
public 
plugin_natives()
{
                    
// Player natives //
    
register_native("get_user_xp""native_get_user_xp"1);
    
register_native("set_user_xp""native_set_user_xp"1);
    
register_native("get_user_level""native_get_user_level"1);
    
register_native("set_user_level""native_set_user_level"1);
    
register_native("get_user_max_level""native_get_user_max_level"1);
}
public 
plugin_precache()
{
    
levelspr engfunc(EngFunc_PrecacheModel"sprites/xfire.spr");
    
levelspr2 engfunc(EngFunc_PrecacheModel"sprites/xfire2.spr");
    
    
engfunc(EngFunc_PrecacheSoundLevelUp);
}
public 
plugin_cfg()
{
    new 
ConfDir[32], File[192];
    
    
get_configsdirConfDircharsmaxConfDir ) );
    
formatexFilecharsmaxFile ), "%s/gunxpmod.cfg"ConfDir );
    
    if( !
file_existsFile ) )
    {
        
server_print"File %s doesn't exist!"File );
        
write_fileFile" ", -);
    }
    else
    {    
        
server_print"%s successfully loaded."File );
        
server_cmd"exec %s"File );
    }
    
    
//Open our vault and have g_Vault store the handle.
    
g_Vault nvault_open"gunxpmod" );

    
//Make the plugin error if vault did not successfully open
    
if ( g_Vault == INVALID_HANDLE )
        
set_fail_state"Error opening GunXpMod nVault, file does not exist!" );
}
public 
plugin_end()
{
    
//Close the vault when the plugin ends (map change\server shutdown\restart)
    
nvault_closeg_Vault );
}
public 
client_connect(id)
{
    
g_remember_selection[id] = MAX_PISTOLS_MENU;
    
g_remember_selection_pistol[id] = 0;
    
    
LoadLevel(id)
}
public 
client_disconnect(id)
{
    
SaveLevel(id)

    
PlayerXp[id] = 0;
    
PlayerLevel[id] = 0;

    
remove_taskTASK_SHOW_LEVEL id );
}
public 
Message_StatusIcon(iMsgIdMSG_DESTid

    if( !
get_pcvar_num(p_Enabled) )
        return 
PLUGIN_HANDLED;
        
    static 
szIcon[5
    
get_msg_arg_string(2szIcon4
    if( 
szIcon[0] == 'b' && szIcon[2] == 'y' && szIcon[3] == 'z' 
    { 
        if( 
get_msg_arg_int(1)) 
        { 
            
fm_cs_set_user_nobuy(id
            return 
PLUGIN_HANDLED;
        } 
    }  
    
    return 
PLUGIN_CONTINUE;
}
public 
fwd_Touch(entid)
{
    if (!
is_user_alive(id) || !pev_valident ) )
        return 
FMRES_IGNORED;
 
    static 
szEntModel[32]; 
    
pevent pev_model szEntModel 31 ); 
     
    for (new 
level_equip_id PlayerLevel[id] + 1level_equip_id MAXLEVELlevel_equip_id++) 
    { 
        if ( 
equaliszEntModel WEAPONMDL[level_equip_id] ) ) 
        { 
            return 
FMRES_SUPERCEDE
        }  
    } 

    return 
FMRES_IGNORED;
}
public 
fwd_PlayerSpawn(id)
{
    if( !
get_pcvar_num(p_Enabled) || !is_user_alive(id) )
        return;
    
    
g_kills[id] = 0
        
    
#if defined ZOMBIE_SWARM
    
if ( !get_pcvar_num(level_style) && cs_get_user_team(id) == CS_TEAM_CT )
    {
        
StripPlayerWeapons(id);
            
        
set_task(2.0"show_main_menu_level"id)
    }
    
#endif
        
    #if defined NORMAL_MOD || defined ZOMBIE_INFECTION
    
if ( !get_pcvar_num(level_style))
    {
        
StripPlayerWeapons(id);
            
        
set_task(2.0"show_main_menu_level"id)
    }
    
#endif
        
    
if( get_pcvar_num(show_level_text) )
    {
        
remove_taskTASK_SHOW_LEVEL id );        

        
set_task(0.1"task_show_level"TASK_SHOW_LEVEL id)
    }
    
    
#if defined ZOMBIE_SWARM    
    
if ( get_pcvar_num(level_style) && cs_get_user_team(id) == CS_TEAM_CT )
    {
        
set_task(0.3"give_weapon"id);
    }
    
#endif

    #if defined NORMAL_MOD || defined ZOMBIE_INFECTION
    
if ( get_pcvar_num(level_style) )
    {
        
set_task(0.3"give_weapon"id);
    }
    
#endif

}

#if defined ZOMBIE_PLAGUE
public zp_user_humanized_post(idsurvivor)
{
    if( !
get_pcvar_num(p_Enabled) || !is_user_alive(id) )
        return;

    
set_task(1.0"show_main_menu_level"id);
}
#endif

#if defined ZOMBIE_BIOHAZARD
public event_infect(g_victimg_attacker)
{
    if( !
get_pcvar_num(p_Enabled) )
        return;
    
    new 
counted_triple get_pcvar_num(xp_kill) + get_pcvar_num(xp_triple) + get_pcvar_num(enable_admin_xp) && get_user_flags(g_attacker) & ADMIN_EXTRA get_pcvar_num(admin_xp) : 0
    
new counted_ultra get_pcvar_num(xp_kill) + get_pcvar_num(xp_ultra) + get_pcvar_num(enable_admin_xp) && get_user_flags(g_attacker) & ADMIN_EXTRA get_pcvar_num(admin_xp) : 0
    
    
if((<= g_attacker <= g_maxplayers))
    {
        if(
g_victim != g_attacker)
        {
            
g_kills[g_attacker]++;
            if(
PlayerLevel[g_attacker] < MAXLEVEL-1
            {
                if ( 
get_pcvar_num(enable_admin_xp) && get_user_flags(g_attacker) & ADMIN_EXTRA)
                {
                    
PlayerXp[g_attacker] += get_pcvar_num(admin_xp)
                }
                    
                if ( 
g_kills[g_attacker] == get_pcvar_num(triple_kills) && get_pcvar_num(enable_triple) )
                {
                    
PlayerXp[g_attacker] += counted_triple
                        
                    set_hudmessage
(0255500.500.3312.02.0)
                    
show_hudmessage(g_attacker"%L"LANG_SERVER"TRIPLE_XP"counted_triple + (get_pcvar_num(enable_admin_xp) && get_user_flags(g_attacker) & ADMIN_EXTRA get_pcvar_num(admin_xp) : 0))
                }
                else if ( 
g_kills[g_attacker] == get_pcvar_num(ultra_kills) && get_pcvar_num(enable_ultra) )
                {
                    
PlayerXp[g_attacker] += counted_ultra
                        
                    set_hudmessage
(0255500.500.3312.02.0)
                    
show_hudmessage(g_attacker"%L"LANG_SERVER"ULTRA_XP"counted_ultra + (get_pcvar_num(enable_admin_xp) && get_user_flags(g_attacker) & ADMIN_EXTRA get_pcvar_num(admin_xp) : 0))
                }
                else
                {
                    
PlayerXp[g_attacker] += get_pcvar_num(xp_kill)
                    
                    
set_hudmessage(0255500.500.3312.02.0)
                    
show_hudmessage(g_attacker"+%i", (get_pcvar_num(enable_admin_xp) && get_user_flags(g_attacker) & ADMIN_EXTRA get_pcvar_num(admin_xp) : 0) + get_pcvar_num(xp_kill) )
                }
                
                
check_level(g_attacker)
            }
        }
    }
}
#endif

#if defined ZOMBIE_PLAGUE
public zp_user_infected_post(g_victimg_attacker)
{
    if( !
get_pcvar_num(p_Enabled) )
        return;
    
    new 
counted_triple get_pcvar_num(xp_kill) + get_pcvar_num(xp_triple)
    new 
counted_ultra get_pcvar_num(xp_kill) + get_pcvar_num(xp_ultra)
    
    if((
<= g_attacker <= g_maxplayers))
    {
        if(
g_victim != g_attacker)
        {
            
g_kills[g_attacker]++;
            if(
PlayerLevel[g_attacker] < MAXLEVEL-1
            {
                if ( 
get_pcvar_num(enable_admin_xp) && get_user_flags(g_attacker) & ADMIN_EXTRA)
                {
                    
PlayerXp[g_attacker] += get_pcvar_num(admin_xp)
                }
                    
                if ( 
g_kills[g_attacker] == get_pcvar_num(triple_kills) && get_pcvar_num(enable_triple) )
                {
                    
PlayerXp[g_attacker] += counted_triple
                        
                    set_hudmessage
(0255500.500.3312.02.0)
                    
show_hudmessage(g_attacker"%L"LANG_SERVER"TRIPLE_XP"counted_triple + (get_pcvar_num(enable_admin_xp) && get_user_flags(g_attacker) & ADMIN_EXTRA get_pcvar_num(admin_xp) : 0))
                }
                else if ( 
g_kills[g_attacker] == get_pcvar_num(ultra_kills) && get_pcvar_num(enable_ultra) )
                {
                    
PlayerXp[g_attacker] += counted_ultra
                        
                    set_hudmessage
(0255500.500.3312.02.0)
                    
show_hudmessage(g_attacker"%L"LANG_SERVER"ULTRA_XP"counted_ultra + (get_pcvar_num(enable_admin_xp) && get_user_flags(g_attacker) & ADMIN_EXTRA get_pcvar_num(admin_xp) : 0))
                }
                else
                {
                    
PlayerXp[g_attacker] += get_pcvar_num(xp_kill)
                    
                    
set_hudmessage(0255500.500.3312.02.0)
                    
show_hudmessage(g_attacker"+%i", (get_pcvar_num(enable_admin_xp) && get_user_flags(g_attacker) & ADMIN_EXTRA get_pcvar_num(admin_xp) : 0) + get_pcvar_num(xp_kill) )
                }
                
                
check_level(g_attacker)
            }
        }
    }
}
#endif

public event_deathmsg()
{    
    if( !
get_pcvar_num(p_Enabled) )
        return;
    
    new 
g_attacker read_data(1);
    new 
g_victim read_data(2);
    
    new 
counted_triple get_pcvar_num(xp_kill) + get_pcvar_num(xp_triple)
    new 
counted_ultra get_pcvar_num(xp_kill) + get_pcvar_num(xp_ultra)
    
    if((
<= g_attacker <= g_maxplayers))
    {
        if(
g_victim != g_attacker)
        {
            
g_kills[g_attacker]++;
            if(
PlayerLevel[g_attacker] < MAXLEVEL-1
            {
                if ( 
get_pcvar_num(enable_admin_xp) && get_user_flags(g_attacker) & ADMIN_EXTRA)
                {
                    
PlayerXp[g_attacker] += get_pcvar_num(admin_xp)
                }
                    
                if ( 
g_kills[g_attacker] == get_pcvar_num(triple_kills) && get_pcvar_num(enable_triple) )
                {
                    
PlayerXp[g_attacker] += counted_triple
                        
                    set_hudmessage
(0402550.500.3312.02.0)
                    
show_hudmessage(g_attacker"%L"LANG_SERVER"TRIPLE_XP"counted_triple + (get_pcvar_num(enable_admin_xp) && get_user_flags(g_attacker) & ADMIN_EXTRA get_pcvar_num(admin_xp) : 0))
                }
                else if ( 
g_kills[g_attacker] == get_pcvar_num(ultra_kills) && get_pcvar_num(enable_ultra) )
                {
                    
PlayerXp[g_attacker] += counted_ultra
                        
                    set_hudmessage
(2553000.500.3312.02.0)
                    
show_hudmessage(g_attacker"%L"LANG_SERVER"ULTRA_XP"counted_ultra + (get_pcvar_num(enable_admin_xp) && get_user_flags(g_attacker) & ADMIN_EXTRA get_pcvar_num(admin_xp) : 0))
                }
                else
                {
                    
PlayerXp[g_attacker] += get_pcvar_num(xp_kill)
                    
                    
set_hudmessage(0255500.500.3312.02.0)
                    
show_hudmessage(g_attacker"+%i", (get_pcvar_num(enable_admin_xp) && get_user_flags(g_attacker) & ADMIN_EXTRA get_pcvar_num(admin_xp) : 0) + get_pcvar_num(xp_kill) )
                }
                
                
check_level(g_attacker)
            }
        }
    }
}
public 
Event_StatusValue(id)
{
    new 
target read_data(2)
      if(
target != id && target != && get_pcvar_num(p_Enabled))
      {
        static 
sName[32];
        
get_user_name(targetsName31)

        
set_hudmessage(2552552550.6, -1.000.06.00.00.02)
        
ShowSyncHudMsg(idg_msgHudSync1"%L"LANG_SERVER"LEVEL_TEXT"sNamePlayerLevel[target], RANKLEVELS[PlayerLevel[target]])
    }
}
public 
task_show_level(task)
{
    new 
id task TASK_SHOW_LEVEL
    
    
if(!is_user_alive(id) || !get_pcvar_num(show_level_text) || !get_pcvar_num(p_Enabled) )
        return;
    
    
set_hudmessage(255000.020.3300.00.30.00.0)
    
ShowSyncHudMsg(idg_msgHudSync1 "%L"LANG_SERVER"LEVEL_HUD_TEXT"PlayerLevel[id], PlayerXp[id], LEVELS[PlayerLevel[id]], RANK[PlayerLevel[id]], RANKLEVELS[PlayerLevel[id]])
    
    
set_task(0.1"task_show_level"TASK_SHOW_LEVEL id)        
}
public 
showlevel(id)
{
    if ( !
get_pcvar_num(p_Enabled) || get_pcvar_num(show_level_text) )
        return 
PLUGIN_HANDLED;
    
    
client_printcolor(id"%L"LANG_SERVER"LEVEL_TEXT2"PlayerLevel[id] , PlayerXp[id], LEVELS[PlayerLevel[id]]);
    
client_printcolor(id"%L"LANG_SERVER"LEVEL_TEXT3"RANK[PlayerLevel[id]], RANKLEVELS[PlayerLevel[id]]);
    
    return 
PLUGIN_HANDLED;
}
public 
descriptionx(id)
{
    new 
szMotd[2048], szTitle[64], iPos 0
    format
(szTitle63"Info")
    
iPos += format(szMotd[iPos], 2047-iPos"<html><head><style type=^"text/css^">pre{color:#FFB000;}body{background:#000000;margin-left:8px;margin-top:0px;}</style></head><pre><body>")
    
iPos += format(szMotd[iPos], 2047-iPos"^n^n<b>%s</b>^n^n"szTitle)
    
iPos += format(szMotd[iPos], 2047-iPos"%L^n"LANG_SERVER"DESCRIPTION")
    
    
iPos += format(szMotd[iPos], 2047-iPos"%L"LANG_SERVER"DESCRIPTION2")
        
    
show_motd(idszMotdszTitle)
    return 
PLUGIN_HANDLED;
}
public 
check_level(id)
{
    if(
PlayerLevel[id] < MAXLEVEL-&& get_pcvar_num(p_Enabled))
    {
        while(
PlayerXp[id] >= LEVELS[PlayerLevel[id]])
        {
            
PlayerLevel[id]++;
                
            if(
is_user_alive(id))
            {    
                if ( 
get_pcvar_num(level_style) )
                {
                    
give_weapon(id);
                }
                
                new 
p_origin[3];
                
get_user_origin(idp_origin0);
                
                
set_sprite(p_originlevelspr30)
                
set_sprite(p_originlevelspr230)
            }
            
emit_sound(idCHAN_ITEMLevelUp1.0ATTN_NORM0PITCH_NORM);
            
            static 
name[32] ; get_user_name(idnamecharsmax(name));
            
client_printcolor(0"%L"LANG_SERVER"LEVEL_UP"namePlayerLevel[id]);
        }
    } 
}
// Main Menu Info
public show_main_menu_info(id)
{
    if ( !
get_pcvar_num(p_Enabled) )
        return;
    
    static 
menu[510], len;
    
len 0;
    
    new 
xKeys3 MENU_KEY_0|MENU_KEY_1;

    
// Title
    
len += formatex(menu[len], sizeof menu len"%L"LANG_SERVER"TITLE_MENU_INFO")
    
    
len += formatex(menu[len], sizeof menu len"\r1. \w%L"id"INFO")
    if ( 
get_pcvar_num(show_rank) )
    {
        
xKeys3 |= (MENU_KEY_2)
        
        
len += formatex(menu[len], sizeof menu len"^n\r2. \wTop 20^n")
    }
    else
    {
        
len += formatex(menu[len], sizeof menu len"^n\d2. Top 20^n")
    }
    
    if(
find_plugin_byfile("gunxpmod_shop.amxx") != INVALID_PLUGIN_ID)
    {
        
xKeys3 |= (MENU_KEY_3)
        
        
len += formatex(menu[len], sizeof menu len"\r3. \w%L^n"id"ITEM_LIST")
        if ( 
is_user_alive(id) )
        {
            
xKeys3 |= (MENU_KEY_4)
            
            
len += formatex(menu[len], sizeof menu len"\r4. \w%L^n"id"UNLOCKS_SHOP_TEXT")
        }
    }
    
    
len += formatex(menu[len], sizeof menu len"^n^n\r0.\w %L"id"EXIT_MENU")

    
show_menu(idxKeys3menu, -1"Main Menu")

public 
main_menu_info(idkey)
{
    switch (
key)
    {
        case 
0:
        {
            
show_main_menu_info(id)
            
            
descriptionx(id)
        }
        case 
1:
        {
            
showtop20(id)
            
            
show_main_menu_info(id)
        }
        case 
2:
        {
            
show_main_menu_info(id)
            
            if(
callfunc_begin"display_items","gunxpmod_shop.amxx") == 1)
            {
                
callfunc_push_intid ); 
                
callfunc_end();
            }
        }
        case 
3:
        {
            if(
callfunc_begin("item_upgrades","gunxpmod_shop.amxx") == 1)
            {
                
callfunc_push_intid ); 
                
callfunc_end();
            }
        }
        case 
9:
        {
            return 
PLUGIN_HANDLED;
        }
    }

    return 
PLUGIN_HANDLED;
}
// Main Menu Level Style
public show_main_menu_level(id)
{
    if ( !
is_user_alive(id) )
        return;
    
    new 
szInfo[60], szChooseT[40], szLastG[40];
    
formatex(szInfocharsmax(szInfo), "%L"LANG_SERVER"TITLE_MENU"PlayerLevel[id], PlayerXp[id], LEVELS[PlayerLevel[id]] );
    
    new 
menu menu_create(szInfo "main_menu_level");
    
    
formatex(szChooseTcharsmax(szChooseT), "%L"LANG_SERVER"CHOOSE_TEXT");
    
menu_additem(menuszChooseT"1"0);
    
    
formatex(szLastGcharsmax(szLastG), "%L"LANG_SERVER"LAST_GUNS");
    
menu_additem(menuszLastG"2"0);
    
    new 
szExit[15];
    
formatex(szExitcharsmax(szExit), "%L"LANG_SERVER"EXIT_MENU");
    
    
menu_setprop(menuMPROP_EXITNAMEszExit);
    
    
menu_display(id menu 0);

public 
main_menu_level(id menu item

    if ( !
is_user_alive(id) )
    {
        return 
PLUGIN_HANDLED;
    }
    
    
#if defined ZOMBIE_PLAGUE
    
if ( zp_has_round_started() && cs_get_user_team(id) == CS_TEAM_T )
        return 
PLUGIN_HANDLED;
    
#endif
    
    
if(item == MENU_EXIT
    { 
        
menu_destroy(menu); 
        return 
PLUGIN_HANDLED;
    } 
    new 
data[6], iName[64];
    new 
accesscallback;
    
menu_item_getinfo(menuitemaccessdata,5iName63callback);

    new 
item_id str_to_num(data);
    
    switch (
item_id)
    {
        case 
1// show pistols
        
{
            
show_menu_level_pistol(id);
        }
        case 
2// last weapons
        
{
            if ( 
PlayerLevel[id] > MAX_PISTOLS_MENU )
            {
                
give_weapon_menu(idg_remember_selection[id], 11);
                
give_weapon_menu(idg_remember_selection_pistol[id], 00);
            }
            else if ( 
PlayerLevel[id] < MAX_PISTOLS_MENU )
            {
                
give_weapon_menu(idg_remember_selection_pistol[id], 11);
            }
        }
    }

    
menu_destroy(menu); 
    return 
PLUGIN_HANDLED;
}
// Menu Level Style Pistols
public show_menu_level_pistol(id)
{
    if ( !
is_user_alive(id) )
        return;
    
    new 
szInfo[60];
    
formatex(szInfocharsmax(szInfo), "%L"LANG_SERVER"TITLE_MENU"PlayerLevel[id], PlayerXp[id], LEVELS[PlayerLevel[id]] );
    
    new 
menu menu_create(szInfo "pistol_menu");
    
    for (new 
item_id 0item_id MAX_PISTOLS_MENUitem_id++)
    {
        new 
szItems[60], szTempid[32];
            
        if ( 
PlayerLevel[id] >= GUN_LEVELS[item_id] )
        {
            
formatex(szItemscharsmax(szItems), "%L"LANG_SERVER"ACTIVE_MENU"RANK[item_id], GUN_LEVELS[item_id] )

            
num_to_str(item_idszTempidcharsmax(szTempid) );

            
menu_additem(menuszItemsszTempid0);
        }
            
        else
        {
            
formatex(szItemscharsmax(szItems), "%L"LANG_SERVER"INACTIVE_MENU"RANK[item_id], GUN_LEVELS[item_id] )
            
menu_additem(menuszItems"999"0menu_makecallback("CallbackMenu"));
        }
    }
    
    new 
szNext[15], szBack[15], szExit[15];
    
formatex(szBackcharsmax(szBack), "%L"LANG_SERVER"BACK_MENU");
    
formatex(szNextcharsmax(szNext), "%L"LANG_SERVER"NEXT_MENU");
    
formatex(szExitcharsmax(szExit), "%L"LANG_SERVER"EXIT_MENU");
    
    
menu_setprop(menuMPROP_BACKNAMEszBack
    
menu_setprop(menuMPROP_NEXTNAMEszNext
    
menu_setprop(menuMPROP_EXITNAMEszExit
    
    
menu_display(id menu 0); 
}
public 
pistol_menu(id menu item

    if ( !
is_user_alive(id) )
    {
        return 
PLUGIN_HANDLED;
    }
    
    
#if defined ZOMBIE_PLAGUE
    
if ( zp_has_round_started() && cs_get_user_team(id) == CS_TEAM_T )
        return 
PLUGIN_HANDLED;
    
#endif
    
    
if(item == MENU_EXIT
    { 
        
menu_destroy(menu); 
        return 
PLUGIN_HANDLED;
    } 
    new 
data[6], iName[64];
    new 
accesscallback;
    
menu_item_getinfo(menuitemaccessdata,5iName63callback);

    new 
item_id str_to_num(data);

    
g_remember_selection_pistol[id] = item_id;
    
    
give_weapon_menu(iditem_id11);
    
    if ( 
PlayerLevel[id] > MAX_PISTOLS_MENU )
    {
        
show_menu_level(id);
    }

    
menu_destroy(menu); 
    return 
PLUGIN_HANDLED;
}
// Menu Level Style Primary
public show_menu_level(id)
{
    if ( !
is_user_alive(id) || PlayerLevel[id] < MAX_PISTOLS_MENU )
        return;
    
    new 
szInfo[100];
    
formatex(szInfocharsmax(szInfo), "%L"LANG_SERVER"TITLE_MENU"PlayerLevel[id], PlayerXp[id], LEVELS[PlayerLevel[id]] );
    
    new 
menu menu_create(szInfo "level_menu");
    
    for (new 
item_id MAX_PISTOLS_MENUitem_id MAXLEVELitem_id++)
    {
        new 
szItems[512], szTempid[32];
            
        if ( 
PlayerLevel[id] >= GUN_LEVELS[item_id] )
        {
            
formatex(szItemscharsmax(szItems), "%L"LANG_SERVER"ACTIVE_MENU"RANK[item_id], GUN_LEVELS[item_id] )

            
num_to_str(item_idszTempidcharsmax(szTempid) );

            
menu_additem(menuszItemsszTempid0);
        }
        else
        {
            
formatex(szItemscharsmax(szItems), "%L"LANG_SERVER"INACTIVE_MENU"RANK[item_id], GUN_LEVELS[item_id] )
            
menu_additem(menuszItems"999"0menu_makecallback("CallbackMenu"));
        }
    }
    
    new 
szNext[15], szBack[15], szExit[15];
    
formatex(szBackcharsmax(szBack), "%L"LANG_SERVER"BACK_MENU");
    
formatex(szNextcharsmax(szNext), "%L"LANG_SERVER"NEXT_MENU");
    
formatex(szExitcharsmax(szExit), "%L"LANG_SERVER"EXIT_MENU");
    
    
menu_setprop(menuMPROP_BACKNAMEszBack
    
menu_setprop(menuMPROP_NEXTNAMEszNext
    
menu_setprop(menuMPROP_EXITNAMEszExit
    
    
menu_display(id menu 0); 
}
public 
level_menu(id menu item

    if ( !
is_user_alive(id) || PlayerLevel[id] < MAX_PISTOLS_MENU )
    {
        return 
PLUGIN_HANDLED;
    }
    
    
#if defined ZOMBIE_PLAGUE
    
if ( zp_has_round_started() && cs_get_user_team(id) == CS_TEAM_T )
        return 
PLUGIN_HANDLED;
    
#endif
    
    
if(item == MENU_EXIT
    { 
        
menu_destroy(menu); 
        return 
PLUGIN_HANDLED;
    } 
    new 
data[6], iName[64];
    new 
accesscallback;
    
menu_item_getinfo(menuitemaccessdata,5iName63callback);

    new 
item_id str_to_num(data);

    
g_remember_selection[id] = item_id;
    
    
give_weapon_menu(iditem_id00);
    
    
menu_destroy(menu); 
    return 
PLUGIN_HANDLED;
}
public 
CallbackMenu(idmenuitem

    return 
ITEM_DISABLED
}

// Selected by menu or remember selection and give item
public give_weapon_menu(idselectionstripgivegren)
{
    
#if defined ZOMBIE_SWARM
    
if( is_user_alive(id) && cs_get_user_team(id) == CS_TEAM_CT && get_pcvar_num(p_Enabled) ) 
    {
        if ( 
strip )
        {
            
StripPlayerWeapons(id)
        }
        
        if ( 
get_pcvar_num(enable_grenades) && givegren )
        {
            
give_item(idFLASHBANG_LEVEL[PlayerLevel[id]]);
            
give_item(idFLASHBANG_LEVEL[PlayerLevel[id]]);
            
give_item(idHEGRENADE_LEVEL[PlayerLevel[id]]);
            
give_item(idSMOKEGRENADE_LEVEL[PlayerLevel[id]]);
        }
        
        
give_item(idWEAPONCONST[selection]);

        
cs_set_user_bpammo(idAMMOCONST[selection], AMMO2CONST[selection])
    }
    
#endif
    
    #if defined ZOMBIE_INFECTION || defined NORMAL_MOD
    
if(is_user_alive(id) && get_pcvar_num(p_Enabled)) 
    {
        if ( 
strip )
        {
            
StripPlayerWeapons(id);
        }
        
        if ( 
get_pcvar_num(enable_grenades) && givegren )
        {
            
give_item(idFLASHBANG_LEVEL[PlayerLevel[id]]);
            
give_item(idFLASHBANG_LEVEL[PlayerLevel[id]]);
            
give_item(idHEGRENADE_LEVEL[PlayerLevel[id]]);
            
give_item(idSMOKEGRENADE_LEVEL[PlayerLevel[id]]);
        }
        
        
give_item(idWEAPONCONST[selection]);

        
cs_set_user_bpammo(idAMMOCONST[selection], AMMO2CONST[selection])
    }
    
#endif
}
public 
give_weapon(id)
{
    
#if defined ZOMBIE_SWARM
    
if( is_user_alive(id) && cs_get_user_team(id) == CS_TEAM_CT && get_pcvar_num(p_Enabled)) 
    {
        
StripPlayerWeapons(id);
        
        if ( 
get_pcvar_num(enable_grenades) && get_pcvar_num(level_style) )
        {
            
give_item(idFLASHBANG_LEVEL[PlayerLevel[id]]);
            
give_item(idFLASHBANG_LEVEL[PlayerLevel[id]]);
            
give_item(idHEGRENADE_LEVEL[PlayerLevel[id]]);
            
give_item(idSMOKEGRENADE_LEVEL[PlayerLevel[id]]);
        }
        
        
give_item(idWEAPONCONST[PlayerLevel[id]]);
            
        
cs_set_user_bpammo(idAMMOCONST[PlayerLevel[id]], AMMO2CONST[PlayerLevel[id]])
    }
    
#endif
    
    #if defined ZOMBIE_INFECTION || defined NORMAL_MOD
    
if(is_user_alive(id) && get_pcvar_num(p_Enabled)) 
    {
        
StripPlayerWeapons(id);
        
        if ( 
get_pcvar_num(enable_grenades) && get_pcvar_num(level_style) )
        {
            
give_item(idFLASHBANG_LEVEL[PlayerLevel[id]]);
            
give_item(idFLASHBANG_LEVEL[PlayerLevel[id]]);
            
give_item(idHEGRENADE_LEVEL[PlayerLevel[id]]);
            
give_item(idSMOKEGRENADE_LEVEL[PlayerLevel[id]]);
        }

        
give_item(idWEAPONCONST[PlayerLevel[id]]);

        
cs_set_user_bpammo(idAMMOCONST[PlayerLevel[id]], AMMO2CONST[PlayerLevel[id]])
    }
    
#endif
}
public 
set_sprite(p_origin[3], spriteradius)
{
    
// Explosion
    
message_begin(MSG_BROADCASTSVC_TEMPENTITYp_origin)
    
write_byte(TE_EXPLOSION)
    
write_coord(p_origin[0])
    
write_coord(p_origin[1])
    
write_coord(p_origin[2])
    
write_short(sprite)
    
write_byte(radius)
    
write_byte(15)
    
write_byte(4)
    
message_end()
}
//Shows Top 20
public showtop20(id)
{
    if( !
get_pcvar_num(p_Enabled) && !get_pcvar_num(show_rank) )
        return;
    
    static 
Sort[33][2];
    new 
players[32],num,count,index;
    
get_players(players,num);
    
    for(new 
0numi++)
    {
        
index players[i];
        
Sort[count][0] = index;
        
Sort[count][1] = PlayerXp[index];
        
count++;
    }
    
    
SortCustom2D(Sort,count,"CompareXp");
    new 
motd[1501],iLen;
    
iLen formatex(motdsizeof motd 1,"<body bgcolor=#000000><font color=#98f5ff><pre>");
    
iLen += formatex(motd[iLen], (sizeof motd 1) - iLen,"%s %-22.22s %3s^n""#""Name""# Experience");
    
    new 
clamp(count,0,20);
    new 
name[32],kindex;
    
    for(new 
0yx++)
    {
        
kindex Sort[x][0];
        
get_user_name(kindex,name,sizeof name 1);
        
iLen += formatex(motd[iLen], (sizeof motd 1) - iLen,"%d %-22.22s %d^n"1nameSort[x][1]);
    }
    
iLen += formatex(motd[iLen], (sizeof motd 1) - iLen,"</body></font></pre>");
    
show_motd(id,motd"GunXpMod Top 20");
}
public 
CompareXp(elem1[], elem2[])
{
    if(
elem1[1] > elem2[1])
        return -
1;
    else if(
elem1[1] < elem2[1])
        return 
1;
    
    return 
0;

// Command to set player Level
public cmd_give_level(idlevelcid
{
    if( !
cmd_access(idlevelcid4) || !get_pcvar_num(p_Enabled) )
    {
        return 
PLUGIN_HANDLED;
    }
    
    new 
Arg1[64], Target
    read_argv
(1Arg163)
    
Target cmd_target(idArg10)
    
    new 
iLevel[32], Value
    read_argv
(2iLevel31)
    
Value str_to_num(iLevel)
    
    if(
iLevel[0] == '-'
    {
        
console_print(id"You can't have a '-' in the value!")
        return 
PLUGIN_HANDLED;
    }
    
    if(!
Target
    {
        
console_print(id"Target not found!")
        return 
PLUGIN_HANDLED;
    }
    
    if(
Value MAXLEVEL-1)
    {
        
console_print(id"You can't set a more than %d!"MAXLEVEL-1)
        return 
PLUGIN_HANDLED;
    }
    
    if(
Value 1)
    {
        
console_print(id"You can't set less than 1!")
        return 
PLUGIN_HANDLED;
    }
    
    new 
AdminName[32]
    
get_user_name(idAdminName31)
        
    new 
TargetName[32]
    
get_user_name(TargetTargetName31)
    
    
PlayerLevel[Target] = Value 1
    PlayerXp
[Target] = LEVELS[PlayerLevel[Target]]
    
check_level(Target)
    
    
client_printcolor(Target"/gADMIN: /ctr%s /yhas set your level to /g%d"AdminNameValue)

    return 
PLUGIN_HANDLED;
}

// ============================================================//
//                          [~ Saving datas ~]                   //
// ============================================================//
public MySQLx_Init()
{
    if ( !
get_pcvar_num(p_Enabled) || !get_pcvar_num(save_type) )
        return;
    
    new 
szHost[64], szUser[32], szPass[32], szDB[128];
    
    
get_pcvar_stringmysqlx_hostszHostcharsmaxszHost ) );
    
get_pcvar_stringmysqlx_userszUsercharsmaxszUser ) );
    
get_pcvar_stringmysqlx_passszPasscharsmaxszPass ) );
    
get_pcvar_stringmysqlx_dbszDBcharsmaxszDB ) );
    
    
g_hTuple SQL_MakeDbTupleszHostszUserszPassszDB );
    
    for ( new 
0sizeof szTablesi++ )
    {
        
SQL_ThreadQueryg_hTuple"QueryCreateTable"szTables[i])
    }
}
public 
QueryCreateTableiFailStateHandle:hQueryszError[ ], iErroriData[ ], iDataSizeFloat:fQueueTime 

    if( 
iFailState == TQUERY_CONNECT_FAILED 
    
|| iFailState == TQUERY_QUERY_FAILED 
    { 
        
log_amx"%s"szError ); 
        
        return;
    } 
}

SaveLevel(id)

    new 
szAuth[33];
    new 
szKey[64];

    if ( 
get_pcvar_num(savexp) == )
    {
        
get_user_ipidszAuth charsmax(szAuth), 1);
        
formatexszKey 63 "%s-IP" szAuth);
    }
    else if ( 
get_pcvar_num(savexp) == )
    {
        
get_user_authidid szAuth charsmax(szAuth) );
        
formatexszKey 63 "%s-ID" szAuth);
    }
    else if ( 
get_pcvar_num(savexp) == )
    {
        
get_user_nameidszAuth charsmax(szAuth) );
        
formatexszKey 63 "%s-NAME" szAuth);
    }

    if ( !
get_pcvar_num(save_type) )
    {
        new 
szData[256];
    
        
formatexszData 255 "%i#%i#" PlayerLevel[id], PlayerXp[id] );
        
        
nvault_setg_Vault szKey szData );
    }
    else
    {    
        static 
szQuery128 ]; 

        
formatexszQuery127"REPLACE INTO `mytable` (`player_id`, `player_level`, `player_xp`) VALUES ('%s', '%d', '%d');"szAuth PlayerLevel[id], PlayerXp[id] );
        
        
SQL_ThreadQueryg_hTuple"QuerySetData"szQuery);
    }
}

LoadLevel(id)
{
    new 
szAuth[33];
    new 
szKey[40];

    if ( 
get_pcvar_num(savexp) == )
    {
        
get_user_ipidszAuth charsmax(szAuth), 1);
        
formatexszKey 63 "%s-IP" szAuth);
    }
    else if ( 
get_pcvar_num(savexp) == )
    {
        
get_user_authidid szAuth charsmax(szAuth) );
        
formatexszKey 63 "%s-ID" szAuth);
    }
    else if ( 
get_pcvar_num(savexp) == )
    {
        
get_user_nameidszAuth charsmax(szAuth) );
        
formatexszKey 63 "%s-NAME" szAuth);
    }

    if ( !
get_pcvar_num(save_type) )
    {
        new 
szData[256];

        
formatex(szData 255"%i#%i#"PlayerLevel[id], PlayerXp[id]) 
            
        
nvault_get(g_VaultszKeyszData255

        
replace_all(szData 255"#"" ")
        new 
xp[32], level[32
        
parse(szDatalevel31xp31
        
PlayerLevel[id] = str_to_num(level)
        
PlayerXp[id] = str_to_num(xp)  
    }
    else
    {
        static 
szQuery128 ], iData]; 
        
formatexszQuery127"SELECT `player_level`, `player_xp` FROM `mytable` WHERE ( `player_id` = '%s' );"szAuth ); 
     
        
iData] = id;
        
SQL_ThreadQueryg_hTuple"QuerySelectData"szQueryiData);
    }
}
public 
QuerySelectDataiFailStateHandle:hQueryszError[ ], iErroriData[ ], iDataSizeFloat:fQueueTime 

    if( 
iFailState == TQUERY_CONNECT_FAILED 
    
|| iFailState == TQUERY_QUERY_FAILED 
    { 
        
log_amx"%s"szError );
        
        return;
    } 
    else 
    { 
        new 
id iData];
        
        new 
ColLevel SQL_FieldNameToNum(hQuery"player_level"
        new 
ColXp SQL_FieldNameToNum(hQuery"player_xp")
        
        while (
SQL_MoreResults(hQuery)) 
        {
            
PlayerLevel[id] = SQL_ReadResult(hQueryColLevel);
            
PlayerXp[id] = SQL_ReadResult(hQueryColXp);
                    
            
SQL_NextRow(hQuery)
        }
    } 
}
public 
QuerySetDataiFailStateHandle:hQueryszError[ ], iErroriData[ ], iDataSizeFloat:fQueueTime 

    if( 
iFailState == TQUERY_CONNECT_FAILED 
    
|| iFailState == TQUERY_QUERY_FAILED 
    { 
        
log_amx"%s"szError ); 
        
        return;
    } 

// ============================================================//
//                          [~ Natives ~]                          //
// ============================================================//
// Native: get_user_xp
public native_get_user_xp(id)
{
    return 
PlayerXp[id];
}
// Native: set_user_xp
public native_set_user_xp(idamount)
{
    
PlayerXp[id] = amount;
}
// Native: get_user_level
public native_get_user_level(id)
{
    return 
PlayerLevel[id];
}
// Native: set_user_xp
public native_set_user_level(idamount)
{
    
PlayerLevel[id] = amount;
}
// Native: Gets user level by Xp
public native_get_user_max_level(id)
{
    return 
LEVELS[PlayerLevel[id]];
}
// ============================================================//
//                          [~ Stocks ~]                          //
// ============================================================//
stock client_printcolor(const id, const input[], any:...)
{
    new 
count 1players[32];
    static 
msg[191];
    
vformat(msg,190,input,3);
    
replace_all(msg,190,"/g","^4");// green txt
    
replace_all(msg,190,"/y","^1");// orange txt
    
replace_all(msg,190,"/ctr","^3");// team txt
    
replace_all(msg,190,"/w","^0");// team txt
    
if (idplayers[0] = id; else get_players(players,count,"ch");
    for (new 
0counti++)
        if (
is_user_connected(players[i]))
        {
            
message_begin(MSG_ONE_UNRELIABLESayTxT_players[i]);
            
write_byte(players[i]);
            
write_string(msg);
            
message_end();
        }
}    
public 
StripPlayerWeapons(id

    
strip_user_weapons(id
    
set_pdata_int(idOFFSET_PRIMARYWEAPON0
    
give_item(id"weapon_knife");


public 
Damage(id)
{
    new 
damage read_data(2)
    new 
kid get_user_attacker(id)    // Gracz atakujacy
    
if(kid==id || !kid || !is_user_alive(kid)) return PLUGIN_HANDLED
    
while(damage>=get_pcvar_num(pack_bonus2))
    {
        
damage-=get_pcvar_num(pack_bonus2)
        
get_pcvar_num(xp_kill)
    }
    return 
PLUGIN_CONTINUE
    

__________________
Invisible System | 100%
ـــــــــــــــــــــــــــــ
Anti setinfo check | Ez Plugin and lite
ـــــــــــــــــــــــــــــ
[ZP] Free VIP Menu | Free VIP menu | ZP-Mod |

Last edited by Dr Zayd; 09-13-2014 at 11:06.
Dr Zayd is offline
Old 09-13-2014, 20:56
The Monster Svng
This message has been deleted by YamiKaitou. Reason: spam
BLANCIKJOINT_
Member
Join Date: Oct 2013
Old 09-15-2014 , 06:50   Re: [HELP] GunXP Please (XP Per Damage Errors)
Reply With Quote #2

https://forums.alliedmods.net/showthread.php?p=802294


see it
BLANCIKJOINT_ is offline
TheKinjaz
New Member
Join Date: Aug 2022
Old 04-25-2023 , 10:54   Re: [HELP] GunXP Please (XP Per Damage Errors)
Reply With Quote #3

do you have a working xp per dmg for this ?
sorry to bother ya
TheKinjaz is offline
Reply



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 09:25.


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