Jump to content
  • 0

Can anybody clean up this script? Its about poring catcher


Question

Posted (edited)

I know there are bunch of other scripts out there. But this particularly script that i have found in my old ragnarok files way back year 2014 is still the best FOR ME.

 

//===== eAthena Script =======================================
//= Poring Event
//===== By: ==================================================
//= Wild Karrd, alexx
//===== Current Version: =====================================
//= 3.0
//===== Compatible With: =====================================
//= eAthena 12426
//===== Description: =========================================
//= Find correct poring Event
//===== Additional Comments: =================================
//= 3.0 Bug fixed and totaly modified [alexx]
//============================================================


-	script	poring_event_on	-1,{
OnMinute00:
	enablenpc "Poring Catcher";
	announce "It's time to catch Porings!",bc_all;
	set $@EventEnd,0;
	set $@Wrong,-3;
	sleep ( 60 * 60000 ); // How long before hide again
	if ($@EventEnd == 0) {
		disablenpc "Poring Catcher";
		announce "You're late. Catch Porings event is over...",bc_all,0xF49AC1;
		set $@EventEnd,1;
	}
	end;
}

prontera,156,126,4	script	Poring Catcher	909,{

OnTouch:
	mes "[^2E3192Poring Catcher^000000]";
	mes "Hellooo, "+strcharinfo(0)+"! I like to catch porings very much. It's fun!";
	next;
	menu "I wanna too!",L_check,"Tell me more?",L_info,"I'm leaving... Bye.",L_bye;
	close;
	


Check1:
	mes "Please Enter The Code Below To Prove That You Are Human:";
	mes "^0000FF081808^000000";
	input .@pass$;
    	if (.@pass$ == "081808") goto Confirm;
	mes "It seems you input the wrong code, Please try again";
	set @Wrong,1;
	close;

Check2:
	mes "Please Enter The Code Below To Prove That You Are Human:";
	mes "^0000FF070786^000000";
	input .@pass$;
    	if (.@pass$ == "070786") goto Confirm;
	mes "It seems you input the wrong code, Please try again";
	set @Wrong,1;
	close;

Check3:
	mes "Please Enter The Code Below To Prove That You Are Human:";
	mes "^0000FF081887^000000";
	input .@pass$;
    	if (.@pass$ == "070786") goto Confirm;
	mes "It seems you input the wrong code, Please try again";
	set @Wrong,1;
	close;

Check4:
	mes "Please Enter The Code Below To Prove That You Are Human:";
	mes "^0000FF0102350^000000";
	input .@pass$;
    	if (.@pass$ == "102350") goto Confirm;
	mes "It seems you input the wrong code, Please try again";
	set @Wrong,1;
	close;

Check5:
	mes "Please Enter The Code Below To Prove That You Are Human:";
	mes "^0000FFsjrh^000000";
	input .@pass$;
    	if (.@pass$ == "sjrh") goto Confirm;
	mes "It seems you input the wrong code, Please try again";
	set @Wrong,1;
	close;

Check6:
	mes "Please Enter The Code Below To Prove That You Are Human:";
	mes "^0000FFtgd4^000000";
	input .@pass$;
    	if (.@pass$ == "tgd4") goto Confirm;
	mes "It seems you input the wrong code, Please try again";
	set @Wrong,1;
	close;

Check7:
	mes "Please Enter The Code Below To Prove That You Are Human:";
	mes "^0000FF678e^000000";
	input .@pass$;
    	if (.@pass$ == "678e") goto Confirm;
	mes "It seems you input the wrong code, Please try again";
	set @Wrong,1;
	close;

Check8:
	mes "Please Enter The Code Below To Prove That You Are Human:";
	mes "^0000FFegf3^000000";
	input .@pass$;
    	if (.@pass$ == "egf3") goto Confirm;
	mes "It seems you input the wrong code, Please try again";
	set @Wrong,1;
	close;

Check9:
	mes "Please Enter The Code Below To Prove That You Are Human:";
	mes "^0000FF76he^000000";
	input .@pass$;
    	if (.@pass$ == "76he") goto Confirm;
	mes "It seems you input the wrong code, Please try again";
	set @Wrong,1;
	close;

Check10:
	mes "Please Enter The Code Below To Prove That You Are Human:";
	mes "^0000FF59ej^000000";
	input .@pass$;
    	if (.@pass$ == "59ej") goto Confirm;
	mes "It seems you input the wrong code, Please try again";
	set @Wrong,1;
	close;

L_check:
	mes "[^2E3192Poring Catcher^000000]";
	mes "I'm sorry but before you enter, You must prove to me that you are human...";
	next;
	set @rand,rand(1,10);
	if ( @rand == 1 ) goto Check1;
	if ( @rand == 2 ) goto Check2;
	if ( @rand == 3 ) goto Check3;
	if ( @rand == 4 ) goto Check4;
	if ( @rand == 5 ) goto Check5;
	if ( @rand == 6 ) goto Check6;
	if ( @rand == 7 ) goto Check7;
	if ( @rand == 8 ) goto Check8;
	if ( @rand == 9 ) goto Check9;
	if ( @rand == 10 ) goto Check10;
	end;

Confirm:
	next;
	mes "[^2E3192Poring Catcher^000000]";
	mes "Have fun!";
	next;
	if ($@EventEnd == 1) 
	{
		atcommand "@broadcast Hi I'm a Poring catcher Bugger, Report me to a GM please";
		warp "prontera.gat",155,174;
	}
	else {
	
	if ($@PoringsSummoned == 0) {
		initnpctimer;
		donpcevent "Poringsummoner::OnSummon";
		set $@PoringsSummoned,1;
	}
	warp "poring_w01",100,100;
	end;
	}

OnTimer600000:
	stopnpctimer;
	disablenpc "Poring Catcher";
	killmonster "poring_w01","All";
	set $@PoringsSummoned,0;
	mapwarp "poring_w01","prontera",137,234;
	announce "You're late. Catch Porings event is over...",bc_all,0xF49AC1;
	set $@EventEnd,1;
	end;

L_info:
	mes "[^2E3192Poring Catcher^000000]";
	mes "There are 100 different porings at the field.";
	mes "But only one of them is real, you have to find him.";
	mes "You will be rewarded with the coin and some present if be lucky.";
	mes "Goood luuck!";
	close;

L_coin:
	callsub S_BonusReward;
	end;

L_bug:
	atcommand "@broadcast Hi I'm a Poring catcher Bugger, Report me to a GM please";
	atcommand "@broadcast Hi I'm a Poring catcher Bugger, Report me to a GM please";
	close;

L_bye:
	mes "[^2E3192Poring Catcher^000000]";
	mes "Bye-bye!";
	close;

OnInit:
	disablenpc "Poring Catcher";
	set $@PoringsSummoned,0;
	end;

OnWarp:
	initnpctimer;
	enablenpc "Poring Catcher";
	donpcevent "Poringsummoner::OnSummon";
	end;

N_Shop:
	mes "[^2E3192Poring Catcher^000000]";
	mes "That do you want to exchenge your coins on?";
	next;
	menu "Exchange on headgears",-,"Nothing",N_NVM;

	mes "[^2E3192Poring Catcher^000000]";
	mes "Headgears? Here is all i have...";
	next;
	menu "^000090Guild Recruiting Hat^000000 - 50PC",-,
	     "^000090Party Hat^000000 - 50PC",N_Hat2,
	     "^000090Boyfriend Hat^000000 - 50PC",N_Hat3,
	     "^000090Friend Hat^000000 - 50PC",N_Hat4,
	     "^000090Girlfriend Hat^000000 - 50PCs",N_Hat5,
	     "^000090Note Headphones^000000 - 100PC",N_Hat6,
		 "丸麇泐",N_NVM;

	mes "[^2E3192Poring Catcher^000000]";
	mes "Do you wanna exchange 50 Poring Coins on Guild Recruiting Hat?";
	next;
	menu "Yes",-,"No",N_NVM;
	if (countitem(7539) < 50) goto N_NeedCoins;
	mes "[^2E3192Poring Catcher^000000]";
	mes "Here, get yourGuild Recruiting Hat!";
	delitem 7539,50;
	getitem 5336,1;
	logmes "Chatch the Poring: Guild Recruiting Hat";
	close;
N_Hat2:
	mes "[^2E3192Poring Catcher^000000]";
	mes "Do you wanna exchange 50 Poring Coins on Party Hat?";
	next;
	menu "Yes",-,"No",N_NVM;
	if (countitem(7539) < 50) goto N_NeedCoins;
	mes "[^2E3192Poring Catcher^000000]";
	mes "Here, get yourParty Hat!";
	delitem 7539,50;
	getitem 5337,1;
	logmes "Chatch the Poring: Party Hat";
	close;
N_Hat3:
	mes "[^2E3192Poring Catcher^000000]";
	mes "Do you wanna exchange 50 Poring Coins on Boyfriend Hat?";
	next;
	menu "Yes",-,"No",N_NVM;
	if (countitem(7539) < 50) goto N_NeedCoins;
	mes "[^2E3192Poring Catcher^000000]";
	mes "Here, get yourBoyfriend Hat!";
	delitem 7539,50;
	getitem 5338,1;
	logmes "Chatch the Poring: Boyfriend Hat";
	close;
N_Hat4:
	mes "[^2E3192Poring Catcher^000000]";
	mes "Do you wanna exchange 50 Poring Coins on Friend Hat?";
	next;
	menu "Yes",-,"No",N_NVM;
	if (countitem(7539) < 50) goto N_NeedCoins;
	mes "[^2E3192Poring Catcher^000000]";
	mes "Here, get yourFriend Hat!";
	delitem 7539,50;
	getitem 5339,1;
	logmes "Chatch the Poring: Friend Hat";
	close;
N_Hat5:
	mes "[^2E3192Poring Catcher^000000]";
	mes "Do you wanna exchange 50 Poring Coins on Girlfriend Hat?";
	next;
	menu "Yes",-,"No",N_NVM;
	if (countitem(7539) < 50) goto N_NeedCoins;
	mes "[^2E3192Poring Catcher^000000]";
	mes "Here, get yourGirlfriend Hat!";
	delitem 7539,50;
	getitem 5346,1;
	logmes "Chatch the Poring: Girlfriend Hat";
	close;
N_Hat6:
	mes "[^2E3192Poring Catcher^000000]";
	mes "Do you wanna exchange 100 Poring Coins on Note Headphones?";
	next;
	menu "Yes",-,"No",N_NVM;
	if (countitem(7539) < 100) goto N_NeedCoins;
	mes "[^2E3192Poring Catcher^000000]";
	mes "Here, get your Note Headphones!";
	delitem 7539,100;
	getitem 5151,1;
	logmes "Chatch the Poring: Note Headphones";
	close;

N_NeedCoins:
	mes "[^2E3192Poring Catcher^000000]";
	mes "You demand additional coins. Go and get some.";
	close;

N_NVM:
	mes "[^2E3192Poring Catcher^000000]";
	mes "As you wish...";
	close;

}

