瀏覽代碼

* Various fixes to NPCs, from bugreports.
- Fixed condition error in old pharmacist. (bugreport:597)
- Fixed missing function in novice WoE (bugreport:1728)
- Fixed a minor errors in dancer quest (bugreport:1766)
- Corrected duration of wedding status (bugreport:1775)
- Fixed missing function in novice WoE (bugreport:1788)


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12925 54d463be-8e91-2dee-dedb-b68131a5f0ec

L0ne_W0lf 17 年之前
父節點
當前提交
963559a42c

+ 7 - 0
npc/Changelog.txt

@@ -1,5 +1,12 @@
 Date		Added
 ======
+2008/07/08
+	* Rev. 12925 Various fixes to NPCs, from bugreports. [L0ne_W0lf]
+	- Fixed condition error in old pharmacist. (bugreport:597)
+	- Fixed missing function in novice WoE (bugreport:1728)
+	- Fixed a minor errors in dancer quest (bugreport:1766)
+	- Corrected duration of wedding status (bugreport:1775)
+	- Fixed missing function in novice WoE (bugreport:1788)
 2008/07/04
 	* Fixed a small typo in Advanced Refiner. (bugreport: 1660) [Paradox924X]
 	* Added a missing "next;" in Bruspetti Quest. (bugreport: 1724) [Paradox924X]

+ 6 - 1
npc/events/nguild/nguild_ev_agit.txt

@@ -3,7 +3,7 @@
 //===== By: ==================================================
 //= kobra_k88
 //===== Current Version: =====================================
-//= 1.4
+//= 1.5
 //===== Compatible With: =====================================
 //= eAthena 0.1+; RO Episode 4+
 //===== Description: =========================================
@@ -12,6 +12,7 @@
 // Based off existing guild scripts.  Do not know if it is accurate.[kobra_k88]
 //= 1.3 Added code for abandoning captured castles on /breakguild [Lupus]
 //= 1.4 AGIT Functions added, treasure spawning added. [L0ne_W0lf]
+//= 1.5 Emperium should now properly respawn. [L0ne_W0lf]
 //============================================================
 
 
@@ -106,6 +107,7 @@ OnAgitStart:
 	end;
 OnAgitBreak:
 	callfunc "F_AgitBreak","nguild_alde","N01";
+	goto OnAgitEliminate;
 	end;
 OnGuildBreak:
 	callfunc "F_GuildBreak","nguild_alde","N01";
@@ -132,6 +134,7 @@ OnAgitStart:
 	end;
 OnAgitBreak:
 	callfunc "F_AgitBreak","nguild_gef","N02";
+	goto OnAgitEliminate;
 	end;
 OnGuildBreak:
 	callfunc "F_GuildBreak","nguild_gef","N02";
@@ -158,6 +161,7 @@ OnAgitStart:
 	end;
 OnAgitBreak:
 	callfunc "F_AgitBreak","nguild_pay","N03";
+	goto OnAgitEliminate;
 	end;
 OnGuildBreak:
 	callfunc "F_GuildBreak","nguild_pay","N03";
@@ -184,6 +188,7 @@ OnAgitStart:
 	end;
 OnAgitBreak:
 	callfunc "F_AgitBreak","nguild_prt","N04";
+	goto OnAgitEliminate;
 	end;
 OnGuildBreak:
 	callfunc "F_GuildBreak","nguild_prt","N04";

+ 3 - 2
npc/events/nguild/nguild_managers.txt

@@ -3,7 +3,7 @@
 //===== By: ==================================================
 //= kobra_k88
 //===== Current Version: =====================================
-//= 1.1
+//= 1.2
 //===== Compatible With: =====================================
 //= eAthena 0.1+; RO Episode 4+
 //===== Description: =========================================
@@ -19,10 +19,11 @@
 //= 1.0 Based off existing guild scripts.  Do not know if it is accurate.[kobra_k88]
 //= 1.1 Added modified guild manager function. [L0ne_W0lf]
 //= 	Removed guardian summoning.
+//= 1.2 Corrected function name. (bugreport:1728) [L0ne_W0lf]
 //============================================================
 
 //==============================================
