Jump to content
  • 0
Sign in to follow this  
mrlongshen

Poring punch problem

Question

// ---            ARTHistic's Property            ---// ---    Please visit http://thdesigns.co.nr     ---// ---           Scripted By: ARTHistic           ---// ---         Do Not Revomed the Credits         ----	script	PPE_inital	-1,{	OnInit:	set $@PoringEventChecker, 0;	set $@PoringEventPrizeChecker, 0;	set $PPEDefendingChampion$,"secret";	end;}new_4-4,150,180,5	script	Poring Punch Event	EF_EL_CHILLY_AIR,{	mes "[ Poring Punch Event ]";	mes "Hello, I'm the Poring Punch Event Manager. My record says that the defending champion on this event was "+$PPEDefendingChampion$+". Anyways, what do you want to do?";	next;	menu "How does this work?",PPE_HowTo,"Host this Event",PPE_Host,"Join Event Now",PPE_Join,"Claim my reward",PPE_claim,"Nevermind",PPE_nvm;	PPE_HowTo:		mes "[ Poring Punch Event ]";		mes "This is an event where everyone can join in. All you have to do is to punch the right monsters and to avoid the wrong ones. Each kind of monster has its corresponsing points. You only have 5 minutes to earn points as much as you can. The Highest Scorer at the end of this event shall win Poring Coins";		mes "Reminder: No weapons, cart, and pets is allowed in this event.";		close;	PPE_Host:		if ( $@PoringEventChecker != 0 ){			mes "[ Poring Punch Event ]";			mes "There is Poring Punch Event on-going. You can host this event if it is still on-going.";			close;		}else{			mes "[ Poring Punch Event ]";			mes "You need to pay 50 million to host this event. Would you like to pay to host this event?";			next;			menu "Yes",PPE_HostYes,"No",-;			mes "[ Poring Punch Event ]";			mes "Okay. Maybe next time.";			close;				PPE_HostYes:					if ( Zeny >= 50000000 ){						mes "[ Poring Punch Event ]";						mes "Thanks "+strcharinfo(0)+", for hosting this event. It will start shortly.";						set Zeny, Zeny-50000000;						close2;						set $@PoringEventChecker, 1;						announce ""+strcharinfo(0)+" paid to host Poring Punch Event!", bc_all;						killmonsterall "pvp_n_1-2";						sleep2 10000;						initnpctimer;						end;					}else{						mes "[ Poring Punch Event ]";						mes "Sorry "+strcharinfo(0)+", you dont have enough zenies to host this event.";						close;					}end;		}end;	PPE_Join:		if ( $@PoringEventChecker != 0 ){			if (gethominfo(2) != "null"){				mes "[ Poring Punch Event ]";				mes "No homunculus is allowed in this event! Sorry "+strcharinfo(0)+" but you can't join this event!";				close;			}			if (getpetinfo(2) != "null"){				mes "[ Poring Punch Event ]";				mes "No pet is allowed in this event! Sorry "+strcharinfo(0)+" but you can't join this event!";				close;			}			if (checkcart()){				mes "[ Poring Punch Event ]";				mes "[ Poring Punch Event ]";				mes "No cart is allowed! Sorry "+strcharinfo(0)+" but you can't join this event!";				close;			}			if (checkfalcon()){				mes "[ Poring Punch Event ]";				mes "No falcon is allowed! Sorry "+strcharinfo(0)+" but you can't join this event!";				close;			}			if (checkmount() == MOUNT_PECO){				mes "[ Poring Punch Event ]";				mes "[ Poring Punch Event ]";				mes "No riding is allowed! Sorry "+strcharinfo(0)+" but you can't join this event!";				close;			}			mes "[ Poring Punch Event ]";			mes "Good luck "+strcharinfo(0)+".";			close2;			set @PoringPoints, 0;			warp "1@dth3",0,0;			end;		}else{			mes "[ Poring Punch Event ]";			mes "Sorry. No Poring Punch Event is held at the moment.";			close;		}end;	PPE_claim:		if ($HighestPoringPointsName$ == strcharinfo(0) && $@PoringEventPrizeChecker == 1) {			mes "[Poring Punch Event]";			mes "Congratulations "+strcharinfo(0)+". Here is your reward.";			getitem 7539,20;			set $HighestPoringPointsName$,"";			set $HighestPoringPoints,0;			set $@PoringEventPrizeChecker, 0;			close;		} else {			mes "[ Poring Punch Event ]";			mes "Sorry "+strcharinfo(0)+". You're not the winner so you can't claim anything";			close;		}end;	PPE_nvm:		mes "[ Poring Punch Event ]";		mes "Okay. Maybe next time.";		close;	OnPoringKill:		if (getequipweaponlv(4)==0 && getequipweaponlv(3)==0){			set @PoringPoints,@PoringPoints+1;			if (@PoringPoints > $HighestPoringPoints) {				set $HighestPoringPointsName$,strcharinfo(0);				set $PPEDefendingChampion$,strcharinfo(0);				set $HighestPoringPoints,@PoringPoints;			}			dispbottom "You have "+@PoringPoints+" point(s)";			end;		}else {			dispbottom "You have to punch the monster without any weapon.";			warp "prontera",156,179;			end;		}	OnDropsKill:		if (getequipweaponlv(4)==0 && getequipweaponlv(3)==0){			set @PoringPoints,@PoringPoints+3;			if (@PoringPoints > $HighestPoringPoints) {				set $HighestPoringPointsName$,strcharinfo(0);				set $PPEDefendingChampion$,strcharinfo(0);				set $HighestPoringPoints,@PoringPoints;			}			dispbottom "You have "+@PoringPoints+" point(s)";			end;		}else {			dispbottom "You have to punch the monster without any weapon.";			warp "prontera",156,179;			end;		}			OnPoporingKill:		if (getequipweaponlv(4)==0 && getequipweaponlv(3)==0){			if (@PoringPoints < 10) {				set @PoringPoints, 0;				dispbottom "You have "+@PoringPoints+" point(s)";				end;			}else {				set @PoringPoints,@PoringPoints-10;				dispbottom "You have "+@PoringPoints+" point(s)";				end;			}end;		}else {			dispbottom "You have to punch the monster without any weapon.";			warp "prontera",156,179;			end;		}			OnSantaPoringKill:		if (getequipweaponlv(4)==0 && getequipweaponlv(3)==0){			set @PoringPoints,@PoringPoints+5;			if (@PoringPoints > $HighestPoringPoints) {				set $HighestPoringPointsName$,strcharinfo(0);				set $PPEDefendingChampion$,strcharinfo(0);				set $HighestPoringPoints,@PoringPoints;			}			dispbottom "You have "+@PoringPoints+" point(s)";			end;		}else {			dispbottom "You have to punch the monster without any weapon.";			warp "prontera",156,179;			end;		}			OnMarinKill:		if (getequipweaponlv(4)==0 && getequipweaponlv(3)==0){			set @PoringPoints,@PoringPoints+7;			if (@PoringPoints > $HighestPoringPoints) {				set $HighestPoringPointsName$,strcharinfo(0);				set $PPEDefendingChampion$,strcharinfo(0);				set $HighestPoringPoints,@PoringPoints;			}			dispbottom "You have "+@PoringPoints+" point(s)";			end;		}else {			dispbottom "You have to punch the monster without any weapon.";			warp "prontera",156,179;			end;		}OnMinute17:	if ( $@PoringEventChecker == 0 ) {		set $@PoringEventChecker, 1;		initnpctimer;		end;	}OnTimer10000:	announce "Poring Punch Event has started.",0;	monster "1@dth3",0,0,"1 Points",1002,10,"Poring Punch Event::OnPoringKill";	monster "1@dth3",0,0,"3 Points",1113,10,"Poring Punch Event::OnDropsKill";	monster "1@dth3",0,0,"5 Points",1062,10,"Poring Punch Event::OnSantaPoringKill";	monster "1@dth3",0,0,"7 Points",1595,10,"Poring Punch Event::OnMarinKill";	monster "1@dth3",0,0,"-10 Points",1031,70,"Poring Punch Event::OnPoporingKill";	monster "1@dth3",0,0,"-30 Points",1904,5,"Poring Punch Event::OnBombPoringKill";	end;OnTimer70000:	mapannounce "1@dth3","Poring Punch Event: 4 minutes left.",0;	monster "1@dth3",0,0,"1 Points",1002,10,"Poring Punch Event::OnPoringKill";	monster "1@dth3",0,0,"3 Points",1113,10,"Poring Punch Event::OnDropsKill";	monster "1@dth3",0,0,"5 Points",1062,10,"Poring Punch Event::OnSantaPoringKill";	monster "1@dth3",0,0,"7 Points",1595,10,"Poring Punch Event::OnMarinKill";	monster "1@dth3",0,0,"-10 Points",1031,70,"Poring Punch Event::OnPoporingKill";	monster "1@dth3",0,0,"-30 Points",1904,5,"Poring Punch Event::OnBombPoringKill";	end;OnTimer130000:	mapannounce "1@dth3","Poring Punch Event: 3 minutes left.",0;	monster "1@dth3",0,0,"1 Points",1002,10,"Poring Punch Event::OnPoringKill";	monster "1@dth3",0,0,"3 Points",1113,10,"Poring Punch Event::OnDropsKill";	monster "1@dth3",0,0,"5 Points",1062,10,"Poring Punch Event::OnSantaPoringKill";	monster "1@dth3",0,0,"7 Points",1595,10,"Poring Punch Event::OnMarinKill";	monster "1@dth3",0,0,"-10 Points",1031,70,"Poring Punch Event::OnPoporingKill";	monster "1@dth3",0,0,"-30 Points",1904,5,"Poring Punch Event::OnBombPoringKill";	end;OnTimer190000:	mapannounce "1@dth3","Poring Punch Event: 2 minutes left.",0;	monster "1@dth3",0,0,"1 Points",1002,10,"Poring Punch Event::OnPoringKill";	monster "1@dth3",0,0,"3 Points",1113,10,"Poring Punch Event::OnDropsKill";	monster "1@dth3",0,0,"5 Points",1062,10,"Poring Punch Event::OnSantaPoringKill";	monster "1@dth3",0,0,"7 Points",1595,10,"Poring Punch Event::OnMarinKill";	monster "1@dth3",0,0,"-10 Points",1031,70,"Poring Punch Event::OnPoporingKill";	monster "1@dth3",0,0,"-30 Points",1904,5,"Poring Punch Event::OnBombPoringKill";	end;OnTimer250000:	mapannounce "1@dth3","Poring Punch Event: 1 minute left.",0;	monster "1@dth3",0,0,"1 Points",1002,10,"Poring Punch Event::OnPoringKill";	monster "1@dth3",0,0,"3 Points",1113,10,"Poring Punch Event::OnDropsKill";	monster "1@dth3",0,0,"5 Points",1062,10,"Poring Punch Event::OnSantaPoringKill";	monster "1@dth3",0,0,"7 Points",1595,10,"Poring Punch Event::OnMarinKill";	monster "1@dth3",0,0,"-10 Points",1031,70,"Poring Punch Event::OnPoporingKill";	monster "1@dth3",0,0,"-30 Points",1904,5,"Poring Punch Event::OnBombPoringKill";	end;OnTimer310000:	stopnpctimer;	announce "Poring Punch Event has ended and the event Winner is "+$HighestPoringPointsName$+". Kindly please redeem your prize at me",0;	killmonsterall "1@dth3";	set $@PoringEventChecker, 0;	set $@PoringEventPrizeChecker, 1;	sleep2 5000;	mapannounce "1@dth3","You'll be warp at prontera in a short while.",16;	sleep2 10000;	mapwarp "1@dth3","prontera",155,166;	end;}// MAPFLAGS1@dth3	mapflag	nobranch1@dth3	mapflag	noexp1@dth3	mapflag	noskill1@dth3	mapflag	nomemo//1@dth3	mapflag	nopenalty1@dth3	mapflag	pvp	off1@dth3	mapflag	nosave	SavePoints1@dth3	mapflag	noskill1@dth3	mapflag	noteleport1@dth3	mapflag	nowarp1@dth3	mapflag	nowarpto1@dth3	mapflag	noloot

Hi. May someone fix this script for me. The NPC keep annouce the same winner.

Share this post


Link to post
Share on other sites

2 answers to this question

Recommended Posts

  • 0

I haven't test this script yet (my sister still in da house)

but by reading this script, some parts doesn't feel right

like the end; command is inside the closing bracket

it can read to the next label if it doesn't fulfill its condition

 

the npc can keep announce the same winner, if

1. the player gain a lot of points in the previous round, and never claim the prize

- variable is only reset when player claim the prize (PPE_claim) or server reset (OnInit)

2. all next few rounds nobody gain as many points as that player did

 

and I wonder why there is a OnMinute17: doing there, to check the event is ending ?

since the way to start this event is player pay to host the event ...

 

this script should be scrap, and write a whole new one

Share this post


Link to post
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.   Restore formatting

  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.

Loading...
Sign in to follow this  

×
×
  • Create New...

Important Information

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