-	script	Poringsummoner	-1,{

OnSummon:
	initnpctimer;
OnTimer1000:
	mapannounce "poring_w01","5    ...",1;
	end;
OnTimer2000:
	mapannounce "poring_w01","4    ...",1;
	end;
OnTimer3000:
	mapannounce "poring_w01","3    ...",1;
	end;
OnTimer4000:
	mapannounce "poring_w01","2    ...",1;
	end;
OnTimer5000:
	mapannounce "poring_w01","1    ...",1;
	end;
OnTimer6000:
	stopnpctimer;
	mapannounce "poring_w01","LET'S GO!",1;
	areamonster "poring_w01",84,119,121,90,"Poring",1002,1,"poringwin::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"Pouring",1002,20,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"Proing",1002,10,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"Poiring",1002,20,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"Poing",1002,10,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"I am not Poring",1002,5,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"Gniriop",1002,1,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"Poring",1113,1,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"Poring",1062,1,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"Poriiing",1002,10,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"PoriNg",1002,10,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"Porong",1002,10,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"P0ring",1002,10,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"Por1ng",1002,10,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"Porng",1002,1,"poringlose::OnMobKilled";
	end;

}

-	script	poringwin	-1,{

OnMobKilled:
	dispbottom "Congratulations. You've got me.";
	set .@PoringItemVar,rand(10);
	if (.@PoringItemVar == 9) {
		getitem 25092,5;
	}
	if (.@PoringItemVar >= 4 && .@PoringItemVar < 9) {
		getitem 25092,5;
	}
	getitem 25092,5;
	killmonster "poring_w01","All";
	end;

}

