diff options
-rw-r--r-- | db/re/map_zone_db.conf | 2 | ||||
-rw-r--r-- | npc/001-1/eventmaster.txt | 29 | ||||
-rw-r--r-- | npc/001-1/portal.txt | 15 | ||||
-rw-r--r-- | npc/functions/soul_menhir.txt | 14 |
4 files changed, 57 insertions, 3 deletions
diff --git a/db/re/map_zone_db.conf b/db/re/map_zone_db.conf index 7883b16d7..1d478eac4 100644 --- a/db/re/map_zone_db.conf +++ b/db/re/map_zone_db.conf @@ -80,7 +80,7 @@ zones: ( /* "command:min-group-lv-to-override" e.g. "heal: 70" */ disabled_commands: { - //monster: 100 + monster: 100 item: 100 } skill_damage_cap: { diff --git a/npc/001-1/eventmaster.txt b/npc/001-1/eventmaster.txt index 45583235c..1959c62e6 100644 --- a/npc/001-1/eventmaster.txt +++ b/npc/001-1/eventmaster.txt @@ -8,13 +8,26 @@ 001-1,250,20,0 script Mana Being#001-1 NPC_ALIGE_OUTSIDE_BARREL,{ function spawner { // (memo, ID, amount) // First argument is a memorand for Script Writers, usually name. It must be present, but can have whatever value you want. (Unused) - areamonster("001-1", 171, 0, 339, 158, strmobinfo(1, getarg(1)), getarg(1), getarg(2), "Mana Being#001-1::OnAerosMobDeath"); + + // [0] East [1] West [2] Full + switch($@AEROS_SPWN) { + case 1: + areamonster("001-1", 20, 20, 140, 140, strmobinfo(1, getarg(1)), getarg(1), getarg(2), "Mana Being#001-1::OnAerosMobDeath"); + break; + case 2: + areamonster("001-1", 20, 20, 340, 160, strmobinfo(1, getarg(1)), getarg(1), getarg(2), "Mana Being#001-1::OnAerosMobDeath"); + break; + default: + areamonster("001-1", 171, 0, 339, 158, strmobinfo(1, getarg(1)), getarg(1), getarg(2), "Mana Being#001-1::OnAerosMobDeath"); + break; + } } .@curmobc=mobcount("001-1", "OnAerosMobDeath"); if (!is_gm()) goto L_Unauthorized; @log_spawns=0; + @log_mode=$@AEROS_SPWN; @log_ratio=$coinsrate; mesn; @@ -31,6 +44,7 @@ L_Menu: rif(countitem(StrangeCoin) >= 10, "Drop a Toothbrush! (10x Coins)"),L_Drop, rif(countitem(StrangeCoin) >= 10, "Drop a Bronze Gift (10x Coins)"), L_Bgif, rif(countitem(StrangeCoin) >= 10, "Drop a Silver Gift (10x Coins)"), L_Sgif, + "Reconfigure spawn/warp points",L_Conf, "Adjust coins drop rate",L_Rate; L_Unauthorized: @@ -41,6 +55,7 @@ L_Unauthorized: L_Close: if (@log_spawns > 0) logmes "spawned "+str(@log_spawns)+" beigns at Aeros.", LOGMES_ATCOMMAND; if (@log_ratio != $coinsrate) logmes "set aeros ratio from "+str(@log_ratio)+" to "+str($coinsrate), LOGMES_ATCOMMAND; + if (@log_mode == $@AEROS_SPWN) logmes "configured aeros spawn area to "+str($@AEROS_SPWN), LOGMES_ATCOMMAND; close; L_Spawn: @@ -730,6 +745,18 @@ L_EventHandler: } close; +L_Conf: + mes ""; + mesn; + mesq l("Current Spawn Mode: "+$@AEROS_SPWN); + next; + select + l("[0] East Aeros"), + l("[1] West Aeros"), + l("[2] Full Aeros"); + $@AEROS_SPWN=@menu-1; + goto L_Menu; + OnAerosMobDeath: if ($coinsrate < 0) end; // A level 100 monster can have a 4% drop bonus against a level 0 monster. diff --git a/npc/001-1/portal.txt b/npc/001-1/portal.txt index d07ad58bc..cb5fbeb2d 100644 --- a/npc/001-1/portal.txt +++ b/npc/001-1/portal.txt @@ -68,3 +68,18 @@ L_TranslationFix: L_Close: close; } + +// This is a copy for west Aeros +001-1,23,107,0 script World Gate 2 NPC_HIDDEN,1,0,{ +OnTouch: + mesn; + mes l("This Portal can send your soul back to the world, along any items, money and/or experience gained."); + mes l("Would you like to leave this place?"); + menu + l("No."), L_Close, + l("Yes."), L_Leave; + +L_Leave: + warp getsavepoint(0), getsavepoint(1), getsavepoint(2); + goto L_Close; +} diff --git a/npc/functions/soul_menhir.txt b/npc/functions/soul_menhir.txt index 831451e89..f83242f8f 100644 --- a/npc/functions/soul_menhir.txt +++ b/npc/functions/soul_menhir.txt @@ -41,7 +41,19 @@ L_Save: L_Aeros: if (!$@GM_EVENT) goto L_DontPanic; - warp "001-1", 235, 26; + .@gt=$@AEROS_SPWN; + if (.@gt == 2) { + select + l("East Aeros"), + l("West Aeros"); + .@gt=@menu-1; + } + switch ($@AEROS_SPWN) { + case 0: + warp "001-1", 235, 26; break; + case 1: + warp "001-1", 23, 108; break; + } message strcharinfo(0), l("You are now at the Mana Plane of Existence, at the Floating Island of Aeros."); close; |