Jump to content
  • 0

Party and Solo OnNPCKillEvent Quest Npc


Question

Posted

Hello, I would like that you can complete this Quest Solo as well as in a Party.

The Party users must have accepted the Quest.

The Party users must be on the same map, and Alive.

 

 

Hope someone can help me. :lol:

 

 

abyss_01,22,36,1	script	Quest Helper#25	112,{
if(FuriousFerus >= 1  &&  Acidus >= 22  &&  Novus >= 35) goto l_allkills;
mes "[Warpra Helper]";
mes "You have to kill:";
mes "You have "+FuriousFerus+"/1 Furious Ferus...";
mes "You have "+Acidus+"/22 Acidus...";
mes "You have "+Novus+"/35 Novus";
next;
menu "^00FF00Quest Accept^0000FF",L_AbyssLakequest;

L_AbyssLakequest:
mes "[Warpra Helper]";
mes "Do you want to accept the Quest?";
next;
menu "Yes",L_AbyssLakekill,"No.....",L_No;

L_AbyssLakekill:
mes "[Warpra Helper]";
mes "You can now begin to Kill the Monsters !!";
set AbyssLakekill,0;
close;



l_allkills:
getitem,5531,1;
close;


OnNPCKillEvent:
if(AbyssLakekill) end;
	if(killedrid == 2832) // = Furious Ferus
	{
	
		set FuriousFerus,FuriousFerus + 1;
		if (FuriousFerus < 1) {
			dispbottom "You killed "+FuriousFerus+"/1 Furious Ferus.";
		}
		else if(FuriousFerus == 1) {
			dispbottom "You have killed all Furious Feruss.";
		}
	}
	else if (killedrid == 1716) // = Acidus
	{
	
		set Acidus,Acidus + 1;
		if (Acidus < 22) {
			dispbottom "You killed "+Acidus+"/22 Aciduss.";
		}
		else if(Acidus == 22) {
			dispbottom "You have killed all Aciduss.";
		}
	}
	else if (killedrid == 1715) // = Novus
	{
	
		set Novus,Novus + 1;
		if (Novus < 35) {
			dispbottom "You killed "+Novus+"/35 Novus.";
		}
		else if(Novus == 35) {
			dispbottom "You have killed all Novuss.";
		}
	}
	end;
	}

 

4 answers to this question

Recommended Posts

  • 0
Posted
abyss_01,22,36,1	script	Quest Helper#25	112,{

if(killmob_a == .AmountToKill_a && killmob_b == .AmountToKill_b && killmob_c == .AmountToKill_c && quest_active){
	mes "[Warpra Helper]";
	mes "Congratulations!";
	set killmob_a,0;
	set killmob_b,0;
	set killmob_c,0;
	set quest_active,0;
	getitem .ItemPrize,.AmountItemPrize;
close;
}

mes "[Warpra Helper]";
mes "You have to kill:";
mes getmonsterinfo(.MonsterToKill_a,MOB_NAME)+" ~ ^0000ff"+killmob_a+"/"+.AmountToKill_a+"^000000";
mes getmonsterinfo(.MonsterToKill_b,MOB_NAME)+" ~ ^0000ff"+killmob_b+"/"+.AmountToKill_b+"^000000";
mes getmonsterinfo(.MonsterToKill_c,MOB_NAME)+" ~ ^0000ff"+killmob_c+"/"+.AmountToKill_c+"^000000";

else if((killmob_a <= .AmountToKill_a || killmob_b <= .AmountToKill_b || !killmob_c <= .AmountToKill_c) && quest_active)
	close;
else
	{
		next;
		mes "[Warpra Helper]";
		mes "Do you want to accept the Quest?";
		next;
		if(select("Yes")){
			mes "[Warpra Helper]";
			mes "You can now begin to Kill the Monsters !!";
		set quest_active,1;
		close;
		}
	}
end;