-	script	poringlose	-1,{

OnMobKilled:
	dispbottom "Wahaha, you are looser!";
	percentheal -100,-100;
	sleep 1000;
	warp "prontera",137,234;
	end;

}

poring_w01	mapflag	nopenalty
poring_w01	mapflag	noloot
poring_w01	mapflag	noskill
poring_w01	mapflag	nowarpto
poring_w01	mapflag	nowarp
poring_w01	mapflag	noteleport
poring_w01	mapflag	nomemo
poring_w01	mapflag	nosave	SavePoint
poring_w01	mapflag	nobranch

 

The problems i found on this scripts were the ff:

After killing the correct poring it should warp me out to the map. It should warp me back to prontera. But it doesnt. It uses //@doommap command and i didnt win any item. I just checked.

 

and can i request a clean up with that script? i want to delete those shop. I want as as is. If you win you will get the specific item and end of the story.

 

This code below me is not needed.

N_Shop:
	mes "[^2E3192Poring Catcher^000000]";
	mes "That do you want to exchenge your coins on?";
	next;
	menu "Exchange on headgears",-,"Nothing",N_NVM;

	mes "[^2E3192Poring Catcher^000000]";
	mes "Headgears? Here is all i have...";
	next;
	menu "^000090Guild Recruiting Hat^000000 - 50PC",-,
	     "^000090Party Hat^000000 - 50PC",N_Hat2,
	     "^000090Boyfriend Hat^000000 - 50PC",N_Hat3,
	     "^000090Friend Hat^000000 - 50PC",N_Hat4,
	     "^000090Girlfriend Hat^000000 - 50PCs",N_Hat5,
	     "^000090Note Headphones^000000 - 100PC",N_Hat6,
		 "丸麇泐",N_NVM;

	mes "[^2E3192Poring Catcher^000000]";
	mes "Do you wanna exchange 50 Poring Coins on Guild Recruiting Hat?";
	next;
	menu "Yes",-,"No",N_NVM;
	if (countitem(7539) < 50) goto N_NeedCoins;
	mes "[^2E3192Poring Catcher^000000]";
	mes "Here, get yourGuild Recruiting Hat!";
	delitem 7539,50;
	getitem 5336,1;
	logmes "Chatch the Poring: Guild Recruiting Hat";
	close;
N_Hat2:
	mes "[^2E3192Poring Catcher^000000]";
	mes "Do you wanna exchange 50 Poring Coins on Party Hat?";
	next;
	menu "Yes",-,"No",N_NVM;
	if (countitem(7539) < 50) goto N_NeedCoins;
	mes "[^2E3192Poring Catcher^000000]";
	mes "Here, get yourParty Hat!";
	delitem 7539,50;
	getitem 5337,1;
	logmes "Chatch the Poring: Party Hat";
	close;
