diff options
Diffstat (limited to 'npc/events')
-rw-r--r-- | npc/events/nguild/nguild_ev_agit.txt | 7 | ||||
-rw-r--r-- | npc/events/nguild/nguild_managers.txt | 5 | ||||
-rw-r--r-- | npc/events/nguild/nguild_treas.txt | 36 |
3 files changed, 44 insertions, 4 deletions
diff --git a/npc/events/nguild/nguild_ev_agit.txt b/npc/events/nguild/nguild_ev_agit.txt index 8afa4631b..4ab643931 100644 --- a/npc/events/nguild/nguild_ev_agit.txt +++ b/npc/events/nguild/nguild_ev_agit.txt @@ -3,7 +3,7 @@ //===== By: ================================================== //= kobra_k88 //===== Current Version: ===================================== -//= 1.4 +//= 1.5 //===== Compatible With: ===================================== //= eAthena 0.1+; RO Episode 4+ //===== Description: ========================================= @@ -12,6 +12,7 @@ // Based off existing guild scripts. Do not know if it is accurate.[kobra_k88] //= 1.3 Added code for abandoning captured castles on /breakguild [Lupus] //= 1.4 AGIT Functions added, treasure spawning added. [L0ne_W0lf] +//= 1.5 Emperium should now properly respawn. [L0ne_W0lf] //============================================================ @@ -106,6 +107,7 @@ OnAgitStart: end; OnAgitBreak: callfunc "F_AgitBreak","nguild_alde","N01"; + goto OnAgitEliminate; end; OnGuildBreak: callfunc "F_GuildBreak","nguild_alde","N01"; @@ -132,6 +134,7 @@ OnAgitStart: end; OnAgitBreak: callfunc "F_AgitBreak","nguild_gef","N02"; + goto OnAgitEliminate; end; OnGuildBreak: callfunc "F_GuildBreak","nguild_gef","N02"; @@ -158,6 +161,7 @@ OnAgitStart: end; OnAgitBreak: callfunc "F_AgitBreak","nguild_pay","N03"; + goto OnAgitEliminate; end; OnGuildBreak: callfunc "F_GuildBreak","nguild_pay","N03"; @@ -184,6 +188,7 @@ OnAgitStart: end; OnAgitBreak: callfunc "F_AgitBreak","nguild_prt","N04"; + goto OnAgitEliminate; end; OnGuildBreak: callfunc "F_GuildBreak","nguild_prt","N04"; diff --git a/npc/events/nguild/nguild_managers.txt b/npc/events/nguild/nguild_managers.txt index 8fe345e3d..f6b554c2b 100644 --- a/npc/events/nguild/nguild_managers.txt +++ b/npc/events/nguild/nguild_managers.txt @@ -3,7 +3,7 @@ //===== By: ================================================== //= kobra_k88 //===== Current Version: ===================================== -//= 1.1 +//= 1.2 //===== Compatible With: ===================================== //= eAthena 0.1+; RO Episode 4+ //===== Description: ========================================= @@ -19,10 +19,11 @@ //= 1.0 Based off existing guild scripts. Do not know if it is accurate.[kobra_k88] //= 1.1 Added modified guild manager function. [L0ne_W0lf] //= Removed guardian summoning. +//= 1.2 Corrected function name. (bugreport:1728) [L0ne_W0lf] //============================================================ //============================================== -function script F_GldManagerN { +function script F_GldManager { set @GID, GetCastleData(getarg(1),1); mes "[ "+getarg(0)+" ]"; diff --git a/npc/events/nguild/nguild_treas.txt b/npc/events/nguild/nguild_treas.txt index 6c78cccad..8a1955e92 100644 --- a/npc/events/nguild/nguild_treas.txt +++ b/npc/events/nguild/nguild_treas.txt @@ -3,7 +3,7 @@ //===== By: ================================================== //= kobra_k88 //===== Current Version: ===================================== -//= 1.2 +//= 1.3 //===== Compatible With: ===================================== //= eAthena 0.1+; RO Episode 4+ //===== Description: ========================================= @@ -11,9 +11,43 @@ //===== Additional Comments: ================================= //= Based off existing guild scripts. Do not know if it is accurate.[kobra_k88] //= 1.2 Official treasure spawn [Lupus] +//= 1.3 Added F_GldTreas function. (bugreport:1788) [L0ne_W0lf] //============================================================ +//================================================ +// Treasure Spawning Function +//================================================ +function script F_GldTreas { + if(getarg(10) != 1) { + setcastledata getarg(0),4,0; + setcastledata getarg(0),5,0; + + // Why on earth are we killing old treasure chest spawns? + //killmonster getarg(0),"Treasure_"+getarg(1)+"::OnDied"; + + // Don't spawn treasures if Castle is empty, or Eco is greater than 100 + if(GetCastleData(getarg(0),2) > 100 || GetCastleData(getarg(0),1) == 0) return; + + // Only spawn one treasure chest for notice castles. + if (compare(getarg(0),"nguild")) + set getarg(2),1; + else + set getarg(2),GetCastleData(getarg(0),2)/5+4; + + if (getarg(2) <= 0) return; + + //sets the counter variable = to the box number amount + set getarg(3), getarg(2); + } + for (set .@i,1; .@i <= getarg(3) ; set .@i,.@i+1) { + // set treasure box ID + set getarg(4), getarg(5) + (.@i+1) % 2; + areamonster getarg(0),getarg(6),getarg(7),getarg(8),getarg(9),"Treasure Chest",getarg(4),1,"Treasure_"+getarg(1)+"::OnDied"; + } + return; +} + //<=============================== Castle 1 =================================>\\ // Treasure Spawn ----------------------- |