From f81ad23427ca874babf1f0b79ebbb3c4353fb170 Mon Sep 17 00:00:00 2001 From: Adry85 <adrya85@hotmail.it> Date: Wed, 4 Oct 2017 16:32:52 +0200 Subject: [PATCH] Added Blink effect parameters. --- .../handlers/effecthandlers/Blink.java | 16 +++++++----- dist/game/data/stats/skills/00600-00699.xml | 14 ++++++----- dist/game/data/stats/skills/00800-00899.xml | 16 ++++++------ dist/game/data/stats/skills/01400-01499.xml | 25 +++++++++++-------- dist/game/data/stats/skills/07000-07099.xml | 13 +++++----- 5 files changed, 48 insertions(+), 36 deletions(-) diff --git a/dist/game/data/scripts/handlers/effecthandlers/Blink.java b/dist/game/data/scripts/handlers/effecthandlers/Blink.java index e5e3286428..a8c59e8642 100644 --- a/dist/game/data/scripts/handlers/effecthandlers/Blink.java +++ b/dist/game/data/scripts/handlers/effecthandlers/Blink.java @@ -35,20 +35,25 @@ import com.l2jserver.gameserver.util.Util; * Blink effect implementation.<br> * This class handles warp effects, disappear and quickly turn up in a near location.<br> * If geodata enabled and an object is between initial and final point, flight is stopped just before colliding with object.<br> - * Flight course and radius are set as skill properties (flyCourse and flyRadius): + * Flight course and radius are set as effect properties (flyCourse and flyRadius): * <ul> * <li>Fly Radius means the distance between starting point and final point, it must be an integer.</li> * <li>Fly Course means the movement direction: imagine a compass above player's head, making north player's heading. So if fly course is 180, player will go backwards (good for blink, e.g.).</li> * </ul> * By the way, if flyCourse = 360 or 0, player will be moved in in front of him. <br> - * If target is effector, put in XML self="1", this will make _actor = getEffector(). This, combined with target type, allows more complex actions like flying target's backwards or player's backwards. * @author DrHouse */ public final class Blink extends AbstractEffect { + private final int _flyCourse; + private final int _flyRadius; + public Blink(Condition attachCond, Condition applyCond, StatsSet set, StatsSet params) { super(attachCond, applyCond, set, params); + + _flyCourse = params.getInt("flyCourse", 0); + _flyRadius = params.getInt("flyRadius", 0); } @Override @@ -61,12 +66,11 @@ public final class Blink extends AbstractEffect public void onStart(BuffInfo info) { final L2Character effected = info.getEffected(); - final int radius = info.getSkill().getFlyRadius(); final double angle = Util.convertHeadingToDegree(effected.getHeading()); final double radian = Math.toRadians(angle); - final double course = Math.toRadians(info.getSkill().getFlyCourse()); - final int x1 = (int) (Math.cos(Math.PI + radian + course) * radius); - final int y1 = (int) (Math.sin(Math.PI + radian + course) * radius); + final double course = Math.toRadians(_flyCourse); + final int x1 = (int) (Math.cos(Math.PI + radian + course) * _flyRadius); + final int y1 = (int) (Math.sin(Math.PI + radian + course) * _flyRadius); int x = effected.getX() + x1; int y = effected.getY() + y1; diff --git a/dist/game/data/stats/skills/00600-00699.xml b/dist/game/data/stats/skills/00600-00699.xml index 32763dbdb6..266c6ae4db 100644 --- a/dist/game/data/stats/skills/00600-00699.xml +++ b/dist/game/data/stats/skills/00600-00699.xml @@ -538,22 +538,24 @@ </enchant1Effects> </skill> <skill id="628" levels="1" name="Warp"> - <!-- Confirmed CT2.5 --> + <!-- High Five Confirmed --> + <set name="affectScope" val="SINGLE" /> <set name="coolTime" val="200" /> - <set name="flyCourse" val="180" /> <!-- Teleport to Front --> - <set name="flyRadius" val="500" /> <set name="hitTime" val="100" /> <set name="icon" val="icon.skill0484" /> - <set name="isMagic" val="1" /> <!-- Magic Skill --> + <set name="isMagic" val="1" /> <set name="magicLvl" val="32" /> - <set name="mpConsume2" val="20" /> <set name="mpConsume1" val="10" /> + <set name="mpConsume2" val="20" /> <set name="operateType" val="A1" /> <set name="reuseDelay" val="10000" /> <set name="rideState" val="NONE;STRIDER;WYVERN;WOLF" /> <set name="targetType" val="SELF" /> <effects> - <effect name="Blink" /> + <effect name="Blink"> + <param flyCourse="180" /> <!-- Teleport to Front --> + <param flyRadius="500" /> + </effect> </effects> </skill> <skill id="629" levels="1" name="Rabbit Magic Eye"> diff --git a/dist/game/data/stats/skills/00800-00899.xml b/dist/game/data/stats/skills/00800-00899.xml index 5f97d268b5..1400146be2 100644 --- a/dist/game/data/stats/skills/00800-00899.xml +++ b/dist/game/data/stats/skills/00800-00899.xml @@ -1910,31 +1910,31 @@ </effects> </skill> <skill id="885" levels="1" name="Air Blink"> - <!-- Aurabird Falcon and Owl --> + <!-- High Five Confirmed --> <set name="affectLimit" val="6-12" /> - <set name="affectRange" val="100" /> + <set name="affectRange" val="150" /> + <set name="affectScope" val="POINT_BLANK" /> <set name="coolTime" val="200" /> <set name="effectPoint" val="-659" /> - <set name="flyCourse" val="0" /> <!-- Teleport to Back --> - <set name="flyRadius" val="500" /> - <set name="flyType" val="DUMMY" /> <set name="hitTime" val="100" /> <set name="icon" val="icon.skill_transform_etc" /> <set name="magicLvl" val="75" /> - <set name="mpConsume2" val="50" /> <set name="mpConsume1" val="50" /> + <set name="mpConsume2" val="50" /> <set name="operateType" val="A1" /> <set name="reuseDelay" val="23000" /> <set name="rideState" val="NONE" /> <set name="targetType" val="AURA" /> <effects> <effect name="PhysicalAttack"> - <param power="100" /> + <param power="1" /> </effect> <effect name="Stun" /> </effects> <selfEffects> - <effect name="Blink" /> + <effect name="Blink"> + <param flyRadius="1000" /> + </effect> </selfEffects> </skill> <skill id="886" levels="11" name="Air Shock Bomb"> diff --git a/dist/game/data/stats/skills/01400-01499.xml b/dist/game/data/stats/skills/01400-01499.xml index 100d2b8b5f..e4f895d81f 100644 --- a/dist/game/data/stats/skills/01400-01499.xml +++ b/dist/game/data/stats/skills/01400-01499.xml @@ -1817,8 +1817,8 @@ </effects> </skill> <skill id="1448" levels="1" name="Blink" enchantGroup1="2" enchantGroup2="2"> - <!-- Confirmed CT2.5 --> - <table name="#ench1MpConsume2"> 49 48 47 46 45 45 44 43 42 41 40 40 39 38 37 36 35 35 34 33 32 31 30 30 29 28 27 26 25 25 </table> + <!-- High Five Confirmed --> + <table name="#ench1MpConsume"> 49 48 47 46 45 45 44 43 42 41 40 40 39 38 37 36 35 35 34 33 32 31 30 30 29 28 27 26 25 25 </table> <table name="#ench2Radius"> 413 426 440 453 466 480 493 506 520 533 546 560 573 586 600 613 626 640 653 666 680 693 706 720 733 746 760 773 786 800 </table> <table name="#enchMagicLvl"> 76 76 76 77 77 77 78 78 78 79 79 79 80 80 80 81 81 81 82 82 82 83 83 83 84 84 84 85 85 85 </table> <set name="abnormalLvl" val="1" /> @@ -1828,19 +1828,18 @@ <set name="activateRate" val="99" /> <set name="affectLimit" val="6-12" /> <set name="affectRange" val="150" /> + <set name="affectScope" val="POINT_BLANK" /> <set name="basicProperty" val="CON" /> <set name="coolTime" val="200" /> <set name="effectPoint" val="-575" /> - <set name="flyCourse" val="0" /> <!-- Teleport to Back --> - <set name="flyRadius" val="400" /> <set name="hitTime" val="300" /> <set name="icon" val="icon.skill1448" /> <set name="isDebuff" val="true" /> - <set name="isMagic" val="1" /> <!-- Magic Skill --> + <set name="isMagic" val="1" /> <set name="lvlBonusRate" val="1" /> <set name="magicLvl" val="60" /> - <set name="mpConsume2" val="50" /> <set name="mpConsume1" val="50" /> + <set name="mpConsume2" val="50" /> <set name="operateType" val="A2" /> <set name="reuseDelay" val="15000" /> <set name="rideState" val="NONE;STRIDER;WYVERN;WOLF" /> @@ -1848,9 +1847,8 @@ <set name="targetType" val="AURA" /> <set name="trait" val="SHOCK" /> <enchant1 name="magicLvl" val="#enchMagicLvl" /> - <enchant1 name="mpConsume2" val="#ench1MpConsume2" /> - <enchant1 name="mpConsume1" val="#ench1MpConsume2" /> - <enchant2 name="flyRadius" val="#ench2Radius" /> + <enchant1 name="mpConsume1" val="#ench1MpConsume" /> + <enchant1 name="mpConsume2" val="#ench1MpConsume" /> <enchant2 name="magicLvl" val="#enchMagicLvl" /> <effects> <effect name="PhysicalSoulAttack"> @@ -1859,8 +1857,15 @@ <effect name="Stun" /> </effects> <selfEffects> - <effect name="Blink" /> + <effect name="Blink"> + <param flyRadius="400" /> + </effect> </selfEffects> + <enchant2selfEffects> + <effect name="Blink"> + <param flyRadius="#ench2Radius" /> + </effect> + </enchant2selfEffects> </skill> <skill id="1449" levels="1" name="Transfer Soul"> <!-- Confirmed CT2.5 --> diff --git a/dist/game/data/stats/skills/07000-07099.xml b/dist/game/data/stats/skills/07000-07099.xml index 23e6900eda..36b381648c 100644 --- a/dist/game/data/stats/skills/07000-07099.xml +++ b/dist/game/data/stats/skills/07000-07099.xml @@ -1152,7 +1152,7 @@ <set name="trait" val="SHOCK" /> </skill> <skill id="7078" levels="1" name="Test - Blink"> - <!-- Confirmed CT2.5 --> + <!-- High Five Confirmed --> <set name="abnormalLvl" val="1" /> <set name="abnormalTime" val="2" /> <set name="abnormalType" val="STUN" /> @@ -1160,16 +1160,15 @@ <set name="activateRate" val="80" /> <set name="affectLimit" val="5-12" /> <set name="affectRange" val="200" /> + <set name="affectScope" val="RANGE" /> <set name="basicProperty" val="CON" /> <set name="coolTime" val="200" /> - <set name="flyCourse" val="0" /> <!-- Teleport to Back --> - <set name="flyRadius" val="400" /> <set name="hitTime" val="300" /> - <set name="isMagic" val="1" /> <!-- Magic Skill --> + <set name="isMagic" val="1" /> <set name="lvlBonusRate" val="1" /> <set name="magicLvl" val="75" /> - <set name="mpConsume2" val="50" /> <set name="mpConsume1" val="50" /> + <set name="mpConsume2" val="50" /> <set name="operateType" val="A2" /> <set name="reuseDelay" val="5000" /> <set name="rideState" val="NONE;STRIDER;WYVERN;WOLF" /> @@ -1179,7 +1178,9 @@ <effect name="Stun" /> </effects> <selfEffects> - <effect name="Blink" /> + <effect name="Blink"> + <param flyRadius="400" /> + </effect> </selfEffects> </skill> <skill id="7079" levels="1" name="Test - Party Damage Absorb"> -- GitLab