summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2019-05-16 13:12:10 -0300
committerJesusaves <cpntb1@ymail.com>2019-05-16 13:12:10 -0300
commit3c2304f23560e41ea3faddd1916d293dc7494108 (patch)
treeaec05af05ce399bf483b4cfd689c649e20f7210e
parent8866e33299aff4a93c2e769ce29b1519ede21362 (diff)
downloadserverdata-3c2304f23560e41ea3faddd1916d293dc7494108.tar.gz
serverdata-3c2304f23560e41ea3faddd1916d293dc7494108.tar.bz2
serverdata-3c2304f23560e41ea3faddd1916d293dc7494108.tar.xz
serverdata-3c2304f23560e41ea3faddd1916d293dc7494108.zip
Fix bugs: Move Pydisgner and enable him forever (after saving the 1 pt),
fix bugs on wizards, fix bugs on flood (maybe?), fix bugs on siege (global announce)
-rw-r--r--db/re/skill_db.conf15
-rw-r--r--npc/003-0/wizard.txt29
-rw-r--r--npc/003-1/events.txt75
-rw-r--r--npc/011-3/flood.txt2
-rw-r--r--npc/017-1/misc.txt81
-rw-r--r--npc/functions/siege.txt4
6 files changed, 126 insertions, 80 deletions
diff --git a/db/re/skill_db.conf b/db/re/skill_db.conf
index a2c0ac009..7097b17d2 100644
--- a/db/re/skill_db.conf
+++ b/db/re/skill_db.conf
@@ -5420,7 +5420,7 @@ skill_db: (
Id: 157
Name: "MG_ENERGYCOAT"
Description: "Energy Coat"
- MaxLevel: 1
+ MaxLevel: 10
Hit: "BDT_SKILL"
SkillType: {
Self: true
@@ -5433,7 +5433,18 @@ skill_db: (
NoDamage: true
}
InterruptCast: true
- SkillData1: 300000
+ SkillData1: {
+ Lv1: 300000
+ Lv2: 350000
+ Lv3: 400000
+ Lv4: 450000
+ Lv5: 500000
+ Lv6: 550000
+ Lv7: 600000
+ Lv8: 650000
+ Lv9: 700000
+ Lv10: 750000
+ }
FixedCastTime: 5000
Requirements: {
SPCost: 50
diff --git a/npc/003-0/wizard.txt b/npc/003-0/wizard.txt
index 1b9d1e0b5..6322991c0 100644
--- a/npc/003-0/wizard.txt
+++ b/npc/003-0/wizard.txt
@@ -62,6 +62,7 @@ L_Member:
rif(sk_intcost(MG_LIGHTNINGBOLT) && sk_canlvup(MG_LIGHTNINGBOLT), l("Improve Thunder Bolt")),
rif(sk_intcost(WZ_EARTHSPIKE) && sk_canlvup(WZ_EARTHSPIKE), l("Improve Earth Spike")),
rif(sk_intcost(MG_FIREBOLT) && sk_canlvup(MG_FIREBOLT), l("Improve Fire Bolt")),
+ rif(sk_intcost(MG_FIREBALL) && getskilllv(MG_FIREBALL) < (3+degree_subclass()), l("Improve Fire Ball")),
l("Leave Subclass"),
l("Nothing at the moment.");
mes "";
@@ -179,6 +180,34 @@ L_Member:
}
break;
case 7:
+ mesc l("[Fire Ball]");
+ mesc l("Standard fireball skill.");
+ mes "";
+ mesn;
+ mesq l("This useful skill will only require:");
+ mesc l("@@/@@ @@", countitem(Curshroom), (getskilllv(MG_FIREBALL)+1)*10, getitemlink(Curshroom));
+ mesc l("@@/@@ @@", countitem(FluoPowder), (getskilllv(MG_FIREBALL)+1)*5, getitemlink(FluoPowder));
+ mesc l("@@/@@ @@", countitem(PolishedRuby), (getskilllv(MG_FIREBALL)+1)*3, getitemlink(PolishedRuby));
+ mesc l("@@/@@ @@", countitem(HerbalTea), (getskilllv(MG_FIREBALL)+1)*1, getitemlink(HerbalTea));
+ next;
+ if (askyesno() == ASK_YES) {
+ if (
+ countitem(Curshroom) < (getskilllv(MG_FIREBALL)+1)*10 ||
+ countitem(FluoPowder) < (getskilllv(MG_FIREBALL)+1)*5 ||
+ countitem(PolishedRuby) < (getskilllv(MG_FIREBALL)+1)*3 ||
+ countitem(HerbalTea) < (getskilllv(MG_FIREBALL)+1)*1) goto L_Missing;
+
+ delitem Curshroom, (getskilllv(MG_FIREBALL)+1)*10;
+ delitem FluoPowder, (getskilllv(MG_FIREBALL)+1)*5;
+ delitem PolishedRuby, (getskilllv(MG_FIREBALL)+1)*3;
+ delitem HerbalTea, (getskilllv(MG_FIREBALL)+1)*1;
+
+ sk_lvup(MG_FIREBALL);
+
+ next;
+ }
+ break;
+ case 8:
// 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;
diff --git a/npc/003-1/events.txt b/npc/003-1/events.txt
index 547aa259f..e7ea8a826 100644
--- a/npc/003-1/events.txt
+++ b/npc/003-1/events.txt
@@ -218,79 +218,4 @@ OnInit:
-// Whatever event use #RARE_POINTS
-// Which is a script variable, meaning it will be a really special event.
-// Side Note: Might as well add a special cap for such situations.
-003-1,47,53,0 script Pydisgner#spoints NPC_GUGLI,{
- openshop;
-OnInit:
- .sex = G_OTHER;
- .distance=5;
-
- tradertype(NST_CUSTOM);
-
- // Rares
- sellitem BlacksmithAxe, 64000;
- sellitem MiereCleaver, 32000;
- sellitem Kanabo, 13500;
- sellitem PiouEgg, 9350;
- sellitem AxeHat, 8000;
- sellitem Googles, 6000;
-
- // Uncommon
- sellitem CrystallizedMaggot, 7000;
- sellitem Sunglasses, 7000;
- sellitem BunnyEars, 900;
- sellitem StrangeCoin, 10;
-
- // Gamble
- sellitem SupremeGift,30000;
- sellitem PrismGift, 11000;
- sellitem GoldenGift, 4000;
- sellitem SilverGift, 1500;
- sellitem BronzeGift, 500;
- sellitem CasinoCoins, 35;
-
- // Equipment
- sellitem WoodenSword, 5500;
- sellitem Chainmail, 2500;
- sellitem LeatherShirt, 800;
- sellitem JeansShorts, 600;
- sellitem ShortBow, 500;
- sellitem RoundLeatherShield,200;
- sellitem WoodenBow, 100;
- sellitem Dagger, 100;
-
- // Consumables
- sellitem TonoriDelight, 80;
- sellitem Aquada, 60;
- sellitem Manana, 50;
- sellitem Cheese, 40;
- sellitem Plushroom, 15;
- sellitem Chagashroom, 15;
-
- // Useful ores and money stuff
- sellitem IronIngot, 2500;
- sellitem EmptyBottle, 60;
- sellitem Arrow, 4;
- sellitem TolchiArrow, 1;
- sellitem PiouFeathers, 1;
-
-
- if (gettime(7) != 2018)
- disablenpc(.name$);
- end;
-
-OnCountFunds:
- setcurrency(#RARE_POINTS);
- end;
-
-OnPayFunds:
- if( #RARE_POINTS < @price )
- end;
- #RARE_POINTS=#RARE_POINTS-@price;
- purchaseok();
- end;
-
-}
diff --git a/npc/011-3/flood.txt b/npc/011-3/flood.txt
index 1abbdc0dc..06f2ab2dc 100644
--- a/npc/011-3/flood.txt
+++ b/npc/011-3/flood.txt
@@ -84,7 +84,7 @@ OnSkipFlood:
// TODO: Handle players in bridges
//debugmes "[Flood] F - Map Timer OK";
- maptimer("011-3", "#EternalSwampCore::OnBridgeDown", 10);
+ maptimer("011-3", "#EternalSwampCore::OnBridgeDown", 100);
}
}
diff --git a/npc/017-1/misc.txt b/npc/017-1/misc.txt
index 1a1009300..3ac1ef089 100644
--- a/npc/017-1/misc.txt
+++ b/npc/017-1/misc.txt
@@ -227,3 +227,84 @@ OnInit:
}
+
+
+
+
+
+
+// Whatever event use #RARE_POINTS
+// Which is a script variable, meaning it will be a really special event.
+// Side Note: Might as well add a special cap for such situations.
+017-1,118,83,0 script Pydisgner#spoints NPC_GUGLI,{
+ openshop;
+
+OnInit:
+ .sex = G_OTHER;
+ .distance=5;
+
+ tradertype(NST_CUSTOM);
+
+ // Rares
+ sellitem BlacksmithAxe, 64000;
+ sellitem MiereCleaver, 32000;
+ sellitem Kanabo, 13500;
+ sellitem PiouEgg, 8350;
+ sellitem AxeHat, 7000;
+ sellitem Googles, 5000;
+
+ // Uncommon
+ sellitem CrystallizedMaggot, 6000;
+ sellitem Sunglasses, 6000;
+ sellitem BunnyEars, 800;
+ sellitem StrangeCoin, 10;
+
+ // Gamble
+ sellitem SupremeGift,30000;
+ sellitem PrismGift, 11000;
+ sellitem GoldenGift, 4000;
+ sellitem SilverGift, 1500;
+ sellitem BronzeGift, 500;
+ sellitem CasinoCoins, 35;
+
+ // Equipment
+ sellitem WoodenSword, 5500;
+ sellitem Chainmail, 2500;
+ sellitem LeatherShirt, 800;
+ sellitem JeansShorts, 600;
+ sellitem ShortBow, 500;
+ sellitem RoundLeatherShield,200;
+ sellitem WoodenBow, 100;
+ sellitem Dagger, 100;
+
+ // Consumables
+ sellitem TonoriDelight, 80;
+ sellitem Aquada, 60;
+ sellitem Manana, 50;
+ sellitem Cheese, 40;
+ sellitem Plushroom, 15;
+ sellitem Chagashroom, 15;
+
+ // Useful ores and money stuff
+ sellitem IronIngot, 2500;
+ sellitem EmptyBottle, 60;
+ sellitem Arrow, 4;
+ sellitem TolchiArrow, 1;
+ sellitem PiouFeathers, 1;
+
+
+ end;
+
+OnCountFunds:
+ setcurrency(#RARE_POINTS);
+ end;
+
+OnPayFunds:
+ // Due a script bug, you must always retain a point
+ if( #RARE_POINTS <= @price )
+ end;
+ #RARE_POINTS=#RARE_POINTS-@price;
+ purchaseok();
+ end;
+
+}
diff --git a/npc/functions/siege.txt b/npc/functions/siege.txt
index 78529cbb7..f640472e8 100644
--- a/npc/functions/siege.txt
+++ b/npc/functions/siege.txt
@@ -290,14 +290,14 @@ OnRespawn:
OnLieutenantDeath:
$MK_TEMPVAR+=1;
getitem StrangeCoin, rand(5,10);
- mapannounce(getmap(), l("##2The Monster Lieutenant was defeated by @@!", strcharinfo(0)), bc_map);
+ announce(("##2The Monster Lieutenant was defeated by @@!", strcharinfo(0)), bc_all);
end;
OnColonelDeath:
$MK_TEMPVAR+=10;
getitem StrangeCoin, rand(15,25);
$MOST_HEROIC$=strcharinfo(0);
- mapannounce(getmap(), l("##2The Monster Colonel was defeated by @@!", strcharinfo(0)), bc_map);
+ announce(("##2The Monster Colonel was defeated by @@!", strcharinfo(0)), bc_all);
end;
}