N_Hat3:
	mes "[^2E3192Poring Catcher^000000]";
	mes "Do you wanna exchange 50 Poring Coins on Boyfriend Hat?";
	next;
	menu "Yes",-,"No",N_NVM;
	if (countitem(7539) < 50) goto N_NeedCoins;
	mes "[^2E3192Poring Catcher^000000]";
	mes "Here, get yourBoyfriend Hat!";
	delitem 7539,50;
	getitem 5338,1;
	logmes "Chatch the Poring: Boyfriend Hat";
	close;
N_Hat4:
	mes "[^2E3192Poring Catcher^000000]";
	mes "Do you wanna exchange 50 Poring Coins on Friend Hat?";
	next;
	menu "Yes",-,"No",N_NVM;
	if (countitem(7539) < 50) goto N_NeedCoins;
	mes "[^2E3192Poring Catcher^000000]";
	mes "Here, get yourFriend Hat!";
	delitem 7539,50;
	getitem 5339,1;
	logmes "Chatch the Poring: Friend Hat";
	close;
N_Hat5:
	mes "[^2E3192Poring Catcher^000000]";
	mes "Do you wanna exchange 50 Poring Coins on Girlfriend Hat?";
	next;
	menu "Yes",-,"No",N_NVM;
	if (countitem(7539) < 50) goto N_NeedCoins;
	mes "[^2E3192Poring Catcher^000000]";
	mes "Here, get yourGirlfriend Hat!";
	delitem 7539,50;
	getitem 5346,1;
	logmes "Chatch the Poring: Girlfriend Hat";
	close;
N_Hat6:
	mes "[^2E3192Poring Catcher^000000]";
	mes "Do you wanna exchange 100 Poring Coins on Note Headphones?";
	next;
	menu "Yes",-,"No",N_NVM;
	if (countitem(7539) < 100) goto N_NeedCoins;
	mes "[^2E3192Poring Catcher^000000]";
	mes "Here, get your Note Headphones!";
	delitem 7539,100;
	getitem 5151,1;
	logmes "Chatch the Poring: Note Headphones";
	close;

N_NeedCoins:
	mes "[^2E3192Poring Catcher^000000]";
	mes "You demand additional coins. Go and get some.";
	close;

N_NVM:
	mes "[^2E3192Poring Catcher^000000]";
	mes "As you wish...";
	close;

 

Thanks in advance guys!

 

 

*EDIT - Okay i did some cleanups on my own. I can get now an item when i kill the correct poring. The problem still persist though. After getting the item im stucked to that map. And also i purposely attack the wrong poring. It did kill me yes. But i can go back to the map by speaking to the npc again. What i want is after you get disqualified by killing the wrong poring. You wont be able to go back to the event.

Edited by gidzdlcrz

3 answers to this question

Recommended Posts

  • 0
Posted (edited)
//===== eAthena Script =======================================
//= Poring Event
//===== By: ==================================================
//= Wild Karrd, alexx
//===== Current Version: =====================================
//= 3.0
//===== Compatible With: =====================================
//= eAthena 12426
//===== Description: =========================================
//= Find correct poring Event
//===== Additional Comments: =================================
//= 3.0 Bug fixed and totaly modified [alexx]
//============================================================


-    script    poring_event_on    -1,{
OnMinute00:
    enablenpc "Poring Catcher";
    announce "It's time to catch Porings!",bc_all;
    set $@EventEnd,0;
    set $@Wrong,-3;
    sleep ( 60 * 60000 ); // How long before hide again
    if ($@EventEnd == 0) {
        disablenpc "Poring Catcher";
        announce "You're late. Catch Porings event is over...",bc_all,0xF49AC1;
        set $@EventEnd,1;
    }
    end;
}

