Junior Member
|
09-27-2013
, 11:54
Hola Necesito ayuda con mi surf xp mod
|
#1
|
PHP Code:
/* Include some modules */ #include <amxmodx> #include <amxmisc> #include <fun> #include <hamsandwich> #include <cstrike> #include <nvault> #include <fakemeta>
/* Who made this bad coded plugin? */ #define PLUGIN "SURF XP MOD" #define AUTHOR "Ardivaba" #define VERSION "1.0"
/* Lets define some illegal stuff */ #define TUTORIAL 1001 #define TASK_TUT 1111
/* What is the sound of the message? */ #define MSOUND "items/nvg_off.wav"
enum { RED = 1, BLUE, YELLOW, GREEN } "gfx/career/icon_!.tga", "gfx/career/icon_!-bigger.tga", "gfx/career/icon_i.tga", "gfx/career/icon_i-bigger.tga", "gfx/career/icon_skulls.tga", "gfx/career/round_corner_ne.tga", "gfx/career/round_corner_nw.tga", "gfx/career/round_corner_se.tga", "gfx/career/round_corner_sw.tga",
/* Some new stuff for tutor */ new g_MsgTutor new g_MsgTutClose
/* gCvars :( */ new gCvarNozoom
/* So many levels...oh my f**in god */ new const LEVELS[9999] = { 50, 100, 200, 400, 600, 800, 1000, 1200, 1400, 1600, 1800, 2000, 2200, 2400, 2600, 2800, 3000, 3200, 3400, 3600, 3800, 4000, 4200, 4400, 4600, 4800, 5000, 5200, 5400, 5600, 5800, 6000, 6200, 6400, 6600, 6800, 7000, 7200, 7400, 7600, 7800, 8000, 8200, 8400, 8600, 8800, 9000, 9200, 9400, 9600, 9800, 10000, 10200, 10400, 10600, 10800, 11000, 11200, 11400, 11600, 11800, 12000, 12200, 12400, 12600, 12800, 13000, 13200, 13400, 13600, 13800, 14000, 14200, 14400, 14600, 14800, 15000, 15200, 15400, 15600, 15800, 16000, 16200, 16400, 16600, 16800, 17000, 17200, 17400, 17600, 17800, 18000, 18200, 18400, 18600, 18800, 19000, 19200, 19400, 19600, 19800, 20000, 20200, 20400, 20600, 20800, 21000, 21200, 21400, 21600, 21800, 22000, 22200, 22400, 22600, 22800, 23000, 23200, 23400, 23600, 23800, 24000, 24200, 24400, 24600, 24800, 25000, 25200, 25400, 25600, 25800, 26000, 26200, 26400, 26600, 26800, 27000, 27200, 27400, 27600, 27800, 28000, 28200, 28400, 28600, 28800, 29000, 29200, 29400, 29600, 29800, 30000, 30200, 30400, 30600, 30800, 31000, 31200, 31400, 31600, 31800, 32000, 32200, 32400, 32600, 32800, 33000, 33200, 33400, 33600, 33800, 34000, 34200, 34400, 34600, 34800, 35000, 35200, 35400, 35600, 35800, 36000, 36200, 36400, 36600, 36800, 37000, 37200, 37400, 37600, 37800, 38000, 38200, 38400, 38600, 38800, 39000, 39200, 39400, 39600, 40000, 45000, 50000, 50001, 60000, 70000, 80000, 90000, 99999, }
new PXP[ 33 ] new PLEVEL[ 33 ] new PKS[ 33 ] new g_vault
public plugin_init() { //You want credits? Take credits...you stealz0rs register_plugin(PLUGIN, VERSION, AUTHOR) //You poor little guy died, what we gonna do now? register_event( "DeathMsg", "EventDeathMsg", "a" ) //All kinds of information register_clcmd( "say /xp", "printXp", -1, "Print player Xp" ) register_clcmd( "say /level", "printLevel", -1, "Print player level" ) register_clcmd( "say /newlevel", "printNewLevel", -1, "Print player how many xp left to new level" ) register_clcmd( "say /help", "printHelp", -1, "Print help" ) register_clcmd( "say /info", "printInfo", -1, "Print info" ) register_clcmd( "say /weapons", "printWeapons", -1, "Print weapon unlocks" ) //Nozoom stuff register_event("SetFOV","zoom","b","1<90") register_event("CurWeapon","ev_CurWeapon", "be", "1=1") //Meat...mmmm, delicious ham RegisterHam(Ham_Spawn, "player", "EventPlayerSpawn", 1) RegisterHam(Ham_TakeDamage, "player", "fwHamTakeDamage") //nVault stuff g_vault = nvault_open("SURFXPMOD") //Those annoying cvars...for the community :( gCvarNozoom = register_cvar("sxm_nozoom", "0", 0, 0.0) }
/* Precache resources */ public plugin_precache() { precache_sound(MSOUND) new i for(i = 0; i < sizeof g_TutorPrecache; i++) precache_generic(g_TutorPrecache[i]) precache_model("models/customs/v_gknife.mdl") precache_model("models/customs/v_gdeagle.mdl") precache_model("models/customs/v_gelite.mdl") precache_model("models/customs/v_shegrenade.mdl") precache_model("models/customs/v_xm1014.mdl") precache_model("models/customs/v_m4a1.mdl") precache_model("models/customs/v_ak47.mdl") precache_model("models/customs/v_m3.mdl") precache_model("models/custom/v_m3.mdl") precache_model("models/custom/v_xm1014.mdl") precache_model("models/custom/v_mp5.mdl") precache_model("models/custom/v_m4a1.mdl") precache_model("models/custom/v_g3sg1.mdl") precache_model("models/custom/v_ak47.mdl") precache_model("models/custom/v_glock18.mdl") precache_model("models/custom/v_usp.mdl") }
public client_connect( id ) { PXP[ id ] = 0 LoadData( id ) }
public client_disconnect( id ) { SaveData( id ) PXP[ id ] = 0 PLEVEL[ id ] = 0 PKS[ id ] = 0 }
public EventPlayerSpawn( id ) { new health new newhealth new money new newmoney new armor new newarmor money = cs_get_user_money( id ) newmoney = money + (PLEVEL[ id ] * 100) cs_set_user_money( id, newmoney) if( PLEVEL[ id ] <= 25 ) { health = get_user_health( id ) newhealth = health + (PLEVEL[ id ]) set_user_health( id, newhealth ) } else { health = get_user_health( id ) newhealth = 125 armor = get_user_armor( id ) newarmor = armor + ((PLEVEL[ id ]) - 25) set_user_armor( id, newarmor ) set_user_health( id, newhealth ) } }
public EventDeathMsg() { new killer = read_data( 1 ) new victim = read_data( 2 ) new headshot = read_data( 3 ) new xp new hs if(PLEVEL[ killer ] > PLEVEL[ victim ]) { xp = 15000 } if(PLEVEL[ killer ] < PLEVEL[ victim ]) { xp = 150000 } if(PLEVEL[ killer ] == PLEVEL[ victim ]) { xp = 12000000 } PKS[ victim ] = 0 if( victim == killer ) { return PLUGIN_CONTINUE } if(headshot) { xp = xp + 9060 hs = 1 } if(PKS[ killer ] < 10) { PKS[ killer ]++ } xp = xp + PKS[ killer ] add_xp( killer, xp, hs ) check_level( killer ) new Text[ 100 ] formatex(Text,191,"You died and lost your killstreak!") }
/* Add xp */ public add_xp( id, xp, hs ) { new newlevel = LEVELS[PLEVEL[ id ]]-PXP[ id ] PXP[ id ] = PXP[ id ] + xp if(hs) { new Text[ 100 ] formatex(Text,191,"Headshot! You got %d xp! ^nKillstreak: %d^nNew level after %d xp!", xp, PKS[ id ], newlevel) } else { new Text[ 100 ] formatex(Text,191,"You got %d xp! ^nKillstreak: %d^nNew level after %d xp!", xp, PKS[ id ], newlevel) } }
/* Lets check if player got a new level */ public check_level( id ) { if(PXP[ id ] >= LEVELS[PLEVEL[ id ]]) { PLEVEL[ id ]++ new Text[ 100 ] formatex(Text,191,"You are now level %d!", PLEVEL[ id ]) } }
/* Lets print the list of weapon achievments */ public printWeapons( id ) { new Text[ 255 ] formatex(Text,191, "LEVEL 5 Unlock^nGolden Knife^n^nLEVEL 7 Unlock^nGolden Elites^n^nLEVEL 10 Unlock^nGolden Deagle^n^nLevel 15 Unlock^nGerman Grenade") }
public printHelp( id ) { //new Text[ 255 ] //formatex(Text,191, //"Selleks, et vaadata enda levelit kirjuta:^n/level ^nSelleks, et vaadata enda XPd kirjuta:^n/xp^nSelleks, et vaadata millal uus level tuleb kirjuta:^n/uuslevel^n^nSelleks, et vaadata millal mis relva lahti saad kirjuta:^n/relvad") //
/* Plugin information */ public printInfo( id ) { new Text[ 255 ] formatex(Text,191, "What is SURF XP MOD?^n-SXM is mod created by Ardivaba for surf server^n^nWhat can i do with levels?^n-Levels reward you HP, starting money and golden weapons") MakeTutor(id,Text,YELLOW,7.0) }
/* Lets print players ammount of xp */ public printXp( id ) { new Text[ 100 ] formatex(Text,191,"You have %d xp!", PXP[ id ]) }
/* Lets print when player get's new level */ public printNewLevel( id ) { new newlevel = LEVELS[PLEVEL[ id ]]-PXP[ id ] new Text[ 100 ] formatex(Text,191,"New level after %d xp!", newlevel) MakeTutor(id,Text,YELLOW,3.0) }
/* Lets print players level */ public printLevel( id ) { new Text[ 100 ] formatex(Text,191,"Your level is %d!", PLEVEL[ id ])
/* Save Data to nVault */ public SaveData(id) { new AuthID[35] get_user_name(id,AuthID,34) new vaultkey[64],vaultdata[256] format(vaultkey,63,"%s-Mod",AuthID) format(vaultdata,255,"%i#%i#",PXP[id],PLEVEL[id]) nvault_set(g_vault,vaultkey,vaultdata) return PLUGIN_CONTINUE }
/* Load Data from nVault */ public LoadData(id) { new AuthID[35] get_user_name(id,AuthID,34) new vaultkey[64],vaultdata[256] format(vaultkey,63,"%s-Mod",AuthID) format(vaultdata,255,"%i#%i#",PXP[id],PLEVEL[id]) nvault_get(g_vault,vaultkey,vaultdata,255) replace_all(vaultdata, 255, "#", " ") new playerxp[32], playerlevel[32] parse(vaultdata, playerxp, 31, playerlevel, 31) PXP[id] = str_to_num(playerxp) PLEVEL[id] = str_to_num(playerlevel) return PLUGIN_CONTINUE }
/* Teeme tutori teksti */ MakeTutor(id,Text[],Color,Float:Time = 0.0) { client_cmd( id, "spk %s", MSOUND ) if(is_user_connected( id )) { message_begin(MSG_ONE_UNRELIABLE,g_MsgTutor,_,id) write_string(Text) write_byte(0) write_short(0) write_short(0) write_short(1<<Color) message_end() } if(Time != 0.0) { if( task_exists( id + TASK_TUT ) ) { remove_task( id + TASK_TUT ) } set_task(Time,"RemoveTutor",id + TASK_TUT) } }
/* Lets Remove Tutor */ public RemoveTutor(taskID) { new id = taskID - TASK_TUT message_begin(MSG_ALL,g_MsgTutClose,_,id) message_end() }
public zoom( id ) { if(gCvarNozoom) { client_cmd( id, "drop" ) } }
/* Golden Weapons */
public ev_CurWeapon(id) { if(!is_user_connected(id) || !is_user_alive(id)) { return PLUGIN_HANDLED; } new Weapon_Id = read_data(2) /* Golden Knife */ if(Weapon_Id == CSW_KNIFE && PLEVEL[ id ] >= 5 ) { set_pev(id, pev_viewmodel2, "models/customs/v_gknife.mdl") } /* Golden Elites */ if(Weapon_Id == CSW_ELITE && PLEVEL[ id ] >= 7 ) { set_pev(id, pev_viewmodel2, "models/customs/v_gelite.mdl") } /* Golden Deagle */ if(Weapon_Id == CSW_DEAGLE && PLEVEL[ id ] >= 10 ) { set_pev(id, pev_viewmodel2, "models/customs/v_gdeagle.mdl") } /* German Grenade */ if(Weapon_Id == CSW_HEGRENADE && PLEVEL[ id ] >= 15 ) { set_pev(id, pev_viewmodel2, "models/customs/v_shegrenade.mdl") } /* XMF 1 */ if(Weapon_Id == CSW_XM1014 && PLEVEL[ id ] >= 50 ) { set_pev(id, pev_viewmodel2, "models/customs/v_xm1014.mdl") } /* M4A1 */ if(Weapon_Id == CSW_M4A1 && PLEVEL[ id ] >= 20 ) { set_pev(id, pev_viewmodel2, "models/customs/v_m4a1.mdl") } /* AK-47 */ if(Weapon_Id == CSW_AK47 && PLEVEL[ id ] >= 25 ) { set_pev(id, pev_viewmodel2, "models/customs/v_ak47.mdl") } /* M3 1 */ if(Weapon_Id == CSW_M3 && PLEVEL[ id ] >= 40 ) { set_pev(id, pev_viewmodel2, "models/custom/v_m3.mdl") } /* M3 2 */ if(Weapon_Id == CSW_M3 && PLEVEL[ id ] >= 100 ) { set_pev(id, pev_viewmodel2, "models/customs/v_m3.mdl") } /* XMF 2 */ if(Weapon_Id == CSW_XM1014 && PLEVEL[ id ] >= 150 ) { set_pev(id, pev_viewmodel2, "models/custom/v_xm1014.mdl") } /* MP 5 */ if(Weapon_Id == CSW_MP5NAVY && PLEVEL[ id ] >= 19 ) { set_pev(id, pev_viewmodel2, "models/custom/v_mp5.mdl") } /* M4a1 2 */ if(Weapon_Id == CSW_M4A1 && PLEVEL[ id ] >= 100 ) { set_pev(id, pev_viewmodel2, "models/custom/v_m4a1.mdl") } /* G3s1 */ if(Weapon_Id == CSW_G3SG1 && PLEVEL[ id ] >= 90 ) { set_pev(id, pev_viewmodel2, "models/custom/v_g3sg1.mdl") } /* Ak 47 2 */ if(Weapon_Id == CSW_AK47 && PLEVEL[ id ] >= 101 ) { set_pev(id, pev_viewmodel2, "models/custom/v_ak47.mdl") } /* Usp */ if(Weapon_Id == CSW_USP && PLEVEL[ id ] >= 0 ) { set_pev(id, pev_viewmodel2, "models/custom/v_usp.mdl") } /* Glock */ if(Weapon_Id == CSW_GLOCK18 && PLEVEL[ id ] >= 0 ) { set_pev(id, pev_viewmodel2, "models/custom/v_glock18.mdl") } return PLUGIN_CONTINUE; }
public fwHamTakeDamage(victim, inflictor, attacker, Float:damage, damagebits) { /* Golden Knife */ if(get_user_weapon(attacker) == CSW_KNIFE && PLEVEL[ attacker ] >= 5) { SetHamParamFloat(4, damage * 7.0) return HAM_HANDLED } /* Golden Elites */ if(get_user_weapon(attacker) == CSW_ELITE && PLEVEL[ attacker ] >= 7) { SetHamParamFloat(4, damage * 5.5) return HAM_HANDLED } /* Golden Deagle */ if(get_user_weapon(attacker) == CSW_DEAGLE && PLEVEL[ attacker ] >= 10) { SetHamParamFloat(4, damage * 5.0) return HAM_HANDLED } /* German Grenade */ if(get_user_weapon(attacker) == CSW_HEGRENADE && PLEVEL[ attacker ] >= 15) { SetHamParamFloat(4, damage * 2.10) return HAM_HANDLED } /* XMF */ if(get_user_weapon(attacker) == CSW_XM1014 && PLEVEL[ attacker ] >= 50) { SetHamParamFloat(4, damage * 2.10) return HAM_HANDLED } /* M4A1 */ if(get_user_weapon(attacker) == CSW_M4A1 && PLEVEL[ attacker ] >= 20) { SetHamParamFloat(4, damage * 1.10) return HAM_HANDLED } /* AK-47 */ if(get_user_weapon(attacker) == CSW_AK47 && PLEVEL[ attacker ] >= 25) { SetHamParamFloat(4, damage * 1.99) return HAM_HANDLED } /* M3 1 */ if(get_user_weapon(attacker) == CSW_M3 && PLEVEL[ attacker ] >= 40) { SetHamParamFloat(4, damage * 2.99) return HAM_HANDLED } /* M3 2 */ if(get_user_weapon(attacker) == CSW_M3 && PLEVEL[ attacker ] >= 100) { SetHamParamFloat(4, damage * 3.99) return HAM_HANDLED } /* XMF 2 */ if(get_user_weapon(attacker) == CSW_XM1014 && PLEVEL[ attacker ] >= 150) { SetHamParamFloat(4, damage * 6.99) return HAM_HANDLED } /* MP 5 */ if(get_user_weapon(attacker) == CSW_MP5NAVY && PLEVEL[ attacker ] >= 19) { SetHamParamFloat(4, damage * 1.99) return HAM_HANDLED } /* M4a1 2 */ if(get_user_weapon(attacker) == CSW_M4A1 && PLEVEL[ attacker ] >= 100) { SetHamParamFloat(4, damage * 4.99) return HAM_HANDLED } /* G3s1 */ if(get_user_weapon(attacker) == CSW_G3SG1 && PLEVEL[ attacker ] >= 90) { SetHamParamFloat(4, damage * 3.99) return HAM_HANDLED } /* Ak 47 2 */ if(get_user_weapon(attacker) == CSW_AK47 && PLEVEL[ attacker ] >= 101) { SetHamParamFloat(4, damage * 4.99) return HAM_HANDLED } /* Usp */ if(get_user_weapon(attacker) == CSW_USP && PLEVEL[ attacker ] >= 0) { SetHamParamFloat(4, damage * 1.9) return HAM_HANDLED } /* Glock */ if(get_user_weapon(attacker) == CSW_GLOCK18 && PLEVEL[ attacker ] >= 0) { SetHamParamFloat(4, damage * 1.9) return HAM_HANDLED } return HAM_IGNORED } _de_level[id], variable_de_exp[id]) }
haci tengo configurado mi surf, pero necesito anexarle un programa como el de un zombie plague que aparese en la izquierda abajo, que aparese en amarillo pero lo quiero para un server surf que dijiera Vida lvl y los xp
Last edited by Choop; 09-27-2013 at 13:30.
Reason: tutor1
|
|