浏览代码

* Rewrote the WoE 1.0 from the ground up nearly.
- Renamed the WoE Time setting NPC to "agit_controller.txt"
- System is set up to mimic Aegis, some parts are still lacking.
- Documentation on the new system is forth-coming.
- Updated Novice WoE scripts to keep them from breaking.

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

L0ne_W0lf 17 年之前
父节点
当前提交
070b507516
共有 63 个文件被更改,包括 4973 次插入4624 次删除
  1. 6 0
      npc/Changelog.txt
  2. 30 1
      npc/events/nguild/nguild_dunsw.txt
  3. 93 1
      npc/events/nguild/nguild_ev_agit.txt
  4. 46 1
      npc/events/nguild/nguild_flags.txt
  5. 19 1
      npc/events/nguild/nguild_kafras.txt
  6. 83 0
      npc/guild/agit_controller.txt
  7. 1332 0
      npc/guild/agit_template.txt
  8. 0 51
      npc/guild/aldeg/aldeg_dunsw.txt
  9. 0 159
      npc/guild/aldeg/aldeg_ev_agit.txt
  10. 0 276
      npc/guild/aldeg/aldeg_flags.txt
  11. 0 115
      npc/guild/aldeg/aldeg_guardians.txt
  12. 0 62
      npc/guild/aldeg/aldeg_kafras.txt
  13. 0 103
      npc/guild/aldeg/aldeg_managers.txt
  14. 0 173
      npc/guild/aldeg/aldeg_treas.txt
  15. 174 0
      npc/guild/aldeg_cas01.txt
  16. 170 0
      npc/guild/aldeg_cas02.txt
  17. 172 0
      npc/guild/aldeg_cas03.txt
  18. 172 0
      npc/guild/aldeg_cas04.txt
  19. 170 0
      npc/guild/aldeg_cas05.txt
  20. 0 131
      npc/guild/ev_agit_event.txt
  21. 0 49
      npc/guild/gefg/gefg_dunsw.txt
  22. 0 159
      npc/guild/gefg/gefg_ev_agit.txt
  23. 0 231
      npc/guild/gefg/gefg_flags.txt
  24. 0 114
      npc/guild/gefg/gefg_guardians.txt
  25. 0 67
      npc/guild/gefg/gefg_kafras.txt
  26. 0 96
      npc/guild/gefg/gefg_managers.txt
  27. 0 170
      npc/guild/gefg/gefg_treas.txt
  28. 163 0
      npc/guild/gefg_cas01.txt
  29. 164 0
      npc/guild/gefg_cas02.txt
  30. 167 0
      npc/guild/gefg_cas03.txt
  31. 163 0
      npc/guild/gefg_cas04.txt
  32. 164 0
      npc/guild/gefg_cas05.txt
  33. 0 54
      npc/guild/gldfunc_dunsw.txt
  34. 0 190
      npc/guild/gldfunc_ev_agit.txt
  35. 0 72
      npc/guild/gldfunc_flag.txt
  36. 0 40
      npc/guild/gldfunc_kafra.txt
  37. 0 387
      npc/guild/gldfunc_manager.txt
  38. 0 106
      npc/guild/gldfunc_treasure.txt
  39. 0 49
      npc/guild/payg/payg_dunsw.txt
  40. 0 159
      npc/guild/payg/payg_ev_agit.txt
  41. 0 236
      npc/guild/payg/payg_flags.txt
  42. 0 115
      npc/guild/payg/payg_guardians.txt
  43. 0 66
      npc/guild/payg/payg_kafras.txt
  44. 0 96
      npc/guild/payg/payg_managers.txt
  45. 0 162
      npc/guild/payg/payg_treas.txt
  46. 165 0
      npc/guild/payg_cas01.txt
  47. 165 0
      npc/guild/payg_cas02.txt
  48. 165 0
      npc/guild/payg_cas03.txt
  49. 165 0
      npc/guild/payg_cas04.txt
  50. 165 0
      npc/guild/payg_cas05.txt
  51. 0 49
      npc/guild/prtg/prtg_dunsw.txt
  52. 0 159
      npc/guild/prtg/prtg_ev_agit.txt
  53. 0 248
      npc/guild/prtg/prtg_flags.txt
  54. 0 111
      npc/guild/prtg/prtg_guardians.txt
  55. 0 67
      npc/guild/prtg/prtg_kafras.txt
  56. 0 96
      npc/guild/prtg/prtg_managers.txt
  57. 0 166
      npc/guild/prtg/prtg_treas.txt
  58. 167 0
      npc/guild/prtg_cas01.txt
  59. 169 0
      npc/guild/prtg_cas02.txt
  60. 168 0
      npc/guild/prtg_cas03.txt
  61. 167 0
      npc/guild/prtg_cas04.txt
  62. 165 0
      npc/guild/prtg_cas05.txt
  63. 24 36
      npc/scripts_guild.conf

+ 6 - 0
npc/Changelog.txt

@@ -1,5 +1,11 @@
 Date		Added
 ======
+2008/04/26
+	* Rev. 12673 Rewrote the WoE 1.0 from the ground up nearly. [L0ne_W0lf]
+	- Renamed the WoE Time setting NPC to "agit_controller.txt"
+	- System is set up to mimic Aegis, some parts are still lacking.
+	- Documentation on the new system is forth-coming.
+	- Updated Novice WoE scripts to keep them from breaking.
 2008/04/26
 	* Rev. 12654 Fixed escape problem in jobs/novice/novice.txt [Toms]
 2008/04/24

+ 30 - 1
npc/events/nguild/nguild_dunsw.txt

@@ -3,16 +3,45 @@
 //===== By: ==================================================
 //= kobra_k88
 //===== Current Version: =====================================
-//= 1.0
+//= 1.1
 //===== Compatible With: =====================================
 //= eAthena 0.1+; RO Episode 4+
 //===== Description: =========================================
 //= Switch that warps guild members to the guild dungeon
 //===== Additional Comments: =================================
 //= Based off existing guild scripts.  Do not know if it is accurate.[kobra_k88]
+//= 1.1 Guild Dungeon Switch Fucntion added. [L0ne_W0lf]
 //============================================================
 
 
+//==================================================
+function	script	F_GldDunSw	{
+	set .@GID, GetCastleData(getarg(0),1);
+	if (.@GID == 0) {
+		mes "[ Echoing Voice ]";
+		mes " ' The one who can overcome an ordeal and show true bravery... will find the way... ' ";
+		close;
+	}
+	else {
+		mes "[ Echoing Voice ]";
+		mes " ' Only the one who can show true bravery can take this test. '";
+		next;
+		mes " ";
+		mes "There's a small lever. Will you pull it?";
+		next;
+
+		if (select("Pull.:Do not.") == 1) {
+			if (getcharid(2) == .@GID) {
+				warp "gld_dun"+getarg(1),getarg(2),getarg(3);
+				end;
+			}
+			mes " ";
+			mes " Nothing happened.";
+		}
+		return;
+	}
+}
+
 // Castle 1 ===============================================
 nguild_alde,212,181,0	script	Switch#DunN01	111,{
 	callfunc "F_GldDunSw","nguild_alde","02",32,122;

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

@@ -3,7 +3,7 @@
 //===== By: ==================================================
 //= kobra_k88
 //===== Current Version: =====================================
-//= 1.3
+//= 1.4
 //===== Compatible With: =====================================
 //= eAthena 0.1+; RO Episode 4+
 //===== Description: =========================================
@@ -11,9 +11,88 @@
 //===== Additional Comments: =================================
 // 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]
 //============================================================
 
 
+// Function for OnAgitStart =========================================
+function	script	F_AgitStart	{
+	set .@map$, getarg(0);
+	set .@castle$, getarg(1);
+	set .@empx, getarg(2);
+	set .@empy, getarg(3);
+
+	MapRespawnGuildID .@map$,GetCastleData(.@map$,1),2;
+	monster .@map$,.@empx,.@empy,"Emperium",1288,1,"Agit_"+.@castle$+"::OnAgitBreak";
+	GvgOn .@map$;
+	if (GetCastleData(.@map$,1) != 0) return;
+	end;
+}
+
+// Function for OnGuildBreak ======================================
+function	script	F_GuildBreak	{
+	set .@map$, getarg(0);
+	set .@castle$, getarg(1);
+
+	killmonsterall .@map$;
+
+	Announce "Guild Base [" + GetCastleName(.@map$) + "] has been abandoned.",0;
+	disablenpc "Kafra Staff#"+.@castle$;
+
+	SetCastleData .@map$,0,0;
+	return;
+}
+
+// Function for OnAgitBreak ======================================
+function	script	F_AgitBreak	{
+	set .@map$, getarg(0);
+	set .@castle$, getarg(1);
+
+	set .@GID,getcharid(2);
+	if (.@GID <= 0) return;
+
+	set .@Economy,GetCastleData(.@map$,2) - 5;
+	if (.@Economy < 0) set .@Economy, 0;
+	SetCastleData .@map$, 2, .@Economy;
+
+	set .@Defence,GetCastleData(.@map$,3) - 5;
+	if (.@Defence < 0) set .@Defence, 0;
+	SetCastleData .@map$, 3, .@Defence;
+
+	SetCastleData .@map$,1, .@GID;
+	MapAnnounce .@map$,"The emperium has been destroyed.",bc_map,0x00CCFF;
+	Announce "The [" + GetCastleName(.@map$) + "] castle has been conquered by the [" + GetGuildName(.@GID) + "] guild.",bc_all;
+	GetCastleData .@map$,0,"::OnRecvCastle"+.@castle$;
+
+	disablenpc "Kafra Staff#"+.@castle$;
+
+	// remove investment data and kafra
+	for( set .@i, 4; .@i <= 9; set .@i, .@i+1 )
+		SetCastleData .@map$, .@i, 0;
+
+	// if the new guild doesn't have Guardian Research, erase guardians
+	if( getgdskilllv(.@GID,10002) == 0 )
+		for( set .@i, 10; .@i <= 17; set .@i, .@i+1 )
+			SetCastleData .@map$, .@i, 0;
+
+	return;
+}
+
+
+// Function for OnAgitEnd ======================================
+function	script	F_AgitEnd	{
+	set .@map$, getarg(0);
+	set .@castle$, getarg(1);
+
+	GvgOff .@map$;
+	// Disable the following if statment to keep empty
+	// castles from being aquired after after WoE ends.
+	if (GetCastleData(.@map$,1) == 0) return;
+	MapRespawnGuildID .@map$,GetCastleData(.@map$,1),4;
+	KillMonster .@map$,"Agit_"+.@castle$+"::OnAgitBreak";
+	end;
+}
+
 // Castle 1 ================================================================
 nguild_alde,0,0,0	script	Agit_N01	-1,{
 OnInterIfInitOnce:
@@ -117,3 +196,16 @@ OnAgitEnd:
 	callfunc "F_AgitEnd","nguild_prt","N04";
 	end;
 }
+
+// Treasure Spawn Time
+//========================================
+-	script	TreasSpawn	-1,{
+	end;
+
+OnClock0005:
+	callfunc "F_GldTreas","nguild_alde","N01",$boxNumN01,$@bxN01,$@boxIdN01,1324,114,218,123,227,0;
+	callfunc "F_GldTreas","nguild_gef","N02",$boxNumN02,$@bxN02,$@boxIdN02,1334,150,108,158,114,0;
+	callfunc "F_GldTreas","nguild_pay","N03",$boxNumN03,$@bxN03,$@boxIdN03,1344,286,4,295,13,0;
+	callfunc "F_GldTreas","nguild_prt","N04",$boxNumN04,$@bxN04,$@boxIdN04,1354,6,204,15,213,0;
+	end;
+}

+ 46 - 1
npc/events/nguild/nguild_flags.txt

@@ -3,7 +3,7 @@
 //===== By: ==================================================
 //= kobra_k88
 //===== Current Version: =====================================
-//= 1.2
+//= 1.3
 //===== Compatible With: =====================================
 //= eAthena 0.1+; RO Episode 4+
 //===== Description: =========================================
@@ -12,8 +12,53 @@
 // Based off existing guild scripts.  Do not know if it is accurate.[kobra_k88]
 // 1.1 Inner Flags don't teleport you to your HQ anymore [Lupus]
 // 1.2 updated flags to use the new arguments. [L0ne__W0lf]
+// 1.3 Guild flag function added. [L0ne_W0lf]
 //============================================================
 
+/// Flag Function
+//============================================================
+function	script	F_Flags	{
+	set .@GID, GetCastleData(getarg(1),1);
+	if (getarg(5) == 0) return;
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+		return;
+	}
+	else {
+		if (getcharid(2) == .@GID && getarg(4) == 1) {
+			mes "Brave ones...";
+			mes "Do you wish to return to your honorable place?";
+			next;
+			if (select("Return to the guild castle.:Quit.") == 1) {
+				if (getcharid(2) == GetCastleData(getarg(1),1))
+					warp getarg(1),getarg(2),getarg(3);
+			}
+			return;
+		}
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+		return;
+	}
+}
 
 //============================================================================//
 // 			Castle 1

+ 19 - 1
npc/events/nguild/nguild_kafras.txt

@@ -3,7 +3,7 @@
 //===== By: ==================================================
 //= kobra_k88
 //===== Current Version: =====================================
-//= 1.1
+//= 1.2
 //===== Compatible With: =====================================
 //= eAthena 0.1+; RO Episode 5+
 //===== Description: =========================================
@@ -12,9 +12,27 @@
 //===== Additional Comments: =================================
 //= Based off existing guild scripts.  Do not know if it is accurate.[kobra_k88]
 //= 1.1 All N Guild Kafras teleport to Prontera only! [Lupus]
+//= 1.2 Added Kafra function. [L0ne_W0lf]
 //============================================================
 
 
+function	script	F_GKafra	{
+	cutin "kafra_01",2;
+	set @GID, GetCastleData(getarg(0),1);
+	if (getcharid(2) == @GID && getgdskilllv(@GID,10001)) goto L_StartG;
+
+	mes "[Kafra Service]";
+	mes "I am contracted to provide service only for the ^ff0000" + GetGuildName(@GID) + "^000000 Guild. Please use another Kafra Corporation staff member around here. I am Sorry for your inconvenience.";
+	cutin "",255;
+	close;
+L_StartG:
+	set @wrpP[0], 200;
+	set @wrpD$[0], getarg(1);
+	setarray @wrpC$[0], @wrpD$[0]+" ^880000"+@wrpP[0]+"^000000 z", "Cancel", "", "", "","";
+	callfunc "F_Kafra",2,0,0,0,800;
+	end;
+}
+
 // Castle 1 ===============================================
 nguild_alde,218,170,0	script	Kafra Service#N01	117,{
 	callfunc "F_GKafra", "nguild_alde", "Prontera";

+ 83 - 0
npc/guild/agit_controller.txt

@@ -0,0 +1,83 @@
+//===== eAthena Script =======================================
+//= War of Emperium - WoE Auto-Start
+//===== By: ==================================================
+//= kalen (1.0)
+//= 1.1 by Akaru and ho|yAnge|
+//===== Current Version: =====================================
+//= 1.9
+//===== Compatible With: =====================================
+//= eAthena SVN; RO Episode 4+
+//===== Description: =========================================
+//= Auto Start for War of Emperium
+//=============================================
+//= gettime(3): Gets hour (24 hour time)
+//= gettime(4): Gets day of week 1=Monday, 2=Tuesday,
+//= 3=Wednesday, 4=Thursday, etc.
+//===== Additional Comments: =================================
+//= v1.1a changed OnInit to OnAgitInit.[kobra_k88]
+//= v1.2 added gettime checks. removed $AgitStarted var.[kobra_k88]
+//= v1.3 Moved treasure spawn time here.[kobra_k88]
+//= v1.3a Implemented Shadowlady's idea to allow for different
+//= start/stop times on different days.[kobra_k88]
+//= 1.4 Fixed treasure chests spawn! We had to unroll some loops
+//= 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]
+//= 1.7 Commented out the WoE start and end announces. [L0ne_W0lf]
+//= 1.8 Castle owners displayed when WoE starts and finished. [L0ne_W0lf]
+//= 1.8a Will now report unoccupied castles at start/end. [L0ne_W0lf]
+//= 1.8b Whoops. Fixed a mistake :D [L0ne_W0lf]
+//= 1.9 Rearranged the time-checks so they no longer use goto. [L0ne_W0lf]
+//=	Removed treasure spawning function calls. (No longer needed)
+//============================================================
+//| To know how to set up WoE times, go to doc\woe_time_explanation.txt
+// WoE Start/Stop times
+//======================================
+-	script	Agit_Event	-1,{
+	end;
+
+OnClock2100:	//start time for Tues(2), Thurs(4)
+OnClock2300:	//end time for Tues(2), Thurs(4)
+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) ||
+	   (gettime(4)==4) && (gettime(3)>=21 && gettime(3)<23) ||
+	   (gettime(4)==6) && (gettime(3)>=16 && gettime(3)<18)) {
+		if (!agitcheck()) {
+			AgitStart;
+			callsub S_DisplayOwners;
+		}
+		end;
+	}
+
+	// end time checks
+	if ((gettime(4)==2) && (gettime(3)==23) ||
+	    (gettime(4)==4) && (gettime(3)==23) ||
+	    (gettime(4)==6) && (gettime(3)==18)) { 
+		if (agitcheck()) {
+			AgitEnd;
+			callsub S_DisplayOwners;
+		}
+		end;
+	}
+	end;
+
+S_DisplayOwners:
+	setarray .@maps$[0],"aldeg_cas01","aldeg_cas02","aldeg_cas03","aldeg_cas04","aldeg_cas05";
+	setarray .@maps$[5],"gefg_cas01","gefg_cas02","gefg_cas03","gefg_cas04","gefg_cas05";
+	setarray .@maps$[10],"payg_cas01","payg_cas02","payg_cas03","payg_cas04","payg_cas05";
+	setarray .@maps$[15],"prtg_cas01","prtg_cas02","prtg_cas03","prtg_cas04","prtg_cas05";
+	for( set .@i, 0; .@i <= 19; set .@i, .@i+1 ) {
+		if (GetCastleData(.@maps$[.@i],1)) {
+			Announce "The [" + GetCastleName(.@maps$[.@i]) + "] castle has been conquered by the [" + GetGuildName(GetCastleData(.@maps$[.@i],1)) + "] guild.",bc_all;
+		}
+		else {
+			Announce "The [" + GetCastleName(.@maps$[.@i]) + "] castle is currently unoccupied.",bc_all;
+		}		
+	}
+	end;
+}

+ 1332 - 0
npc/guild/agit_template.txt

@@ -0,0 +1,1332 @@
+//===== eAthena Script =======================================
+//= War of Emperium Guild Template File
+//===== By: ==================================================
+//= L0ne_W0lf
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= [ Aegis Conversion]
+//= ----------------------------------------------------------
+//= - THIS FILE IS REQUIRED FOR GUILD CASTLES TO FUNCTION.
+//= ----------------------------------------------------------
+//= - Enables AGIT Manager inside Guild Strongholds.
+//=   Visible Name required: Agit
+//=   Manages the various functions used in and out of WoE.
+//=
+//= - Enables Stewards inside Guild Strongholds which let's
+//=   the guild master invest in Defense and Economy, and
+//=   to summon guardians, a Kafra, and enter master's room.
+//=
+//= - Guardian Spawning Template
+//=   Visible Name required: Guardian
+//=   Spawn guardians when guild castle data is recieved.
+//=
+//= - Enables Kafra Services inside Guild Strongholds.
+//=   Visible Name required: Kafra Staff
+//=   Storage, Guild Storage, Teleport Service, Cart rental.
+//=
+//= - Treasure Room Protection and Chest spawning.
+//=   Chests will NOT be saved anymore in the event of crashes.
+//=   Treasures will NOT spawn on a location that already has
+//=   treasure chest spawned.
+//===== Additional Comments: =================================
+//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
+//============================================================
+
+// AGIT Manager Template
+//============================================================
+-	script	Gld_Agit_Manager::Gld_Agit_Manager	-1,{
+	end;
+
+// Load (or reload) specific information for a castle.
+OnInterIfInitOnce:
+	if (strnpcinfo(2) == "aldeg_cas01") { GetCastleData "aldeg_cas01",0,strnpcinfo(0)+"::OnRecvCastle"; }
+	else if (strnpcinfo(2) == "aldeg_cas02") { GetCastleData "aldeg_cas02",0,strnpcinfo(0)+"::OnRecvCastle"; }
+	else if (strnpcinfo(2) == "aldeg_cas03") { GetCastleData "aldeg_cas03",0,strnpcinfo(0)+"::OnRecvCastle"; }
+	else if (strnpcinfo(2) == "aldeg_cas04") { GetCastleData "aldeg_cas04",0,strnpcinfo(0)+"::OnRecvCastle"; }
+	else if (strnpcinfo(2) == "aldeg_cas05") { GetCastleData "aldeg_cas05",0,strnpcinfo(0)+"::OnRecvCastle"; }
+	else if (strnpcinfo(2) == "gefg_cas01") { GetCastleData "gefg_cas01",0,strnpcinfo(0)+"::OnRecvCastle"; }
+	else if (strnpcinfo(2) == "gefg_cas02") { GetCastleData "gefg_cas02",0,strnpcinfo(0)+"::OnRecvCastle"; }
+	else if (strnpcinfo(2) == "gefg_cas03") { GetCastleData "gefg_cas03",0,strnpcinfo(0)+"::OnRecvCastle"; }
+	else if (strnpcinfo(2) == "gefg_cas04") { GetCastleData "gefg_cas04",0,strnpcinfo(0)+"::OnRecvCastle"; }
+	else if (strnpcinfo(2) == "gefg_cas05") { GetCastleData "gefg_cas05",0,strnpcinfo(0)+"::OnRecvCastle"; }
+	else if (strnpcinfo(2) == "payg_cas01") { GetCastleData "payg_cas01",0,strnpcinfo(0)+"::OnRecvCastle"; }
+	else if (strnpcinfo(2) == "payg_cas02") { GetCastleData "payg_cas02",0,strnpcinfo(0)+"::OnRecvCastle"; }
+	else if (strnpcinfo(2) == "payg_cas03") { GetCastleData "payg_cas03",0,strnpcinfo(0)+"::OnRecvCastle"; }
+	else if (strnpcinfo(2) == "payg_cas04") { GetCastleData "payg_cas04",0,strnpcinfo(0)+"::OnRecvCastle"; }
+	else if (strnpcinfo(2) == "payg_cas05") { GetCastleData "payg_cas05",0,strnpcinfo(0)+"::OnRecvCastle"; }
+	else if (strnpcinfo(2) == "prtg_cas01") { GetCastleData "prtg_cas01",0,strnpcinfo(0)+"::OnRecvCastle"; }
+	else if (strnpcinfo(2) == "prtg_cas02") { GetCastleData "prtg_cas02",0,strnpcinfo(0)+"::OnRecvCastle"; }
+	else if (strnpcinfo(2) == "prtg_cas03") { GetCastleData "prtg_cas03",0,strnpcinfo(0)+"::OnRecvCastle"; }
+	else if (strnpcinfo(2) == "prtg_cas04") { GetCastleData "prtg_cas04",0,strnpcinfo(0)+"::OnRecvCastle"; }
+	else if (strnpcinfo(2) == "prtg_cas05") { GetCastleData "prtg_cas05",0,strnpcinfo(0)+"::OnRecvCastle"; }
+	// Add custom Guild Castles here.
+	else {
+		end;
+	}
+	end;
+
+// War of Emperium has started.
+OnAgitStart:
+	if (strnpcinfo(0) == "Gld_Agit_Manager") end;
+	MapRespawnGuildID strnpcinfo(2),GetCastleData(strnpcinfo(2),1),2;
+	GvgOn strnpcinfo(2);
+
+// Spawn (fall through), or respawn the Emperium once it has been broken.
+OnStartArena:
+	// OnAgitStart will fall through and spawn the Emperium.
+	if (strnpcinfo(2) == "aldeg_cas01") { setarray .@emproom[0],216,23; }
+	else if (strnpcinfo(2) == "aldeg_cas02") { setarray .@emproom[0],213,23; }
+	else if (strnpcinfo(2) == "aldeg_cas03") { setarray .@emproom[0],205,31; }
+	else if (strnpcinfo(2) == "aldeg_cas04") { setarray .@emproom[0],36,217; }
+	else if (strnpcinfo(2) == "aldeg_cas05") { setarray .@emproom[0],27,101; }
+	else if (strnpcinfo(2) == "gefg_cas01") { setarray .@emproom[0],197,181; }
+	else if (strnpcinfo(2) == "gefg_cas02") { setarray .@emproom[0],176,178; }
+	else if (strnpcinfo(2) == "gefg_cas03") { setarray .@emproom[0],244,166; }
+	else if (strnpcinfo(2) == "gefg_cas04") { setarray .@emproom[0],174,177; }
+	else if (strnpcinfo(2) == "gefg_cas05") { setarray .@emproom[0],194,184; }
+	else if (strnpcinfo(2) == "payg_cas01") { setarray .@emproom[0],138,138; }
+	else if (strnpcinfo(2) == "payg_cas02") { setarray .@emproom[0],38,25; }
+	else if (strnpcinfo(2) == "payg_cas03") { setarray .@emproom[0],268,264; }
+	else if (strnpcinfo(2) == "payg_cas04") { setarray .@emproom[0],270,28; }
+	else if (strnpcinfo(2) == "payg_cas05") { setarray .@emproom[0],30,30; }
+	else if (strnpcinfo(2) == "prtg_cas01") { setarray .@emproom[0],197,197; }
+	else if (strnpcinfo(2) == "prtg_cas02") { setarray .@emproom[0],157,174; }
+	else if (strnpcinfo(2) == "prtg_cas03") { setarray .@emproom[0],16,220; }
+	else if (strnpcinfo(2) == "prtg_cas04") { setarray .@emproom[0],291,14; }
+	else if (strnpcinfo(2) == "prtg_cas05") { setarray .@emproom[0],266,266; }
+	// Add custom Guild Castles here.
+	else {
+		end;
+	}
+	if (!mobcount(strnpcinfo(2),"Agit#"+strnpcinfo(2)+"::OnAgitBreak")) {
+		monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Emperium",1288,1,"Agit#"+strnpcinfo(2)+"::OnAgitBreak";
+	}
+	end;
+
+// The Emperium has been broken.
+OnAgitBreak:
+	set .@GID,getcharid(2);
+	// Show and log error if an unguilded player breaks the Emperium. (Should NEVER happen)
+	if (.@GID <= 0) {
+		set .@notice$,"Character "+strcharinfo(0)+" ("+getcharid(0)+") broke the Emperium in Castle: "+strnpcinfo(2)+" while guildless. No data will be saved and Emperium respawned.";
+ 		logmes .@notice$; debugmes .@notice$;
+		donpcevent "Agit#"+strnpcinfo(2)+"::OnStartArena";
+		end;
+	}
+	// Adjust Economy Invest Level for Castle
+	set .@Economy,GetCastleData(strnpcinfo(2),2) - 5;
+	if (.@Economy < 0) set .@Economy, 0;
+	SetCastleData strnpcinfo(2), 2, .@Economy;
+	// Adjust Defense Invest Level for Castle
+	set .@Defence,GetCastleData(strnpcinfo(2),3) - 5;
+	if (.@Defence < 0) set .@Defence, 0;
+	SetCastleData strnpcinfo(2), 3, .@Defence;
+
+	// Set new Castle Occupant
+	SetCastleData strnpcinfo(2),1, .@GID;
+
+	// Announce that the Emperium is destroyed, and respawn all but new castle-occupants.
+	mapannounce strnpcinfo(2),"The emperium has been destroyed.",bc_map,"0x00CCFF";
+	MapRespawnGuildID strnpcinfo(2),.@GID,2;
+
+	// Refresh castle data, disable Kafra and reset Invest information.
+	GetCastleData strnpcinfo(2),0,strnpcinfo(0)+"::OnRecvCastle";
+	disablenpc "Kafra Staff#"+strnpcinfo(2);
+	for( set .@i, 4; .@i <= 9; set .@i, .@i+1 ) {
+		SetCastleData strnpcinfo(2), .@i, 0;
+	}
+	// Erase Guardian Database information if the new owners do not have Guardian Research.
+	if( getgdskilllv(.@GID,10002) == 0 ) {
+		for( set .@i, 10; .@i <= 17; set .@i, .@i+1 ) {
+			SetCastleData strnpcinfo(2), .@i, 0;
+		}
+	}
+	// Respawn the Emperium, and display new owners.
+	if (agitcheck()) {
+		sleep 500; // Slow down script execution slightly.
+		donpcevent "Agit#"+strnpcinfo(2)+"::OnStartArena";
+	}
+	sleep getbattleflag("gvg_eliminate_time");
+	announce "The [" + getcastlename(strnpcinfo(2)) + "] castle has been conquered by the [" + getguildName(.@GID) + "] guild.",bc_all;
+	end;
+
+// War of Emperium has ended.
+OnAgitEnd:
+	if (strnpcinfo(0) == "Gld_Agit_Manager") end;
+	GvgOff strnpcinfo(2);
+	if (GetCastleData(strnpcinfo(2),1)) {
+		KillMonster strnpcinfo(2),"Agit#"+strnpcinfo(2)+"::OnAgitBreak";
+	}
+	end;
+
+// Occupying Guild has been disbanded.
+OnGuildBreak:
+	if (strnpcinfo(0) == "Gld_Agit_Manager") end;
+	// Kill guardians, disable the Kafra, and set owner to 0.
+	killmonster strnpcinfo(2),"Guardian#"+strnpcinfo(2)+"::OnGuardianDied";
+	disablenpc "Kafra Staff#"+strnpcinfo(2);
+	SetCastleData strnpcinfo(2),0,0;
+	// Wait before refreshing guild information.
+	sleep getbattleflag("gvg_eliminate_time");
+	Announce "Guild Base [" + GetCastleName(strnpcinfo(2)) + "] has been abandoned.",0;
+	GetCastleData strnpcinfo(2),0,strnpcinfo(0)+"::OnRecvCastle";
+	end;
+
+OnRecvCastle:
+	RequestGuildInfo GetCastleData(strnpcinfo(2),1);
+
+	// Spawn Monsters if the castle is empty.
+	set .@GID, GetCastleData(strnpcinfo(2),1);
+	if (.@GID == 0) {
+		killmonsterall strnpcinfo(2);
+		if (compare(strnpcinfo(2),"aldeg")) {
+			// Normal Spawns
+			monster strnpcinfo(2),0,0,"Evil Druid",1117,10;
+			monster strnpcinfo(2),0,0,"Khalitzburg",1132,4;
+			monster strnpcinfo(2),0,0,"Abysmal Knight",1219,2;
+			monster strnpcinfo(2),0,0,"Executioner",1205,1;
+			monster strnpcinfo(2),0,0,"Penomena",1216,10;
+			monster strnpcinfo(2),0,0,"Alarm",1193,18;
+			monster strnpcinfo(2),0,0,"Clock",1269,9;
+			monster strnpcinfo(2),0,0,"Raydric Archer",1276,7;
+			monster strnpcinfo(2),0,0,"Wanderer",1208,3;
+			monster strnpcinfo(2),0,0,"Alice",1275,1;
+			monster strnpcinfo(2),0,0,"Bloody Knight",1268,1;
+			monster strnpcinfo(2),0,0,"Dark Lord",1272,1;
+			// Set Emperium room spawn coordinates and spawn monsters.
+			if (strnpcinfo(2) == "aldeg_cas01") { setarray .@emproom[0],216,23; }
+			else if (strnpcinfo(2) == "aldeg_cas02") { setarray .@emproom[0],213,23; }
+			else if (strnpcinfo(2) == "aldeg_cas03") { setarray .@emproom[0],205,31; }
+			else if (strnpcinfo(2) == "aldeg_cas04") { setarray .@emproom[0],36,217; }
+			else if (strnpcinfo(2) == "aldeg_cas05") { setarray .@emproom[0],27,101; }
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Dark Lord",1272,1;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Tower Keeper",1270,4;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Bloody Knight",1268,1;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Abysmal Knight",1219,1;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Raydric Archer",1276,5;
+		}
+		else if (compare(strnpcinfo(2),"gefg")) {
+			// Normal Spawns
+			monster strnpcinfo(2),0,0,"Evil Druid",1117,10;
+			monster strnpcinfo(2),0,0,"Wind Ghost",1263,11;
+			monster strnpcinfo(2),0,0,"Bathory",1102,10;
+			monster strnpcinfo(2),0,0,"Jakk",1130,10;
+			monster strnpcinfo(2),0,0,"Marduk",1140,20;
+			monster strnpcinfo(2),0,0,"Raydric",1163,9;
+			monster strnpcinfo(2),0,0,"Alice",1275,1;
+			monster strnpcinfo(2),0,0,"Abysmal Knight",1219,1;
+			monster strnpcinfo(2),0,0,"Moonlight Flower",1150,1;
+			monster strnpcinfo(2),0,0,"Phreeoni",1159,1;
+			// Set Emperium room spawn coordinates and spawn monsters.
+			if (strnpcinfo(2) == "gefg_cas01") { setarray .@emproom[0],197,181; }
+			else if (strnpcinfo(2) == "gefg_cas02") { setarray .@emproom[0],176,178; }
+			else if (strnpcinfo(2) == "gefg_cas03") { setarray .@emproom[0],244,166; }
+			else if (strnpcinfo(2) == "gefg_cas04") { setarray .@emproom[0],174,177; }
+			else if (strnpcinfo(2) == "gefg_cas05") { setarray .@emproom[0],194,184; }
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Mysteltainn",1203,1;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Orc Hero",1087,1;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"High Orc",1213,10;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Orc Archer",1189,10;
+		}
+		else if (compare(strnpcinfo(2),"payg")) {
+			// Normal Spawns
+			monster strnpcinfo(2),0,0,"Greatest General",1277,9;
+			monster strnpcinfo(2),0,0,"Wanderer",1208,10;
+			monster strnpcinfo(2),0,0,"Mutant Dragonoid",1262,5;
+			monster strnpcinfo(2),0,0,"Bathory",1102,5;
+			monster strnpcinfo(2),0,0,"Moonlight Flower",1150,1;
+			monster strnpcinfo(2),0,0,"Eddga",1115,1;
+			monster strnpcinfo(2),0,0,"Horong",1129,11;
+			monster strnpcinfo(2),0,0,"Raydric Archer",1276,5;
+			monster strnpcinfo(2),0,0,"Kobold Archer",1282,4;
+			monster strnpcinfo(2),0,0,"Gargoyle",1253,5;
+			// Set Emperium room spawn coordinates and spawn monsters.
+			if (strnpcinfo(2) == "payg_cas01") { setarray .@emproom[0],138,138; }
+			else if (strnpcinfo(2) == "payg_cas02") { setarray .@emproom[0],38,25; }
+			else if (strnpcinfo(2) == "payg_cas03") { setarray .@emproom[0],268,264; }
+			else if (strnpcinfo(2) == "payg_cas04") { setarray .@emproom[0],270,28; }
+			else if (strnpcinfo(2) == "payg_cas05") { setarray .@emproom[0],30,30; }
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Moonlight Flower",1150,1;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Eddga",1115,1;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Wanderer",1208,6;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Raydric Archer",1276,5;
+		}
+		else if (compare(strnpcinfo(2),"prtg")) {
+			// Normal Spawns
+			monster strnpcinfo(2),0,0,"Raydric",1163,1;
+			monster strnpcinfo(2),0,0,"Khalitzburg",1132,10;
+			monster strnpcinfo(2),0,0,"Abysmal Knight",1219,5;
+			monster strnpcinfo(2),0,0,"Bloody Knight",1268,5;
+			monster strnpcinfo(2),0,0,"Stormy Knight",1251,1;
+			monster strnpcinfo(2),0,0,"Hatii",1252,1;
+			monster strnpcinfo(2),0,0,"Raydric Archer",1276,5;
+			monster strnpcinfo(2),0,0,"Gryphon",1259,2;
+			monster strnpcinfo(2),0,0,"Chimera",1283,3;
+			monster strnpcinfo(2),0,0,"Alice",1275,1;
+			monster strnpcinfo(2),0,0,"Zealotus",1200,1;
+			// Set Emperium room spawn coordinates and spawn monsters.
+			if (strnpcinfo(2) == "prtg_cas01") { setarray .@emproom[0],197,197; }
+			else if (strnpcinfo(2) == "prtg_cas02") { setarray .@emproom[0],157,174; }
+			else if (strnpcinfo(2) == "prtg_cas03") { setarray .@emproom[0],16,220; }
+			else if (strnpcinfo(2) == "prtg_cas04") { setarray .@emproom[0],291,14; }
+			else if (strnpcinfo(2) == "prtg_cas05") { setarray .@emproom[0],266,266; }
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Guardian Knight",1268,1;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Guardian Master",1251,1;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Hatii",1252,1;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Guardian Knight",1219,1;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Raydric Archer",1276,5;
+		}
+		// Add custom Guild Castles here.
+		else {
+			end;
+		}
+		donpcevent "Agit#"+strnpcinfo(2)+"::OnStartArena";
+		// Disable Kafra Staff...
+		disablenpc "Kafra Staff#"+strnpcinfo(2);
+		end;
+	}
+	else {
+		// Otherwise place the guild emblem on flags.
+		if (strnpcinfo(2) == "aldeg_cas01") { donpcevent "::OnRecvCastleA01"; }
+		else if (strnpcinfo(2) == "aldeg_cas02") { donpcevent "::OnRecvCastleA02"; }
+		else if (strnpcinfo(2) == "aldeg_cas03") { donpcevent "::OnRecvCastleA03"; }
+		else if (strnpcinfo(2) == "aldeg_cas04") { donpcevent "::OnRecvCastleA04"; }
+		else if (strnpcinfo(2) == "aldeg_cas05") { donpcevent "::OnRecvCastleA05"; }
+		else if (strnpcinfo(2) == "gefg_cas01") { donpcevent "::OnRecvCastleG01"; }
+		else if (strnpcinfo(2) == "gefg_cas02") { donpcevent "::OnRecvCastleG02"; }
+		else if (strnpcinfo(2) == "gefg_cas03") { donpcevent "::OnRecvCastleG03"; }
+		else if (strnpcinfo(2) == "gefg_cas04") { donpcevent "::OnRecvCastleG04"; }
+		else if (strnpcinfo(2) == "gefg_cas05") { donpcevent "::OnRecvCastleG05"; }
+		else if (strnpcinfo(2) == "payg_cas01") { donpcevent "::OnRecvCastlePt01"; }
+		else if (strnpcinfo(2) == "payg_cas02") { donpcevent "::OnRecvCastlePy02"; }
+		else if (strnpcinfo(2) == "payg_cas03") { donpcevent "::OnRecvCastlePy03"; }
+		else if (strnpcinfo(2) == "payg_cas04") { donpcevent "::OnRecvCastlePy04"; }
+		else if (strnpcinfo(2) == "payg_cas05") { donpcevent "::OnRecvCastlePy05"; }
+		else if (strnpcinfo(2) == "prtg_cas01") { donpcevent "::OnRecvCastlePt01"; }
+		else if (strnpcinfo(2) == "prtg_cas02") { donpcevent "::OnRecvCastlePt02"; }
+		else if (strnpcinfo(2) == "prtg_cas03") { donpcevent "::OnRecvCastlePt03"; }
+		else if (strnpcinfo(2) == "prtg_cas04") { donpcevent "::OnRecvCastlePt04"; }
+		else if (strnpcinfo(2) == "prtg_cas05") { donpcevent "::OnRecvCastlePt05"; }
+		// Add custom Guild Castles here.
+		else {
+			end;
+		}
+		// And load purchased Guardian in castles.
+		donpcevent "Guardian#"+strnpcinfo(2)+"::OnSpawnGuardians";
+		// And display Kafra if purchased.
+		if (GetCastleData(strnpcinfo(2),9) < 1) disablenpc "Kafra Staff#"+strnpcinfo(2);
+	}
+	end;
+}
+
+// Guild Steward Template
+//============================================================
+-	script	Gld_Mngr_Template::Gld_Mngr_Template	-1,{
+	// What is the Display Name of the NPC?
+	set .@name$,strnpcinfo(1);
+
+	// Store the Guild ID of castle occupant.
+	set .@GID, GetCastleData(strnpcinfo(2),1);
+
+	// Define the types of guardians on a per castle basis.
+	// 1 - Soldier Guardian; 2 - Archer Guardian; 3 - Knight Guardian
+	// Define the x spawn point for each uardian.
+	// [0] = 1st guardian's x spawn point.
+	// Define the y spawn point for each guardian.
+	// [0] = 1st guardian's y spawn point.
+	// Define the coordinates of the "Treasure Room."
+	// Aldebaran (Luina) Castles
+	if (strnpcinfo(2) == "aldeg_cas01") { 
+		setarray .@guardiantype[0],1,2,2,2,2,3,3,3;
+		setarray .@guardianposx[0],17,39,38,45,21,218,213,73;
+		setarray .@guardianposy[0],218,208,196,228,194,24,24,70;
+		setarray .@masterroom[0],113,223;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas02") {
+		setarray .@guardiantype[0],3,3,3,1,1,2,2,2;
+		setarray .@guardianposx[0],27,88,117,60,51,21,36,210;
+		setarray .@guardianposy[0],184,43,46,202,183,177,183,7;
+		setarray .@masterroom[0],134,225;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas03") {
+		setarray .@guardiantype[0],3,3,1,1,1,2,2,2;
+		setarray .@guardianposx[0],90,116,86,116,64,212,195,110;
+		setarray .@guardianposy[0],112,112,120,76,103,160,151,217;
+		setarray .@masterroom[0],229,267;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas04") {
+		setarray .@guardiantype[0],2,2,2,1,1,1,3,3;
+		setarray .@guardianposx[0],187,192,148,145,169,198,48,55;
+		setarray .@guardianposy[0],100,42,88,209,53,77,72,88;
+		setarray .@masterroom[0],83,17;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas05") {
+		setarray .@guardiantype[0],2,2,1,1,3,3,3,3;
+		setarray .@guardianposx[0],51,188,157,157,27,145,156,41;
+		setarray .@guardianposy[0],202,79,192,74,221,78,73,112;
+		setarray .@masterroom[0],64,8;
+	}
+	// Geffen (Britoniah) Castles
+	else if (strnpcinfo(2) == "gefg_cas01") {
+		setarray .@guardiantype[0],1,1,1,2,2,3,3,3;
+		setarray .@guardianposx[0],67,184,62,36,50,50,189,200;
+		setarray .@guardianposy[0],179,20,41,186,186,67,41,167;
+		setarray .@masterroom[0],152,117;
+	}
+	else if (strnpcinfo(2) == "gefg_cas02") {
+		setarray .@guardiantype[0],1,1,1,2,2,3,3,3;
+		setarray .@guardianposx[0],64,56,166,35,20,19,166,159;
+		setarray .@guardianposy[0],168,41,25,148,150,41,42,188;
+		setarray .@masterroom[0],145,115;
+	}
+	else if (strnpcinfo(2) == "gefg_cas03") {
+		setarray .@guardiantype[0],2,2,1,1,1,3,3,3;
+		setarray .@guardianposx[0],48,113,48,157,243,157,234,238;
+		setarray .@guardianposy[0],176,214,207,62,41,45,25,160;
+		setarray .@masterroom[0],275,289;
+	}
+	else if (strnpcinfo(2) == "gefg_cas04") {
+		setarray .@guardiantype[0],2,2,1,1,1,3,3,3;
+		setarray .@guardianposx[0],53,31,49,29,147,57,160,148;
+		setarray .@guardianposy[0],191,178,220,46,65,46,50,189;
+		setarray .@masterroom[0],116,123;
+	}
+	else if (strnpcinfo(2) == "gefg_cas05") {
+		setarray .@guardiantype[0],2,2,1,1,1,3,3,3;
+		setarray .@guardianposx[0],45,71,72,66,177,66,177,193;
+		setarray .@guardianposy[0],149,163,142,47,50,17,35,166;
+		setarray .@masterroom[0],149,106;
+	}
+	// Payon (Baulder) Castles
+	else if (strnpcinfo(2) == "payg_cas01") {
+		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
+		setarray .@guardianposx[0],229,225,222,99,65,36,51,138;
+		setarray .@guardianposy[0],92,80,111,45,31,127,144,133;
+		setarray .@masterroom[0],295,8;
+	}
+	else if (strnpcinfo(2) == "payg_cas02") {
+		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
+		setarray .@guardianposx[0],237,228,210,57,42,287,264,27;
+		setarray .@guardianposy[0],54,72,41,241,241,257,272,20;
+		setarray .@masterroom[0],141,149;
+	}
+	else if (strnpcinfo(2) == "payg_cas03") {
+		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
+		setarray .@guardianposx[0],245,269,36,41,39,19,37,268;
+		setarray .@guardianposy[0],37,51,39,39,65,276,277,244;
+		setarray .@masterroom[0],163,167;
+	}
+	else if (strnpcinfo(2) == "payg_cas04") {
+		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
+		setarray .@guardianposx[0],251,232,231,32,32,35,36,270;
+		setarray .@guardianposy[0],212,212,175,287,232,45,17,41;
+		setarray .@masterroom[0],151,47;
+	}
+	else if (strnpcinfo(2) == "payg_cas05") {
+		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
+		setarray .@guardianposx[0],19,33,266,266,263,263,250,36;
+		setarray .@guardianposy[0],279,260,234,279,37,21,22,36;
+		setarray .@masterroom[0],153,137;
+	}
+	// Prontera (Valkyrie Realms) Castles
+	else if (strnpcinfo(2) == "prtg_cas01") {
+		setarray .@guardiantype[0],1,1,1,2,2,3,3,3;
+		setarray .@guardianposx[0],182,182,153,59,50,184,196,107;
+		setarray .@guardianposy[0],62,116,86,28,36,183,189,179;
+		setarray .@masterroom[0],15,209;
+	}
+	else if (strnpcinfo(2) == "prtg_cas02") {
+		setarray .@guardiantype[0],3,3,3,1,1,2,2,2;
+		setarray .@guardianposx[0],161,153,178,71,49,64,7,75;
+		setarray .@guardianposy[0],161,161,44,75,28,186,196,175;
+		setarray .@masterroom[0],207,229;
+	}
+	else if (strnpcinfo(2) == "prtg_cas03") {
+		setarray .@guardiantype[0],3,3,3,1,1,2,2,2;
+		setarray .@guardianposx[0],191,137,45,50,41,191,179,191;
+		setarray .@guardianposy[0],190,190,99,87,87,42,43,72;
+		setarray .@masterroom[0],190,130;
+	}
+	else if (strnpcinfo(2) == "prtg_cas04") {
+		setarray .@guardiantype[0],3,3,3,1,1,1,2,2;
+		setarray .@guardianposx[0],276,274,246,38,29,33,78,36;
+		setarray .@guardianposy[0],14,35,246,240,240,258,48,61;
+		setarray .@masterroom[0],275,160;
+	}
+	else if (strnpcinfo(2) == "prtg_cas05") {
+		setarray .@guardiantype[0],3,3,3,1,1,1,2,2;
+		setarray .@guardianposx[0],266,287,245,236,251,278,32,44;
+		setarray .@guardianposy[0],262,280,250,63,63,253,253,248;
+		setarray .@masterroom[0],281,176;
+	}
+	// Add custom Guild Castles here.
+	else {
+		end;
+	}
+	
+	mes "[ Steward " + .@name$ + " ]";
+	if (.@GID == 0) {
+		mes "I'm waiting for my master to return.";
+		mes "If you wish to speak with him, you will have to wait as well. ";
+		close;
+	}
+	if (getcharid(2) != .@GID || strcharinfo(0) != getguildmaster(.@GID)){
+		mes "I am loyal and I will follow my master ^ff0000" + getguildmaster(.@GID) + "^000000. We are Guardians! We defend to the bitter end!";
+		close;
+	}
+	mes "Welcome. My honorable master, ^ff0000" + getguildmaster(.@GID) + "^000000...";
+	mes "Whatever you need, I am at your service. I will be faithful in my duties.";
+	next;
+	switch(select("castle briefing:Invest in commercial growth:Invest in safeguard:Summon Guardian:Employ / discharge storehouse staff:Go into Master's room")) {
+	case 1:
+		mes "[ Steward " + .@name$ + " ]";
+		mes "I will report the Castle briefing, Master.";
+		mes " ";
+		mes " ^0000ffNow, commercial growth level is " + GetCastleData(strnpcinfo(2),2) + ".";
+		if (GetCastleData(strnpcinfo(2),4)) {
+			mes " You invested " + GetCastleData(strnpcinfo(2),4) + "times in last 1 day.";
+		}
+		mes " Now, safeguard level is " + GetCastleData(strnpcinfo(2),3) + ".^000000";
+		if (GetCastleData(strnpcinfo(2),5)) {
+			mes " ^0000ff- You invested " + GetCastleData(strnpcinfo(2),5) + "times in last 1 day.^000000";
+		}
+		mes " ";
+		mes "That's all to report, Master.";
+		close;
+	case 2:
+		set .@Economy,GetCastleData(strnpcinfo(2),2);
+		if(.@Economy < 8) set .@eco_invest,10000;
+		if(.@Economy >= 8) set .@eco_invest,20000;
+		if(.@Economy >= 16) set .@eco_invest,40000;
+		if(.@Economy >= 25) set .@eco_invest,80000;
+		if(.@Economy >= 34) set .@eco_invest,160000;
+		if(.@Economy >= 44) set .@eco_invest,320000;
+		if(.@Economy >= 54) set .@eco_invest,640000;
+		if(.@Economy >= 65) set .@eco_invest,1280000;
+		if(.@Economy >= 76) set .@eco_invest,2560000;
+		if(.@Economy >= 88) set .@eco_invest,5120000;
+		mes "[ Steward " + .@name$ + " ]";
+		mes "If you raise commercial growth, the quantity of goods made by the guild will increase. So if you want a prosperous future, investment will be required.";
+		mes " ";
+		mes "Originally you can invest just once but if you pay more money, you can invest twice.";
+		mes " ";
+		if (.@Economy == 100) {
+			mes "^ff0000But the commercial growth level of our castle is peaked at 100%. It doesn't need any more investment. As I expected you have a great acumen, Master.^000000";
+			close;
+		}
+		if (GetCastleData(strnpcinfo(2),4) == 2) {
+			mes "^ff0000But you already invested twice today so you cannot invest any more.^000000 I expect our riches to increase in growth level.";
+			close;
+		}
+		if (GetCastleData(strnpcinfo(2),4) == 0) {
+			mes "Now the needed investment amount is ^ff0000" + .@eco_invest + "^000000 zeny. Will you invest?";
+		}
+		else {
+			mes "You've invested once today... if you wish to invest once more, ^ff0000" + .@eco_invest + "^000000 more zeny will be needed.";
+		}
+		next;
+		switch(select("Invest in commercial growth:Cancel")) {
+		case 1:
+			if (Zeny < .@eco_invest) {
+				mes "[ Steward " + .@name$ + " ]";
+				mes "I'm sorry but there is not enough zeny to invest. You will have to try again when you have the funds, Master.";
+				close;
+			}
+			set zeny,zeny-.@eco_invest;
+			set zeny,zeny-.@eco_invest;
+			SetCastleData strnpcinfo(2),4,GetCastleData(strnpcinfo(2),4)+1;
+			SetCastleData strnpcinfo(2),2,.@Economy + 1 + (.@Economy<99 && rand(2) && getgdskilllv(.@GID,10014));
+			mes "[ Steward .@name$]";
+			mes "We finished the investment safely. I expect that our growth level will be increased by tomorrow.";
+			close;
+		case 2:
+			mes "[ Steward " + .@name$ + " ]";
+			mes "I'll do as you bid, my master... There is no hurry. We will do our best.";
+			close;
+		}
+	case 3:
+		set .@Defence,GetCastleData(strnpcinfo(2),3);
+		if(.@Defence < 8) set .@def_invest,20000;
+		if(.@Defence >= 8) set .@def_invest,40000;
+		if(.@Defence >= 16) set .@def_invest,80000;
+		if(.@Defence >= 25) set .@def_invest,160000;
+		if(.@Defence >= 34) set .@def_invest,320000;
+		if(.@Defence >= 44) set .@def_invest,640000;
+		if(.@Defence >= 54) set .@def_invest,1280000;
+		if(.@Defence >= 65) set .@def_invest,2560000;
+		if(.@Defence >= 76) set .@def_invest,5120000;
+		if(.@Defence >= 88) set .@def_invest,10240000;
+		mes "[ Steward " + .@name$ + " ]";
+		mes "If you raise the safeguard, the durability of the Guardians and emperium will increase. So if you expect more defenses in battles, investment will be required.";
+		mes " ";
+		mes "Originally you can invest just once but if you pay more money, you can invest twice.";
+		mes " ";
+		if (.@Defense == 100) {
+			mes "^ff0000But the safeguard level of our castle is peaked at 100%. It doesn't need any more investment. As I expected you have a great acumen, Master.^000000";
+			close;
+		}
+		if (GetCastleData(strnpcinfo(2),5) == 2) {
+			mes "^ff0000But you already invested twice today so you cannot invest any more.^000000 I expect our riches to increase in growth level.";
+			close;
+		}
+		if (GetCastleData(strnpcinfo(2),5) == 0) {
+			mes "Now the needed investment amount is ^ff0000" + .@def_invest + "^000000 zeny. Will you invest?";
+		}
+		else {
+			mes "You've invested once today... if you wish to invest once more, ^ff0000" + .@def_invest + "^000000 more zeny will be needed.";
+		}
+		next;
+		switch(select("Invest in safeguard.:Cancel")) {
+		case 1:
+			if (Zeny < .@def_invest) {
+				mes "[ Steward " + .@name$ + " ]";
+				mes "I'm sorry but there is not enough zeny to invest. You will have to try again when you have the funds, Master.";
+				close;
+			}
+			set zeny,zeny-.@def_invest;
+			SetCastleData strnpcinfo(2),5,GetCastleData(strnpcinfo(2),5)+1;
+			SetCastleData strnpcinfo(2),3,.@Defence+1;
+			mes "[ Steward .@name$]";
+			mes "We finished the investment safely. I expect that the safeguard level will be increased by tomorrow.";
+			close;
+		case 2:
+			mes "[ Steward " + .@name$ + " ]";
+			mes "I'll do as you bid, my master... There is no hurry. We will do our best.";
+			close;
+
+		}
+	case 4:
+		mes "[ Steward " + .@name$ + " ]";
+		mes "Will you summon a Guardian? It'll be a protector to defend us loyally.";
+		mes "Please select a guardian to defend us.";
+		next;
+		for( set .@i, 0; .@i <= 7 ; set .@i, .@i+1 ) {
+			if (.@guardiantype[.@i] == 1) { set .@type$,"Guardian Soldier"; }
+			else if (.@guardiantype[.@i] == 2) { set .@type$,"Guardian Archer"; }
+			else { set .@type$,"Guardian Knight"; }
+			if (guardianinfo(strnpcinfo(2),.@i,0)) {
+				setarray .@gname$[.@i], .@type$ + " - Implemented (" + guardianinfo(strnpcinfo(2),.@i,2) + "/" + guardianinfo(strnpcinfo(2),.@i,1) + ")";
+			}
+			else {
+				setarray .@gname$[.@i], .@type$ + " - Not Implemented";
+			}
+		}
+		set .@menu$,.@gname$[0]+":"+.@gname$[1]+":"+.@gname$[2]+":"+.@gname$[3]+":"+.@gname$[4]+":"+.@gname$[5]+":"+.@gname$[6]+":"+.@gname$[7];
+		switch(select(.@menu$)) {
+		case 1: set .@GDnum,10; break;
+		case 2: set .@GDnum,11; break;
+		case 3: set .@GDnum,12; break;
+		case 4: set .@GDnum,13; break;
+		case 5: set .@GDnum,14; break;
+		case 6: set .@GDnum,15; break;
+		case 7: set .@GDnum,16; break;
+		case 8: set .@GDnum,17; break;
+		}
+		mes "[ Steward " + .@name$ + " ]";
+		mes "Will you summon the chosen guardian? 10000 zeny is required to summon.";
+		next;
+		switch(select("Summon:Cancel")) {
+		case 1:
+			mes "[ Steward " + .@name$ + " ]";
+			if (getgdskilllv(.@GID,10002) == 0) {
+				mes "Master, we have not the resources to Summon the Guardian. If you want to accumulate them, you have to learn the Guild skill, We failed to summon the Guardian.";
+				close;
+			}
+			if (GetCastleData(strnpcinfo(2),.@GDnum) == 1) {
+				mes "Master, you already have summoned that Guardian. We cannot summon another.";
+				close;
+			}
+
+			if (Zeny < 1000) {
+				mes "Well... I'm sorry but we don't have funds to summon the Guardian. We failed to summon the Guardian.";
+				close;
+			}
+			set zeny,zeny-10000;
+			SetCastleData strnpcinfo(2),.@GDnum,1; // mark as 'installed'
+			set .@UseGID,.@GDnum - 10;
+			if (.@guardiantype[.@UseGID] == 1) { set .@type,1287; }
+			else if (.@guardiantype[.@UseGID] == 2) { set .@type,1285; }
+			else { set .@type,1286; }
+			guardian strnpcinfo(2),.@guardianposx[.@UseGID],.@guardianposy[.@UseGID],strmobinfo(2,.@type),.@type,"Guardian#"+strnpcinfo(2)+"::OnGuardianDied",.@UseGID;
+			mes "We completed the summoning of the Guardian. Our defenses are now increased with it in place.";
+			close;
+		case 2:
+			mes "[ Steward " + .@name$ + " ]";
+			mes "I did as you ordered. But please remember if you the have money to spare, it'll be better to set it up.";
+			close;
+	}
+	case 5:
+		if (GetCastleData(strnpcinfo(2),9) == 1) {
+			mes "[ Steward " + .@name$ + " ]";
+			mes "Now about the Kafra staff... Will you discharge the Kafra staff?";
+			next;
+			switch(select("Discharge:Cancel")) {
+			case 1:
+				cutin "kafra_01",2;
+				mes "[ Hired Kafra staff ]";
+				mes "I worked so hard... How can this be, Master?... I'll work harder if you're displeased... Please reconsider, Master.";
+				next;
+				switch(select("Discharge:Cancel")) {
+				case 1:
+					mes "[ Hired Kafra staff ]";
+					mes "Oh, my god! This is nonsense!";
+					next;
+					cutin "kafra_01",255;
+					break;
+				case 2:
+					mes "[ Hired Kafra staff ]";
+					mes "I'll work harder... Thank you!";
+					close2;
+					cutin "kafra_01",255;
+					end;
+				}
+			case 2:
+				mes "[ Steward " + .@name$ + " ]";
+				mes "Those Kafra are hard workers. I thought it would be best to keep the staff.";
+				close;
+			}
+			disablenpc "Kafra Staff#"+strnpcinfo(2);
+			SetCastleData strnpcinfo(2),9,0;
+			mes "[ Steward " + .@name$ + " ]";
+			mes "....";
+			mes "Discharged Kafra staff... But... are you displeased with something?";
+			close;
+		}
+		else {
+			mes "[ Steward " + .@name$ + " ]";
+			mes "Will you contract with the Kafra head office to hire Kafra staff in our castle?";
+			mes "^ff0000 10000zeny is needed to hire. ";
+			next;
+			switch(select("Hire.:Cancel")) {
+			case 1:
+				mes "[ Steward " + .@name$ + " ]";
+				if (getgdskilllv(.@GID,10001) == 0) {
+					mes "Master, we cannot hire Kafra staff because we didn't make a contract with the Kafra head office. If you want to make a contract with the Kafra head office, you have to learn the Guild skill.";
+					close;
+				}
+				if (Zeny < 10000) {
+					mes "Well... I'm sorry but we don't have enough funds. We are unable to hire the Kafra staff.";
+					close;
+				}
+				set zeny,zeny-10000;
+				enablenpc "Kafra Staff#"+strnpcinfo(2);
+				SetCastleData strnpcinfo(2),9,1;
+				mes "We finished making the contract with the Kafra head office successfully. We hired a Kafra staff.";
+				next;
+				cutin "kafra_01",2;
+				mes "[ Hired Kafra staff ]";
+				mes "How do you do? I'm a dispatched Kafra from head office.";
+				mes "I'll do my best to upkeep the reputation of Guild.";
+				next;
+				cutin "kafra_01",255			;
+				mes "[ Steward " + .@name$ + " ]";
+				mes "The contract term of the hired Kafra staff is 1 month and after this term, you will have to pay an additional charge.";
+				mes "It will be useful for our members.";
+				close;
+			case 2:
+				mes "[ Steward " + .@name$ + " ]";
+				mes "I did as you ordered, but some of our members will be unhappy. It will be better to hire a Kafra staff quickly.";
+				close;
+			}
+		}
+	case 6:
+		mes "[ Steward " + .@name$ + " ]";
+		mes "Do you want to visit the room where our valuables are stored?";
+		mes "That room is restricted to you... you are the only one with access to it.";
+		next;
+		switch(select("Go into Master's room.:Cancel")) {
+		case 1:
+			mes "[ Steward " + .@name$ + " ]";
+			mes "Please follow me, I will show you the secret passage.";
+			mes "When you wish to return, pull this lever here...";
+			close2;
+			warp strnpcinfo(2),.@masterroom[0],.@masterroom[1];
+			end;
+		case 2:
+			mes "[ Steward " + .@name$ + " ]";
+			mes "Goods are produced once a day... if you don't make use of them, they will not produce.";
+			mes "Therefore it would be better that you remove them over time for the Guild.";
+			close;
+		}
+	}
+}
+
+
+// Guardian Spawner Template
+//============================================================
+-	script	Gld_Guard_Template::Gld_Guard_Template	-1,{
+// Spawn Guardians in castles
+// When adding new castles, ensure that the coordinates coincide
+// with the coordinates defined in the Guild Steward template.
+OnSpawnGuardians:
+	// Define the types of guardians on a per castle basis.
+	// 1 - Soldier Guardian; 2 - Archer Guardian; 3 - Knight Guardian
+	// Define the x spawn point for each uardian.
+	// [0] = 1st guardian's x spawn point.
+	// Define the y spawn point for each uardian.
+	// [0] = 1st guardian's y spawn point.
+	// Aldebaran (Luina) Castles
+	if (strnpcinfo(2) == "aldeg_cas01") { 
+		setarray .@guardiantype[0],1,2,2,2,2,3,3,3;
+		setarray .@guardianposx[0],17,39,38,45,21,218,213,73;
+		setarray .@guardianposy[0],218,208,196,228,194,24,24,70;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas02") {
+		setarray .@guardiantype[0],3,3,3,1,1,2,2,2;
+		setarray .@guardianposx[0],27,88,117,60,51,21,36,210;
+		setarray .@guardianposy[0],184,43,46,202,183,177,183,7;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas03") {
+		setarray .@guardiantype[0],3,3,1,1,1,2,2,2;
+		setarray .@guardianposx[0],90,116,86,116,64,212,195,110;
+		setarray .@guardianposy[0],112,112,120,76,103,160,151,217;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas04") {
+		setarray .@guardiantype[0],2,2,2,1,1,1,3,3;
+		setarray .@guardianposx[0],187,192,148,145,169,198,48,55;
+		setarray .@guardianposy[0],100,42,88,209,53,77,72,88;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas05") {
+		setarray .@guardiantype[0],2,2,1,1,3,3,3,3;
+		setarray .@guardianposx[0],51,188,157,157,27,145,156,41;
+		setarray .@guardianposy[0],202,79,192,74,221,78,73,112;
+	}
+	// Geffen (Britoniah) Castles
+	else if (strnpcinfo(2) == "gefg_cas01") {
+		setarray .@guardiantype[0],1,1,1,2,2,3,3,3;
+		setarray .@guardianposx[0],67,184,62,36,50,50,189,200;
+		setarray .@guardianposy[0],179,20,41,186,186,67,41,167;
+	}
+	else if (strnpcinfo(2) == "gefg_cas02") {
+		setarray .@guardiantype[0],1,1,1,2,2,3,3,3;
+		setarray .@guardianposx[0],64,56,166,35,20,19,166,159;
+		setarray .@guardianposy[0],168,41,25,148,150,41,42,188;
+	}
+	else if (strnpcinfo(2) == "gefg_cas03") {
+		setarray .@guardiantype[0],2,2,1,1,1,3,3,3;
+		setarray .@guardianposx[0],48,113,48,157,243,157,234,238;
+		setarray .@guardianposy[0],176,214,207,62,41,45,25,160;
+	}
+	else if (strnpcinfo(2) == "gefg_cas04") {
+		setarray .@guardiantype[0],2,2,1,1,1,3,3,3;
+		setarray .@guardianposx[0],53,31,49,29,147,57,160,148;
+		setarray .@guardianposy[0],191,178,220,46,65,46,50,189;
+	}
+	else if (strnpcinfo(2) == "gefg_cas05") {
+		setarray .@guardiantype[0],2,2,1,1,1,3,3,3;
+		setarray .@guardianposx[0],45,71,72,66,177,66,177,193;
+		setarray .@guardianposy[0],149,163,142,47,50,17,35,166;
+	}
+	// Payon (Baulder) Castles
+	else if (strnpcinfo(2) == "payg_cas01") {
+		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
+		setarray .@guardianposx[0],229,225,222,99,65,36,51,138;
+		setarray .@guardianposy[0],92,80,111,45,31,127,144,133;
+	}
+	else if (strnpcinfo(2) == "payg_cas02") {
+		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
+		setarray .@guardianposx[0],237,228,210,57,42,287,264,27;
+		setarray .@guardianposy[0],54,72,41,241,241,257,272,20;
+	}
+	else if (strnpcinfo(2) == "payg_cas03") {
+		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
+		setarray .@guardianposx[0],245,269,36,41,39,19,37,268;
+		setarray .@guardianposy[0],37,51,39,39,65,276,277,244;
+	}
+	else if (strnpcinfo(2) == "payg_cas04") {
+		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
+		setarray .@guardianposx[0],251,232,231,32,32,35,36,270;
+		setarray .@guardianposy[0],212,212,175,287,232,45,17,41;
+	}
+	else if (strnpcinfo(2) == "payg_cas05") {
+		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
+		setarray .@guardianposx[0],19,33,266,266,263,263,250,36;
+		setarray .@guardianposy[0],279,260,234,279,37,21,22,36;
+	}
+	// Prontera (Valkyrie Realms) Castles
+	else if (strnpcinfo(2) == "prtg_cas01") {
+		setarray .@guardiantype[0],1,1,1,2,2,3,3,3;
+		setarray .@guardianposx[0],182,182,153,59,50,184,196,107;
+		setarray .@guardianposy[0],62,116,86,28,36,183,189,179;
+	}
+	else if (strnpcinfo(2) == "prtg_cas02") {
+		setarray .@guardiantype[0],3,3,3,1,1,2,2,2;
+		setarray .@guardianposx[0],161,153,178,71,49,64,7,75;
+		setarray .@guardianposy[0],161,161,44,75,28,186,196,175;
+	}
+	else if (strnpcinfo(2) == "prtg_cas03") {
+		setarray .@guardiantype[0],3,3,3,1,1,2,2,2;
+		setarray .@guardianposx[0],191,137,45,50,41,191,179,191;
+		setarray .@guardianposy[0],190,190,99,87,87,42,43,72;
+	}
+	else if (strnpcinfo(2) == "prtg_cas04") {
+		setarray .@guardiantype[0],3,3,3,1,1,1,2,2;
+		setarray .@guardianposx[0],276,274,246,38,29,33,78,36;
+		setarray .@guardianposy[0],14,35,246,240,240,258,48,61;
+	}
+	else if (strnpcinfo(2) == "prtg_cas05") {
+		setarray .@guardiantype[0],3,3,3,1,1,1,2,2;
+		setarray .@guardianposx[0],266,287,245,236,251,278,32,44;
+		setarray .@guardianposy[0],262,280,250,63,63,253,253,248;
+	}
+	// Add custom Guild Castles here.
+	else {
+		end;
+	}
+
+	// Kill all existing guardians before spawning new ones.
+	// This should prevent duplicating Guardians when char Server disconnects.
+	killmonster strnpcinfo(2),strnpcinfo(0)+"::OnGuardianDied";
+
+	for( set .@i, 0; .@i <= 7 ; set .@i, .@i+1 ) {
+		set .@UseGID,.@i + 10;
+		if (.@guardiantype[.@i] == 1) { set .@type,1287; }
+		else if (.@guardiantype[.@i] == 2) { set .@type,1285; }
+		else { set .@type,1286; }
+		if (GetCastleData(strnpcinfo(2),.@UseGID)) {
+			guardian strnpcinfo(2),.@guardianposx[.@i],.@guardianposy[.@i],strmobinfo(2,.@type),.@type,"Guardian#"+strnpcinfo(2)+"::OnGuardianDied",.@i;
+		}
+	}
+	end;
+
+OnGuardianDied:
+	end;
+}	
+
+// Kafra Template
+//============================================================
+-	script	Gld_Kafra_Template::Gld_Kafra_Template	-1,{
+	// Store the Guild ID of castle occupant.
+	set .@GID, GetCastleData(strnpcinfo(2),1);
+
+	if (compare(strnpcinfo(2),"aldeg")) {
+		setarray .@destination$[0],"Al De Baran","aldebaran";
+		setarray .@coordinates[0],132,103;
+	}
+	else if (compare(strnpcinfo(2),"gefg")) {
+		setarray .@destination$[0],"Geffen","geffen";
+		setarray .@coordinates[0],120,39;
+	}
+	else if (compare(strnpcinfo(2),"payg")) {
+		setarray .@destination$[0],"Payon","payon";
+		setarray .@coordinates[0],70,100;
+	}
+	else if (compare(strnpcinfo(2),"prtg")) {
+		setarray .@destination$[0],"Prontera","prontera";
+		setarray .@coordinates[0],116,72;
+	}
+	// Add custom Guild Castles here.
+	else {
+		end;
+	}
+
+	cutin "kafra_01",2;
+	if (getcharid(2) == .@GID) {
+		mes "[Kafra staff]";
+		mes "Welcome. ^ff0000" + getguildname(.@GID) + "^000000 Member.";
+		mes "The Kafra Coporation will stay with you wherever you go.";
+		next;
+		switch(select("Use Storage:Use Guild Storage:Use Warp Service:Rent a Cart:Cancel")) {
+		case 1:
+			if (basicskillcheck() && getskilllv(1) < 6) {
+				mes "[Kafra staff]";
+				mes "I am sorry but you have to be at least Novice skill level 6 if you want to use the storage.";
+			}
+			else {
+				callfunc("F_CheckKafCode");	//check your storage password, if set
+	 	 		openstorage;
+			}
+			break;
+		case 2:
+			// Unofficial, but since it's already been in eA for ages
+			// and used, I can't exactly remove it, now, can I? >:(
+			if(guildopenstorage(0) == 1){
+				mes "[Kafra Employee]";
+				mes "I'm sorry but another guild member is using the guild storage";
+				mes "right now.  Please wait until that person is finished.";
+				close2;
+				cutin "", 255;
+				end;
+			}
+			cutin "", 255;
+			close;			
+		case 3:
+			mes "[Kafra staff]";
+			mes "Please let me know your destination.";
+			next;
+			switch(select(.@destination$ + " ^880000200 ^000000z:Cancel")) {
+			case 1:
+				if (Zeny < 200) {
+					mes "[Kafra staff]";
+		 			mes "You don't have enough money. Please check again.";
+				}
+				else {
+					set zeny,zeny-200;
+					set kf_10_pit,kf_10_pit+2;
+					cutin "kafra_01",255;
+					warp .@destination$[1],.@coordinates[0],.@coordinates[1];
+					end;
+				}
+				break;
+			case 2:
+				break;
+			}
+			break;
+		case 4:
+			if(baseClass != Job_Merchant){
+				mes "[Kafra staff]";
+				mes "I am sorry. The Cart Service is only provided for the Merchant and Blacksmith class.";
+			}
+			else if(checkcart() == 1){
+				mes "[Kafra staff]";
+				mes "You have a cart equipped already.";
+			}
+			else {
+				mes "[Kafra staff]"		;
+				mes "The cart fee is 800 zeny. Do you want to rent a cart?";
+				next;
+				switch(select("Yes.:Cancel.")) {
+				case 1:
+					if (Zeny < 800) {
+						mes "[Kafra staff]";
+						mes "You don't have enough Money. You need 800 Zeny to rent a cart.";
+					}
+					else {
+						close2;
+						cutin "kafra_01",255;
+						set kf_10_pit,kf_10_pit+8;
+						set zeny,zeny-800;
+						setcart;
+						end;
+					}
+					break;
+				case 2:
+					break;
+				}
+			}		
+			break;
+		case 5:
+			mes "[Kafra staff]";
+			mes "The Kafra corp. always tries to give the best service.";
+			mes "Thank you for using Kafra corp. Please come again.";
+		}
+	}
+	else {
+		mes "[Kafra staff]";
+		mes "I am instructed to service only for the ^ff0000" + getguildname(.@GID) + "^000000 Guild. Please try another Kafra staff member around here. Sorry for the inconvenience.";
+	}
+	close2;
+	cutin "kafra_01",255;
+	end;
+}
+
+// Guild Dungeon Switch Template
+//============================================================
+-	script	Gld_Dun_Template::Gld_Dun_Template	-1,{
+	// Store the Guild ID of castle occupant.
+	set .@GID, GetCastleData(strnpcinfo(2),1);
+
+	// Pick what Dungeon I should warp too, and where in that dungeon.
+	if (compare(strnpcinfo(2),"aldeg")) {
+		set .@destination$,"gld_dun02";
+		if (compare(strnpcinfo(2),"cas01")) setarray .@coordinates[0],32,122;
+		else if (compare(strnpcinfo(2),"cas02")) setarray .@coordinates[0],79,32;
+		else if (compare(strnpcinfo(2),"cas03")) setarray .@coordinates[0],165,38;
+		else if (compare(strnpcinfo(2),"cas04")) setarray .@coordinates[0],160,148;
+		else if (compare(strnpcinfo(2),"cas05")) setarray .@coordinates[0],103,169;
+	}
+	else if (compare(strnpcinfo(2),"gefg")) {
+		set .@destination$,"gld_dun04";
+		if (compare(strnpcinfo(2),"cas01")) setarray .@coordinates[0],39,258;
+		else if (compare(strnpcinfo(2),"cas02")) setarray .@coordinates[0],125,270;
+		else if (compare(strnpcinfo(2),"cas03")) setarray .@coordinates[0],268,251;
+		else if (compare(strnpcinfo(2),"cas04")) setarray .@coordinates[0],268,108;
+		else if (compare(strnpcinfo(2),"cas05")) setarray .@coordinates[0],230,35;
+	}
+	else if (compare(strnpcinfo(2),"payg")) {
+		set .@destination$,"gld_dun01";
+		if (compare(strnpcinfo(2),"cas01")) setarray .@coordinates[0],186,165;
+		else if (compare(strnpcinfo(2),"cas02")) setarray .@coordinates[0],54,165;
+		else if (compare(strnpcinfo(2),"cas03")) setarray .@coordinates[0],54,39;
+		else if (compare(strnpcinfo(2),"cas04")) setarray .@coordinates[0],186,39;
+		else if (compare(strnpcinfo(2),"cas05")) setarray .@coordinates[0],223,202;
+	}
+	else if (compare(strnpcinfo(2),"prtg")) {
+		set .@destination$,"gld_dun03";
+		if (compare(strnpcinfo(2),"cas01")) setarray .@coordinates[0],28,251;
+		else if (compare(strnpcinfo(2),"cas02")) setarray .@coordinates[0],164,268;
+		else if (compare(strnpcinfo(2),"cas03")) setarray .@coordinates[0],164,179;
+		else if (compare(strnpcinfo(2),"cas04")) setarray .@coordinates[0],268,203;
+		else if (compare(strnpcinfo(2),"cas05")) setarray .@coordinates[0],199,28;
+	}
+	// Add custom Guild Castles here.
+	else {
+		end;
+	}
+
+	if (.@GID == 0) {
+		mes "[ Echoing Voice ]";
+		mes " ' The one who can overcome an ordeal and show true bravery... will find the way... ' ";
+		close;
+	}
+	else {
+		mes "[ Echoing Voice ]";
+		mes " ' Only the one who can show true bravery can take this test. '";
+		next;
+		mes " ";
+		mes "There's a small lever. Will you pull it?";
+		next;
+		switch(select("Pull.:Do not.")) {
+		case 1:
+			if ((getcharid(2) == .@GID)) {
+				warp .@destination$,.@coordinates[0],.@coordinates[1];
+				end;
+			}
+			else {
+				mes " ";
+				mes " Nothing happened.";
+				close;
+			}
+		case 2:
+			close;
+		}
+	}
+}
+
+// Treasure Room Protection Template
+//============================================================
+-	script	Gld_Trea_Protect::Gld_Trea_Protect	-1,{
+//OnTouch2:
+OnTouch:
+	// Store the Guild ID of castle occupant.
+	set .@GID, GetCastleData(strnpcinfo(2),1);
+
+	if (strcharinfo(0) != getguildmaster(.@GID)) { 
+		if (compare(strnpcinfo(2),"aldeg")) {
+			warp "aldebaran",132,103;
+		}
+		else if (compare(strnpcinfo(2),"gefg")) {
+			warp "geffen",120,39;
+		}
+		else if (compare(strnpcinfo(2),"payg")) {
+			warp "payon",70,100;
+		}
+		else if (compare(strnpcinfo(2),"prtg")) {
+			warp "prontera",116,72;
+		}
+		// Add custom Guild Castles here.
+		else {
+			end;
+		}
+	}
+	end;
+}
+
+// Treasure Room Spawn Template
+//============================================================
+-	script	Gld_Trea_Spawn::Gld_Trea_Spawn	-1,{
+	end;
+
+OnClock0001:
+	// If there is no owner, do nothing.
+	if (!GetCastleData(strnpcinfo(2),1)) end;
+
+	// Is there Economy in this castle?
+	set .@Treasure,GetCastleData(strnpcinfo(2),2)/5+4;
+
+	// Set information
+	if (strnpcinfo(2) == "aldeg_cas01") { 
+		set .@treasurebox,1324;
+		setarray .@treasurex[0],115,122,115,122,116,117,118,119,120,121,121,121,121,121,121,120,119,118,117,116,116,116,116,116;
+		setarray .@treasurey[0],226,226,219,219,225,225,225,225,225,225,224,223,222,221,220,220,220,220,220,220,221,222,223,224;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas02") { 
+		set .@treasurebox,1326;
+		setarray .@treasurex[0],134,135,135,134,132,133,134,135,136,137,137,137,137,137,137,136,135,134,133,132,132,132,132,132;
+		setarray .@treasurey[0],231,231,230,230,233,233,233,233,233,233,232,231,230,229,228,228,228,228,228,228,229,230,231,232;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas03") { 
+		set .@treasurebox,1328;
+		setarray .@treasurex[0],224,225,225,224,222,223,224,225,226,227,227,227,227,227,227,226,225,224,223,222,222,222,222,222;
+		setarray .@treasurey[0],269,269,268,268,271,271,271,271,271,271,270,269,268,267,266,266,266,266,266,266,267,268,269,270;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas04") { 
+		set .@treasurebox,1330;
+		setarray .@treasurex[0],84,85,85,84,82,83,84,85,86,87,87,87,87,87,87,86,85,84,83,82,82,82,82,82;
+		setarray .@treasurey[0],13,13,12,12,15,15,15,15,15,15,14,13,12,11,10,10,10,10,10,10,11,12,13,14;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas05") { 
+		set .@treasurebox,1332;
+		setarray .@treasurex[0],61,62,62,61,59,60,61,62,63,64,64,64,64,64,64,63,62,61,60,59,59,59,59,59;
+		setarray .@treasurey[0],12,12,11,11,14,14,14,14,14,14,13,12,11,10,9,9,9,9,9,9,10,11,12,13;
+	}
+	else if (strnpcinfo(2) == "gefg_cas01") { 
+		set .@treasurebox,1334;
+		setarray .@treasurex[0],153,154,154,153,151,152,153,154,155,156,156,156,156,156,156,155,154,153,152,151,151,151,151,151;
+		setarray .@treasurey[0],113,113,112,112,115,115,115,115,115,115,114,113,112,111,110,110,110,110,110,110,111,112,113,114;
+	}
+	else if (strnpcinfo(2) == "gefg_cas02") { 
+		set .@treasurebox,1336;
+		setarray .@treasurex[0],139,140,140,139,137,138,139,140,141,142,142,142,142,142,142,141,140,139,138,137,137,137,137,137;
+		setarray .@treasurey[0],115,115,114,114,117,117,117,117,117,117,116,115,114,113,112,112,112,112,112,112,113,114,115,116;
+	}
+	else if (strnpcinfo(2) == "gefg_cas03") { 
+		set .@treasurebox,1338;
+		setarray .@treasurex[0],269,270,270,269,267,268,269,270,271,272,272,272,272,272,272,271,270,269,268,267,267,267,267,267;
+		setarray .@treasurey[0],291,291,290,290,293,293,293,293,293,293,292,291,290,289,288,288,288,288,288,288,289,290,291,292;
+	}
+	else if (strnpcinfo(2) == "gefg_cas04") { 
+		set .@treasurebox,1340;
+		setarray .@treasurex[0],115,116,116,115,113,114,115,116,117,118,118,118,118,118,118,117,116,115,114,113,113,113,113,113;
+		setarray .@treasurey[0],119,119,118,118,121,121,121,121,121,121,120,119,118,117,116,116,116,116,116,116,117,118,119,120;
+	}
+	else if (strnpcinfo(2) == "gefg_cas05") { 
+		set .@treasurebox,1342;
+		setarray .@treasurex[0],143,144,144,143,141,142,143,144,145,146,146,146,146,146,146,145,144,143,142,141,141,141,141,141;
+		setarray .@treasurey[0],110,110,109,109,112,112,112,112,112,112,111,110,109,108,107,107,107,107,107,107,108,109,110,111;
+	}
+	else if (strnpcinfo(2) == "payg_cas01") { 
+		set .@treasurebox,1344;
+		setarray .@treasurex[0],289,292,292,289,288,289,290,291,292,293,293,293,293,293,293,292,291,290,289,288,288,288,288,288;
+		setarray .@treasurey[0],10,10,7,7,11,11,11,11,11,11,10,9,8,7,6,6,6,6,6,6,7,8,9,10;
+	}
+	else if (strnpcinfo(2) == "payg_cas02") { 
+		set .@treasurebox,1346;
+		setarray .@treasurex[0],143,146,146,143,142,143,144,145,146,147,147,147,147,147,147,146,145,144,143,142,142,142,142,142;
+		setarray .@treasurey[0],146,146,143,143,147,147,147,147,147,147,146,145,144,143,142,142,142,142,142,142,143,144,145,146;
+	}
+	else if (strnpcinfo(2) == "payg_cas03") { 
+		set .@treasurebox,1348;
+		setarray .@treasurex[0],158,159,159,158,156,157,158,159,160,161,161,161,161,161,161,160,159,158,157,156,156,156,156,156;
+		setarray .@treasurey[0],169,169,168,168,171,171,171,171,171,171,170,169,168,167,166,166,166,166,166,166,167,168,169,170;
+	}
+	else if (strnpcinfo(2) == "payg_cas04") { 
+		set .@treasurebox,1350;
+		setarray .@treasurex[0],146,147,147,146,144,145,146,147,148,149,149,149,149,149,149,148,147,146,145,144,144,144,144,144;
+		setarray .@treasurey[0],48,48,47,47,50,50,50,50,50,50,49,48,47,46,45,45,45,45,45,45,46,47,48,49;
+	}
+	else if (strnpcinfo(2) == "payg_cas05") { 
+		set .@treasurebox,1352;
+		setarray .@treasurex[0],155,158,158,155,154,155,156,157,158,159,159,159,159,159,159,158,157,156,155,154,154,154,154,154;
+		setarray .@treasurey[0],134,134,131,131,135,135,135,135,135,135,134,133,132,131,130,130,130,130,130,130,131,132,133,134;
+	}
+	else if (strnpcinfo(2) == "prtg_cas01") { 
+		set .@treasurebox,1354;
+		setarray .@treasurex[0],10,11,11,10,8,9,10,11,12,13,13,13,13,13,13,12,11,10,9,8,8,8,8,8;
+		setarray .@treasurey[0],209,209,208,208,211,211,211,211,211,211,210,209,208,207,206,206,206,206,206,206,207,208,209,210;
+	}
+	else if (strnpcinfo(2) == "prtg_cas02") { 
+		set .@treasurebox,1356;
+		setarray .@treasurex[0],201,202,202,201,199,200,201,202,203,204,204,204,204,204,204,203,202,201,200,199,199,199,199,199;
+		setarray .@treasurey[0],228,228,227,227,230,230,230,230,230,230,229,228,227,226,225,225,225,225,225,225,226,227,228,229;
+	}
+	else if (strnpcinfo(2) == "prtg_cas03") { 
+		set .@treasurebox,1358;
+		setarray .@treasurex[0],187,188,188,187,185,186,187,188,189,190,190,190,190,190,190,189,188,187,186,185,185,185,185,185;
+		setarray .@treasurey[0],132,132,131,131,134,134,134,134,134,134,133,132,131,130,129,129,129,129,129,129,130,131,132,133;
+	}
+	else if (strnpcinfo(2) == "prtg_cas04") { 
+		set .@treasurebox,1360;
+		setarray .@treasurex[0],269,270,270,269,267,268,269,270,271,272,272,272,272,272,272,271,270,269,268,267,267,267,267,267;
+		setarray .@treasurey[0],162,162,161,161,164,164,164,164,164,164,163,162,161,160,159,159,159,159,159,159,160,161,162,163;
+	}
+	else if (strnpcinfo(2) == "prtg_cas05") { 
+		set .@treasurebox,1362;
+		setarray .@treasurex[0],275,276,276,275,273,274,275,276,277,278,278,278,278,278,278,277,276,275,274,273,273,273,273,273;
+		setarray .@treasurey[0],178,178,177,177,180,180,180,180,180,180,179,178,177,176,175,175,175,175,175,175,176,177,178,179;
+	}
+	// Add custom Guild Castles here.
+	else {
+		end;
+	}
+
+	// Spawn boxes in proper order.
+	for (set .@i,0; .@i <= .@Treasure ; set .@i,.@i+1) {
+		// set treasure box ID
+		set .@boxid, .@treasurebox + (.@i+2) % 2;
+		set .@box,1 << .@i;
+		// Spawn or do not spawn chests if one already exists.
+		if ((getd("$@"+strnpcinfo(2)+"_treasure") & .@box) == 0) {
+			monster strnpcinfo(2),.@treasurex[.@i],.@treasurey[.@i],"Treasure Chest",.@boxid,1,"Treasure#"+strnpcinfo(2)+"::OnTreasureDied"+.@i;
+			setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") | .@box;
+		}
+	}
+	end;
+
+// Individual "You killed a chest" events to ensure proper spawning at the change of day.
+OnTreasureDied0:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~1;
+	end;
+OnTreasureDied1:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~2;
+	end;
+OnTreasureDied2:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~4;
+	end;
+OnTreasureDied3:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~8;
+	end;
+OnTreasureDied4:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~16;
+	end;
+OnTreasureDied5:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~32;
+	end;
+OnTreasureDied6:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~64;
+	end;
+OnTreasureDied7:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~128;
+	end;
+OnTreasureDied8:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~256;
+	end;
+OnTreasureDied9:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~512;
+	end;
+OnTreasureDied10:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~1024;
+	end;
+OnTreasureDied11:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~2048;
+	end;
+OnTreasureDied12:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~4096;
+	end;
+OnTreasureDied13:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~8192;
+	end;
+OnTreasureDied14:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~16384;
+	end;
+OnTreasureDied15:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~32768;
+	end;
+OnTreasureDied16:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~65536;
+	end;
+OnTreasureDied17:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~131072;
+	end;
+OnTreasureDied18:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~262144;
+	end;
+OnTreasureDied19:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~524288;
+	end;
+OnTreasureDied20:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~1048576;
+	end;
+OnTreasureDied21:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~2097152;
+	end;
+OnTreasureDied22:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~4194304;
+	end;
+OnTreasureDied23:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~8388608;
+	end;
+}

+ 0 - 51
npc/guild/aldeg/aldeg_dunsw.txt

@@ -1,51 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium Dungeon Switch for Al De Baran Guild Castles
-//===== By: ==================================================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//===== Current Version: =====================================
-//= 1.2
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= Switch that warps guild members to the guild dungeon
-//===== Additional Comments: =================================
-//= v1.2 Optimized with functions.[kobra_k88]
-//============================================================
-
-
-
-// Castle 1 ===============================================
-aldeg_cas01,212,181,0	script	Switch#DunA01	111,{
-	callfunc "F_GldDunSw","aldeg_cas01","02",32,122;
-	close;
-}
-
-
-// Castle 2 ===============================================
-aldeg_cas02,194,136,0	script	Switch#DunA02	111,{
-	callfunc "F_GldDunSw","aldeg_cas02","02",79,32;
-	close;
-}
-
-
-// Castle 3 ===============================================
-aldeg_cas03,200,177,0	script	Switch#DunA03	111,{
-	callfunc "F_GldDunSw","aldeg_cas03","02",165,38;
-	close;
-}
-
-
-// Castle 4 ===============================================
-aldeg_cas04,38,76,0	script	Switch#DunA04	111,{
-	callfunc "F_GldDunSw","aldeg_cas04","02",160,148;
-	close;
-}
-
-
-// Castle 5 ===============================================
-
-aldeg_cas05,22,205,0	script	Switch#DunA05	111,{
-	callfunc "F_GldDunSw","aldeg_cas05","02",103,169;
-	close;
-}

+ 0 - 159
npc/guild/aldeg/aldeg_ev_agit.txt

@@ -1,159 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium - Al De Baran Guild Wars Events
-//===== By: ==================================================
-//= jAthena (1.0)
-//= 1.1 by Akaru and ho|yAnge|
-//===== Current Version: =====================================
-//= 1.5
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= Event Triggers of Geffen Guild Wars
-//===== Additional Comments: =================================
-//= v1.2 Now using functions for OnAgitStart and OnAgitBreak. [kobra_k88]
-//= 1.3 Added code for abandoning captured castles on /breakguild [Lupus]
-//= 1.4 Small updated. Changed "EMPERIUM" to "Emperium". [L0ne_W0lf]
-//= 1.5 Quick fix "emps not respawning if the emp breaker logs off".
-//=     (from r11630 bureport:369) [FlavioJS]
-//============================================================
-
-
-// Castle 1 ================================================================
-aldeg_cas01,216,24,0	script	Agit_A01	-1,{
-OnInterIfInitOnce:
-	GetCastleData "aldeg_cas01",0,"::OnRecvCastleA01";
-	end;
-OnRecvCastleA01:
-	RequestGuildInfo GetCastleData("aldeg_cas01",1);
-	end;
-OnAgitStart:
-	callfunc "F_AgitStart","aldeg_cas01","A01",216,24;
-	end;
-OnAgitBreak:
-	callfunc "F_AgitBreak","aldeg_cas01","A01";
-	goto OnAgitEliminate;
-OnGuildBreak:
-	callfunc "F_GuildBreak","aldeg_cas01","A01";
-	end;
-OnAgitEliminate:
-	sleep getbattleflag("gvg_eliminate_time");
-	MapRespawnGuildID "aldeg_cas01",GetCastleData("aldeg_cas01",1),6;
-	sleep 6333-getbattleflag("gvg_eliminate_time");// wait for emp animation to end
-	Monster "aldeg_cas01",216,24,"Emperium",1288,1,"Agit_A01::OnAgitBreak";
-	end;
-OnAgitEnd:
-	callfunc "F_AgitEnd","aldeg_cas01","A01";
-	end;
-}
-
-// Castle 2 ================================================================
-aldeg_cas02,214,24,0	script	Agit_A02	-1,{
-OnInterIfInitOnce:
-	GetCastleData "aldeg_cas02",0,"::OnRecvCastleA02";
-	end;
-OnRecvCastleA02:
-	RequestGuildInfo GetCastleData("aldeg_cas02",1);
-	end;
-OnAgitStart:
-	callfunc "F_AgitStart","aldeg_cas02","A02",214,24;
-	end;
-OnAgitBreak:
-	callfunc "F_AgitBreak","aldeg_cas02","A02";
-	goto OnAgitEliminate;
-OnGuildBreak:
-	callfunc "F_GuildBreak","aldeg_cas02","A02";
-	end;
-OnAgitEliminate:
-	sleep getbattleflag("gvg_eliminate_time");
-	MapRespawnGuildID "aldeg_cas02",GetCastleData("aldeg_cas02",1),6;
-	sleep 6333-getbattleflag("gvg_eliminate_time");// wait for emp animation to end
-	Monster "aldeg_cas02",214,24,"Emperium",1288,1,"Agit_A02::OnAgitBreak";
-	end;
-OnAgitEnd:
-	callfunc "F_AgitEnd","aldeg_cas02","A02";
-	end;
-}
-
-// Castle 3 ================================================================
-aldeg_cas03,206,32,0	script	Agit_A03	-1,{
-OnInterIfInitOnce:
-	GetCastleData "aldeg_cas03",0,"::OnRecvCastleA03";
-	end;
-OnRecvCastleA03:
-	RequestGuildInfo GetCastleData("aldeg_cas03",1);
-	end;
-OnAgitStart:
-	callfunc "F_AgitStart","aldeg_cas03","A03",206,32;
-	end;
-OnAgitBreak:
-	callfunc "F_AgitBreak","aldeg_cas03","A03";
-	goto OnAgitEliminate;
-OnGuildBreak:
-	callfunc "F_GuildBreak","aldeg_cas03","A03";
-	end;
-OnAgitEliminate:
-	sleep getbattleflag("gvg_eliminate_time");
-	MapRespawnGuildID "aldeg_cas03",GetCastleData("aldeg_cas03",1),6;
-	sleep 6333-getbattleflag("gvg_eliminate_time");// wait for emp animation to end
-	Monster "aldeg_cas03",206,32,"Emperium",1288,1,"Agit_A03::OnAgitBreak";
-	end;
-OnAgitEnd:
-	callfunc "F_AgitEnd","aldeg_cas03","A03";
-	end;
-}
-
-// Castle 4 ================================================================
-aldeg_cas04,36,218,0	script	Agit_A04	-1,{
-OnInterIfInitOnce:
-	GetCastleData "aldeg_cas04",0,"::OnRecvCastleA04";
-	end;
-OnRecvCastleA04:
-	RequestGuildInfo GetCastleData("aldeg_cas04",1);
-	end;
-OnAgitStart:
-	callfunc "F_AgitStart","aldeg_cas04","A04",36,218;
-	end;
-OnAgitBreak:
-	callfunc "F_AgitBreak","aldeg_cas04","A04";
-	goto OnAgitEliminate;
-OnGuildBreak:
-	callfunc "F_GuildBreak","aldeg_cas04","A04";
-	end;
-OnAgitEliminate:
-	sleep getbattleflag("gvg_eliminate_time");
-	MapRespawnGuildID "aldeg_cas04",GetCastleData("aldeg_cas04",1),6;
-	sleep 6333-getbattleflag("gvg_eliminate_time");// wait for emp animation to end
-	Monster "aldeg_cas04",36,218,"Emperium",1288,1,"Agit_A04::OnAgitBreak";
-	end;
-OnAgitEnd:
-	callfunc "F_AgitEnd","aldeg_cas04","A04";
-	end;
-}
-
-// Castle 5 ================================================================
-aldeg_cas05,28,102,0	script	Agit_A05	-1,{
-OnInterIfInitOnce:
-	GetCastleData "aldeg_cas05",0,"::OnRecvCastleA05";
-	end;
-OnRecvCastleA05:
-	RequestGuildInfo GetCastleData("aldeg_cas05",1);
-	end;
-OnAgitStart:
-	callfunc "F_AgitStart","aldeg_cas05","A05",28,102;
-	end;
-OnAgitBreak:
-	callfunc "F_AgitBreak","aldeg_cas05","A05";
-	goto OnAgitEliminate;
-OnGuildBreak:
-	callfunc "F_GuildBreak","aldeg_cas05","A05";
-	end;
-OnAgitEliminate:
-	sleep getbattleflag("gvg_eliminate_time");
-	MapRespawnGuildID "aldeg_cas05",GetCastleData("aldeg_cas05",1),6;
-	sleep 6333-getbattleflag("gvg_eliminate_time");// wait for emp animation to end
-	Monster "aldeg_cas05",28,102,"Emperium",1288,1,"Agit_A05::OnAgitBreak";
-	end;
-OnAgitEnd:
-	callfunc "F_AgitEnd","aldeg_cas05","A05";
-	end;
-}

+ 0 - 276
npc/guild/aldeg/aldeg_flags.txt

@@ -1,276 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium Al De Baran Guild Flags
-//===== By: ==================================================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//===== Current Version: =====================================
-//= 1.5
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= WoE flag scripts.  Display guild emblems on flags.
-//===== Additional Comments: =================================
-//= v1.2 Optimized with functions.[kobra_k88]
-//= v1.3 Changed to iRO castle names [DracoRPG]
-//= v1.4 Can now only flag in from outside the castle [Kayla]
-//= V1.5 Town flags no longer show dialog, and fixed various flags. [L0ne__W0lf]
-//============================================================
-
-
-//================================================================================//
-// 					Castle 1
-//================================================================================//
-aldebaran,152,97,4	script	Neuschwanstein#a1-1::Neuschwanstein	722,{
-	callfunc "F_Flags","Al De Baran","aldeg_cas01",218,170,0,0;
-	close;
-
-OnRecvCastleA01:
-	FlagEmblem GetCastleData("aldeg_cas01",1);
-	end;
-}
-
-alde_gld,61,87,6	script	Neuschwanstein#a1-2::Neuschwanstein2	722,{
-	callfunc "F_Flags","Al De Baran","aldeg_cas01",218,170,1,1;
-	close;
-
-OnRecvCastleA01:
-	FlagEmblem GetCastleData("aldeg_cas01",1);
-	end;
-}
-
-aldeg_cas01,30,248,4	script	Neuschwanstein#a1-3::Neuschwanstein3	722,{
-	callfunc "F_Flags","Al De Baran","aldeg_cas01",218,170,0,1;
-	close;
-
-OnRecvCastleA01:
-	FlagEmblem GetCastleData("aldeg_cas01",1);
-	end;
-}
-
-// In Guild =============================================
-alde_gld,61,79,6	duplicate(Neuschwanstein2)	Neuschwanstein#a1-4	722
-alde_gld,45,87,8	duplicate(Neuschwanstein2)	Neuschwanstein#a1-5	722
-alde_gld,51,87,8	duplicate(Neuschwanstein2)	Neuschwanstein#a1-6	722
-// In Castle ============================================
-aldeg_cas01,30,246,4	duplicate(Neuschwanstein3)	Neuschwanstein#a1-7	722
-aldeg_cas01,37,248,4	duplicate(Neuschwanstein3)	Neuschwanstein#a1-8	722
-aldeg_cas01,37,246,4	duplicate(Neuschwanstein3)	Neuschwanstein#a1-9	722
-aldeg_cas01,95,80,2	duplicate(Neuschwanstein3)	Neuschwanstein#a1-10	722
-aldeg_cas01,95,59,2	duplicate(Neuschwanstein3)	Neuschwanstein#a1-11	722
-aldeg_cas01,62,75,2	duplicate(Neuschwanstein3)	Neuschwanstein#a1-12	722
-aldeg_cas01,70,75,2	duplicate(Neuschwanstein3)	Neuschwanstein#a1-13	722
-aldeg_cas01,74,75,2	duplicate(Neuschwanstein3)	Neuschwanstein#a1-14	722
-aldeg_cas01,62,64,2	duplicate(Neuschwanstein3)	Neuschwanstein#a1-15	722
-aldeg_cas01,66,64,2	duplicate(Neuschwanstein3)	Neuschwanstein#a1-16	722
-aldeg_cas01,70,64,2	duplicate(Neuschwanstein3)	Neuschwanstein#a1-17	722
-aldeg_cas01,74,64,2	duplicate(Neuschwanstein3)	Neuschwanstein#a1-18	722
-aldeg_cas01,203,150,4	duplicate(Neuschwanstein3)	Neuschwanstein#a1-19	722
-aldeg_cas01,210,150,4	duplicate(Neuschwanstein3)	Neuschwanstein#a1-20	722
-aldeg_cas01,66,75,2	duplicate(Neuschwanstein3)	Neuschwanstein#a1-21	722
-
-
-
-
-//================================================================================//
-// 					Castle 2
-//================================================================================//
-aldebaran,149,97,4	script	Hohenschwangau#a2-1::Hohenschwangau	722,{
-	callfunc "F_Flags","Al De Baran","aldeg_cas02",85,72,0,0;
-	close;
-
-OnRecvCastleA02:
-	FlagEmblem GetCastleData("aldeg_cas02",1);
-	end;
-}
-
-alde_gld,99,251,4	script	Hohenschwangau#a2-2::Hohenschwangau2	722,{
-	callfunc "F_Flags","Al De Baran","aldeg_cas02",85,72,1,1;
-	close;
-
-OnRecvCastleA02:
-	FlagEmblem GetCastleData("aldeg_cas02",1);
-	end;
-}
-
-aldeg_cas02,82,71,2	script	Hohenschwangau#a2-3::Hohenschwangau3	722,{
-	callfunc "F_Flags","Al De Baran","aldeg_cas02",85,72,0,1;
-	close;
-
-OnRecvCastleA02:
-	FlagEmblem GetCastleData("aldeg_cas02",1);
-	end;
-}
-
-// In Guild =================================================
-alde_gld,99,244,4	duplicate(Hohenschwangau2)	Hohenschwangau#a2-4	722
-// In Castle =============================================
-aldeg_cas02,67,30,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-5	722
-aldeg_cas02,183,140,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-6	722
-aldeg_cas02,212,152,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-7	722
-aldeg_cas02,108,39,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-8	722
-aldeg_cas02,57,213,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-9	722
-aldeg_cas02,91,181,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-10	722
-aldeg_cas02,103,53,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-11	722
-aldeg_cas02,73,53,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-12	722
-aldeg_cas02,63,41,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-13	722
-aldeg_cas02,229,6,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-14	722
-aldeg_cas02,230,40,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-15	722
-aldeg_cas02,197,40,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-16	722
-aldeg_cas02,32,213,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-17	722
-aldeg_cas02,121,29,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-18	722
-
-
-
-
-//================================================================================//
-// 					Castle 3
-//================================================================================//
-aldebaran,134,97,4	script	Nuenberg#a3-1::Nuenberg	722,{
-	callfunc "F_Flags","Al De Baran","aldeg_cas03",118,76,0,0;
-	close;
-
-OnRecvCastleA03:
-	FlagEmblem GetCastleData("aldeg_cas03",1);
-	end;
-}
-
-alde_gld,138,82,0	script	Nuenberg#a3-2::Nuenberg2	722,{
-	callfunc "F_Flags","Al De Baran","aldeg_cas03",118,76,1,1;
-	close;
-
-OnRecvCastleA03:
-	FlagEmblem GetCastleData("aldeg_cas03",1);
-	end;
-}
-
-aldeg_cas03,176,175,2	script	Nuenberg#a3-3::Nuenberg3	722,{
-	callfunc "F_Flags","Al De Baran","aldeg_cas03",118,76,0,1;
-	close;
-
-OnRecvCastleA03:
-	FlagEmblem GetCastleData("aldeg_cas03",1);
-	end;
-}
-
-// In Guild  ===============================================
-alde_gld,146,82,0	duplicate(Nuenberg2)	Nuenberg#a3-4	722
-// In Castle =============================================
-aldeg_cas03,77,115,2	duplicate(Nuenberg3)	Nuenberg#a3-5	722
-aldeg_cas03,77,215,2	duplicate(Nuenberg3)	Nuenberg#a3-6	722
-aldeg_cas03,112,107,2	duplicate(Nuenberg3)	Nuenberg#a3-7	722
-aldeg_cas03,112,117,2	duplicate(Nuenberg3)	Nuenberg#a3-8	722
-aldeg_cas03,69,71,2	duplicate(Nuenberg3)	Nuenberg#a3-9	722
-aldeg_cas03,91,69,2	duplicate(Nuenberg3)	Nuenberg#a3-10	722
-aldeg_cas03,108,60,2	duplicate(Nuenberg3)	Nuenberg#a3-11	722
-aldeg_cas03,121,73,2	duplicate(Nuenberg3)	Nuenberg#a3-12	722
-aldeg_cas03,121,73,2	duplicate(Nuenberg3)	Nuenberg#a3-13	722
-aldeg_cas03,75,102,2	duplicate(Nuenberg3)	Nuenberg#a3-14	722
-aldeg_cas03,199,169,2	duplicate(Nuenberg3)	Nuenberg#a3-15	722
-aldeg_cas03,181,179,2	duplicate(Nuenberg3)	Nuenberg#a3-16	722
-aldeg_cas03,192,44,2	duplicate(Nuenberg3)	Nuenberg#a3-17	722
-aldeg_cas03,208,145,2	duplicate(Nuenberg3)	Nuenberg#a3-18	722
-aldeg_cas03,207,75,2	duplicate(Nuenberg3)	Nuenberg#a3-19	722
-aldeg_cas03,96,62,2	duplicate(Nuenberg3)	Nuenberg#a3-20	722
-
-
-
-
-//================================================================================//
-// 					Castle 4
-//================================================================================//
-aldebaran,131,97,4	script	Wuerzburg#a4-1::Wuerzburg	722,{
-	callfunc "F_Flags","Al De Baran","aldeg_cas04",45,88,0,0;
-	close;
-
-OnRecvCastleA04:
-	FlagEmblem GetCastleData("aldeg_cas04",1);
-	end;
-}
-
-alde_gld,239,246,2	script	Wuerzburg#a4-2::Wuerzburg2	722,{
-	callfunc "F_Flags","Al De Baran","aldeg_cas04",45,88,1,1;
-	close;
-
-OnRecvCastleA04:
-	FlagEmblem GetCastleData("aldeg_cas04",1);
-	end;
-}
-
-aldeg_cas04,167,61,2	script	Wuerzburg#a4-3::Wuerzburg3	722,{
-	callfunc "F_Flags","Al De Baran","aldeg_cas04",45,88,0,1;
-	close;
-
-OnRecvCastleA04:
-	FlagEmblem GetCastleData("aldeg_cas04",1);
-	end;
-}
-// In Guild  ===============================================
-alde_gld,239,239,2	duplicate(Wuerzburg2)	Wuerzburg#a4-4	722
-// In Castle =============================================
-aldeg_cas04,164,90,2	duplicate(Wuerzburg3)	Wuerzburg#a4-5	722
-aldeg_cas04,129,193,2	duplicate(Wuerzburg3)	Wuerzburg#a4-6	722
-aldeg_cas04,112,206,2	duplicate(Wuerzburg3)	Wuerzburg#a4-7	722
-aldeg_cas04,113,212,2	duplicate(Wuerzburg3)	Wuerzburg#a4-8	722
-aldeg_cas04,77,117,2	duplicate(Wuerzburg3)	Wuerzburg#a4-9	722
-aldeg_cas04,186,42,2	duplicate(Wuerzburg3)	Wuerzburg#a4-10	722
-aldeg_cas04,30,69,2	duplicate(Wuerzburg3)	Wuerzburg#a4-11	722
-aldeg_cas04,55,97,2	duplicate(Wuerzburg3)	Wuerzburg#a4-12	722
-aldeg_cas04,45,98,2	duplicate(Wuerzburg3)	Wuerzburg#a4-13	722
-aldeg_cas04,33,116,2	duplicate(Wuerzburg3)	Wuerzburg#a4-14	722
-aldeg_cas04,130,180,2	duplicate(Wuerzburg3)	Wuerzburg#a4-15	722
-aldeg_cas04,129,193,2	duplicate(Wuerzburg3)	Wuerzburg#a4-16	722
-aldeg_cas04,33,107,2	duplicate(Wuerzburg3)	Wuerzburg#a4-17	722
-aldeg_cas04,133,220,2	duplicate(Wuerzburg3)	Wuerzburg#a4-18	722
-aldeg_cas04,169,22,2	duplicate(Wuerzburg3)	Wuerzburg#a4-19	722
-aldeg_cas04,169,15,2	duplicate(Wuerzburg3)	Wuerzburg#a4-20	722
-
-
-
-
-//================================================================================//
-// 					Castle 5
-//================================================================================//
-aldebaran,128,97,4	script	Rothenburg#a5-1::Rothenburg	722,{
-	callfunc "F_Flags","Al De Baran","aldeg_cas05",31,190,0,0;
-	close;
-
-OnRecvCastleA05:
-	FlagEmblem GetCastleData("aldeg_cas05",1);
-	end;
-}
-
-alde_gld,265,93,6	script	Rothenburg#a5-2::Rothenburg2	722,{
-	callfunc "F_Flags","Al De Baran","aldeg_cas05",31,190,1,1;
-	close;
-
-OnRecvCastleA05:
-	FlagEmblem GetCastleData("aldeg_cas05",1);
-	end;
-}
-
-aldeg_cas05,170,85,2	script	Rothenburg#a5-3::Rothenburg3	722,{
-	callfunc "F_Flags","Al De Baran","aldeg_cas05",31,190,0,1;
-	close;
-
-OnRecvCastleA05:
-	FlagEmblem GetCastleData("aldeg_cas05",1);
-	end;
-}
-
-// In Guild  ===============================================
-alde_gld,265,87,6	duplicate(Rothenburg2)	Rothenburg#a5-4	722
-// In Castle =============================================
-aldeg_cas05,142,212,2	duplicate(Rothenburg3)	Rothenburg#a5-5	722
-aldeg_cas05,149,196,2	duplicate(Rothenburg3)	Rothenburg#a5-6	722
-aldeg_cas05,41,180,2	duplicate(Rothenburg3)	Rothenburg#a5-7	722
-aldeg_cas05,38,201,2	duplicate(Rothenburg3)	Rothenburg#a5-8	722
-aldeg_cas05,65,182,2	duplicate(Rothenburg3)	Rothenburg#a5-9	722
-aldeg_cas05,65,205,2	duplicate(Rothenburg3)	Rothenburg#a5-10	722
-aldeg_cas05,10,218,2	duplicate(Rothenburg3)	Rothenburg#a5-11	722
-aldeg_cas05,164,201,2	duplicate(Rothenburg3)	Rothenburg#a5-12	722
-aldeg_cas05,14,117,2	duplicate(Rothenburg3)	Rothenburg#a5-14	722
-aldeg_cas05,10,225,2	duplicate(Rothenburg3)	Rothenburg#a5-15	722
-aldeg_cas05,187,59,2	duplicate(Rothenburg3)	Rothenburg#a5-16	722
-aldeg_cas05,154,51,2	duplicate(Rothenburg3)	Rothenburg#a5-17	722
-aldeg_cas05,22,211,2	duplicate(Rothenburg3)	Rothenburg#a5-18	722
-aldeg_cas05,150,202,2	duplicate(Rothenburg3)	Rothenburg#a5-19	722

+ 0 - 115
npc/guild/aldeg/aldeg_guardians.txt

@@ -1,115 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium - aldeg_cas guardians script
-//===== By: ==================================================
-//= holyAngelX (1.0)
-//===== Current Version: =====================================
-//= 1.2a
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= Re-spawns guardians on server start if they have been
-//= purchased.  Also announces when a guardian dies.
-//===== Additional Comments: =================================
-//= 1.1 by joedukk
-//= 1.2 by Akaru and Valaris
-//= 1.2a Guardians for all aldeg castles are now in this file.
-//= Minor optimizations.[kobra_k88]
-//= 1.3 Corrected what guardians will spawn, and where. [L0ne_W0lf]
-//=	All guardians will now die when OnAgiInit is run.
-//=	Removed announcment for when a guardian dies.
-//============================================================
-
-
-aldeg_cas01,216,24,0	script	Guardian_A01	-1,{
-OnAgitInit:
-	killmonster "aldeg_cas01","Guardian_A01::OnGuardianDied";
-	if (GetCastleData("aldeg_cas01",10) == 1) guardian "aldeg_cas01",17,218,"Guardian Soldier",1287,"Guardian_A01::OnGuardianDied",0;
-	if (GetCastleData("aldeg_cas01",11) == 1) guardian "aldeg_cas01",39,208,"Guardian Archer",1285,"Guardian_A01::OnGuardianDied",1;
-	if (GetCastleData("aldeg_cas01",12) == 1) guardian "aldeg_cas01",38,196,"Guardian Archer",1285,"Guardian_A01::OnGuardianDied",2;
-	if (GetCastleData("aldeg_cas01",13) == 1) guardian "aldeg_cas01",45,228,"Guardian Archer",1285,"Guardian_A01::OnGuardianDied",3;
-	if (GetCastleData("aldeg_cas01",14) == 1) guardian "aldeg_cas01",21,194,"Guardian Archer",1285,"Guardian_A01::OnGuardianDied",4;
-	if (GetCastleData("aldeg_cas01",15) == 1) guardian "aldeg_cas01",218,24,"Guardian Knight",1286,"Guardian_A01::OnGuardianDied",5;
-	if (GetCastleData("aldeg_cas01",16) == 1) guardian "aldeg_cas01",213,24,"Guardian Knight",1286,"Guardian_A01::OnGuardianDied",6;
-	if (GetCastleData("aldeg_cas01",17) == 1) guardian "aldeg_cas01",73,70,"Guardian Knight",1286,"Guardian_A01::OnGuardianDied",7;
-	end;
-
-OnGuardianDied:
-	// Event when Guardian dies
-	end;
-}
-
-//------------------------------------------------------------------------------
-aldeg_cas02,214,24,0	script	Guardian_A02	-1,{
-OnAgitInit:
-	killmonster "aldeg_cas02","Guardian_A02::OnGuardianDied";
-	if (GetCastleData("aldeg_cas02",10) == 1) guardian "aldeg_cas02",27,184,"Guardian Knight",1286,"Guardian_A02::OnGuardianDied",0;
-	if (GetCastleData("aldeg_cas02",11) == 1) guardian "aldeg_cas02",88,43,"Guardian Knight",1286,"Guardian_A02::OnGuardianDied",1;
-	if (GetCastleData("aldeg_cas02",12) == 1) guardian "aldeg_cas02",117,46,"Guardian Knight",1286,"Guardian_A02::OnGuardianDied",2;
-	if (GetCastleData("aldeg_cas02",13) == 1) guardian "aldeg_cas02",60,202,"Guardian Soldier",1287,"Guardian_A02::OnGuardianDied",3;
-	if (GetCastleData("aldeg_cas02",14) == 1) guardian "aldeg_cas02",51,183,"Guardian Soldier",1287,"Guardian_A02::OnGuardianDied",4;
-	if (GetCastleData("aldeg_cas02",15) == 1) guardian "aldeg_cas02",21,177,"Guardian Archer",1285,"Guardian_A02::OnGuardianDied",5;
-	if (GetCastleData("aldeg_cas02",16) == 1) guardian "aldeg_cas02",36,183,"Guardian Archer",1285,"Guardian_A02::OnGuardianDied",6;
-	if (GetCastleData("aldeg_cas02",17) == 1) guardian "aldeg_cas02",210,7,"Guardian Archer",1285,"Guardian_A02::OnGuardianDied",7;
-	end;
-
-OnGuardianDied:
-	// Event when Guardian dies
-	end;
-}
-
-//------------------------------------------------------------------------------
-aldeg_cas03,206,32,0	script	Guardian_A03	-1,{
-OnAgitInit:
-	killmonster "aldeg_cas03","Guardian_A03::OnGuardianDied";
-	if (GetCastleData("aldeg_cas03",10) == 1) guardian "aldeg_cas03",90,112,"Guardian Knight",1286,"Guardian_A03::OnGuardianDied",0;
-	if (GetCastleData("aldeg_cas03",11) == 1) guardian "aldeg_cas03",116,112,"Guardian Knight",1286,"Guardian_A03::OnGuardianDied",1;
-	if (GetCastleData("aldeg_cas03",12) == 1) guardian "aldeg_cas03",86,120,"Guardian Soldier",1287,"Guardian_A03::OnGuardianDied",2;
-	if (GetCastleData("aldeg_cas03",13) == 1) guardian "aldeg_cas03",116,76,"Guardian Soldier",1287,"Guardian_A03::OnGuardianDied",3;
-	if (GetCastleData("aldeg_cas03",14) == 1) guardian "aldeg_cas03",64,103,"Guardian Soldier",1287,"Guardian_A03::OnGuardianDied",4;
-	if (GetCastleData("aldeg_cas03",15) == 1) guardian "aldeg_cas03",212,160,"Guardian Archer",1285,"Guardian_A03::OnGuardianDied",5;
-	if (GetCastleData("aldeg_cas03",16) == 1) guardian "aldeg_cas03",195,151,"Guardian Archer",1285,"Guardian_A03::OnGuardianDied",6;
-	if (GetCastleData("aldeg_cas03",17) == 1) guardian "aldeg_cas03",110,217,"Guardian Archer",1285,"Guardian_A03::OnGuardianDied",7;
-	end;
-
-OnGuardianDied:
-	// Event when Guardian dies
-	end;
-}
-
-//------------------------------------------------------------------------------
-aldeg_cas04,36,218,0	script	Guardian_A04	-1,{
-OnAgitInit:
-	killmonster "aldeg_cas04","Guardian_A04::OnGuardianDied";
-	if (GetCastleData("aldeg_cas04",10) == 1) guardian "aldeg_cas04",187,100,"Guardian Archer",1285,"Guardian_A04::OnGuardianDied",0;
-	if (GetCastleData("aldeg_cas04",11) == 1) guardian "aldeg_cas04",192,42,"Guardian Archer",1285,"Guardian_A04::OnGuardianDied",1;
-	if (GetCastleData("aldeg_cas04",12) == 1) guardian "aldeg_cas04",148,88,"Guardian Archer",1285,"Guardian_A04::OnGuardianDied",2;
-	if (GetCastleData("aldeg_cas04",13) == 1) guardian "aldeg_cas04",145,209,"Guardian Soldier",1287,"Guardian_A04::OnGuardianDied",3;
-	if (GetCastleData("aldeg_cas04",14) == 1) guardian "aldeg_cas04",169,53,"Guardian Soldier",1287,"Guardian_A04::OnGuardianDied",4;
-	if (GetCastleData("aldeg_cas04",15) == 1) guardian "aldeg_cas04",198,77,"Guardian Soldier",1287,"Guardian_A04::OnGuardianDied",5;
-	if (GetCastleData("aldeg_cas04",16) == 1) guardian "aldeg_cas04",48,72,"Guardian Knight",1286,"Guardian_A04::OnGuardianDied",6;
-	if (GetCastleData("aldeg_cas04",17) == 1) guardian "aldeg_cas04",55,88,"Guardian Knight",1286,"Guardian_A04::OnGuardianDied",7;
-	end;
-
-OnGuardianDied:
-	// Event when Guardian dies
-	end;
-}
-
-//------------------------------------------------------------------------------
-aldeg_cas05,28,102,0	script	Guardian_A05	-1,{
-OnAgitInit:
-	killmonster "aldeg_cas05","Guardian_A05::OnGuardianDied";
-	if (GetCastleData("aldeg_cas05",10) == 1) guardian "aldeg_cas05",51,202,"Guardian Archer",1285,"Guardian_A05::OnGuardianDied",0;
-	if (GetCastleData("aldeg_cas05",11) == 1) guardian "aldeg_cas05",188,79,"Guardian Archer",1285,"Guardian_A05::OnGuardianDied",1;
-	if (GetCastleData("aldeg_cas05",12) == 1) guardian "aldeg_cas05",157,192,"Guardian Soldier",1287,"Guardian_A05::OnGuardianDied",2;
-	if (GetCastleData("aldeg_cas05",13) == 1) guardian "aldeg_cas05",157,74,"Guardian Soldier",1287,"Guardian_A05::OnGuardianDied",3;
-	if (GetCastleData("aldeg_cas05",14) == 1) guardian "aldeg_cas05",27,221,"Guardian Knight",1286,"Guardian_A05::OnGuardianDied",4;
-	if (GetCastleData("aldeg_cas05",15) == 1) guardian "aldeg_cas05",145,78,"Guardian Knight",1286,"Guardian_A05::OnGuardianDied",5;
-	if (GetCastleData("aldeg_cas05",16) == 1) guardian "aldeg_cas05",156,73,"Guardian Knight",1286,"Guardian_A05::OnGuardianDied",6;
-	if (GetCastleData("aldeg_cas05",17) == 1) guardian "aldeg_cas05",41,112,"Guardian Knight",1286,"Guardian_A05::OnGuardianDied",7;
-	end;
-
-OnGuardianDied:
-	// Event when Guardian dies
-	end;
-}

+ 0 - 62
npc/guild/aldeg/aldeg_kafras.txt

@@ -1,62 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium Kafras for Al De Baran Guild Castles
-//===== By: ==================================================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//===== Current Version: =====================================
-//= 1.3
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= Provides Kafra Staffs for guild members of Al De Baran Castles.
-//= Used in conjuction with function F_Kafra.
-//===== Additional Comments: =================================
-//= v1.2 Optimized with functions.[kobra_k88]
-//= v1.3 Changed "Kafra Service" to "Kafra Staff" [L0ne_W0lf]
-//============================================================
-
-
-// Castle 1 ===============================================
-aldeg_cas01,218,170,0	script	Kafra Staff#A01	117,{
-	callfunc "F_GKafra", "aldeg_cas01", "Al De Baran";
-	end;
-OnRecvCastleA01:
-	if (GetCastleData("aldeg_cas01",9) < 1) disablenpc "Kafra Staff#A01";
-	end;
-}
-
-// Castle 2 ===============================================
-aldeg_cas02,84,74,0	script	Kafra Staff#A02	117,{
-	callfunc "F_GKafra", "aldeg_cas02", "Al De Baran";
-	end;
-OnRecvCastleA02:
-	if (GetCastleData("aldeg_cas02",9) < 1) disablenpc "Kafra Staff#A02";
-	end;
-}
-
-// Castle 3 ===============================================
-aldeg_cas03,118,76,0	script	Kafra Staff#A03	117,{
-	callfunc "F_GKafra", "aldeg_cas03", "Al De Baran";
-	end;
-OnRecvCastleA03:
-	if (GetCastleData("aldeg_cas03",9) < 1) disablenpc "Kafra Staff#A03";
-	end;
-}
-
-// Castle 4 ===============================================
-aldeg_cas04,45,88,0	script	Kafra Staff#A04	117,{
-	callfunc "F_GKafra", "aldeg_cas04", "Al De Baran";
-	end;
-OnRecvCastleA04:
-	if (GetCastleData("aldeg_cas04",9) < 1) disablenpc "Kafra Staff#A04";
-	end;
-}
-
-// Castle 5 ===============================================
-aldeg_cas05,31,190,0	script	Kafra Staff#A05	117,{
-	callfunc "F_GKafra", "aldeg_cas05", "Al De Baran";
-	end;
-OnRecvCastleA05:
-	if (GetCastleData("aldeg_cas05",9) < 1) disablenpc "Kafra Staff#A05";
-	end;
-}

+ 0 - 103
npc/guild/aldeg/aldeg_managers.txt

@@ -1,103 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium Managers for Al De Baran Guild Castles
-//===== By: ==================================================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//===== Current Version: =====================================
-//= 1.5a
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//=
-//===== Additional Comments: =================================
-//= v1.2 Optimized with functions.[kobra_k88]
-//= 1.3 Removed Duplicates [Silent]
-//= 1.4 Updated Guardian positions and types. [L0ne_W0lf]
-//=	Updated manager names, and some additional info
-//= 1.5 Corrected aldeg_cas02 treasure room coordinates. [L0ne_W0lf]
-//= 1.5a Another bug fix in an NPC that magically broke. [L0ne_W0lf]
-//============================================================
-
-// Castle 1 ==================================================================================
-aldeg_cas01,218,175,0	script	Alfredo#alde1	55,{
-
-	if(callfunc("F_GldManager","Steward Alfredo","aldeg_cas01",113,223,"A01") == 0) close;
-	
-	if (@GDnum == 10) guardian "aldeg_cas01",17,218,"Guardian Soldier",1287,"Guardian_A01::OnGuardianDied",0;
-	if (@GDnum == 11) guardian "aldeg_cas01",39,208,"Guardian Archer",1285,"Guardian_A01::OnGuardianDied",1;
-	if (@GDnum == 12) guardian "aldeg_cas01",38,196,"Guardian Archer",1285,"Guardian_A01::OnGuardianDied",2;
-	if (@GDnum == 13) guardian "aldeg_cas01",45,228,"Guardian Archer",1285,"Guardian_A01::OnGuardianDied",3;
-	if (@GDnum == 14) guardian "aldeg_cas01",21,194,"Guardian Archer",1285,"Guardian_A01::OnGuardianDied",4;
-	if (@GDnum == 15) guardian "aldeg_cas01",218,24,"Guardian Knight",1286,"Guardian_A01::OnGuardianDied",5;
-	if (@GDnum == 16) guardian "aldeg_cas01",213,24,"Guardian Knight",1286,"Guardian_A01::OnGuardianDied",6;
-	if (@GDnum == 17) guardian "aldeg_cas01",73,70,"Guardian Knight",1286,"Guardian_A01::OnGuardianDied",7;
-	close;
-}
-
-
-// Castle 2 ==================================================================================
-aldeg_cas02,78,74,0	script	Chenchenlie#alde2	55,{
-
-	if(callfunc("F_GldManager","Steward Chenchenlie","aldeg_cas02",134,225,"A02") == 0) close;
-
-	if (@GDnum == 10) guardian "aldeg_cas02",27,184,"Guardian Knight",1286,"Guardian_A02::OnGuardianDied",0;
-	if (@GDnum == 11) guardian "aldeg_cas02",88,43,"Guardian Knight",1286,"Guardian_A02::OnGuardianDied",1;
-	if (@GDnum == 12) guardian "aldeg_cas02",117,46,"Guardian Knight",1286,"Guardian_A02::OnGuardianDied",2;
-	if (@GDnum == 13) guardian "aldeg_cas02",60,202,"Guardian Soldier",1287,"Guardian_A02::OnGuardianDied",3;
-	if (@GDnum == 14) guardian "aldeg_cas02",51,183,"Guardian Soldier",1287,"Guardian_A02::OnGuardianDied",4;
-	if (@GDnum == 15) guardian "aldeg_cas02",21,177,"Guardian Archer",1285,"Guardian_A02::OnGuardianDied",5;
-	if (@GDnum == 16) guardian "aldeg_cas02",36,183,"Guardian Archer",1285,"Guardian_A02::OnGuardianDied",6;
-	if (@GDnum == 17) guardian "aldeg_cas02",210,7,"Guardian Archer",1285,"Guardian_A02::OnGuardianDied",7;
-	close;
-}
-
-
-// Castle 3 ==================================================================================
-aldeg_cas03,110,118,0	script	Nahzarf#alde3	55,{
-
-	if(callfunc("F_GldManager","Chen Lee","aldeg_cas03",229,267,"A03") == 0) close;
-
-	if (@GDnum == 10) guardian "aldeg_cas03",90,112,"Guardian Knight",1286,"Guardian_A03::OnGuardianDied",0;
-	if (@GDnum == 11) guardian "aldeg_cas03",116,112,"Guardian Knight",1286,"Guardian_A03::OnGuardianDied",1;
-	if (@GDnum == 12) guardian "aldeg_cas03",86,120,"Guardian Soldier",1287,"Guardian_A03::OnGuardianDied",2;
-	if (@GDnum == 13) guardian "aldeg_cas03",116,76,"Guardian Soldier",1287,"Guardian_A03::OnGuardianDied",3;
-	if (@GDnum == 14) guardian "aldeg_cas03",64,103,"Guardian Soldier",1287,"Guardian_A03::OnGuardianDied",4;
-	if (@GDnum == 15) guardian "aldeg_cas03",212,160,"Guardian Archer",1285,"Guardian_A03::OnGuardianDied",5;
-	if (@GDnum == 16) guardian "aldeg_cas03",195,151,"Guardian Archer",1285,"Guardian_A03::OnGuardianDied",6;
-	if (@GDnum == 17) guardian "aldeg_cas03",110,217,"Guardian Archer",1285,"Guardian_A03::OnGuardianDied",7;
-	close;
-}
-
-
-// Castle 4 ==================================================================================
-aldeg_cas04,67,116,0	script	Brymhensen#alde4	55,{
-
-	if(callfunc("F_GldManager","Steward Brymhensen","aldeg_cas04",83,17,"A04") == 0) close;
-
-	if (@GDnum == 10) guardian "aldeg_cas04",187,100,"Guardian Archer",1285,"Guardian_A04::OnGuardianDied",0;
-	if (@GDnum == 11) guardian "aldeg_cas04",192,42,"Guardian Archer",1285,"Guardian_A04::OnGuardianDied",1;
-	if (@GDnum == 12) guardian "aldeg_cas04",148,88,"Guardian Archer",1285,"Guardian_A04::OnGuardianDied",2;
-	if (@GDnum == 13) guardian "aldeg_cas04",145,209,"Guardian Soldier",1287,"Guardian_A04::OnGuardianDied",3;
-	if (@GDnum == 14) guardian "aldeg_cas04",169,53,"Guardian Soldier",1287,"Guardian_A04::OnGuardianDied",4;
-	if (@GDnum == 15) guardian "aldeg_cas04",198,77,"Guardian Soldier",1287,"Guardian_A04::OnGuardianDied",5;
-	if (@GDnum == 16) guardian "aldeg_cas04",48,72,"Guardian Knight",1286,"Guardian_A04::OnGuardianDied",6;
-	if (@GDnum == 17) guardian "aldeg_cas04",55,88,"Guardian Knight",1286,"Guardian_A04::OnGuardianDied",7;
-	close;
-}
-
-
-// Castle 5 ==================================================================================
-aldeg_cas05,52,179,0	script	Blemhemsen#alde5	55,{
-
-	if(callfunc("F_GldManager","Steward Blemhemsen","aldeg_cas05",64,8,"A05") == 0) close;
-
-	if (@GDnum == 10) guardian "aldeg_cas05",51,202,"Guardian Archer",1285,"Guardian_A05::OnGuardianDied",0;
-	if (@GDnum == 11) guardian "aldeg_cas05",188,79,"Guardian Archer",1285,"Guardian_A05::OnGuardianDied",1;
-	if (@GDnum == 12) guardian "aldeg_cas05",157,192,"Guardian Soldier",1287,"Guardian_A05::OnGuardianDied",2;
-	if (@GDnum == 13) guardian "aldeg_cas05",157,74,"Guardian Soldier",1287,"Guardian_A05::OnGuardianDied",3;
-	if (@GDnum == 14) guardian "aldeg_cas05",27,221,"Guardian Knight",1286,"Guardian_A05::OnGuardianDied",4;
-	if (@GDnum == 15) guardian "aldeg_cas05",145,78,"Guardian Knight",1286,"Guardian_A05::OnGuardianDied",5;
-	if (@GDnum == 16) guardian "aldeg_cas05",156,73,"Guardian Knight",1286,"Guardian_A05::OnGuardianDied",6;
-	if (@GDnum == 17) guardian "aldeg_cas05",41,112,"Guardian Knight",1286,"Guardian_A05::OnGuardianDied",7;
-	close;
-}

+ 0 - 173
npc/guild/aldeg/aldeg_treas.txt

@@ -1,173 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium Treasure Rooms for Al De Baran Guild Castles
-//===== By: ==================================================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//===== Current Version: =====================================
-//= 1.3
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//=
-//===== Additional Comments: =================================
-//= v1.2 Optimized with functions.[kobra_k88]
-//= 1.3 Removed announces when you open chests. [L0ne_W0lf]
-//============================================================
-
-
-//<=============================== Castle 1 =================================>\\
-
-// Treasure Spawn -----------------------
-aldeg_cas01,1,1,1	script	Treasure_A01	-1,{
-
-OnRecvCastleA01:
-	end;
-OnInit:
-	if($boxNumA01 == 0) end;
-	set $@bxA01, $boxNumA01;
-	callfunc "F_GldTreas","aldeg_cas01","A01",$boxNumA01,$@bxA01,$@boxIdA01,1324,114,218,123,227,1;
-	end;
-
-OnDied:
-	set $boxNumA01, $boxNumA01 -1;
-	end;
-}
-
-// Treasure Room Switch --------------------
-aldeg_cas01,123,223,0	script	Switch#TresA01	111,{
-	callfunc "F_GldTreasSw", "aldeg_cas01",218,176;
-	end;
-}
-
-// Treasure Room Protection ------------------------------------------------
-aldeg_cas01,118,223,0	script	ban_warp#11	-1,8,8,{
-OnTouch:
-	callfunc "F_TreasProtect", "aldeg_cas01", "aldebaran",143,112;
-	end;
-}
-
-//<================================ Castle 2 ================================>\\
-
-// Treasure Spawn ----------------------------
-aldeg_cas02,1,1,1	script	Treasure_A02	-1,{
-
-OnRecvCastleA02:
-	end;
-OnInit:
-	if($boxNumA02 == 0) end;
-	set $@bxA02, $boxNumA02;
-	callfunc "F_GldTreas","aldeg_cas02","A02",$boxNumA02,$@bxA02,$@boxIdA02,1326,130,226,138,235,1;
-	end;
-
-OnDied:
-	set $boxNumA02, $boxNumA02 -1;
-	end;
-}
-
-// Treasure Room Switch ----------------------
-aldeg_cas02,139,235,0	script	Switch#TresA02	111,{
-	callfunc "F_GldTreasSw", "aldeg_cas02",78,75;
-	end;
-}
-
-
-// Treasure Room Protection ------------------------------------------------
-aldeg_cas02,135,230,0	script	ban_warp#12	-1,8,8,{
-OnTouch:
-	callfunc "F_TreasProtect", "aldeg_cas02", "aldebaran",143,112;
-	end;
-}
-
-//<================================ Castle 3 ================================>\\
-
-// Treasure Spawn ---------------------------
-aldeg_cas03,1,1,1	script	Treasure_A03	-1,{
-
-OnRecvCastleA03:
-	end;
-OnInit:
-	if($boxNumA03 == 0) end;
-	set $@bxA03, $boxNumA03;
-	callfunc "F_GldTreas","aldeg_cas03","A03",$boxNumA03,$@bxA03,$@boxIdA03,1328,220,264,229,273,1;
-	end;
-
-OnDied:
-	set $boxNumA03, $boxNumA03 -1;
-	end;
-}
-
-// Treasure Room Switch -----------------------
-aldeg_cas03,229,267,0	script	Switch#TresA03	111,{
-	callfunc "F_GldTreasSw", "aldeg_cas03",110,119;
-	end;
-}
-
-// Treasure Room Protection ------------------------------------------------
-aldeg_cas03,225,269,0	script	ban_warp#13	-1,8,8,{
-OnTouch:
-	callfunc "F_TreasProtect", "aldeg_cas03", "aldebaran",143,112;
-	end;
-}
-
-//<================================ Castle 4 ================================>\\
-
-// Treasure Spawn -------------------------------
-aldeg_cas04,1,1,1	script	Treasure_A04	-1,{
-
-OnRecvCastleA04:
-	end;
-OnInit:
-	if($boxNumA04 == 0) end;
-	set $@bxA04, $boxNumA04;
-	callfunc "F_GldTreas","aldeg_cas04","A04",$boxNumA04,$@bxA04,$@boxIdA04,1330,80,8,89,17,1;
-	end;
-
-OnDied:
-	set $boxNumA04, $boxNumA04 -1;
-	end;
-
-}
-// Treasure Room Switch -------------------------
-aldeg_cas04,83,17,0	script	Switch#TresA04	111,{
-	callfunc "F_GldTreasSw", "aldeg_cas04",67,117;
-	end;
-}
-
-// Treasure Room Protection ------------------------------------------------
-aldeg_cas04,84,13,0	script	ban_warp#14	-1,8,8,{
-OnTouch:
-	callfunc "F_TreasProtect", "aldeg_cas04", "aldebaran",143,112;
-	end;
-}
-
-//<================================ Castle 5 ================================>\\
-
-// Treasure Spawn ------------------------------------
-aldeg_cas05,1,1,1	script	Treasure_A05	-1,{
-
-OnRecvCastleA05:
-	end;
-OnInit:
-	if($boxNumA05 == 0) end;
-	set $@bxA05, $boxNumA05;
-	callfunc "F_GldTreas","aldeg_cas05","A05",$boxNumA05,$@bxA05,$@boxIdA05,1332,58,8,65,15,1;
-	end;
-
-OnDied:
-	set $boxNumA05, $boxNumA05 -1;
-	end;
-}
-
-// Treasure Room Switch ---------------------------------
-aldeg_cas05,64,8,0	script	Switch#TresA05	111,{
-	callfunc "F_GldTreasSw", "aldeg_cas05",51,179;
-	end;
-}
-
-
-// Treasure Room Protection ------------------------------------------------
-aldeg_cas05,62,12,0	script	ban_warp#15	-1,8,8,{
-OnTouch:
-	callfunc "F_TreasProtect", "aldeg_cas05", "aldebaran",143,112;
-	end;
-}

+ 174 - 0
npc/guild/aldeg_cas01.txt

@@ -0,0 +1,174 @@
+//===== eAthena Script =======================================
+//= War of Emperium (Al De baran)
+//===== By: ==================================================
+//= L0ne_W0lf
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= NPCs that relate to Al De Baran Guild Castle 1
+//===== Additional Comments: =================================
+//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
+//============================================================
+
+// Guild Flag (Town)
+//============================================================
+aldebaran,152,97,4	script	Neuschwanstein#a1-1	722,{
+	end;
+
+OnRecvCastleA01:
+	FlagEmblem GetCastleData("aldeg_cas01",1);
+	end;
+}
+
+// Guild Flag (Outside Castle)
+//============================================================
+alde_gld,61,87,6	script	Neuschwanstein#a1-2::Neuschwanstein2	722,{
+	set .@GID, GetCastleData("aldeg_cas01",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		if (getcharid(2) == .@GID) {
+			mes "Brave ones...";
+			mes "Do you wish to return to your honorable place?";
+			next;
+			if (select("Return to the guild castle.:Quit.") == 1) {
+				if (getcharid(2) == GetCastleData("aldeg_cas01",1)) {
+					warp "aldeg_cas01",218,170;
+					end;
+				}
+			}
+			close;
+		}
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastleA01:
+	FlagEmblem GetCastleData("aldeg_cas01",1);
+	end;
+}
+
+alde_gld,61,79,6	duplicate(Neuschwanstein2)	Neuschwanstein#a1-3	722
+alde_gld,45,87,8	duplicate(Neuschwanstein2)	Neuschwanstein#a1-4	722
+alde_gld,51,87,8	duplicate(Neuschwanstein2)	Neuschwanstein#a1-5	722
+
+// Guild Flag (Inside Castle)
+//============================================================
+aldeg_cas01,30,248,4	script	Neuschwanstein#a1-6::Neuschwanstein3	722,{
+	set .@GID, GetCastleData("aldeg_cas01",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastleA01:
+	FlagEmblem GetCastleData("aldeg_cas01",1);
+	end;
+}
+
+aldeg_cas01,30,246,4	duplicate(Neuschwanstein3)	Neuschwanstein#a1-7	722
+aldeg_cas01,37,248,4	duplicate(Neuschwanstein3)	Neuschwanstein#a1-8	722
+aldeg_cas01,37,246,4	duplicate(Neuschwanstein3)	Neuschwanstein#a1-9	722
+aldeg_cas01,95,80,2	duplicate(Neuschwanstein3)	Neuschwanstein#a1-10	722
+aldeg_cas01,95,59,2	duplicate(Neuschwanstein3)	Neuschwanstein#a1-11	722
+aldeg_cas01,62,75,2	duplicate(Neuschwanstein3)	Neuschwanstein#a1-12	722
+aldeg_cas01,70,75,2	duplicate(Neuschwanstein3)	Neuschwanstein#a1-13	722
+aldeg_cas01,74,75,2	duplicate(Neuschwanstein3)	Neuschwanstein#a1-14	722
+aldeg_cas01,62,64,2	duplicate(Neuschwanstein3)	Neuschwanstein#a1-15	722
+aldeg_cas01,66,64,2	duplicate(Neuschwanstein3)	Neuschwanstein#a1-16	722
+aldeg_cas01,70,64,2	duplicate(Neuschwanstein3)	Neuschwanstein#a1-17	722
+aldeg_cas01,74,64,2	duplicate(Neuschwanstein3)	Neuschwanstein#a1-18	722
+aldeg_cas01,203,150,4	duplicate(Neuschwanstein3)	Neuschwanstein#a1-19	722
+aldeg_cas01,210,150,4	duplicate(Neuschwanstein3)	Neuschwanstein#a1-20	722
+aldeg_cas01,66,75,2	duplicate(Neuschwanstein3)	Neuschwanstein#a1-21	722
+
+// AGIT Manager
+//============================================================
+aldeg_cas01,216,24,0	duplicate(Gld_Agit_Manager)	Agit#aldeg_cas01	-1
+
+// Steward
+//============================================================
+aldeg_cas01,218,175,0	duplicate(Gld_Mngr_Template)	Alfredo#aldeg_cas01	55
+
+
+// Guardians
+//============================================================
+aldeg_cas01,218,175,0	duplicate(Gld_Guard_Template)	Guardian#aldeg_cas01	-1
+
+// Kafra Staff
+//============================================================
+aldeg_cas01,218,170,0	duplicate(Gld_Kafra_Template)	Kafra Staff#aldeg_cas01	117
+
+// Master's Room Exit
+//============================================================
+aldeg_cas01,123,223,0	script	#switch_A01	111,{
+	mes " ";
+	mes "There's a small lever. Will you pull it? ";
+	next;
+	switch(select("Pull.:Do not.")) {
+	case 1:
+		warp "aldeg_cas01",218,176;
+		break;
+	case 2:
+		break;
+	}
+	end;
+}
+
+// Guild Treasure Protection
+//============================================================
+aldeg_cas01,118,223,0	duplicate(Gld_Trea_Protect)	ban_warp#aldeg_cas01	-1,8,8
+
+// Guild Treasure Spawns
+//============================================================
+aldeg_cas01,118,223,0	duplicate(Gld_Trea_Spawn)	Treasure#aldeg_cas01	-1
+
+// Guild Dungeon Switch
+//============================================================
+aldeg_cas01,211,181,0	duplicate(Gld_Dun_Template)	#aldeg_cas01	111

+ 170 - 0
npc/guild/aldeg_cas02.txt

@@ -0,0 +1,170 @@
+//===== eAthena Script =======================================
+//= War of Emperium (Al De baran)
+//===== By: ==================================================
+//= L0ne_W0lf
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= NPCs that relate to Al De Baran Guild Castle 2
+//===== Additional Comments: =================================
+//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
+//============================================================
+
+// Guild Flag (Town)
+//============================================================
+aldebaran,149,97,4	script	Hohenschwangau#a2-1::Hohenschwangau	722,{
+	end;
+
+OnRecvCastleA02:
+	FlagEmblem GetCastleData("aldeg_cas02",1);
+	end;
+}
+
+// Guild Flag (Outside Castle)
+//============================================================
+alde_gld,99,251,4	script	Hohenschwangau#a2-2::Hohenschwangau2	722,{
+	set .@GID, GetCastleData("aldeg_cas02",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		if (getcharid(2) == .@GID) {
+			mes "Brave ones...";
+			mes "Do you wish to return to your honorable place?";
+			next;
+			if (select("Return to the guild castle.:Quit.") == 1) {
+				if (getcharid(2) == GetCastleData("aldeg_cas02",1)) {
+					warp "aldeg_cas02",85,72;
+					end;
+				}
+			}
+			close;
+		}
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastleA02:
+	FlagEmblem GetCastleData("aldeg_cas02",1);
+	end;
+}
+
+alde_gld,99,244,4	duplicate(Hohenschwangau2)	Hohenschwangau#a2-3	722
+
+// Guild Flag (Inside Castle)
+//============================================================
+aldeg_cas02,82,71,2	script	Hohenschwangau#a2-4::Hohenschwangau3	722,{
+	set .@GID, GetCastleData("aldeg_cas02",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastleA02:
+	FlagEmblem GetCastleData("aldeg_cas02",1);
+	end;
+}
+
+aldeg_cas02,67,30,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-5	722
+aldeg_cas02,183,140,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-6	722
+aldeg_cas02,212,152,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-7	722
+aldeg_cas02,108,39,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-8	722
+aldeg_cas02,57,213,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-9	722
+aldeg_cas02,91,181,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-10	722
+aldeg_cas02,103,53,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-11	722
+aldeg_cas02,73,53,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-12	722
+aldeg_cas02,63,41,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-13	722
+aldeg_cas02,229,6,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-14	722
+aldeg_cas02,230,40,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-15	722
+aldeg_cas02,197,40,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-16	722
+aldeg_cas02,32,213,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-17	722
+aldeg_cas02,121,29,2	duplicate(Hohenschwangau3)	Hohenschwangau#a2-18	722
+
+// AGIT Manager
+//============================================================
+aldeg_cas02,214,24,0	duplicate(Gld_Agit_Manager)	Agit#aldeg_cas02	-1
+
+// Steward
+//============================================================
+aldeg_cas02,78,74,0	duplicate(Gld_Mngr_Template)	Chenchenlie#aldeg_cas02	55
+
+// Guardians
+//============================================================
+aldeg_cas02,78,74,0	duplicate(Gld_Guard_Template)	Guardian#aldeg_cas02	-1
+
+// Kafra Staff
+//============================================================
+aldeg_cas02,84,74,0	duplicate(Gld_Kafra_Template)	Kafra Staff#aldeg_cas02	117
+
+// Master's Room Exit
+//============================================================
+aldeg_cas02,139,235,0	script	#switch_A02	111,{
+	mes " ";
+	mes "There's a small lever. Will you pull it? ";
+	next;
+	switch(select("Pull.:Do not.")) {
+	case 1:
+		warp "aldeg_cas02",78,75;
+		break;
+	case 2:
+		break;
+	}
+	end;
+}
+
+// Guild Treasure Protection
+//============================================================
+aldeg_cas02,135,230,0	duplicate(Gld_Trea_Protect)	ban_warp#aldeg_cas02	-1,8,8
+
+// Guild Treasure Spawns
+//============================================================
+aldeg_cas02,135,230,0	duplicate(Gld_Trea_Spawn)	Treasure#aldeg_cas02	-1
+
+// Guild Dungeon Switch
+//============================================================
+aldeg_cas02,194,136,0	duplicate(Gld_Dun_Template)	#aldeg_cas02	111

+ 172 - 0
npc/guild/aldeg_cas03.txt

@@ -0,0 +1,172 @@
+//===== eAthena Script =======================================
+//= War of Emperium (Al De baran)
+//===== By: ==================================================
+//= L0ne_W0lf
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= NPCs that relate to Al De Baran Guild Castle 3
+//===== Additional Comments: =================================
+//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
+//============================================================
+
+// Guild Flag (Town)
+//============================================================
+aldebaran,134,97,4	script	Nuenberg#a3-1::Nuenberg	722,{
+	end;
+
+OnRecvCastleA03:
+	FlagEmblem GetCastleData("aldeg_cas03",1);
+	end;
+}
+
+// Guild Flag (Outside Castle)
+//============================================================
+alde_gld,138,82,0	script	Nuenberg#a3-2::Nuenberg2	722,{
+	set .@GID, GetCastleData("aldeg_cas03",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		if (getcharid(2) == .@GID) {
+			mes "Brave ones...";
+			mes "Do you wish to return to your honorable place?";
+			next;
+			if (select("Return to the guild castle.:Quit.") == 1) {
+				if (getcharid(2) == GetCastleData("aldeg_cas03",1)) {
+					warp "aldeg_cas03",118,76;
+					end;
+				}
+			}
+			close;
+		}
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastleA03:
+	FlagEmblem GetCastleData("aldeg_cas03",1);
+	end;
+}
+
+alde_gld,146,82,0	duplicate(Nuenberg2)	Nuenberg#a3-3	722
+
+// Guild Flag (Inside Castle)
+//============================================================
+aldeg_cas03,176,175,2	script	Nuenberg#a3-4::Nuenberg3	722,{
+	set .@GID, GetCastleData("aldeg_cas03",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastleA03:
+	FlagEmblem GetCastleData("aldeg_cas03",1);
+	end;
+}
+
+aldeg_cas03,77,115,2	duplicate(Nuenberg3)	Nuenberg#a3-5	722
+aldeg_cas03,77,215,2	duplicate(Nuenberg3)	Nuenberg#a3-6	722
+aldeg_cas03,112,107,2	duplicate(Nuenberg3)	Nuenberg#a3-7	722
+aldeg_cas03,112,117,2	duplicate(Nuenberg3)	Nuenberg#a3-8	722
+aldeg_cas03,69,71,2	duplicate(Nuenberg3)	Nuenberg#a3-9	722
+aldeg_cas03,91,69,2	duplicate(Nuenberg3)	Nuenberg#a3-10	722
+aldeg_cas03,108,60,2	duplicate(Nuenberg3)	Nuenberg#a3-11	722
+aldeg_cas03,121,73,2	duplicate(Nuenberg3)	Nuenberg#a3-12	722
+aldeg_cas03,121,73,2	duplicate(Nuenberg3)	Nuenberg#a3-13	722
+aldeg_cas03,75,102,2	duplicate(Nuenberg3)	Nuenberg#a3-14	722
+aldeg_cas03,199,169,2	duplicate(Nuenberg3)	Nuenberg#a3-15	722
+aldeg_cas03,181,179,2	duplicate(Nuenberg3)	Nuenberg#a3-16	722
+aldeg_cas03,192,44,2	duplicate(Nuenberg3)	Nuenberg#a3-17	722
+aldeg_cas03,208,145,2	duplicate(Nuenberg3)	Nuenberg#a3-18	722
+aldeg_cas03,207,75,2	duplicate(Nuenberg3)	Nuenberg#a3-19	722
+aldeg_cas03,96,62,2	duplicate(Nuenberg3)	Nuenberg#a3-20	722
+
+// AGIT Manager
+//============================================================
+aldeg_cas03,206,32,0	duplicate(Gld_Agit_Manager)	Agit#aldeg_cas03	-1
+
+// Steward
+//============================================================
+aldeg_cas03,110,118,0	duplicate(Gld_Mngr_Template)	Nahzarf#aldeg_cas03	55
+
+// Guardians
+//============================================================
+aldeg_cas03,110,118,0	duplicate(Gld_Guard_Template)	Guardian#aldeg_cas03	-1
+
+// Kafra Staff
+//============================================================
+aldeg_cas03,118,76,0	duplicate(Gld_Kafra_Template)	Kafra Staff#aldeg_cas03	117
+
+// Master's Room Exit
+//============================================================
+aldeg_cas03,229,267,0	script	#switch_A03	111,{
+	mes " ";
+	mes "There's a small lever. Will you pull it? ";
+	next;
+	switch(select("Pull.:Do not.")) {
+	case 1:
+		warp "aldeg_cas03",110,119;
+		break;
+	case 2:
+		break;
+	}
+	end;
+}
+
+// Guild Treasure Protection
+//============================================================
+aldeg_cas03,225,269,0	duplicate(Gld_Trea_Protect)	ban_warp#aldeg_cas03	-1,8,8
+
+// Guild Treasure Spawns
+//============================================================
+aldeg_cas03,225,269,0	duplicate(Gld_Trea_Spawn)	Treasure#aldeg_cas03	-1
+
+// Guild Dungeon Switch
+//============================================================
+aldeg_cas03,200,177,0	duplicate(Gld_Dun_Template)	#aldeg_cas03	111

+ 172 - 0
npc/guild/aldeg_cas04.txt

@@ -0,0 +1,172 @@
+//===== eAthena Script =======================================
+//= War of Emperium (Al De baran)
+//===== By: ==================================================
+//= L0ne_W0lf
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= NPCs that relate to Al De Baran Guild Castle 4
+//===== Additional Comments: =================================
+//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
+//============================================================
+
+// Guild Flag (Town)
+//============================================================
+aldebaran,131,97,4	script	Wuerzburg#a4-1::Wuerzburg	722,{
+	end;
+
+OnRecvCastleA04:
+	FlagEmblem GetCastleData("aldeg_cas04",1);
+	end;
+}
+
+// Guild Flag (Outside Castle)
+//============================================================
+alde_gld,239,246,2	script	Wuerzburg#a4-2::Wuerzburg2	722,{
+	set .@GID, GetCastleData("aldeg_cas04",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		if (getcharid(2) == .@GID) {
+			mes "Brave ones...";
+			mes "Do you wish to return to your honorable place?";
+			next;
+			if (select("Return to the guild castle.:Quit.") == 1) {
+				if (getcharid(2) == GetCastleData("aldeg_cas04",1)) {
+					warp "aldeg_cas04",45,88;
+					end;
+				}
+			}
+			close;
+		}
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastleA04:
+	FlagEmblem GetCastleData("aldeg_cas04",1);
+	end;
+}
+
+alde_gld,239,239,2	duplicate(Wuerzburg2)	Wuerzburg#a4-3	722
+
+// Guild Flag (Inside Castle)
+//============================================================
+aldeg_cas04,167,61,2	script	Wuerzburg#a4-4::Wuerzburg3	722,{
+	set .@GID, GetCastleData("aldeg_cas04",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastleA04:
+	FlagEmblem GetCastleData("aldeg_cas04",1);
+	end;
+}
+
+aldeg_cas04,164,90,2	duplicate(Wuerzburg3)	Wuerzburg#a4-5	722
+aldeg_cas04,129,193,2	duplicate(Wuerzburg3)	Wuerzburg#a4-6	722
+aldeg_cas04,112,206,2	duplicate(Wuerzburg3)	Wuerzburg#a4-7	722
+aldeg_cas04,113,212,2	duplicate(Wuerzburg3)	Wuerzburg#a4-8	722
+aldeg_cas04,77,117,2	duplicate(Wuerzburg3)	Wuerzburg#a4-9	722
+aldeg_cas04,186,42,2	duplicate(Wuerzburg3)	Wuerzburg#a4-10	722
+aldeg_cas04,30,69,2	duplicate(Wuerzburg3)	Wuerzburg#a4-11	722
+aldeg_cas04,55,97,2	duplicate(Wuerzburg3)	Wuerzburg#a4-12	722
+aldeg_cas04,45,98,2	duplicate(Wuerzburg3)	Wuerzburg#a4-13	722
+aldeg_cas04,33,116,2	duplicate(Wuerzburg3)	Wuerzburg#a4-14	722
+aldeg_cas04,130,180,2	duplicate(Wuerzburg3)	Wuerzburg#a4-15	722
+aldeg_cas04,129,193,2	duplicate(Wuerzburg3)	Wuerzburg#a4-16	722
+aldeg_cas04,33,107,2	duplicate(Wuerzburg3)	Wuerzburg#a4-17	722
+aldeg_cas04,133,220,2	duplicate(Wuerzburg3)	Wuerzburg#a4-18	722
+aldeg_cas04,169,22,2	duplicate(Wuerzburg3)	Wuerzburg#a4-19	722
+aldeg_cas04,169,15,2	duplicate(Wuerzburg3)	Wuerzburg#a4-20	722
+
+// AGIT Manager
+//============================================================
+aldeg_cas04,36,218,0	duplicate(Gld_Agit_Manager)	Agit#aldeg_cas04	-1
+
+// Steward
+//============================================================
+aldeg_cas04,67,116,0	duplicate(Gld_Mngr_Template)	Brymhensen#aldeg_cas04	55
+
+// Guardians
+//============================================================
+aldeg_cas04,67,116,0	duplicate(Gld_Guard_Template)	Guardian#aldeg_cas04	-1
+
+// Kafra Staff
+//============================================================
+aldeg_cas04,45,88,0	duplicate(Gld_Kafra_Template)	Kafra Staff#aldeg_cas04	117
+
+// Master's Room Exit
+//============================================================
+aldeg_cas04,83,17,0	script	#switch_A04	111,{
+	mes " ";
+	mes "There's a small lever. Will you pull it? ";
+	next;
+	switch(select("Pull.:Do not.")) {
+	case 1:
+		warp "aldeg_cas04",67,117;
+		break;
+	case 2:
+		break;
+	}
+	end;
+}
+
+// Guild Treasure Protection
+//============================================================
+aldeg_cas04,84,13,0	duplicate(Gld_Trea_Protect)	ban_warp#aldeg_cas04	-1,8,8
+
+// Guild Treasure Spawns
+//============================================================
+aldeg_cas04,84,13,0	duplicate(Gld_Trea_Spawn)	Treasure#aldeg_cas04	-1
+
+// Guild Dungeon Switch
+//============================================================
+aldeg_cas04,38,76,0	duplicate(Gld_Dun_Template)	#aldeg_cas04	111

+ 170 - 0
npc/guild/aldeg_cas05.txt

@@ -0,0 +1,170 @@
+//===== eAthena Script =======================================
+//= War of Emperium (Al De baran)
+//===== By: ==================================================
+//= L0ne_W0lf
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= NPCs that relate to Al De Baran Guild Castle 5
+//===== Additional Comments: =================================
+//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
+//============================================================
+
+// Guild Flag (Town)
+//============================================================
+aldebaran,128,97,4	script	Rothenburg#a5-1::Rothenburg	722,{
+	end;
+
+OnRecvCastleA05:
+	FlagEmblem GetCastleData("aldeg_cas05",1);
+	end;
+}
+
+// Guild Flag (Outside Castle)
+//============================================================
+alde_gld,265,93,6	script	Rothenburg#a5-2::Rothenburg2	722,{
+	set .@GID, GetCastleData("aldeg_cas05",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		if (getcharid(2) == .@GID) {
+			mes "Brave ones...";
+			mes "Do you wish to return to your honorable place?";
+			next;
+			if (select("Return to the guild castle.:Quit.") == 1) {
+				if (getcharid(2) == GetCastleData("aldeg_cas05",1)) {
+					warp "aldeg_cas05",218,170;
+					end;
+				}
+			}
+			close;
+		}
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastleA05:
+	FlagEmblem GetCastleData("aldeg_cas05",1);
+	end;
+}
+
+alde_gld,265,87,6	duplicate(Rothenburg2)	Rothenburg#a5-3	722
+
+// Guild Flag (Inside Castle)
+//============================================================
+aldeg_cas05,170,85,2	script	Rothenburg#a5-4::Rothenburg3	722,{
+	set .@GID, GetCastleData("aldeg_cas05",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastleA05:
+	FlagEmblem GetCastleData("aldeg_cas05",1);
+	end;
+}
+
+aldeg_cas05,142,212,2	duplicate(Rothenburg3)	Rothenburg#a5-5	722
+aldeg_cas05,149,196,2	duplicate(Rothenburg3)	Rothenburg#a5-6	722
+aldeg_cas05,41,180,2	duplicate(Rothenburg3)	Rothenburg#a5-7	722
+aldeg_cas05,38,201,2	duplicate(Rothenburg3)	Rothenburg#a5-8	722
+aldeg_cas05,65,182,2	duplicate(Rothenburg3)	Rothenburg#a5-9	722
+aldeg_cas05,65,205,2	duplicate(Rothenburg3)	Rothenburg#a5-10	722
+aldeg_cas05,10,218,2	duplicate(Rothenburg3)	Rothenburg#a5-11	722
+aldeg_cas05,164,201,2	duplicate(Rothenburg3)	Rothenburg#a5-12	722
+aldeg_cas05,14,117,2	duplicate(Rothenburg3)	Rothenburg#a5-14	722
+aldeg_cas05,10,225,2	duplicate(Rothenburg3)	Rothenburg#a5-15	722
+aldeg_cas05,187,59,2	duplicate(Rothenburg3)	Rothenburg#a5-16	722
+aldeg_cas05,154,51,2	duplicate(Rothenburg3)	Rothenburg#a5-17	722
+aldeg_cas05,22,211,2	duplicate(Rothenburg3)	Rothenburg#a5-18	722
+aldeg_cas05,150,202,2	duplicate(Rothenburg3)	Rothenburg#a5-19	722
+
+// AGIT Manager
+//============================================================
+aldeg_cas05,28,102,0	duplicate(Gld_Agit_Manager)	Agit#aldeg_cas05	-1
+
+// Steward
+//============================================================
+aldeg_cas05,52,179,0	duplicate(Gld_Mngr_Template)	Blemhemsen#aldeg_cas05	55
+
+// Guardians
+//============================================================
+aldeg_cas05,52,179,0	duplicate(Gld_Guard_Template)	Guardian#aldeg_cas05	-1
+
+// Kafra Staff
+//============================================================
+aldeg_cas05,31,190,0	duplicate(Gld_Kafra_Template)	Kafra Staff#aldeg_cas05	117
+
+// Master's Room Exit
+//============================================================
+aldeg_cas05,64,8,0	script	#switch_A05	111,{
+	mes " ";
+	mes "There's a small lever. Will you pull it? ";
+	next;
+	switch(select("Pull.:Do not.")) {
+	case 1:
+		warp "aldeg_cas05",51,179;
+		break;
+	case 2:
+		break;
+	}
+	end;
+}
+
+// Guild Treasure Protection
+//============================================================
+aldeg_cas05,62,12,0	duplicate(Gld_Trea_Protect)	ban_warp#aldeg_cas05	-1,8,8
+
+// Guild Treasure Spawns
+//============================================================
+aldeg_cas05,62,12,0	duplicate(Gld_Trea_Spawn)	Treasure#aldeg_cas05	-1
+
+// Guild Dungeon Switch
+//============================================================
+aldeg_cas05,22,205,0	duplicate(Gld_Dun_Template)	#aldeg_cas05	111

+ 0 - 131
npc/guild/ev_agit_event.txt

@@ -1,131 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium - WoE Auto-Start
-//===== By: ==================================================
-//= kalen (1.0)
-//= 1.1 by Akaru and ho|yAnge|
-//===== Current Version: =====================================
-//= 1.8b
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= Auto Start for War of Emperium
-//=============================================
-//= gettime(3): Gets hour (24 hour time)
-//= gettime(4): Gets day of week 1=Monday, 2=Tuesday,
-//= 3=Wednesday, 4=Thursday, etc.
-//===== Additional Comments: =================================
-//= v1.1a changed OnInit to OnAgitInit.[kobra_k88]
-//= v1.2 added gettime checks. removed $AgitStarted var.[kobra_k88]
-//= v1.3 Moved treasure spawn time here.[kobra_k88]
-//= v1.3a Implemented Shadowlady's idea to allow for different
-//= start/stop times on different days.[kobra_k88]
-//= 1.4 Fixed treasure chests spawn! We had to unroll some loops
-//= 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]
-//= 1.7 Commented out the WoE start and end announces. [L0ne_W0lf]
-//= 1.8 Castle owners displayed when WoE starts and finished. [L0ne_W0lf]
-//= 1.8a Will now report unoccupied castles at start/end. [L0ne_W0lf]
-//= 1.8b Whoops. Fixed a mistake :D [L0ne_W0lf]
-//============================================================
-//| To know how to set up WoE times, go to doc\woe_time_explanation.txt
-// WoE Start/Stop times
-//======================================
--	script	Agit_Event	-1,{
-	end;
-
-OnClock2100:	//start time for Tues(2), Thurs(4)
-OnClock2300:	//end time for Tues(2), Thurs(4)
-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;
-
-	// 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:
-	if (agitcheck()) {
-		//Announce "The War Of Emperium is over!",8;
-		AgitEnd;
-		goto L_DisplayOwners;
-	}
-	end;
-
-L_Start:
-	if (!agitcheck()) {
-		//Announce "The War Of Emperium has begun!",8;
-		AgitStart;
-		goto L_DisplayOwners;
-	}
-	end;
-
-L_DisplayOwners:
-	setarray .@maps$[0],"aldeg_cas01","aldeg_cas02","aldeg_cas03","aldeg_cas04","aldeg_cas05";
-	setarray .@maps$[5],"gefg_cas01","gefg_cas02","gefg_cas03","gefg_cas04","gefg_cas05";
-	setarray .@maps$[10],"payg_cas01","payg_cas02","payg_cas03","payg_cas04","payg_cas05";
-	setarray .@maps$[15],"prtg_cas01","prtg_cas02","prtg_cas03","prtg_cas04","prtg_cas05";
-	for( set .@i, 0; .@i <= 19; set .@i, .@i+1 ) {
-		if (GetCastleData(.@maps$[.@i],1)) {
-			Announce "The [" + GetCastleName(.@maps$[.@i]) + "] castle has been conquered by the [" + GetGuildName(GetCastleData(.@maps$[.@i],1)) + "] guild.",bc_all;
-		}
-		else {
-			Announce "The [" + GetCastleName(.@maps$[.@i]) + "] castle is currently unoccupied.",bc_all;
-		}		
-	}
-	end;
-}
-
-// Treasure Spawn Time
-//========================================
--	script	TreasSpawn	-1,{
-	end;
-
-// Please explain the relevence of this to me?
-// Why are we spawning chests per zone on 1 minute intervals?
-// They should al spawn at the same time in the same castle.
-// Is there a reason for this? Am I reading something wrong?
-
-OnClock0001:
-	callfunc "F_GldTreas","aldeg_cas01","A01",$boxNumA01,$@bxA01,$@boxIdA01,1324,114,218,123,227,0;
-	callfunc "F_GldTreas","aldeg_cas02","A02",$boxNumA02,$@bxA02,$@boxIdA02,1326,130,226,138,235,0;
-	callfunc "F_GldTreas","aldeg_cas03","A03",$boxNumA03,$@bxA03,$@boxIdA03,1328,220,264,229,273,0;
-	callfunc "F_GldTreas","aldeg_cas04","A04",$boxNumA04,$@bxA04,$@boxIdA04,1330,80,8,89,17,0;
-	callfunc "F_GldTreas","aldeg_cas05","A05",$boxNumA05,$@bxA05,$@boxIdA05,1332,58,8,65,15,0;
-	end;
-OnClock0002:
-	callfunc "F_GldTreas","gefg_cas01","G01",$boxNumG01,$@bxG01,$@boxIdG01,1334,150,108,158,114,0;
-	callfunc "F_GldTreas","gefg_cas02","G02",$boxNumG02,$@bxG02,$@boxIdG02,1336,136,112,145,118,0;
-	callfunc "F_GldTreas","gefg_cas03","G03",$boxNumG03,$@bxG03,$@boxIdG03,1338,266,286,275,293,0;
-	callfunc "F_GldTreas","gefg_cas04","G04",$boxNumG04,$@bxG04,$@boxIdG04,1340,112,114,119,123,0;
-	callfunc "F_GldTreas","gefg_cas05","G05",$boxNumG05,$@bxG05,$@boxIdG05,1342,140,106,147,113,0;
-	end;
-OnClock0003:
-	callfunc "F_GldTreas","payg_cas01","Py01",$boxNumPy01,$@bxPy01,$@boxIdPy01,1344,286,4,295,13,0;
-	callfunc "F_GldTreas","payg_cas02","Py02",$boxNumPy02,$@bxPy02,$@boxIdPy02,1346,140,140,148,149,0;
-	callfunc "F_GldTreas","payg_cas03","Py03",$boxNumPy03,$@bxPy03,$@boxIdPy03,1348,154,164,162,173,0;
-	callfunc "F_GldTreas","payg_cas04","Py04",$boxNumPy04,$@bxPy04,$@boxIdPy04,1350,142,44,151,51,0;
-	callfunc "F_GldTreas","payg_cas05","Py05",$boxNumPy05,$@bxPy05,$@boxIdPy05,1352,152,128,160,135,0;
-	end;
-OnClock0004:
-	callfunc "F_GldTreas","prtg_cas01","Pt01",$boxNumPt01,$@bxPt01,$@boxIdPt01,1354,6,204,15,213,0;
-	callfunc "F_GldTreas","prtg_cas02","Pt02",$boxNumPt02,$@bxPt02,$@boxIdPt02,1356,198,224,207,233,0;
-	callfunc "F_GldTreas","prtg_cas03","Pt03",$boxNumPt03,$@bxPt03,$@boxIdPt03,1358,184,128,193,135,0;
-	callfunc "F_GldTreas","prtg_cas04","Pt04",$boxNumPt04,$@bxPt04,$@boxIdPt04,1360,266,158,275,167,0;
-	callfunc "F_GldTreas","prtg_cas05","Pt05",$boxNumPt05,$@bxPt05,$@boxIdPt05,1362,272,174,279,181,0;
-	end;
-OnClock0005:
-	callfunc "F_GldTreas","nguild_alde","N01",$boxNumN01,$@bxN01,$@boxIdN01,1324,114,218,123,227,0;
-	callfunc "F_GldTreas","nguild_gef","N02",$boxNumN02,$@bxN02,$@boxIdN02,1334,150,108,158,114,0;
-	callfunc "F_GldTreas","nguild_pay","N03",$boxNumN03,$@bxN03,$@boxIdN03,1344,286,4,295,13,0;
-	callfunc "F_GldTreas","nguild_prt","N04",$boxNumN04,$@bxN04,$@boxIdN04,1354,6,204,15,213,0;
-	end;
-}

+ 0 - 49
npc/guild/gefg/gefg_dunsw.txt

@@ -1,49 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium Dungeon Switch for Geffen Guild Castles
-//===== By: ==================================================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//===== Current Version: =====================================
-//= 1.2
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= Switch that warps guild members to the guild dungeon
-//===== Additional Comments: =================================
-//= v1.2 Optimized with functions.[kobra_k88]
-//============================================================
-
-
-// Castle 1 ================================================
-gefg_cas01,78,84,0	script	Switch#DunG01	111,{
-	callfunc "F_GldDunSw","gefg_cas01","04",39,258;
-	close;
-}
-
-
-// Castle 2 ================================================
-gefg_cas02,167,40,0	script	Switch#DunG02	111,{
-	callfunc "F_GldDunSw","gefg_cas02","04",125,270;
-	close;
-}
-
-
-// Castle 3 ================================================
-gefg_cas03,221,43,0	script	Switch#DunG03	111,{
-	callfunc "F_GldDunSw","gefg_cas03","04",268,251;
-	close;
-}
-
-
-// Castle 4 ================================================
-gefg_cas04,58,75,0	script	Switch#DunG04	111,{
-	callfunc "F_GldDunSw","gefg_cas04","04",268,108;
-	close;
-}
-
-
-// Castle 5 ================================================
-gefg_cas05,66,29,0	script	Switch#DunG05	111,{
-	callfunc "F_GldDunSw","gefg_cas05","04",230,35;
-	close;
-}

+ 0 - 159
npc/guild/gefg/gefg_ev_agit.txt

@@ -1,159 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium - Geffen Guild Wars Events
-//===== By: ==================================================
-//= jAthena (1.0)
-//= 1.1 by Akaru and ho|yAnge|
-//===== Current Version: =====================================
-//= 1.5
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= Event Triggers of Geffen Guild Wars
-//===== Additional Comments: =================================
-//= v1.2 Now using functions for OnAgitStart and OnAgitBreak. [kobra_k88]
-//= 1.3 Added code for abandoning captured castles on /breakguild [Lupus]
-//= 1.4 Small updated. Changed "EMPERIUM" to "Emperium". [L0ne_W0lf]
-//= 1.5 Quick fix "emps not respawning if the emp breaker logs off".
-//=     (from r11630 bureport:369) [FlavioJS]
-//============================================================
-
-
-// Castle 1 ================================================================
-gefg_cas01,198,182,0	script	Agit_G01	-1,{
-OnInterIfInitOnce:
-	GetCastleData "gefg_cas01",0,"::OnRecvCastleG01";
-	end;
-OnRecvCastleG01:
-	RequestGuildInfo GetCastleData("gefg_cas01",1);
-	end;
-OnAgitStart:
-	callfunc "F_AgitStart","gefg_cas01","G01",198,182;
-	end;
-OnAgitBreak:
-	callfunc "F_AgitBreak","gefg_cas01","G01";
-	goto OnAgitEliminate;
-OnGuildBreak:
-	callfunc "F_GuildBreak","gefg_cas01","G01";
-	end;
-OnAgitEliminate:
-	sleep getbattleflag("gvg_eliminate_time");
-	MapRespawnGuildID "gefg_cas01",GetCastleData("gefg_cas01",1),6;
-	sleep 6333-getbattleflag("gvg_eliminate_time");// wait for emp animation to end
-	Monster "gefg_cas01",198,182,"Emperium",1288,1,"Agit_G01::OnAgitBreak";
-	end;
-OnAgitEnd:
-	callfunc "F_AgitEnd","gefg_cas01","G01";
-	end;
-}
-
-// Castle 2 ================================================================
-gefg_cas02,176,178,0	script	Agit_G02	-1,{
-OnInterIfInitOnce:
-	GetCastleData "gefg_cas02",0,"::OnRecvCastleG02";
-	end;
-OnRecvCastleG02:
-	RequestGuildInfo GetCastleData("gefg_cas02",1);
-	end;
-OnAgitStart:
-	callfunc "F_AgitStart","gefg_cas02","G02",176,178;
-	end;
-OnAgitBreak:
-	callfunc "F_AgitBreak","gefg_cas02","G02";
-	goto OnAgitEliminate;
-OnGuildBreak:
-	callfunc "F_GuildBreak","gefg_cas02","G02";
-	end;
-OnAgitEliminate:
-	sleep getbattleflag("gvg_eliminate_time");
-	MapRespawnGuildID "gefg_cas02",GetCastleData("gefg_cas02",1),6;
-	sleep 6333-getbattleflag("gvg_eliminate_time");// wait for emp animation to end
-	Monster "gefg_cas02",176,178,"Emperium",1288,1,"Agit_G02::OnAgitBreak";
-	end;
-OnAgitEnd:
-	callfunc "F_AgitEnd","gefg_cas02","G02";
-	end;
-}
-
-// Castle 3 ================================================================
-gefg_cas03,245,167,0	script	Agit_G03	-1,{
-OnInterIfInitOnce:
-	GetCastleData "gefg_cas03",0,"::OnRecvCastleG03";
-	end;
-OnRecvCastleG03:
-	RequestGuildInfo GetCastleData("gefg_cas03",1);
-	end;
-OnAgitStart:
-	callfunc "F_AgitStart","gefg_cas03","G03",245,167;
-	end;
-OnAgitBreak:
-	callfunc "F_AgitBreak","gefg_cas03","G03";
-	goto OnAgitEliminate;
-OnGuildBreak:
-	callfunc "F_GuildBreak","gefg_cas03","G03";
-	end;
-OnAgitEliminate:
-	sleep getbattleflag("gvg_eliminate_time");
-	MapRespawnGuildID "gefg_cas03",GetCastleData("gefg_cas03",1),6;
-	sleep 6333-getbattleflag("gvg_eliminate_time");// wait for emp animation to end
-	Monster "gefg_cas03",245,167,"Emperium",1288,1,"Agit_G03::OnAgitBreak";
-	end;
-OnAgitEnd:
-	callfunc "F_AgitEnd","gefg_cas03","G03";
-	end;
-}
-
-// Castle 4 ================================================================
-gefg_cas04,174,178,0	script	Agit_G04	-1,{
-OnInterIfInitOnce:
-	GetCastleData "gefg_cas04",0,"::OnRecvCastleG04";
-	end;
-OnRecvCastleG04:
-	RequestGuildInfo GetCastleData("gefg_cas04",1);
-	end;
-OnAgitStart:
-	callfunc "F_AgitStart","gefg_cas04","G04",174,178;
-	end;
-OnAgitBreak:
-	callfunc "F_AgitBreak","gefg_cas04","G04";
-	goto OnAgitEliminate;
-OnGuildBreak:
-	callfunc "F_GuildBreak","gefg_cas04","G04";
-	end;
-OnAgitEliminate:
-	sleep getbattleflag("gvg_eliminate_time");
-	MapRespawnGuildID "gefg_cas04",GetCastleData("gefg_cas04",1),6;
-	sleep 6333-getbattleflag("gvg_eliminate_time");// wait for emp animation to end
-	Monster "gefg_cas04",174,178,"Emperium",1288,1,"Agit_G04::OnAgitBreak";
-	end;
-OnAgitEnd:
-	callfunc "F_AgitEnd","gefg_cas04","G04";
-	end;
-}
-
-// Castle 5 ================================================================
-gefg_cas05,194,184,0	script	Agit_G05	-1,{
-OnInterIfInitOnce:
-	GetCastleData "gefg_cas05",0,"::OnRecvCastleG05";
-	end;
-OnRecvCastleG05:
-	RequestGuildInfo GetCastleData("gefg_cas05",1);
-	end;
-OnAgitStart:
-	callfunc "F_AgitStart","gefg_cas05","G05",194,184;
-	end;
-OnAgitBreak:
-	callfunc "F_AgitBreak","gefg_cas05","G05";
-	goto OnAgitEliminate;
-OnGuildBreak:
-	callfunc "F_GuildBreak","gefg_cas05","G05";
-	end;
-OnAgitEliminate:
-	sleep getbattleflag("gvg_eliminate_time");
-	MapRespawnGuildID "gefg_cas05",GetCastleData("gefg_cas05",1),6;
-	sleep 6333-getbattleflag("gvg_eliminate_time");// wait for emp animation to end
-	Monster "gefg_cas05",194,184,"Emperium",1288,1,"Agit_G05::OnAgitBreak";
-	end;
-OnAgitEnd:
-	callfunc "F_AgitEnd","gefg_cas05","G05";
-	end;
-}

+ 0 - 231
npc/guild/gefg/gefg_flags.txt

@@ -1,231 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium Geffen Guild Flags
-//===== By: ==================================================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//===== Current Version: =====================================
-//= 1.5
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= WoE flag scripts.  Display guild emblems on flags.
-//===== Additional Comments: =================================
-//= v1.2 Optimized with functions.[kobra_k88]
-//= v1.3 Changed to iRO castle names [DracoRPG]
-//= v1.4 Can now only flag in from outside the castle [Kayla]
-//= V1.5 Town flags no longer show dialog, and fixed various flags. [L0ne__W0lf]
-//============================================================
-
-
-//================================================================================//
-// 					Castle 1
-//================================================================================//
-geffen,109,123,2	script	Repherion#g1-1::Repherion	722,{
-	callfunc "F_Flags","Geffen","gefg_cas01",83,47,0,0;
-	close;
-
-OnRecvCastleG01:
-	FlagEmblem GetCastleData("gefg_cas01",1);
-	end;
-}
-
-gef_fild13,148,51,5	script	Repherion#g1-2::Repherion2	722,{
-	callfunc "F_Flags","Geffen","gefg_cas01",83,47,1,1;
-	close;
-
-OnRecvCastleG01:
-	FlagEmblem GetCastleData("gefg_cas01",1);
-	end;
-}
-
-gefg_cas01,28,157,4	script	Repherion#g1-3::Repherion3	722,{
-	callfunc "F_Flags","Geffen","gefg_cas01",83,47,0,1;
-	close;
-
-OnRecvCastleG01:
-	FlagEmblem GetCastleData("gefg_cas01",1);
-	end;
-}
-// In Guild  ===============================================
-gef_fild13,155,54,5	duplicate(Repherion2)	Repherion#g1-4	722
-gef_fild13,212,79,6	duplicate(Repherion2)	Repherion#g1-5	722
-gef_fild13,211,71,6	duplicate(Repherion2)	Repherion#g1-6	722
-// In Castle =============================================
-gefg_cas01,22,156,5	duplicate(Repherion3)	Repherion#g1-7	722
-gefg_cas01,68,185,3	duplicate(Repherion3)	Repherion#g1-8	722
-gefg_cas01,17,171,5	duplicate(Repherion3)	Repherion#g1-9	722
-gefg_cas01,59,16,4	duplicate(Repherion3)	Repherion#g1-10	722
-gefg_cas01,64,16,4	duplicate(Repherion3)	Repherion#g1-11	722
-
-
-
-//===================================================================================//
-//					Castle 2
-//===================================================================================//
-geffen,113,130,1	script	Eeyolbriggar#g2-1::Eeyolbriggar	722,{
-	callfunc "F_Flags","Geffen","gefg_cas02",23,66,0,0;
-	close;
-
-OnRecvCastleG02:
-	FlagEmblem GetCastleData("gefg_cas02",1);
-	end;
-}
-
-gef_fild13,303,243,4	script	Eeyolbriggar#g2-2::Eeyolbriggar2	722,{
-	callfunc "F_Flags","Geffen","gefg_cas02",23,66,1,1;
-	close;
-
-OnRecvCastleG02:
-	FlagEmblem GetCastleData("gefg_cas02",1);
-	end;
-}
-
-gefg_cas02,65,130,5	script	Eeyolbriggar#g2-3::Eeyolbriggar3	722,{
-	callfunc "F_Flags","Geffen","gefg_cas02",23,66,0,1;
-	close;
-
-OnRecvCastleG02:
-	FlagEmblem GetCastleData("gefg_cas02",1);
-	end;
-}
-// In Guild ==============================================
-gef_fild13,312,243,4	duplicate(Eeyolbriggar2)	Eeyolbriggar#g2-4	722
-gef_fild13,290,243,4	duplicate(Eeyolbriggar2)	Eeyolbriggar#g2-5	722
-gef_fild13,324,243,4	duplicate(Eeyolbriggar2)	Eeyolbriggar#g2-6	722
-// In Castle ============================================
-gefg_cas02,30,123,5	duplicate(Eeyolbriggar3)	Eeyolbriggar#g2-7	722
-gefg_cas02,65,139,6	duplicate(Eeyolbriggar3)	Eeyolbriggar#g2-8	722
-gefg_cas02,37,177,6	duplicate(Eeyolbriggar3)	Eeyolbriggar#g2-9	722
-gefg_cas02,37,168,6	duplicate(Eeyolbriggar3)	Eeyolbriggar#g2-10	722
-gefg_cas02,68,47,2	duplicate(Eeyolbriggar3)	Eeyolbriggar#g2-11	722
-gefg_cas02,68,36,2	duplicate(Eeyolbriggar3)	Eeyolbriggar#g2-12	722
-
-
-
-//================================================================================//
-// 					Castle 3
-//================================================================================//
-geffen,120,132,8	script	Yesnelph#g3-1::Yesnelph	722,{
-	callfunc "F_Flags","Geffen","gefg_cas03",116,89,0,0;
-	close;
-
-OnRecvCastleG03:
-	FlagEmblem GetCastleData("gefg_cas03",1);
-	end;
-}
-
-gef_fild13,78,182,4	script	Yesnelph#g3-2::Yesnelph2	722,{
-	callfunc "F_Flags","Geffen","gefg_cas03",116,89,1,1;
-	close;
-
-OnRecvCastleG03:
-	FlagEmblem GetCastleData("gefg_cas03",1);
-	end;
-}
-
-gefg_cas03,122,220,6	script	Yesnelph#g3-3::Yesnelph3	722,{
-	callfunc "F_Flags","Geffen","gefg_cas03",116,89,0,1;
-	close;
-
-OnRecvCastleG03:
-	FlagEmblem GetCastleData("gefg_cas03",1);
-	end;
-}
-// In Guild  ===============================================
-gef_fild13,87,182,4	duplicate(Yesnelph2)	Yesnelph#g3-4	722
-gef_fild13,73,295,7	duplicate(Yesnelph2)	Yesnelph#g3-5	722
-gef_fild13,113,274,7	duplicate(Yesnelph2)	Yesnelph#g3-6	722
-gef_fild13,144,235,6	duplicate(Yesnelph2)	Yesnelph#g3-7	722
-gef_fild13,144,244,4	duplicate(Yesnelph2)	Yesnelph#g3-8	722
-// In Castle =============================================
-gefg_cas03,122,229,6	duplicate(Yesnelph3)	Yesnelph#g3-9	722
-gefg_cas03,91,257,7	duplicate(Yesnelph3)	Yesnelph#g3-10	722
-gefg_cas03,52,276,7	duplicate(Yesnelph3)	Yesnelph#g3-11	722
-gefg_cas03,56,164,4	duplicate(Yesnelph3)	Yesnelph#g3-12	722
-gefg_cas03,65,164,4	duplicate(Yesnelph3)	Yesnelph#g3-13	722
-gefg_cas03,37,214,1	duplicate(Yesnelph3)	Yesnelph#g3-14	722
-gefg_cas03,34,208,1	duplicate(Yesnelph3)	Yesnelph#g3-15	722
-
-
-
-//================================================================================//
-// 					Castle 4
-//================================================================================//
-geffen,127,130,7	script	Bergel#g4-1::Bergel	722,{
-	callfunc "F_Flags","Geffen","gefg_cas04",59,70,0,0;
-	close;
-
-OnRecvCastleG04:
-	FlagEmblem GetCastleData("gefg_cas04",1);
-	end;
-}
-
-gef_fild13,190,283,3	script	Bergel#g4-2::Bergel2	722,{
-	callfunc "F_Flags","Geffen","gefg_cas04",59,70,1,1;
-	close;
-
-OnRecvCastleG04:
-	FlagEmblem GetCastleData("gefg_cas04",1);
-	end;
-}
-
-gefg_cas04,24,157,4	script	Bergel#g4-3::Bergel3	722,{
-	callfunc "F_Flags","Geffen","gefg_cas04",59,70,0,1;
-	close;
-
-OnRecvCastleG04:
-	FlagEmblem GetCastleData("gefg_cas04",1);
-	end;
-}
-// In Guild  ===============================================
-gef_fild13,199,274,3	duplicate(Bergel2)	Bergel#g4-4	722
-// In Castle =============================================
-gefg_cas04,35,158,4	duplicate(Bergel3)	Bergel#g4-5	722
-gefg_cas04,44,184,4	duplicate(Bergel3)	Bergel#g4-6	722
-gefg_cas04,51,184,4	duplicate(Bergel3)	Bergel#g4-7	722
-gefg_cas04,39,212,7	duplicate(Bergel3)	Bergel#g4-8	722
-gefg_cas04,29,212,1	duplicate(Bergel3)	Bergel#g4-9	722
-gefg_cas04,24,73,1	duplicate(Bergel3)	Bergel#g4-10	722
-gefg_cas04,35,73,4	duplicate(Bergel3)	Bergel#g4-11	722
-
-
-
-//================================================================================//
-// 					Castle 5
-//================================================================================//
-geffen,131,123,6	script	Mersetzdeitz#g5-1::Mersetzdeitz	722,{
-	callfunc "F_Flags","Geffen","gefg_cas05",61,52,0,0;
-	close;
-
-OnRecvCastleG05:
-	FlagEmblem GetCastleData("gefg_cas05",1);
-	end;
-}
-
-gef_fild13,302,87,7	script	Mersetzdeitz#g5-2::Mersetzdeitz2	722,{
-	callfunc "F_Flags","Geffen","gefg_cas05",61,52,1,1;
-	close;
-
-OnRecvCastleG05:
-	FlagEmblem GetCastleData("gefg_cas05",1);
-	end;
-}
-
-gefg_cas05,77,185,7	script	Mersetzdeitz#g5-3::Mersetzdeitz3	722,{
-	callfunc "F_Flags","Geffen","gefg_cas05",61,52,0,1;
-	close;
-
-OnRecvCastleG05:
-	FlagEmblem GetCastleData("gefg_cas05",1);
-	end;
-}
-// In Guild  ===============================================
-gef_fild13,313,83,0	duplicate(Mersetzdeitz2)	Mersetzdeitz#g5-4	722
-gef_fild13,252,51,2	duplicate(Mersetzdeitz2)	Mersetzdeitz#g5-5	722
-gef_fild13,26,147,2	duplicate(Mersetzdeitz2)	Mersetzdeitz#g5-6	722
-// In Castle =============================================
-gefg_cas05,92,181,0	duplicate(Mersetzdeitz3)	Mersetzdeitz#g5-7	722
-gefg_cas05,83,158,1	duplicate(Mersetzdeitz3)	Mersetzdeitz#g5-8	722
-gefg_cas05,62,144,7	duplicate(Mersetzdeitz3)	Mersetzdeitz#g5-9	722
-gefg_cas05,62,66,4	duplicate(Mersetzdeitz3)	Mersetzdeitz#g5-10	722
-gefg_cas05,69,66,4	duplicate(Mersetzdeitz3)	Mersetzdeitz#g5-11	722

+ 0 - 114
npc/guild/gefg/gefg_guardians.txt

@@ -1,114 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium - gefg_cas guardians script
-//===== By: ==================================================
-//= holyAngelX (1.0)
-//===== Current Version: =====================================
-//= 1.3
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= Re-spawns guardians on server start if they have been
-//= purchased.  Also announces when a guardian dies.
-//===== Additional Comments: =================================
-//= 1.1 by joedukk
-//= 1.2 by Akaru and Valaris
-//= 1.2a Guardians for all gefg castles are now in this file.
-//= Minor optimizations.[kobra_k88]
-//= 1.3 Corrected what guardians will spawn, and where. [L0ne_W0lf]
-//=	All guardians will now die when OnAgiInit is run.
-//=	Removed announcment for when a guardian dies.
-//============================================================
-
-gefg_cas01,198,182,0	script	Guardian_G01	-1,{
-OnAgitInit:
-	killmonster "gefg_cas01","Guardian_G01::OnGuardianDied";
-	if (GetCastleData("gefg_cas01",10) == 1) guardian "gefg_cas01",67,179,"Guardian Soldier",1287,"Guardian_G01::OnGuardianDied",0;
-	if (GetCastleData("gefg_cas01",11) == 1) guardian "gefg_cas01",184,20,"Guardian Soldier",1287,"Guardian_G01::OnGuardianDied",1;
-	if (GetCastleData("gefg_cas01",12) == 1) guardian "gefg_cas01",62,41,"Guardian Soldier",1287,"Guardian_G01::OnGuardianDied",2;
-	if (GetCastleData("gefg_cas01",13) == 1) guardian "gefg_cas01",36,186,"Guardian Archer",1285,"Guardian_G01::OnGuardianDied",3;
-	if (GetCastleData("gefg_cas01",14) == 1) guardian "gefg_cas01",50,186,"Guardian Archer",1285,"Guardian_G01::OnGuardianDied",4;
-	if (GetCastleData("gefg_cas01",15) == 1) guardian "gefg_cas01",50,67,"Guardian Knight",1286,"Guardian_G01::OnGuardianDied",5;
-	if (GetCastleData("gefg_cas01",16) == 1) guardian "gefg_cas01",189,41,"Guardian Knight",1286,"Guardian_G01::OnGuardianDied",6;
-	if (GetCastleData("gefg_cas01",17) == 1) guardian "gefg_cas01",200,167,"Guardian Knight",1286,"Guardian_G01::OnGuardianDied",7;
-	end;
-
-OnGuardianDied:
-	// Event when Guardian dies
-	end;
-}
-
-//------------------------------------------------------------------------------
-gefg_cas02,176,178,0	script	Guardian_G02	-1,{
-OnAgitInit:
-	killmonster "gefg_cas02","Guardian_G02::OnGuardianDied";
-	if (GetCastleData("gefg_cas02",10) == 1) guardian "gefg_cas02",64,168,"Guardian Soldier",1287,"Guardian_G02::OnGuardianDied",0;
-	if (GetCastleData("gefg_cas02",11) == 1) guardian "gefg_cas02",56,41,"Guardian Soldier",1287,"Guardian_G02::OnGuardianDied",1;
-	if (GetCastleData("gefg_cas02",12) == 1) guardian "gefg_cas02",166,25,"Guardian Soldier",1287,"Guardian_G02::OnGuardianDied",2;
-	if (GetCastleData("gefg_cas02",13) == 1) guardian "gefg_cas02",35,148,"Guardian Archer",1285,"Guardian_G02::OnGuardianDied",3;
-	if (GetCastleData("gefg_cas02",14) == 1) guardian "gefg_cas02",20,150,"Guardian Archer",1285,"Guardian_G02::OnGuardianDied",4;
-	if (GetCastleData("gefg_cas02",15) == 1) guardian "gefg_cas02",19,41,"Guardian Knight",1286,"Guardian_G02::OnGuardianDied",5;
-	if (GetCastleData("gefg_cas02",16) == 1) guardian "gefg_cas02",166,42,"Guardian Knight",1286,"Guardian_G02::OnGuardianDied",6;
-	if (GetCastleData("gefg_cas02",17) == 1) guardian "gefg_cas02",159,188,"Guardian Knight",1286,"Guardian_G02::OnGuardianDied",7;
-	end;
-
-OnGuardianDied:
-	// Event when Guardian dies
-	end;
-}
-
-//------------------------------------------------------------------------------
-gefg_cas03,245,167,0	script	Guardian_G03	-1,{
-OnAgitInit:
-	killmonster "gefg_cas03","Guardian_G03::OnGuardianDied";
-	if (GetCastleData("gefg_cas03",10) == 1) guardian "gefg_cas03",48,176,"Guardian Archer",1285,"Guardian_G03::OnGuardianDied",0;
-	if (GetCastleData("gefg_cas03",11) == 1) guardian "gefg_cas03",113,214,"Guardian Archer",1285,"Guardian_G03::OnGuardianDied",1;
-	if (GetCastleData("gefg_cas03",12) == 1) guardian "gefg_cas03",48,207,"Guardian Soldier",1287,"Guardian_G03::OnGuardianDied",2;
-	if (GetCastleData("gefg_cas03",13) == 1) guardian "gefg_cas03",157,62,"Guardian Soldier",1287,"Guardian_G03::OnGuardianDied",3;
-	if (GetCastleData("gefg_cas03",14) == 1) guardian "gefg_cas03",243,41,"Guardian Soldier",1287,"Guardian_G03::OnGuardianDied",4;
-	if (GetCastleData("gefg_cas03",15) == 1) guardian "gefg_cas03",157,45,"Guardian Knight",1286,"Guardian_G03::OnGuardianDied",5;
-	if (GetCastleData("gefg_cas03",16) == 1) guardian "gefg_cas03",234,25,"Guardian Knight",1286,"Guardian_G03::OnGuardianDied",6;
-	if (GetCastleData("gefg_cas03",17) == 1) guardian "gefg_cas03",238,160,"Guardian Knight",1286,"Guardian_G03::OnGuardianDied",7;
-	end;
-
-OnGuardianDied:
-	// Event when Guardian dies
-	end;
-}
-
-//------------------------------------------------------------------------------
-gefg_cas04,174,178,0	script	Guardian_G04	-1,{
-OnAgitInit:
-	killmonster "gefg_cas04","Guardian_G04::OnGuardianDied";
-	if (GetCastleData("gefg_cas04",10) == 1) guardian "gefg_cas04",53,191,"Guardian Archer",1285,"Guardian_G04::OnGuardianDied",0;
-	if (GetCastleData("gefg_cas04",11) == 1) guardian "gefg_cas04",31,178,"Guardian Archer",1285,"Guardian_G04::OnGuardianDied",1;
-	if (GetCastleData("gefg_cas04",12) == 1) guardian "gefg_cas04",49,220,"Guardian Soldier",1287,"Guardian_G04::OnGuardianDied",2;
-	if (GetCastleData("gefg_cas04",13) == 1) guardian "gefg_cas04",29,46,"Guardian Soldier",1287,"Guardian_G04::OnGuardianDied",3;
-	if (GetCastleData("gefg_cas04",14) == 1) guardian "gefg_cas04",147,65,"Guardian Soldier",1287,"Guardian_G04::OnGuardianDied",4;
-	if (GetCastleData("gefg_cas04",15) == 1) guardian "gefg_cas04",57,46,"Guardian Knight",1286,"Guardian_G04::OnGuardianDied",5;
-	if (GetCastleData("gefg_cas04",16) == 1) guardian "gefg_cas04",160,50,"Guardian Knight",1286,"Guardian_G04::OnGuardianDied",6;
-	if (GetCastleData("gefg_cas04",17) == 1) guardian "gefg_cas04",148,189,"Guardian Knight",1286,"Guardian_G04::OnGuardianDied",7;
-	end;
-
-OnGuardianDied:
-	// Event when Guardian dies
-	end;
-}
-
-//------------------------------------------------------------------------------
-gefg_cas05,194,184,0	script	Guardian_G05	-1,{
-OnAgitInit:
-	killmonster "gefg_cas05","Guardian_G05::OnGuardianDied";
-	if (GetCastleData("gefg_cas05",10) == 1) guardian "gefg_cas05",45,149,"Guardian Archer",1285,"Guardian_G05::OnGuardianDied",0;
-	if (GetCastleData("gefg_cas05",11) == 1) guardian "gefg_cas05",71,163,"Guardian Archer",1285,"Guardian_G05::OnGuardianDied",1;
-	if (GetCastleData("gefg_cas05",12) == 1) guardian "gefg_cas05",72,142,"Guardian Soldier",1287,"Guardian_G05::OnGuardianDied",2;
-	if (GetCastleData("gefg_cas05",13) == 1) guardian "gefg_cas05",66,47,"Guardian Soldier",1287,"Guardian_G05::OnGuardianDied",3;
-	if (GetCastleData("gefg_cas05",14) == 1) guardian "gefg_cas05",177,50,"Guardian Soldier",1287,"Guardian_G05::OnGuardianDied",4;
-	if (GetCastleData("gefg_cas05",15) == 1) guardian "gefg_cas05",66,17,"Guardian Knight",1286,"Guardian_G05::OnGuardianDied",5;
-	if (GetCastleData("gefg_cas05",16) == 1) guardian "gefg_cas05",177,35,"Guardian Knight",1286,"Guardian_G05::OnGuardianDied",6;
-	if (GetCastleData("gefg_cas05",17) == 1) guardian "gefg_cas05",193,166,"Guardian Knight",1286,"Guardian_G05::OnGuardianDied",7;
-	end;
-
-OnGuardianDied:
-	// Event when Guardian dies
-	end;
-}

+ 0 - 67
npc/guild/gefg/gefg_kafras.txt

@@ -1,67 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium Kafras for Geffen Guild Castles
-//===== By: ==================================================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//===== Current Version: =====================================
-//= 1.3
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= Provides Kafra Staffs for guild members of Geffen Castles.
-//= Used in conjuction with function F_Kafra.
-//===== Additional Comments: =================================
-//= v1.2 Optimized with functions.[kobra_k88]
-//= v1.3 Changed "Kafra Service" to "Kafra Staff" [L0ne_W0lf]
-//=	Corrected the location of Castle 1's kafra.
-//============================================================
-
-
-// Castle 1 ===============================================
-gefg_cas01,83,47,0	script	Kafra Staff#G01	117,{
-	callfunc "F_GKafra", "gefg_cas01", "Geffen";
-	end;
-OnRecvCastleG01:
-	if (GetCastleData("gefg_cas01",9) < 1) disablenpc "Kafra Staff#G01";
-	end;
-}
-
-
-// Castle 2 ===============================================
-gefg_cas02,23,66,3	script	Kafra Staff#G02	117,{
-	callfunc "F_GKafra", "gefg_cas02", "Geffen";
-	end;
-OnRecvCastleG02:
-	if (GetCastleData("gefg_cas02",9) < 1) disablenpc "Kafra Staff#G02";
-	end;
-}
-
-
-// Castle 3 ===============================================
-gefg_cas03,116,89,5	script	Kafra Staff#G03	117,{
-	callfunc "F_GKafra", "gefg_cas03", "Geffen";
-	end;
-OnRecvCastleG03:
-	if (GetCastleData("gefg_cas03",9) < 1) disablenpc "Kafra Staff#G03";
-	end;
-}
-
-
-// Castle 4 ===============================================
-gefg_cas04,59,70,3	script	Kafra Staff#G04	117,{
-	callfunc "F_GKafra", "gefg_cas04", "Geffen";
-	end;
-OnRecvCastleG04:
-	if (GetCastleData("gefg_cas04",9) < 1) disablenpc "Kafra Staff#G04";
-	end;
-}
-
-
-// Castle 5 ===============================================
-gefg_cas05,61,52,5	script	Kafra Staff#G05	117,{
-	callfunc "F_GKafra", "gefg_cas05", "Geffen";
-	end;
-OnRecvCastleG05:
-	if (GetCastleData("gefg_cas05",9) < 1) disablenpc "Kafra Staff#G05";
-	end;
-}

+ 0 - 96
npc/guild/gefg/gefg_managers.txt

@@ -1,96 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium Managers for Geffen Guild Castles
-//===== By: ==================================================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//===== Current Version: =====================================
-//= 1.3
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= 
-//===== Additional Comments: =================================
-//= v1.2 Optimized with functions.[kobra_k88]
-//= 1.3 Updated Guardian positions and types. [L0ne_W0lf]
-//=	Updated manager names, and some additional info
-//============================================================
-
-
-// Castle 1 ==================================================================================
-gefg_cas01,40,48,5	script	Gnahcher#gef1	55,{
-	if(callfunc("F_GldManager","Steward Gnahcher","gefg_cas01",152,117,"G01") == 0) close;
-
-	if (@GDnum == 10) guardian "gefg_cas01",67,179,"Guardian Soldier",1287,"Guardian_G01::OnGuardianDied",0;
-	if (@GDnum == 11) guardian "gefg_cas01",184,20,"Guardian Soldier",1287,"Guardian_G01::OnGuardianDied",1;
-	if (@GDnum == 12) guardian "gefg_cas01",62,41,"Guardian Soldier",1287,"Guardian_G01::OnGuardianDied",2;
-	if (@GDnum == 13) guardian "gefg_cas01",36,186,"Guardian Archer",1285,"Guardian_G01::OnGuardianDied",3;
-	if (@GDnum == 14) guardian "gefg_cas01",50,186,"Guardian Archer",1285,"Guardian_G01::OnGuardianDied",4;
-	if (@GDnum == 15) guardian "gefg_cas01",50,67,"Guardian Knight",1286,"Guardian_G01::OnGuardianDied",5;
-	if (@GDnum == 16) guardian "gefg_cas01",189,41,"Guardian Knight",1286,"Guardian_G01::OnGuardianDied",6;
-	if (@GDnum == 17) guardian "gefg_cas01",200,167,"Guardian Knight",1286,"Guardian_G01::OnGuardianDied",7;
-	close;
-}
-
-
-// Castle 2 ==================================================================================
-gefg_cas02,12,66,5	script	Esmarehk#gef2	55,{
-	if(callfunc("F_GldManager","Steward Esmarehk","gefg_cas02",145,115,"G02") == 0) close;
-
-	if (@GDnum == 10) guardian "gefg_cas02",64,168,"Guardian Soldier",1287,"Guardian_G02::OnGuardianDied",0;
-	if (@GDnum == 11) guardian "gefg_cas02",56,41,"Guardian Soldier",1287,"Guardian_G02::OnGuardianDied",1;
-	if (@GDnum == 12) guardian "gefg_cas02",166,25,"Guardian Soldier",1287,"Guardian_G02::OnGuardianDied",2;
-	if (@GDnum == 13) guardian "gefg_cas02",35,148,"Guardian Archer",1285,"Guardian_G02::OnGuardianDied",3;
-	if (@GDnum == 14) guardian "gefg_cas02",20,150,"Guardian Archer",1285,"Guardian_G02::OnGuardianDied",4;
-	if (@GDnum == 15) guardian "gefg_cas02",19,41,"Guardian Knight",1286,"Guardian_G02::OnGuardianDied",5;
-	if (@GDnum == 16) guardian "gefg_cas02",166,42,"Guardian Knight",1286,"Guardian_G02::OnGuardianDied",6;
-	if (@GDnum == 17) guardian "gefg_cas02",159,188,"Guardian Knight",1286,"Guardian_G02::OnGuardianDied",7;
-	close;
-}
-
-
-// Castle 3 ==================================================================================
-gefg_cas03,106,23,5	script	Jean#gef3	55,{
-	if(callfunc("F_GldManager","Steward Jean","gefg_cas03",275,289,"G03") == 0) close;
-
-	if (@GDnum == 10) guardian "gefg_cas03",48,176,"Guardian Archer",1285,"Guardian_G03::OnGuardianDied",0;
-	if (@GDnum == 11) guardian "gefg_cas03",113,214,"Guardian Archer",1285,"Guardian_G03::OnGuardianDied",1;
-	if (@GDnum == 12) guardian "gefg_cas03",48,207,"Guardian Soldier",1287,"Guardian_G03::OnGuardianDied",2;
-	if (@GDnum == 13) guardian "gefg_cas03",157,62,"Guardian Soldier",1287,"Guardian_G03::OnGuardianDied",3;
-	if (@GDnum == 14) guardian "gefg_cas03",243,41,"Guardian Soldier",1287,"Guardian_G03::OnGuardianDied",4;
-	if (@GDnum == 15) guardian "gefg_cas03",157,45,"Guardian Knight",1286,"Guardian_G03::OnGuardianDied",5;
-	if (@GDnum == 16) guardian "gefg_cas03",234,25,"Guardian Knight",1286,"Guardian_G03::OnGuardianDied",6;
-	if (@GDnum == 17) guardian "gefg_cas03",238,160,"Guardian Knight",1286,"Guardian_G03::OnGuardianDied",7;
-	close;
-}
-
-
-// Castle 4 ==================================================================================
-gefg_cas04,73,46,3	script	Kellvahni#gef4	55,{
-	if(callfunc("F_GldManager","Steward Kellvahni","gefg_cas04",116,123,"G04") == 0) close;
-
-	if (@GDnum == 10) guardian "gefg_cas04",53,191,"Guardian Archer",1285,"Guardian_G04::OnGuardianDied",0;
-	if (@GDnum == 11) guardian "gefg_cas04",31,178,"Guardian Archer",1285,"Guardian_G04::OnGuardianDied",1;
-	if (@GDnum == 12) guardian "gefg_cas04",49,220,"Guardian Soldier",1287,"Guardian_G04::OnGuardianDied",2;
-	if (@GDnum == 13) guardian "gefg_cas04",29,46,"Guardian Soldier",1287,"Guardian_G04::OnGuardianDied",3;
-	if (@GDnum == 14) guardian "gefg_cas04",147,65,"Guardian Soldier",1287,"Guardian_G04::OnGuardianDied",4;
-	if (@GDnum == 15) guardian "gefg_cas04",57,46,"Guardian Knight",1286,"Guardian_G04::OnGuardianDied",5;
-	if (@GDnum == 16) guardian "gefg_cas04",160,50,"Guardian Knight",1286,"Guardian_G04::OnGuardianDied",6;
-	if (@GDnum == 17) guardian "gefg_cas04",148,189,"Guardian Knight",1286,"Guardian_G04::OnGuardianDied",7;
-	close;
-}
-
-
-// Castle 5 ==================================================================================
-gefg_cas05,70,52,3	script	Byohre#gef5	55,{
-	if(callfunc("F_GldManager","Steward Byohre","gefg_cas05",149,106,"G05") == 0) close;
-
-	if (@GDnum == 10) guardian "gefg_cas05",45,149,"Guardian Archer",1285,"Guardian_G05::OnGuardianDied",0;
-	if (@GDnum == 11) guardian "gefg_cas05",71,163,"Guardian Archer",1285,"Guardian_G05::OnGuardianDied",1;
-	if (@GDnum == 12) guardian "gefg_cas05",72,142,"Guardian Soldier",1287,"Guardian_G05::OnGuardianDied",2;
-	if (@GDnum == 13) guardian "gefg_cas05",66,47,"Guardian Soldier",1287,"Guardian_G05::OnGuardianDied",3;
-	if (@GDnum == 14) guardian "gefg_cas05",177,50,"Guardian Soldier",1287,"Guardian_G05::OnGuardianDied",4;
-	if (@GDnum == 15) guardian "gefg_cas05",66,17,"Guardian Knight",1286,"Guardian_G05::OnGuardianDied",5;
-	if (@GDnum == 16) guardian "gefg_cas05",177,35,"Guardian Knight",1286,"Guardian_G05::OnGuardianDied",6;
-	if (@GDnum == 17) guardian "gefg_cas05",193,166,"Guardian Knight",1286,"Guardian_G05::OnGuardianDied",7;
-	close;
-}

+ 0 - 170
npc/guild/gefg/gefg_treas.txt

@@ -1,170 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium Treasure Rooms for Geffen Guild Castles
-//===== By: ==================================================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//===== Current Version: =====================================
-//= 1.3
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//=
-//===== Additional Comments: =================================
-//= v1.2 Optimized with functions.[kobra_k88]
-//= 1.3 Removed announces when you open chests. [L0ne_W0lf]
-//============================================================
-
-
-//<============================ Castle 1 ==================================>\\
-
-// Treasure Spawn ---------------------------------------------------------
-gefg_cas01,1,1,1	script	Treasure_G01	-1,{
-
-OnRecvCastleG01:
-	end;
-OnInit:
-	if($boxNumG01 == 0) end;
-	set $@bxG01, $boxNumG01;
-	callfunc "F_GldTreas","gefg_cas01","G01",$boxNumG01,$@bxG01,$@boxIdG01,1334,150,108,158,114,1;
-	end;
-
-OnDied:
-	set $boxNumG01, $boxNumG01 -1;
-	end;
-}
-
-// Room Switch ---------------------------------------------------------
-gefg_cas01,152,117,0	script	Switch#TresG01	111,{
-	callfunc "F_GldTreasSw","gefg_cas01",40,49;
-	end;
-}
-
-// Treasure Room Protection ------------------------------------------------
-gefg_cas01,154,112,0	script	ban_warp#16	-1,6,6,{
-OnTouch:
-	callfunc "F_TreasProtect", "gefg_cas01", "geffen",120,38;
-	end;
-}
-
-//<================================ Castle 2 ================================>\\
-
-// Treasure Spawn ---------------------------------------------------------
-gefg_cas02,1,1,1	script	Treasure_G02	-1,{
-
-OnRecvCastleG02:
-	end;
-OnInit:
-	if($boxNumG02 == 0) end;
-	set $@bxG02, $boxNumG02;
-	callfunc "F_GldTreas","gefg_cas02","G02",$boxNumG02,$@bxG02,$@boxIdG02,1336,136,112,145,118,1;
-	end;
-
-OnDied:
-	set $boxNumG02, $boxNumG02 -1;
-	end;
-}
-
-// Room Switch ---------------------------------------------------------
-gefg_cas02,145,115,0	script	Switch#TresG02	111,{
-	callfunc "F_GldTreasSw", "gefg_cas02",12,67;
-}
-
-// Treasure Room Protection ------------------------------------------------
-gefg_cas02,140,116,0	script	ban_warp#17	-1,6,6,{
-OnTouch:
-	callfunc "F_TreasProtect", "gefg_cas02", "geffen",120,38;
-	end;
-}
-
-//<================================= Castle 3 ===============================>\\
-
-// Treasure Spawn ---------------------------------------------------------
-gefg_cas03,1,1,1	script	Treasure_G03	-1,{
-
-OnRecvCastleG03:
-	end;
-OnInit:
-	if($boxNumG03 == 0) end;
-	set $@bxG03, $boxNumG03;
-	callfunc "F_GldTreas","gefg_cas03","G03",$boxNumG03,$@bxG03,$@boxIdG03,1338,266,286,275,293,1;
-	end;
-
-OnDied:
-	set $boxNumG03, $boxNumG03 -1;
-	end;
-}
-
-// Room Switch ---------------------------------------------------------
-gefg_cas03,275,289,0	script	Switch#TresG03	111,{
-	callfunc "F_GldTreasSw", "gefg_cas03",106,24;
-	end;
-}
-
-// Treasure Room Protection ------------------------------------------------
-gefg_cas03,271,290,0	script	ban_warp#18	-1,6,6,{
-OnTouch:
-	callfunc "F_TreasProtect", "gefg_cas03", "geffen",120,38;
-	end;
-}
-
-//<=============================== Castle 4 ================================>\\
-
-// Treasure Spawn ---------------------------------------------------------
-gefg_cas04,1,1,1	script	Treasure_G04	-1,{
-
-OnRecvCastleG04:
-	end;
-OnInit:
-	if($boxNumG04 == 0) end;
-	set $@bxG04, $boxNumG04;
-	callfunc "F_GldTreas","gefg_cas04","G04",$boxNumG04,$@bxG04,$@boxIdG04,1340,112,114,119,123,1;
-	end;
-
-OnDied:
-	set $boxNumG04, $boxNumG04 -1;
-	end;
-}
-
-// Room Switch ---------------------------------------------------------
-gefg_cas04,117,123,0	script	Switch#TresG04	111,{
-	callfunc "F_GldTreasSw", "gefg_cas04",73,47;
-	end;
-}
-
-// Treasure Room Protection ------------------------------------------------
-gefg_cas04,116,119,0	script	ban_warp#19	-1,6,6,{
-OnTouch:
-	callfunc "F_TreasProtect", "gefg_cas04", "geffen",120,38;
-	end;
-}
-
-//<================================ Castle 5 ================================>\\
-
-// Treasure Spawn ---------------------------------------------------------
-gefg_cas05,1,1,1	script	Treasure_G05	-1,{
-
-OnRecvCastleG05:
-	end;
-OnInit:
-	if($boxNumG05 == 0) end;
-	set $@bxG05, $boxNumG05;
-	callfunc "F_GldTreas","gefg_cas05","G05",$boxNumG05,$@bxG05,$@boxIdG05,1342,140,106,147,113,1;
-	end;
-
-OnDied:
-	set $boxNumG05, $boxNumG05 -1;
-	end;
-}
-
-// Room Switch ---------------------------------------------------------
-gefg_cas05,149,107,0	script	Switch#TresG05	111,{
-	callfunc "F_GldTreasSw", "gefg_cas05",70,53;
-	close;
-}
-
-// Treasure Room Protection ------------------------------------------------
-gefg_cas05,144,110,0	script	ban_warp#20	-1,6,6,{
-OnTouch:
-	callfunc "F_TreasProtect", "gefg_cas05", "geffen",120,38;
-	end;
-}

+ 163 - 0
npc/guild/gefg_cas01.txt

@@ -0,0 +1,163 @@
+//===== eAthena Script =======================================
+//= War of Emperium (Geffen)
+//===== By: ==================================================
+//= L0ne_W0lf
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= NPCs that relate to Geffen Guild Castle 1
+//===== Additional Comments: =================================
+//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
+//============================================================
+
+// Guild Flag (Town)
+//============================================================
+geffen,109,123,2	script	Repherion#g1-1::Repherion	722,{
+	end;
+
+OnRecvCastleG01:
+	FlagEmblem GetCastleData("gefg_cas01",1);
+	end;
+}
+
+// Guild Flag (Outside Castle)
+//============================================================
+gef_fild13,148,51,5	script	Repherion#g1-2::Repherion2	722,{
+	set .@GID, GetCastleData("gefg_cas01",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		if (getcharid(2) == .@GID) {
+			mes "Brave ones...";
+			mes "Do you wish to return to your honorable place?";
+			next;
+			if (select("Return to the guild castle.:Quit.") == 1) {
+				if (getcharid(2) == GetCastleData("gefg_cas01",1)) {
+					warp "gefg_cas01",83,47;
+					end;
+				}
+			}
+			close;
+		}
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastleG01:
+	FlagEmblem GetCastleData("gefg_cas01",1);
+	end;
+}
+
+gef_fild13,155,54,5	duplicate(Repherion2)	Repherion#g1-3	722
+gef_fild13,212,79,6	duplicate(Repherion2)	Repherion#g1-4	722
+gef_fild13,211,71,6	duplicate(Repherion2)	Repherion#g1-5	722
+
+// Guild Flag (Inside Castle)
+//============================================================
+gefg_cas01,28,157,4	script	Repherion#g1-6::Repherion3	722,{
+	set .@GID, GetCastleData("gefg_cas01",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastleG01:
+	FlagEmblem GetCastleData("gefg_cas01",1);
+	end;
+}
+
+gefg_cas01,22,156,5	duplicate(Repherion3)	Repherion#g1-7	722
+gefg_cas01,68,185,3	duplicate(Repherion3)	Repherion#g1-8	722
+gefg_cas01,17,171,5	duplicate(Repherion3)	Repherion#g1-9	722
+gefg_cas01,59,16,4	duplicate(Repherion3)	Repherion#g1-10	722
+gefg_cas01,64,16,4	duplicate(Repherion3)	Repherion#g1-11	722
+
+// AGIT Manager
+//============================================================
+gefg_cas01,198,182,0	duplicate(Gld_Agit_Manager)	Agit#gefg_cas01	-1
+
+// Steward
+//============================================================
+gefg_cas01,40,48,5	duplicate(Gld_Mngr_Template)	Gnahcher#gefg_cas01	55
+
+// Guardians
+//============================================================
+gefg_cas01,40,48,5	duplicate(Gld_Guard_Template)	Guardian#gefg_cas01	-1
+
+// Kafra Staff
+//============================================================
+gefg_cas01,84,47,0	duplicate(Gld_Kafra_Template)	Kafra Staff#gefg_cas01	117
+
+// Master's Room Exit
+//============================================================
+gefg_cas01,152,117,0	script	#switch_G01	111,{
+	mes " ";
+	mes "There's a small lever. Will you pull it? ";
+	next;
+	switch(select("Pull.:Do not.")) {
+	case 1:
+		warp "gefg_cas01",40,49;
+		break;
+	case 2:
+		break;
+	}
+	end;
+}
+
+// Guild Treasure Protection
+//============================================================
+gefg_cas01,154,112,0	duplicate(Gld_Trea_Protect)	ban_warp#gefg_cas01	-1,6,6
+
+// Guild Treasure Spawns
+//============================================================
+gefg_cas01,154,112,0	duplicate(Gld_Trea_Spawn)	Treasure#gefg_cas01	-1
+
+// Guild Dungeon Switch
+//============================================================
+gefg_cas01,78,84,0	duplicate(Gld_Dun_Template)	#gefg_cas01	111

+ 164 - 0
npc/guild/gefg_cas02.txt

@@ -0,0 +1,164 @@
+//===== eAthena Script =======================================
+//= War of Emperium (Geffen)
+//===== By: ==================================================
+//= L0ne_W0lf
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= NPCs that relate to Geffen Guild Castle 2
+//===== Additional Comments: =================================
+//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
+//============================================================
+
+// Guild Flag (Town)
+//============================================================
+geffen,113,130,1	script	Eeyolbriggar#g2-1::Eeyolbriggar	722,{
+	end;
+
+OnRecvCastleG02:
+	FlagEmblem GetCastleData("gefg_cas02",1);
+	end;
+}
+
+// Guild Flag (Outside Castle)
+//============================================================
+gef_fild13,303,243,4	script	Eeyolbriggar#g2-2::Eeyolbriggar2	722,{
+	set .@GID, GetCastleData("gefg_cas02",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		if (getcharid(2) == .@GID) {
+			mes "Brave ones...";
+			mes "Do you wish to return to your honorable place?";
+			next;
+			if (select("Return to the guild castle.:Quit.") == 1) {
+				if (getcharid(2) == GetCastleData("gefg_cas02",1)) {
+					warp "gefg_cas02",23,66;
+					end;
+				}
+			}
+			close;
+		}
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastleG02:
+	FlagEmblem GetCastleData("gefg_cas02",1);
+	end;
+}
+
+gef_fild13,312,243,4	duplicate(Eeyolbriggar2)	Eeyolbriggar#g2-3	722
+gef_fild13,290,243,4	duplicate(Eeyolbriggar2)	Eeyolbriggar#g2-4	722
+gef_fild13,324,243,4	duplicate(Eeyolbriggar2)	Eeyolbriggar#g2-5	722
+
+// Guild Flag (Inside Castle)
+//============================================================
+gefg_cas02,65,130,5	script	Eeyolbriggar#g2-6::Eeyolbriggar3	722,{
+	set .@GID, GetCastleData("gefg_cas02",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastleG02:
+	FlagEmblem GetCastleData("gefg_cas02",1);
+	end;
+}
+
+gefg_cas02,30,123,5	duplicate(Eeyolbriggar3)	Eeyolbriggar#g2-7	722
+gefg_cas02,65,139,6	duplicate(Eeyolbriggar3)	Eeyolbriggar#g2-8	722
+gefg_cas02,37,177,6	duplicate(Eeyolbriggar3)	Eeyolbriggar#g2-9	722
+gefg_cas02,37,168,6	duplicate(Eeyolbriggar3)	Eeyolbriggar#g2-10	722
+gefg_cas02,68,47,2	duplicate(Eeyolbriggar3)	Eeyolbriggar#g2-11	722
+gefg_cas02,68,36,2	duplicate(Eeyolbriggar3)	Eeyolbriggar#g2-12	722
+
+// AGIT Manager
+//============================================================
+gefg_cas02,176,178,0	duplicate(Gld_Agit_Manager)	Agit#gefg_cas02	-1
+
+// Steward
+//============================================================
+gefg_cas02,12,66,5	duplicate(Gld_Mngr_Template)	Esmarehk#gefg_cas02	55
+
+// Guardians
+//============================================================
+gefg_cas02,12,66,5	duplicate(Gld_Guard_Template)	Guardian#gefg_cas02	-1
+
+// Kafra Staff
+//============================================================
+gefg_cas02,23,66,3	duplicate(Gld_Kafra_Template)	Kafra Staff#gefg_cas02	117
+
+// Master's Room Exit
+//============================================================
+gefg_cas02,145,115,0	script	#switch_G02	111,{
+	mes " ";
+	mes "There's a small lever. Will you pull it? ";
+	next;
+	switch(select("Pull.:Do not.")) {
+	case 1:
+		warp "gefg_cas02",12,67;
+		break;
+	case 2:
+		break;
+	}
+	end;
+}
+
+// Guild Treasure Protection
+//============================================================
+gefg_cas02,140,116,0	duplicate(Gld_Trea_Protect)	ban_warp#gefg_cas02	-1,6,6
+
+// Guild Treasure Spawns
+//============================================================
+gefg_cas02,140,116,0	duplicate(Gld_Trea_Spawn)	Treasure#gefg_cas02	-1
+
+// Guild Dungeon Switch
+//============================================================
+gefg_cas02,167,40,0	duplicate(Gld_Dun_Template)	#gefg_cas02	111

+ 167 - 0
npc/guild/gefg_cas03.txt

@@ -0,0 +1,167 @@
+//===== eAthena Script =======================================
+//= War of Emperium (Geffen)
+//===== By: ==================================================
+//= L0ne_W0lf
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= NPCs that relate to Geffen Guild Castle 3
+//===== Additional Comments: =================================
+//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
+//============================================================
+
+// Guild Flag (Town)
+//============================================================
+geffen,120,132,8	script	Yesnelph#g3-1::Yesnelph	722,{
+	end;
+
+OnRecvCastleG03:
+	FlagEmblem GetCastleData("gefg_cas03",1);
+	end;
+}
+
+// Guild Flag (Outside Castle)
+//============================================================
+gef_fild13,78,182,4	script	Yesnelph#g3-2::Yesnelph2	722,{
+	set .@GID, GetCastleData("gefg_cas03",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		if (getcharid(2) == .@GID) {
+			mes "Brave ones...";
+			mes "Do you wish to return to your honorable place?";
+			next;
+			if (select("Return to the guild castle.:Quit.") == 1) {
+				if (getcharid(2) == GetCastleData("gefg_cas03",1)) {
+					warp "gefg_cas03",116,89;
+					end;
+				}
+			}
+			close;
+		}
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastleG03:
+	FlagEmblem GetCastleData("gefg_cas03",1);
+	end;
+}
+
+gef_fild13,87,182,4	duplicate(Yesnelph2)	Yesnelph#g3-3	722
+gef_fild13,73,295,7	duplicate(Yesnelph2)	Yesnelph#g3-4	722
+gef_fild13,113,274,7	duplicate(Yesnelph2)	Yesnelph#g3-5	722
+gef_fild13,144,235,6	duplicate(Yesnelph2)	Yesnelph#g3-6	722
+gef_fild13,144,244,4	duplicate(Yesnelph2)	Yesnelph#g3-7	722
+
+// Guild Flag (Inside Castle)
+//============================================================
+gefg_cas03,122,220,6	script	Yesnelph#g3-8::Yesnelph3	722,{
+	set .@GID, GetCastleData("gefg_cas03",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastleG03:
+	FlagEmblem GetCastleData("gefg_cas03",1);
+	end;
+}
+
+gefg_cas03,122,229,6	duplicate(Yesnelph3)	Yesnelph#g3-9	722
+gefg_cas03,91,257,7	duplicate(Yesnelph3)	Yesnelph#g3-10	722
+gefg_cas03,52,276,7	duplicate(Yesnelph3)	Yesnelph#g3-11	722
+gefg_cas03,56,164,4	duplicate(Yesnelph3)	Yesnelph#g3-12	722
+gefg_cas03,65,164,4	duplicate(Yesnelph3)	Yesnelph#g3-13	722
+gefg_cas03,37,214,1	duplicate(Yesnelph3)	Yesnelph#g3-14	722
+gefg_cas03,34,208,1	duplicate(Yesnelph3)	Yesnelph#g3-15	722
+
+// AGIT Manager
+//============================================================
+gefg_cas03,245,167,0	duplicate(Gld_Agit_Manager)	Agit#gefg_cas03	-1
+
+// Steward
+//============================================================
+gefg_cas03,106,23,5	duplicate(Gld_Mngr_Template)	Jean#gefg_cas03	55
+
+// Guardians
+//============================================================
+gefg_cas03,106,23,5	duplicate(Gld_Guard_Template)	Guardian#gefg_cas03	-1
+
+// Kafra Staff
+//============================================================
+gefg_cas03,116,89,5	duplicate(Gld_Kafra_Template)	Kafra Staff#gefg_cas03	117
+
+// Master's Room Exit
+//============================================================
+gefg_cas03,275,289,0	script	#switch_G03	111,{
+	mes " ";
+	mes "There's a small lever. Will you pull it? ";
+	next;
+	switch(select("Pull.:Do not.")) {
+	case 1:
+		warp "gefg_cas03",106,24;
+		break;
+	case 2:
+		break;
+	}
+	end;
+}
+
+// Guild Treasure Protection
+//============================================================
+gefg_cas03,271,290,0	duplicate(Gld_Trea_Protect)	ban_warp#gefg_cas03	-1,6,6
+
+// Guild Treasure Spawns
+//============================================================
+gefg_cas03,271,290,0	duplicate(Gld_Trea_Spawn)	Treasure#gefg_cas03	-1
+
+// Guild Dungeon Switch
+//============================================================
+gefg_cas03,221,43,0	duplicate(Gld_Dun_Template)	#gefg_cas03	111

+ 163 - 0
npc/guild/gefg_cas04.txt

@@ -0,0 +1,163 @@
+//===== eAthena Script =======================================
+//= War of Emperium (Geffen)
+//===== By: ==================================================
+//= L0ne_W0lf
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= NPCs that relate to Geffen Guild Castle 4
+//===== Additional Comments: =================================
+//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
+//============================================================
+
+// Guild Flag (Town)
+//============================================================
+geffen,127,130,7	script	Bergel#g4-1::Bergel	722,{
+	end;
+
+OnRecvCastleG04:
+	FlagEmblem GetCastleData("gefg_cas04",1);
+	end;
+}
+
+// Guild Flag (Outside Castle)
+//============================================================
+gef_fild13,190,283,3	script	Bergel#g4-2::Bergel2	722,{
+	set .@GID, GetCastleData("gefg_cas04",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		if (getcharid(2) == .@GID) {
+			mes "Brave ones...";
+			mes "Do you wish to return to your honorable place?";
+			next;
+			if (select("Return to the guild castle.:Quit.") == 1) {
+				if (getcharid(2) == GetCastleData("gefg_cas04",1)) {
+					warp "gefg_cas04",59,70;
+					end;
+				}
+			}
+			close;
+		}
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastleG04:
+	FlagEmblem GetCastleData("gefg_cas04",1);
+	end;
+}
+
+gef_fild13,199,274,3	duplicate(Bergel2)	Bergel#g4-3	722
+
+// Guild Flag (Inside Castle)
+//============================================================
+gefg_cas04,24,157,4	script	Bergel#g4-4::Bergel3	722,{
+	set .@GID, GetCastleData("gefg_cas04",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastleG04:
+	FlagEmblem GetCastleData("gefg_cas04",1);
+	end;
+}
+
+gefg_cas04,35,158,4	duplicate(Bergel3)	Bergel#g4-5	722
+gefg_cas04,44,184,4	duplicate(Bergel3)	Bergel#g4-6	722
+gefg_cas04,51,184,4	duplicate(Bergel3)	Bergel#g4-7	722
+gefg_cas04,39,212,7	duplicate(Bergel3)	Bergel#g4-8	722
+gefg_cas04,29,212,1	duplicate(Bergel3)	Bergel#g4-9	722
+gefg_cas04,24,73,1	duplicate(Bergel3)	Bergel#g4-10	722
+gefg_cas04,35,73,4	duplicate(Bergel3)	Bergel#g4-11	722
+
+// AGIT Manager
+//============================================================
+gefg_cas04,174,178,0	duplicate(Gld_Agit_Manager)	Agit#gefg_cas04	-1
+
+// Steward
+//============================================================
+gefg_cas04,73,46,3	duplicate(Gld_Mngr_Template)	Kellvahni#gefg_cas04	55
+
+// Guardians
+//============================================================
+gefg_cas04,73,46,3	duplicate(Gld_Guard_Template)	Guardian#gefg_cas04	-1
+
+// Kafra Staff
+//============================================================
+gefg_cas04,59,70,3	duplicate(Gld_Kafra_Template)	Kafra Staff#gefg_cas04	117
+
+// Master's Room Exit
+//============================================================
+gefg_cas04,117,123,0	script	#switch_G04	111,{
+	mes " ";
+	mes "There's a small lever. Will you pull it? ";
+	next;
+	switch(select("Pull.:Do not.")) {
+	case 1:
+		warp "gefg_cas04",73,74;
+		break;
+	case 2:
+		break;
+	}
+	end;
+}
+
+// Guild Treasure Protection
+//============================================================
+gefg_cas04,116,119,0	duplicate(Gld_Trea_Protect)	ban_warp#gefg_cas04	-1,6,6
+
+// Guild Treasure Spawns
+//============================================================
+gefg_cas04,116,119,0	duplicate(Gld_Trea_Spawn)	Treasure#gefg_cas04	-1
+
+// Guild Dungeon Switch
+//============================================================
+gefg_cas04,58,75,0	duplicate(Gld_Dun_Template)	#gefg_cas04	111

+ 164 - 0
npc/guild/gefg_cas05.txt

@@ -0,0 +1,164 @@
+//===== eAthena Script =======================================
+//= War of Emperium (Geffen)
+//===== By: ==================================================
+//= L0ne_W0lf
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= NPCs that relate to Geffen Guild Castle 5
+//===== Additional Comments: =================================
+//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
+//============================================================
+
+// Guild Flag (Town)
+//============================================================
+geffen,131,123,6	script	Mersetzdeitz#g5-1::Mersetzdeitz	722,{
+	end;
+
+OnRecvCastleG05:
+	FlagEmblem GetCastleData("gefg_cas05",1);
+	end;
+}
+
+// Guild Flag (Outside Castle)
+//============================================================
+gef_fild13,302,87,7	script	Mersetzdeitz#g5-2::Mersetzdeitz2	722,{
+	set .@GID, GetCastleData("gefg_cas05",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		if (getcharid(2) == .@GID) {
+			mes "Brave ones...";
+			mes "Do you wish to return to your honorable place?";
+			next;
+			if (select("Return to the guild castle.:Quit.") == 1) {
+				if (getcharid(2) == GetCastleData("gefg_cas05",1)) {
+					warp "gefg_cas05",61,52;
+					end;
+				}
+			}
+			close;
+		}
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastleG05:
+	FlagEmblem GetCastleData("gefg_cas05",1);
+	end;
+}
+
+gef_fild13,313,83,0	duplicate(Mersetzdeitz2)	Mersetzdeitz#g5-3	722
+gef_fild13,252,51,2	duplicate(Mersetzdeitz2)	Mersetzdeitz#g5-4	722
+gef_fild13,26,147,2	duplicate(Mersetzdeitz2)	Mersetzdeitz#g5-5	722
+
+// Guild Flag (Inside Castle)
+//============================================================
+gefg_cas05,77,185,7	script	Mersetzdeitz#g5-5::Mersetzdeitz3	722,{
+	set .@GID, GetCastleData("gefg_cas05",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastleG05:
+	FlagEmblem GetCastleData("gefg_cas05",1);
+	end;
+}
+
+gefg_cas05,92,181,0	duplicate(Mersetzdeitz3)	Mersetzdeitz#g5-7	722
+gefg_cas05,83,158,1	duplicate(Mersetzdeitz3)	Mersetzdeitz#g5-8	722
+gefg_cas05,62,144,7	duplicate(Mersetzdeitz3)	Mersetzdeitz#g5-9	722
+gefg_cas05,62,66,4	duplicate(Mersetzdeitz3)	Mersetzdeitz#g5-10	722
+gefg_cas05,69,66,4	duplicate(Mersetzdeitz3)	Mersetzdeitz#g5-11	722
+
+
+// AGIT Manager
+//============================================================
+gefg_cas05,194,184,0	duplicate(Gld_Agit_Manager)	Agit#gefg_cas05	-1
+
+// Steward
+//============================================================
+gefg_cas05,70,52,3	duplicate(Gld_Mngr_Template)	Byohre#gefg_cas05	55
+
+// Guardians
+//============================================================
+gefg_cas05,70,52,3	duplicate(Gld_Guard_Template)	Guardian#gefg_cas05	-1
+
+// Kafra Staff
+//============================================================
+gefg_cas05,61,52,3	duplicate(Gld_Kafra_Template)	Kafra Staff#gefg_cas05	117
+
+// Master's Room Exit
+//============================================================
+gefg_cas05,149,107,0	script	#switch_G05	111,{
+	mes " ";
+	mes "There's a small lever. Will you pull it? ";
+	next;
+	switch(select("Pull.:Do not.")) {
+	case 1:
+		warp "gefg_cas05",70,53;
+		break;
+	case 2:
+		break;
+	}
+	end;
+}
+
+// Guild Treasure Protection
+//============================================================
+gefg_cas05,144,110,0	duplicate(Gld_Trea_Protect)	ban_warp#gefg_cas05	-1,6,6
+
+// Guild Treasure Spawns
+//============================================================
+gefg_cas05,144,110,0	duplicate(Gld_Trea_Spawn)	Treasure#gefg_cas05	-1
+
+// Guild Dungeon Switch
+//============================================================
+gefg_cas05,66,29,0	duplicate(Gld_Dun_Template)	#gefg_cas05	111

+ 0 - 54
npc/guild/gldfunc_dunsw.txt

@@ -1,54 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium Guild Dungeon Switch Function
-//===== By: ==================================================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//===== Current Version: =====================================
-//= 1.4
-//===== Compatible With: =====================================
-//= eAthena SVN; RO Episode 4+
-//===== Description: =========================================
-//= Switch that warps guild members to guild dungeon.
-//==========================================
-//= Break down of arguments used in the function:
-//=   arg(0): name of guild castle.
-//=   arg(1): guild dungeon level.
-//=   arg(2): x1 coordinate for warp
-//=   arg(3): y1 coordinate for warp
-//===== Additional Comments: =================================
-//= 1.2: All guild Dungeon Switch npcs use this function.[kobra_k88]
-//= 1.3 Reverted back. Don't listen to ... people at forums
-//	and check all bugs yourself!
-//	Some not competent people try to change gld_dun -> gld_dun0
-//	IT is wrong, because we already supple "02","03",etc as suffix.
-//	[Lupus]
-//= 1.4 Updated script dialog and structure. [L0ne_W0lf]
-//============================================================
-
-//==================================================
-function	script	F_GldDunSw	{
-	set .@GID, GetCastleData(getarg(0),1);
-	if (.@GID == 0) {
-		mes "[ Echoing Voice ]";
-		mes " ' The one who can overcome an ordeal and show true bravery... will find the way... ' ";
-		close;
-	}
-	else {
-		mes "[ Echoing Voice ]";
-		mes " ' Only the one who can show true bravery can take this test. '";
-		next;
-		mes " ";
-		mes "There's a small lever. Will you pull it?";
-		next;
-
-		if (select("Pull.:Do not.") == 1) {
-			if (getcharid(2) == .@GID) {
-				warp "gld_dun"+getarg(1),getarg(2),getarg(3);
-				end;
-			}
-			mes " ";
-			mes " Nothing happened.";
-		}
-		return;
-	}
-}

+ 0 - 190
npc/guild/gldfunc_ev_agit.txt

@@ -1,190 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium Guild Event AgitStart/AgitBreak Functions
-//===== By: ==================================================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//===== Current Version: =====================================
-//= 1.8
-//===== Compatible With: =====================================
-//= eAthena SVN; RO Episode 4+
-//===== Description: =========================================
-//= F_AgitStart is in charge of spawning Emperium and mobs in castles
-//=   when WoE is started.
-//= F_AgitBreak resets guild castle data when a castle has been taken over.
-//=   It then sets the data for the new guild master if there is one.
-//=======================================
-//= Break down of arguments used in F_AgitStart:
-//=   arg(0): name of specific guild castle.
-//=   arg(1): name of specific agit castle script.
-//=   arg(2): x1 for Emperium coordinates.
-//=   arg(3): y1 for Emperium coordinates.
-//= Break down of arguments used in F_AgitBreak:
-//=   arg(0): name of specific guild castle.
-//=   arg(1): name of specific OnRevCastle label.
-//===== Additional Comments: =================================
-//= v1.2: All OnAgitStart and OnAgitBreak calls will use these functions.[kobra_k88]
-//= v1.2a: Added OnAgitEnd function.[kobra_k88]
-//= 1.3 Added code for abandoning captured castles on /breakguild [Lupus]
-//= 1.3a fixed Defence / Economy underflow [Lupus] thanks2 kyoki
-//= 1.4 updated a couple mapannounces in OnAgitBreak. [L0ne_W0lf]
-//= 1.5 Changed the names of the Kafra from "Service" to "Staff" [L0ne_W0lf]
-//= 1.6 Fixed the OnAgitBreak message being map-only and not global. (Lil DomX) [L0ne_W0lf]
-//= 1.7 Updated functions, got rid of the various gotos. [L0ne_W0lf]
-//=	Castles can be conquered as long as they un-owned.
-//= 1.8 Fixed Guardian data being overwritten when castle ownership changes. [L0ne_W0lf]
-//=	Data will only be saved for guardians if you have the Guaridan Research.
-//=	It works this way to deal with a bug on ownership change.
-//= 1.9 Due to compunded stupidity in the way these scripts were written [L0ne_W0lf]
-//=	I have recommented out the official behavior for unaquired castles.
-//============================================================
-
-
-// Function for OnAgitStart =========================================
-function	script	F_AgitStart	{
-	set .@map$, getarg(0);
-	set .@castle$, getarg(1);
-	set .@empx, getarg(2);
-	set .@empy, getarg(3);
-
-	MapRespawnGuildID .@map$,GetCastleData(.@map$,1),2;
-	monster .@map$,.@empx,.@empy,"Emperium",1288,1,"Agit_"+.@castle$+"::OnAgitBreak";
-	GvgOn .@map$;
-	if (GetCastleData(.@map$,1) != 0) return;
-	if (compare(.@map$,"aldeg_cas")) {
-		areamonster .@map$,0,0,300,300,"--ja--",1117,10;
-		areamonster .@map$,0,0,300,300,"--ja--",1132,4;
-		areamonster .@map$,0,0,300,300,"--ja--",1219,2;
-		areamonster .@map$,0,0,300,300,"--ja--",1205,1;
-		areamonster .@map$,0,0,300,300,"--ja--",1216,10;
-		areamonster .@map$,0,0,300,300,"--ja--",1193,17;
-		areamonster .@map$,0,0,300,300,"--ja--",1269,9;
-		areamonster .@map$,0,0,300,300,"--ja--",1276,7;
-		areamonster .@map$,0,0,300,300,"--ja--",1208,3;
-		areamonster .@map$,0,0,300,300,"--ja--",1275,1;
-		areamonster .@map$,0,0,300,300,"--ja--",1268,1;
-		areamonster .@map$,0,0,300,300,"--ja--",1272,1;
-		monster .@map$,.@empx+1,.@empy,"--ja--",1272,1;
-		monster .@map$,.@empx-1,.@empy,"--ja--",1270,4;
-		monster .@map$,.@empx,.@empy+1,"--ja--",1268,1;
-		monster .@map$,.@empx,.@empy-1,"--ja--",1219,1;
-		monster .@map$,.@empx,.@empy,"--ja--",1276,5;
-		return;
-	}
-	else if (compare(.@map$,"gefg_cas")) {
-		areamonster .@map$,0,0,300,300,"--ja--",1117,10;
-		areamonster .@map$,0,0,300,300,"--ja--",1263,11;
-		areamonster .@map$,0,0,300,300,"--ja--",1102,10;
-		areamonster .@map$,0,0,300,300,"--ja--",1130,10;
-		areamonster .@map$,0,0,300,300,"--ja--",1140,20;
-		areamonster .@map$,0,0,300,300,"--ja--",1163,9;
-		areamonster .@map$,0,0,300,300,"--ja--",1275,1;
-		areamonster .@map$,0,0,300,300,"--ja--",1219,1;
-		areamonster .@map$,0,0,300,300,"--ja--",1150,1;
-		areamonster .@map$,0,0,300,300,"--ja--",1159,1;
-		monster .@map$,.@empx+1,.@empy,"--ja--",1203,1;
-		monster .@map$,.@empx-1,.@empy,"--ja--",1087,1;
-		monster .@map$,.@empx,.@empy+1,"--ja--",1213,7;
-		monster .@map$,.@empx,.@empy-1,"--ja--",1189,7;
-		return;
-	}
-	else if (compare(.@map$,"payg_cas")) {
-		areamonster .@map$,0,0,300,300,"--ja--",1277,10;
-		areamonster .@map$,0,0,300,300,"--ja--",1208,10;
-		areamonster .@map$,0,0,300,300,"--ja--",1262,5;
-		areamonster .@map$,0,0,300,300,"--ja--",1102,5;
-		areamonster .@map$,0,0,300,300,"--ja--",1150,1;
-		areamonster .@map$,0,0,300,300,"--ja--",1115,1;
-		areamonster .@map$,0,0,300,300,"--ja--",1129,11;
-		areamonster .@map$,0,0,300,300,"--ja--",1276,5;
-		areamonster .@map$,0,0,300,300,"--ja--",1282,4;
-		areamonster .@map$,0,0,300,300,"--ja--",1253,5;
-		monster .@map$,.@empx,.@empy,"--ja--",1150,1;
-		monster .@map$,.@empx,.@empy,"--ja--",1115,1;
-		monster .@map$,.@empx,.@empy+1,"--ja--",1208,6;
-		monster .@map$,.@empx,.@empy-1,"--ja--",1276,5;
-		return;
-	}
-	else if (compare(.@map$,"prtg_cas")) {
-		areamonster .@map$,0,0,300,300,"--ja--",1163,15;
-		areamonster .@map$,0,0,300,300,"--ja--",1132,10;
-		areamonster .@map$,0,0,300,300,"--ja--",1219,5;
-		areamonster .@map$,0,0,300,300,"--ja--",1268,5;
-		areamonster .@map$,0,0,300,300,"--ja--",1251,1;
-		areamonster .@map$,0,0,300,300,"--ja--",1252,1;
-		areamonster .@map$,0,0,300,300,"--ja--",1276,5;
-		areamonster .@map$,0,0,300,300,"--ja--",1259,1;
-		areamonster .@map$,0,0,300,300,"--ja--",1283,1;
-		areamonster .@map$,0,0,300,300,"--ja--",1275,1;
-		areamonster .@map$,0,0,300,300,"--ja--",1200,1;
-		monster .@map$,.@empx+1,.@empy,"--ja--",1268,1;
-		monster .@map$,.@empx-1,.@empy,"--ja--",1251,1;
-		monster .@map$,.@empx,.@empy+1,"--ja--",1252,1;
-		monster .@map$,.@empx,.@empy-1,"--ja--",1219,2;
-		monster .@map$,.@empx,.@empy,"--ja--",1276,5;
-		return;
-	}
-}
-
-// Function for OnGuildBreak ======================================
-function	script	F_GuildBreak	{
-	set .@map$, getarg(0);
-	set .@castle$, getarg(1);
-
-	killmonsterall .@map$;
-
-	Announce "Guild Base [" + GetCastleName(.@map$) + "] has been abandoned.",0;
-	disablenpc "Kafra Staff#"+.@castle$;
-
-	SetCastleData .@map$,0,0;
-	return;
-}
-
-// Function for OnAgitBreak ======================================
-function	script	F_AgitBreak	{
-	set .@map$, getarg(0);
-	set .@castle$, getarg(1);
-
-	set .@GID,getcharid(2);
-	if (.@GID <= 0) return;
-
-	set .@Economy,GetCastleData(.@map$,2) - 5;
-	if (.@Economy < 0) set .@Economy, 0;
-	SetCastleData .@map$, 2, .@Economy;
-
-	set .@Defence,GetCastleData(.@map$,3) - 5;
-	if (.@Defence < 0) set .@Defence, 0;
-	SetCastleData .@map$, 3, .@Defence;
-
-	SetCastleData .@map$,1, .@GID;
-	MapAnnounce .@map$,"The emperium has been destroyed.",bc_map,0x00CCFF;
-	Announce "The [" + GetCastleName(.@map$) + "] castle has been conquered by the [" + GetGuildName(.@GID) + "] guild.",bc_all;
-	GetCastleData .@map$,0,"::OnRecvCastle"+.@castle$;
-
-	disablenpc "Kafra Staff#"+.@castle$;
-
-	// remove investment data and kafra
-	for( set .@i, 4; .@i <= 9; set .@i, .@i+1 )
-		SetCastleData .@map$, .@i, 0;
-
-	// if the new guild doesn't have Guardian Research, erase guardians
-	if( getgdskilllv(.@GID,10002) == 0 )
-		for( set .@i, 10; .@i <= 17; set .@i, .@i+1 )
-			SetCastleData .@map$, .@i, 0;
-
-	return;
-}
-
-
-// Function for OnAgitEnd ======================================
-function	script	F_AgitEnd	{
-	set .@map$, getarg(0);
-	set .@castle$, getarg(1);
-
-	GvgOff .@map$;
-	// Disable the following if statment to keep empty
-	// castles from being aquired after after WoE ends.
-	//if (GetCastleData(.@map$,1) == 0) return;
-	MapRespawnGuildID .@map$,GetCastleData(.@map$,1),4;
-	KillMonster .@map$,"Agit_"+.@castle$+"::OnAgitBreak";
-	end;
-}

+ 0 - 72
npc/guild/gldfunc_flag.txt

@@ -1,72 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium Guild Flags Function
-//===== By: ==================================================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//===== Current Version: =====================================
-//= 1.6
-//===== Compatible With: =====================================
-//= eAthena SVN; RO Episode 4+
-//===== Description: =========================================
-//= Flags display messages stating whether or not a guild castle has been captured.
-//= Allows the guild members to return to a captured castle.
-//======================================
-//= Break down of arguments used in the function:
-//=   arg(0): name of City.
-//=   arg(1): name of guild castle.
-//=   arg(2): x1 coordinate for warp
-//=   arg(3): y1 coordinate for warp
-//=   arg(4): Teleportable (0/1) 
-//=   arg(5): Display Flag Dialog (0/1)
-//===== Additional Comments: =================================
-//= v1.2: All Guild flags scripts use this function. [kobra_k88]
-//= v1.3: Can now only flag in from outside the castle [Kayla]
-//= v1.3a: Implemented k3dt's exploit fix [Vicious]
-//= v1.4: By default town flags are set to no longer show text. [L0ne_W0lf]
-//= v1.5: Updated remaining dialog to iRO standards. [L0ne_W0lf]
-//= v1.6 Restructred script, and removed use of gotos. [L0ne_W0lf]
-//= 6.17 Whoops. fices a @GID -> .@GID. [L0ne_W0lf]
-//============================================================
-
-function	script	F_Flags	{
-	set .@GID, GetCastleData(getarg(1),1);
-	if (getarg(5) == 0) return;
-	if (.@GID == 0) {
-		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
-		mes " ";
-		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
-		mes "We declare that";
-		mes "there is no formal master of this castle.";
-		mes " ";
-		mes "2. To the one who can ";
-		mes "overcome all trials";
-		mes "and destroy the Emperium,";
-		mes "the king will endow the one with";
-		mes "ownership of this castle.";
-		return;
-	}
-	else {
-		if (getcharid(2) == .@GID && getarg(4) == 1) {
-			mes "Brave ones...";
-			mes "Do you wish to return to your honorable place?";
-			next;
-			if (select("Return to the guild castle.:Quit.") == 1) {
-				if (getcharid(2) == GetCastleData(getarg(1),1))
-					warp getarg(1),getarg(2),getarg(3);
-			}
-			return;
-		}
-		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
-		mes " ";
-		mes "1. Following the ordinance of the";
-		mes "Divine Rune Midgard Kingdom,";
-		mes "we approve that this place is in";
-		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
-		mes " ";
-		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
-		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
-		mes "If there is anyone who objects to this,";
-		mes " prove your strength and honor with a steel blade in your hand.";
-		return;
-	}
-}

+ 0 - 40
npc/guild/gldfunc_kafra.txt

@@ -1,40 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium Kafras Function
-//===== By: ==================================================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//===== Current Version: =====================================
-//= 1.2a
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= Kafra service for guild members
-//======================================
-//= Break down of arguments used in the function:
-//=   arg(0): name of City.
-//=   arg(1): name of guild castle.
-//=   arg(2): x1 coordinate for warp
-//=   arg(3): y1 coordinate for warp
-//===== Additional Comments: =================================
-//= v1.2: All Guild kafra scripts use this function. [kobra_k88]
-//= 1.2a Added extra check for Contract with Kafra Guild Skill [Lupus]
-//= 1.2 Kafra's not charge for use of Cart Rentals [L0ne_W0lf]
-//=	Updated dialog and names.
-//============================================================
-
-function	script	F_GKafra	{
-	cutin "kafra_01",2;
-	set @GID, GetCastleData(getarg(0),1);
-	if (getcharid(2) == @GID && getgdskilllv(@GID,10001)) goto L_StartG;
-
-	mes "[Kafra Service]";
-	mes "I am contracted to provide service only for the ^ff0000" + GetGuildName(@GID) + "^000000 Guild. Please use another Kafra Corporation staff member around here. I am Sorry for your inconvenience.";
-	cutin "",255;
-	close;
-L_StartG:
-	set @wrpP[0], 200;
-	set @wrpD$[0], getarg(1);
-	setarray @wrpC$[0], @wrpD$[0]+" ^880000"+@wrpP[0]+"^000000 z", "Cancel", "", "", "","";
-	callfunc "F_Kafra",2,0,0,0,800;
-	end;
-}

+ 0 - 387
npc/guild/gldfunc_manager.txt

@@ -1,387 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium Guild Manager Function
-//===== By: ==================================================
-//= jAthena - kalen (1.0) & eAthena Team
-//===== Current Version: =====================================
-//= 2.0
-//===== Compatible With: =====================================
-//= eAthena SVN; RO Episode 4+
-//===== Description: =========================================
-//= [ Aegis Conversion]
-//= The Guild Manager allows the Guildmaster to invest in comerce
-//= and defense, hire guardians and kafras, go to the treasure room,
-//= and surrender the guild castle.
-//==============================================
-//= Break down of arguments used in the function:
-//=   arg(0): name of Castle Manager
-//=   arg(1): name of guild castle.
-//=   arg(2): x1 coordinate for warp to treasure room
-//=   arg(3): y1 coordinate for warp to treasure room
-//=   arg(4): guild script suffix for kafra, Guardian scripts etc.
-//===== Additional Comments: =================================
-//= 1.31: Added support for Emsolute Develop [celest]
-//= 1.2: All Guild manager scripts use this function. Optimized Comerce and Defense investment. [kobra_k88]
-//= 1.2a Function now returns to script that called it. Added disablenpc line to surrender castle option to remove kafra upon surrender.[kobra_k88]
-//= 1.2b U can't surrender the base during WOE [Lupus]
-//= 1.2c Fixed issue of guardians hp not increasing upon defense investment.[kobra_k88]
-//= 1.3 Now you can't install Guardians during WOE [Lupus]
-//= 1.4 Remove surrender abbility (Was 100% custom as far as I can tell) [Kayla]
-//= 1.41 Fixed possible Economy investment overflow with Emsolute Develop learnt [Lupus]
-//= 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]
-//= 1.7 Changed the names of the Kafra from "Service" to "Staff" [L0ne_W0lf]
-//= 1.8 Rescripted to Aegis 10.3 standards. [L0ne_W0lf]
-//=	This update changes quite a bit of the internal workings of the guild manager.
-//=	No longer uses defined numerical values for guardian HP calculation
-//=	Guardian summon display list is now DYNAMIC. Updated with guardian corrections.
-//=	Added dialog for castle Abandoning. Commented out be default.
-//= 1.9 Fixed guild members being able to access Guild Master services. [L0ne_W0lf]
-//= 1.9a Fixed Kafra cutin not closing if you choose not to dismiss her. [L0ne_W0lf]
-//= 1.9b Corrected impropper variable being used for defense investment. [L0ne_W0lf]
-//= 1.9c Fixed a typo with zeny checkm when installing guardian. [L0ne_W0lf]
-//= 2.0 Fixed a typo in abandon function call. [L0ne_W0lf]
-//============================================================
-
-function	script	F_GldManager	{
-	set .@GID, GetCastleData(getarg(1),1);
-
-	// Define the types of guardians on a per castle basis
-	// 1 - Soldier Guardian; 2 - Archer Guardian; 3 - Knight Guardian
-	// Aldebaran (Luina)
-	if (getarg(1) == "aldeg_cas01") setarray .@guardiantype[0],1,2,2,2,2,3,3,3;
-	if (getarg(1) == "aldeg_cas02") setarray .@guardiantype[0],3,3,3,1,1,2,2,2;
-	if (getarg(1) == "aldeg_cas03") setarray .@guardiantype[0],3,3,1,1,1,2,2,2;
-	if (getarg(1) == "aldeg_cas04") setarray .@guardiantype[0],2,2,2,1,1,1,3,3;
-	if (getarg(1) == "aldeg_cas05") setarray .@guardiantype[0],2,2,1,1,3,3,3,3;
-	// Geffen (Britoniah)
-	if (getarg(1) == "gefg_cas01") setarray .@guardiantype[0],1,1,1,2,2,3,3,3;
-	if (getarg(1) == "gefg_cas02") setarray .@guardiantype[0],1,1,1,2,2,3,3,3;
-	if (getarg(1) == "gefg_cas03") setarray .@guardiantype[0],2,2,1,1,1,3,3,3;
-	if (getarg(1) == "gefg_cas04") setarray .@guardiantype[0],2,2,1,1,1,3,3,3;
-	if (getarg(1) == "gefg_cas05") setarray .@guardiantype[0],2,2,1,1,1,3,3,3;
-	// Payon (Baulder)
-	if (getarg(1) == "payg_cas01") setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
-	if (getarg(1) == "payg_cas02") setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
-	if (getarg(1) == "payg_cas03") setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
-	if (getarg(1) == "payg_cas04") setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
-	if (getarg(1) == "payg_cas05") setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
-	// Prontera (Valkyrie Realms)
-	if (getarg(1) == "prtg_cas01") setarray .@guardiantype[0],1,1,1,2,2,3,3,3;
-	if (getarg(1) == "prtg_cas02") setarray .@guardiantype[0],3,3,3,1,1,2,2,2;
-	if (getarg(1) == "prtg_cas03") setarray .@guardiantype[0],3,3,3,1,1,2,2,2;
-	if (getarg(1) == "prtg_cas04") setarray .@guardiantype[0],3,3,3,1,1,1,2,2;
-	if (getarg(1) == "prtg_cas05") setarray .@guardiantype[0],3,3,3,1,1,1,2,2;
-
-	if (.@GID == 0){
-		mes "[ "+getarg(0)+" ]";
-		mes "I have been waiting for a master to fulfill my destiny.";
-		mes "Brave soul... fate will guide you towards your future...";
-		return 0;
-	}
-	if (getcharid(2) != .@GID || strcharinfo(0) != getguildmaster(.@GID)){
-		mes "[ "+getarg(0)+" ]";
-		mes "No matter how much you pester me, I'll still follow my master ^ff0000" + getguildmaster(.@GID) + "^000000. Where are Guardians?! Send these ruffians away right now!";
-		return 0;
-	}
-	mes "[ "+getarg(0)+" ]";
-	mes "Welcome. My honorable master, ^ff0000" + getguildmaster(.@GID) + "^000000...";
-	mes "Your humble servent, "+getarg(0)+", is here to serve you.";
-	next;
-
-	// To allow abandoning of castles, uncomment the following switch,
-	// comment out the switch below it, and uncomment case 7.
-	//switch(select("Castle briefing:Invest in commercial growth:Invest in Castle Defenses:Summon Guardian:Employ / discharge a storehouse staff member:Go into Master's room:Abandon Castle")) {
-	switch(select("Castle briefing:Invest in commercial growth:Invest in Castle Defenses:Summon Guardian:Employ / discharge a storehouse staff member:Go into Master's room")) {
-	case 1:
-		mes "[ "+getarg(0)+" ]";
-		mes "I will report the Castle briefing, Master.";
-		mes " ";
-		mes " ^0000ffNow, commercial growth level is " + GetCastleData(getarg(1),2) + ".";
-		if (GetCastleData(getarg(1),4) > 0)
-			mes "You invested " + GetCastleData(getarg(1),4) + "times in last 1 day.";
-		mes "Now, the Castle Defense level is " + GetCastleData(getarg(1),3) + ".^000000";
-		if (GetCastleData(getarg(1),5) > 0)
-			mes " ^0000ff- You invested " + GetCastleData(getarg(1),5) + "times in last 1 day.^000000";
-		mes " ";
-		mes "That's all to report, Master.";
-		return 0;
-
-	case 2:
-		set .@Economy,GetCastleData(getarg(1),2);
-		if(.@Economy < 8) set .@eco_invest,10000;
-		if(.@Economy >= 8) set .@eco_invest,20000;
-		if(.@Economy >= 16) set .@eco_invest,40000;
-		if(.@Economy >= 25) set .@eco_invest,80000;
-		if(.@Economy >= 34) set .@eco_invest,160000;
-		if(.@Economy >= 44) set .@eco_invest,320000;
-		if(.@Economy >= 54) set .@eco_invest,640000;
-		if(.@Economy >= 65) set .@eco_invest,1280000;
-		if(.@Economy >= 76) set .@eco_invest,2560000;
-		if(.@Economy >= 88) set .@eco_invest,5120000;
-		mes "[ "+getarg(0)+" ]";
-		mes "If you invest in commercial growth, the quantity of goods made by the guild will increase. Therfore, if you consider our future, investments will be a necessity.";
-		mes " ";
-		mes "Initially, you are able to invest just once but if you pay more money, you will be able to invest twice.";
-		if (.@Economy == 100) {
-			mes " ";
-			mes "^ff0000The commercial growth level of our Castle is at it's highest, 100%. No more investments are needed. Just as I have expected from a great economist like you, Master.^000000";
-			return 0;
-		}
-		mes " ";
-		if (GetCastleData(getarg(1),4) == 2) {
-			mes "^ff0000You have already invested twice today. You cannot invest any more.^000000 I expect riches of the guild to grow at a high rate.";
-			return 0;
-		}
-		else if (GetCastleData(getarg(1),4) == 0)
-			mes "The current investment amount required is ^ff0000" + .@eco_invest + "^000000 zeny. Will you invest?";
-		else
-			mes "You have already invested once. Do you wish to invest one more time? ^ff0000" + .@eco_invest + "^000000 more zeny will be needed.";
-		next;
-		if (select("Invest in commercial growth:Cancel") == 1) {
-			mes "[ "+getarg(0)+" ]";
-			if (Zeny < .@eco_invest) {
-				mes "I'm sorry but there is not enough zeny to invest in the reserves of guild. You have failed to invest, Master.";
-				return 0;
-			}
-			set zeny,zeny-.@eco_invest;
-			SetCastleData getarg(1),4,GetCastleData(getarg(1),4)+1;
-			SetCastleData getarg(1),2,.@Economy + 1 + (.@Economy<99 && rand(2) && getgdskilllv(.@GID,10014));
-			mes "We have finished investing safely. I expect in our coming days, the growth level will increase.";
-			return 0;
-		}
-		mes "[ "+getarg(0)+" ]";
-		mes "I'll do as you have instructed my master... There is no hurry. There is nothing we can not accomplish.";
-		return 0;
-
-	case 3:
-		set .@Defence,GetCastleData(getarg(1),3);
-		if(.@Defence < 8) set .@def_invest,20000;
-		if(.@Defence >= 8) set .@def_invest,40000;
-		if(.@Defence >= 16) set .@def_invest,80000;
-		if(.@Defence >= 25) set .@def_invest,160000;
-		if(.@Defence >= 34) set .@def_invest,320000;
-		if(.@Defence >= 44) set .@def_invest,640000;
-		if(.@Defence >= 54) set .@def_invest,1280000;
-		if(.@Defence >= 65) set .@def_invest,2560000;
-		if(.@Defence >= 76) set .@def_invest,5120000;
-		if(.@Defence >= 88) set .@def_invest,10240000;
-		mes "[ "+getarg(0)+" ]";
-		mes "If you raise Castle Defenses, the durability of Guardians and the Emperium will increase. Therefore, if you consider our coming battles, some investment in this area will be required.";
-		mes " ";
-		mes "Originally you can invest just once but if you pay more money, you can invest twice.";
-		if (.@Defence == 100) {
-			mes " ";
-			mes "^ff0000But the Castle Defense level of our Castle is at it's highest, 100%. No more investments are needed. Just as I have expected from a great strategist like you, Master.^000000";
-			return 0;
-		}
-		mes " ";
-		if (GetCastleData(getarg(1),5) == 2) {
-			mes "^ff0000You have already invested twice today. You cannot invest any more.^000000 I expect the Defenses of the guild to grow at a high rate.";
-			return 0;
-		}
-		else if (GetCastleData(getarg(1),5) == 1)
-			mes "The current investment amount required is ^ff0000" + .@def_invest + "^000000 zeny. Will you invest?";
-		else
-			mes "You have already invested once. Do you wish to invest one more time? ^ff0000" + .@def_invest + "^000000 more zeny will be needed.";
-		next;
-
-		if (select("Invest in Castle Defenses.:Cancel") == 1) {
-			mes "[ "+getarg(0)+" ]";
-			if (Zeny < .@def_invest) {
-				mes "I'm sorry but there is not enough zeny to invest in the reserves of guild. You have failed to invest, Master.";
-				return 0;
-			}
-			set Zeny,Zeny-.@def_invest;
-			SetCastleData getarg(1),5,GetCastleData(getarg(1),5)+1;
-			SetCastleData getarg(1),3,.@Defence+1;
-			mes "We have finished investing safely. I expect in our coming days, the growth level will increase.";
-			return 0;
-		}
-		mes "[ "+getarg(0)+" ]";
-		mes "I'll do as you have instructed my master... There is no hurry. There is nothing we can not accomplish.";
-		return 0;
-
-	case 4:
-		mes "[ "+getarg(0)+" ]";
-		mes "Do you still want to summon a Guardian? It'll be a protector to defend us to the end.";
-		mes "Choose a Guardian to summon.";
-		next;
-
-		for( set .@i, 0; .@i <= 7 ; set .@i, .@i+1 )
-		{
-			if      (.@guardiantype[.@i] == 1) set .@type$,"Guardian Soldier";
-			else if (.@guardiantype[.@i] == 2) set .@type$,"Guardian Archer";
-			else                               set .@type$,"Guardian Knight";
-
-			if( guardianinfo(getarg(1),.@i,0) )
-				setarray .@name$[.@i], .@type$ + " - Implemented (" + guardianinfo(getarg(1),.@i,2) + "/" + guardianinfo(getarg(1),.@i,1) + ")";
-			else
-				setarray .@name$[.@i], .@type$ + " - Not Implemented";
-		}
-	
-		set .@menu$,.@name$[0]+":"+.@name$[1]+":"+.@name$[2]+":"+.@name$[3]+":"+.@name$[4]+":"+.@name$[5]+":"+.@name$[6]+":"+.@name$[7];
-
-		// this thing will propagate outside of this function
-		switch(select(.@menu$)) {
-		case 1: set @GDnum,10; break;
-		case 2: set @GDnum,11; break;
-		case 3: set @GDnum,12; break;
-		case 4: set @GDnum,13; break;
-		case 5: set @GDnum,14; break;
-		case 6: set @GDnum,15; break;
-		case 7: set @GDnum,16; break;
-		case 8: set @GDnum,17; break;
-		}
-
-		mes "[ "+getarg(0)+" ]";
-		mes "Do you wish to summon the chosen guardian? 10,000 zeny is required to summon it.";
-		next;
-
-		if (select("Summon:Cancel") == 1) {
-			mes "[ "+getarg(0)+" ]";
-			if (getgdskilllv(.@GID,10002) == 0) {
-				mes "Master, we do not have any research materials to summon the Guardian. If you want to accumulate knowledge for Guardians, you have to learn the Guild skill first, We have failed to summon the Guardian.";
-				return 0;
-			}
-			if (GetCastleData(getarg(1),@GDnum) == 1) {
-				mes "Master, you have already have that Guardian. You cannot summon any more.";
-				return 0;
-			}
-			if (Zeny < 10000) {
-				mes "Well... I'm sorry but we don't have enough funds to summon the Guardian. We have failed to summon the Guardian.";
-				return 0;
-			}
-			set zeny,zeny-10000;
-			SetCastleData getarg(1),@GDnum,1; // mark as 'installed'
-			// guardian will be spawned outside of this function
-			mes "We have successfully summoned the Guardian. We now have our strong force to defend us!";
-			return 1;
-
-		}
-		mes "[ "+getarg(0)+" ]";
-		mes "I have done as you have commanded, but please remember if you have money to spare, it will be better if we use a Guardian.";
-		return 0;
-
-	case 5:
-		if (GetCastleData(getarg(1),9) == 1) {
-			mes "[ "+getarg(0)+" ]";
-			mes "We are now hiring Kafra employee... Will you fire any current Kafra employee?";
-			next;
-			switch(select("Discharge:Cancel")) {
-				cutin "kafra_01",2;
-				mes "[ Hired Kafra Employee ]";
-				mes "I worked so hard... How can you do that, Master?... Please... Please reconsider... Check it again, Master... Please...";
-				next;
-				switch(select("Discharge:Cancel")) {
-				case 1:
-					mes "[ Hired Kafra Employee ]";
-					mes "Oh, my goodness! This is nonsense!";
-					next;
-					cutin "kafra_01",255;
-					break;
-				case 2:
-					mes "[ Hired Kafra Employee ]";
-					mes "I'll work hard for you... Thank you!";
-					close2;					
-					cutin "kafra_01",255;
-					return 0;
-				}
-				break;
-			case 2:
-				mes "[ "+getarg(0)+" ]";
-				mes "She worked hard in my opinion. It was a good decision to keep her.";
-				return 0;
-			}	
-			disablenpc "Kafra Staff#"+getarg(4);
-			SetCastleData getarg(1),9,0;
-			mes "[ "+getarg(0)+" ]";
-			mes "....";
-			mes "I have discharged the Kafra employee... But... are you dissatisfied with the decision?";
-			return 0;
-		}
-		else {
-			mes "[ "+getarg(0)+" ]";
-			mes "Will you contact Kafra head office to hire Kafra staff in our Castle?";
-			mes "^ff0000 10,000 zeny is required for their services. ";
-			next;
-			if (select("Hire.:Cancel") == 1) {
-				mes "[ "+getarg(0)+" ]";
-				if (getgdskilllv(.@GID,10001) == 0) {
-					mes "Master, we cannot hire Kafra staff because we have not established a contract with Kafra head office. If you want to establish a contract with Kafra head office, you have to learn Guild skill first.";
-					return 0;
-				}
-				if (Zeny < 10000) {
-					mes "[ "+getarg(0)+" ]";
-					mes "Well... I'm sorry but we don't have enough funds to hire Kafra staff.";
-					return 0;
-				}
-				set Zeny,Zeny-10000;
-				enablenpc "Kafra Staff#"+getarg(4);
-				SetCastleData getarg(1),9,1;
-				mes "We have completed our task in establishing a contract with Kafra head office and hired Kafra staff.";
-				next;
-				cutin "kafra_01",2;
-				mes "[ Hired Kafra Employee ]";
-				mes "How do you do? I was dispatched from head office.";
-				mes "I'll do my best to not tarnish reputation of the Guild.";
-				next;
-				cutin "kafra_01",255;
-				mes "[ "+getarg(0)+" ]";
-				mes "The Contract terms of the hired Kafra staff is for 1 month and after this term, you will need to to pay an additional charge.";
-				mes "This will be good for our workers.";
-				return 0;
-			}
-			mes "[ "+getarg(0)+" ]";
-			mes "I've done as you have commanded, but for the sake of our workers, it would be better to hire Kafra staff immediately.";
-			return 0;
-		}
-
-	case 6:
-		mes "[ "+getarg(0)+" ]";
-		mes "Do you wish to go to the Master's Room.";
-		mes "That place is for only for you... no one else can enter the room.";
-		next;
-		if (select("Go into Master's room.:Cancel") == 1) {
-			mes "[ "+getarg(0)+" ]";
-			mes "I'll show you the secret path. Follow me...please.";
-			mes "When you want to return here, please press the secret switch.";
-			warp getarg(1),getarg(2),getarg(3);
-			end;
-		}
-		mes "[ "+getarg(0)+" ]";
-		mes "Goods are produced once a day... if you don't remove them in time, they will not be produced anymore.";
-		mes "Therefore, it will be better if you check up on them from time to time.";
-		return 0;
-
-	//case 7:
-	//	mes "[ "+getarg(0)+" ]";
-	//	mes "Master!!";
-	//	mes "Will you give up this Castle after all that we have all gone through?!";
-	//	mes "If.. If this is your final decision, what does all the blood that has been shed mean to you!?";
-	//	mes "Please reconsider! Master!!";
-	//	next;
-	//	if (select("Leave Agit.:Cancel") == 1) {
-	//		mes "[ "+getarg(0)+" ]";
-	//		mes "Master!! Please think it over, Master!!";
-	//		mes "The blood we shed so far...don't you care for all the sacrifices that were made?!";
-	//		next;
-	//		if (select("Cancel:Leave Castle.") == 1) {
-	//			mes "[ "+getarg(0)+" ]";
-	//			mes "I knew you were kidding, Master!!";
-	//			mes "Please, Master.. Although you were kidding, don't do that again. You really scared me for a moment.";
-	//			return 0;
-	//		}
-	//		mes "[ "+getarg(0)+" ]";
-	//		mes "Master!!.....";
-	//		mes "...... Ma..s...ter.....";
-	//		callfunc "F_GuildBreak",getarg(1),getarg(4);
-	//		return 0;
-	//	}
-	//	mes "[ "+getarg(0)+" ]";
-	//	mes "I knew you were kidding, Master!!";
-	//	mes "Please, Master.. Although you were kidding, don't do that again. You really scared me for a moment.";
-	//	return 0;
-	}
-}

+ 0 - 106
npc/guild/gldfunc_treasure.txt

@@ -1,106 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium Guild Treasure Room Functions
-//===== By: ==================================================
-//= holyAngelX (1.0) Akaru and ho|yAnge|X (1.1)
-//===== Current Version: =====================================
-//= 2.0
-//===== Compatible With: =====================================
-//= eAthena 1+; RO Episode 4+
-//===== Description: =========================================
-//= F_GldTreas spawns treasure chests used by the guild master.
-//= F_GldTreasSw allows the player to get out of the treasure room.
-//= F_TreasProtect removes non-guild master players from treasure room.
-//==============================================
-//= Break down of arguments used in the F_GldTreas:
-//=   arg(0): name of guild castle
-//=   arg(1): name of script that called the function
-//=   arg(2): the box number amount
-//=   arg(3): temp variable (count)
-//=   arg(4): temp variable (box/monster id#)
-//=   arg(5): box/monster id#
-//=   arg(6): x1 coordinate for areamonster call
-//=   arg(7): y1 coordinate for areamonster call
-//=   arg(8): x2 coordinate for areamonster call
-//=   arg(9): y1 coordinate for areamonster call
-//=   
-//= Break down of arguments used in the F_GldTreasSw:
-//=   arg(0): name of guild castle.
-//=   arg(1): x1 coordinate for warp back to guild castle
-//=   arg(2): y1 coordinate for warp back to guild castle
-//
-//= Break down of arguments used in the F_TreasProtect:
-//=   arg(0): name of guild castle.
-//=   arg(1): name of warp-to city 
-//=   arg(2): x1 coordinate for warp-to city
-//=   arg(3): y1 coordinate for warp-to city
-//===== Additional Comments: =================================
-//= 1.2 Treasure room Spawn, and Treasure room Switch scripts now use these functions.[kobra_k88]
-//= 1.2a Function now returns to script that called it.  Removed TreasureSpawn2.
-//= Changed back to using specific global variables for number of boxes and the box id. [kobra_k88]
-//= 1.2b Added a check to allow un broken treasure chests to respawn after map server restart.[kobra_k88]
-//= 1.3 Fixed treasure boxes spawn. (Unrolled one loop a bit) [Lupus]
-//= 1.4 New number of Treasure Boxes per castle: 25 at 100 Economic pts [Lupus]
-//=	So you get your first chest only when your Economic Pts >= 4
-//= 1.5 Fixed treasure number 'round exploit' [Lupus]
-//= 1.6 to Aegis X.2 formula 4..24 Treasure Chests [Lupus]
-//= 1.7 Box Count fix by Zoc. Now it spawns 1st/2nd Treasure Chest 50%/50% [Lupus]
-//= 1.8 Official Treasure Spawn in Novice Castles. Had to add +1 in odd/even formula to leave correct ID of NG Treasure Box 8) [Lupus]
-//= 1.9 Added F_TreasProtect to remove players who are not guild master from treasure room. [L0ne_W0lf]
-//= 2.0 Updated F_GldTreas, no longer uses gotos, swapped out for a 'for' loop. [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;
-}
-
-//==============================================================
-//  Treasure Room Switch 
-//===============================================================
-function	script	F_GldTreasSw	{
-	mes " ";
-	mes "There's a small lever. Will you pull it? ";
-	next;
-
-	if (select("Pull.:Do not.") == 1) {
-		warp getarg(0),getarg(1),getarg(2);
-		return;
-	}
-	close;
-}
-
-//==============================================================
-//  Treasure Room Protrection
-//===============================================================
-function	script	F_TreasProtect	{
-	if (strcharinfo(0) != getguildmaster( GetCastleData(getarg(0),1) )) warp getarg(1),getarg(2),getarg(3);
-}

+ 0 - 49
npc/guild/payg/payg_dunsw.txt

@@ -1,49 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium Dungeon Switch for Payon Guild Castles
-//===== By: ==================================================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//===== Current Version: =====================================
-//= 1.2
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= Switch that warps guild members to the guild dungeon
-//===== Additional Comments: =================================
-//= v1.2 Optimized with functions.[kobra_k88]
-//============================================================
-
-
-// Castle 1 ================================================
-payg_cas01,101,25,0	script	Switch#DunPy01	111,{
-	callfunc "F_GldDunSw","payg_cas01","01",186,165;
-	close;
-}
-
-
-// Castle 2 ================================================
-payg_cas02,278,247,0	script	Switch#DunPy02	111,{
-	callfunc "F_GldDunSw","payg_cas02","01",54,165;
-	close;
-}
-
-
-// Castle 3 ================================================
-payg_cas03,20,44,0	script	Switch#DunPy03	111,{
-	callfunc "F_GldDunSw","payg_cas03","01",54,39;
-	close;
-}
-
-
-// Castle 4 ================================================
-payg_cas04,52,48,0	script	Switch#DunPy04	111,{
-	callfunc "F_GldDunSw","payg_cas04","01",186,39;
-	close;
-}
-
-
-// Castle 5 ================================================
-payg_cas05,248,14,0	script	Switch#DunPy05	111,{
-	callfunc "F_GldDunSw","payg_cas05","01",223,202;
-	close;
-}

+ 0 - 159
npc/guild/payg/payg_ev_agit.txt

@@ -1,159 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium - Payon Guild Wars Events
-//===== By: ==================================================
-//= jAthena (1.0)
-//= 1.1 by Akaru and ho|yAnge|
-//===== Current Version: =====================================
-//= 1.5
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= Event Triggers of Payon Guild Wars
-//===== Additional Comments: =================================
-//= v1.2 Now using functions for OnAgitStart and OnAgitBreak. [kobra_k88]
-//= 1.3 Added code for abandoning captured castles on /breakguild [Lupus]
-//= 1.4 Small updated. Changed "EMPERIUM" to "Emperium". [L0ne_W0lf]
-//= 1.5 Quick fix "emps not respawning if the emp breaker logs off".
-//=     (from r11630 bureport:369) [FlavioJS]
-//============================================================
-
-
-// Castle 1 ================================================================
-payg_cas01,139,139,0	script	Agit_Py01	-1,{
-OnInterIfInitOnce:
-	GetCastleData "payg_cas01",0,"::OnRecvCastlePy01";
-	end;
-OnRecvCastlePy01:
-	RequestGuildInfo GetCastleData("payg_cas01",1);
-	end;
-OnAgitStart:
-	callfunc "F_AgitStart","payg_cas01","Py01",139,139;
-	end;
-OnAgitBreak:
-	callfunc "F_AgitBreak","payg_cas01","Py01";
-	goto OnAgitEliminate;
-OnGuildBreak:
-	callfunc "F_GuildBreak","payg_cas01","Py01";
-	end;
-OnAgitEliminate:
-	sleep getbattleflag("gvg_eliminate_time");
-	MapRespawnGuildID "payg_cas01",GetCastleData("payg_cas01",1),6;
-	sleep 6333-getbattleflag("gvg_eliminate_time");// wait for emp animation to end
-	Monster "payg_cas01",139,139,"Emperium",1288,1,"Agit_Py01::OnAgitBreak";
-	end;
-OnAgitEnd:
-	callfunc "F_AgitEnd","payg_cas01","Py01";
-	end;
-}
-
-// Castle 2 ================================================================
-payg_cas02,39,25,0	script	Agit_Py02	-1,{
-OnInterIfInitOnce:
-	GetCastleData "payg_cas02",0,"::OnRecvCastlePy02";
-	end;
-OnRecvCastlePy02:
-	RequestGuildInfo GetCastleData("payg_cas02",1);
-	end;
-OnAgitStart:
-	callfunc "F_AgitStart","payg_cas02","Py02",39,25;
-	end;
-OnAgitBreak:
-	callfunc "F_AgitBreak","payg_cas02","Py02";
-	goto OnAgitEliminate;
-OnGuildBreak:
-	callfunc "F_GuildBreak","payg_cas02","Py02";
-	end;
-OnAgitEliminate:
-	sleep getbattleflag("gvg_eliminate_time");
-	MapRespawnGuildID "payg_cas02",GetCastleData("payg_cas02",1),6;
-	sleep 6333-getbattleflag("gvg_eliminate_time");// wait for emp animation to end
-	Monster "payg_cas02",39,25,"Emperium",1288,1,"Agit_Py02::OnAgitBreak";
-	end;
-OnAgitEnd:
-	callfunc "F_AgitEnd","payg_cas02","Py02";
-	end;
-}
-
-// Castle 3 ================================================================
-payg_cas03,269,265,0	script	Agit_Py03	-1,{
-OnInterIfInitOnce:
-	GetCastleData "payg_cas03",0,"::OnRecvCastlePy03";
-	end;
-OnRecvCastlePy03:
-	RequestGuildInfo GetCastleData("payg_cas03",1);
-	end;
-OnAgitStart:
-	callfunc "F_AgitStart","payg_cas03","Py03",269,265;
-	end;
-OnAgitBreak:
-	callfunc "F_AgitBreak","payg_cas03","Py03";
-	goto OnAgitEliminate;
-OnGuildBreak:
-	callfunc "F_GuildBreak","payg_cas03","Py03";
-	end;
-OnAgitEliminate:
-	sleep getbattleflag("gvg_eliminate_time");
-	MapRespawnGuildID "payg_cas03",GetCastleData("payg_cas03",1),6;
-	sleep 6333-getbattleflag("gvg_eliminate_time");// wait for emp animation to end
-	Monster "payg_cas03",269,265,"Emperium",1288,1,"Agit_Py03::OnAgitBreak";
-	end;
-OnAgitEnd:
-	callfunc "F_AgitEnd","payg_cas03","Py03";
-	end;
-}
-
-// Castle 4 ================================================================
-payg_cas04,271,29,0	script	Agit_Py04	-1,{
-OnInterIfInitOnce:
-	GetCastleData "payg_cas04",0,"::OnRecvCastlePy04";
-	end;
-OnRecvCastlePy04:
-	RequestGuildInfo GetCastleData("payg_cas04",1);
-	end;
-OnAgitStart:
-	callfunc "F_AgitStart","payg_cas04","Py04",271,29;
-	end;
-OnAgitBreak:
-	callfunc "F_AgitBreak","payg_cas04","Py04";
-	goto OnAgitEliminate;
-OnGuildBreak:
-	callfunc "F_GuildBreak","payg_cas04","Py04";
-	end;
-OnAgitEliminate:
-	sleep getbattleflag("gvg_eliminate_time");
-	MapRespawnGuildID "payg_cas04",GetCastleData("payg_cas04",1),6;
-	sleep 6333-getbattleflag("gvg_eliminate_time");// wait for emp animation to end
-	Monster "payg_cas04",271,29,"Emperium",1288,1,"Agit_Py04::OnAgitBreak";
-	end;
-OnAgitEnd:
-	callfunc "F_AgitEnd","payg_cas04","Py04";
-	end;
-}
-
-// Castle 5 ================================================================
-payg_cas05,30,30,0	script	Agit_Py05	-1,{
-OnInterIfInitOnce:
-	GetCastleData "payg_cas05",0,"::OnRecvCastlePy05";
-	end;
-OnRecvCastlePy05:
-	RequestGuildInfo GetCastleData("payg_cas05",1);
-	end;
-OnAgitStart:
-	callfunc "F_AgitStart","payg_cas05","Py05",30,30;
-	end;
-OnAgitBreak:
-	callfunc "F_AgitBreak","payg_cas05","Py05";
-	goto OnAgitEliminate;
-OnGuildBreak:
-	callfunc "F_GuildBreak","payg_cas05","Py05";
-	end;
-OnAgitEliminate:
-	sleep getbattleflag("gvg_eliminate_time");
-	MapRespawnGuildID "payg_cas05",GetCastleData("payg_cas05",1),6;
-	sleep 6333-getbattleflag("gvg_eliminate_time");// wait for emp animation to end
-	Monster "payg_cas05",30,30,"Emperium",1288,1,"Agit_Py05::OnAgitBreak";
-	end;
-OnAgitEnd:
-	callfunc "F_AgitEnd","payg_cas05","Py05";
-	end;
-}

+ 0 - 236
npc/guild/payg/payg_flags.txt

@@ -1,236 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium - Payon Guild Flags
-//===== By: ==================================================
-//= jAthena (1.0)
-//= 1.1 by Akaru and ho|yAnge|
-//===== Current Version: =====================================
-//= 1.5
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= Castle Guild Flags in Payon and pay_gld
-//===== Additional Comments: =================================
-//= v1.2 Optimized with functions.[kobra_k88]
-//= v1.3 Changed to iRO castle names [DracoRPG]
-//= v1.4 Can now only flag in from outside the castle [Kayla]
-//= V1.5 Town flags no longer show dialog, and fixed various flags. [L0ne__W0lf]
-//============================================================
-
-
-//============================================================================//
-// 					Castle 1
-//============================================================================//
-payon,166,161,3	script	Bright Arbor#f1-1::BrightArbor	722,{
-	callfunc "F_Flags","Payon","payg_cas01",87,29,0,0;
-	close;
-
-OnRecvCastlePy01:
-	FlagEmblem GetCastleData("payg_cas01",1);
-	end;
-}
-
-pay_gld,125,236,4	script	Bright Arbor#f1-2::BrightArbor2	722,{
-	callfunc "F_Flags","Payon","payg_cas01",87,29,1,1;
-	close;
-
-OnRecvCastlePy01:
-	FlagEmblem GetCastleData("payg_cas01",1);
-	end;
-}
-
-payg_cas01,238,67,4	script	Bright Arbor#f1-3::BrightArbor3	722,{
-	callfunc "F_Flags","Payon","payg_cas01",87,29,0,1;
-	close;
-
-OnRecvCastlePy01:
-	FlagEmblem GetCastleData("payg_cas01",1);
-	end;
-}
-// Additiona Town Flag ====================================
-payon,90,322,4	duplicate(BrightArbor)	Bright Arbor#f1-4	722
-// In Guild ===============================================
-pay_gld,110,233,4	duplicate(BrightArbor2)	Bright Arbor#f1-5	722
-pay_gld,116,233,4	duplicate(BrightArbor2)	Bright Arbor#f1-6	722
-pay_gld,91,239,2	duplicate(BrightArbor2)	Bright Arbor#f1-7	722
-// In Castle ==============================================
-payg_cas01,233,67,4	duplicate(BrightArbor3)	Bright Arbor#f1-8	722
-payg_cas01,221,123,4	duplicate(BrightArbor3)	Bright Arbor#f1-9	722
-payg_cas01,221,116,4	duplicate(BrightArbor3)	Bright Arbor#f1-10	722
-payg_cas01,206,108,4	duplicate(BrightArbor3)	Bright Arbor#f1-11	722
-payg_cas01,212,108,4	duplicate(BrightArbor3)	Bright Arbor#f1-12	722
-
-
-
-//===========================================================================//
-// 					Castle 2
-//===========================================================================//
-payon,166,173,3	script	Scarlet Palace#f2-1::ScarletPalace	722,{
-	callfunc "F_Flags","Payon","payg_cas02",25,266,0,0;
-	close;
-
-OnRecvCastlePy02:
-	FlagEmblem GetCastleData("payg_cas02",1);
-	end;
-}
-
-pay_gld,292,112,6	script	Scarlet Palace#f2-2::ScarletPalace2	722,{
-	callfunc "F_Flags","Payon","payg_cas02",25,266,1,1;
-	close;
-
-OnRecvCastlePy02:
-	FlagEmblem GetCastleData("payg_cas02",1);
-	end;
-}
-
-payg_cas02,254,40,6	script	Scarlet Palace#f2-3::ScarletPalace3	722,{
-	callfunc "F_Flags","Payon","payg_cas02",25,266,0,1;
-	close;
-
-OnRecvCastlePy02:
-	FlagEmblem GetCastleData("payg_cas02",1);
-	end;
-}
-// Additiona Town Flag ====================================
-payon,97,322,4	duplicate(ScarletPalace)	Scarlet Palace#f2-4	722
-// In Guild  ==============================================
-pay_gld,292,120,6	duplicate(ScarletPalace2)	Scarlet Palace#f2-5	722
-pay_gld,291,135,6	duplicate(ScarletPalace2)	Scarlet Palace#f2-6	722
-pay_gld,271,163,0	duplicate(ScarletPalace2)	Scarlet Palace#f2-7	722
-// In Castle ==============================================
-payg_cas02,254,48,6	duplicate(ScarletPalace3)	Scarlet Palace#f2-8	722
-payg_cas02,202,49,0	duplicate(ScarletPalace3)	Scarlet Palace#f2-9	722
-payg_cas02,209,49,0	duplicate(ScarletPalace3)	Scarlet Palace#f2-10	722
-payg_cas02,59,282,4	duplicate(ScarletPalace3)	Scarlet Palace#f2-11	722
-payg_cas02,70,282,4	duplicate(ScarletPalace3)	Scarlet Palace#f2-12	722
-
-
-
-//============================================================================//
-// 					Castle 3
-//============================================================================//
-payon,166,177,3	script	Holy Shadow#f3-1::HolyShadow	722,{
-	callfunc "F_Flags","Payon","payg_cas03",9,263,0,0;
-	close;
-
-OnRecvCastlePy03:
-	FlagEmblem GetCastleData("payg_cas03",1);
-	end;
-}
-
-pay_gld,321,298,2	script	Holy Shadow#f3-2::HolyShadow2	722,{
-	callfunc "F_Flags","Payon","payg_cas03",9,263,1,1;
-	close;
-
-OnRecvCastlePy03:
-	FlagEmblem GetCastleData("payg_cas03",1);
-	end;
-}
-
-payg_cas03,236,54,2	script	Holy Shadow#f3-3::HolyShadow3	722,{
-	callfunc "F_Flags","Payon","payg_cas03",9,263,0,1;
-	close;
-
-OnRecvCastlePy03:
-	FlagEmblem GetCastleData("payg_cas03",1);
-	end;
-}
-// Additiona Town Flag ====================================
-payon,113,322,4	duplicate(HolyShadow)	Holy Shadow#f3-4	722
-// In Guild ===============================================
-pay_gld,321,289,2	duplicate(HolyShadow2)	Holy Shadow#f3-5	722
-pay_gld,327,304,1	duplicate(HolyShadow2)	Holy Shadow#f3-6	722
-pay_gld,333,254,4	duplicate(HolyShadow2)	Holy Shadow#f3-7	722
-// In Castle ==============================================
-payg_cas03,236,45,2	duplicate(HolyShadow3)	Holy Shadow#f3-8	722
-payg_cas03,259,66,4	duplicate(HolyShadow3)	Holy Shadow#f3-9	722
-payg_cas03,266,66,4	duplicate(HolyShadow3)	Holy Shadow#f3-10	722
-payg_cas03,34,31,4	duplicate(HolyShadow3)	Holy Shadow#f3-11	722
-payg_cas03,43,31,4	duplicate(HolyShadow3)	Holy Shadow#f3-12	722
-
-
-
-//============================================================================//
-// 					Castle 4
-//============================================================================//
-payon,166,169,3	script	Sacred Altar#f4-1::SacredAltar	722,{
-	callfunc "F_Flags","Payon","payg_cas04",40,235,0,0;
-	close;
-
-OnRecvCastlePy04:
-	FlagEmblem GetCastleData("payg_cas04",1);
-	end;
-}
-
-pay_gld,137,160,0	script	Sacred Altar#f4-2::SacredAltar2	722,{
-	callfunc "F_Flags","Payon","payg_cas04",40,235,1,1;
-	close;
-
-OnRecvCastlePy04:
-	FlagEmblem GetCastleData("payg_cas04",1);
-	end;
-}
-
-payg_cas04,255,259,0	script	Sacred Altar#f4-3::SacredAltar3	722,{
-	callfunc "F_Flags","Payon","payg_cas04",40,235,0,1;
-	close;
-
-OnRecvCastlePy04:
-	FlagEmblem GetCastleData("payg_cas04",1);
-	end;
-}
-// Additiona Town Flag ====================================
-payon,118,322,4	duplicate(SacredAltar)	Sacred Altar#f4-4	722
-// In Guild ===============================================
-pay_gld,143,160,0	duplicate(SacredAltar2)	Sacred Altar#f4-5	722
-pay_gld,133,151,2	duplicate(SacredAltar2)	Sacred Altar#f4-6	722
-pay_gld,153,166,1	duplicate(SacredAltar2)	Sacred Altar#f4-7	722
-// In Castle ==============================================
-payg_cas04,248,259,0	duplicate(SacredAltar3)	Sacred Altar#f4-8	722
-payg_cas04,248,168,6	duplicate(SacredAltar3)	Sacred Altar#f4-9	722
-payg_cas04,248,160,6	duplicate(SacredAltar3)	Sacred Altar#f4-10	722
-payg_cas04,232,181,4	duplicate(SacredAltar3)	Sacred Altar#f4-11	722
-payg_cas04,239,181,4	duplicate(SacredAltar3)	Sacred Altar#f4-12	722
-
-
-
-//============================================================================//
-// 					Castle 5
-//============================================================================//
-payon,166,165,3	script	Bamboo Grove Hill#f5-1::BambooGroveHill	722,{
-	callfunc "F_Flags","Payon","payg_cas05",276,227,0,0;
-	close;
-
-OnRecvCastlePy05:
-	FlagEmblem GetCastleData("payg_cas05",1);
-	end;
-}
-
-pay_gld,208,268,4	script	Bamboo Grove Hill#f5-2::BambooGroveHill2	722,{
-	callfunc "F_Flags","Payon","payg_cas05",276,227,1,1;
-	close;
-
-OnRecvCastlePy05:
-	FlagEmblem GetCastleData("payg_cas05",1);
-	end;
-}
-
-payg_cas05,32,249,4	script	Bamboo Grove Hill#f5-3::BambooGroveHill3	722,{
-	callfunc "F_Flags","Payon","payg_cas05",276,227,0,1;
-	close;
-
-OnRecvCastlePy05:
-	FlagEmblem GetCastleData("payg_cas05",1);
-	end;
-}
-// Additiona Town Flag ====================================
-payon,123,322,4	duplicate(BambooGroveHill)	Bamboo Grove Hill#f5-4	722
-// In Guild  ==============================================
-pay_gld,199,268,4	duplicate(BambooGroveHill2)	Bamboo Grove Hill#f5-5	722
-pay_gld,190,277,3	duplicate(BambooGroveHill2)	Bamboo Grove Hill#f5-6	722
-pay_gld,187,294,2	duplicate(BambooGroveHill2)	Bamboo Grove Hill#f5-7	722
-// In Castle  =============================================
-payg_cas05,24,249,4	duplicate(BambooGroveHill3)	Bamboo Grove Hill#f5-8	722
-payg_cas05,62,271,0	duplicate(BambooGroveHill3)	Bamboo Grove Hill#f5-9	722
-payg_cas05,57,271,0	duplicate(BambooGroveHill3)	Bamboo Grove Hill#f5-10	722
-payg_cas05,55,252,2	duplicate(BambooGroveHill3)	Bamboo Grove Hill#f5-11	722
-payg_cas05,55,260,2	duplicate(BambooGroveHill3)	Bamboo Grove Hill#f5-12	722

+ 0 - 115
npc/guild/payg/payg_guardians.txt

@@ -1,115 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium - payg_cas guardians script
-//===== By: ==================================================
-//= holyAngelX (1.0)
-//===== Current Version: =====================================
-//= 1.3
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= Re-spawns guardians on server start if they have been
-//= purchased.  Also announces when a guardian dies.
-//===== Additional Comments: =================================
-//= 1.1 by joedukk
-//= 1.2 by Akaru and Valaris
-//= 1.2a Guardians for all payg castles are now in this file.
-//= Minor optimizations.[kobra_k88]
-//= 1.3 Corrected what guardians will spawn, and where. [L0ne_W0lf]
-//=	All guardians will now die when OnAgiInit is run.
-//=	Removed announcment for when a guardian dies.
-//============================================================
-
-
-payg_cas01,139,139,0	script	Guardian_Py01	-1,{
-OnAgitInit:
-	killmonster "payg_cas01","Guardian_Py01::OnGuardianDied";
-	if (GetCastleData("payg_cas01",10) == 1) guardian "payg_cas01",229,92,"Guardian Archer",1285,"Guardian_Py01::OnGuardianDied",0;
-	if (GetCastleData("payg_cas01",11) == 1) guardian "payg_cas01",225,80,"Guardian Archer",1285,"Guardian_Py01::OnGuardianDied",1; 
-	if (GetCastleData("payg_cas01",12) == 1) guardian "payg_cas01",222,111,"Guardian Archer",1285,"Guardian_Py01::OnGuardianDied",2;
-	if (GetCastleData("payg_cas01",13) == 1) guardian "payg_cas01",99,45,"Guardian Archer",1285,"Guardian_Py01::OnGuardianDied",3;
-	if (GetCastleData("payg_cas01",14) == 1) guardian "payg_cas01",65,31,"Guardian Archer",1285,"Guardian_Py01::OnGuardianDied",4;
-	if (GetCastleData("payg_cas01",15) == 1) guardian "payg_cas01",36,127,"Guardian Archer",1285,"Guardian_Py01::OnGuardianDied",5;
-	if (GetCastleData("payg_cas01",16) == 1) guardian "payg_cas01",51,144,"Guardian Archer",1285,"Guardian_Py01::OnGuardianDied",6;
-	if (GetCastleData("payg_cas01",17) == 1) guardian "payg_cas01",138,133,"Guardian Knight",1286,"Guardian_Py01::OnGuardianDied",7;
-	end;
-
-OnGuardianDied:
-	// Event when Guardian dies
-	end;
-}
-
-//------------------------------------------------------------------------------
-payg_cas02,39,25,0	script	Guardian_Py02	-1,{
-OnAgitInit:
-	killmonster "payg_cas02","Guardian_Py02::OnGuardianDied";
-	if (GetCastleData("payg_cas02",10) == 1) guardian "payg_cas02",237,54,"Guardian Archer",1285,"Guardian_Py02::OnGuardianDied",0;
-	if (GetCastleData("payg_cas02",11) == 1) guardian "payg_cas02",228,72,"Guardian Archer",1285,"Guardian_Py02::OnGuardianDied",1;
-	if (GetCastleData("payg_cas02",12) == 1) guardian "payg_cas02",210,41,"Guardian Archer",1285,"Guardian_Py02::OnGuardianDied",2;
-	if (GetCastleData("payg_cas02",13) == 1) guardian "payg_cas02",57,241,"Guardian Archer",1285,"Guardian_Py02::OnGuardianDied",3;
-	if (GetCastleData("payg_cas02",14) == 1) guardian "payg_cas02",42,241,"Guardian Archer",1285,"Guardian_Py02::OnGuardianDied",4;
-	if (GetCastleData("payg_cas02",15) == 1) guardian "payg_cas02",287,257,"Guardian Archer",1285,"Guardian_Py02::OnGuardianDied",5;
-	if (GetCastleData("payg_cas02",16) == 1) guardian "payg_cas02",264,272,"Guardian Archer",1285,"Guardian_Py02::OnGuardianDied",6;
-	if (GetCastleData("payg_cas02",17) == 1) guardian "payg_cas02",27,20,"Guardian Knight",1286,"Guardian_Py02::OnGuardianDied",7;
-	end;
-
-OnGuardianDied:
-	// Event when Guardian dies
-	end;
-}
-
-//------------------------------------------------------------------------------
-payg_cas03,269,265,0	script	Guardian_Py03	-1,{
-OnAgitInit:
-	killmonster "payg_cas03","Guardian_Py03::OnGuardianDied";
-	if (GetCastleData("payg_cas03",10) == 1) guardian "payg_cas03",245,37,"Guardian Archer",1285,"Guardian_Py03::OnGuardianDied",0; 
-	if (GetCastleData("payg_cas03",11) == 1) guardian "payg_cas03",269,51,"Guardian Archer",1285,"Guardian_Py03::OnGuardianDied",1;
-	if (GetCastleData("payg_cas03",12) == 1) guardian "payg_cas03",36,39,"Guardian Archer",1285,"Guardian_Py03::OnGuardianDied",2;
-	if (GetCastleData("payg_cas03",13) == 1) guardian "payg_cas03",41,39,"Guardian Archer",1285,"Guardian_Py03::OnGuardianDied",3;
-	if (GetCastleData("payg_cas03",14) == 1) guardian "payg_cas03",39,65,"Guardian Archer",1285,"Guardian_Py03::OnGuardianDied",4;
-	if (GetCastleData("payg_cas03",15) == 1) guardian "payg_cas03",19,276,"Guardian Archer",1285,"Guardian_Py03::OnGuardianDied",5;
-	if (GetCastleData("payg_cas03",16) == 1) guardian "payg_cas03",37,277,"Guardian Archer",1285,"Guardian_Py03::OnGuardianDied",6;
-	if (GetCastleData("payg_cas03",17) == 1) guardian "payg_cas03",268,244,"Guardian Knight",1286,"Guardian_Py03::OnGuardianDied",7;
-	end;
-
-OnGuardianDied:
-	// Event when Guardian dies
-	end;
-}
-
-//------------------------------------------------------------------------------
-payg_cas04,271,29,0	script	Guardian_Py04	-1,{
-OnAgitInit:
-	killmonster "payg_cas04","Guardian_Py04::OnGuardianDied";
-	if (GetCastleData("payg_cas04",10) == 1) guardian "payg_cas04",251,212,"Guardian Archer",1285,"Guardian_Py04::OnGuardianDied",0;
-	if (GetCastleData("payg_cas04",11) == 1) guardian "payg_cas04",232,212,"Guardian Archer",1285,"Guardian_Py04::OnGuardianDied",1;
-	if (GetCastleData("payg_cas04",12) == 1) guardian "payg_cas04",231,175,"Guardian Archer",1285,"Guardian_Py04::OnGuardianDied",2;
-	if (GetCastleData("payg_cas04",13) == 1) guardian "payg_cas04",32,287,"Guardian Archer",1285,"Guardian_Py04::OnGuardianDied",3;
-	if (GetCastleData("payg_cas04",14) == 1) guardian "payg_cas04",32,232,"Guardian Archer",1285,"Guardian_Py04::OnGuardianDied",4;
-	if (GetCastleData("payg_cas04",15) == 1) guardian "payg_cas04",35,45,"Guardian Archer",1285,"Guardian_Py04::OnGuardianDied",5;
-	if (GetCastleData("payg_cas04",16) == 1) guardian "payg_cas04",36,17,"Guardian Archer",1285,"Guardian_Py04::OnGuardianDied",6;
-	if (GetCastleData("payg_cas04",17) == 1) guardian "payg_cas04",270,41,"Guardian Knight",1286,"Guardian_Py04::OnGuardianDied",7;
-	end;
-
-OnGuardianDied:
-	// Event when Guardian dies
-	end;
-}
-
-//------------------------------------------------------------------------------
-payg_cas05,30,30,0	script	Guardian_Py05	-1,{
-OnAgitInit:
-	killmonster "payg_cas05","Guardian_Py05::OnGuardianDied";
-	if (GetCastleData("payg_cas05",10) == 1) guardian "payg_cas05",19,279,"Guardian Archer",1285,"Guardian_Py05::OnGuardianDied",0;
-	if (GetCastleData("payg_cas05",11) == 1) guardian "payg_cas05",33,260,"Guardian Archer",1285,"Guardian_Py05::OnGuardianDied",1;
-	if (GetCastleData("payg_cas05",12) == 1) guardian "payg_cas05",266,234,"Guardian Archer",1285,"Guardian_Py05::OnGuardianDied",2;
-	if (GetCastleData("payg_cas05",13) == 1) guardian "payg_cas05",266,279,"Guardian Archer",1285,"Guardian_Py05::OnGuardianDied",3;
-	if (GetCastleData("payg_cas05",14) == 1) guardian "payg_cas05",263,37,"Guardian Archer",1285,"Guardian_Py05::OnGuardianDied",4;
-	if (GetCastleData("payg_cas05",15) == 1) guardian "payg_cas05",263,21,"Guardian Archer",1285,"Guardian_Py05::OnGuardianDied",5;
-	if (GetCastleData("payg_cas05",16) == 1) guardian "payg_cas05",250,22,"Guardian Archer",1285,"Guardian_Py05::OnGuardianDied",6;
-	if (GetCastleData("payg_cas05",17) == 1) guardian "payg_cas05",36,36,"Guardian Knight",1286,"Guardian_Py05::OnGuardianDied",7;
-	end;
-
-OnGuardianDied:
-	// Event when Guardian dies
-	end;
-}

+ 0 - 66
npc/guild/payg/payg_kafras.txt

@@ -1,66 +0,0 @@
-//== eAthena Script ========================================
-//= War of Emperium Kafras for Payon Guild Castles
-//== By: =================================================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//== Current Version: ========================================
-//= 1.3
-//== Compatible With: ========================================
-//= eAthena 0.1+; RO Episode 4+
-//== Description: ============================================
-//= Provides Kafra Staffs for guild members of Payon Castles.
-//= Used in conjuction with function F_Kafra.
-//== Additional Comments: ==================================
-//= v1.2 Optimized with functions.[kobra_k88]
-//= v1.3 Changed "Kafra Service" to "Kafra Staff" [L0ne_W0lf]
-//============================================================
-
-
-// Castle 1 =============
-payg_cas01,128,58,3	script	Kafra Staff#Py01	117,{
-	callfunc "F_GKafra", "payg_cas01", "Payon";
-	end;
-OnRecvCastlePy01:
-	if (GetCastleData("payg_cas01",9) < 1) disablenpc "Kafra Staff#Py01";
-	end;
-}
-
-
-// Castle 2 =============
-payg_cas02,22,275,5	script	Kafra Staff#Py02	117,{
-	callfunc "F_GKafra", "payg_cas02", "Payon";
-	end;
-OnRecvCastlePy02:
-	if (GetCastleData("payg_cas02",9) < 1) disablenpc "Kafra Staff#Py02";
-	end;
-}
-
-
-// Castle 3 =============
-payg_cas03,9,263,5	script	Kafra Staff#Py03	117,{
-	callfunc "F_GKafra", "payg_cas03", "Payon";
-	end;
-OnRecvCastlePy03:
-	if (GetCastleData("payg_cas03",9) < 1) disablenpc "Kafra Staff#Py03";
-	end;
-}
-
-
-// Castle 4 =============
-payg_cas04,40,235,1	script	Kafra Staff#Py04	117,{
-	callfunc "F_GKafra", "payg_cas04", "Payon";
-	end;
-OnRecvCastlePy04:
-	if (GetCastleData("payg_cas04",9) < 1) disablenpc "Kafra Staff#Py04";
-	end;
-}
-
-
-// Castle 5 =============
-payg_cas05,276,227,1	script	Kafra Staff#Py05	117,{
-	callfunc "F_GKafra", "payg_cas05", "Payon";
-	end;
-OnRecvCastlePy05:
-	if (GetCastleData("payg_cas05",9) < 1) disablenpc "Kafra Staff#Py05";
-	end;
-}

+ 0 - 96
npc/guild/payg/payg_managers.txt

@@ -1,96 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium Managers for Payon Guild Castles
-//===== By: ==================================================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//===== Current Version: =====================================
-//= 1.3
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= 
-//===== Additional Comments: =================================
-//= v1.2 Optimized with functions.[kobra_k88]
-//= 1.3 Updated Guardian positions and types. [L0ne_W0lf]
-//=	Updated manager names, and some additional info
-//============================================================
-
-
-// Castle 1 ==================================================================================
-payg_cas01,120,58,4	script	Kurunnadi#pay1	55,{
-	if(callfunc("F_GldManager","Steward Kurunnadi","payg_cas01",295,8,"Py01") == 0) close;
-
-	if (@GDnum == 10) guardian "payg_cas01",229,92,"Guardian Archer",1285,"Guardian_Py01::OnGuardianDied",0;
-	if (@GDnum == 11) guardian "payg_cas01",225,80,"Guardian Archer",1285,"Guardian_Py01::OnGuardianDied",1; 
-	if (@GDnum == 12) guardian "payg_cas01",222,111,"Guardian Archer",1285,"Guardian_Py01::OnGuardianDied",2;
-	if (@GDnum == 13) guardian "payg_cas01",99,45,"Guardian Archer",1285,"Guardian_Py01::OnGuardianDied",3;
-	if (@GDnum == 14) guardian "payg_cas01",65,31,"Guardian Archer",1285,"Guardian_Py01::OnGuardianDied",4;
-	if (@GDnum == 15) guardian "payg_cas01",36,127,"Guardian Archer",1285,"Guardian_Py01::OnGuardianDied",5;
-	if (@GDnum == 16) guardian "payg_cas01",51,144,"Guardian Archer",1285,"Guardian_Py01::OnGuardianDied",6;
-	if (@GDnum == 17) guardian "payg_cas01",138,133,"Guardian Knight",1286,"Guardian_Py01::OnGuardianDied",7;
-	close;
-}
-
-
-// Castle 2 ==================================================================================
-payg_cas02,22,260,7	script	Cherieos#pay2	55,{
-	if(callfunc("F_GldManager","Steward Cherieos","payg_cas02",141,149,"Py02") == 0) close;
-
-	if (@GDnum == 10) guardian "payg_cas02",237,54,"Guardian Archer",1285,"Guardian_Py02::OnGuardianDied",0;
-	if (@GDnum == 11) guardian "payg_cas02",228,72,"Guardian Archer",1285,"Guardian_Py02::OnGuardianDied",1;
-	if (@GDnum == 12) guardian "payg_cas02",210,41,"Guardian Archer",1285,"Guardian_Py02::OnGuardianDied",2;
-	if (@GDnum == 13) guardian "payg_cas02",57,241,"Guardian Archer",1285,"Guardian_Py02::OnGuardianDied",3;
-	if (@GDnum == 14) guardian "payg_cas02",42,241,"Guardian Archer",1285,"Guardian_Py02::OnGuardianDied",4;
-	if (@GDnum == 15) guardian "payg_cas02",287,257,"Guardian Archer",1285,"Guardian_Py02::OnGuardianDied",5;
-	if (@GDnum == 16) guardian "payg_cas02",264,272,"Guardian Archer",1285,"Guardian_Py02::OnGuardianDied",6;
-	if (@GDnum == 17) guardian "payg_cas02",27,20,"Guardian Knight",1286,"Guardian_Py02::OnGuardianDied",7;
-	close;
-}
-
-
-// Castle 3 ==================================================================================
-payg_cas03,10,277,0	script	Gheriot#pay3	55,{
-	if(callfunc("F_GldManager","Steward Gheriot","payg_cas03",163,167,"Py03") == 0) close;
-
-	if (@GDnum == 10) guardian "payg_cas03",245,37,"Guardian Archer",1285,"Guardian_Py03::OnGuardianDied",0; 
-	if (@GDnum == 11) guardian "payg_cas03",269,51,"Guardian Archer",1285,"Guardian_Py03::OnGuardianDied",1;
-	if (@GDnum == 12) guardian "payg_cas03",36,39,"Guardian Archer",1285,"Guardian_Py03::OnGuardianDied",2;
-	if (@GDnum == 13) guardian "payg_cas03",41,39,"Guardian Archer",1285,"Guardian_Py03::OnGuardianDied",3;
-	if (@GDnum == 14) guardian "payg_cas03",39,65,"Guardian Archer",1285,"Guardian_Py03::OnGuardianDied",4;
-	if (@GDnum == 15) guardian "payg_cas03",19,276,"Guardian Archer",1285,"Guardian_Py03::OnGuardianDied",5;
-	if (@GDnum == 16) guardian "payg_cas03",37,277,"Guardian Archer",1285,"Guardian_Py03::OnGuardianDied",6;
-	if (@GDnum == 17) guardian "payg_cas03",268,244,"Guardian Knight",1286,"Guardian_Py03::OnGuardianDied",7;
-	close;
-}
-
-
-// Castle 4 ==================================================================================
-payg_cas04,38,284,3	script	DJ#pay4	55,{
-	if(callfunc("F_GldManager","Steward DJ","payg_cas04",151,47,"Py04") == 0) close;
-
-	if (@GDnum == 10) guardian "payg_cas04",251,212,"Guardian Archer",1285,"Guardian_Py04::OnGuardianDied",0;
-	if (@GDnum == 11) guardian "payg_cas04",232,212,"Guardian Archer",1285,"Guardian_Py04::OnGuardianDied",1;
-	if (@GDnum == 12) guardian "payg_cas04",231,175,"Guardian Archer",1285,"Guardian_Py04::OnGuardianDied",2;
-	if (@GDnum == 13) guardian "payg_cas04",32,287,"Guardian Archer",1285,"Guardian_Py04::OnGuardianDied",3;
-	if (@GDnum == 14) guardian "payg_cas04",32,232,"Guardian Archer",1285,"Guardian_Py04::OnGuardianDied",4;
-	if (@GDnum == 15) guardian "payg_cas04",35,45,"Guardian Archer",1285,"Guardian_Py04::OnGuardianDied",5;
-	if (@GDnum == 16) guardian "payg_cas04",36,17,"Guardian Archer",1285,"Guardian_Py04::OnGuardianDied",6;
-	if (@GDnum == 17) guardian "payg_cas04",270,41,"Guardian Knight",1286,"Guardian_Py04::OnGuardianDied",7;
-	close;
-}
-
-
-// Castle 5 ==================================================================================
-payg_cas05,277,249,3	script	Nahzarf#pay5	55,{
-	if(callfunc("F_GldManager","Steward Nahzarf","payg_cas05",153,137,"Py05") == 0) close;
-
-	if (@GDnum == 10) guardian "payg_cas05",19,279,"Guardian Archer",1285,"Guardian_Py05::OnGuardianDied",0;
-	if (@GDnum == 11) guardian "payg_cas05",33,260,"Guardian Archer",1285,"Guardian_Py05::OnGuardianDied",1;
-	if (@GDnum == 12) guardian "payg_cas05",266,234,"Guardian Archer",1285,"Guardian_Py05::OnGuardianDied",2;
-	if (@GDnum == 13) guardian "payg_cas05",266,279,"Guardian Archer",1285,"Guardian_Py05::OnGuardianDied",3;
-	if (@GDnum == 14) guardian "payg_cas05",263,37,"Guardian Archer",1285,"Guardian_Py05::OnGuardianDied",4;
-	if (@GDnum == 15) guardian "payg_cas05",263,21,"Guardian Archer",1285,"Guardian_Py05::OnGuardianDied",5;
-	if (@GDnum == 16) guardian "payg_cas05",250,22,"Guardian Archer",1285,"Guardian_Py05::OnGuardianDied",6;
-	if (@GDnum == 17) guardian "payg_cas05",36,36,"Guardian Knight",1286,"Guardian_Py05::OnGuardianDied",7;
-	close;
-}

+ 0 - 162
npc/guild/payg/payg_treas.txt

@@ -1,162 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium Treasure Rooms for Payon Guild Castles
-//===== By: ==================================================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//===== Current Version: =====================================
-//= 1.3
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//=
-//===== Additional Comments: =================================
-//= v1.2 Optimized with functions.[kobra_k88]
-//= 1.3 Removed announces when you open chests. [L0ne_W0lf]
-//============================================================
-
-
-//<================================ Castle 1 ================================>\\
-
-// Treasure Spawn ----------------------------------------------------------
-payg_cas01,1,1,0	script	Treasure_Py01	-1,{
-OnRecvCastlePy01:
-	end;
-OnInit:
-	if($boxNumPy01 == 0) end;
-	set $@bxPy01, $boxNumPy01;
-	callfunc "F_GldTreas","payg_cas01","Py01",$boxNumPy01,$@bxPy01,$@boxIdPy01,1344,286,4,295,13,1;
-	end;
-
-OnDied:
-	set $boxNumPy01, $boxNumPy01 -1;
-	end;
-}
-
-// Treasure Room Switch ---------------------------------------------------
-payg_cas01,295,8,0	script	Switch#TresPy01	111,{
-	callfunc "F_GldTreasSw", "payg_cas01",120,59;
-	end;
-}
-
-// Treasure Room Protection ------------------------------------------------
-payg_cas01,291,8,0	script	ban_warp#6	-1,6,6,{
-OnTouch:
-	callfunc "F_TreasProtect", "payg_cas01", "payon",100,100;
-	end;
-}
-
-//<================================ Castle 2 ================================>\\
-// Treasure Spawn ----------------------------------------------------------
-payg_cas02,1,1,0	script	Treasure_Py02	-1,{
-OnRecvCastlePy02:
-	end;
-OnInit:
-	if($boxNumPy02 == 0) end;
-	set $@bxPy02, $boxNumPy02;
-	callfunc "F_GldTreas","payg_cas02","Py02",$boxNumPy02,$@bxPy02,$@boxIdPy02,1346,140,140,148,149,1;
-	end;
-
-OnDied:
-	set $boxNumPy02, $boxNumPy02 -1;
-	end;
-}
-
-// Treasure Room Switch ----------------------------------------------------
-payg_cas02,149,148,0	script	Switch#TresPy02	111,{
-	callfunc "F_GldTreasSw", "payg_cas02",22,261;
-	end;
-}
-
-// Treasure Room Protection ------------------------------------------------
-payg_cas02,145,144,0	script	ban_warp#7	-1,6,6,{
-OnTouch:
-	callfunc "F_TreasProtect", "payg_cas02", "payon",100,100;
-	end;
-}
-
-//<================================ Castle 3 ================================>\\
-// Treasure Spawn ----------------------------------------------------------
-payg_cas03,158,168,0	script	Treasure_Py03	-1,{
-OnRecvCastlePy03:
-	end;
-OnInit:
-	if($boxNumPy03 == 0) end;
-	set $@bxPy03, $boxNumPy03;
-	callfunc "F_GldTreas","payg_cas03","Py03",$boxNumPy03,$@bxPy03,$@boxIdPy03,1348,154,164,162,173,1;
-	end;
-
-OnDied:
-	set $boxNumPy03, $boxNumPy03 -1;
-	end;
-}
-
-// Treasure Room Switch ----------------------------------------------------
-payg_cas03,163,167,0	script	Switch#TresPy03	111,{
-	callfunc "F_GldTreasSw", "payg_cas03",11,278;
-	end;
-}
-
-// Treasure Room Protection ------------------------------------------------
-payg_cas03,159,168,0	script	ban_warp#8	-1,6,6,{
-OnTouch:
-	callfunc "F_TreasProtect", "payg_cas03", "payon",100,100;
-	end;
-}
-
-//<================================ Castle 4 ================================>\\
-// Treasure Spawn ----------------------------------------------------------
-payg_cas04,146,48,0	script	Treasure_Py04	-1,{
-OnRecvCastlePy04:
-	end;
-OnInit:
-	if($boxNumPy04 == 0) end;
-	set $@bxPy04, $boxNumPy04;
-	callfunc "F_GldTreas","payg_cas04","Py04",$boxNumPy04,$@bxPy04,$@boxIdPy04,1350,142,44,151,51,1;
-	end;
-
-OnDied:
-	set $boxNumPy04, $boxNumPy04 -1;
-	end;
-}
-
-// Treasure Room Switch ----------------------------------------------------
-payg_cas04,151,47,0	script	Switch#TresPy04	111,{
-	callfunc "F_GldTreasSw", "payg_cas04",38,285;
-	end;
-}
-
-// Treasure Room Protection ------------------------------------------------
-payg_cas04,147,48,0	script	ban_warp#9	-1,6,6,{
-OnTouch:
-	callfunc "F_TreasProtect", "payg_cas04", "payon",100,100;
-	end;
-}
-
-//<================================ Castle 5 ================================>\\
-// Treasure Spawn ----------------------------------------------------------
-payg_cas05,156,131,0	script	Treasure_Py05	-1,{
-OnRecvCastlePy05:
-	end;
-OnInit:
-	if($boxNumPy05 == 0) end;
-	set $@bxPy05, $boxNumPy05;
-	callfunc "F_GldTreas","payg_cas05","Py05",$boxNumPy05,$@bxPy05,$@boxIdPy05,1352,152,128,160,135,1;
-	end;
-
-OnDied:
-	set $boxNumPy05, $boxNumPy05 -1;
-	end;
-}
-
-// Treasure Room Switch ----------------------------------------------------
-payg_cas05,161,136,0	script	Switch#TresPy05	111,{
-	callfunc "F_GldTreasSw", "payg_cas05",277,250;
-	end;
-}
-
-// Treasure Room Protection ------------------------------------------------
-payg_cas05,157,132,0	script	ban_warp#10	-1,6,6,{
-OnTouch:
-	callfunc "F_TreasProtect", "payg_cas05", "payon",100,100;
-	end;
-}

+ 165 - 0
npc/guild/payg_cas01.txt

@@ -0,0 +1,165 @@
+//===== eAthena Script =======================================
+//= War of Emperium (Payon)
+//===== By: ==================================================
+//= L0ne_W0lf
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= NPCs that relate to Payon Guild Castle 1
+//===== Additional Comments: =================================
+//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
+//============================================================
+
+// Guild Flag (Town)
+//============================================================
+payon,166,161,3	script	Bright Arbor#f1-1::BrightArbor	722,{
+	end;
+
+OnRecvCastlePy01:
+	FlagEmblem GetCastleData("payg_cas01",1);
+	end;
+}
+
+payon,90,322,4	duplicate(BrightArbor)	Bright Arbor#f1-2	722
+
+// Guild Flag (Outside Castle)
+//============================================================
+pay_gld,125,236,4	script	Bright Arbor#f1-3::BrightArbor2	722,{
+	set .@GID, GetCastleData("payg_cas01",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		if (getcharid(2) == .@GID) {
+			mes "Brave ones...";
+			mes "Do you wish to return to your honorable place?";
+			next;
+			if (select("Return to the guild castle.:Quit.") == 1) {
+				if (getcharid(2) == GetCastleData("payg_cas01",1)) {
+					warp "payg_cas01",87,29;
+					end;
+				}
+			}
+			close;
+		}
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastlePy01:
+	FlagEmblem GetCastleData("payg_cas01",1);
+	end;
+}
+
+pay_gld,110,233,4	duplicate(BrightArbor2)	Bright Arbor#f1-4	722
+pay_gld,116,233,4	duplicate(BrightArbor2)	Bright Arbor#f1-5	722
+pay_gld,91,239,2	duplicate(BrightArbor2)	Bright Arbor#f1-6	722
+
+// Guild Flag (Inside Castle)
+//============================================================
+payg_cas01,238,67,4	script	Bright Arbor#f1-7::BrightArbor3	722,{
+	set .@GID, GetCastleData("payg_cas01",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastlePy01:
+	FlagEmblem GetCastleData("payg_cas01",1);
+	end;
+}
+
+payg_cas01,233,67,4	duplicate(BrightArbor3)	Bright Arbor#f1-8	722
+payg_cas01,221,123,4	duplicate(BrightArbor3)	Bright Arbor#f1-9	722
+payg_cas01,221,116,4	duplicate(BrightArbor3)	Bright Arbor#f1-10	722
+payg_cas01,206,108,4	duplicate(BrightArbor3)	Bright Arbor#f1-11	722
+payg_cas01,212,108,4	duplicate(BrightArbor3)	Bright Arbor#f1-12	722
+
+// AGIT Manager
+//============================================================
+payg_cas01,139,139,0	duplicate(Gld_Agit_Manager)	Agit#payg_cas01	-1
+
+// Steward
+//============================================================
+payg_cas01,120,58,4	duplicate(Gld_Mngr_Template)	Kurunnadi#payg_cas01	55
+
+// Guardians
+//============================================================
+payg_cas01,120,58,4	duplicate(Gld_Guard_Template)	Guardian#payg_cas01	-1
+
+// Kafra Staff
+//============================================================
+payg_cas01,128,58,3	duplicate(Gld_Kafra_Template)	Kafra Staff#payg_cas01	117
+
+// Master's Room Exit
+//============================================================
+payg_cas01,295,8,0	script	#switch_Py01	111,{
+	mes " ";
+	mes "There's a small lever. Will you pull it? ";
+	next;
+	switch(select("Pull.:Do not.")) {
+	case 1:
+		warp "payg_cas01",120,59;
+		break;
+	case 2:
+		break;
+	}
+	end;
+}
+
+// Guild Treasure Protection
+//============================================================
+payg_cas01,291,8,0	duplicate(Gld_Trea_Protect)	ban_warp#payg_cas01	-1,6,6
+
+// Guild Treasure Spawns
+//============================================================
+payg_cas01,291,8,0	duplicate(Gld_Trea_Spawn)	Treasure#payg_cas01	-1
+
+// Guild Dungeon Switch
+//============================================================
+payg_cas01,78,84,0	duplicate(Gld_Dun_Template)	#payg_cas01	111

+ 165 - 0
npc/guild/payg_cas02.txt

@@ -0,0 +1,165 @@
+//===== eAthena Script =======================================
+//= War of Emperium (Payon)
+//===== By: ==================================================
+//= L0ne_W0lf
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= NPCs that relate to Payon Guild Castle 2
+//===== Additional Comments: =================================
+//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
+//============================================================
+
+// Guild Flag (Town)
+//============================================================
+payon,166,173,3	script	Scarlet Palace#f2-1::ScarletPalace	722,{
+	end;
+
+OnRecvCastlePy02:
+	FlagEmblem GetCastleData("payg_cas02",1);
+	end;
+}
+
+payon,97,322,4	duplicate(ScarletPalace)	Scarlet Palace#f2-2	722
+
+// Guild Flag (Outside Castle)
+//============================================================
+pay_gld,292,112,6	script	Scarlet Palace#f2-3::ScarletPalace2	722,{
+	set .@GID, GetCastleData("payg_cas02",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		if (getcharid(2) == .@GID) {
+			mes "Brave ones...";
+			mes "Do you wish to return to your honorable place?";
+			next;
+			if (select("Return to the guild castle.:Quit.") == 1) {
+				if (getcharid(2) == GetCastleData("payg_cas02",1)) {
+					warp "payg_cas02",25,266;
+					end;
+				}
+			}
+			close;
+		}
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastlePy02:
+	FlagEmblem GetCastleData("payg_cas02",1);
+	end;
+}
+
+pay_gld,292,120,6	duplicate(ScarletPalace2)	Scarlet Palace#f2-4	722
+pay_gld,291,135,6	duplicate(ScarletPalace2)	Scarlet Palace#f2-5	722
+pay_gld,271,163,0	duplicate(ScarletPalace2)	Scarlet Palace#f2-6	722
+
+// Guild Flag (Inside Castle)
+//============================================================
+payg_cas02,254,40,6	script	Scarlet Palace#f2-7::ScarletPalace3	722,{
+	set .@GID, GetCastleData("payg_cas02",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastlePy02:
+	FlagEmblem GetCastleData("payg_cas02",1);
+	end;
+}
+
+payg_cas02,254,48,6	duplicate(ScarletPalace3)	Scarlet Palace#f2-8	722
+payg_cas02,202,49,0	duplicate(ScarletPalace3)	Scarlet Palace#f2-9	722
+payg_cas02,209,49,0	duplicate(ScarletPalace3)	Scarlet Palace#f2-10	722
+payg_cas02,59,282,4	duplicate(ScarletPalace3)	Scarlet Palace#f2-11	722
+payg_cas02,70,282,4	duplicate(ScarletPalace3)	Scarlet Palace#f2-12	722
+
+// AGIT Manager
+//============================================================
+payg_cas02,39,25,0	duplicate(Gld_Agit_Manager)	Agit#payg_cas02	-1
+
+// Steward
+//============================================================
+payg_cas02,22,260,7	duplicate(Gld_Mngr_Template)	Cherieos#payg_cas02	55
+
+// Guardians
+//============================================================
+payg_cas02,22,260,7	duplicate(Gld_Guard_Template)	Guardian#payg_cas02	-1
+
+// Kafra Staff
+//============================================================
+payg_cas02,22,275,5	duplicate(Gld_Kafra_Template)	Kafra Staff#payg_cas02	117
+
+// Master's Room Exit
+//============================================================
+payg_cas02,149,148,0	script	#switch_Py02	111,{
+	mes " ";
+	mes "There's a small lever. Will you pull it? ";
+	next;
+	switch(select("Pull.:Do not.")) {
+	case 1:
+		warp "payg_cas02",22,261;
+		break;
+	case 2:
+		break;
+	}
+	end;
+}
+
+// Guild Treasure Protection
+//============================================================
+payg_cas02,145,144,0	duplicate(Gld_Trea_Protect)	ban_warp#payg_cas02	-1,6,6
+
+// Guild Treasure Spawns
+//============================================================
+payg_cas02,145,144,0	duplicate(Gld_Trea_Spawn)	Treasure#payg_cas02	-1
+
+// Guild Dungeon Switch
+//============================================================
+payg_cas02,278,247,0	duplicate(Gld_Dun_Template)	#payg_cas02	111

+ 165 - 0
npc/guild/payg_cas03.txt

@@ -0,0 +1,165 @@
+//===== eAthena Script =======================================
+//= War of Emperium (Payon)
+//===== By: ==================================================
+//= L0ne_W0lf
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= NPCs that relate to Payon Guild Castle 3
+//===== Additional Comments: =================================
+//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
+//============================================================
+
+// Guild Flag (Town)
+//============================================================
+payon,166,177,3	script	Holy Shadow#f3-1::HolyShadow	722,{
+	end;
+
+OnRecvCastlePy03:
+	FlagEmblem GetCastleData("payg_cas03",1);
+	end;
+}
+
+payon,113,322,4	duplicate(HolyShadow)	Holy Shadow#f3-2	722
+
+// Guild Flag (Outside Castle)
+//============================================================
+pay_gld,321,298,2	script	Holy Shadow#f3-3::HolyShadow2	722,{
+	set .@GID, GetCastleData("payg_cas03",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		if (getcharid(2) == .@GID) {
+			mes "Brave ones...";
+			mes "Do you wish to return to your honorable place?";
+			next;
+			if (select("Return to the guild castle.:Quit.") == 1) {
+				if (getcharid(2) == GetCastleData("payg_cas03",1)) {
+					warp "payg_cas03",9,263;
+					end;
+				}
+			}
+			close;
+		}
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastlePy03:
+	FlagEmblem GetCastleData("payg_cas03",1);
+	end;
+}
+
+pay_gld,321,289,2	duplicate(HolyShadow2)	Holy Shadow#f3-4	722
+pay_gld,327,304,1	duplicate(HolyShadow2)	Holy Shadow#f3-5	722
+pay_gld,333,254,4	duplicate(HolyShadow2)	Holy Shadow#f3-6	722
+
+// Guild Flag (Inside Castle)
+//============================================================
+payg_cas03,236,54,2	script	Holy Shadow#f3-7::HolyShadow3	722,{
+	set .@GID, GetCastleData("payg_cas03",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastlePy03:
+	FlagEmblem GetCastleData("payg_cas03",1);
+	end;
+}
+
+payg_cas03,236,45,2	duplicate(HolyShadow3)	Holy Shadow#f3-8	722
+payg_cas03,259,66,4	duplicate(HolyShadow3)	Holy Shadow#f3-9	722
+payg_cas03,266,66,4	duplicate(HolyShadow3)	Holy Shadow#f3-10	722
+payg_cas03,34,31,4	duplicate(HolyShadow3)	Holy Shadow#f3-11	722
+payg_cas03,43,31,4	duplicate(HolyShadow3)	Holy Shadow#f3-12	722
+
+// AGIT Manager
+//============================================================
+payg_cas03,269,265,0	duplicate(Gld_Agit_Manager)	Agit#payg_cas03	-1
+
+// Steward
+//============================================================
+payg_cas03,10,277,0	duplicate(Gld_Mngr_Template)	Gheriot#payg_cas03	55
+
+// Guardians
+//============================================================
+payg_cas03,10,277,0	duplicate(Gld_Guard_Template)	Guardian#payg_cas03	-1
+
+// Kafra Staff
+//============================================================
+payg_cas03,9,263,5	duplicate(Gld_Kafra_Template)	Kafra Staff#payg_cas03	117
+
+// Master's Room Exit
+//============================================================
+payg_cas03,163,167,0	script	#switch_Py03	111,{
+	mes " ";
+	mes "There's a small lever. Will you pull it? ";
+	next;
+	switch(select("Pull.:Do not.")) {
+	case 1:
+		warp "payg_cas03",11,278;
+		break;
+	case 2:
+		break;
+	}
+	end;
+}
+
+// Guild Treasure Protection
+//============================================================
+payg_cas03,159,168,0	duplicate(Gld_Trea_Protect)	ban_warp#payg_cas03	-1,6,6
+
+// Guild Treasure Spawns
+//============================================================
+payg_cas03,159,168,0	duplicate(Gld_Trea_Spawn)	Treasure#payg_cas03	-1
+
+// Guild Dungeon Switch
+//============================================================
+payg_cas03,20,44,0	duplicate(Gld_Dun_Template)	#payg_cas03	111

+ 165 - 0
npc/guild/payg_cas04.txt

@@ -0,0 +1,165 @@
+//===== eAthena Script =======================================
+//= War of Emperium (Payon)
+//===== By: ==================================================
+//= L0ne_W0lf
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= NPCs that relate to Payon Guild Castle 4
+//===== Additional Comments: =================================
+//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
+//============================================================
+
+// Guild Flag (Town)
+//============================================================
+payon,166,169,3	script	Sacred Altar#f4-1::SacredAltar	722,{
+	end;
+
+OnRecvCastlePy04:
+	FlagEmblem GetCastleData("payg_cas04",1);
+	end;
+}
+
+payon,118,322,4	duplicate(SacredAltar)	Sacred Altar#f4-2	722
+
+// Guild Flag (Outside Castle)
+//============================================================
+pay_gld,137,160,0	script	Sacred Altar#f4-3::SacredAltar2	722,{
+	set .@GID, GetCastleData("payg_cas04",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		if (getcharid(2) == .@GID) {
+			mes "Brave ones...";
+			mes "Do you wish to return to your honorable place?";
+			next;
+			if (select("Return to the guild castle.:Quit.") == 1) {
+				if (getcharid(2) == GetCastleData("payg_cas04",1)) {
+					warp "payg_cas04",40,235;
+					end;
+				}
+			}
+			close;
+		}
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastlePy04:
+	FlagEmblem GetCastleData("payg_cas04",1);
+	end;
+}
+
+pay_gld,143,160,0	duplicate(SacredAltar2)	Sacred Altar#f4-4	722
+pay_gld,133,151,2	duplicate(SacredAltar2)	Sacred Altar#f4-5	722
+pay_gld,153,166,1	duplicate(SacredAltar2)	Sacred Altar#f4-6	722
+
+// Guild Flag (Inside Castle)
+//============================================================
+payg_cas04,255,259,0	script	Sacred Altar#f4-7::SacredAltar3	722,{
+	set .@GID, GetCastleData("payg_cas04",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastlePy04:
+	FlagEmblem GetCastleData("payg_cas04",1);
+	end;
+}
+
+payg_cas04,248,259,0	duplicate(SacredAltar3)	Sacred Altar#f4-8	722
+payg_cas04,248,168,6	duplicate(SacredAltar3)	Sacred Altar#f4-9	722
+payg_cas04,248,160,6	duplicate(SacredAltar3)	Sacred Altar#f4-10	722
+payg_cas04,232,181,4	duplicate(SacredAltar3)	Sacred Altar#f4-11	722
+payg_cas04,239,181,4	duplicate(SacredAltar3)	Sacred Altar#f4-12	722
+
+// AGIT Manager
+//============================================================
+payg_cas04,271,29,0	duplicate(Gld_Agit_Manager)	Agit#payg_cas04	-1
+
+// Steward
+//============================================================
+payg_cas04,38,284,3	duplicate(Gld_Mngr_Template)	DJ#payg_cas04	55
+
+// Guardians
+//============================================================
+payg_cas04,38,284,3	duplicate(Gld_Guard_Template)	Guardian#payg_cas04	-1
+
+// Kafra Staff
+//============================================================
+payg_cas04,40,235,1	duplicate(Gld_Kafra_Template)	Kafra Staff#payg_cas04	117
+
+// Master's Room Exit
+//============================================================
+payg_cas04,151,47,0	script	#switch_Py04	111,{
+	mes " ";
+	mes "There's a small lever. Will you pull it? ";
+	next;
+	switch(select("Pull.:Do not.")) {
+	case 1:
+		warp "payg_cas04",38,285;
+		break;
+	case 2:
+		break;
+	}
+	end;
+}
+
+// Guild Treasure Protection
+//============================================================
+payg_cas04,147,48,0	duplicate(Gld_Trea_Protect)	ban_warp#payg_cas04	-1,6,6
+
+// Guild Treasure Spawns
+//============================================================
+payg_cas04,147,48,0	duplicate(Gld_Trea_Spawn)	Treasure#payg_cas04	-1
+
+// Guild Dungeon Switch
+//============================================================
+payg_cas04,52,48,0	duplicate(Gld_Dun_Template)	#payg_cas04	111

+ 165 - 0
npc/guild/payg_cas05.txt

@@ -0,0 +1,165 @@
+//===== eAthena Script =======================================
+//= War of Emperium (Payon)
+//===== By: ==================================================
+//= L0ne_W0lf
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= NPCs that relate to Payon Guild Castle 5
+//===== Additional Comments: =================================
+//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
+//============================================================
+
+// Guild Flag (Town)
+//============================================================
+payon,166,165,3	script	Bamboo Grove Hill#f5-1::BambooGroveHill	722,{
+	end;
+
+OnRecvCastlePy05:
+	FlagEmblem GetCastleData("payg_cas05",1);
+	end;
+}
+
+payon,123,322,4	duplicate(BambooGroveHill)	Bamboo Grove Hill#f5-2	722
+
+// Guild Flag (Outside Castle)
+//============================================================
+pay_gld,208,268,4	script	Bamboo Grove Hill#f5-3::BambooGroveHill2	722,{
+	set .@GID, GetCastleData("payg_cas05",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		if (getcharid(2) == .@GID) {
+			mes "Brave ones...";
+			mes "Do you wish to return to your honorable place?";
+			next;
+			if (select("Return to the guild castle.:Quit.") == 1) {
+				if (getcharid(2) == GetCastleData("payg_cas05",1)) {
+					warp "payg_cas05",276,227;
+					end;
+				}
+			}
+			close;
+		}
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastlePy05:
+	FlagEmblem GetCastleData("payg_cas05",1);
+	end;
+}
+
+pay_gld,199,268,4	duplicate(BambooGroveHill2)	Bamboo Grove Hill#f5-4	722
+pay_gld,190,277,3	duplicate(BambooGroveHill2)	Bamboo Grove Hill#f5-5	722
+pay_gld,187,294,2	duplicate(BambooGroveHill2)	Bamboo Grove Hill#f5-6	722
+
+// Guild Flag (Inside Castle)
+//============================================================
+payg_cas05,32,249,4	script	Bamboo Grove Hill#f5-7::BambooGroveHill3	722,{
+	set .@GID, GetCastleData("payg_cas05",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastlePy05:
+	FlagEmblem GetCastleData("payg_cas05",1);
+	end;
+}
+
+payg_cas05,24,249,4	duplicate(BambooGroveHill3)	Bamboo Grove Hill#f5-8	722
+payg_cas05,62,271,0	duplicate(BambooGroveHill3)	Bamboo Grove Hill#f5-9	722
+payg_cas05,57,271,0	duplicate(BambooGroveHill3)	Bamboo Grove Hill#f5-10	722
+payg_cas05,55,252,2	duplicate(BambooGroveHill3)	Bamboo Grove Hill#f5-11	722
+payg_cas05,55,260,2	duplicate(BambooGroveHill3)	Bamboo Grove Hill#f5-12	722
+
+// AGIT Manager
+//============================================================
+payg_cas05,30,30,0	duplicate(Gld_Agit_Manager)	Agit#payg_cas05	-1
+
+// Steward
+//============================================================
+payg_cas05,277,249,3	duplicate(Gld_Mngr_Template)	Nahzarf#payg_cas05	55
+
+// Guardians
+//============================================================
+payg_cas05,277,249,3	duplicate(Gld_Guard_Template)	Guardian#payg_cas05	-1
+
+// Kafra Staff
+//============================================================
+payg_cas05,276,227,1	duplicate(Gld_Kafra_Template)	Kafra Staff#payg_cas05	117
+
+// Master's Room Exit
+//============================================================
+payg_cas05,161,136,0	script	#switch_Py05	111,{
+	mes " ";
+	mes "There's a small lever. Will you pull it? ";
+	next;
+	switch(select("Pull.:Do not.")) {
+	case 1:
+		warp "payg_cas05",277,250;
+		break;
+	case 2:
+		break;
+	}
+	end;
+}
+
+// Guild Treasure Protection
+//============================================================
+payg_cas05,157,132,0	duplicate(Gld_Trea_Protect)	ban_warp#payg_cas05	-1,6,6
+
+// Guild Treasure Spawns
+//============================================================
+payg_cas05,157,132,0	duplicate(Gld_Trea_Spawn)	Treasure#payg_cas05	-1
+
+// Guild Dungeon Switch
+//============================================================
+payg_cas05,248,14,0	duplicate(Gld_Dun_Template)	#payg_cas05	111

+ 0 - 49
npc/guild/prtg/prtg_dunsw.txt

@@ -1,49 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium Dungeon Switch for Prontera Guild Castles
-//===== By: ==================================================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//===== Current Version: =====================================
-//= 1.2
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= Switch that warps guild members to the guild dungeon
-//===== Additional Comments: =================================
-//= v1.2 Optimized with functions.[kobra_k88]
-//============================================================
-
-
-// Castle 1 ================================================
-prtg_cas01,94,200,0	script	Switch#DunPt01	111,{
-	callfunc "F_GldDunSw","prtg_cas01","03",28,251;
-	close;
-}
-
-
-// Castle 2 ================================================
-prtg_cas02,84,72,0	script	Switch#DunPt02	111,{
-	callfunc "F_GldDunSw","prtg_cas02","03",164,268;
-	close;
-}
-
-
-// Castle 3 ================================================
-prtg_cas03,5,70,0	script	Switch#DunPt03	111,{
-	callfunc "F_GldDunSw","prtg_cas03","03",164,179;
-	close;
-}
-
-
-// Castle 4 ================================================
-prtg_cas04,56,283,0	script	Switch#DunPt04	111,{
-	callfunc "F_GldDunSw","prtg_cas04","03",268,203;
-	close;
-}
-
-
-// Castle 5 ================================================
-prtg_cas05,212,94,0	script	Switch#DunPt05	111,{
-	callfunc "F_GldDunSw","prtg_cas05","03",199,28;
-	close;
-}

+ 0 - 159
npc/guild/prtg/prtg_ev_agit.txt

@@ -1,159 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium - Prontera Guild Wars Events
-//===== By: ==================================================
-//= jAthena (1.0)
-//= 1.1 by Akaru and ho|yAnge|
-//===== Current Version: =====================================
-//= 1.5
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= Event Triggers of Prontera Guild Wars
-//===== Additional Comments: =================================
-//= v1.2 Now using functions for OnAgitStart and OnAgitBreak. [kobra_k88]
-//= 1.3 Added code for abandoning captured castles on /breakguild [Lupus]
-//= 1.4 Small updated. Changed "EMPERIUM" to "Emperium". [L0ne_W0lf]
-//= 1.5 Quick fix "emps not respawning if the emp breaker logs off".
-//=     (from r11630 bureport:369) [FlavioJS]
-//============================================================
-
-
-// Castle 1 ================================================================
-prtg_cas01,197,197,0	script	Agit_Pt01	-1,{
-OnInterIfInitOnce:
-	GetCastleData "prtg_cas01",0,"::OnRecvCastlePt01";
-	end;
-OnRecvCastlePt01:
-	RequestGuildInfo GetCastleData("prtg_cas01",1);
-	end;
-OnAgitStart:
-	callfunc "F_AgitStart","prtg_cas01","Pt01",197,197;
-	end;
-OnAgitBreak:
-	callfunc "F_AgitBreak","prtg_cas01","Pt01";
-	goto OnAgitEliminate;
-OnGuildBreak:
-	callfunc "F_GuildBreak","prtg_cas01","Pt01";
-	end;
-OnAgitEliminate:
-	sleep getbattleflag("gvg_eliminate_time");
-	MapRespawnGuildID "prtg_cas01",GetCastleData("prtg_cas01",1),6;
-	sleep 6333-getbattleflag("gvg_eliminate_time");// wait for emp animation to end
-	Monster "prtg_cas01",197,197,"Emperium",1288,1,"Agit_Pt01::OnAgitBreak";
-	end;
-OnAgitEnd:
-	callfunc "F_AgitEnd","prtg_cas01","Pt01";
-	end;
-}
-
-// Castle 2 ================================================================
-prtg_cas02,158,174,0	script	Agit_Pt02	-1,{
-OnInterIfInitOnce:
-	GetCastleData "prtg_cas02",0,"::OnRecvCastlePt02";
-	end;
-OnRecvCastlePt02:
-	RequestGuildInfo GetCastleData("prtg_cas02",1);
-	end;
-OnAgitStart:
-	callfunc "F_AgitStart","prtg_cas02","Pt02",158,174;
-	end;
-OnAgitBreak:
-	callfunc "F_AgitBreak","prtg_cas02","Pt02";
-	goto OnAgitEliminate;
-OnGuildBreak:
-	callfunc "F_GuildBreak","prtg_cas02","Pt02";
-	end;
-OnAgitEliminate:
-	sleep getbattleflag("gvg_eliminate_time");
-	MapRespawnGuildID "prtg_cas02",GetCastleData("prtg_cas02",1),6;
-	sleep 6333-getbattleflag("gvg_eliminate_time");// wait for emp animation to end
-	Monster "prtg_cas02",158,174,"Emperium",1288,1,"Agit_Pt02::OnAgitBreak";
-	end;
-OnAgitEnd:
-	callfunc "F_AgitEnd","prtg_cas02","Pt02";
-	end;
-}
-
-// Castle 3 ================================================================
-prtg_cas03,17,221,0	script	Agit_Pt03	-1,{
-OnInterIfInitOnce:
-	GetCastleData "prtg_cas03",0,"::OnRecvCastlePt03";
-	end;
-OnRecvCastlePt03:
-	RequestGuildInfo GetCastleData("prtg_cas03",1);
-	end;
-OnAgitStart:
-	callfunc "F_AgitStart","prtg_cas03","Pt03",17,221;
-	end;
-OnAgitBreak:
-	callfunc "F_AgitBreak","prtg_cas03","Pt03";
-	goto OnAgitEliminate;
-OnGuildBreak:
-	callfunc "F_GuildBreak","prtg_cas03","Pt03";
-	end;
-OnAgitEliminate:
-	sleep getbattleflag("gvg_eliminate_time");
-	MapRespawnGuildID "prtg_cas03",GetCastleData("prtg_cas03",1),6;
-	sleep 6333-getbattleflag("gvg_eliminate_time");// wait for emp animation to end
-	Monster "prtg_cas03",17,221,"Emperium",1288,1,"Agit_Pt03::OnAgitBreak";
-	end;
-OnAgitEnd:
-	callfunc "F_AgitEnd","prtg_cas03","Pt03";
-	end;
-}
-
-// Castle 4 ================================================================
-prtg_cas04,292,14,0	script	Agit_Pt04	-1,{
-OnInterIfInitOnce:
-	GetCastleData "prtg_cas04",0,"::OnRecvCastlePt04";
-	end;
-OnRecvCastlePt04:
-	RequestGuildInfo GetCastleData("prtg_cas04",1);
-	end;
-OnAgitStart:
-	callfunc "F_AgitStart","prtg_cas04","Pt04",292,14;
-	end;
-OnAgitBreak:
-	callfunc "F_AgitBreak","prtg_cas04","Pt04";
-	goto OnAgitEliminate;
-OnGuildBreak:
-	callfunc "F_GuildBreak","prtg_cas04","Pt04";
-	end;
-OnAgitEliminate:
-	sleep getbattleflag("gvg_eliminate_time");
-	MapRespawnGuildID "prtg_cas04",GetCastleData("prtg_cas04",1),6;
-	sleep 6333-getbattleflag("gvg_eliminate_time");// wait for emp animation to end
-	Monster "prtg_cas04",292,14,"Emperium",1288,1,"Agit_Pt04::OnAgitBreak";
-	end;
-OnAgitEnd:
-	callfunc "F_AgitEnd","prtg_cas04","Pt04";
-	end;
-}
-
-// Castle 5 ================================================================
-prtg_cas05,266,266,0	script	Agit_Pt05	-1,{
-OnInterIfInitOnce:
-	GetCastleData "prtg_cas05",0,"::OnRecvCastlePt05";
-	end;
-OnRecvCastlePt05:
-	RequestGuildInfo GetCastleData("prtg_cas05",1);
-	end;
-OnAgitStart:
-	callfunc "F_AgitStart","prtg_cas05","Pt05",266,266;
-	end;
-OnAgitBreak:
-	callfunc "F_AgitBreak","prtg_cas05","Pt05";
-	goto OnAgitEliminate;
-OnGuildBreak:
-	callfunc "F_GuildBreak","prtg_cas05","Pt05";
-	end;
-OnAgitEliminate:
-	sleep getbattleflag("gvg_eliminate_time");
-	MapRespawnGuildID "prtg_cas05",GetCastleData("prtg_cas05",1),6;
-	sleep 6333-getbattleflag("gvg_eliminate_time");// wait for emp animation to end
-	Monster "prtg_cas05",266,266,"Emperium",1288,1,"Agit_Pt05::OnAgitBreak";
-	end;
-OnAgitEnd:
-	callfunc "F_AgitEnd","prtg_cas05","Pt05";
-	end;
-}

+ 0 - 248
npc/guild/prtg/prtg_flags.txt

@@ -1,248 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium Prontera Guild Flags
-//===== By: ==================================================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//===== Current Version: =====================================
-//= 1.5
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= WoE flag scripts.  Displays guild emblems on flags.
-//===== Additional Comments: =================================
-//= v1.2 Optimized with functions.[kobra_k88]
-//= v1.3 Changed to iRO castle names [DracoRPG]
-//= v1.4 Can now only flag in from outside the castle [Kayla]
-//= V1.5 Town flags no longer show dialog, and fixed various flags. [L0ne__W0lf]
-//============================================================
-
-
-//================================================================================//
-// 					Castle 1
-//================================================================================//
-prontera,155,190,4	script	Kriemhild#p1-1::Kriemhild	722,{
-	callfunc "F_Flags","Prontera","prtg_cas01",97,174,0,0;
-	close;
-
-OnRecvCastlePt01:
-	FlagEmblem GetCastleData("prtg_cas01",1);
-	end;
-}
-
-prt_gld,131,60,6	script	Kriemhild#p1-2::Kriemhild2	722,{
-	callfunc "F_Flags","Prontera","prtg_cas01",97,174,1,1;
-	close;
-
-OnRecvCastlePt01:
-	FlagEmblem GetCastleData("prtg_cas01",1);
-	end;
-}
-
-prtg_cas01,58,56,4	script	Kriemhild#p1-3::Kriemhild3	722,{
-	callfunc "F_Flags","Prontera","prtg_cas01",97,174,0,1;
-	close;
-
-OnRecvCastlePt01:
-	FlagEmblem GetCastleData("prtg_cas01",1);
-	end;
-}
-// In Guild ===========================================
-prt_gld,138,68,6	duplicate(Kriemhild2)	Kriemhild#p1-4	722
-prt_gld,138,60,6	duplicate(Kriemhild2)	Kriemhild#p1-5	722
-prt_gld,135,60,6	duplicate(Kriemhild2)	Kriemhild#p1-6	722
-// In Castle =============================================
-prtg_cas01,64,56,4	duplicate(Kriemhild3)	Kriemhild#p1-7	722
-prtg_cas01,76,32,4	duplicate(Kriemhild3)	Kriemhild#p1-8	722
-prtg_cas01,84,32,4	duplicate(Kriemhild3)	Kriemhild#p1-9	722
-prtg_cas01,94,39,4	duplicate(Kriemhild3)	Kriemhild#p1-10	722
-prtg_cas01,94,24,4	duplicate(Kriemhild3)	Kriemhild#p1-11	722
-prtg_cas01,73,14,4	duplicate(Kriemhild3)	Kriemhild#p1-12	722
-prtg_cas01,73,6,4	duplicate(Kriemhild3)	Kriemhild#p1-13	722
-prtg_cas01,55,46,4	duplicate(Kriemhild3)	Kriemhild#p1-14	722
-prtg_cas01,45,46,4	duplicate(Kriemhild3)	Kriemhild#p1-15	722
-
-
-
-//================================================================================//
-// 					Castle 2
-//================================================================================//
-prontera,146,194,3	script	Swanhild#p2-1::Swanhild	722,{
-	callfunc "F_Flags","Prontera","prtg_cas02",71,36,0,0;
-	close;
-
-OnRecvCastlePt02:
-	FlagEmblem GetCastleData("prtg_cas02",1);
-	end;
-}
-
-prt_gld,244,126,8	script	Swanhild#p2-2::Swanhild2	722,{
-	callfunc "F_Flags","Prontera","prtg_cas02",71,36,1,1;
-	close;
-
-OnRecvCastlePt02:
-	FlagEmblem GetCastleData("prtg_cas02",1);
-	end;
-}
-
-prtg_cas02,40,227,4	script	Swanhild#p2-3::Swanhild3	722,{
-	callfunc "F_Flags","Prontera","prtg_cas02",71,36,0,1;
-	close;
-
-OnRecvCastlePt02:
-	FlagEmblem GetCastleData("prtg_cas02",1);
-	end;
-}
-// In Guild ===========================================
-prt_gld,244,128,8	duplicate(Swanhild2)	Swanhild#p2-4	722
-prt_gld,236,126,8	duplicate(Swanhild2)	Swanhild#p2-5	722
-prt_gld,236,128,8	duplicate(Swanhild2)	Swanhild#p2-6	722
-// In Castle =============================================
-prtg_cas02,46,227,4	duplicate(Swanhild3)	Swanhild#p2-7	722
-prtg_cas02,11,219,4	duplicate(Swanhild3)	Swanhild#p2-8	722
-prtg_cas02,11,214,4	duplicate(Swanhild3)	Swanhild#p2-9	722
-prtg_cas02,20,219,4	duplicate(Swanhild3)	Swanhild#p2-10	722
-prtg_cas02,20,214,4	duplicate(Swanhild3)	Swanhild#p2-11	722
-prtg_cas02,79,227,8	duplicate(Swanhild3)	Swanhild#p2-12	722
-prtg_cas02,70,227,8	duplicate(Swanhild3)	Swanhild#p2-13	722
-prtg_cas02,38,189,8	duplicate(Swanhild3)	Swanhild#p2-14	722
-prtg_cas02,34,189,8	duplicate(Swanhild3)	Swanhild#p2-15	722
-prtg_cas02,153,161,4	duplicate(Swanhild3)	Swanhild#p2-16	722
-prtg_cas02,162,161,4	duplicate(Swanhild3)	Swanhild#p2-17	722
-
-
-
-
-//================================================================================//
-// 					Castle 3
-//================================================================================//
-prontera,143,203,2	script	Fadhgridh#p3-1::Fadhgridh	722,{
-	callfunc "F_Flags","Prontera","prtg_cas03",45,99,0,0;
-	close;
-
-OnRecvCastlePt03:
-	FlagEmblem GetCastleData("prtg_cas03",1);
-	end;
-}
-
-prt_gld,147,140,4	script	Fadhgridh#p3-2::Fadhgridh2	722,{
-	callfunc "F_Flags","Prontera","prtg_cas03",45,99,1,1;
-	close;
-
-OnRecvCastlePt03:
-	FlagEmblem GetCastleData("prtg_cas03",1);
-	end;
-}
-
-prtg_cas03,168,28,4	script	Fadhgridh#p3-3::Fadhgridh3	722,{
-	callfunc "F_Flags","Prontera","prtg_cas03",45,99,0,1;
-	close;
-
-OnRecvCastlePt03:
-	FlagEmblem GetCastleData("prtg_cas03",1);
-	end;
-}
-// In Guild ===========================================
-prt_gld,147,136,4	duplicate(Fadhgridh2)	Fadhgridh#p3-4	722
-prt_gld,158,140,4	duplicate(Fadhgridh2)	Fadhgridh#p3-5	722
-prt_gld,158,136,4	duplicate(Fadhgridh2)	Fadhgridh#p3-6	722
-// In Castle ============================================
-prtg_cas03,182,28,4	duplicate(Fadhgridh3)	Fadhgridh#p3-7	722
-prtg_cas03,43,50,4	duplicate(Fadhgridh3)	Fadhgridh#p3-8	722
-prtg_cas03,48,50,4	duplicate(Fadhgridh3)	Fadhgridh#p3-9	722
-prtg_cas03,43,58,4	duplicate(Fadhgridh3)	Fadhgridh#p3-10	722
-prtg_cas03,48,58,4	duplicate(Fadhgridh3)	Fadhgridh#p3-11	722
-prtg_cas03,158,210,4	duplicate(Fadhgridh3)	Fadhgridh#p3-12	722
-prtg_cas03,169,210,4	duplicate(Fadhgridh3)	Fadhgridh#p3-13	722
-prtg_cas03,162,201,4	duplicate(Fadhgridh3)	Fadhgridh#p3-14	722
-prtg_cas03,165,201,4	duplicate(Fadhgridh3)	Fadhgridh#p3-15	722
-
-
-
-//================================================================================//
-// 					Castle 4
-//================================================================================//
-prontera,167,203,6	script	Skoegul#p4-1::Skoegul	722,{
-	callfunc "F_Flags","Prontera","prtg_cas04",259,265,0,0;
-	close;
-
-OnRecvCastlePt04:
-	FlagEmblem GetCastleData("prtg_cas04",1);
-	end;
-}
-
-prt_gld,120,243,6	script	Skoegul#p4-2::Skoegul2	722,{
-	callfunc "F_Flags","Prontera","prtg_cas04",259,265,1,1;
-	close;
-
-OnRecvCastlePt04:
-	FlagEmblem GetCastleData("prtg_cas04",1);
-	end;
-}
-
-prtg_cas04,82,29,4	script	Skoegul#p4-3::Skoegul3	722,{
-	callfunc "F_Flags","Prontera","prtg_cas04",259,265,0,1;
-	close;
-
-OnRecvCastlePt04:
-	FlagEmblem GetCastleData("prtg_cas04",1);
-	end;
-}
-// In Guild ===========================================
-prt_gld,120,236,6	duplicate(Skoegul2)	Skoegul#p4-4	722
-prt_gld,122,243,6	duplicate(Skoegul2)	Skoegul#p4-5	722
-prt_gld,122,236,6	duplicate(Skoegul2)	Skoegul#p4-6	722
-// In Castle ==========================================
-prtg_cas04,75,29,4	duplicate(Skoegul3)	Skoegul#p4-7	722
-prtg_cas04,75,27,4	duplicate(Skoegul3)	Skoegul#p4-8	722
-prtg_cas04,82,27,4	duplicate(Skoegul3)	Skoegul#p4-9	722
-prtg_cas04,59,29,4	duplicate(Skoegul3)	Skoegul#p4-10	722
-prtg_cas04,67,29,4	duplicate(Skoegul3)	Skoegul#p4-11	722
-prtg_cas04,258,25,4	duplicate(Skoegul3)	Skoegul#p4-12	722
-prtg_cas04,258,20,4	duplicate(Skoegul3)	Skoegul#p4-13	722
-prtg_cas04,263,20,4	duplicate(Skoegul3)	Skoegul#p4-14	722
-prtg_cas04,263,27,4	duplicate(Skoegul3)	Skoegul#p4-15	722
-
-
-
-
-//================================================================================//
-// 					Castle 5
-//================================================================================//
-prontera,165,194,5	script	Gondul#p5-1::Gondul	722,{
-	callfunc "F_Flags","Prontera","prtg_cas05",34,30,0,0;
-	close;
-
-OnRecvCastlePt05:
-	FlagEmblem GetCastleData("prtg_cas05",1);
-	end;
-}
-
-prt_gld,199,243,2	script	Gondul#p5-2::Gondul2	722,{
-	callfunc "F_Flags","Prontera","prtg_cas05",34,30,1,1;
-	close;
-
-OnRecvCastlePt05:
-	FlagEmblem GetCastleData("prtg_cas05",1);
-	end;
-}
-
-prtg_cas05,19,247,4	script	Gondul#p5-3::Gondul3	722,{
-	callfunc "F_Flags","Prontera","prtg_cas05",34,30,0,1;
-	close;
-
-OnRecvCastlePt05:
-	FlagEmblem GetCastleData("prtg_cas05",1);
-	end;
-}
-// In Guild ===========================================
-prt_gld,199,236,2	duplicate(Gondul2)	Gondul#p5-4	722
-prt_gld,197,243,2	duplicate(Gondul2)	Gondul#p5-5	722
-prt_gld,197,236,2	duplicate(Gondul2)	Gondul#p5-6	722
-// In Castle =============================================
-prtg_cas05,19,243,4	duplicate(Gondul3)	Gondul#p5-7	722
-prtg_cas05,26,247,4	duplicate(Gondul3)	Gondul#p5-8	722
-prtg_cas05,26,243,4	duplicate(Gondul3)	Gondul#p5-9	722
-prtg_cas05,249,289,4	duplicate(Gondul3)	Gondul#p5-10	722
-prtg_cas05,256,289,4	duplicate(Gondul3)	Gondul#p5-11	722
-prtg_cas05,253,271,4	duplicate(Gondul3)	Gondul#p5-12	722
-prtg_cas05,273,257,4	duplicate(Gondul3)	Gondul#p5-13	722

+ 0 - 111
npc/guild/prtg/prtg_guardians.txt

@@ -1,111 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium - prtg_cas guardians script
-//===== By: ==================================================
-//= holyAngelX (1.0)
-//===== Current Version: =====================================
-//= 1.3
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= Re-spawns guardians on server start if they have been
-//= purchased.  Also announces when a guardian dies.
-//===== Additional Comments: =================================
-//= 1.1 by joedukk
-//= 1.2 by Akaru and Valaris
-//= 1.2a Guardians for all prtg castles are now in this file.
-//= Minor optimizations.[kobra_k88]
-//= 1.3 Corrected what guardians will spawn, and where. [L0ne_W0lf]
-//=	All guardians will now die when OnAgiInit is run.
-//=	Removed announcment for when a guardian dies.
-//============================================================
-
-
-prtg_cas01,197,197,0	script	Guardian_Pt01	-1,{
-OnAgitInit:
-	killmonster "prtg_cas01","Guardian_Pt01::OnGuardianDied";
-	if (GetCastleData("prtg_cas01",10) == 1) guardian "prtg_cas01",182,62,"Guardian Soldier",1287,"Guardian_Pt01::OnGuardianDied",0;
-	if (GetCastleData("prtg_cas01",11) == 1) guardian "prtg_cas01",182,116,"Guardian Soldier",1287,"Guardian_Pt01::OnGuardianDied",1;
-	if (GetCastleData("prtg_cas01",12) == 1) guardian "prtg_cas01",153,86,"Guardian Soldier",1287,"Guardian_Pt01::OnGuardianDied",2;
-	if (GetCastleData("prtg_cas01",13) == 1) guardian "prtg_cas01",59,28,"Guardian Archer",1285,"Guardian_Pt01::OnGuardianDied",3;
-	if (GetCastleData("prtg_cas01",14) == 1) guardian "prtg_cas01",50,36,"Guardian Archer",1285,"Guardian_Pt01::OnGuardianDied",4;
-	if (GetCastleData("prtg_cas01",15) == 1) guardian "prtg_cas01",184,183,"Guardian Knight",1286,"Guardian_Pt01::OnGuardianDied",5;
-	if (GetCastleData("prtg_cas01",16) == 1) guardian "prtg_cas01",196,189,"Guardian Knight",1286,"Guardian_Pt01::OnGuardianDied",6;
-	if (GetCastleData("prtg_cas01",17) == 1) guardian "prtg_cas01",107,179,"Guardian Knight",1286,"Guardian_Pt01::OnGuardianDied",7;
-	end;
-
-OnGuardianDied:
-	// Event when Guardian dies
-	end;
-}
-//------------------------------------------------------------------------------
-prtg_cas02,158,174,0	script	Guardian_Pt02	-1,{
-OnAgitInit:
-	killmonster "prtg_cas02","Guardian_Pt02::OnGuardianDied";
-	if (GetCastleData("prtg_cas02",10) == 1) guardian "prtg_cas02",161,161,"Guardian Knight",1286,"Guardian_Pt02::OnGuardianDied",0;
-	if (GetCastleData("prtg_cas02",11) == 1) guardian "prtg_cas02",153,161,"Guardian Knight",1286,"Guardian_Pt02::OnGuardianDied",1;
-	if (GetCastleData("prtg_cas02",12) == 1) guardian "prtg_cas02",178,44,"Guardian Knight",1286,"Guardian_Pt02::OnGuardianDied",2;
-	if (GetCastleData("prtg_cas02",13) == 1) guardian "prtg_cas02",71,75,"Guardian Soldier",1287,"Guardian_Pt02::OnGuardianDied",3;
-	if (GetCastleData("prtg_cas02",14) == 1) guardian "prtg_cas02",49,28,"Guardian Soldier",1287,"Guardian_Pt02::OnGuardianDied",4;
-	if (GetCastleData("prtg_cas02",15) == 1) guardian "prtg_cas02",64,186,"Guardian Archer",1285,"Guardian_Pt02::OnGuardianDied",5;
-	if (GetCastleData("prtg_cas02",16) == 1) guardian "prtg_cas02",76,196,"Guardian Archer",1285,"Guardian_Pt02::OnGuardianDied",6;
-	if (GetCastleData("prtg_cas02",17) == 1) guardian "prtg_cas02",75,175,"Guardian Archer",1285,"Guardian_Pt02::OnGuardianDied",7;
-	end;
-
-OnGuardianDied:
-	// Event when Guardian dies
-	end;
-}
-//------------------------------------------------------------------------------
-prtg_cas03,17,221,0	script	Guardian_Pt03	-1,{
-OnAgitInit:
-	killmonster "prtg_cas03","Guardian_Pt03::OnGuardianDied";
-	if (GetCastleData("prtg_cas03",10) == 1) guardian "prtg_cas03",191,190,"Guardian Knight",1286,"Guardian_Pt03::OnGuardianDied",0;
-	if (GetCastleData("prtg_cas03",11) == 1) guardian "prtg_cas03",137,190,"Guardian Knight",1286,"Guardian_Pt03::OnGuardianDied",1;
-	if (GetCastleData("prtg_cas03",12) == 1) guardian "prtg_cas03",45,99,"Guardian Knight",1286,"Guardian_Pt03::OnGuardianDied",2;
-	if (GetCastleData("prtg_cas03",13) == 1) guardian "prtg_cas03",50,87,"Guardian Soldier",1287,"Guardian_Pt03::OnGuardianDied",3;
-	if (GetCastleData("prtg_cas03",14) == 1) guardian "prtg_cas03",41,87,"Guardian Soldier",1287,"Guardian_Pt03::OnGuardianDied",4;
-	if (GetCastleData("prtg_cas03",15) == 1) guardian "prtg_cas03",191,42,"Guardian Archer",1285,"Guardian_Pt03::OnGuardianDied",5;
-	if (GetCastleData("prtg_cas03",16) == 1) guardian "prtg_cas03",179,43,"Guardian Archer",1285,"Guardian_Pt03::OnGuardianDied",6;
-	if (GetCastleData("prtg_cas03",17) == 1) guardian "prtg_cas03",191,72,"Guardian Archer",1285,"Guardian_Pt03::OnGuardianDied",7;
-	end;
-
-OnGuardianDied:
-	// Event when Guardian dies
-	end;
-}
-//------------------------------------------------------------------------------
-prtg_cas04,292,14,0	script	Guardian_Pt04	-1,{
-OnAgitInit:
-	killmonster "prtg_cas04","Guardian_Pt04::OnGuardianDied";
-	if (GetCastleData("prtg_cas04",10) == 1) guardian "prtg_cas04",276,14,"Guardian Knight",1286,"Guardian_Pt04::OnGuardianDied",0;
-	if (GetCastleData("prtg_cas04",11) == 1) guardian "prtg_cas04",274,35,"Guardian Knight",1286,"Guardian_Pt04::OnGuardianDied",1;
-	if (GetCastleData("prtg_cas04",12) == 1) guardian "prtg_cas04",246,246,"Guardian Knight",1286,"Guardian_Pt04::OnGuardianDied",2;
-	if (GetCastleData("prtg_cas04",13) == 1) guardian "prtg_cas04",38,240,"Guardian Soldier",1287,"Guardian_Pt04::OnGuardianDied",3;
-	if (GetCastleData("prtg_cas04",14) == 1) guardian "prtg_cas04",29,240,"Guardian Soldier",1287,"Guardian_Pt04::OnGuardianDied",4;
-	if (GetCastleData("prtg_cas04",15) == 1) guardian "prtg_cas04",33,258,"Guardian Soldier",1287,"Guardian_Pt04::OnGuardianDied",5;
-	if (GetCastleData("prtg_cas04",16) == 1) guardian "prtg_cas04",78,48,"Guardian Archer",1285,"Guardian_Pt04::OnGuardianDied",6;
-	if (GetCastleData("prtg_cas04",17) == 1) guardian "prtg_cas04",36,61,"Guardian Archer",1285,"Guardian_Pt04::OnGuardianDied",7;
-	end;
-
-OnGuardianDied:
-	// Event when Guardian dies
-	end;
-}
-//------------------------------------------------------------------------------
-prtg_cas05,266,266,0	script	Guardian_Pt05	-1,{
-OnAgitInit:
-	killmonster "prtg_cas05","Guardian_Pt05::OnGuardianDied";
-	if (GetCastleData("prtg_cas05",10) == 1) guardian "prtg_cas05",266,262,"Guardian Knight",1286,"Guardian_Pt05::OnGuardianDied",0;
-	if (GetCastleData("prtg_cas05",11) == 1) guardian "prtg_cas05",287,280,"Guardian Knight",1286,"Guardian_Pt05::OnGuardianDied",1;
-	if (GetCastleData("prtg_cas05",12) == 1) guardian "prtg_cas05",245,250,"Guardian Knight",1286,"Guardian_Pt05::OnGuardianDied",2;
-	if (GetCastleData("prtg_cas05",13) == 1) guardian "prtg_cas05",236,63,"Guardian Soldier",1287,"Guardian_Pt05::OnGuardianDied",3;
-	if (GetCastleData("prtg_cas05",14) == 1) guardian "prtg_cas05",251,63,"Guardian Soldier",1287,"Guardian_Pt05::OnGuardianDied",4;
-	if (GetCastleData("prtg_cas05",15) == 1) guardian "prtg_cas05",278,253,"Guardian Soldier",1287,"Guardian_Pt05::OnGuardianDied",5;
-	if (GetCastleData("prtg_cas05",16) == 1) guardian "prtg_cas05",32,253,"Guardian Archer",1285,"Guardian_Pt05::OnGuardianDied",6;
-	if (GetCastleData("prtg_cas05",17) == 1) guardian "prtg_cas05",44,248,"Guardian Archer",1285,"Guardian_Pt05::OnGuardianDied",7;
-	end;
-
-OnGuardianDied:
-	// Event when Guardian dies
-	end;
-}

+ 0 - 67
npc/guild/prtg/prtg_kafras.txt

@@ -1,67 +0,0 @@
-//=== eAthena Script ====================
-//= War of Emperium Kafras for Prontera Guild Castles
-//=== By: =========================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//=== Current Version: ===================
-//= 1.3
-//=== Compatible With: ===================
-//= eAthena 0.1+; RO Episode 4+
-//=== Description: =====================
-//= Provides Kafra Staffs for guild members of Prontera Castles.
-//= Used in conjuction with function F_Kafra.
-//=== Additional Comments: =================
-//= v1.2 Optimized with functions.[kobra_k88]
-//= v1.3 Changed "Kafra Service" to "Kafra Staff" [L0ne_W0lf]
-//==============================
-
-
-// Castle 1 ========================
-prtg_cas01,96,173,0	script	Kafra Staff#Pt01	117,{
-	callfunc "F_GKafra", "prtg_cas01", "Prontera";
-	end;
-OnRecvCastlePt01:
-	if (GetCastleData("prtg_cas01",9) < 1) disablenpc "Kafra Staff#Pt01";
-	end;
-}
-
-
-// Castle 2 ========================
-prtg_cas02,71,36,4	script	Kafra Staff#Pt02	117,{
-	callfunc "F_GKafra", "prtg_cas02", "Prontera";
-	end;
-OnRecvCastlePt02:
-	if (GetCastleData("prtg_cas02",9) < 1) disablenpc "Kafra Staff#Pt02";
-	end;
-}
-
-
-// Castle 3 ========================
-//prtg_cas03,181,215,4	script	Kafra Staff#Pt03	117,{
-prtg_cas03,39,99,4	script	Kafra Staff#Pt03	117,{
-	callfunc "F_GKafra", "prtg_cas03", "Prontera";
-	end;
-OnRecvCastlePt03:
-	if (GetCastleData("prtg_cas03",9) < 1) disablenpc "Kafra Staff#Pt03";
-	end;
-}
-
-
-// Castle 4 ========================
-prtg_cas04,258,247,4	script	Kafra Staff#Pt04	117,{
-	callfunc "F_GKafra", "prtg_cas04", "Prontera";
-	end;
-OnRecvCastlePt04:
-	if (GetCastleData("prtg_cas04",9) < 1) disablenpc "Kafra Staff#Pt04";
-	end;
-}
-
-
-// Castle 5 ========================
-prtg_cas05,52,41,4	script	Kafra Staff#Pt05	117,{
-	callfunc "F_GKafra", "prtg_cas05", "Prontera";
-	end;
-OnRecvCastlePt05:
-	if (GetCastleData("prtg_cas05",9) < 1) disablenpc "Kafra Staff#Pt05";
-	end;
-}

+ 0 - 96
npc/guild/prtg/prtg_managers.txt

@@ -1,96 +0,0 @@
-//===== eAthena Script == =====================================
-//= War of Emperium Managers for Prontera Guild Castles
-//===== By: == ================================================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//===== Current Version: == ===================================
-//= 1.3
-//===== Compatible With: == ===================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: == =======================================
-//= 
-//===== Additional Comments: == ===============================
-//= v1.2 Optimized with functions.[kobra_k88]
-//= 1.3 Updated Guardian positions and types. [L0ne_W0lf]
-//=	Updated manager names, and some additional info
-//============================================================
-
-
-// Castle 1 == ================================================================================
-prtg_cas01,112,181,0	script	Ahvray#prt1	55,{
-	if(callfunc("F_GldManager","Steward Ahvray","prtg_cas01",15,209,"Pt01") ==  0) close;
-
-	if (@GDnum == 10) guardian "prtg_cas01",182,62,"Guardian Soldier",1287,"Guardian_Pt01::OnGuardianDied",0;
-	if (@GDnum == 11) guardian "prtg_cas01",182,116,"Guardian Soldier",1287,"Guardian_Pt01::OnGuardianDied",1;
-	if (@GDnum == 12) guardian "prtg_cas01",153,86,"Guardian Soldier",1287,"Guardian_Pt01::OnGuardianDied",2;
-	if (@GDnum == 13) guardian "prtg_cas01",59,28,"Guardian Archer",1285,"Guardian_Pt01::OnGuardianDied",3;
-	if (@GDnum == 14) guardian "prtg_cas01",50,36,"Guardian Archer",1285,"Guardian_Pt01::OnGuardianDied",4;
-	if (@GDnum == 15) guardian "prtg_cas01",184,183,"Guardian Knight",1286,"Guardian_Pt01::OnGuardianDied",5;
-	if (@GDnum == 16) guardian "prtg_cas01",196,189,"Guardian Knight",1286,"Guardian_Pt01::OnGuardianDied",6;
-	if (@GDnum == 17) guardian "prtg_cas01",107,179,"Guardian Knight",1286,"Guardian_Pt01::OnGuardianDied",7;
-	close;
-}
-
-
-// Castle 2 == ================================================================================
-prtg_cas02,94,61,4	script	Roy#prt2	55,{
-	if(callfunc("F_GldManager","Steward Roy","prtg_cas02",207,229,"Pt02") ==  0) close;
-
-	if (@GDnum == 10) guardian "prtg_cas02",161,161,"Guardian Knight",1286,"Guardian_Pt02::OnGuardianDied",0;
-	if (@GDnum == 11) guardian "prtg_cas02",153,161,"Guardian Knight",1286,"Guardian_Pt02::OnGuardianDied",1;
-	if (@GDnum == 12) guardian "prtg_cas02",178,44,"Guardian Knight",1286,"Guardian_Pt02::OnGuardianDied",2;
-	if (@GDnum == 13) guardian "prtg_cas02",71,75,"Guardian Soldier",1287,"Guardian_Pt02::OnGuardianDied",3;
-	if (@GDnum == 14) guardian "prtg_cas02",49,28,"Guardian Soldier",1287,"Guardian_Pt02::OnGuardianDied",4;
-	if (@GDnum == 15) guardian "prtg_cas02",64,186,"Guardian Archer",1285,"Guardian_Pt02::OnGuardianDied",5;
-	if (@GDnum == 16) guardian "prtg_cas02",76,196,"Guardian Archer",1285,"Guardian_Pt02::OnGuardianDied",6;
-	if (@GDnum == 17) guardian "prtg_cas02",75,175,"Guardian Archer",1285,"Guardian_Pt02::OnGuardianDied",7;
-	close;
-}
-
-
-// Castle 3 == ================================================================================
-prtg_cas03,51,100,4	script	Sttick#prt3	55,{
-	if(callfunc("F_GldManager","Stick","prtg_cas03",190,130,"Pt03") ==  0) close;
-
-	if (@GDnum == 10) guardian "prtg_cas03",191,190,"Guardian Knight",1286,"Guardian_Pt03::OnGuardianDied",0;
-	if (@GDnum == 11) guardian "prtg_cas03",137,190,"Guardian Knight",1286,"Guardian_Pt03::OnGuardianDied",1;
-	if (@GDnum == 12) guardian "prtg_cas03",45,99,"Guardian Knight",1286,"Guardian_Pt03::OnGuardianDied",2;
-	if (@GDnum == 13) guardian "prtg_cas03",50,87,"Guardian Soldier",1287,"Guardian_Pt03::OnGuardianDied",3;
-	if (@GDnum == 14) guardian "prtg_cas03",41,87,"Guardian Soldier",1287,"Guardian_Pt03::OnGuardianDied",4;
-	if (@GDnum == 15) guardian "prtg_cas03",191,42,"Guardian Archer",1285,"Guardian_Pt03::OnGuardianDied",5;
-	if (@GDnum == 16) guardian "prtg_cas03",179,43,"Guardian Archer",1285,"Guardian_Pt03::OnGuardianDied",6;
-	if (@GDnum == 17) guardian "prtg_cas03",191,72,"Guardian Archer",1285,"Guardian_Pt03::OnGuardianDied",7;
-	close;
-}
-
-
-// Castle 4 == ================================================================================
-prtg_cas04,259,265,4	script	Van Dreth#prt4	55,{
-	if(callfunc("F_GldManager","Steward Van Dreth","prtg_cas04",275,160,"Pt04") ==  0) close;
-
-	if (@GDnum == 10) guardian "prtg_cas04",276,14,"Guardian Knight",1286,"Guardian_Pt04::OnGuardianDied",0;
-	if (@GDnum == 11) guardian "prtg_cas04",274,35,"Guardian Knight",1286,"Guardian_Pt04::OnGuardianDied",1;
-	if (@GDnum == 12) guardian "prtg_cas04",246,246,"Guardian Knight",1286,"Guardian_Pt04::OnGuardianDied",2;
-	if (@GDnum == 13) guardian "prtg_cas04",38,240,"Guardian Soldier",1287,"Guardian_Pt04::OnGuardianDied",3;
-	if (@GDnum == 14) guardian "prtg_cas04",29,240,"Guardian Soldier",1287,"Guardian_Pt04::OnGuardianDied",4;
-	if (@GDnum == 15) guardian "prtg_cas04",33,258,"Guardian Soldier",1287,"Guardian_Pt04::OnGuardianDied",5;
-	if (@GDnum == 16) guardian "prtg_cas04",78,48,"Guardian Archer",1285,"Guardian_Pt04::OnGuardianDied",6;
-	if (@GDnum == 17) guardian "prtg_cas04",36,61,"Guardian Archer",1285,"Guardian_Pt04::OnGuardianDied",7;
-	close;
-}
-
-
-// Castle 5 == ================================================================================
-prtg_cas05,36,37,4	script	Raynor#prt5	55,{
-	if(callfunc("F_GldManager","Steward Raynor","prtg_cas05",281,176,"Pt05") ==  0) close;
-
-	if (@GDnum == 10) guardian "prtg_cas05",266,262,"Guardian Knight",1286,"Guardian_Pt05::OnGuardianDied",0;
-	if (@GDnum == 11) guardian "prtg_cas05",287,280,"Guardian Knight",1286,"Guardian_Pt05::OnGuardianDied",1;
-	if (@GDnum == 12) guardian "prtg_cas05",245,250,"Guardian Knight",1286,"Guardian_Pt05::OnGuardianDied",2;
-	if (@GDnum == 13) guardian "prtg_cas05",236,63,"Guardian Soldier",1287,"Guardian_Pt05::OnGuardianDied",3;
-	if (@GDnum == 14) guardian "prtg_cas05",251,63,"Guardian Soldier",1287,"Guardian_Pt05::OnGuardianDied",4;
-	if (@GDnum == 15) guardian "prtg_cas05",278,253,"Guardian Soldier",1287,"Guardian_Pt05::OnGuardianDied",5;
-	if (@GDnum == 16) guardian "prtg_cas05",32,253,"Guardian Archer",1285,"Guardian_Pt05::OnGuardianDied",6;
-	if (@GDnum == 17) guardian "prtg_cas05",44,248,"Guardian Archer",1285,"Guardian_Pt05::OnGuardianDied",7;
-	close;
-}

+ 0 - 166
npc/guild/prtg/prtg_treas.txt

@@ -1,166 +0,0 @@
-//===== eAthena Script =======================================
-//= War of Emperium Treasure Rooms for Prontera Guild Castles
-//===== By: ==================================================
-//= jAthena - kalen (1.0)
-//= 1.1 by Akaru, ho|yAnge|X, and Valaris
-//===== Current Version: =====================================
-//= 1.3
-//===== Compatible With: =====================================
-//= eAthena 0.1+; RO Episode 4+
-//===== Description: =========================================
-//= 
-//===== Additional Comments: =================================
-//= v1.2 Optimized with functions.[kobra_k88]
-//= 1.3 Removed announces when you open chests. [L0ne_W0lf]
-//============================================================
-
-
-//<=============================== Castle 1 =================================>\\
-
-// Treasure Spawn ----------------------------------------------------------
-prtg_cas01,1,1,0	script	Treasure_Pt01	-1,{
-OnRecvCastlePt01:
-	end;
-OnInit:
-	if($boxNumPt01 == 0) end;
-	set $@bxPt01, $boxNumPt01;
-	callfunc "F_GldTreas","prtg_cas01","Pt01",$boxNumPt01,$@bxPt01,$@boxIdPt01,1354,6,204,15,213,1;
-	end;
-
-OnDied:
-	set $boxNumPt01, $boxNumPt01 -1;
-	end;
-}
-
-// Treasure Room Switch ----------------------------------------------------
-prtg_cas01,15,209,0	script	Switch#TresPt01	111,{
-	callfunc "F_GldTreasSw", "prtg_cas01",109,179;
-	end;
-}
-
-// Treasure Room Protection ------------------------------------------------
-prtg_cas01,11,208,0	script	ban_warp#1	-1,6,6,{
-OnTouch:
-	callfunc "F_TreasProtect", "prtg_cas01", "prontera",109,179;
-	end;
-}
-
-//<================================= Castle 2 ===============================>\\
-
-// Treasure Spawn ----------------------------------------------------------
-prtg_cas02,1,1,0	script	Treasure_Pt02	-1,{
-OnRecvCastlePt02:
-	end;
-OnInit:
-	if($boxNumPt02 == 0) end;
-	set $@bxPt02, $boxNumPt02;
-	callfunc "F_GldTreas","prtg_cas02","Pt02",$boxNumPt02,$@bxPt02,$@boxIdPt02,1356,198,224,207,233,1;
-	end;
-
-OnDied:
-	set $boxNumPt02, $boxNumPt02 -1;
-	end;
-}
-
-// Treasure Room Switch ----------------------------------------------------
-prtg_cas02,207,228,0	script	Switch#TresPt02	111,{
-	callfunc "F_GldTreasSw", "prtg_cas02",94,62;
-	end;
-}
-
-// Treasure Room Protection ------------------------------------------------
-prtg_cas02,202,228,0	script	ban_warp#2	-1,6,6,{
-OnTouch:
-	callfunc "F_TreasProtect", "prtg_cas02", "prontera",109,179;
-	end;
-}
-
-//<================================ Castle 3 ================================>\\
-
-// Treasure Spawn ----------------------------------------------------------
-prtg_cas03,1,1,0	script	Treasure_Pt03	-1,{
-OnRecvCastlePt03:
-	end;
-OnInit:
-	if($boxNumPt03 == 0) end;
-	set $@bxPt03, $boxNumPt03;
-	callfunc "F_GldTreas","prtg_cas03","Pt03",$boxNumPt03,$@bxPt03,$@boxIdPt03,1358,184,128,193,135,1;
-	end;
-
-OnDied:
-	set $boxNumPt03, $boxNumPt03 -1;
-	end;
-}
-
-// Treasure Room Switch ----------------------------------------------------
-prtg_cas03,193,130,0	script	Switch#TresPt03	111,{
-	callfunc "F_GldTreasSw", "prtg_cas03",45,99;
-	end;
-}
-
-// Treasure Room Protection ------------------------------------------------
-prtg_cas03,189,132,0	script	ban_warp#3	-1,6,6,{
-OnTouch:
-	callfunc "F_TreasProtect", "prtg_cas03", "prontera",109,179;
-	end;
-}
-
-//<================================ Castle 4 ================================>\\
-
-// Treasure Spawn ----------------------------------------------------------
-prtg_cas04,1,1,0	script	Treasure_Pt04	-1,{
-OnRecvCastlePt04:
-	end;
-OnInit:
-	if($boxNumPt04 == 0) end;
-	set $@bxPt04, $boxNumPt04;
-	callfunc "F_GldTreas","prtg_cas04","Pt04",$boxNumPt04,$@bxPt04,$@boxIdPt04,1360,266,158,275,167,1;
-	end;
-
-OnDied:
-	set $boxNumPt04, $boxNumPt04 -1;
-	end;
-}
-
-// Treasure Room Switch ----------------------------------------------------
-prtg_cas04,275,160,0	script	Switch#TresPt04	111,{
-	callfunc "F_GldTreasSw", "prtg_cas04",259,265;
-	end;
-}
-
-// Treasure Room Protection ------------------------------------------------
-prtg_cas04,271,162,0	script	ban_warp#4	-1,6,6,{
-OnTouch:
-	callfunc "F_TreasProtect", "prtg_cas04", "prontera",109,179;
-	end;
-}
-
-//<================================ Castle 5 ================================>\\
-
-// Treasure Spawn ----------------------------------------------------------
-prtg_cas05,1,1,0	script	Treasure_Pt05	-1,{
-OnRecvCastlePt05:
-	end;
-OnInit:
-	if($boxNumPt05 == 0) end;
-	set $@bxPt05, $boxNumPt05;
-	callfunc "F_GldTreas","prtg_cas05","Pt05",$boxNumPt05,$@bxPt05,$@boxIdPt05,1362,272,174,279,181,1;
-	end;
-
-OnDied:
-	set $boxNumPt05, $boxNumPt05 -1;
-	end;
-}
-
-// Treasure Room Switch ----------------------------------------------------
-prtg_cas05,281,176,0	script	Switch#TresPt05	111,{
-	callfunc "F_GldTreasSw", "prtg_cas05",34,30;
-	end;
-}
-
-// Treasure Room Protection ------------------------------------------------
-prtg_cas05,276,178,0	script	ban_warp#5	-1,6,6,{
-OnTouch:
-	callfunc "F_TreasProtect", "prtg_cas05", "prontera",109,179;
-	end;
-}

+ 167 - 0
npc/guild/prtg_cas01.txt

@@ -0,0 +1,167 @@
+//===== eAthena Script =======================================
+//= War of Emperium (Prontera)
+//===== By: ==================================================
+//= L0ne_W0lf
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= NPCs that relate to Prontera Guild Castle 1
+//===== Additional Comments: =================================
+//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
+//============================================================
+
+// Guild Flag (Town)
+//============================================================
+prontera,155,190,4	script	Kriemhild#p1-1::Kriemhild	722,{
+	end;
+
+OnRecvCastlePt01:
+	FlagEmblem GetCastleData("prtg_cas01",1);
+	end;
+}
+
+// Guild Flag (Outside Castle)
+//============================================================
+prt_gld,131,60,6	script	Kriemhild#p1-2::Kriemhild2	722,{
+	set .@GID, GetCastleData("prtg_cas01",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		if (getcharid(2) == .@GID) {
+			mes "Brave ones...";
+			mes "Do you wish to return to your honorable place?";
+			next;
+			if (select("Return to the guild castle.:Quit.") == 1) {
+				if (getcharid(2) == GetCastleData("prtg_cas01",1)) {
+					warp "prtg_cas01",97,174;
+					end;
+				}
+			}
+			close;
+		}
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastlePt01:
+	FlagEmblem GetCastleData("prtg_cas01",1);
+	end;
+}
+
+prt_gld,138,68,6	duplicate(Kriemhild2)	Kriemhild#p1-3	722
+prt_gld,138,60,6	duplicate(Kriemhild2)	Kriemhild#p1-4	722
+prt_gld,135,60,6	duplicate(Kriemhild2)	Kriemhild#p1-5	722
+
+// Guild Flag (Inside Castle)
+//============================================================
+prtg_cas01,58,56,4	script	Kriemhild#p1-4::Kriemhild3	722,{
+	set .@GID, GetCastleData("prtg_cas01",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastlePt01:
+	FlagEmblem GetCastleData("prtg_cas01",1);
+	end;
+}
+
+prtg_cas01,64,56,4	duplicate(Kriemhild3)	Kriemhild#p1-7	722
+prtg_cas01,76,32,4	duplicate(Kriemhild3)	Kriemhild#p1-8	722
+prtg_cas01,84,32,4	duplicate(Kriemhild3)	Kriemhild#p1-9	722
+prtg_cas01,94,39,4	duplicate(Kriemhild3)	Kriemhild#p1-10	722
+prtg_cas01,94,24,4	duplicate(Kriemhild3)	Kriemhild#p1-11	722
+prtg_cas01,73,14,4	duplicate(Kriemhild3)	Kriemhild#p1-12	722
+prtg_cas01,73,6,4	duplicate(Kriemhild3)	Kriemhild#p1-13	722
+prtg_cas01,55,46,4	duplicate(Kriemhild3)	Kriemhild#p1-14	722
+prtg_cas01,45,46,4	duplicate(Kriemhild3)	Kriemhild#p1-15	722
+
+// AGIT Manager
+//============================================================
+prtg_cas01,197,197,0	duplicate(Gld_Agit_Manager)	Agit#prtg_cas01	-1
+
+// Steward
+//============================================================
+prtg_cas01,112,181,0	duplicate(Gld_Mngr_Template)	Ahvray#prtg_cas01	55
+
+// Guardians
+//============================================================
+prtg_cas01,112,181,0	duplicate(Gld_Guard_Template)	Guardian#prtg_cas01	-1
+
+// Kafra Staff
+//============================================================
+prtg_cas01,96,173,0	duplicate(Gld_Kafra_Template)	Kafra Staff#prtg_cas01	117
+
+// Master's Room Exit
+//============================================================
+prtg_cas01,15,209,0	script	#switch_Pt01	111,{
+	mes " ";
+	mes "There's a small lever. Will you pull it? ";
+	next;
+	switch(select("Pull.:Do not.")) {
+	case 1:
+		warp "prtg_cas01",109,179;
+		break;
+	case 2:
+		break;
+	}
+	end;
+}
+
+// Guild Treasure Protection
+//============================================================
+prtg_cas01,11,208,0	duplicate(Gld_Trea_Protect)	ban_warp#prtg_cas01	-1,6,6
+
+// Guild Treasure Spawns
+//============================================================
+prtg_cas01,11,208,0	duplicate(Gld_Trea_Spawn)	Treasure#prtg_cas01	-1
+
+// Guild Dungeon Switch
+//============================================================
+prtg_cas01,94,200,0	duplicate(Gld_Dun_Template)	#prtg_cas01	111

+ 169 - 0
npc/guild/prtg_cas02.txt

@@ -0,0 +1,169 @@
+//===== eAthena Script =======================================
+//= War of Emperium (Prontera)
+//===== By: ==================================================
+//= L0ne_W0lf
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= NPCs that relate to Prontera Guild Castle 1
+//===== Additional Comments: =================================
+//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
+//============================================================
+
+// Guild Flag (Town)
+//============================================================
+prontera,146,194,3	script	Swanhild#p2-1::Swanhild	722,{
+	end;
+
+OnRecvCastlePt02:
+	FlagEmblem GetCastleData("prtg_cas02",1);
+	end;
+}
+
+// Guild Flag (Outside Castle)
+//============================================================
+prt_gld,244,126,8	script	Swanhild#p2-2::Swanhild2	722,{
+	set .@GID, GetCastleData("prtg_cas02",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		if (getcharid(2) == .@GID) {
+			mes "Brave ones...";
+			mes "Do you wish to return to your honorable place?";
+			next;
+			if (select("Return to the guild castle.:Quit.") == 1) {
+				if (getcharid(2) == GetCastleData("prtg_cas02",1)) {
+					warp "prtg_cas02",71,36;
+					end;
+				}
+			}
+			close;
+		}
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastlePt02:
+	FlagEmblem GetCastleData("prtg_cas02",1);
+	end;
+}
+
+prt_gld,244,128,8	duplicate(Swanhild2)	Swanhild#p2-3	722
+prt_gld,236,126,8	duplicate(Swanhild2)	Swanhild#p2-4	722
+prt_gld,236,128,8	duplicate(Swanhild2)	Swanhild#p2-5	722
+
+// Guild Flag (Inside Castle)
+//============================================================
+prtg_cas02,40,227,4	script	Swanhild#p2-6::Swanhild3	722,{
+	set .@GID, GetCastleData("prtg_cas02",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastlePt02:
+	FlagEmblem GetCastleData("prtg_cas02",1);
+	end;
+}
+
+prtg_cas02,46,227,4	duplicate(Swanhild3)	Swanhild#p2-7	722
+prtg_cas02,11,219,4	duplicate(Swanhild3)	Swanhild#p2-8	722
+prtg_cas02,11,214,4	duplicate(Swanhild3)	Swanhild#p2-9	722
+prtg_cas02,20,219,4	duplicate(Swanhild3)	Swanhild#p2-10	722
+prtg_cas02,20,214,4	duplicate(Swanhild3)	Swanhild#p2-11	722
+prtg_cas02,79,227,8	duplicate(Swanhild3)	Swanhild#p2-12	722
+prtg_cas02,70,227,8	duplicate(Swanhild3)	Swanhild#p2-13	722
+prtg_cas02,38,189,8	duplicate(Swanhild3)	Swanhild#p2-14	722
+prtg_cas02,34,189,8	duplicate(Swanhild3)	Swanhild#p2-15	722
+prtg_cas02,153,161,4	duplicate(Swanhild3)	Swanhild#p2-16	722
+prtg_cas02,162,161,4	duplicate(Swanhild3)	Swanhild#p2-17	722
+
+// AGIT Manager
+//============================================================
+prtg_cas02,158,174,0	duplicate(Gld_Agit_Manager)	Agit#prtg_cas02	-1
+
+// Steward
+//============================================================
+prtg_cas02,94,61,4	duplicate(Gld_Mngr_Template)	Roy#prtg_cas02	55
+
+// Guardians
+//============================================================
+prtg_cas02,94,61,4	duplicate(Gld_Guard_Template)	Guardian#prtg_cas02	-1
+
+// Kafra Staff
+//============================================================
+prtg_cas02,71,36,4	duplicate(Gld_Kafra_Template)	Kafra Staff#prtg_cas02	117
+
+// Master's Room Exit
+//============================================================
+prtg_cas02,207,228,0	script	#switch_Pt02	111,{
+	mes " ";
+	mes "There's a small lever. Will you pull it? ";
+	next;
+	switch(select("Pull.:Do not.")) {
+	case 1:
+		warp "prtg_cas02",94,62;
+		break;
+	case 2:
+		break;
+	}
+	end;
+}
+
+// Guild Treasure Protection
+//============================================================
+prtg_cas02,202,228,0	duplicate(Gld_Trea_Protect)	ban_warp#prtg_cas02	-1,6,6
+
+// Guild Treasure Spawns
+//============================================================
+prtg_cas02,202,228,0	duplicate(Gld_Trea_Spawn)	Treasure#prtg_cas02	-1
+
+// Guild Dungeon Switch
+//============================================================
+prtg_cas02,84,72,0	duplicate(Gld_Dun_Template)	#prtg_cas02	111

+ 168 - 0
npc/guild/prtg_cas03.txt

@@ -0,0 +1,168 @@
+//===== eAthena Script =======================================
+//= War of Emperium (Prontera)
+//===== By: ==================================================
+//= L0ne_W0lf
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= NPCs that relate to Prontera Guild Castle 1
+//===== Additional Comments: =================================
+//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
+//============================================================
+
+// Guild Flag (Town)
+//============================================================
+prontera,143,203,2	script	Fadhgridh#p3-1::Fadhgridh	722,{
+	end;
+
+
+OnRecvCastlePt03:
+	FlagEmblem GetCastleData("prtg_cas03",1);
+	end;
+}
+
+// Guild Flag (Outside Castle)
+//============================================================
+prt_gld,147,140,4	script	Fadhgridh#p3-2::Fadhgridh2	722,{
+	set .@GID, GetCastleData("prtg_cas03",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		if (getcharid(2) == .@GID) {
+			mes "Brave ones...";
+			mes "Do you wish to return to your honorable place?";
+			next;
+			if (select("Return to the guild castle.:Quit.") == 1) {
+				if (getcharid(2) == GetCastleData("prtg_cas03",1)) {
+					warp "prtg_cas03",45,99;
+					end;
+				}
+			}
+			close;
+		}
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastlePt03:
+	FlagEmblem GetCastleData("prtg_cas03",1);
+	end;
+}
+
+prt_gld,147,136,4	duplicate(Fadhgridh2)	Fadhgridh#p3-3	722
+prt_gld,158,140,4	duplicate(Fadhgridh2)	Fadhgridh#p3-4	722
+prt_gld,158,136,4	duplicate(Fadhgridh2)	Fadhgridh#p3-5	722
+
+// Guild Flag (Inside Castle)
+//============================================================
+prtg_cas03,168,28,4	script	Fadhgridh#p3-6::Fadhgridh3	722,{
+	set .@GID, GetCastleData("prtg_cas03",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastlePt03:
+	FlagEmblem GetCastleData("prtg_cas03",1);
+	end;
+}
+
+prtg_cas03,182,28,4	duplicate(Fadhgridh3)	Fadhgridh#p3-7	722
+prtg_cas03,43,50,4	duplicate(Fadhgridh3)	Fadhgridh#p3-8	722
+prtg_cas03,48,50,4	duplicate(Fadhgridh3)	Fadhgridh#p3-9	722
+prtg_cas03,43,58,4	duplicate(Fadhgridh3)	Fadhgridh#p3-10	722
+prtg_cas03,48,58,4	duplicate(Fadhgridh3)	Fadhgridh#p3-11	722
+prtg_cas03,158,210,4	duplicate(Fadhgridh3)	Fadhgridh#p3-12	722
+prtg_cas03,169,210,4	duplicate(Fadhgridh3)	Fadhgridh#p3-13	722
+prtg_cas03,162,201,4	duplicate(Fadhgridh3)	Fadhgridh#p3-14	722
+prtg_cas03,165,201,4	duplicate(Fadhgridh3)	Fadhgridh#p3-15	722
+
+// AGIT Manager
+//============================================================
+prtg_cas03,17,221,0	duplicate(Gld_Agit_Manager)	Agit#prtg_cas03	-1
+
+// Steward
+//============================================================
+prtg_cas03,51,100,4	duplicate(Gld_Mngr_Template)	Sttick#prtg_cas03	55
+
+// Guardians
+//============================================================
+prtg_cas03,51,100,4	duplicate(Gld_Guard_Template)	Guardian#prtg_cas03	-1
+
+// Kafra Staff
+//============================================================
+prtg_cas03,181,215,4	duplicate(Gld_Kafra_Template)	Kafra Staff#prtg_cas03	117
+
+// Master's Room Exit
+//============================================================
+prtg_cas03,193,130,0	script	#switch_Pt03	111,{
+	mes " ";
+	mes "There's a small lever. Will you pull it? ";
+	next;
+	switch(select("Pull.:Do not.")) {
+	case 1:
+		warp "prtg_cas03",45,99;
+		break;
+	case 2:
+		break;
+	}
+	end;
+}
+
+// Guild Treasure Protection
+//============================================================
+prtg_cas03,189,132,0	duplicate(Gld_Trea_Protect)	ban_warp#prtg_cas03	-1,6,6
+
+// Guild Treasure Spawns
+//============================================================
+prtg_cas03,189,132,0	duplicate(Gld_Trea_Spawn)	Treasure#prtg_cas03	-1
+
+// Guild Dungeon Switch
+//============================================================
+prtg_cas03,5,70,0	duplicate(Gld_Dun_Template)	#prtg_cas03	111

+ 167 - 0
npc/guild/prtg_cas04.txt

@@ -0,0 +1,167 @@
+//===== eAthena Script =======================================
+//= War of Emperium (Prontera)
+//===== By: ==================================================
+//= L0ne_W0lf
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= NPCs that relate to Prontera Guild Castle 4
+//===== Additional Comments: =================================
+//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
+//============================================================
+
+// Guild Flag (Town)
+//============================================================
+prontera,167,203,6	script	Skoegul#p4-1::Skoegul	722,{
+	end;
+
+OnRecvCastlePt04:
+	FlagEmblem GetCastleData("prtg_cas04",1);
+	end;
+}
+
+// Guild Flag (Outside Castle)
+//============================================================
+prt_gld,120,243,6	script	Skoegul#p4-2::Skoegul2	722,{
+	set .@GID, GetCastleData("prtg_cas04",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		if (getcharid(2) == .@GID) {
+			mes "Brave ones...";
+			mes "Do you wish to return to your honorable place?";
+			next;
+			if (select("Return to the guild castle.:Quit.") == 1) {
+				if (getcharid(2) == GetCastleData("prtg_cas04",1)) {
+					warp "prtg_cas04",259,265;
+					end;
+				}
+			}
+			close;
+		}
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastlePt04:
+	FlagEmblem GetCastleData("prtg_cas04",1);
+	end;
+}
+
+prt_gld,120,236,6	duplicate(Skoegul2)	Skoegul#p4-3	722
+prt_gld,122,243,6	duplicate(Skoegul2)	Skoegul#p4-4	722
+prt_gld,122,236,6	duplicate(Skoegul2)	Skoegul#p4-5	722
+
+// Guild Flag (Inside Castle)
+//============================================================
+prtg_cas04,82,29,4	script	Skoegul#p4-6::Skoegul3	722,{
+	set .@GID, GetCastleData("prtg_cas04",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastlePt04:
+	FlagEmblem GetCastleData("prtg_cas04",1);
+	end;
+}
+
+prtg_cas04,75,29,4	duplicate(Skoegul3)	Skoegul#p4-7	722
+prtg_cas04,75,27,4	duplicate(Skoegul3)	Skoegul#p4-8	722
+prtg_cas04,82,27,4	duplicate(Skoegul3)	Skoegul#p4-9	722
+prtg_cas04,59,29,4	duplicate(Skoegul3)	Skoegul#p4-10	722
+prtg_cas04,67,29,4	duplicate(Skoegul3)	Skoegul#p4-11	722
+prtg_cas04,258,25,4	duplicate(Skoegul3)	Skoegul#p4-12	722
+prtg_cas04,258,20,4	duplicate(Skoegul3)	Skoegul#p4-13	722
+prtg_cas04,263,20,4	duplicate(Skoegul3)	Skoegul#p4-14	722
+prtg_cas04,263,27,4	duplicate(Skoegul3)	Skoegul#p4-15	722
+
+// AGIT Manager
+//============================================================
+prtg_cas04,292,14,0	duplicate(Gld_Agit_Manager)	Agit#prtg_cas04	-1
+
+// Steward
+//============================================================
+prtg_cas04,259,265,4	duplicate(Gld_Mngr_Template)	Van Dreth#prtg_cas04	55
+
+// Guardians
+//============================================================
+prtg_cas04,259,265,4	duplicate(Gld_Guard_Template)	Guardian#prtg_cas04	-1
+
+// Kafra Staff
+//============================================================
+prtg_cas04,258,247,4	duplicate(Gld_Kafra_Template)	Kafra Staff#prtg_cas04	117
+
+// Master's Room Exit
+//============================================================
+prtg_cas04,275,160,0	script	#switch_Pt04	111,{
+	mes " ";
+	mes "There's a small lever. Will you pull it? ";
+	next;
+	switch(select("Pull.:Do not.")) {
+	case 1:
+		warp "prtg_cas04",259,265;
+		break;
+	case 2:
+		break;
+	}
+	end;
+}
+
+// Guild Treasure Protection
+//============================================================
+prtg_cas04,271,162,0	duplicate(Gld_Trea_Protect)	ban_warp#prtg_cas04	-1,6,6
+
+// Guild Treasure Spawns
+//============================================================
+prtg_cas04,271,162,0	duplicate(Gld_Trea_Spawn)	Treasure#prtg_cas04	-1
+
+// Guild Dungeon Switch
+//============================================================
+prtg_cas04,56,283,0	duplicate(Gld_Dun_Template)	#prtg_cas04	111

+ 165 - 0
npc/guild/prtg_cas05.txt

@@ -0,0 +1,165 @@
+//===== eAthena Script =======================================
+//= War of Emperium (Prontera)
+//===== By: ==================================================
+//= L0ne_W0lf
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= NPCs that relate to Prontera Guild Castle 1
+//===== Additional Comments: =================================
+//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
+//============================================================
+
+// Guild Flag (Town)
+//============================================================
+prontera,165,194,5	script	Gondul#p5-1::Gondul	722,{
+	end;
+
+OnRecvCastlePt05:
+	FlagEmblem GetCastleData("prtg_cas05",1);
+	end;
+}
+
+// Guild Flag (Outside Castle)
+//============================================================
+prt_gld,199,243,2	script	Gondul#p5-2::Gondul2	722,{
+	set .@GID, GetCastleData("prtg_cas05",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		if (getcharid(2) == .@GID) {
+			mes "Brave ones...";
+			mes "Do you wish to return to your honorable place?";
+			next;
+			if (select("Return to the guild castle.:Quit.") == 1) {
+				if (getcharid(2) == GetCastleData("prtg_cas05",1)) {
+					warp "prtg_cas05",34,30;
+					end;
+				}
+			}
+			close;
+		}
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastlePt05:
+	FlagEmblem GetCastleData("prtg_cas05",1);
+	end;
+}
+
+prt_gld,199,236,2	duplicate(Gondul2)	Gondul#p5-3	722
+prt_gld,197,243,2	duplicate(Gondul2)	Gondul#p5-4	722
+prt_gld,197,236,2	duplicate(Gondul2)	Gondul#p5-5	722
+
+// Guild Flag (Inside Castle)
+//============================================================
+prtg_cas05,19,247,4	script	Gondul#p5-6::Gondul3	722,{
+	set .@GID, GetCastleData("prtg_cas05",1);
+	if (.@GID == 0) {
+		mes " [ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Follow the ordinance of The Divine Rune Midgard Kingdom, ";
+		mes "We declare that";
+		mes "there is no formal master of this castle.";
+		mes " ";
+		mes "2. To the one who can ";
+		mes "overcome all trials";
+		mes "and destroy the Emperium,";
+		mes "the king will endow the one with";
+		mes "ownership of this castle.";
+	}
+	else {
+		mes "[ Edict of the Divine Rune Midgard Kingdom ]";
+		mes " ";
+		mes "1. Following the ordinance of the";
+		mes "Divine Rune Midgard Kingdom,";
+		mes "we approve that this place is in";
+		mes "the private possession of ^ff0000" + GetGuildName(.@GID) + "^000000 Guild.";
+		mes " ";
+		mes "2. The guild Master of ^ff0000"+ GetGuildName(.@GID) + "^000000 Guild is";
+		mes "^FF0000" + GetGuildMaster(.@GID) + "^000000";
+		mes "If there is anyone who objects to this,";
+		mes " prove your strength and honor with a steel blade in your hand.";
+	}
+	close;
+
+OnRecvCastlePt05:
+	FlagEmblem GetCastleData("prtg_cas05",1);
+	end;
+}
+
+prtg_cas05,19,243,4	duplicate(Gondul3)	Gondul#p5-7	722
+prtg_cas05,26,247,4	duplicate(Gondul3)	Gondul#p5-8	722
+prtg_cas05,26,243,4	duplicate(Gondul3)	Gondul#p5-9	722
+prtg_cas05,249,289,4	duplicate(Gondul3)	Gondul#p5-10	722
+prtg_cas05,256,289,4	duplicate(Gondul3)	Gondul#p5-11	722
+prtg_cas05,253,271,4	duplicate(Gondul3)	Gondul#p5-12	722
+prtg_cas05,273,257,4	duplicate(Gondul3)	Gondul#p5-13	722
+
+// AGIT Manager
+//============================================================
+prtg_cas05,266,266,0	duplicate(Gld_Agit_Manager)	Agit#prtg_cas05	-1
+
+// Steward
+//============================================================
+prtg_cas05,36,37,4	duplicate(Gld_Mngr_Template)	Raynor#prtg_cas05	55
+
+// Guardians
+//============================================================
+prtg_cas05,36,37,4	duplicate(Gld_Guard_Template)	Guardian#prtg_cas05	-1
+
+// Kafra Staff
+//============================================================
+prtg_cas05,52,41,4	duplicate(Gld_Kafra_Template)	Kafra Staff#prtg_cas05	117
+
+// Master's Room Exit
+//============================================================
+prtg_cas05,281,176,0	script	#switch_Pt05	111,{
+	mes " ";
+	mes "There's a small lever. Will you pull it? ";
+	next;
+	switch(select("Pull.:Do not.")) {
+	case 1:
+		warp "prtg_cas05",34,30;
+		break;
+	case 2:
+		break;
+	}
+	end;
+}
+
+// Guild Treasure Protection
+//============================================================
+prtg_cas05,276,178,0	duplicate(Gld_Trea_Protect)	ban_warp#prtg_cas05	-1,6,6
+
+// Guild Treasure Spawns
+//============================================================
+prtg_cas05,276,178,0	duplicate(Gld_Trea_Spawn)	Treasure#prtg_cas05	-1
+
+// Guild Dungeon Switch
+//============================================================
+prtg_cas05,212,94,0	duplicate(Gld_Dun_Template)	#prtg_cas05	111

+ 24 - 36
npc/scripts_guild.conf

@@ -3,46 +3,34 @@
 // --------------------------------------------------------------
 // --------------------------------------------------------------
 // ----------------------- War of Emperium ----------------------
-// General Functions
-npc: npc/guild/gldfunc_manager.txt
-npc: npc/guild/gldfunc_dunsw.txt
-npc: npc/guild/gldfunc_flag.txt
-npc: npc/guild/gldfunc_treasure.txt
-npc: npc/guild/gldfunc_kafra.txt
-npc: npc/guild/gldfunc_ev_agit.txt
-npc: npc/guild/ev_agit_event.txt
+// Guild NPC Template file.
+npc: npc/guild/agit_template.txt
+// Guild WoE time settings.
+npc: npc/guild/agit_controller.txt 
 // Al De Baran
-npc: npc/guild/aldeg/aldeg_ev_agit.txt
-npc: npc/guild/aldeg/aldeg_flags.txt
-npc: npc/guild/aldeg/aldeg_managers.txt
-npc: npc/guild/aldeg/aldeg_kafras.txt
-npc: npc/guild/aldeg/aldeg_treas.txt
-npc: npc/guild/aldeg/aldeg_dunsw.txt
-npc: npc/guild/aldeg/aldeg_guardians.txt
+npc: npc/guild/aldeg_cas01.txt
+npc: npc/guild/aldeg_cas02.txt
+npc: npc/guild/aldeg_cas03.txt
+npc: npc/guild/aldeg_cas04.txt
+npc: npc/guild/aldeg_cas05.txt
 // Geffen
-npc: npc/guild/gefg/gefg_ev_agit.txt
-npc: npc/guild/gefg/gefg_flags.txt
-npc: npc/guild/gefg/gefg_managers.txt
-npc: npc/guild/gefg/gefg_kafras.txt
-npc: npc/guild/gefg/gefg_treas.txt
-npc: npc/guild/gefg/gefg_dunsw.txt
-npc: npc/guild/gefg/gefg_guardians.txt
+npc: npc/guild/gefg_cas01.txt
+npc: npc/guild/gefg_cas02.txt
+npc: npc/guild/gefg_cas03.txt
+npc: npc/guild/gefg_cas04.txt
+npc: npc/guild/gefg_cas05.txt
 // Payon
-npc: npc/guild/payg/payg_ev_agit.txt
-npc: npc/guild/payg/payg_flags.txt
-npc: npc/guild/payg/payg_managers.txt
-npc: npc/guild/payg/payg_kafras.txt
-npc: npc/guild/payg/payg_dunsw.txt
-npc: npc/guild/payg/payg_treas.txt
-npc: npc/guild/payg/payg_guardians.txt
+npc: npc/guild/payg_cas01.txt
+npc: npc/guild/payg_cas02.txt
+npc: npc/guild/payg_cas03.txt
+npc: npc/guild/payg_cas04.txt
+npc: npc/guild/payg_cas05.txt
 // Prontera
-npc: npc/guild/prtg/prtg_ev_agit.txt
-npc: npc/guild/prtg/prtg_flags.txt
-npc: npc/guild/prtg/prtg_managers.txt
-npc: npc/guild/prtg/prtg_kafras.txt
-npc: npc/guild/prtg/prtg_dunsw.txt
-npc: npc/guild/prtg/prtg_treas.txt
-npc: npc/guild/prtg/prtg_guardians.txt
+npc: npc/guild/prtg_cas01.txt
+npc: npc/guild/prtg_cas02.txt
+npc: npc/guild/prtg_cas03.txt
+npc: npc/guild/prtg_cas04.txt
+npc: npc/guild/prtg_cas05.txt
 // --------------------------------------------------------------
 // --------------- War of Emperium Second Edition ---------------
 // WoE SE scripts in their purest form, unoptomized.