prontera,156,126,4    script    Poring Catcher    909,{

OnTouch:
    mes "[^2E3192Poring Catcher^000000]";
    mes "Hellooo, "+strcharinfo(0)+"! I like to catch porings very much. It's fun!";
    next;
    menu "I wanna too!",L_check,"Tell me more?",L_info,"I'm leaving... Bye.",L_bye;
    close;
    


Check1:
    mes "Please Enter The Code Below To Prove That You Are Human:";
    mes "^0000FF081808^000000";
    input .@pass$;
        if (.@pass$ == "081808") goto Confirm;
    mes "It seems you input the wrong code, Please try again";
    set @Wrong,1;
    close;

Check2:
    mes "Please Enter The Code Below To Prove That You Are Human:";
    mes "^0000FF070786^000000";
    input .@pass$;
        if (.@pass$ == "070786") goto Confirm;
    mes "It seems you input the wrong code, Please try again";
    set @Wrong,1;
    close;

Check3:
    mes "Please Enter The Code Below To Prove That You Are Human:";
    mes "^0000FF081887^000000";
    input .@pass$;
        if (.@pass$ == "070786") goto Confirm;
    mes "It seems you input the wrong code, Please try again";
    set @Wrong,1;
    close;

Check4:
    mes "Please Enter The Code Below To Prove That You Are Human:";
    mes "^0000FF0102350^000000";
    input .@pass$;
        if (.@pass$ == "102350") goto Confirm;
    mes "It seems you input the wrong code, Please try again";
    set @Wrong,1;
    close;

Check5:
    mes "Please Enter The Code Below To Prove That You Are Human:";
    mes "^0000FFsjrh^000000";
    input .@pass$;
        if (.@pass$ == "sjrh") goto Confirm;
    mes "It seems you input the wrong code, Please try again";
    set @Wrong,1;
    close;

Check6:
    mes "Please Enter The Code Below To Prove That You Are Human:";
    mes "^0000FFtgd4^000000";
    input .@pass$;
        if (.@pass$ == "tgd4") goto Confirm;
    mes "It seems you input the wrong code, Please try again";
    set @Wrong,1;
    close;

Check7:
    mes "Please Enter The Code Below To Prove That You Are Human:";
    mes "^0000FF678e^000000";
    input .@pass$;
        if (.@pass$ == "678e") goto Confirm;
    mes "It seems you input the wrong code, Please try again";
    set @Wrong,1;
    close;

Check8:
    mes "Please Enter The Code Below To Prove That You Are Human:";
    mes "^0000FFegf3^000000";
    input .@pass$;
        if (.@pass$ == "egf3") goto Confirm;
    mes "It seems you input the wrong code, Please try again";
    set @Wrong,1;
    close;

Check9:
    mes "Please Enter The Code Below To Prove That You Are Human:";
    mes "^0000FF76he^000000";
    input .@pass$;
        if (.@pass$ == "76he") goto Confirm;
    mes "It seems you input the wrong code, Please try again";
    set @Wrong,1;
    close;

Check10:
    mes "Please Enter The Code Below To Prove That You Are Human:";
    mes "^0000FF59ej^000000";
    input .@pass$;
        if (.@pass$ == "59ej") goto Confirm;
    mes "It seems you input the wrong code, Please try again";
    set @Wrong,1;
    close;

L_check:
    mes "[^2E3192Poring Catcher^000000]";
    mes "I'm sorry but before you enter, You must prove to me that you are human...";
    next;
    set @rand,rand(1,10);
    if ( @rand == 1 ) goto Check1;
    if ( @rand == 2 ) goto Check2;
    if ( @rand == 3 ) goto Check3;
    if ( @rand == 4 ) goto Check4;
    if ( @rand == 5 ) goto Check5;
    if ( @rand == 6 ) goto Check6;
    if ( @rand == 7 ) goto Check7;
    if ( @rand == 8 ) goto Check8;
    if ( @rand == 9 ) goto Check9;
    if ( @rand == 10 ) goto Check10;
    end;

Confirm:
    next;
    mes "[^2E3192Poring Catcher^000000]";
    mes "Have fun!";
    next;
    if ($@EventEnd == 1)
    {
        atcommand "@broadcast Hi I'm a Poring catcher Bugger, Report me to a GM please";
        warp "prontera.gat",155,174;
    }
    else {
    
    if ($@PoringsSummoned == 0) {
        initnpctimer;
        donpcevent "Poringsummoner::OnSummon";
        set $@PoringsSummoned,1;
    }
    warp "poring_w01",100,100;
    end;
    }

OnTimer600000:
    stopnpctimer;
    disablenpc "Poring Catcher";
    killmonster "poring_w01","All";
    set $@PoringsSummoned,0;
    mapwarp "poring_w01","prontera",137,234;
    announce "You're late. Catch Porings event is over...",bc_all,0xF49AC1;
    set $@EventEnd,1;
    end;

L_info:
    mes "[^2E3192Poring Catcher^000000]";
    mes "There are 100 different porings at the field.";
    mes "But only one of them is real, you have to find him.";
    mes "You will be rewarded with the coin and some present if be lucky.";
    mes "Goood luuck!";
    close;

L_coin:
    callsub S_BonusReward;
    end;

L_bug:
    atcommand "@broadcast Hi I'm a Poring catcher Bugger, Report me to a GM please";
    atcommand "@broadcast Hi I'm a Poring catcher Bugger, Report me to a GM please";
    close;

L_bye:
    mes "[^2E3192Poring Catcher^000000]";
    mes "Bye-bye!";
    close;

OnInit:
    disablenpc "Poring Catcher";
    set $@PoringsSummoned,0;
    end;

OnWarp:
    initnpctimer;
    enablenpc "Poring Catcher";
    donpcevent "Poringsummoner::OnSummon";
    end;

}