OnNPCKillEvent:
if(!quest_active) end;

	if(killedrid == .MonsterToKill_a){
		set killmob_a,killmob_a + 1;
		if (killmob_a < .AmountToKill_a)
			dispbottom "You've killed "+killmob_a+"/"+.AmountToKill_a+" "+getmonsterinfo(.MonsterToKill_a,MOB_NAME);
		else if(killmob_a == .AmountToKill_a)
			dispbottom "You have killed all "+getmonsterinfo(.MonsterToKill_a,MOB_NAME);
	}

	if (killedrid == .MonsterToKill_b){
		set killmob_b,killmob_b + 1;
		if (killmob_b < .AmountToKill_b)
			dispbottom "You've killed "+killmob_b+"/"+.AmountToKill_b+" "+getmonsterinfo(.MonsterToKill_b,MOB_NAME);
		else if(killmob_b == .AmountToKill_b)
			dispbottom "You have killed all "+getmonsterinfo(.MonsterToKill_b,MOB_NAME);
	}

	if (killedrid == .MonsterToKill_c){
		set killmob_c,killmob_c + 1;
		if (killmob_c < .AmountToKill_c)
			dispbottom "You've killed "+killmob_c+"/"+.AmountToKill_c+" "+getmonsterinfo(.MonsterToKill_c,MOB_NAME);
		else if(killmob_c == .AmountToKill_c)
			dispbottom "You have killed all "+getmonsterinfo(.MonsterToKill_c,MOB_NAME);
	}
end;

//===============================================================
//	CONFIGURATION ( change to your desire )
//===============================================================
OnInit:
	.MonsterToKill_a = 1002;
	.AmountToKill_a = 1;

	.MonsterToKill_b = 1004;
	.AmountToKill_b = 1;

	.MonsterToKill_c = 1005;
	.AmountToKill_c = 1;

	.ItemPrize = 909;
	.AmountItemPrize = 1;
end;
}

 

  • 0
Posted

please use my script.  your script does not have the mentioned party functions.

 

this Quest Solo as well as in a Party.

The Party users must have accepted the Quest.

The Party users must be on the same map, and Alive.

  • 0
Posted

I have add, The Party users must have accepted the Quest. and the user is Alive.

 

only the same map is missing, I hope someone can help.

 

	addrid( 2, 0, getcharid(1) );
	if(AbyssLakekill) end;	
    if ( hp == 0 ) end;	

 

 

abyss_01,22,36,1	script	Quest Helper#25	112,{
if(FuriousFerus >= 1  &&  Acidus >= 22  &&  Novus >= 35) goto l_allkills;
mes "[Helper]";
mes "You have to kill:";
mes "You have "+FuriousFerus+"/1 Furious Ferus...";
mes "You have "+Acidus+"/22 Acidus...";
mes "You have "+Novus+"/35 Novus";
next;
menu "^00FF00Quest Accept^0000FF",L_AbyssLakequest;

L_AbyssLakequest:
mes "[Helper]";
mes "Do you want to accept the Quest?";
next;
menu "Yes",L_AbyssLakekill,"No.....",L_No;

L_AbyssLakekill:
mes "[Helper]";
mes "You can now begin to Kill the Monsters !!";
set AbyssLakekill,0;
close;



l_allkills:
getitem,5531,1;
close;


OnNPCKillEvent:
if(AbyssLakekill) end;
	if(killedrid == 2832) // = Furious Ferus
	{
	addrid( 2, 0, getcharid(1) );
	if(AbyssLakekill) end;	
    if ( hp == 0 ) end;			
		set FuriousFerus,FuriousFerus + 1;
		if (FuriousFerus < 1) {
			dispbottom "You killed "+FuriousFerus+"/1 Furious Ferus.";
		}
		else if(FuriousFerus == 1) {
			dispbottom "You have killed all Furious Feruss.";
		}
	}
	else if (killedrid == 1716) // = Acidus
	{
	addrid( 2, 0, getcharid(1) );
	if(AbyssLakekill) end;	
    if ( hp == 0 ) end;			
		set Acidus,Acidus + 1;
		if (Acidus < 22) {
			dispbottom "You killed "+Acidus+"/22 Aciduss.";
		}
		else if(Acidus == 22) {
			dispbottom "You have killed all Aciduss.";
		}
	}
	else if (killedrid == 1715) // = Novus
	{
	addrid( 2, 0, getcharid(1) );
	if(AbyssLakekill) end;	
    if ( hp == 0 ) end;			
		set Novus,Novus + 1;
		if (Novus < 35) {
			dispbottom "You killed "+Novus+"/35 Novus.";
		}
		else if(Novus == 35) {
			dispbottom "You have killed all Novuss.";
		}
	}
	end;
	}

 

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.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...