summaryrefslogtreecommitdiff
path: root/npc
diff options
context:
space:
mode:
Diffstat (limited to 'npc')
-rw-r--r--npc/Changelog.txt3
-rw-r--r--npc/guild/ev_agit_event.txt35
-rw-r--r--npc/guild/gldfunc_manager.txt1
-rw-r--r--npc/jobs/1-1e/gunslinger.txt160
4 files changed, 83 insertions, 116 deletions
diff --git a/npc/Changelog.txt b/npc/Changelog.txt
index 6322772a8..e927973f0 100644
--- a/npc/Changelog.txt
+++ b/npc/Changelog.txt
@@ -26,6 +26,9 @@ KarLaeda
Date Added
======
+2007/04/02
+ * Removed some poor coding from the gunslinger job script
+ * Corrected multiple "WoE has begun" announces [ultramage]
2007/04/01
* Added Ninja Weapon quests [Playtester]
2007/03/30
diff --git a/npc/guild/ev_agit_event.txt b/npc/guild/ev_agit_event.txt
index ab28d5fdf..202e66e60 100644
--- a/npc/guild/ev_agit_event.txt
+++ b/npc/guild/ev_agit_event.txt
@@ -4,7 +4,7 @@
//= kalen (1.0)
//= 1.1 by Akaru and ho|yAnge|
//===== Current Version: =====================================
-//= 1.5a
+//= 1.6
//===== Compatible With: =====================================
//= eAthena 0.1+; RO Episode 4+
//===== Description: =========================================
@@ -23,6 +23,7 @@
//= Now they appear in castles from 00:01 to 00:24. [Lupus]
//= 1.5 Fixed WOE end messages on non-WOE days, by Avaj
//= 1.5a missing tabs [KarLaeda]
+//= 1.6 Corrected multiple "WoE has begun" announces [ultramage]
//============================================================
//| To know how to set up WoE times, go to doc\woe_time_explanation.txt
// WoE Start/Stop times
@@ -36,25 +37,29 @@ OnClock1600: //start time for Sat(6)
OnClock1800: //end time for Sat(6)
OnAgitInit:
-// starting time checks
-if((gettime(4)==2) && (gettime(3)>=21 && gettime(3)<23)) goto L_Start;
-if((gettime(4)==4) && (gettime(3)>=21 && gettime(3)<23)) goto L_Start;
-if((gettime(4)==6) && (gettime(3)>=16 && gettime(3)<18)) goto L_Start;
+ // starting time checks
+ if((gettime(4)==2) && (gettime(3)>=21 && gettime(3)<23)) goto L_Start;
+ if((gettime(4)==4) && (gettime(3)>=21 && gettime(3)<23)) goto L_Start;
+ if((gettime(4)==6) && (gettime(3)>=16 && gettime(3)<18)) goto L_Start;
-// end time checks
-if((gettime(4)==2) && (gettime(3)==23)) goto L_End;
-if((gettime(4)==4) && (gettime(3)==23)) goto L_End;
-if((gettime(4)==6) && (gettime(3)==18)) goto L_End;
- end;
+ // end time checks
+ if((gettime(4)==2) && (gettime(3)==23)) goto L_End;
+ if((gettime(4)==4) && (gettime(3)==23)) goto L_End;
+ if((gettime(4)==6) && (gettime(3)==18)) goto L_End;
+ end;
L_End:
-Announce "The War Of Emperium is over!",8;
-AgitEnd;
-end;
+ if (agitcheck()) {
+ Announce "The War Of Emperium is over!",8;
+ AgitEnd;
+ }
+ end;
L_Start:
- Announce "The War Of Emperium has begun!",8;
- AgitStart;
+ if (!agitcheck()) {
+ Announce "The War Of Emperium has begun!",8;
+ AgitStart;
+ }
end;
}
diff --git a/npc/guild/gldfunc_manager.txt b/npc/guild/gldfunc_manager.txt
index ccdce3c03..6bb71ec25 100644
--- a/npc/guild/gldfunc_manager.txt
+++ b/npc/guild/gldfunc_manager.txt
@@ -29,6 +29,7 @@
//= 1.5 Official Novice Castles Menu (u can't invest / hire guardians) [Lupus]
//= 1.6 According to recent info u can re-install Guardians during WoE [Lupus]
//= 1.6a Fix for guild manager recognizing [KarLaeda]
+//= 1.6b Fixed the chance for double invest, now 50% instead of 49% [Lupus]
//============================================================
diff --git a/npc/jobs/1-1e/gunslinger.txt b/npc/jobs/1-1e/gunslinger.txt
index 244284652..39e861ebd 100644
--- a/npc/jobs/1-1e/gunslinger.txt
+++ b/npc/jobs/1-1e/gunslinger.txt
@@ -23,109 +23,95 @@
//= 1.7a Grammar fixes, few spelling fixes, etc [CBMaster]
//= 1.7b Parenthesis fixes [KarLaeda]
//= 1.8 Fixed the reward you can get [Playtester]
+//= 1.9 Removed some 'clever' script constructs [ultramage]
//============================================================
que_ng,152,167,3 script Gunslinger Jobchanger 901,{
- set @npcname$,"[Armsmith]";
+ set .@npcname$, "[Armsmith]";
if (Class == Job_Novice) {
if (GUNS_Q >= 1) {
- mes @npcname$;
+ mes .@npcname$;
mes "So, you've come back?";
next;
if (GUNS_Q == 10005) {
if (SkillPoint > 0) {
- mes @npcname$;
+ mes .@npcname$;
mes "Err, excuse me, but you still have Skill Points left. You have to use them all before I can turn you into a Gunslinger.";
- close2;
- set @npcname$,"";
- end;
+ close;
} else if (JobLevel < 10) {
- mes @npcname$;
+ mes .@npcname$;
mes "Err, excuse me, but your job level is not sufficient. You need to have a job level of 10 in order to change to a Gunslinger";
- close2;
- set @npcname$,"";
- end;
+ close;
}
- mes @npcname$;
+ mes .@npcname$;
mes "Glad to know you did what Mr. Tanieh asked you to do, makes me know you're worthy of being..";
next;
- mes @npcname$;
+ mes .@npcname$;
mes "A Gunslinger!!";
callfunc "Job_Change",Job_Gunslinger;
callfunc "F_ClearJobVar"; //clears all job variables for the current player
next;
- mes @npcname$;
+ mes .@npcname$;
mes "Oh, I forgot, here's a token of my appreciation";
if (rand(1,3) < 3) {
getitem 13100,1;
} else {
getitem 13150,1;
}
- close2;
- set @npcname$,"";
- end;
+ close;
}
- mes @npcname$;
+ mes .@npcname$;
mes "But you still haven't done what I told you, need me to repeat it?";
switch (select ("Yes, Please:No, Thanks")) {
case 1:
next;
- mes @npcname$;
+ mes .@npcname$;
mes "You need to go to Payon. At the small wooden wall and in the south exit, Mr. Tanieh will be there waiting to ask you a few things. Go now...";
- close2;
- set @npcname$,"";
- end;
+ close;
case 2:
next;
- mes @npcname$;
+ mes .@npcname$;
mes "Then GET GOING! You do want to become a Gunslinger, right?";
- close2;
- set @npcname$,"";
- end;
+ close;
}
}
- mes @npcname$;
+ mes .@npcname$;
mes "Hi ^0000CC"+strcharinfo(0)+"^000000,I need you to do something for me first, will you?";
switch (select ("Yes:No")) {
case 1:
next;
- mes @npcname$;
+ mes .@npcname$;
mes "Good, I need you to go to Payon and do a few things from Mr. Tanieh.";
next;
- mes @npcname$;
+ mes .@npcname$;
mes "He'll be waiting for you next to the small wooden wall of the south exit. See you later then.";
- close2;
set GUNS_Q,1;
- set @npcname$,"";
- end;
+ close;
case 2:
next;
- mes @npcname$;
+ mes .@npcname$;
mes "Too bad for you son. Come back when you are willing to do so.";
- close2;
- set @npcname$,"";
- end;
+ close;
}
}
- mes @npcname$;
+ mes .@npcname$;
mes "Hi son, how's life treating you?";
- set @npcname$,"";
close;
}
payon,184,65,3 script Mr. Tanieh 866,{
- set @npcname$,"[Mr. Tanieh]";
+ set .@npcname$, "[Mr. Tanieh]";
if (GUNS_Q == 1) {
- mes @npcname$;
+ mes .@npcname$;
mes "Oh, you're ^0000CC"+strcharinfo(0)+"^000000, right? Einbroch's Armsmith told me you were going to help me with a few things.";
next;
- mes @npcname$;
+ mes .@npcname$;
mes "I need to make a special soup for my wife, but, as you can see, I am not in conditions to look for the items, she's sick you know?";
next;
- mes @npcname$;
+ mes .@npcname$;
mes "So, will you do it, please?";
switch (select ("Yes, I will:Sorry I can't now")) {
case 1:
@@ -134,58 +120,44 @@ payon,184,65,3 script Mr. Tanieh 866,{
case 2:
next;
- mes @npcname$;
+ mes .@npcname$;
mes "Oh, what am I going to do now...";
- close2;
- set @npcname$,"";
- end;
+ close;
}
} else if (GUNS_Q > 1 && GUNS_Q < 10000) {
- mes @npcname$;
+ mes .@npcname$;
mes "Oh, you've come back! Have you brought the items?";
next;
switch (select("Yes I did:No I forgot which items I had to bring")) {
case 1:
next;
if (countitem(949) < 3) {
- mes @npcname$;
+ mes .@npcname$;
mes "Sorry, you're missing a few Feathers";
- close2;
- set @npcname$,"";
- end;
+ close;
} else if (countitem(912) < 3) {
- mes @npcname$;
+ mes .@npcname$;
mes "Sorry, you're missing a few Zargons";
- close2;
- set @npcname$,"";
- end;
+ close;
} else if (countitem(1013) < 3) {
- mes @npcname$;
+ mes .@npcname$;
mes "Sorry, you're missing a few Rainbow Shells";
- close2;
- set @npcname$,"";
- end;
+ close;
} else if (countitem(GUNS_Q) < 1) {
- mes @npcname$;
+ mes .@npcname$;
mes "Sorry, you don't have the exact Trunk";
- close2;
- set @npcname$,"";
- end;
+ close;
} else if (countitem(511) < 3) {
- mes @npcname$;
+ mes .@npcname$;
mes "Sorry, you're missing a few Green Herbs";
- close2;
- set @npcname$,"";
- end;
+ close;
} else if (countitem(935) < 10) {
- mes @npcname$;
+ mes .@npcname$;
mes "Sorry, you're missing a few Shells";
- close2;
- set @npcname$,"";
- end;
+ close;
}
- mes @npcname$;
+ mes .@npcname$;
mes "GREAT! You brought them all! Thanks very much!";
delitem 949,3;
delitem 912,3;
@@ -194,16 +166,14 @@ payon,184,65,3 script Mr. Tanieh 866,{
delitem 935,10;
delitem 511,3;
next;
- mes @npcname$;
+ mes .@npcname$;
mes "Oh my, you've been of great help. I'll recommend you to the Einbroch Armory for your job change.";
- close2;
set GUNS_Q,10003;
- set @npcname$,"";
- end;
+ close;
case 2:
L_LIST:
next;
- mes @npcname$;
+ mes .@npcname$;
mes "Ok, I'll tell you again, so please take note!:";
mes "^33CCFF 3 Feathers^000000";
mes "^009933 3 Zargons^000000";
@@ -212,51 +182,39 @@ payon,184,65,3 script Mr. Tanieh 866,{
mes "^663300 1 "+getitemname(GUNS_Q)+"^000000";
mes "^FF6600 10 Shells^000000";
next;
- mes @npcname$;
+ mes .@npcname$;
mes "Hurry please, I am not sure if my wife will last any longer... oh dear..";
- close2;
- set @npcname$,"";
- end;
+ close;
}
} else if (GUNS_Q == 10003 || GUNS_Q == 10004) {
if (countitem(519) >= 1 && GUNS_Q == 10004) {
- mes @npcname$;
+ mes .@npcname$;
mes "THAT'S IT!! I was missing the Milk! Oh yes, thanks so much, will you give it to me?";
switch(select("Sure, take it:Sorry but I need it")) {
case 1:
next;
- mes @npcname$;
+ mes .@npcname$;
mes "Thanks so much! Go talk again with the Einbroch Armsmith. He'll change you. Thanks again and see you.";
delitem 519,1;
- close2;
set GUNS_Q,10005;
- set @npcname$,"";
- end;
+ close;
case 2:
next;
- mes @npcname$;
+ mes .@npcname$;
mes "Oh please, I need it so much, think about it please...";
- close2;
- set @npcname$,"";
- end;
+ close;
}
}
- mes @npcname$;
+ mes .@npcname$;
mes "*sigh* Now I have to wait again... Thanks for your help... but I believe there's something missing..";
- close2;
- set @npcname$,"";
set GUNS_Q,10004;
- end;
+ close;
} else if (Class == Job_Gunslinger || GUNS_Q == 10005) {
- mes @npcname$;
+ mes .@npcname$;
mes "Hi ^0000CC"+strcharinfo(0)+"^000000!, how have you been doing? My wife sends you regards and thanks for the ingredients...";
- close2;
- set @npcname$,"";
- end;
+ close;
}
- mes @npcname$;
+ mes .@npcname$;
mes "Hi son, how's life treating you? Nice day, isn't it?";
- close2;
- set @npcname$,"";
- end;
+ close;
} \ No newline at end of file