-    script    Poringsummoner    -1,{

OnSummon:
    initnpctimer;
OnTimer1000:
    mapannounce "poring_w01","5    ...",1;
    end;
OnTimer2000:
    mapannounce "poring_w01","4    ...",1;
    end;
OnTimer3000:
    mapannounce "poring_w01","3    ...",1;
    end;
OnTimer4000:
    mapannounce "poring_w01","2    ...",1;
    end;
OnTimer5000:
    mapannounce "poring_w01","1    ...",1;
    end;
OnTimer6000:
    stopnpctimer;
    mapannounce "poring_w01","LET'S GO!",1;
    areamonster "poring_w01",84,119,121,90,"Poring",1002,1,"poringwin::OnMobKilledWin";
    areamonster "poring_w01",84,119,121,90,"Pouring",1002,20,"poringlose::OnMobKilled";
    areamonster "poring_w01",84,119,121,90,"Proing",1002,10,"poringlose::OnMobKilled";
    areamonster "poring_w01",84,119,121,90,"Poiring",1002,20,"poringlose::OnMobKilled";
    areamonster "poring_w01",84,119,121,90,"Poing",1002,10,"poringlose::OnMobKilled";
    areamonster "poring_w01",84,119,121,90,"I am not Poring",1002,5,"poringlose::OnMobKilled";
    areamonster "poring_w01",84,119,121,90,"Gniriop",1002,1,"poringlose::OnMobKilled";
    areamonster "poring_w01",84,119,121,90,"Poring",1113,1,"poringlose::OnMobKilled";
    areamonster "poring_w01",84,119,121,90,"Poring",1062,1,"poringlose::OnMobKilled";
    areamonster "poring_w01",84,119,121,90,"Poriiing",1002,10,"poringlose::OnMobKilled";
    areamonster "poring_w01",84,119,121,90,"PoriNg",1002,10,"poringlose::OnMobKilled";
    areamonster "poring_w01",84,119,121,90,"Porong",1002,10,"poringlose::OnMobKilled";
    areamonster "poring_w01",84,119,121,90,"P0ring",1002,10,"poringlose::OnMobKilled";
    areamonster "poring_w01",84,119,121,90,"Por1ng",1002,10,"poringlose::OnMobKilled";
    areamonster "poring_w01",84,119,121,90,"Porng",1002,1,"poringlose::OnMobKilled";
    end;

}

-    script    poringwin    -1,{

OnMobKilledWin:
    dispbottom "Congratulations. You've got me.";
    set .@PoringItemVar,rand(10);
    if (.@PoringItemVar == 9) {
        getitem 25092,5;
    }
    if (.@PoringItemVar >= 4 && .@PoringItemVar < 9) {
        getitem 25092,5;
    }
    getitem 25092,5;
    killmonster "poring_w01","All";
    warp "prontera",137,234;
    end;

}

-    script    poringlose    -1,{

OnMobKilled:
    dispbottom "Wahaha, you are looser!";
    percentheal -100,-100;
    sleep 1000;
    warp "prontera",137,234;
    end;

}

poring_w01    mapflag    nopenalty
poring_w01    mapflag    noloot
poring_w01    mapflag    noskill
poring_w01    mapflag    nowarpto
poring_w01    mapflag    nowarp
poring_w01    mapflag    noteleport
poring_w01    mapflag    nomemo
poring_w01    mapflag    nosave    SavePoint
poring_w01    mapflag    nobranch

 

Edited by Emistry
codebox
  • 0
Posted

@gidzdlcrz try this

 

//===== eAthena Script =======================================
//= Poring Event
//===== By: ==================================================
//= Wild Karrd, alexx
//===== Current Version: =====================================
//= 3.0
//===== Compatible With: =====================================
//= eAthena 12426
//===== Description: =========================================
//= Find correct poring Event
//===== Additional Comments: =================================
//= 3.0 Bug fixed and totaly modified [alexx]
//============================================================


-	script	poring_event_on	-1,{
OnMinute00:
	enablenpc "Poring Catcher";
	announce "It's time to catch Porings!",bc_all;
	set $@EventEnd,0;
	set $@Wrong,-3;
	sleep ( 60 * 60000 ); // How long before hide again
	if ($@EventEnd == 0) {
		disablenpc "Poring Catcher";
		announce "You're late. Catch Porings event is over...",bc_all,0xF49AC1;
		set $@EventEnd,1;
	}
	end;
}

