From 92a965db33335894490abadd4e51da042eb422fe Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 8 Apr 2022 10:44:21 -0300 Subject: Backport all changes from Legacy --- npc/011-1/auldsbel.txt | 10 ++--- npc/011-1/shops.txt | 1 + npc/027-6/general_krukan.txt | 9 +++- npc/027-7/general_razha.txt | 11 +++-- npc/027-8/general_terogan.txt | 13 ++++-- npc/035-2/shops.txt | 1 + npc/functions/evil_obelisk.txt | 95 ++++++++++++++++++++++-------------------- 7 files changed, 81 insertions(+), 59 deletions(-) (limited to 'npc') diff --git a/npc/011-1/auldsbel.txt b/npc/011-1/auldsbel.txt index 01abe364..89503b9f 100644 --- a/npc/011-1/auldsbel.txt +++ b/npc/011-1/auldsbel.txt @@ -914,20 +914,20 @@ L_Next7: L_c_quest_5: mesn l("Auldsbel the Wizard"); - mes "\"I do have another assignment for you, but this one will be tricky. I will need fifty grass snake tongues. I believe that this may be just enough life force to return the silkworm back to its original shape.\""; + mesq l("I do have another assignment for you, but this one will be tricky. I will need forty grass snake tongues. I believe that this may be just enough life force to return the silkworm back to its original shape."); next; menu "Here they are.", L_Next8, "That's quite a challenge.", L_Main_menu; L_Next8: - if (countitem ("GrassSnakeTongue") < 50) + if (countitem (GrassSnakeTongue) < 40) goto L_c_quest_missing; - delitem "GrassSnakeTongue", 50; + delitem GrassSnakeTongue, 40; Zeny = Zeny + 10000; mesn l("Auldsbel the Wizard"); - mes "\"Excellent! Here is 10,000 GP for you, and now let's see how this goes.\""; - mes "[You gain 100,000 experience points]"; + mesq l("Excellent! Here is 10,000 GP for you, and now let's see how this goes."); + mesc l("[You gain 100,000 experience points]"); getexp 100000, 0; @Q_component_quest = 6; callsub S_Update_Var; diff --git a/npc/011-1/shops.txt b/npc/011-1/shops.txt index 8fd551b4..754b3782 100644 --- a/npc/011-1/shops.txt +++ b/npc/011-1/shops.txt @@ -12,6 +12,7 @@ OnInit: sellitem GreenApple; sellitem RedApple; sellitem Orange; + sellitem Tomato; .distance = 5; end; } diff --git a/npc/027-6/general_krukan.txt b/npc/027-6/general_krukan.txt index 54d2b442..bdcf5858 100644 --- a/npc/027-6/general_krukan.txt +++ b/npc/027-6/general_krukan.txt @@ -196,8 +196,13 @@ OnReward: message strcharinfo(0), "You feel a temporary rush of power and zest for action. " + @bonus + " daily bonus gained." ; if (checkidle() > MAX_IDLE) goto L_End; - BOSS_POINTS = BOSS_POINTS + 25; - message strcharinfo(0), "You gain 25 Boss Points giving you a total of " + BOSS_POINTS + "."; + if (BaseLevel < 90) { + BOSS_POINTS += 25; + dispbottom l("You gain %s Boss Points giving you a total of %s.", "20+5", fnum(BOSS_POINTS)); + } else { + BOSS_POINTS += 20; + dispbottom l("You gain %s Boss Points giving you a total of %s.", "20", fnum(BOSS_POINTS)); + } goto L_End; L_End: diff --git a/npc/027-7/general_razha.txt b/npc/027-7/general_razha.txt index 7522e1f3..02f5ec6f 100644 --- a/npc/027-7/general_razha.txt +++ b/npc/027-7/general_razha.txt @@ -5,7 +5,7 @@ @RAZHA_SOUL_REQ = 3; @RAZHA_DISEASED_HEARTS_REQ = 5; - @RAZHA_UNDEAD_EYE_REQ = 3; + @RAZHA_UNDEAD_EYE_REQ = 1; @RAZHA_UNDEAD_EAR_REQ = 2; @minLevel = 70; @@ -200,8 +200,13 @@ OnReward: message strcharinfo(0), "You feel a temporary rush of power and zest for action. " + @bonus + " daily bonus gained." ; if (checkidle() > MAX_IDLE) goto L_End; - BOSS_POINTS = BOSS_POINTS + 50; - message strcharinfo(0), "You gain 50 Boss Points giving you a total of " + BOSS_POINTS + "."; + if (BaseLevel < 100) { + BOSS_POINTS += 50; + dispbottom l("You gain %s Boss Points giving you a total of %s.", "40+10", fnum(BOSS_POINTS)); + } else { + BOSS_POINTS += 40; + dispbottom l("You gain %s Boss Points giving you a total of %s.", "40", fnum(BOSS_POINTS)); + } goto L_End; L_End: diff --git a/npc/027-8/general_terogan.txt b/npc/027-8/general_terogan.txt index 9cbca92e..9486eead 100644 --- a/npc/027-8/general_terogan.txt +++ b/npc/027-8/general_terogan.txt @@ -5,8 +5,8 @@ @TEROGAN_SOUL_REQ = 5; @TEROGAN_ROTTEN_RAGS_REQ = 5; - @TEROGAN_UNDEAD_EYE_REQ = 3; - @TEROGAN_UNDEAD_EAR_REQ = 2; + @TEROGAN_UNDEAD_EYE_REQ = 2; + @TEROGAN_UNDEAD_EAR_REQ = 3; @minLevel = 80; mes "[Tome]"; @@ -265,8 +265,13 @@ OnReward: message strcharinfo(0), "You feel a temporary rush of power and zest for action. " + @bonus + " daily bonus gained." ; if (checkidle() > MAX_IDLE) goto L_End; - BOSS_POINTS = BOSS_POINTS + 75; - message strcharinfo(0), "You gain 75 Boss Points giving you a total of " + BOSS_POINTS + "."; + if (BaseLevel < 120) { + BOSS_POINTS += 75; + dispbottom l("You gain %s Boss Points giving you a total of %s.", "60+15", fnum(BOSS_POINTS)); + } else { + BOSS_POINTS += 60; + dispbottom l("You gain %s Boss Points giving you a total of %s.", "60", fnum(BOSS_POINTS)); + } goto L_End; L_End: diff --git a/npc/035-2/shops.txt b/npc/035-2/shops.txt index b864996a..818f57f9 100644 --- a/npc/035-2/shops.txt +++ b/npc/035-2/shops.txt @@ -8,6 +8,7 @@ OnInit: tradertype(NST_ZENY); sellitem Beer; sellitem Orange; + sellitem Tomato; sellitem CasinoCoins; .distance = 5; end; diff --git a/npc/functions/evil_obelisk.txt b/npc/functions/evil_obelisk.txt index b85884c7..6ac78596 100644 --- a/npc/functions/evil_obelisk.txt +++ b/npc/functions/evil_obelisk.txt @@ -1,96 +1,101 @@ function script EvilObelisk { - mes "[Evil Obelisk]"; - mes "(A mystical aura surrounds this stone. It seems to crave money.)"; + mesn l("Evil Obelisk"); + mes l("(A mystical aura surrounds this stone. It seems to crave money.)"); next; - @Cost_jacko = 6500; - @Cost_gy1 = 4000; - @Cost_gy2 = 3000; - @Cost_skull = 2800; - @Cost_snake = 2500; + .@Cost_jacko = 6500; + .@Cost_gy1 = 4000; + .@Cost_gy2 = 3000; + .@Cost_skull = 2800; + .@Cost_snake = 2500; + .@Cost_keshlam = 10000; menu - "Don't pay it anything.", L_close, - "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; + "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, + "Pay it " + .@Cost_keshlam + " gold.", L_KESHLAM; + return; L_JACKO: - if (Zeny < @Cost_jacko) + if (Zeny < .@Cost_jacko) goto L_NotEnough; - Zeny = Zeny - @Cost_jacko; - @mob_id = 1022; + Zeny = Zeny - .@Cost_jacko; + @mob_id = JackO; @mob_count = rand(1,2); goto L_Summon; L_GRAVEYARD1: - if (Zeny < @Cost_gy1) + if (Zeny < .@Cost_gy1) goto L_NotEnough; @temp = rand(2); if(@temp == 0) - set @mob_id, 1036; // Zombie + set @mob_id, Zombie; // Zombie if(@temp == 1) - set @mob_id, 1045; // Fallen + set @mob_id, Fallen; // Fallen @mob_count = rand(1,2); - Zeny = Zeny - @Cost_gy1; + Zeny = Zeny - .@Cost_gy1; goto L_Summon; L_GRAVEYARD2: - if (Zeny < @Cost_gy2) + if (Zeny < .@Cost_gy2) goto L_NotEnough; @temp = rand(2); if(@temp == 0) - set @mob_id, 1044; // Lady Skelly + set @mob_id, LadySkeleton; // Lady Skelly if(@temp == 1) - set @mob_id, 1043; // Normal Skelly + set @mob_id, Skeleton; // Normal Skelly @mob_count = rand(1,2); - Zeny = Zeny - @Cost_gy2; + Zeny = Zeny - .@Cost_gy2; goto L_Summon; L_SKULL: - if (Zeny < @Cost_skull) + if (Zeny < .@Cost_skull) goto L_NotEnough; @temp = rand(2); if(@temp == 0) - set @mob_id, 1024; // Poison + set @mob_id, PoisonSkull; // Poison if(@temp == 1) - set @mob_id, 1023; // Fire + set @mob_id, FireSkull; // Fire @mob_count = rand(1,4); - Zeny = Zeny - @Cost_skull; + Zeny = Zeny - .@Cost_skull; goto L_Summon; L_SNAKE: - if (Zeny < @Cost_snake) + if (Zeny < .@Cost_snake) goto L_NotEnough; - @temp = rand(4); + @temp = rand(5); if(@temp == 0) - set @mob_id, 1034; // Grass + set @mob_id, GrassSnake; // Grass if(@temp == 1) - set @mob_id, 1026; // Mnt. + set @mob_id, MountainSnake; // Mnt. if(@temp == 2) - set @mob_id, 1010; // Normal + set @mob_id, Snake; // Normal if(@temp == 3) - set @mob_id, 1021; // Cave + set @mob_id, CaveSnake; // Cave + if(@temp == 4) + set @mob_id, VoidSnake; // Void @mob_count = rand(1,4); - Zeny = Zeny - @Cost_snake; + Zeny = Zeny - .@Cost_snake; + goto L_Summon; + +L_KESHLAM: + if (Zeny < .@Cost_keshlam) + goto L_NotEnough; + set @mob_id, any(Tengu, Sasquatch, ManaSlayer); + @mob_count = rand(1,3); + Zeny = Zeny - .@Cost_keshlam; goto L_Summon; L_Summon: areamonster @map$, @x0, @y0, @x1, @y1, "Evil", @mob_id, @mob_count; - goto L_close; + return; L_NotEnough: - mes "You don't have that much money"; - goto L_close; - -L_close: - @Cost_jacko = 0; - @Cost_gy1 = 0; - @Cost_gy2 = 0; - @Cost_skull = 0; - @Cost_snake = 0; + mes l("You don't have that much money"); return; } -- cgit v1.2.3-60-g2f50