-function	script	F_GldManagerN	{
+function	script	F_GldManager	{
 
 	set @GID, GetCastleData(getarg(1),1);
 	mes "[ "+getarg(0)+" ]";

+ 35 - 1
npc/events/nguild/nguild_treas.txt

@@ -3,7 +3,7 @@
 //===== By: ==================================================
 //= kobra_k88
 //===== Current Version: =====================================
-//= 1.2
+//= 1.3
 //===== Compatible With: =====================================
 //= eAthena 0.1+; RO Episode 4+
 //===== Description: =========================================
@@ -11,9 +11,43 @@
 //===== Additional Comments: =================================
 //= Based off existing guild scripts.  Do not know if it is accurate.[kobra_k88]
 //= 1.2 Official treasure spawn [Lupus]
+//= 1.3 Added F_GldTreas function. (bugreport:1788) [L0ne_W0lf]
 //============================================================
 
 
+//================================================
+// Treasure Spawning Function
+//================================================
+function	script	F_GldTreas	{
+	if(getarg(10) !=  1) {
+		setcastledata getarg(0),4,0;
+		setcastledata getarg(0),5,0;
+
+		// Why on earth are we killing old treasure chest spawns?
+		//killmonster getarg(0),"Treasure_"+getarg(1)+"::OnDied";
+
+		// Don't spawn treasures if Castle is empty, or Eco is greater than 100
+		if(GetCastleData(getarg(0),2) > 100 || GetCastleData(getarg(0),1) == 0) return;
+
+		// Only spawn one treasure chest for notice castles.
+		if (compare(getarg(0),"nguild"))
+			set getarg(2),1;
+		else
+			set getarg(2),GetCastleData(getarg(0),2)/5+4;
+
+		if (getarg(2) <= 0) return;
+
+		//sets the counter variable = to the box number amount
+		set getarg(3), getarg(2);
+	}
+	for (set .@i,1; .@i <= getarg(3) ; set .@i,.@i+1) {
+		// set treasure box ID
+		set getarg(4), getarg(5) + (.@i+1) % 2;
+		areamonster getarg(0),getarg(6),getarg(7),getarg(8),getarg(9),"Treasure Chest",getarg(4),1,"Treasure_"+getarg(1)+"::OnDied";
+	}
+	return;
+}
+
 //<=============================== Castle 1 =================================>\\
 
 // Treasure Spawn -----------------------

+ 4 - 2
npc/jobs/2-2/dancer.txt

@@ -4,7 +4,7 @@
 //= Kalen - Original jAthena
 //= Fredzilla - Converted, Lupus
 //===== Current Version: ===================================== 
-//= 3.4
+//= 3.5
 //===== Compatible With: ===================================== 
 //= eAthena SVN
 //===== Description: ========================================= 
@@ -16,6 +16,7 @@
 //= 3.2a Deleted unused variables. [Samuray22]
 //= 3.3 Updated waiting room. (Removes global var) [L0ne_W0lf]
 //= 3.4 Fixed bad variables, bugreport:1685 [Brainstorm]
+//= 3.5 Minor corrections to script. (bugreport:1766) [L0ne_W0lf]
 //============================================================
 
 comodo,180,153,4	script	Sonotora#1	90,{
@@ -293,7 +294,7 @@ job_duncer,43,93,4	script	Aile#da	724,{
 			break;
 		}
 		set .@size, (getarraysize(.@item)-1); 
-		for( set .@i,0 ; .@i < .@size && countitem(.@item[.@i]) >= .@count[.@i] ; set .@i,.@i+1 );
+		for( set .@i,0 ; .@i <= .@size && countitem(.@item[.@i]) >= .@count[.@i] ; set .@i,.@i+1 );
 		if(.@i == .@size && Zeny > 9999) {  
 			cutin "job_dancer_eir02",2;
 			mes "[Aile]";
@@ -478,6 +479,7 @@ job_duncer,95,93,4	script	Bijou#da	101,{
 			next;
 		}
 		switch(rand(1,3)) {
+		case 1:
 			mes "[Bijou]";
 			mes "1. The Dancer's dance, ^CD6889Lady Luck^000000,";
 			mes "increases which of the following?";

+ 5 - 3
npc/merchants/old_pharmacist.txt

@@ -3,7 +3,7 @@
 //===== By: ==================================================
 //= DZeroX
 //===== Current Version: =====================================
-//= 1.2
+//= 1.3
 //===== Compatible With: =====================================
 //= eAthena SVN Trunk
 //===== Description: =========================================
@@ -21,6 +21,7 @@
 //= 1.1a Removed .GATs [Lupus]
 //= 1.1b Fixed a bug in Orange Potion creating. Copy&Pasting = bad. [L0ne_W0lf]
 //= 1.2 Added checkweight, and input min/max values. [L0ne_W0lf]
+//= 1.3 Fixed minor condition check bug. (bugreport:597) [L0ne_W0lf]
 //============================================================
 
 alberta_in,16,28,4	script	Old Pharmacist	61,{
@@ -59,9 +60,10 @@ alberta_in,16,28,4	script	Old Pharmacist	61,{
 						if (countitem(507) < countitem(713)) {
 							set .@max,countitem(507);
 						}
-						if (countitem(508) < countitem(713)) {
+						else if (countitem(508) < countitem(713)) {
 							set .@max,countitem(508);
-						} else {
+						}
+						else {
 							set .@max,countitem(713);
 						}
 						if ((countitem(507) < 1) || (countitem(508) < 1) || (countitem(713) == 0)) {

+ 4 - 3
npc/other/marriage.txt

@@ -3,7 +3,7 @@
 //===== By: ================================================== 
 //= L0ne_W0lf
 //===== Current Version: ===================================== 
-//= 1.1
+//= 1.2
 //===== Compatible With: ===================================== 
 //= eAthena SVN
 //===== Description: ========================================= 
@@ -18,6 +18,7 @@
 //===== Additional Comments: ================================= 
 //= 1.0 First version. [L0ne_W0lf]
 //= 1.1 Fixed a missing ")" [L0ne_W0lf]
+//= 1.2 Corrected duration of Wedding status. [L0ne_W0lf]
 //============================================================
 
 prt_church,97,100,4	script	Wedding Staff#w	71,{
@@ -703,11 +704,11 @@ prt_church,100,128,4	script	Bishop#w	60,{
 										//Call Wedding effect
 										wedding;
 										//Give ring to Bride, and change to wedding sprite.
-										sc_start SC_Wedding,3600000000,1;
+										sc_start SC_Wedding,3600000,1;
 										getitem 2635,1; //Bride_Ring
 										//Give ring to Groom, and change to wedding sprite.
 										attachrid(getcharid(3,$wed_groom$));
-										sc_start SC_Wedding,3600000000,1;
+										sc_start SC_Wedding,3600000,1;
 										getitem 2634,1; //Bridegroom_Ring
 										detachrid;
 										//Switch Script progression back to Bride