Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // NPC Name must have a Number behind it. ex Name#1 , Name#2,...
- cydonia,143,150,5 script Chained Quest#1 757,{
- function ChainedQuest;
- mes "I am a Chained Quest NPC, you can only redo the previous Quest after you have finished all of my Quests.";
- next;
- // Quest Setup :
- // ChainedQuest( Reward,Amount , Required Zeny, {Item1,Amount1,Item2,Amount2,...} );
- switch( getd( "Quest"+strnpcinfo(2) ) ){
- Case 0: ChainedQuest( "501|502|503", "1|2|3", 10000, 607,10 );
- Case 1: ChainedQuest( 5002,1, 15000, 607,20, 608,20 );
- Case 2: ChainedQuest( 5003,1, 20000, 607,30, 608,30, 7539,30 );
- // Case 3: ChainedQuest( 5004,1, 25000, 607,40, 608,30, 7539,40 ,501,10 );
- // Case 4: ChainedQuest( 5005,1, 30000, 607,50, 608,30, 7539,50 ,501,10 ,502,10 );
- // Case 5: ChainedQuest(....);
- // Case 6: ChainedQuest(....);
- default:
- mes "Congratulation ,You have finished all the Quest i gave you, you may Re-Do if you want.";
- set getd( "Quest"+strnpcinfo(2) ),0;
- close;
- }
- OnPCLoadMapEvent:
- showevent 1,0;
- end;
- function ChainedQuest {
- explode(.@prizes$, "" + getarg(0), "|");
- explode(.@prize_amounts$, "" + getarg(1), "|");
- for( set .@i,3; getarg( .@i,0 ) != 0 ; set .@i,.@i + 2 ){
- if( countitem( getarg( .@i ) ) < ( getarg( .@i + 1 )) ){
- mes "[ ^FF0000Part "+( getd( "Quest"+strnpcinfo(2) ) + 1 )+"^000000 ]";
- mes "^00FF00_______________________________^000000";
- for ( set .@zz, 0; .@zz < getarraysize(.@prizes$); set .@zz, .@zz + 1) {
- mes "^FF0000Reward^000000 : "+.@prize_amounts$[.@zz]+" x ^0000FF"+getitemname( atoi(.@prizes$[.@zz]) )+"^000000";
- }
- mes "^00FF00_______________________________^000000";
- mes "then bring me those items :";
- mes "^00FF00_______________________________^000000";
- mes ( Zeny < getarg(2) ? "^FF0000":"^0000FF" )+getarg(2)+" Zeny^000000";
- for( set .@a,3; getarg( .@a,0 ) != 0 ; set .@a,.@a + 2 ){
- mes (( countitem(getarg( .@a )) < ( getarg(.@a + 1 )) )? "^FF0000[ "+countitem(getarg(.@a))+" / "+(getarg(.@a+1)):"^0000FF[ "+getd( "Quest"+strnpcinfo(2) ) )+" ] "+getitemname(getarg(.@a))+"^000000 ";
- }
- close;
- }
- }
- if( Zeny < getarg( 2 ) ){
- mes "You required "+getarg( 2 )+" Zeny.";
- close;
- }
- mes "[ ^FF0000Part "+( getd( "Quest"+strnpcinfo(2) ) + 1 )+"^000000 ]";
- mes "Look's like you have collected all";
- mes "^FF0000_______________________________^000000";
- mes ( Zeny < getarg(2) ? "^FF0000":"^0000FF" )+getarg(2)+" Zeny^000000";
- for( set .@i,3; getarg( .@i,0 ) != 0 ; set .@i,.@i + 2 ){
- mes "^FF0000"+getarg( .@i+1 )+" x ^0000FF "+getitemname( getarg( .@i ) )+"^000000";
- }
- next;
- if( select("^0000FFContinue^000000:Cancel") == 2 ){
- mes "Okay..as you wish ~ come back again when you do continue it.";
- close;
- }
- for( set .@i,3; getarg( .@i,0 ) != 0 ; set .@i,.@i + 2 ){
- delitem getarg( .@i ),getarg( .@i + 1 );
- }
- set Zeny,Zeny - getarg( 2 );
- set getd( "Quest"+strnpcinfo(2) ),getd( "Quest"+strnpcinfo(2) ) + 1;
- mes "You will be rewarded with ";
- mes "^0000FF_______________________________^000000";
- for (set .@zz, 0; .@zz < getarraysize(.@prizes$); set .@zz, .@zz + 1) {
- mes "^FF0000"+.@prize_amounts$[.@zz]+"^000000 x ^0000FF"+getitemname( atoi(.@prizes$[.@zz]) )+"^000000";
- }
- mes "^0000FF_______________________________^000000";
- for (set .@zz, 0; .@zz < getarraysize(.@prizes$); set .@zz, .@zz + 1) {
- getitem atoi(.@prizes$[.@zz]),atoi(.@prize_amounts$[.@zz]);
- }
- close;
- }
- }
- prontera mapflag loadevent
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement