summaryrefslogtreecommitdiff
path: root/npc/functions
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2019-07-28 17:41:40 -0300
committerJesusaves <cpntb1@ymail.com>2019-07-28 17:41:40 -0300
commit6a6ccf27161b239c974b4dadcb3cfc275f3581d7 (patch)
treed00870cb27fb2c6fe4b2a90f205a24d108e4e428 /npc/functions
parentfec35860f0876dd7bb74a13896c28532c91ca766 (diff)
parentd50cb8eff8d4f143b553cc33401f60baa6b03873 (diff)
downloadserverdata-6a6ccf27161b239c974b4dadcb3cfc275f3581d7.tar.gz
serverdata-6a6ccf27161b239c974b4dadcb3cfc275f3581d7.tar.bz2
serverdata-6a6ccf27161b239c974b4dadcb3cfc275f3581d7.tar.xz
serverdata-6a6ccf27161b239c974b4dadcb3cfc275f3581d7.zip
Partly Merge branch 'master' into testserver
Conflicts: npc/commands/rate-management.txt npc/functions/mobpoint.txt
Diffstat (limited to 'npc/functions')
-rw-r--r--npc/functions/clientversion.txt59
-rw-r--r--npc/functions/fishing.txt4
-rw-r--r--npc/functions/mobpoint.txt1
-rw-r--r--npc/functions/siege.txt20
-rw-r--r--npc/functions/treasure.txt3
5 files changed, 66 insertions, 21 deletions
diff --git a/npc/functions/clientversion.txt b/npc/functions/clientversion.txt
index 59098ee15..873873018 100644
--- a/npc/functions/clientversion.txt
+++ b/npc/functions/clientversion.txt
@@ -287,25 +287,39 @@ function script clientupdater {
if (UPDATE < 1563219695) {
UPDATE=1563219695;
.@dg=true;
+ mesc l(".:: This is Release 9.5 Academy ::."), 0;
+ //mesc l(".:: This is Release 10.0 Infinity ::."), 0;
+ // Fix mounts
+ unequip(EQI_SHADOW_SHOES);
+ setmount 0;
// You got recipe book by BSS Quest - mark as complete and get Blueprint
if (getq(NivalisQuest_BlueSageSlimes) == 2) {
getitem any(AncientBlueprint, AlchemyBlueprintA, EquipmentBlueprintA), 1;
CRAFTQUEST=1;
+ mesc l("You got a blueprint as reward for Blue Sage Slimes Quest completion."), 3;
+ }
+ // If you have TMW2_CRAFT skill, you need the bonus recipe
+ if (getskilllv(TMW2_CRAFT)) {
+ RECIPES_EQUIPMENT[CraftDagger]=true;
+ mesc l("Dagger Crafting recipe learnt."), 2;
}
// Bounty Hunter Helmet
if (MERCENARY_DAILYQUEST > 100) {
getitem BountyHunterHelmet, 1;
+ mesc l("You got a @@ for completing 100+ daily bountyhunter quests!", getitemlink(BountyHunterHelmet)), 2;
}
- // If you have TMW2_CRAFT skill, you need the bonus recipe
- if (getskilllv(TMW2_CRAFT)) {
- RECIPES_EQUIPMENT[CraftDagger]=true;
- mesc l("Dagger Crafting recipe learnt.");
+ // Cindy quest new rewards
+ if (getq(NivalisQuest_Cindy) >= 3) {
+ getexp 120000, 0;
+ mesc l("You got 120,000 XP for completing Mercury's quest."), 2;
}
// Mercenary Rank removed
if (MERC_RANK) {
THIEF_RANK=MERC_RANK;
+ THIEF_EXP=MERC_EXP;
MERC_RANK=0;
- mesc l("Your class has been changed from %s to %s.", b(l("Merchant Police")), b(l("Thief")));
+ MERC_EXP=0;
+ mesc l("Your class has been changed from %s to %s.", b(l("Merchant Police")), b(l("Thief"))), 1;
}
if (getskilllv(ALL_INCCARRY)) {
skill TF_STEAL, getskilllv(ALL_INCCARRY);
@@ -317,7 +331,7 @@ function script clientupdater {
skill AC_CHARGEARROW, getskilllv(SN_SHARPSHOOTING);
skill AC_CHARGEARROW, 0, 0;
getexp 2000, 150;
- mesc l("Sharpshooting skill replaced with Charged Arrow.");
+ mesc l("Sharpshooting skill replaced with Charged Arrow."), 1;
mesc l("You've got 2000 xp and 150 job xp in apology tokens.");
}
getskilllist();
@@ -326,19 +340,24 @@ function script clientupdater {
if (@skilllist_flag[.@i] != 0)
continue;
// Only “paid” skills will result in a Scholarship Badge
- switch (@skilllist_id[.@i]) {
+ .@id=@skilllist_id[.@i];
+ .@am=0;
+ switch (.@id) {
case SM_BASH:
+ case TMW2_DEMURE:
+ case MG_FIREBALL:
+ case MG_SRECOVERY:
+ case AL_DP:
+ .@am=1;
case SM_ENDURE:
case KN_AUTOCOUNTER:
case KN_TWOHANDQUICKEN:
- case TMW2_DEMURE:
case AL_ANGELUS:
case CR_TRUST:
case CR_DEFENDER:
case AL_HOLYLIGHT:
case TF_DETOXIFY:
case ALL_RESURRECTION:
- case MG_SRECOVERY:
case SM_RECOVERY:
case PR_ASPERSIO:
case AB_HIGHNESSHEAL:
@@ -349,7 +368,6 @@ function script clientupdater {
case SA_FROSTWEAPON:
case SA_LIGHTNINGLOADER:
case SA_SEISMICWEAPON:
- case MG_FIREBALL:
case MG_ENERGYCOAT:
case MG_NAPALMBEAT:
case MG_FIREBOLT:
@@ -357,7 +375,10 @@ function script clientupdater {
case MG_LIGHTNINGBOLT:
case WZ_EARTHSPIKE:
mesc l("A skill has been replaced with an @@.", getitemlink(ScholarshipBadge));
- getitem ScholarshipBadge, 1;
+ if (!.@am)
+ .@am=min(5, @skilllist_lv[.@i]);
+
+ getitem ScholarshipBadge, .@am;
skill @skilllist_id[.@i], 0, 0;
getexp 5, (@skilllist_lv[.@i]-1)*1000;
break;
@@ -377,6 +398,22 @@ function script clientupdater {
break;
}
}
+ // Grant you AL_DP based on magic level
+ if (MAGIC_LVL) {
+ skill AL_DP, MAGIC_LVL, 0;
+ mesc l("You have learnt \"Divine Protection\" level @@.", MAGIC_LVL), 3;
+ }
+ // Grant you Thief Skill Tier 3
+ if (THIEF_RANK >= 3) {
+ skill(ALL_INCCARRY,1,0);
+ mesc l("You have learnt \"Increase Weight\" in Thief Skills."), 2;
+ }
+ // If you got a Scholarship Badge, you need to travel to Tulimshar.
+ // Give you a Warp Crystal to do so.
+ if (countitem(ScholarshipBadge)) {
+ getitem TulimWarpCrystal, 1;
+ mesc l("You've obtained a @@ to visit Magic Academy.", getitemlink(TulimWarpCrystal)), 1;
+ }
// Cleanup
deletearray RNGTREASURE_DATE;
}
diff --git a/npc/functions/fishing.txt b/npc/functions/fishing.txt
index 56415e6eb..52f9fcc9a 100644
--- a/npc/functions/fishing.txt
+++ b/npc/functions/fishing.txt
@@ -225,6 +225,10 @@ function script fishing {
specialeffect(.@success_fx, SELF, playerattached());
getexp getvariableofnpc(.bait_ids[@bait_d+1], .@npc$)+(BaseLevel/10), 0; // xp gain is equivalent to bait rarity + BaseLevel boost
+ // MobPt gain is equivalent to bait rarity.
+ if (MPQUEST)
+ Mobpt+=getvariableofnpc(.bait_ids[@bait_d+1], .@npc$);
+
if(!checkweight(.@fish_id, 1))
{
dispbottom l("You caught a @@ but had no room in your inventory to carry it.", getitemlink(.@fish_id));
diff --git a/npc/functions/mobpoint.txt b/npc/functions/mobpoint.txt
index 1035c62ca..8133c938f 100644
--- a/npc/functions/mobpoint.txt
+++ b/npc/functions/mobpoint.txt
@@ -19,6 +19,7 @@ function script mobpoint {
TS_MOBPT = TS_MOBPT + .@addval;
if (!MPQUEST)
return;
+
Mobpt = Mobpt + .@addval;
return;
diff --git a/npc/functions/siege.txt b/npc/functions/siege.txt
index ef14e6e51..95d16ebc2 100644
--- a/npc/functions/siege.txt
+++ b/npc/functions/siege.txt
@@ -433,9 +433,9 @@ OnRespawn:
OnSergeantDeath:
if ($GAME_STORYLINE == 2)
$MK_TEMPVAR+=1;
- getitem StrangeCoin, rand(1,5);
+ getitem StrangeCoin, rand2(1,5);
announce("##2The Monster Sergeant was defeated by "+strcharinfo(0)+"!", bc_all);
- $@EXP_EVENT=rand2(101, 103);
+ $@EXP_EVENT=rand2(1, 3);
$@EXP_EVENT_TIME=1;
donpcevent "@exprate::OnPlayerCall";
end;
@@ -443,9 +443,9 @@ OnSergeantDeath:
OnLieutenantDeath:
if ($GAME_STORYLINE == 2)
$MK_TEMPVAR+=3;
- getitem StrangeCoin, rand(5,10);
+ getitem StrangeCoin, rand2(5,10);
announce("##2The Monster Lieutenant was defeated by "+strcharinfo(0)+"!", bc_all);
- $@EXP_EVENT=rand2(104, 106);
+ $@EXP_EVENT=rand2(4, 6);
$@EXP_EVENT_TIME=1;
donpcevent "@exprate::OnPlayerCall";
end;
@@ -453,9 +453,9 @@ OnLieutenantDeath:
OnCaptainDeath:
if ($GAME_STORYLINE == 2)
$MK_TEMPVAR+=5;
- getitem StrangeCoin, rand(10,15);
+ getitem StrangeCoin, rand2(10,15);
announce("##2The Monster Captain was defeated by "+strcharinfo(0)+"!", bc_all);
- $@EXP_EVENT=rand2(107, 109);
+ $@EXP_EVENT=rand2(7, 9);
$@EXP_EVENT_TIME=1;
donpcevent "@exprate::OnPlayerCall";
end;
@@ -463,10 +463,10 @@ OnCaptainDeath:
OnColonelDeath:
if ($GAME_STORYLINE == 2)
$MK_TEMPVAR+=7;
- getitem StrangeCoin, rand(15,20);
+ getitem StrangeCoin, rand2(15,20);
$MOST_HEROIC$=strcharinfo(0);
announce("##2The Monster Colonel was defeated by "+strcharinfo(0)+"!", bc_all);
- $@EXP_EVENT=rand2(110, 112);
+ $@EXP_EVENT=rand2(10, 12);
$@EXP_EVENT_TIME=1;
donpcevent "@exprate::OnPlayerCall";
end;
@@ -474,10 +474,10 @@ OnColonelDeath:
OnGeneralDeath:
if ($GAME_STORYLINE == 2)
$MK_TEMPVAR+=9;
- getitem StrangeCoin, rand(20,25);
+ getitem StrangeCoin, rand2(20,25);
$MOST_HEROIC$=strcharinfo(0);
announce("##2The Monster General was defeated by "+strcharinfo(0)+"!", bc_all);
- $@EXP_EVENT=rand2(113, 115);
+ $@EXP_EVENT=rand2(13, 15);
$@EXP_EVENT_TIME=1;
donpcevent "@exprate::OnPlayerCall";
end;
diff --git a/npc/functions/treasure.txt b/npc/functions/treasure.txt
index 0698d56ee..83da812e4 100644
--- a/npc/functions/treasure.txt
+++ b/npc/functions/treasure.txt
@@ -49,6 +49,9 @@ function script TreasureBox {
inventoryplace .@loot, 1;
mesc l("You find @@ inside!", getitemlink(.@loot));
getitem .@loot, 1;
+ // Get Monster points for treasure hunting (20% from job level)
+ if (MPQUEST)
+ Mobpt+=(JobLevel/5);
} else {
mesc l("You find @@ inside!", l("nothing"));
}