Morrgans Posted January 29, 2017 Posted January 29, 2017 Descriere: Cred ca stiti cu toti ce plugin de XP ruleaza pe serverul aznet ( scuzati reclama ). Acest plugin probabil ca nu e la fel, dar e majoritatea functiilor si colorat la fel.Descarcare: ZippyShare | GirlShare | SendSpace Nume: Level / XP Mod HNS Autor: Pufq // -ModeR- Levele + Iteme + XP: LVL 1: +1FL ( EXP: 50 ) LVL 2: +2FL ( EXP: 150 ) LVL 3: +2FL ; +1SM ( EXP: 250 ) LVL 4: +2FL ; +2SM ( EXP: 500 ) LVL 5: +2FL ; +2SM ; +1HE ; +1GL Deagle ( EXP: 700 ) LVL 6: +3FL ; +3SM ; +2HE ; +1GL Deagle ; +15HP ( EXP: 1000 ) LVL 7: +3FL ; +2SM ; +2HE ; +1GL Deagle ; +20HP ( EXP: 1300 ) LVL 8: +5FL ; +4SM ; +3HE ; +1GL Deagle ; +25HP ( EXP: 1600 ) LVL 9: +5FL ; +5SM ; +3HE ; +1GL Deagle ; +30HP ( EXP: 2000 ) LVL 10: +6FL ; +5SM ; +3HE ; +2GL Deagle ; +40HP ; +30AP ( EXP: 3000 ) LVL 11: +6FL ; +5SM ; +3HE ; +2GL Deagle ; +40HP ; +35AP ( EXP: 4500 ) LVL 12: +6FL ; +6SM ; +3HE ; +2GL Deagle ; +45HP ; +35AP ( EXP: 6000 ) LVL 13: +7FL ; +6SM ; +5HE ; +3GL Deagle ; +45HP ; +35HP ( EXP: 8000 ) LVL 14: +7FL ; +6SM ; +6HE ; +1GL Usp ; +45HP ; +35HP ( EXP: 9000 ) LVL 15: +7FL ; +7SM ; +6HE ; +2GL Usp ; +50HP ; +40AP ( EXP: 10.000 ) Versiune: 0.0.1Atentie !!!!: Pluginul are nevoie de: _items.inc | _skills.inc si Puf_CC_New.inc pentru compilarea locala. Le gasiti in folder scripting/include/_GM..SMA: /* Credite: - Multumesc lui aFK[;x], mi-a zis ce iteme sa pun la fiecare nivel .. ! Pentru compilarea pluginului, aveti nevoie de: 1. _items.inc 2. _skills.inc 3. _Puf_CC_New.inc _________________________________ Pe toate acestea le gasiti in folderul ~ _GM ~ ! ATENTIE !!!! Puneti folderul _GM cu toate fisierele din el, in scripting/include pentru compilarea locala. ___________________________________ HF ___ _________________________________ Levele + Iteme + EXP: LVL 1: +1FL ( EXP: 50 ) LVL 2: +2FL ( EXP: 150 ) LVL 3: +2FL ; +1SM ( EXP: 250 ) LVL 4: +2FL ; +2SM ( EXP: 500 ) LVL 5: +2FL ; +2SM ; +1HE ; +1GL Deagle ( EXP: 700 ) LVL 6: +3FL ; +3SM ; +2HE ; +1GL Deagle ; +15HP ( EXP: 1000 ) LVL 7: +3FL ; +2SM ; +2HE ; +1GL Deagle ; +20HP ( EXP: 1300 ) LVL 8: +5FL ; +4SM ; +3HE ; +1GL Deagle ; +25HP ( EXP: 1600 ) LVL 9: +5FL ; +5SM ; +3HE ; +1GL Deagle ; +30HP ( EXP: 2000 ) LVL 10: +6FL ; +5SM ; +3HE ; +2GL Deagle ; +40HP ; +30AP ( EXP: 3000 ) LVL 11: +6FL ; +5SM ; +3HE ; +2GL Deagle ; +40HP ; +35AP ( EXP: 4500 ) LVL 12: +6FL ; +6SM ; +3HE ; +2GL Deagle ; +45HP ; +35AP ( EXP: 6000 ) LVL 13: +7FL ; +6SM ; +5HE ; +3GL Deagle ; +45HP ; +35HP ( EXP: 8000 ) LVL 14: +7FL ; +6SM ; +6HE ; +1GL Usp ; +45HP ; +35HP ( EXP: 9000 ) LVL 15: +7FL ; +7SM ; +6HE ; +2GL Usp ; +50HP ; +40AP ( EXP: 10.000 ) ChangeLog: 0.0.1: Lansare. 0.0.2: Adaugare sistem XP / Rezolvarea buguriilor. ________________________________________________________________________________________________________ */ // Include #include < amxmodx > #include < amxmisc > #include < cstrike > #include < fun > #include < hamsandwich > #include < nvault > // Old includes #include < _GM/_items > #include < _GM/_skills > #include < _GM/_Puf_CC_New > // Define #define PLUGIN_NAME "GameMod _ XP" #define PLUGIN_VERSION "0.0.2" #define PLUGIN_AUTHOR "Pufq" // Levels new const g_szLEVELS[ 15 ] = { 50, 150, 250, 500, 700, 1000, 1300, 1600, 2000, 3000, 4500, 6000, 8000, 9000, 10000 }; new Player_LVL[ 33 ], Player_XP[ 33 ]; // Cvars new HNS_KILL, HNS_HS; // Pragma #pragma semicolon 1 // Plugin public plugin_init( ) { register_plugin( PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR ); // Ham RegisterHam( Ham_Spawn, "player", "hamPlayerPostSpawn", 1 ); // evDeathMsg register_event( "DeathMsg", "evDeathMsg", "a" ); // Commands info level / xp register_clcmd( "say /xp", "pInfo" ); register_clcmd( "say /lvl", "pInfo" ); // Info LVL / XP Player register_concmd( "amx_level", "cmd_level", ADMIN_KICK, "< Player > - Afli XP-ul / LVL-ul unui player" ); // Cvars HNS_KILL = register_cvar( "hns_game_kill", "25" ); HNS_HS = register_cvar( "hns_game_hs", "40" ); // Add / Remove XP register_concmd( "hns_game_givexp", "cmd_givexp", ADMIN_RCON, "< Player > < Numar > - Ii dai XP" ); register_concmd( "hns_game_takexp", "cmd_takexp", ADMIN_RCON, "< Player > < Numar > - Ii scoti din XP" ); } public hamPlayerPostSpawn( id ) { if( ( Player_LVL[ id ] < 15 && ( Player_XP[ id ] > g_szLEVELS[ Player_LVL[ id ] ] ) ) ) { while( Player_XP[ id ] > g_szLEVELS[ Player_LVL[ id ] ] ) { Player_LVL[ id ] += 1; Puf_CC_New( id, "Ai trecut la !vLVL!c: !e%d!c(!vXP!c: !e%d!c)", Player_LVL[ id ], Player_XP[ id ] ); } } set_task( 15.0, "pItems", id ); } public pItems( id ) { if( Player_LVL[ id ] == 1 ) { Puf_CC_New( id, "Ai !vLVL!c: !e%d!c (!vXP: !e%d!c)", Player_LVL[ id ], Player_XP[ id ] ); Puf_CC_New( id, "Iteme: [!v+1!eFL!c]" ); iGrenada( id, iFLASH, 1 ); } else if( Player_LVL[ id ] == 2 ) { Puf_CC_New( id, "Ai !vLVL!c: !e%d!c (!vXP: !e%d!c)", Player_LVL[ id ], Player_XP[ id ] ); Puf_CC_New( id, "Iteme: [!v+2!eFL!c]" ); iGrenada( id, iFLASH, 2 ); } else if( Player_LVL[ id ] == 3 ) { Puf_CC_New( id, "Ai !vLVL!c: !e%d!c (!vXP: !e%d!c)", Player_LVL[ id ], Player_XP[ id ] ); Puf_CC_New( id, "Iteme: [!v+2!eFL!c][!v+1!eSM!c]" ); iGrenada( id, iFLASH, 2 ); iGrenada( id, iSMOKE, 1 ); } else if( Player_LVL[ id ] == 4 ) { Puf_CC_New( id, "Ai !vLVL!c: !e%d!c (!vXP: !e%d!c)", Player_LVL[ id ], Player_XP[ id ] ); Puf_CC_New( id, "Iteme: [!v+2!eFL!c][!v+2!eSM!c]" ); iGrenada( id, iFLASH, 2 ); iGrenada( id, iSMOKE, 2 ); } else if( Player_LVL[ id ] == 5 ) { Puf_CC_New( id, "Ai !vLVL!c: !e%d!c (!vXP: !e%d!c)", Player_LVL[ id ], Player_XP[ id ] ); Puf_CC_New( id, "Iteme: [!v+2!eFL!c][!v+2!eSM!c][!v+1!eHE!c][!v+1GL!eDGL!c]" ); iGrenada( id, iFLASH, 2 ); iGrenada( id, iSMOKE, 2 ); iGrenada( id, iHE, 1 ); iArma( id, iDeagle, 1 ); } else if( Player_LVL[ id ] == 6 ) { Puf_CC_New( id, "Ai !vLVL!c: !e%d!c (!vXP: !e%d!c)", Player_LVL[ id ], Player_XP[ id ] ); Puf_CC_New( id, "Iteme: [!v+3!eFL!c][!v+2!eSM!c][!v+2!eHE!c][!v+15!eHP!c][!v+1GL!eDGL!c]" ); iGrenada( id, iFLASH, 3 ); iGrenada( id, iSMOKE, 2 ); iGrenada( id, iHE, 2 ); iSkills( id, iHP, 15 ); iArma( id, iDeagle, 1 ); } else if( Player_LVL[ id ] == 7 ) { Puf_CC_New( id, "Ai !vLVL!c: !e%d!c (!vXP: !e%d!c)", Player_LVL[ id ], Player_XP[ id ] ); Puf_CC_New( id, "Iteme: [!v+3!eFL!c][!v+2!eSM!c][!v+2!eHE!c][!v+20!eHP!c][!v+1GL!eDGL!c]" ); iGrenada( id, iFLASH, 3 ); iGrenada( id, iSMOKE, 2 ); iGrenada( id, iHE, 2 ); iSkills( id, iHP, 20 ); iArma( id, iDeagle, 1 ); } else if( Player_LVL[ id ] == 8 ) { Puf_CC_New( id, "Ai !vLVL!c: !e%d!c (!vXP: !e%d!c)", Player_LVL[ id ], Player_XP[ id ] ); Puf_CC_New( id, "Iteme: [!v+5!eFL!c][!v+4!eSM!c][!v+3!eHE!c][!v+25!eHP!c][!v+1GL!eDGL!c]" ); iGrenada( id, iFLASH, 5 ); iGrenada( id, iSMOKE, 4 ); iGrenada( id, iHE, 3 ); iSkills( id, iHP, 35 ); iArma( id, iDeagle, 1 ); } else if( Player_LVL[ id ] == 9 ) { Puf_CC_New( id, "Ai !vLVL!c: !e%d!c (!vXP: !e%d!c)", Player_LVL[ id ], Player_XP[ id ] ); Puf_CC_New( id, "Iteme: [!v+5!eFL!c][!v+5!eSM!c][!v+3!eHE!c][!v+30!eHP!c][!v+1GL!eDGL!c]" ); iGrenada( id, iFLASH, 5 ); iGrenada( id, iSMOKE, 5 ); iGrenada( id, iHE, 3 ); iSkills( id, iHP, 40 ); iSkills( id, iAP, 30 ); iArma( id, iDeagle, 1 ); } else if( Player_LVL[ id ] == 10 ) { Puf_CC_New( id, "Ai !vLVL!c: !e%d!c (!vXP: !e%d!c)", Player_LVL[ id ], Player_XP[ id ] ); Puf_CC_New( id, "Iteme: [!v+6!eFL!c][!v+5!eSM!c][!v+3!eHE!c][!v+40!eHP!c][!v+30!eAP!c][!v+2GL!eDGL!c]" ); iGrenada( id, iFLASH, 6 ); iGrenada( id, iSMOKE, 5 ); iGrenada( id, iHE, 3 ); iSkills( id, iHP, 40 ); iSkills( id, iAP, 30 ); iArma( id, iDeagle, 2 ); } else if( Player_LVL[ id ] == 11 ) { Puf_CC_New( id, "Ai !vLVL!c: !e%d!c (!vXP: !e%d!c)", Player_LVL[ id ], Player_XP[ id ] ); Puf_CC_New( id, "Iteme: [!v+6!eFL!c][!v+5!eSM!c][!v+3!eHE!c][!v+40!eHP!c][!v+35!eAP!c][!v+2GL!eDGL!c]" ); iGrenada( id, iFLASH, 6 ); iGrenada( id, iSMOKE, 5 ); iGrenada( id, iHE, 3 ); iSkills( id, iHP, 40 ); iSkills( id, iAP, 35 ); iArma( id, iDeagle, 2 ); } else if( Player_LVL[ id ] == 12 ) { Puf_CC_New( id, "Ai !vLVL!c: !e%d!c (!vXP: !e%d!c)", Player_LVL[ id ], Player_XP[ id ] ); Puf_CC_New( id, "Iteme: [!v+6!eFL!c][!v+6!eSM!c][!v+3!eHE!c][!v+45!eHP!c][!v+35!eAP!c][!v+2GL!eDGL!c]" ); iGrenada( id, iFLASH, 6 ); iGrenada( id, iSMOKE, 6 ); iGrenada( id, iHE, 3 ); iSkills( id, iHP, 45 ); iSkills( id, iAP, 35 ); iArma( id, iDeagle, 2 ); } else if( Player_LVL[ id ] == 13 ) { Puf_CC_New( id, "Ai !vLVL!c: !e%d!c (!vXP: !e%d!c)", Player_LVL[ id ], Player_XP[ id ] ); Puf_CC_New( id, "Iteme: [!v+7!eFL!c][!v+6!eSM!c][!v+5!eHE!c][!v+45!eHP!c][!v+35!eAP!c][!v+3GL!eDGL!c]" ); iGrenada( id, iFLASH, 7 ); iGrenada( id, iSMOKE, 6 ); iGrenada( id, iHE, 5 ); iSkills( id, iHP, 45 ); iSkills( id, iAP, 35 ); iArma( id, iDeagle, 3 ); } else if( Player_LVL[ id ] == 14 ) { Puf_CC_New( id, "Ai !vLVL!c: !e%d!c (!vXP: !e%d!c)", Player_LVL[ id ], Player_XP[ id ] ); Puf_CC_New( id, "Iteme: [!v+7!eFL!c][!v+6!eSM!c][!v+6!eHE!c][!v+45!eHP!c][!v+35!eAP!c][!v+1GL!eUSP!c]" ); iGrenada( id, iFLASH, 7 ); iGrenada( id, iSMOKE, 6 ); iGrenada( id, iHE, 6 ); iSkills( id, iHP, 50 ); iSkills( id, iAP, 40 ); iArma( id, iUsp, 1 ); } else if( Player_LVL[ id ] == 15 ) { Puf_CC_New( id, "Ai !vLVL!c: !e%d!c (!vXP: !e%d!c)", Player_LVL[ id ], Player_XP[ id ] ); Puf_CC_New( id, "Iteme: [!v+7!eFL!c][!v+7!eSM!c][!v+6!eHE!c][!v+45!eHP!c][!v+35!eAP!c][!v+2GL!eUSP!c]" ); iGrenada( id, iFLASH, 7 ); iGrenada( id, iSMOKE, 7 ); iGrenada( id, iHE, 6 ); iSkills( id, iHP, 50 ); iSkills( id, iAP, 40 ); iArma( id, iUsp, 2 ); } } public evDeathMsg( ) { new iVictim = read_data(2); new iVictimName[ 32 ], iWvar[32]; new iWeapon, iHitPlace, iAttacker = get_user_attacker( iVictim, iWeapon, iHitPlace); get_user_name( iVictim, iVictimName, 31 ); read_data( 4, iWvar, 31 ); if( equal( iWvar, "world", 5 ) ) return; if( iAttacker < 1 || iAttacker > 32 ) return; Player_XP[ iAttacker ] += get_pcvar_num( HNS_KILL ); Puf_CC_New( iAttacker, "Ai primit !v25XP!c pentru ca l-ai omorat pe !e%s!c !", iVictimName ); if( iHitPlace == HIT_HEAD ) { Player_XP[ iAttacker ] += get_pcvar_num( HNS_HS ); Puf_CC_New( iAttacker, "Ai primit !v40XP!c pentru ca l-ai omorat pe !e%s!c cu !vHEADSHOT!c !", iVictimName ); } pHudInfo( iAttacker ); } public pHudInfo( id ) { set_hudmessage( 85, 170, 255, 0.06, 0.26, 1, 6.0, 15.0 ); if( Player_LVL[ id ] < 15 ) { show_hudmessage( id, "[LVL: %d / XP: %i]", Player_LVL[ id ], Player_XP[ id ] ); } else { show_hudmessage( id, "[LVL: %d - Ai LEVEL Maxim ]", Player_LVL[ id ] ); } } public client_disconnect( id ) { SaveData( id ); Player_XP[ id ] = 0; Player_LVL[ id ] = 0; } public client_putinserver( id ) { set_task( 5.0, "welcome_message", id ); LoadData( id ); } public welcome_message( id ) { Puf_CC_New( id, "Salut. Bine ai venit !v%s!c !", iName( id ) ); Puf_CC_New( id, "Acest server ruleaza cu !vGameMod !c-!v XP!c, creat de !vPufq!c !" ); } public pInfo( id ) { Puf_CC_New( id, "Ai !vLVL!c: !e%d!c (!vXP!c: !e%d!c).", Player_LVL[ id ], Player_XP[ id ] ); } public cmd_level( id ) { if( get_user_flags( id ) & ADMIN_KICK ) { new iArg[ 32 ]; read_argv( 1, iArg, 31 ); new iTarget = cmd_target( id, iArg, 9 ); if( !iTarget ) return 1; new iName[ 32 ]; get_user_name( id, iName, 31 ); console_print( id, "Player %s are LVL: %d(XP: %d).", iName, Player_LVL[ iTarget ], Player_XP[ iTarget ] ); } else { client_print( id, print_console, "Nu ai acces la aceasta comanda" ); } return 0; } public cmd_givexp( id ) { if( get_user_flags( id ) & ADMIN_KICK ) { new iTarget[ 32 ], iAmount[ 32 ]; read_argv( 1, iTarget, 31 ); read_argv( 2, iAmount, 31 ); new iPlayer = cmd_target( id, iTarget, 9 ); if( !iPlayer ) return 1; new gXP = str_to_num( iAmount ); new iName[ 32 ], iAdmin[ 32 ]; get_user_name( id, iAdmin, 31 ); get_user_name( iPlayer, iName, 31 ); Puf_CC_New( 0, "Admin !v%s!c ii da lui !v%s!c, !e%s!c(!vXP!c).", iAdmin, iName, iAmount ); Player_XP[ iPlayer ] += gXP; SaveData( id ); } else { client_print( id, print_console, "Nu ai acces la aceasta comanda" ); } return 0; } public cmd_takexp( id ) { if( get_user_flags( id ) & ADMIN_KICK ) { new iTarget[ 32 ], iAmount[ 32 ]; read_argv( 1, iTarget, 31 ); read_argv( 2, iAmount, 31 ); new iPlayer = cmd_target( id, iTarget, 9 ); if( !iPlayer ) return 1; new gXP = str_to_num( iAmount ); new iName[ 32 ], iAdmin[ 32 ]; get_user_name( id, iAdmin, 31 ); get_user_name( iPlayer, iName, 31 ); Puf_CC_New( 0, "Admin !v%s!c ii ia lui !v%s!c, !e%s!c(!vXP!c).", iAdmin, iName, iAmount ); Player_XP[ iPlayer ] -= gXP; SaveData( id ); } else { client_print( id, print_console, "Nu ai acces la aceasta comanda" ); } return 0; } public SaveData( id ) { new iName[ 33 ]; get_user_name( id, iName, 32 ); new vaultkey[ 64 ], vaultdata[ 256 ]; format( vaultkey, 63, "%s", iName); format( vaultdata,255,"%i#%i#", Player_XP[ id ], Player_LVL[ id ] ); new gVault = nvault_open( "hns_levelmod" ); nvault_set( gVault, vaultkey, vaultdata ); return 1; } public LoadData( id ) { new iName[ 32 ]; get_user_name( id, iName, 33 ); new vaultkey[ 64 ], vaultdata[ 256 ] ; format( vaultkey, 63, "%s", iName ); format( vaultdata, 255, "%i#%i#", Player_XP[ id ], Player_LVL[ id ] ); new gVault = nvault_open( "hns_levelmod" ); nvault_get( gVault, vaultkey, vaultdata, 255 ); replace_all( vaultdata, 255, "#", " " ); new gPlayer_XP[ 32 ], gPlayer_LVL[ 32 ]; parse( vaultdata, gPlayer_XP, 31, gPlayer_LVL, 31 ); Player_XP[ id ] = str_to_num( gPlayer_XP ); Player_LVL[ id ] = str_to_num( gPlayer_LVL ); return 1; } stock iName( id ) { new name[ 32 ]; get_user_name( id, name, 31 ); return name; } Instalare:1. Copiati folderul scripting in addons/amxmodx.2. Copiati folderul plugins in addons/amxmodx.3. Intrati in fisierul addons/amxmodx/configs/plugins.ini si adaugati la urma: GM_LvlMod.amxx Cvar-uri (se adauga in fisierul amxmodx\configs\amxx.cfg): hns_game_kill ( default: 25 ) - Cat XP sa primesca jucatorul pe KILL. hns_game_hs ( default: 40 ) - Cat XP sa primesca jucatorul pe Headshot. Comenzi administrative (se tasteaza in consola si trebuie sa fiti administrator): hns_game_givexp < Nume > < Numarul > - Ii dai unui player XP. hns_game_takexp < Nume > < Numarul > - Ii i-ei unui player din XP. amx_level < Nume > - Afli XP-ul / Level-ul unui player. Comenzi publice (se tasteaza in joc prin apasarea tastei Y): /lvl - Afli Level-ul tau. /xp - Afli XP-ul tau. Module necesare (se sterge ; din fata modulului de mai jos; acestea le gasiti in fisierul amxmodx\configs\modules.ini): CStrike Fun Hamsandwich Engine
Recommended Posts