Jump to content
  • 0
Sign in to follow this  
Alexandria

hide npc by AnnieRuru

Question

7 answers to this question

Recommended Posts

  • 0

did I really did this ?

..."Poking",1002,3*getmapusers("poring_w03"),......"Poiring",1002,3*getmapusers("poring_w03"),......"Poling",1002,3*getmapusers("poring_w03"),...
getmapusers used quite an amount of server resources to count the players on the map

this command should only execute once

 

oh yes, .... I didn't noticed it back then

http://herc.ws/board/topic/4656-poring-catcher-modified-request/?p=30163

 

@@Alexandria

try this one

http://upaste.me/8e8721828c2c946ec

 

 

@@Winterfox

oh man ... I can't debug the script anymore

using *disablenpc will disable *bindatcmd on that OnStart label

although OnClock still able to run though

Share this post


Link to post
Share on other sites
  • 0

@@Alexandria

 

//======Name========================================// Poring Catcher Event//======Version=====================================// 1.0//======Author(s)===================================// Sandbox, Clydelion//======Comments====================================// In loving memory of AstralRO//==================================================prontera,156,184,3	script	Poring Catcher Warper	1_SHADOW_NPC,{	if ( getgmlevel() >= .gmsetting ) {		if ( !.start ) {			mes "start the event ?";			next;			if ( select( "Yes", "No" ) == 2 ) close;			donpcevent strnpcinfo(0)+"::OnStart";			close;		}		else {			mes "Join or Abort the event ?";			next;			if ( select( "Join", "Abort" ) == 1 ) {				warp "poring_w03", rand(102,104), 101;				end;			}			.skip = 1;			awake strnpcinfo(0);		//	donpcevent strnpcinfo(0)+"::OnEnd";			close;		}	}	else if ( .start == 1 ) {		mes "Do you want to join the Poring Catcher Event?";		select ( "Yes" );		warp "poring_w03", rand(102,104), 101;		end;	}	else if ( .start == 2 ) {		mes "Too late, the event has already started";		close;	}	mes "No Event right now";	close;OnInit:	.eventlasting = 30*60; // how many seconds the event will last ? default : 30*60 = 30 minutes	.gmsetting = 60; // in which level the GMs can control this event ?	.fakes = 3; // the amount of fakes poring * 12 * number of players in the maps		setarray .rewardwin, 20003, 10; // edit the reward items here	.seconds = 1000; // for debug purpose only, how many mili-second = 1 second ?	bindatcmd "poring_catcher", strnpcinfo(0)+"::OnStart", .gmsetting, 100;	.rewardwinsize = getarraysize( .rewardwin );	getmapxy .map$, .x, .y, 1;	mapwarp "poring_w03", .map$, .x, .y;	disablenpc "Poring Catcher Warper";end;OnClock0705: // put all the start timer hereOnClock1105:OnClock1905:OnClock2305:OnStart:	.start = 1;	enablenpc  "Poring Catcher Warper";	announce "Poring Catcher Event: We are going to have a Poring Catcher Event",bc_all,0xFF7F50;	sleep 1 * .seconds * !.skip;	announce "Poring Catcher Event: For those who want to join, please come to Prontera!",bc_all,0xFF7F50; //Edit to where would you place the warper	sleep 1 * .seconds * !.skip;	announce "Poring Catcher Event: The Warper would be open for 1 minute",bc_all,0xFF7F50;	sleep 30 * .seconds * !.skip;	announce "Poring Catcher Event: Last 30 Seconds.",bc_all,0xFF7F50;	sleep 30 * .seconds * !.skip;        disablenpc "Poring Catcher Warper";	announce "Poring Catcher Event: Warper Closed.",bc_all,0xFF7F50;	if ( !getmapusers( "poring_w03" ) ) goto OnEnd;	.start = 2;	mapannounce "poring_w03","We are about to start the Poring Catcher Event.",bc_blue;	sleep 1 * .seconds * !.skip;	mapannounce "poring_w03","Rules are simple:",bc_blue;	sleep 1 * .seconds * !.skip;	mapannounce "poring_w03","In a few seconds I'm going to spawn tons of porings..",bc_blue;	sleep 1 * .seconds * !.skip;	mapannounce "poring_w03","..All you need to do is kill the Poring with the right name..",bc_blue;	sleep 1 * .seconds * !.skip;	mapannounce "poring_w03","..Which would be Poring.",bc_blue;	sleep 1 * .seconds * !.skip;	mapannounce "poring_w03","If you kill the wrong one, you will be freeze for seconds!",bc_blue;	sleep 3 * .seconds * !.skip;	mapannounce "poring_w03","That's it.. Now let's get this on!",bc_blue;	sleep 3 * .seconds * !.skip;	mapannounce "poring_w03","Ready...",bc_blue;	sleep 1 * .seconds * !.skip;	mapannounce "poring_w03","Get Set..",bc_blue;	sleep 1 * .seconds * !.skip;	mapannounce "poring_w03","Go!",bc_blue;	sleep 1 * .seconds * !.skip;	areamonster "poring_w03",95,108,113,87,"Poring",1002,1, strnpcinfo(0)+"::OnCorrectKilled";	areamonster "poring_w03",95,108,113,87,"Poking",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";	areamonster "poring_w03",95,108,113,87,"Poiring",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";	areamonster "poring_w03",95,108,113,87,"Poling",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";	areamonster "poring_w03",95,108,113,87,"Porng",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";	areamonster "poring_w03",95,108,113,87,"pH0ur1n6",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";	areamonster "poring_w03",95,108,113,87,"P0ring",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";	areamonster "poring_w03",95,108,113,87,"Porong",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";	areamonster "poring_w03",95,108,113,87,"Powing",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";	areamonster "poring_w03",95,108,113,87,"Poriing",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";	areamonster "poring_w03",95,108,113,87,"Boring",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";	areamonster "poring_w03",95,108,113,87,"Lolwut!?",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";	areamonster "poring_w03",95,108,113,87,"Kill me to win!",1002,3*getmapusers("poring_w03"), strnpcinfo(0)+"::OnFakeKilled";	sleep .eventlasting * .seconds * !.skip;	.skip = 0;	if ( getmapusers( "poring_w03" ) ) goto OnEnd;	end;OnEnd:	announce "No one won the Poring Catcher Event!",bc_all,0xFF7F50;	killmonsterall "poring_w03";	mapwarp "poring_w03", .map$, .x, .y;	.start = 0;	end;OnCorrectKilled:	for ( .@i = 0; .@i < .rewardwinsize; .@i += 2 )		getitem .rewardwin[ .@i ], .rewardwin[ .@i +1 ];	announce strcharinfo(0) +" won the Poring Catcher Event!",bc_all,0xFF7F50;	killmonsterall "poring_w03";	mapwarp "poring_w03", .map$, .x, .y;	.start = 0;	awake strnpcinfo(0);	end;OnFakeKilled://	dispbottom "You killed the wrong Poring! Yerrrrrrrrrrrr out!";//	warp .map$, .x, .y;//	if ( !getmapusers( "poring_w03" ) ) goto OnEnd;	dispbottom "You killed the wrong Poring!";	sc_start2 SC_FREEZE, 9000,0,10000; // 9 seconds to freeze//	sc_start2 SC_STONE, 9000,0,10000;//	sc_start2 SC_STUN, 9000,0,10000;//	sc_start2 SC_SLEEP, 9000,0,10000;	end;}poring_w03	mapflag	nopenaltyporing_w03	mapflag	nolootporing_w03	mapflag	noskillporing_w03	mapflag	nowarptoporing_w03	mapflag	nowarpporing_w03	mapflag	noteleportporing_w03	mapflag	nomemoporing_w03	mapflag	nosave	SavePointporing_w03	mapflag	nobranchporing_w03	mapflag	nodrop
Edited by Winterfox

