Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // =================== MVP KILL ===============
- // ====== MVP will drop an item only ==========
- // ====== at specific maps. ===================
- // ====== if players are on a party ===========
- // ====== item will be given randomly =========
- // ====== to any online party members =========
- // ============== by : pajodex ================
- // ==== Additional Comments: ==================
- // 1.0 - Initial release (MVP Kill standalone)
- // 1.1 - used setarray function to optimize script
- // 1.2 - Added modified Euphy MVP ladder
- // slight rework on the script
- // 1.3 - Fixed on reset function (Report by: celeron0134)
- // ============================================
- - script #mvp_kill -1,{
- OnInit:
- setarray .p_rwd, 7539,1; // Party reward <item>,<amount>
- setarray .s_rwd, 7227,1; // Solo reward <item>,<amount>
- .chance = 50; // Drop rate chances %
- .gm = 10; // Prevents gm level and above to trigger the event
- // MVP Map list
- setarray .t_maps$[0],"moc_pryd06","lhz_dun03","gld2_prt","abbey02","ayo_dun02","lhz_dun04","ra_fild02","xmas_fild01","dic_dun02","beach_dun","iz_dun05","tur_dun04","lhz_dun02","jupe_core","moc_fild22","anthell02","odin_tem03","gon_dun03","gef_fild02","thana_boss","gef_fild10","ein_dun02","gef_fild14","moc_pryd04","dew_dun01","in_sphinx5","niflheim","moc_fild17","xmas_dun02","ice_dun03","kh_dun02","treasure02","moc_prydn2","pay_dun04","ra_san05","mosk_dun03","ama_dun03","thor_v03","gef_dun01","mjolnir_04","abyss_03","dic_dun03","prt_sewb4","pay_fild11","gef_dun02","gl_chyard","ra_fild03","ra_fild04","ve_fild01","ve_fild02","lou_dun03","prt_maze03","bra_dun02";
- end;
- OnNPCKillEvent:
- if (getgmlevel() >= .gm ) end; // If gm = event wont happen
- if ( getmonsterinfo( killedrid, MOB_MVPEXP )) {
- for (.@a = 0; .@a < getarraysize(.t_maps$); .@a++) {
- if ( strcharinfo(3) == instance_mapname("06guild_01") ) end;
- if ( strcharinfo(3) == instance_mapname("force_1-1") ) end;
- if ( strcharinfo(3) == .t_maps$[.@a]) {
- if ( getcharid(1) ) {
- getpartymember getcharid(1), 1;
- getpartymember getcharid(1), 2;
- for ( .@i = 0; .@i < $@partymembercount; .@i++ ) {
- if ( isloggedin( $@partymemberaid[.@i], $@partymembercid[.@i] ) ) {
- .@partymemberaid[.@c] = $@partymemberaid[.@i];
- .@c++;
- }
- }
- if (rand(100) < .chance) getitem .p_rwd[0], .p_rwd[1], .@partymemberaid[ rand( .@c ) ];
- announce "[ System ] : Player ["+ strcharinfo(0) +"] of party ["+ strcharinfo(1) +"] has killed "+ getmonsterinfo( killedrid, MOB_NAME ) +" at "+ strcharinfo(3), bc_all;
- }
- else {
- if (rand(100) < .chance) getitem .s_rwd[0], .s_rwd[1];
- announce "[ System ] : Player ["+ strcharinfo(0) +"] has killed "+ getmonsterinfo( killedrid, MOB_NAME ) +" alone at "+ strcharinfo(3), bc_all;
- }
- MVPKills = MVPKills+1;
- dispbottom "---------------------------------------------------";
- dispbottom "You killed a total of "+MVPKills+" MVP"+((MVPKills == 1)?"":"s")+".";
- dispbottom "---------------------------------------------------";
- end;
- }
- }
- if ( getcharid(1) ) {
- announce "[ System ] : Player ["+ strcharinfo(0) +"] of party ["+ strcharinfo(1) +"] has killed "+ getmonsterinfo( killedrid, MOB_NAME ) +" at "+ strcharinfo(3), bc_all;
- }
- else {
- announce "[ System ] : Player ["+ strcharinfo(0) +"] has killed "+ getmonsterinfo( killedrid, MOB_NAME ) +" alone at "+ strcharinfo(3), bc_all;
- }
- end;
- }
- }
- prontera,164,175,3 script MVP Ladder#Euphy 891,{
- mes "[Rank ^B22222M^228B22V^7B68EEP^000000^000000^000000]";
- mes "Hello.";
- mes "What are you doing here";
- next;
- switch(select("Check ^191970Ranking^000000.", "^228B22My^000000 stats.",( getgmlevel() >= 99 ) ? "^8B0000RESET^000000":"","^8B4513Nothing^000000...")) {
- case 1:
- mes "[Rank ^B22222M^228B22V^7B68EEP^000000^000000^000000]";
- query_sql("SELECT char_id, CAST(`value` AS SIGNED) FROM `char_reg_num` WHERE `key` = 'MVPKills' ORDER BY CAST(`value` AS SIGNED) DESC LIMIT 20",.@cid,.@value);
- for(set .@i,0; .@i<getarraysize(.@cid); set .@i,.@i+1) {
- query_sql("SELECT `name` FROM `char` WHERE char_id = "+.@cid[.@i]+";",.@j$);
- set .@name$[.@i], .@j$;
- }
- if (!getarraysize(.@cid))
- mes "The rankings are empty.";
- else for(set .@i,0; .@i<getarraysize(.@cid); set .@i,.@i+1)
- mes "[^FF4500"+(.@i+1)+"^000000] ^808000"+.@name$[.@i]+"^000000 ^696969~^000000 ^FF4500"+.@value[.@i]+"^000000 kills";
- close;
- case 2:
- mes "[Rank ^B22222M^228B22V^7B68EEP^000000^000000^000000]";
- mes "You killed "+((MVPKills)?"^FFD700"+MVPKills:"no")+"^000000 ^B22222M^228B22V^7B68EEP^000000^000000^000000"+((MVPKills == 1)?".":"s.");
- close;
- case 3:
- if ( select( "Confirm","Cancel" ) == 1 ) {
- query_sql("UPDATE `char_reg_num` SET `value` = '0' WHERE `key` ='MVPKills'");
- addrid(0);
- MVPKills = 0;
- }
- close;
- default:
- close;
- }
- OnInit:
- waitingroom "MVP LADDER!",0;
- end;
- }
Add Comment
Please, Sign In to add comment