From 872dfa30a717384d29021d4da7cc4a03e938b0fd Mon Sep 17 00:00:00 2001 From: MobiusDev <8391001+MobiusDevelopment@users.noreply.github.com> Date: Tue, 18 Dec 2018 07:35:43 +0000 Subject: [PATCH] Weapon baseAttackAngle is relative to character position in degrees. --- .../gameserver/model/actor/stat/CharStat.java | 2 +- .../l2jmobius/gameserver/model/items/L2Weapon.java | 10 +++++----- .../gameserver/model/actor/stat/CharStat.java | 2 +- .../l2jmobius/gameserver/model/items/L2Weapon.java | 10 +++++----- .../gameserver/model/actor/stat/CharStat.java | 2 +- .../l2jmobius/gameserver/model/items/L2Weapon.java | 10 +++++----- .../gameserver/model/actor/stat/CharStat.java | 2 +- .../l2jmobius/gameserver/model/items/L2Weapon.java | 10 +++++----- .../gameserver/model/actor/stat/CharStat.java | 2 +- .../l2jmobius/gameserver/model/items/L2Weapon.java | 10 +++++----- .../gameserver/model/actor/stat/CharStat.java | 2 +- .../l2jmobius/gameserver/model/items/L2Weapon.java | 10 +++++----- .../gameserver/model/actor/stat/CharStat.java | 12 +----------- .../gameserver/model/actor/stat/PlayableStat.java | 8 ++++++++ .../l2jmobius/gameserver/model/items/L2Weapon.java | 11 +++++++++-- .../gameserver/model/actor/stat/CharStat.java | 2 +- .../l2jmobius/gameserver/model/items/L2Weapon.java | 10 +++++----- .../gameserver/model/actor/stat/CharStat.java | 2 +- .../l2jmobius/gameserver/model/items/L2Weapon.java | 10 +++++----- .../gameserver/model/actor/stat/CharStat.java | 2 +- .../l2jmobius/gameserver/model/items/L2Weapon.java | 10 +++++----- .../gameserver/model/actor/stat/CharStat.java | 2 +- .../l2jmobius/gameserver/model/items/L2Weapon.java | 10 +++++----- 23 files changed, 78 insertions(+), 73 deletions(-) diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java index a4374a2f32..d291f3a9ee 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java @@ -396,7 +396,7 @@ public class CharStat public int getPhysicalAttackAngle() { - return 120; + return 240; // 360 - 120 } /** diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/items/L2Weapon.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/items/L2Weapon.java index a94b222050..8c1420a990 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/items/L2Weapon.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/items/L2Weapon.java @@ -77,16 +77,16 @@ public final class L2Weapon extends L2Item _spiritShotCount = set.getInt("spiritshots", 0); _mpConsume = set.getInt("mp_consume", 0); _baseAttackRange = set.getInt("attack_range", 40); - final String[] damgeRange = set.getString("damage_range", "").split(";"); // 0?;0?;fan sector;base attack angle - if ((damgeRange.length > 1) && Util.isDigit(damgeRange[2]) && Util.isDigit(damgeRange[3])) + final String[] damageRange = set.getString("damage_range", "").split(";"); // 0?;0?;fan sector;base attack angle + if ((damageRange.length > 1) && Util.isDigit(damageRange[2]) && Util.isDigit(damageRange[3])) { - _baseAttackRadius = Integer.parseInt(damgeRange[2]); - _baseAttackAngle = Integer.parseInt(damgeRange[3]); + _baseAttackRadius = Integer.parseInt(damageRange[2]); + _baseAttackAngle = 360 - Integer.parseInt(damageRange[3]); } else { _baseAttackRadius = 40; - _baseAttackAngle = 120; + _baseAttackAngle = 240; // 360 - 120 } final String[] reduced_soulshots = set.getString("reduced_soulshot", "").split(","); diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java index a4374a2f32..d291f3a9ee 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java @@ -396,7 +396,7 @@ public class CharStat public int getPhysicalAttackAngle() { - return 120; + return 240; // 360 - 120 } /** diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/items/L2Weapon.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/items/L2Weapon.java index a94b222050..8c1420a990 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/items/L2Weapon.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/items/L2Weapon.java @@ -77,16 +77,16 @@ public final class L2Weapon extends L2Item _spiritShotCount = set.getInt("spiritshots", 0); _mpConsume = set.getInt("mp_consume", 0); _baseAttackRange = set.getInt("attack_range", 40); - final String[] damgeRange = set.getString("damage_range", "").split(";"); // 0?;0?;fan sector;base attack angle - if ((damgeRange.length > 1) && Util.isDigit(damgeRange[2]) && Util.isDigit(damgeRange[3])) + final String[] damageRange = set.getString("damage_range", "").split(";"); // 0?;0?;fan sector;base attack angle + if ((damageRange.length > 1) && Util.isDigit(damageRange[2]) && Util.isDigit(damageRange[3])) { - _baseAttackRadius = Integer.parseInt(damgeRange[2]); - _baseAttackAngle = Integer.parseInt(damgeRange[3]); + _baseAttackRadius = Integer.parseInt(damageRange[2]); + _baseAttackAngle = 360 - Integer.parseInt(damageRange[3]); } else { _baseAttackRadius = 40; - _baseAttackAngle = 120; + _baseAttackAngle = 240; // 360 - 120 } final String[] reduced_soulshots = set.getString("reduced_soulshot", "").split(","); diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java index a4374a2f32..d291f3a9ee 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java @@ -396,7 +396,7 @@ public class CharStat public int getPhysicalAttackAngle() { - return 120; + return 240; // 360 - 120 } /** diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/items/L2Weapon.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/items/L2Weapon.java index a94b222050..8c1420a990 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/items/L2Weapon.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/items/L2Weapon.java @@ -77,16 +77,16 @@ public final class L2Weapon extends L2Item _spiritShotCount = set.getInt("spiritshots", 0); _mpConsume = set.getInt("mp_consume", 0); _baseAttackRange = set.getInt("attack_range", 40); - final String[] damgeRange = set.getString("damage_range", "").split(";"); // 0?;0?;fan sector;base attack angle - if ((damgeRange.length > 1) && Util.isDigit(damgeRange[2]) && Util.isDigit(damgeRange[3])) + final String[] damageRange = set.getString("damage_range", "").split(";"); // 0?;0?;fan sector;base attack angle + if ((damageRange.length > 1) && Util.isDigit(damageRange[2]) && Util.isDigit(damageRange[3])) { - _baseAttackRadius = Integer.parseInt(damgeRange[2]); - _baseAttackAngle = Integer.parseInt(damgeRange[3]); + _baseAttackRadius = Integer.parseInt(damageRange[2]); + _baseAttackAngle = 360 - Integer.parseInt(damageRange[3]); } else { _baseAttackRadius = 40; - _baseAttackAngle = 120; + _baseAttackAngle = 240; // 360 - 120 } final String[] reduced_soulshots = set.getString("reduced_soulshot", "").split(","); diff --git a/L2J_Mobius_4.0_GrandCrusade/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java b/L2J_Mobius_4.0_GrandCrusade/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java index a4374a2f32..d291f3a9ee 100644 --- a/L2J_Mobius_4.0_GrandCrusade/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java +++ b/L2J_Mobius_4.0_GrandCrusade/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java @@ -396,7 +396,7 @@ public class CharStat public int getPhysicalAttackAngle() { - return 120; + return 240; // 360 - 120 } /** diff --git a/L2J_Mobius_4.0_GrandCrusade/java/com/l2jmobius/gameserver/model/items/L2Weapon.java b/L2J_Mobius_4.0_GrandCrusade/java/com/l2jmobius/gameserver/model/items/L2Weapon.java index a94b222050..8c1420a990 100644 --- a/L2J_Mobius_4.0_GrandCrusade/java/com/l2jmobius/gameserver/model/items/L2Weapon.java +++ b/L2J_Mobius_4.0_GrandCrusade/java/com/l2jmobius/gameserver/model/items/L2Weapon.java @@ -77,16 +77,16 @@ public final class L2Weapon extends L2Item _spiritShotCount = set.getInt("spiritshots", 0); _mpConsume = set.getInt("mp_consume", 0); _baseAttackRange = set.getInt("attack_range", 40); - final String[] damgeRange = set.getString("damage_range", "").split(";"); // 0?;0?;fan sector;base attack angle - if ((damgeRange.length > 1) && Util.isDigit(damgeRange[2]) && Util.isDigit(damgeRange[3])) + final String[] damageRange = set.getString("damage_range", "").split(";"); // 0?;0?;fan sector;base attack angle + if ((damageRange.length > 1) && Util.isDigit(damageRange[2]) && Util.isDigit(damageRange[3])) { - _baseAttackRadius = Integer.parseInt(damgeRange[2]); - _baseAttackAngle = Integer.parseInt(damgeRange[3]); + _baseAttackRadius = Integer.parseInt(damageRange[2]); + _baseAttackAngle = 360 - Integer.parseInt(damageRange[3]); } else { _baseAttackRadius = 40; - _baseAttackAngle = 120; + _baseAttackAngle = 240; // 360 - 120 } final String[] reduced_soulshots = set.getString("reduced_soulshot", "").split(","); diff --git a/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java b/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java index a4374a2f32..d291f3a9ee 100644 --- a/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java +++ b/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java @@ -396,7 +396,7 @@ public class CharStat public int getPhysicalAttackAngle() { - return 120; + return 240; // 360 - 120 } /** diff --git a/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/model/items/L2Weapon.java b/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/model/items/L2Weapon.java index a94b222050..8c1420a990 100644 --- a/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/model/items/L2Weapon.java +++ b/L2J_Mobius_5.0_Salvation/java/com/l2jmobius/gameserver/model/items/L2Weapon.java @@ -77,16 +77,16 @@ public final class L2Weapon extends L2Item _spiritShotCount = set.getInt("spiritshots", 0); _mpConsume = set.getInt("mp_consume", 0); _baseAttackRange = set.getInt("attack_range", 40); - final String[] damgeRange = set.getString("damage_range", "").split(";"); // 0?;0?;fan sector;base attack angle - if ((damgeRange.length > 1) && Util.isDigit(damgeRange[2]) && Util.isDigit(damgeRange[3])) + final String[] damageRange = set.getString("damage_range", "").split(";"); // 0?;0?;fan sector;base attack angle + if ((damageRange.length > 1) && Util.isDigit(damageRange[2]) && Util.isDigit(damageRange[3])) { - _baseAttackRadius = Integer.parseInt(damgeRange[2]); - _baseAttackAngle = Integer.parseInt(damgeRange[3]); + _baseAttackRadius = Integer.parseInt(damageRange[2]); + _baseAttackAngle = 360 - Integer.parseInt(damageRange[3]); } else { _baseAttackRadius = 40; - _baseAttackAngle = 120; + _baseAttackAngle = 240; // 360 - 120 } final String[] reduced_soulshots = set.getString("reduced_soulshot", "").split(","); diff --git a/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java b/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java index a4374a2f32..d291f3a9ee 100644 --- a/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java +++ b/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java @@ -396,7 +396,7 @@ public class CharStat public int getPhysicalAttackAngle() { - return 120; + return 240; // 360 - 120 } /** diff --git a/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/model/items/L2Weapon.java b/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/model/items/L2Weapon.java index a94b222050..8c1420a990 100644 --- a/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/model/items/L2Weapon.java +++ b/L2J_Mobius_5.5_EtinasFate/java/com/l2jmobius/gameserver/model/items/L2Weapon.java @@ -77,16 +77,16 @@ public final class L2Weapon extends L2Item _spiritShotCount = set.getInt("spiritshots", 0); _mpConsume = set.getInt("mp_consume", 0); _baseAttackRange = set.getInt("attack_range", 40); - final String[] damgeRange = set.getString("damage_range", "").split(";"); // 0?;0?;fan sector;base attack angle - if ((damgeRange.length > 1) && Util.isDigit(damgeRange[2]) && Util.isDigit(damgeRange[3])) + final String[] damageRange = set.getString("damage_range", "").split(";"); // 0?;0?;fan sector;base attack angle + if ((damageRange.length > 1) && Util.isDigit(damageRange[2]) && Util.isDigit(damageRange[3])) { - _baseAttackRadius = Integer.parseInt(damgeRange[2]); - _baseAttackAngle = Integer.parseInt(damgeRange[3]); + _baseAttackRadius = Integer.parseInt(damageRange[2]); + _baseAttackAngle = 360 - Integer.parseInt(damageRange[3]); } else { _baseAttackRadius = 40; - _baseAttackAngle = 120; + _baseAttackAngle = 240; // 360 - 120 } final String[] reduced_soulshots = set.getString("reduced_soulshot", "").split(","); diff --git a/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java b/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java index 165388445d..f8b80fa099 100644 --- a/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java +++ b/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java @@ -569,17 +569,7 @@ public class CharStat public int getPhysicalAttackAngle() { - final L2Weapon weapon = _activeChar.getActiveWeaponItem(); - final int baseAttackAngle; - if (weapon != null) - { - baseAttackAngle = weapon.getBaseAttackAngle(); - } - else - { - baseAttackAngle = 120; - } - return baseAttackAngle; + return 240; // 360 - 120 } /** diff --git a/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/actor/stat/PlayableStat.java b/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/actor/stat/PlayableStat.java index ec40dfdecd..3533de5c54 100644 --- a/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/actor/stat/PlayableStat.java +++ b/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/actor/stat/PlayableStat.java @@ -28,6 +28,7 @@ import com.l2jmobius.gameserver.model.actor.instance.L2PetInstance; import com.l2jmobius.gameserver.model.events.EventDispatcher; import com.l2jmobius.gameserver.model.events.impl.character.playable.OnPlayableExpChanged; import com.l2jmobius.gameserver.model.events.returns.TerminateReturn; +import com.l2jmobius.gameserver.model.items.L2Weapon; import com.l2jmobius.gameserver.model.zone.ZoneId; import com.l2jmobius.gameserver.model.zone.type.L2SwampZone; @@ -251,4 +252,11 @@ public class PlayableStat extends CharStat { return ExperienceData.getInstance().getMaxLevel(); } + + @Override + public int getPhysicalAttackAngle() + { + final L2Weapon weapon = getActiveChar().getActiveWeaponItem(); + return weapon != null ? weapon.getBaseAttackAngle() : super.getPhysicalAttackAngle(); + } } diff --git a/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/items/L2Weapon.java b/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/items/L2Weapon.java index 7fc584afe8..400b2bfbae 100644 --- a/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/items/L2Weapon.java +++ b/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/items/L2Weapon.java @@ -89,8 +89,15 @@ public final class L2Weapon extends L2Item _rndDam = set.getInt("random_damage", 0); _mpConsume = set.getInt("mp_consume", 0); _baseAttackRange = set.getInt("attack_range", 40); - final String[] damgeRange = set.getString("damage_range", "").split(";"); // 0?;0?;fan sector;base attack angle - _baseAttackAngle = (damgeRange.length > 1) && Util.isDigit(damgeRange[3]) ? Integer.parseInt(damgeRange[3]) : 120; + final String[] damageRange = set.getString("damage_range", "").split(";"); // 0?;0?;fan sector;base attack angle + if ((damageRange.length > 1) && Util.isDigit(damageRange[3])) + { + _baseAttackAngle = 360 - Integer.parseInt(damageRange[3]); + } + else + { + _baseAttackAngle = 240; // 360 - 120 + } final String[] reduced_soulshots = set.getString("reduced_soulshot", "").split(","); _reducedSoulshotChance = (reduced_soulshots.length == 2) ? Integer.parseInt(reduced_soulshots[0]) : 0; diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java index da65da604f..553a7d307f 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java @@ -386,7 +386,7 @@ public class CharStat public int getPhysicalAttackAngle() { - return 120; + return 240; // 360 - 120 } /** diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/items/L2Weapon.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/items/L2Weapon.java index a94b222050..8c1420a990 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/items/L2Weapon.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/items/L2Weapon.java @@ -77,16 +77,16 @@ public final class L2Weapon extends L2Item _spiritShotCount = set.getInt("spiritshots", 0); _mpConsume = set.getInt("mp_consume", 0); _baseAttackRange = set.getInt("attack_range", 40); - final String[] damgeRange = set.getString("damage_range", "").split(";"); // 0?;0?;fan sector;base attack angle - if ((damgeRange.length > 1) && Util.isDigit(damgeRange[2]) && Util.isDigit(damgeRange[3])) + final String[] damageRange = set.getString("damage_range", "").split(";"); // 0?;0?;fan sector;base attack angle + if ((damageRange.length > 1) && Util.isDigit(damageRange[2]) && Util.isDigit(damageRange[3])) { - _baseAttackRadius = Integer.parseInt(damgeRange[2]); - _baseAttackAngle = Integer.parseInt(damgeRange[3]); + _baseAttackRadius = Integer.parseInt(damageRange[2]); + _baseAttackAngle = 360 - Integer.parseInt(damageRange[3]); } else { _baseAttackRadius = 40; - _baseAttackAngle = 120; + _baseAttackAngle = 240; // 360 - 120 } final String[] reduced_soulshots = set.getString("reduced_soulshot", "").split(","); diff --git a/L2J_Mobius_Classic_2.1_Zaken/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java b/L2J_Mobius_Classic_2.1_Zaken/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java index da65da604f..553a7d307f 100644 --- a/L2J_Mobius_Classic_2.1_Zaken/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java +++ b/L2J_Mobius_Classic_2.1_Zaken/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java @@ -386,7 +386,7 @@ public class CharStat public int getPhysicalAttackAngle() { - return 120; + return 240; // 360 - 120 } /** diff --git a/L2J_Mobius_Classic_2.1_Zaken/java/com/l2jmobius/gameserver/model/items/L2Weapon.java b/L2J_Mobius_Classic_2.1_Zaken/java/com/l2jmobius/gameserver/model/items/L2Weapon.java index a94b222050..8c1420a990 100644 --- a/L2J_Mobius_Classic_2.1_Zaken/java/com/l2jmobius/gameserver/model/items/L2Weapon.java +++ b/L2J_Mobius_Classic_2.1_Zaken/java/com/l2jmobius/gameserver/model/items/L2Weapon.java @@ -77,16 +77,16 @@ public final class L2Weapon extends L2Item _spiritShotCount = set.getInt("spiritshots", 0); _mpConsume = set.getInt("mp_consume", 0); _baseAttackRange = set.getInt("attack_range", 40); - final String[] damgeRange = set.getString("damage_range", "").split(";"); // 0?;0?;fan sector;base attack angle - if ((damgeRange.length > 1) && Util.isDigit(damgeRange[2]) && Util.isDigit(damgeRange[3])) + final String[] damageRange = set.getString("damage_range", "").split(";"); // 0?;0?;fan sector;base attack angle + if ((damageRange.length > 1) && Util.isDigit(damageRange[2]) && Util.isDigit(damageRange[3])) { - _baseAttackRadius = Integer.parseInt(damgeRange[2]); - _baseAttackAngle = Integer.parseInt(damgeRange[3]); + _baseAttackRadius = Integer.parseInt(damageRange[2]); + _baseAttackAngle = 360 - Integer.parseInt(damageRange[3]); } else { _baseAttackRadius = 40; - _baseAttackAngle = 120; + _baseAttackAngle = 240; // 360 - 120 } final String[] reduced_soulshots = set.getString("reduced_soulshot", "").split(","); diff --git a/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java b/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java index da65da604f..553a7d307f 100644 --- a/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java +++ b/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java @@ -386,7 +386,7 @@ public class CharStat public int getPhysicalAttackAngle() { - return 120; + return 240; // 360 - 120 } /** diff --git a/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/model/items/L2Weapon.java b/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/model/items/L2Weapon.java index a94b222050..8c1420a990 100644 --- a/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/model/items/L2Weapon.java +++ b/L2J_Mobius_Classic_2.2_Antharas/java/com/l2jmobius/gameserver/model/items/L2Weapon.java @@ -77,16 +77,16 @@ public final class L2Weapon extends L2Item _spiritShotCount = set.getInt("spiritshots", 0); _mpConsume = set.getInt("mp_consume", 0); _baseAttackRange = set.getInt("attack_range", 40); - final String[] damgeRange = set.getString("damage_range", "").split(";"); // 0?;0?;fan sector;base attack angle - if ((damgeRange.length > 1) && Util.isDigit(damgeRange[2]) && Util.isDigit(damgeRange[3])) + final String[] damageRange = set.getString("damage_range", "").split(";"); // 0?;0?;fan sector;base attack angle + if ((damageRange.length > 1) && Util.isDigit(damageRange[2]) && Util.isDigit(damageRange[3])) { - _baseAttackRadius = Integer.parseInt(damgeRange[2]); - _baseAttackAngle = Integer.parseInt(damgeRange[3]); + _baseAttackRadius = Integer.parseInt(damageRange[2]); + _baseAttackAngle = 360 - Integer.parseInt(damageRange[3]); } else { _baseAttackRadius = 40; - _baseAttackAngle = 120; + _baseAttackAngle = 240; // 360 - 120 } final String[] reduced_soulshots = set.getString("reduced_soulshot", "").split(","); diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java b/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java index da65da604f..553a7d307f 100644 --- a/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java +++ b/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java @@ -386,7 +386,7 @@ public class CharStat public int getPhysicalAttackAngle() { - return 120; + return 240; // 360 - 120 } /** diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/model/items/L2Weapon.java b/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/model/items/L2Weapon.java index a94b222050..8c1420a990 100644 --- a/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/model/items/L2Weapon.java +++ b/L2J_Mobius_Classic_2.3_SevenSigns/java/com/l2jmobius/gameserver/model/items/L2Weapon.java @@ -77,16 +77,16 @@ public final class L2Weapon extends L2Item _spiritShotCount = set.getInt("spiritshots", 0); _mpConsume = set.getInt("mp_consume", 0); _baseAttackRange = set.getInt("attack_range", 40); - final String[] damgeRange = set.getString("damage_range", "").split(";"); // 0?;0?;fan sector;base attack angle - if ((damgeRange.length > 1) && Util.isDigit(damgeRange[2]) && Util.isDigit(damgeRange[3])) + final String[] damageRange = set.getString("damage_range", "").split(";"); // 0?;0?;fan sector;base attack angle + if ((damageRange.length > 1) && Util.isDigit(damageRange[2]) && Util.isDigit(damageRange[3])) { - _baseAttackRadius = Integer.parseInt(damgeRange[2]); - _baseAttackAngle = Integer.parseInt(damgeRange[3]); + _baseAttackRadius = Integer.parseInt(damageRange[2]); + _baseAttackAngle = 360 - Integer.parseInt(damageRange[3]); } else { _baseAttackRadius = 40; - _baseAttackAngle = 120; + _baseAttackAngle = 240; // 360 - 120 } final String[] reduced_soulshots = set.getString("reduced_soulshot", "").split(",");