prontera,156,126,4	script	Poring Catcher	909,{

OnTouch:
	mes "[^2E3192Poring Catcher^000000]";
	mes "Hellooo, "+strcharinfo(0)+"! I like to catch porings very much. It's fun!";
	next;
	menu "I wanna too!",L_check,"Tell me more?",L_info,"I'm leaving... Bye.",L_bye;
	close;
	


Check1:
	mes "Please Enter The Code Below To Prove That You Are Human:";
	mes "^0000FF081808^000000";
	input .@pass$;
    	if (.@pass$ == "081808") goto Confirm;
	mes "It seems you input the wrong code, Please try again";
	set @Wrong,1;
	close;

Check2:
	mes "Please Enter The Code Below To Prove That You Are Human:";
	mes "^0000FF070786^000000";
	input .@pass$;
    	if (.@pass$ == "070786") goto Confirm;
	mes "It seems you input the wrong code, Please try again";
	set @Wrong,1;
	close;

Check3:
	mes "Please Enter The Code Below To Prove That You Are Human:";
	mes "^0000FF081887^000000";
	input .@pass$;
    	if (.@pass$ == "070786") goto Confirm;
	mes "It seems you input the wrong code, Please try again";
	set @Wrong,1;
	close;

Check4:
	mes "Please Enter The Code Below To Prove That You Are Human:";
	mes "^0000FF0102350^000000";
	input .@pass$;
    	if (.@pass$ == "102350") goto Confirm;
	mes "It seems you input the wrong code, Please try again";
	set @Wrong,1;
	close;

Check5:
	mes "Please Enter The Code Below To Prove That You Are Human:";
	mes "^0000FFsjrh^000000";
	input .@pass$;
    	if (.@pass$ == "sjrh") goto Confirm;
	mes "It seems you input the wrong code, Please try again";
	set @Wrong,1;
	close;

Check6:
	mes "Please Enter The Code Below To Prove That You Are Human:";
	mes "^0000FFtgd4^000000";
	input .@pass$;
    	if (.@pass$ == "tgd4") goto Confirm;
	mes "It seems you input the wrong code, Please try again";
	set @Wrong,1;
	close;

Check7:
	mes "Please Enter The Code Below To Prove That You Are Human:";
	mes "^0000FF678e^000000";
	input .@pass$;
    	if (.@pass$ == "678e") goto Confirm;
	mes "It seems you input the wrong code, Please try again";
	set @Wrong,1;
	close;

Check8:
	mes "Please Enter The Code Below To Prove That You Are Human:";
	mes "^0000FFegf3^000000";
	input .@pass$;
    	if (.@pass$ == "egf3") goto Confirm;
	mes "It seems you input the wrong code, Please try again";
	set @Wrong,1;
	close;

Check9:
	mes "Please Enter The Code Below To Prove That You Are Human:";
	mes "^0000FF76he^000000";
	input .@pass$;
    	if (.@pass$ == "76he") goto Confirm;
	mes "It seems you input the wrong code, Please try again";
	set @Wrong,1;
	close;

Check10:
	mes "Please Enter The Code Below To Prove That You Are Human:";
	mes "^0000FF59ej^000000";
	input .@pass$;
    	if (.@pass$ == "59ej") goto Confirm;
	mes "It seems you input the wrong code, Please try again";
	set @Wrong,1;
	close;

L_check:
	mes "[^2E3192Poring Catcher^000000]";
	mes "I'm sorry but before you enter, You must prove to me that you are human...";
	next;
	set @rand,rand(1,10);
	if ( @rand == 1 ) goto Check1;
	if ( @rand == 2 ) goto Check2;
	if ( @rand == 3 ) goto Check3;
	if ( @rand == 4 ) goto Check4;
	if ( @rand == 5 ) goto Check5;
	if ( @rand == 6 ) goto Check6;
	if ( @rand == 7 ) goto Check7;
	if ( @rand == 8 ) goto Check8;
	if ( @rand == 9 ) goto Check9;
	if ( @rand == 10 ) goto Check10;
	end;

Confirm:
	next;
	mes "[^2E3192Poring Catcher^000000]";
	mes "Have fun!";
	next;
	if ($@EventEnd == 1) 
	{
		atcommand "@broadcast Hi I'm a Poring catcher Bugger, Report me to a GM please";
		warp "SavePoint",0,0;
	}
	else {
	
	if ($@PoringsSummoned == 0) {
		initnpctimer;
		donpcevent "Poringsummoner::OnSummon";
		set $@PoringsSummoned,1;
	}
	warp "poring_w01",100,100;
	end;
	}

OnTimer600000:
	stopnpctimer;
	disablenpc "Poring Catcher";
	killmonster "poring_w01","All";
	set $@PoringsSummoned,0;
	mapwarp "poring_w01","prontera",137,234;
	announce "You're late. Catch Porings event is over...",bc_all,0xF49AC1;
	warp "SavePoint",0,0;
	set $@EventEnd,1;
	end;

L_info:
	mes "[^2E3192Poring Catcher^000000]";
	mes "There are 100 different porings at the field.";
	mes "But only one of them is real, you have to find him.";
	mes "You will be rewarded with the coin and some present if be lucky.";
	mes "Goood luuck!";
	close;

L_coin:
	callsub S_BonusReward;
	end;

L_bug:
	atcommand "@broadcast Hi I'm a Poring catcher Bugger, Report me to a GM please";
	atcommand "@broadcast Hi I'm a Poring catcher Bugger, Report me to a GM please";
	close;

L_bye:
	mes "[^2E3192Poring Catcher^000000]";
	mes "Bye-bye!";
	close;

OnInit:
	disablenpc "Poring Catcher";
	set $@PoringsSummoned,0;
	end;

OnWarp:
	initnpctimer;
	enablenpc "Poring Catcher";
	donpcevent "Poringsummoner::OnSummon";
	end;

N_Shop:
	mes "[^2E3192Poring Catcher^000000]";
	mes "That do you want to exchenge your coins on?";
	next;
	menu "Exchange on headgears",-,"Nothing",N_NVM;

	mes "[^2E3192Poring Catcher^000000]";
	mes "Headgears? Here is all i have...";
	next;
	menu "^000090Guild Recruiting Hat^000000 - 50PC",-,
	     "^000090Party Hat^000000 - 50PC",N_Hat2,
	     "^000090Boyfriend Hat^000000 - 50PC",N_Hat3,
	     "^000090Friend Hat^000000 - 50PC",N_Hat4,
	     "^000090Girlfriend Hat^000000 - 50PCs",N_Hat5,
	     "^000090Note Headphones^000000 - 100PC",N_Hat6,
		 "丸麇泐",N_NVM;

	mes "[^2E3192Poring Catcher^000000]";
	mes "Do you wanna exchange 50 Poring Coins on Guild Recruiting Hat?";
	next;
	menu "Yes",-,"No",N_NVM;
	if (countitem(7539) < 50) goto N_NeedCoins;
	mes "[^2E3192Poring Catcher^000000]";
	mes "Here, get yourGuild Recruiting Hat!";
	delitem 7539,50;
	getitem 5336,1;
	logmes "Chatch the Poring: Guild Recruiting Hat";
	close;
N_Hat2:
	mes "[^2E3192Poring Catcher^000000]";
	mes "Do you wanna exchange 50 Poring Coins on Party Hat?";
	next;
	menu "Yes",-,"No",N_NVM;
	if (countitem(7539) < 50) goto N_NeedCoins;
	mes "[^2E3192Poring Catcher^000000]";
	mes "Here, get yourParty Hat!";
	delitem 7539,50;
	getitem 5337,1;
	logmes "Chatch the Poring: Party Hat";
	close;
N_Hat3:
	mes "[^2E3192Poring Catcher^000000]";
	mes "Do you wanna exchange 50 Poring Coins on Boyfriend Hat?";
	next;
	menu "Yes",-,"No",N_NVM;
	if (countitem(7539) < 50) goto N_NeedCoins;
	mes "[^2E3192Poring Catcher^000000]";
	mes "Here, get yourBoyfriend Hat!";
	delitem 7539,50;
	getitem 5338,1;
	logmes "Chatch the Poring: Boyfriend Hat";
	close;
N_Hat4:
	mes "[^2E3192Poring Catcher^000000]";
	mes "Do you wanna exchange 50 Poring Coins on Friend Hat?";
	next;
	menu "Yes",-,"No",N_NVM;
	if (countitem(7539) < 50) goto N_NeedCoins;
	mes "[^2E3192Poring Catcher^000000]";
	mes "Here, get yourFriend Hat!";
	delitem 7539,50;
	getitem 5339,1;
	logmes "Chatch the Poring: Friend Hat";
	close;
N_Hat5:
	mes "[^2E3192Poring Catcher^000000]";
	mes "Do you wanna exchange 50 Poring Coins on Girlfriend Hat?";
	next;
	menu "Yes",-,"No",N_NVM;
	if (countitem(7539) < 50) goto N_NeedCoins;
	mes "[^2E3192Poring Catcher^000000]";
	mes "Here, get yourGirlfriend Hat!";
	delitem 7539,50;
	getitem 5346,1;
	logmes "Chatch the Poring: Girlfriend Hat";
	close;
N_Hat6:
	mes "[^2E3192Poring Catcher^000000]";
	mes "Do you wanna exchange 100 Poring Coins on Note Headphones?";
	next;
	menu "Yes",-,"No",N_NVM;
	if (countitem(7539) < 100) goto N_NeedCoins;
	mes "[^2E3192Poring Catcher^000000]";
	mes "Here, get your Note Headphones!";
	delitem 7539,100;
	getitem 5151,1;
	logmes "Chatch the Poring: Note Headphones";
	close;

N_NeedCoins:
	mes "[^2E3192Poring Catcher^000000]";
	mes "You demand additional coins. Go and get some.";
	close;

N_NVM:
	mes "[^2E3192Poring Catcher^000000]";
	mes "As you wish...";
	close;

}

