summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFedja Beader <fedja@protonmail.ch>2025-08-17 14:16:56 +0200
committerFedja Beader <fedja@protonmail.ch>2025-08-17 14:16:56 +0200
commitd30e22379bab6b42290a32a280876828286fccbf (patch)
tree4522d959e0f5e02a9ec2b8327c94f91dc9cf9a92
parent0269be0102bd86be4d1d6b1944b0f0e73a0ed285 (diff)
downloadserverdata-fix_explosive_arrow_bonus_on_non_bow.tar.gz
serverdata-fix_explosive_arrow_bonus_on_non_bow.tar.bz2
serverdata-fix_explosive_arrow_bonus_on_non_bow.tar.xz
serverdata-fix_explosive_arrow_bonus_on_non_bow.zip
Fix (properly) explosive arrow AoE bonus on non-bow weaponsfix_explosive_arrow_bonus_on_non_bow
Reverts 96567811 and b36c5430 Testing with quivers (that have this same code) shows that their bonus stops applying as soon as player switches to non-bow weapon (equip bow, equip earrow, equip wooden sword).
-rw-r--r--db/re/item_db.conf4
-rw-r--r--npc/functions/hub.txt5
-rw-r--r--npc/functions/mobpoint.txt11
3 files changed, 3 insertions, 17 deletions
diff --git a/db/re/item_db.conf b/db/re/item_db.conf
index a036385c8..69e7f63a8 100644
--- a/db/re/item_db.conf
+++ b/db/re/item_db.conf
@@ -17345,7 +17345,9 @@ item_db: (
Loc: "EQP_AMMO"
Subtype: "A_ARROW"
Script: <"
- bonus bSplashRange,2;
+ if (getiteminfo(getequipid(EQI_HAND_R), ITEMINFO_SUBTYPE) == W_BOW) {
+ bonus bSplashRange,2;
+ }
">
},
// Important: NEVER raise bullet attack too much!
diff --git a/npc/functions/hub.txt b/npc/functions/hub.txt
index 90273b360..71b9a85a7 100644
--- a/npc/functions/hub.txt
+++ b/npc/functions/hub.txt
@@ -1528,11 +1528,6 @@ function script HUB_PCBonus {
bonus bAddMaxWeight, REBIRTH*50; // Max 250g
}
- // Double hack fix
- if (isequipped(ExplosiveArrow)) {
- if (getiteminfo(getequipid(EQI_HAND_R), ITEMINFO_SUBTYPE) != W_BOW)
- bonus bSplashRange, 2;
- }
return;
}
diff --git a/npc/functions/mobpoint.txt b/npc/functions/mobpoint.txt
index 0d9f231d2..64609420c 100644
--- a/npc/functions/mobpoint.txt
+++ b/npc/functions/mobpoint.txt
@@ -96,17 +96,6 @@ OnNPCKillEvent:
JobExp-=1;
}
- // Sanitize some bug...
- if (isequipped(ExplosiveArrow)) {
- .@wpn = getequipid(EQI_HAND_R);
- if (getiteminfo(.@wpn, ITEMINFO_SUBTYPE) != W_BOW) {
- unequipbyid(ExplosiveArrow);
- if (@hacktol)
- end; // Will not count for anything else
- @hacktol = true;
- }
- }
-
// killedrid was not set, so we skip
if (!killedrid)
end;