Jump to content
  • 0
lelouchxv

Help! MVP KIll by pajodex

Question

// =================== 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, 7615,1;	// Party reward <item>,<amount>
	setarray .s_rwd, 7615,1;	// Solo reward <item>,<amount>
	.chance = 100;	// Drop rate chances %
	.gm = 100;  // 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 ([email protected] = 0; [email protected] < getarraysize(.t_maps$); [email protected]++) {
	if ( strcharinfo(3) == instance_mapname("06guild_01") ) end; 
	if ( strcharinfo(3) == instance_mapname("force_1-1") ) end;
	if ( strcharinfo(3) == .t_maps$[[email protected]]) { 
			if ( getcharid(1) ) {
				getpartymember getcharid(1), 1;
				getpartymember getcharid(1), 2;
				for ( [email protected] = 0; [email protected] < [email protected]; [email protected]++ ) {
					if ( isloggedin( [email protected][[email protected]], [email protected][[email protected]] ) ) { 
						[email protected][[email protected]] = [email protected][[email protected]];
						[email protected]++;
					}
				}
				if (rand(100) < .chance) getitem .p_rwd[0], .p_rwd[1], [email protected][ rand( [email protected] ) ];
				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;
	}

	
}
mall01,89,91,6	script	MVP Ladder#Euphy	685,{
	mes "[Rank MVP]";
	mes "Hello.";
	mes "What are you doing here";
	next;
	switch(select("Check Ranking.",	"My stats.",( getgmlevel() >= 99 ) ? "RESET":"","Nothing...")) {
		case 1:
			mes "[Rank MVP]";
			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",[email protected],[email protected]);
			for(set [email protected],0; [email protected]<getarraysize([email protected]); set [email protected],[email protected]+1) {
				query_sql("SELECT `name` FROM `char` WHERE char_id = "[email protected][[email protected]]+";",[email protected]$);
				set [email protected]$[[email protected]], [email protected]$;
			}
			if (!getarraysize([email protected]))
				mes "The rankings are empty.";
			else for(set [email protected],0; [email protected]<getarraysize([email protected]); set [email protected],[email protected]+1)
			mes "["+([email protected]+1)+"] "[email protected]$[[email protected]]+" ~ "[email protected][[email protected]]+" kills";
			close;
			
		case 2:
			mes "[Rank MVP]";
			mes "You killed "+((MVPKills)?"^0055FF"+MVPKills:"no")+"^000000 MVP"+((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;
}

can someone modify this even if on a party the MVP will only get the reward

Link to comment
Share on other sites

1 answer to this question

Recommended Posts

  • 0
OnNPCKillEvent:
	if (getgmlevel() >= .gm ) end; // If gm = event wont happen
	if ( getmonsterinfo( killedrid, MOB_MVPEXP )) {
		for ([email protected] = 0; [email protected] < getarraysize(.t_maps$); [email protected]++) {
		if ( strcharinfo(3) == instance_mapname("06guild_01") ) end; 
		if ( strcharinfo(3) == instance_mapname("force_1-1") ) end;
		if ( strcharinfo(3) == .t_maps$[[email protected]]) { 
			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;
			}
		}
		end;
	}

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and Privacy Policy.