-	script	Poringsummoner	-1,{

OnSummon:
	initnpctimer;
OnTimer1000:
	mapannounce "poring_w01","5    ...",1;
	end;
OnTimer2000:
	mapannounce "poring_w01","4    ...",1;
	end;
OnTimer3000:
	mapannounce "poring_w01","3    ...",1;
	end;
OnTimer4000:
	mapannounce "poring_w01","2    ...",1;
	end;
OnTimer5000:
	mapannounce "poring_w01","1    ...",1;
	end;
OnTimer6000:
	stopnpctimer;
	mapannounce "poring_w01","LET'S GO!",1;
	areamonster "poring_w01",84,119,121,90,"Poring",1002,1,"poringwin::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"Pouring",1002,20,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"Proing",1002,10,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"Poiring",1002,20,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"Poing",1002,10,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"I am not Poring",1002,5,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"Gniriop",1002,1,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"Poring",1113,1,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"Poring",1062,1,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"Poriiing",1002,10,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"PoriNg",1002,10,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"Porong",1002,10,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"P0ring",1002,10,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"Por1ng",1002,10,"poringlose::OnMobKilled";
	areamonster "poring_w01",84,119,121,90,"Porng",1002,1,"poringlose::OnMobKilled";
	end;

}

-	script	poringwin	-1,{

OnMobKilled:
	dispbottom "Congratulations. You've got me.";
	set .@PoringItemVar,rand(10);
	if (.@PoringItemVar == 9) {
		getitem 25092,5;
		warp "SavePoint",0,0;
	}
	if (.@PoringItemVar >= 4 && .@PoringItemVar < 9) {
		getitem 25092,5;
		warp "SavePoint",0,0;
	}
	getitem 25092,5;
	killmonster "poring_w01","All";
	warp "SavePoint",0,0;
	end;

}

-	script	poringlose	-1,{

OnMobKilled:
	dispbottom "Wahaha, you are looser!";
	warp "SavePoint",0,0;
	percentheal -100,-100;
	sleep 1000;
	end;

}

poring_w01	mapflag	nopenalty
poring_w01	mapflag	noloot
poring_w01	mapflag	noskill
poring_w01	mapflag	nowarpto
poring_w01	mapflag	nowarp
poring_w01	mapflag	noteleport
poring_w01	mapflag	nomemo
poring_w01	mapflag	nosave	SavePoint
poring_w01	mapflag	nobranch

 

  • Upvote 1

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...