diff options
Diffstat (limited to 'world/map/npc')
-rw-r--r-- | world/map/npc/018-3/evil-obelisk.txt | 12 | ||||
-rw-r--r-- | world/map/npc/functions/evil_obelisk.txt | 66 |
2 files changed, 49 insertions, 29 deletions
diff --git a/world/map/npc/018-3/evil-obelisk.txt b/world/map/npc/018-3/evil-obelisk.txt index c80e3b59..aec1345b 100644 --- a/world/map/npc/018-3/evil-obelisk.txt +++ b/world/map/npc/018-3/evil-obelisk.txt @@ -3,8 +3,16 @@ 018-3.gat,67,28,0|script|Evil Obelisk|185,{ callfunc "ClearVariables"; set @map$, "018-3.gat"; - set @x, 67; - set @y, 28; + set @x0, 56; + set @y0, 22; + set @x1, 77; + set @y1, 37; callfunc "EvilObelisk"; +//clearing vars + set @map$, ""; + set @x0, 0; + set @y0, 0; + set @x1, 0; + set @y1, 0; close; } diff --git a/world/map/npc/functions/evil_obelisk.txt b/world/map/npc/functions/evil_obelisk.txt index 30fe927d..f1447375 100644 --- a/world/map/npc/functions/evil_obelisk.txt +++ b/world/map/npc/functions/evil_obelisk.txt @@ -3,62 +3,67 @@ function|script|EvilObelisk|{ mes "(A mystical aura surrounds this stone. It seems to crave money.)"; next; + set @cost_jacko, 6500; + set @cost_gy1, 4000; + set @cost_gy2, 3000; + set @cost_skull, 2800; + set @cost_snake, 2500; + menu - "Pay it 200,000 gold", L_JACKO, - "Pay it 100,000 gold", L_GRAVEYARD1, - "Pay it 75,000 gold", L_GRAVEYARD2, - "Pay it 50,000 gold", L_SKULL, - "Pay it 25,000 gold", L_SNAKE, - "Don't pay it anything.", -; - close; - return; + "Don't pay it anything.", -, + "Pay it " + @cost_jacko + " gold.", L_JACKO, + "Pay it " + @cost_gy1 + " gold.", L_GRAVEYARD1, + "Pay it " + @cost_gy2 + " gold.", L_GRAVEYARD2, + "Pay it " + @cost_skull + " gold.", L_SKULL, + "Pay it " + @cost_snake + " gold.", L_SNAKE; + goto L_Close; L_JACKO: - if (Zeny < 200000) + if (Zeny < @cost_jacko) goto L_NotEnough; - set Zeny, Zeny - 200000; + set Zeny, Zeny - @cost_jacko; set @mob_id, 1022; - set @mob_count, rand(2) + 1; + set @mob_count, rand(1,2); goto L_Summon; L_GRAVEYARD1: - if (Zeny < 100000) + if (Zeny < @cost_gy1) goto L_NotEnough; set @temp, rand(2); if(@temp == 0) set @mob_id, 1036; // Zombie if(@temp == 1) set @mob_id, 1045; // Fallen - set @mob_count, rand(2) + 1; - set Zeny, Zeny - 100000; + set @mob_count, rand(1,2); + set Zeny, Zeny - @cost_gy1; goto L_Summon; L_GRAVEYARD2: - if (Zeny < 75000) + if (Zeny < @cost_gy2) goto L_NotEnough; set @temp, rand(2); if(@temp == 0) set @mob_id, 1044; // Lady Skelly if(@temp == 1) set @mob_id, 1043; // Normal Skelly - set @mob_count, rand(2) + 1; - set Zeny, Zeny - 75000; + set @mob_count, rand(1,2); + set Zeny, Zeny - @cost_gy2; goto L_Summon; L_SKULL: - if (Zeny < 50000) + if (Zeny < @cost_skull) goto L_NotEnough; set @temp, rand(2); if(@temp == 0) set @mob_id, 1024; // Poison if(@temp == 1) set @mob_id, 1023; // Fire - set @mob_count, rand(4) + 1; - set Zeny, Zeny - 50000; + set @mob_count, rand(1,4); + set Zeny, Zeny - @cost_skull; goto L_Summon; L_SNAKE: - if (Zeny < 25000) + if (Zeny < @cost_snake) goto L_NotEnough; set @temp, rand(4); if(@temp == 0) @@ -69,17 +74,24 @@ L_SNAKE: set @mob_id, 1010; // Normal if(@temp == 3) set @mob_id, 1021; // Cave - set @mob_count, rand(4) + 1; - set Zeny, Zeny - 25000; + set @mob_count, rand(1,4); + set Zeny, Zeny - @cost_snake; goto L_Summon; L_Summon: - monster @map$, @x, @y, "Evil", @mob_id, @mob_count; - close; - return; + areamonster @map$, @x0, @y0, @x1, @y1, "Evil", @mob_id, @mob_count; + goto L_Close; L_NotEnough: mes "You don't have that much money"; - close; + goto L_Close; + +L_Close: + set @cost_jacko, 0; + set @cost_gy1, 0; + set @cost_gy2, 0; + set @cost_skull, 0; + set @cost_snake, 0; return; + } |