summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--maps/re/003-0.mcachebin140 -> 139 bytes
-rw-r--r--npc/003-0/_import.txt4
-rw-r--r--npc/003-0/mages.txt42
-rw-r--r--npc/003-0/paladin.txt224
-rw-r--r--npc/003-0/tanker.txt221
-rw-r--r--npc/003-0/warriors.txt41
6 files changed, 0 insertions, 532 deletions
diff --git a/maps/re/003-0.mcache b/maps/re/003-0.mcache
index 85e5086b3..4a60efd02 100644
--- a/maps/re/003-0.mcache
+++ b/maps/re/003-0.mcache
Binary files differ
diff --git a/npc/003-0/_import.txt b/npc/003-0/_import.txt
index 1601700b1..4721d3b94 100644
--- a/npc/003-0/_import.txt
+++ b/npc/003-0/_import.txt
@@ -4,11 +4,7 @@
"npc/003-0/berserk.txt",
"npc/003-0/colin.txt",
"npc/003-0/luca.txt",
-"npc/003-0/mages.txt",
-"npc/003-0/paladin.txt",
"npc/003-0/priest.txt",
"npc/003-0/recepcionist.txt",
"npc/003-0/sage.txt",
-"npc/003-0/tanker.txt",
-"npc/003-0/warriors.txt",
"npc/003-0/wizard.txt",
diff --git a/npc/003-0/mages.txt b/npc/003-0/mages.txt
deleted file mode 100644
index 4b057850a..000000000
--- a/npc/003-0/mages.txt
+++ /dev/null
@@ -1,42 +0,0 @@
-// (C) Jesusalva, 2018
-// TMW2 Script
-
-// Wizard
-// MG_COLDBOLT (ice)
-// MG_LIGHTNINGBOLT (wind)
-// WZ_EARTHSPIKE (earth)
-// MG_NAPALMBEAT (ghost)
-// MG_ENERGYCOAT (For 5 minutes, raise damage reduction, but that eats MP)
-// TODO: We have many other cool skills for Wizard (more AoE skills, more damage, etc)
-// I will worry with that later, as that also means providing extra skills for Sage & Priest
-
-// Sage
-// SA_FREECAST (allows to move/attack while casting)
-// SA_DRAGONOLOGY (+4% ATK, +2% MATK, +1 INT and +4% resist against DRAGONS)
-// TMW2_SAGE (grants up to 1.5 extra mana exp point/level)
-// SA_FLAMELAUNCHER (bestow fire element on weapon for 2m, 70% cth)
-// SA_FROSTWEAPON (bestow water element on weapon for 2m, 70% cth)
-// SA_LIGHTNINGLOADER (bestow wind element on weapon for 2m, 70% cth)
-// SA_SEISMICWEAPON (bestow earth element on weapon for 2m, 70% cth)
-
-// Priest
-// Broken //AL_PNEUMA (BLOCKS ranged (4+ tiles) physical attacks on a 3x3 area. No bows :D)
-// AL_HOLYLIGHT (standard holy magic attack - 125% of MATK)
-// MG_SRECOVERY (small increase to SP Recovery while idle each 10 sec.)
-// ALL_RESURRECTION (Revive at 10% HP. May insta-kill undead.)
-// PR_ASPERSIO (Change anyone weapon to holy for 60s. Or 40 defense-disregard holy dmg to undead/evil)
-// TF_DETOXIFY (cancels poison. 40% MP.)
-
-
-// New skills for storyline:
-// Health Conversion (Skill ID# 373, iRO Name: Indulge)
-// Converts 10% of your HP into SP. The higher the skill level the more effective the conversion will be. The conversion rate is 10:1 modified by SkillLV, so a 2000 HP Professor with Health Conversion LV 3 would consume 2000*10%=200 HP and obtain a total of 200*30%=60 SP.
-
-
-// Meditatio (Skill ID# 363)
-// When meditating (sitting), you will have a better SP Recovery as well as increase your Maximum SP. This skill also improves the amount of HP that are healed by the Heal skill by 2% per SkillLV (sitting is of course not required).
-// 1 Maximum SP +1%, SP Rec +3%, +2% Heal
-// 2 Maximum SP +2%, SP Rec +6%, +4% Heal
-// 3 Maximum SP +3%, SP Rec +9%, +6% Heal
-// 10 Maximum SP +10%, SP Rec +30%, +20% Heal
-
diff --git a/npc/003-0/paladin.txt b/npc/003-0/paladin.txt
deleted file mode 100644
index 224fd5bdf..000000000
--- a/npc/003-0/paladin.txt
+++ /dev/null
@@ -1,224 +0,0 @@
-// TMW2 scripts.
-// Authors:
-// Jesusalva
-// Description:
-// Leader of the PALADIN class
-
-003-0,34,37,0 script Paladin Master NPC_PLAYER,{
- /*
- if (!is_staff())
- goto L_Close;
- */
- if (!(MAGIC_SUBCLASS & CL_PALADIN))
- goto L_SignUp;
- goto L_Member;
-
-// Sign Up
-L_SignUp:
- // Not allowed if subclass filled or not from main class
- if (total_subclass() >= max_subclass() || getskilllv(MAGIC_WARRIOR) < 2)
- goto L_Close;
- mesn;
- mesq l("Hey there! Do you want to join the Paladin Class?");
- mesc l("Warning: If you join a subclass, you can't leave it later!"), 1;
- mesc b(l("Warning: This class haven't been tested/balanced yet. Feedback is required!")), 1;
- next;
- if (askyesno() != ASK_YES)
- close;
- // TODO: Requeriment for signing up to a subclass? Or is the tier + skill quest hard enough?
- MAGIC_SUBCLASS=MAGIC_SUBCLASS|CL_PALADIN;
- mesn;
- mesq l("Welcome to the paladin guild!");
- close;
-
-// Close
-L_Close:
- goodbye;
- closedialog;
- close;
-
-L_Missing:
- mesn;
- mesq l("Hey hey! You don't have that stuff, CAN'T YOU READ?!");
- percentheal 0, -10;
- next;
- goto L_Member;
-
-// Membership area
-// Paladin
-// CR_TRUST (raise Max HP in 200 and Holy Resistance in 5%, passive)
-// AL_ANGELUS (DEF Increase 5% for 15s/LVL, 14x14 area for PARTY)
-// PR_REDEMPTIO (suicide with death penalty. Revive dead party members on a 29x29 area. Min. 1% xp. 0.01% xp penalty reduction per revive)
-// MER_INCAGI (raise agi and move speed for 20s/LVL. Have an HP cost.)
-// SM_BASH up to level 4 (+220% dmg and +20% acc). PS. If you have MP, SM_BASH is very powerful.
-
-L_Member:
- mesn;
- mesq l("Hey there! Do you want to learn new skills for a very small teaching fee?");
- select
- rif(sk_intcost(SM_BASH) && getskilllv(SM_BASH) < (3+degree_subclass()/2), l("Improve Bash Skill")),
- rif(sk_intcost(AL_ANGELUS) && sk_canlvup(AL_ANGELUS), l("Improve Party Area Defense")),
- "","",
- //rif(sk_intcost(MER_INCAGI) && sk_canlvup(MER_INCAGI), l("Improve Increase Agility")),
- //rif(sk_intcost(PR_REDEMPTIO) && !getskilllv(PR_REDEMPTIO), l("Learn Redemption")),
- rif(sk_intcost(CR_TRUST) && !getskilllv(CR_TRUST), l("Learn Last Standing Man")),
- l("Leave Subclass"),
- l("Nothing at the moment.");
- mes "";
- switch (@menu) {
- case 1:
- mesc l("[Bash]");
- mesc l("Blow with increased attack and precision.");
- mes "";
- mesn;
- mesq l("This useful skill will only require:");
- mesc l("@@/@@ @@", countitem(ManaPiouFeathers), (getskilllv(SM_BASH)+1)*15, getitemlink(ManaPiouFeathers));
- mesc l("@@/@@ @@", countitem(CaveSnakeSkin), (getskilllv(SM_BASH)+1)*4, getitemlink(CaveSnakeSkin));
- mesc l("@@/@@ @@", countitem(RubyPowder), (getskilllv(SM_BASH)+1)*2, getitemlink(RubyPowder));
- mesc l("@@/@@ @@", countitem(StrengthPotion), (getskilllv(SM_BASH)+1)*2, getitemlink(StrengthPotion));
- next;
- if (askyesno() == ASK_YES) {
- if (
- countitem(ManaPiouFeathers) < (getskilllv(SM_BASH)+1)*15 ||
- countitem(CaveSnakeSkin) < (getskilllv(SM_BASH)+1)*4 ||
- countitem(RubyPowder) < (getskilllv(SM_BASH)+1)*2 ||
- countitem(StrengthPotion) < (getskilllv(SM_BASH)+1)*2) goto L_Missing;
-
- delitem PiberriesInfusion, (getskilllv(SM_BASH)+1)*15;
- delitem CaveSnakeSkin, (getskilllv(SM_BASH)+1)*4;
- delitem RubyPowder, (getskilllv(SM_BASH)+1)*2;
- delitem StrengthPotion, (getskilllv(SM_BASH)+1)*2;
-
- sk_lvup(SM_BASH);
-
- next;
- }
- break;
- case 2:
- mesc l("[Party Area Defense]");
- mesc l("Raises defense of the whole party in 5% for a while.");
- mes "";
- mesn;
- mesq l("This useful skill will only require:");
- mesc l("@@/@@ @@", countitem(PiberriesInfusion), (getskilllv(AL_ANGELUS)+1)*10, getitemlink(PiberriesInfusion));
- mesc l("@@/@@ @@", countitem(BlackMambaEgg), (getskilllv(AL_ANGELUS)+1)*2, getitemlink(BlackMambaEgg));
- mesc l("@@/@@ @@", countitem(MoubooSteak), (getskilllv(AL_ANGELUS)+1)*4, getitemlink(MoubooSteak));
- mesc l("@@/@@ @@", countitem(IronIngot), (getskilllv(AL_ANGELUS)+1)*1, getitemlink(IronIngot));
- next;
- if (askyesno() == ASK_YES) {
- if (
- countitem(PiberriesInfusion) < (getskilllv(AL_ANGELUS)+1)*10 ||
- countitem(BlackMambaEgg) < (getskilllv(AL_ANGELUS)+1)*2 ||
- countitem(MoubooSteak) < (getskilllv(AL_ANGELUS)+1)*4 ||
- countitem(IronIngot) < (getskilllv(AL_ANGELUS)+1)*1) goto L_Missing;
-
- delitem PiberriesInfusion, (getskilllv(AL_ANGELUS)+1)*10;
- delitem BlackMambaEgg, (getskilllv(AL_ANGELUS)+1)*2;
- delitem MoubooSteak, (getskilllv(AL_ANGELUS)+1)*4;
- delitem IronIngot, (getskilllv(AL_ANGELUS)+1)*1;
-
- sk_lvup(AL_ANGELUS);
-
- next;
- }
- break;
- case 3:
- mesc l("[Increase Agility]");
- mesc l("Temporaly raise your agility and move speed, in exchange of HP.");
- mes "";
- // TODO: Requirem, quest, agree
- sk_lvup(MER_INCAGI);
- break;
- case 4:
- mesc l("[Redemption]");
- mesc l("Kills yourself, but revives everyone in a range. You'll take the death penalty.");
- mes "";
- // TODO: Requirem, quest, agree
- sk_lvup(PR_REDEMPTIO);
- break;
- case 5:
- mesc l("[Last Standing Man]");
- mesc l("Raises max HP and holy resistance. Passive.");
- mes "";
- mesn;
- mesq l("This useful skill will only require:");
- mesc l("@@/@@ @@", countitem(Cheese), (getskilllv(CR_TRUST)+1)*50, getitemlink(Cheese));
- mesc l("@@/@@ @@", countitem(Coral), (getskilllv(CR_TRUST)+1)*30, getitemlink(Coral));
- mesc l("@@/@@ @@", countitem(PiberriesInfusion), (getskilllv(CR_TRUST)+1)*20, getitemlink(PiberriesInfusion));
- mesc l("@@/@@ @@", countitem(FluoPowder), (getskilllv(CR_TRUST)+1)*15, getitemlink(FluoPowder));
- mesc l("@@/@@ @@", countitem(HastePotion), (getskilllv(CR_TRUST)+1)*10, getitemlink(HastePotion));
- mesc l("@@/@@ @@", countitem(DiamondPowder), (getskilllv(CR_TRUST)+1)*3, getitemlink(DiamondPowder));
- mesc l("@@/@@ @@", countitem(GrassCarp), (getskilllv(CR_TRUST)+1)*1, getitemlink(GrassCarp));
- mesc l("@@/@@ @@", countitem(ElixirOfLife), (getskilllv(CR_TRUST)+1)*1, getitemlink(ElixirOfLife));
- next;
- if (askyesno() == ASK_YES) {
- if (
- countitem(Cheese) < (getskilllv(CR_TRUST)+1)*50 ||
- countitem(Coral) < (getskilllv(CR_TRUST)+1)*30 ||
- countitem(PiberriesInfusion) < (getskilllv(CR_TRUST)+1)*20 ||
- countitem(FluoPowder) < (getskilllv(CR_TRUST)+1)*15 ||
- countitem(HastePotion) < (getskilllv(CR_TRUST)+1)*10 ||
- countitem(DiamondPowder) < (getskilllv(CR_TRUST)+1)*3 ||
- countitem(GrassCarp) < (getskilllv(CR_TRUST)+1)*1 ||
- countitem(ElixirOfLife) < (getskilllv(CR_TRUST)+1)*1) goto L_Missing;
-
- delitem Cheese, (getskilllv(CR_TRUST)+1)*50;
- delitem Coral, (getskilllv(CR_TRUST)+1)*30;
- delitem PiberriesInfusion, (getskilllv(CR_TRUST)+1)*20;
- delitem FluoPowder, (getskilllv(CR_TRUST)+1)*15;
- delitem HastePotion, (getskilllv(CR_TRUST)+1)*10;
- delitem DiamondPowder, (getskilllv(CR_TRUST)+1)*3;
- delitem GrassCarp, (getskilllv(CR_TRUST)+1)*1;
- delitem ElixirOfLife, (getskilllv(CR_TRUST)+1)*1;
-
- sk_lvup(CR_TRUST);
-
- next;
- }
- break;
- case 6:
- // All skills related may include the basic class skills if they're related.
- mesc l("WARNING: If you leave the subclass, you'll lose all skills related to it!"), 1;
- mesc l("This cannot be undone. Are you sure?"), 1;
- mes "";
- if (askyesno() == ASK_YES) {
- mes "";
- if (validatepin()) {
- skill CR_TRUST, 0, 0;
- skill AL_ANGELUS, 0, 0;
- skill PR_REDEMPTIO, 0, 0;
- skill MER_INCAGI, 0, 0;
- skill SM_BASH, 2, 0;
- MAGIC_SUBCLASS=MAGIC_SUBCLASS^CL_PALADIN;
- mesc l("You abandoned the PALADIN class!"), 1;
- close;
- } else {
- mesc l("Failed to validate pin. Aborting.");
- next;
- }
- } else {
- mes "";
- mesc l("Operation aborted. Phew!");
- next;
- }
- break;
- default:
- goto L_Close;
- }
-
- goto L_Member;
-
-OnInit:
- .@npcId = getnpcid(.name$);
- setunitdata(.@npcId, UDT_HEADTOP, WarlordHelmet);
- setunitdata(.@npcId, UDT_HEADMIDDLE, GoldenWarlordPlate);
- setunitdata(.@npcId, UDT_HEADBOTTOM, NPCEyes);
- setunitdata(.@npcId, UDT_WEAPON, JeansChaps);
- setunitdata(.@npcId, UDT_HAIRSTYLE, 2);
- setunitdata(.@npcId, UDT_HAIRCOLOR, 4);
-
- .sex=G_MALE;
- .distance=5;
- end;
-}
-
diff --git a/npc/003-0/tanker.txt b/npc/003-0/tanker.txt
deleted file mode 100644
index 0b4c443e7..000000000
--- a/npc/003-0/tanker.txt
+++ /dev/null
@@ -1,221 +0,0 @@
-// TMW2 scripts.
-// Authors:
-// Jesusalva
-// Description:
-// Leader of the TANKER class
-
-003-0,38,41,2 script Tanker Master NPC_PLAYER,{
- /*
- if (!is_staff())
- goto L_Close;
- */
- if (!(MAGIC_SUBCLASS & CL_TANKER))
- goto L_SignUp;
- goto L_Member;
-
-// Sign Up
-L_SignUp:
- // Not allowed if subclass filled or not from main class
- if (total_subclass() >= max_subclass() || getskilllv(MAGIC_WARRIOR) < 2)
- goto L_Close;
- mesn;
- mesq l("Hey there! Do you want to join the Tanker Class?");
- mesc l("Warning: If you join a subclass, you can't leave it later!"), 1;
- mesc b(l("Warning: This class haven't been tested/balanced yet. Feedback is required!")), 1;
- next;
- if (askyesno() != ASK_YES)
- close;
- // TODO: Requeriment for signing up to a subclass? Or is the tier + skill quest hard enough?
- MAGIC_SUBCLASS=MAGIC_SUBCLASS|CL_TANKER;
- mesn;
- mesq l("Welcome to the tanker guild!");
- close;
-
-// Close
-L_Close:
- goodbye;
- closedialog;
- close;
-
-L_Missing:
- mesn;
- mesq l("Hey hey! You don't have that stuff, CAN'T YOU READ?!");
- percentheal 0, -10;
- next;
- goto L_Member;
-
-// Membership area
-// Tanker
-// CR_TRUST (raise Max HP in 200 and Holy Resistance in 5%, passive)
-// CR_AUTOGUARD (5% chance to complety block attack. Freeze you for a while. Req. Shield. Last 5m.)
-// CR_DEFENDER (less damage from ranged attacks, but lowers move & attack speed. Req. Shield) - max lv 4 plz. Last 3m.
-// SM_RECOVERY (insignificant HP recovery every 10s without moving. Better with higher level.) - low mp cost
-
-L_Member:
- mesn;
- mesq l("Hey there! Do you want to learn new skills for a very small teaching fee?");
- select
- rif(sk_intcost(CR_TRUST) && getskilllv(CR_TRUST) < 1+(degree_subclass()/2), l("Learn Last Standing Man")),
- "",
- //rif(sk_intcost(CR_AUTOGUARD) && sk_canlvup(CR_AUTOGUARD), l("Improve Guard")),
- rif(sk_intcost(CR_DEFENDER) && sk_canlvup(CR_DEFENDER), l("Improve Arrow Shield")),
- rif(sk_intcost(SM_RECOVERY) && sk_canlvup(SM_RECOVERY), l("Improve Standing HP Regen")),
- l("Leave Subclass"),
- l("Nothing at the moment.");
- mes "";
- switch (@menu) {
- case 1:
- mesc l("[Last Standing Man]");
- mesc l("Raises max HP and holy resistance. Passive.");
- mes "";
- mesn;
- mesq l("This useful skill will only require:");
- mesc l("@@/@@ @@", countitem(Cheese), (getskilllv(CR_TRUST)+1)*50, getitemlink(Cheese));
- mesc l("@@/@@ @@", countitem(Coral), (getskilllv(CR_TRUST)+1)*30, getitemlink(Coral));
- mesc l("@@/@@ @@", countitem(PiberriesInfusion), (getskilllv(CR_TRUST)+1)*20, getitemlink(PiberriesInfusion));
- mesc l("@@/@@ @@", countitem(FluoPowder), (getskilllv(CR_TRUST)+1)*15, getitemlink(FluoPowder));
- mesc l("@@/@@ @@", countitem(HastePotion), (getskilllv(CR_TRUST)+1)*10, getitemlink(HastePotion));
- mesc l("@@/@@ @@", countitem(DiamondPowder), (getskilllv(CR_TRUST)+1)*3, getitemlink(DiamondPowder));
- mesc l("@@/@@ @@", countitem(GrassCarp), (getskilllv(CR_TRUST)+1)*1, getitemlink(GrassCarp));
- mesc l("@@/@@ @@", countitem(ElixirOfLife), (getskilllv(CR_TRUST)+1)*1, getitemlink(ElixirOfLife));
- next;
- if (askyesno() == ASK_YES) {
- if (
- countitem(Cheese) < (getskilllv(CR_TRUST)+1)*50 ||
- countitem(Coral) < (getskilllv(CR_TRUST)+1)*30 ||
- countitem(PiberriesInfusion) < (getskilllv(CR_TRUST)+1)*20 ||
- countitem(FluoPowder) < (getskilllv(CR_TRUST)+1)*15 ||
- countitem(HastePotion) < (getskilllv(CR_TRUST)+1)*10 ||
- countitem(DiamondPowder) < (getskilllv(CR_TRUST)+1)*3 ||
- countitem(GrassCarp) < (getskilllv(CR_TRUST)+1)*1 ||
- countitem(ElixirOfLife) < (getskilllv(CR_TRUST)+1)*1) goto L_Missing;
-
- delitem Cheese, (getskilllv(CR_TRUST)+1)*50;
- delitem Coral, (getskilllv(CR_TRUST)+1)*30;
- delitem PiberriesInfusion, (getskilllv(CR_TRUST)+1)*20;
- delitem FluoPowder, (getskilllv(CR_TRUST)+1)*15;
- delitem HastePotion, (getskilllv(CR_TRUST)+1)*10;
- delitem DiamondPowder, (getskilllv(CR_TRUST)+1)*3;
- delitem GrassCarp, (getskilllv(CR_TRUST)+1)*1;
- delitem ElixirOfLife, (getskilllv(CR_TRUST)+1)*1;
-
- sk_lvup(CR_TRUST);
-
- next;
- }
- break;
- case 2:
- mesc l("[Guard]");
- mesc l("Raises chance to entirely block an attack, but freezes you for a while. Req. Shield.");
- mes "";
- // TODO: Requirem, quest, agree
- sk_lvup(CR_AUTOGUARD);
- break;
- case 3:
- mesc l("[Arrow Shield]");
- mesc l("Decrease ranged damage taken for a few minutes, in exchange of agi and move speed. Req. Shield.");
- mes "";
- mesn;
- mesq l("This useful skill will only require:");
- mesc l("@@/@@ @@", countitem(PiouFeathers), (getskilllv(CR_DEFENDER)+1)*60, getitemlink(PiouFeathers));
- mesc l("@@/@@ @@", countitem(PoisonArrow), (getskilllv(CR_DEFENDER)+1)*10, getitemlink(PoisonArrow));
- mesc l("@@/@@ @@", countitem(CursedArrow), (getskilllv(CR_DEFENDER)+1)*10, getitemlink(CursedArrow));
- mesc l("@@/@@ @@", countitem(OrangeCupcake), (getskilllv(CR_DEFENDER)+1)*6, getitemlink(OrangeCupcake));
- mesc l("@@/@@ @@", countitem(Mashmallow), (getskilllv(CR_DEFENDER)+1)*5, getitemlink(Mashmallow));
- mesc l("@@/@@ @@", countitem(Orange), (getskilllv(CR_DEFENDER)+1)*4, getitemlink(Orange));
- next;
- if (askyesno() == ASK_YES) {
- if (
- countitem(PiouFeathers) < (getskilllv(CR_DEFENDER)+1)*60 ||
- countitem(PoisonArrow) < (getskilllv(CR_DEFENDER)+1)*10 ||
- countitem(CursedArrow) < (getskilllv(CR_DEFENDER)+1)*10 ||
- countitem(OrangeCupcake) < (getskilllv(CR_DEFENDER)+1)*6 ||
- countitem(Mashmallow) < (getskilllv(CR_DEFENDER)+1)*5 ||
- countitem(Orange) < (getskilllv(CR_DEFENDER)+1)*4) goto L_Missing;
-
- delitem PiouFeathers, (getskilllv(CR_DEFENDER)+1)*60;
- delitem PoisonArrow, (getskilllv(CR_DEFENDER)+1)*10;
- delitem CursedArrow, (getskilllv(CR_DEFENDER)+1)*10;
- delitem PrangeCupcake, (getskilllv(CR_DEFENDER)+1)*6;
- delitem Mashmallow, (getskilllv(CR_DEFENDER)+1)*5;
- delitem Orange, (getskilllv(CR_DEFENDER)+1)*4;
-
- sk_lvup(CR_DEFENDER);
-
- next;
- }
- break;
- case 4:
- mesc l("[Standing Regen]");
- mesc l("Regenerate HP every 5 seconds, as if you were always eating a healing item.");
- mes "";
- mesn;
- mesq l("This useful skill will only require:");
- mesc l("@@/@@ @@", countitem(PiberriesInfusion), (getskilllv(SM_RECOVERY)+1)*10, getitemlink(PiberriesInfusion));
- mesc l("@@/@@ @@", countitem(BlackMambaEgg), (getskilllv(SM_RECOVERY)+1)*6, getitemlink(BlackMambaEgg));
- mesc l("@@/@@ @@", countitem(MoubooSteak), (getskilllv(SM_RECOVERY)+1)*4, getitemlink(MoubooSteak));
- mesc l("@@/@@ @@", countitem(TonoriDelight), (getskilllv(SM_RECOVERY)+1)*8, getitemlink(TonoriDelight));
- next;
- if (askyesno() == ASK_YES) {
- if (
- countitem(PiberriesInfusion) < (getskilllv(SM_RECOVERY)+1)*10 ||
- countitem(BlackMambaEgg) < (getskilllv(SM_RECOVERY)+1)*6 ||
- countitem(MoubooSteak) < (getskilllv(SM_RECOVERY)+1)*4 ||
- countitem(TonoriDelight) < (getskilllv(SM_RECOVERY)+1)*8) goto L_Missing;
-
- delitem PiberriesInfusion, (getskilllv(SM_RECOVERY)+1)*10;
- delitem BlackMambaEgg, (getskilllv(SM_RECOVERY)+1)*6;
- delitem MoubooSteak, (getskilllv(SM_RECOVERY)+1)*4;
- delitem TonoriDelight, (getskilllv(SM_RECOVERY)+1)*8;
-
- sk_lvup(SM_RECOVERY);
- //mesc l("This skill can be further improved with Job Points");
-
- next;
- }
- break;
- case 5:
- // All skills related may include the basic class skills if they're related.
- mesc l("WARNING: If you leave the subclass, you'll lose all skills related to it!"), 1;
- mesc l("This cannot be undone. Are you sure?"), 1;
- mes "";
- if (askyesno() == ASK_YES) {
- mes "";
- if (validatepin()) {
- skill CR_TRUST, 0, 0;
- skill CR_AUTOGUARD, 0, 0;
- skill CR_DEFENDER, 0, 0;
- skill SM_RECOVERY, 0, 0;
- MAGIC_SUBCLASS=MAGIC_SUBCLASS^CL_TANKER;
- mesc l("You abandoned the TANKER class!"), 1;
- close;
- } else {
- mesc l("Failed to validate pin. Aborting.");
- next;
- }
- } else {
- mes "";
- mesc l("Operation aborted. Phew!");
- next;
- }
- break;
- default:
- goto L_Close;
- }
-
- goto L_Member;
-
-OnInit:
- .@npcId = getnpcid(.name$);
- setunitdata(.@npcId, UDT_HEADTOP, WarlordHelmet);
- setunitdata(.@npcId, UDT_HEADMIDDLE, WarlordPlate);
- setunitdata(.@npcId, UDT_HEADBOTTOM, SteelShield);
- setunitdata(.@npcId, UDT_WEAPON, JeansChaps);
- setunitdata(.@npcId, UDT_HAIRSTYLE, 2);
- setunitdata(.@npcId, UDT_HAIRCOLOR, 4);
-
- .sex=G_MALE;
- .distance=5;
- end;
-}
-
diff --git a/npc/003-0/warriors.txt b/npc/003-0/warriors.txt
deleted file mode 100644
index d514130f1..000000000
--- a/npc/003-0/warriors.txt
+++ /dev/null
@@ -1,41 +0,0 @@
-// (C) Jesusalva, 2018
-// TMW2 Script
-
-// Paladin
-// CR_TRUST (raise Max HP in 200 and Holy Resistance in 5%, passive)
-// AL_ANGELUS (DEF Increase 5% for 15s/LVL, 14x14 area for PARTY)
-// Broken //PR_REDEMPTIO (suicide with death penalty. Revive dead party members on a 29x29 area. Min. 1% xp. 0.01% xp penalty reduction per revive)
-// Broken? //MER_INCAGI (raise agi and move speed for 20s/LVL. Have an HP cost.)
-// SM_BASH up to level 4 (+220% dmg and +20% acc). PS. If you have MP, SM_BASH is very powerful.
-
-// Warrior - Class extinct
-// Simply makes no sense now.
-
-// Tanker
-// CR_TRUST (raise Max HP in 200 and Holy Resistance in 5%, passive)
-// Broken? //CR_AUTOGUARD (5% chance to complety block attack. Freeze you for a while. Req. Shield. Last 5m.)
-// CR_DEFENDER (less damage from ranged attacks, but lowers move & attack speed. Req. Shield) - max lv 4 plz. Last 3m.
-// SM_RECOVERY (insignificant HP recovery every 10s without moving. Better with higher level.) - low mp cost
-
-// Berserker
-// KN_AUTOCOUNTER (Counter any attack with 2x critical rate and block attack for 0.5s)
-// SM_ENDURE (deny stun penalty when hit, and MDEF bonus, for 10s)
-// Broken? //SM_AUTOBERSERK (when < 25% hp, get +32% ATK and -55% VIT DEF. Drain SP and keep working even with 0 MP. Trigerrable passive.)
-
-
-
-
-// Ranger (Arrows)
-// AC_VULTURE (raise range and cth)
-// AC_OWL (raise 1 DEX per level)
-// AC_SHOWER (3x3 attack)
-// SN_WINDWALK (raise walking speed and flee rate on the screen area)
-
-// Sniper (guns)
-// GS_SNAKEEYE (passive, range and acc + 1)
-// GS_SINGLEACTION (passive, acc +2 and aspd +1%) (?)
-// GS_INCREASING (+20 Acc, +4 Dex and +4 Agi for 60s)
-// GS_CHAINACTION (revolver may shoot twice) ?
-// GS_MAGICALBULLET (adds MATK to your regular attack) ?
-
-// TODO: What about GS_GATLINGFEVER or improving SN_SHARPSHOOTER?