Share this post


Link to post
Share on other sites
  • 0

EDIT: Thank you but your edition has broken the event.

 

You can kill any poring and you dont get freeze and even if you kill the right poring, you dont win the game. lol

Edited by Alexandria

Share this post


Link to post
Share on other sites
  • 0

 

did I really did this ?

..."Poking",1002,3*getmapusers("poring_w03"),......"Poiring",1002,3*getmapusers("poring_w03"),......"Poling",1002,3*getmapusers("poring_w03"),...
getmapusers used quite an amount of server resources to count the players on the map

this command should only execute once

 

oh yes, .... I didn't noticed it back then

http://herc.ws/board/topic/4656-poring-catcher-modified-request/?p=30163

 

@@Alexandria

try this one

http://upaste.me/8e8721828c2c946ec

 

 

@@Winterfox

oh man ... I can't debug the script anymore

using *disablenpc will disable *bindatcmd on that OnStart label

although OnClock still able to run though

 

Thank you, I havent tested it yet but i will

 

One question:

 

        setarray .rewardwin, 501, 10,                                                502, 10; // edit the reward items here

What does 501 mean? is it going to give 2 rewards?

Share this post


Link to post
Share on other sites
  • 0

 

 

did I really did this ?

..."Poking",1002,3*getmapusers("poring_w03"),......"Poiring",1002,3*getmapusers("poring_w03"),......"Poling",1002,3*getmapusers("poring_w03"),...
getmapusers used quite an amount of server resources to count the players on the map

this command should only execute once

 

oh yes, .... I didn't noticed it back then

http://herc.ws/board/topic/4656-poring-catcher-modified-request/?p=30163

 

@@Alexandria

try this one

http://upaste.me/8e8721828c2c946ec

 

 

@@Winterfox

oh man ... I can't debug the script anymore

using *disablenpc will disable *bindatcmd on that OnStart label

although OnClock still able to run though

 

Thank you, I havent tested it yet but i will

 

One question:

 

        setarray .rewardwin, 501, 10,                                                502, 10; // edit the reward items here

What does 501 mean? is it going to give 2 rewards?

501 is the item ID, 10 is the amount of items. Same goes for 502,10 combination.

Share this post


Link to post
Share on other sites
  • 0

 

 

 

did I really did this ?

..."Poking",1002,3*getmapusers("poring_w03"),......"Poiring",1002,3*getmapusers("poring_w03"),......"Poling",1002,3*getmapusers("poring_w03"),...
getmapusers used quite an amount of server resources to count the players on the map

this command should only execute once

 

oh yes, .... I didn't noticed it back then

http://herc.ws/board/topic/4656-poring-catcher-modified-request/?p=30163

 

@@Alexandria

try this one

http://upaste.me/8e8721828c2c946ec

 

 

@@Winterfox

oh man ... I can't debug the script anymore

using *disablenpc will disable *bindatcmd on that OnStart label

although OnClock still able to run though

 

Thank you, I havent tested it yet but i will

 

One question:

 

        setarray .rewardwin, 501, 10,                                                502, 10; // edit the reward items here

What does 501 mean? is it going to give 2 rewards?

501 is the item ID, 10 is the amount of items. Same goes for 502,10 combination.

 

Oh thank you for answering.

 

so is it going to give 2 rewards?

Share this post


Link to post
Share on other sites
  • 0

Oh thank you for answering. 

so is it going to give 2 rewards?

Yes, Annie's script made an array of items, where you can add multiple rewards. If you don't want this, you can just add/remove the rewards of your liking.

Winterfox' script set only 1 item as reward.

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.