Channeling skills rework.
Adapted from: L2jUnity free files.
This commit is contained in:
@@ -2291,8 +2291,8 @@
|
||||
<rideState>NONE;STRIDER;WYVERN;WOLF</rideState>
|
||||
<basicProperty>NONE</basicProperty>
|
||||
<magicCriticalRate>5</magicCriticalRate>
|
||||
<channelingTickInitialDelay>3600</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>3.6</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<targetType>OTHERS</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<conditions>
|
||||
@@ -2318,8 +2318,8 @@
|
||||
<rideState>NONE;STRIDER;WYVERN;WOLF</rideState>
|
||||
<basicProperty>NONE</basicProperty>
|
||||
<magicCriticalRate>5</magicCriticalRate>
|
||||
<channelingTickInitialDelay>3600</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>3.6</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<targetType>OTHERS</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<conditions>
|
||||
|
@@ -2168,7 +2168,7 @@
|
||||
<reuseDelay>1000</reuseDelay>
|
||||
<rideState>NONE;STRIDER;WYVERN;WOLF</rideState>
|
||||
<magicCriticalRate>5</magicCriticalRate>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>0</channelingTickInterval>
|
||||
<targetType>ADVANCE_BASE</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
|
@@ -870,8 +870,8 @@
|
||||
<affectRange>200</affectRange>
|
||||
<blockedInOlympiad>true</blockedInOlympiad>
|
||||
<castRange>900</castRange>
|
||||
<channelingSkillId>1419</channelingSkillId>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<effectPoint>-676</effectPoint>
|
||||
<attributeType>FIRE</attributeType>
|
||||
<attributeValue>20</attributeValue>
|
||||
@@ -891,23 +891,22 @@
|
||||
<magicCriticalRate>5</magicCriticalRate>
|
||||
<hitCancelTime>4</hitCancelTime>
|
||||
<effectRange>1000</effectRange>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<targetType>GROUND</targetType>
|
||||
<affectScope>POINT_BLANK</affectScope>
|
||||
<affectObject>NOT_FRIEND</affectObject>
|
||||
<channelingEffects>
|
||||
<effect name="MagicalAttack">
|
||||
<power>500</power>
|
||||
</effect>
|
||||
</channelingEffects>
|
||||
<targetType>GROUND</targetType>
|
||||
<affectScope>POINT_BLANK</affectScope>
|
||||
<affectObject>NOT_FRIEND</affectObject>
|
||||
</skill>
|
||||
<skill id="1420" toLevel="1" name="Cyclone">
|
||||
<affectLimit>15-25</affectLimit>
|
||||
<affectRange>200</affectRange>
|
||||
<blockedInOlympiad>true</blockedInOlympiad>
|
||||
<castRange>900</castRange>
|
||||
<channelingSkillId>1420</channelingSkillId>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<effectPoint>-676</effectPoint>
|
||||
<attributeType>WIND</attributeType>
|
||||
<attributeValue>20</attributeValue>
|
||||
@@ -927,23 +926,22 @@
|
||||
<magicCriticalRate>5</magicCriticalRate>
|
||||
<hitCancelTime>4</hitCancelTime>
|
||||
<effectRange>1000</effectRange>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<targetType>GROUND</targetType>
|
||||
<affectScope>POINT_BLANK</affectScope>
|
||||
<affectObject>NOT_FRIEND</affectObject>
|
||||
<channelingEffects>
|
||||
<effect name="MagicalAttack">
|
||||
<power>500</power>
|
||||
</effect>
|
||||
</channelingEffects>
|
||||
<targetType>GROUND</targetType>
|
||||
<affectScope>POINT_BLANK</affectScope>
|
||||
<affectObject>NOT_FRIEND</affectObject>
|
||||
</skill>
|
||||
<skill id="1421" toLevel="1" name="Raging Waves">
|
||||
<affectLimit>15-25</affectLimit>
|
||||
<affectRange>200</affectRange>
|
||||
<blockedInOlympiad>true</blockedInOlympiad>
|
||||
<castRange>900</castRange>
|
||||
<channelingSkillId>1421</channelingSkillId>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<effectPoint>-676</effectPoint>
|
||||
<attributeType>WATER</attributeType>
|
||||
<attributeValue>20</attributeValue>
|
||||
@@ -963,15 +961,14 @@
|
||||
<magicCriticalRate>5</magicCriticalRate>
|
||||
<hitCancelTime>4</hitCancelTime>
|
||||
<effectRange>1000</effectRange>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<targetType>GROUND</targetType>
|
||||
<affectScope>POINT_BLANK</affectScope>
|
||||
<affectObject>NOT_FRIEND</affectObject>
|
||||
<channelingEffects>
|
||||
<effect name="MagicalAttack">
|
||||
<power>500</power>
|
||||
</effect>
|
||||
</channelingEffects>
|
||||
<targetType>GROUND</targetType>
|
||||
<affectScope>POINT_BLANK</affectScope>
|
||||
<affectObject>NOT_FRIEND</affectObject>
|
||||
</skill>
|
||||
<skill id="1422" toLevel="1" name="Day of Doom">
|
||||
<blockedInOlympiad>true</blockedInOlympiad>
|
||||
@@ -1021,8 +1018,8 @@
|
||||
<affectRange>200</affectRange>
|
||||
<blockedInOlympiad>true</blockedInOlympiad>
|
||||
<castRange>900</castRange>
|
||||
<channelingSkillId>1423</channelingSkillId>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<effectPoint>-676</effectPoint>
|
||||
<attributeType>DARK</attributeType>
|
||||
<attributeValue>20</attributeValue>
|
||||
@@ -1042,15 +1039,14 @@
|
||||
<magicCriticalRate>5</magicCriticalRate>
|
||||
<hitCancelTime>4</hitCancelTime>
|
||||
<effectRange>1000</effectRange>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<targetType>GROUND</targetType>
|
||||
<affectScope>POINT_BLANK</affectScope>
|
||||
<affectObject>NOT_FRIEND</affectObject>
|
||||
<channelingEffects>
|
||||
<effect name="MagicalAttack">
|
||||
<power>500</power>
|
||||
</effect>
|
||||
</channelingEffects>
|
||||
<targetType>GROUND</targetType>
|
||||
<affectScope>POINT_BLANK</affectScope>
|
||||
<affectObject>NOT_FRIEND</affectObject>
|
||||
</skill>
|
||||
<skill id="1424" toLevel="1" name="Anti-summoning Field">
|
||||
<blockedInOlympiad>true</blockedInOlympiad>
|
||||
@@ -3538,7 +3534,8 @@
|
||||
<!-- Confirmed CT2.5 -->
|
||||
<!-- Kamael Final Form Skill -->
|
||||
<castRange>900</castRange>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<effectPoint>-676</effectPoint>
|
||||
<effectRange>1000</effectRange>
|
||||
<attributeType>DARK</attributeType>
|
||||
@@ -3555,14 +3552,13 @@
|
||||
<staticReuse>true</staticReuse>
|
||||
<magicCriticalRate>5</magicCriticalRate>
|
||||
<hitCancelTime>4</hitCancelTime>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<targetType>ENEMY</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<channelingEffects>
|
||||
<effect name="MagicalAttack">
|
||||
<power>30</power>
|
||||
</effect>
|
||||
</channelingEffects>
|
||||
<targetType>ENEMY</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
</skill>
|
||||
<skill id="1473" toLevel="1" name="Change Weapon">
|
||||
<!-- Confirmed CT2.5 -->
|
||||
|
@@ -2989,7 +2989,8 @@
|
||||
<!-- Confirmed CT2.5 -->
|
||||
<!-- Kamael Final Form Skill -->
|
||||
<castRange>900</castRange>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<effectPoint>-676</effectPoint>
|
||||
<effectRange>1000</effectRange>
|
||||
<attributeType>DARK</attributeType>
|
||||
@@ -3006,14 +3007,13 @@
|
||||
<staticReuse>true</staticReuse>
|
||||
<magicCriticalRate>5</magicCriticalRate>
|
||||
<hitCancelTime>4</hitCancelTime>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<targetType>ENEMY</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<channelingEffects>
|
||||
<effect name="MagicalAttack">
|
||||
<power>30</power>
|
||||
</effect>
|
||||
</channelingEffects>
|
||||
<targetType>ENEMY</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
</skill>
|
||||
<skill id="1546" toLevel="1" name="Strider Fear">
|
||||
<!-- Confirmed CT2.5 -->
|
||||
|
@@ -242,7 +242,7 @@
|
||||
<reuseDelay>5000</reuseDelay>
|
||||
<rideState>NONE;STRIDER;WYVERN;WOLF</rideState>
|
||||
<magicCriticalRate>5</magicCriticalRate>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>0</channelingTickInterval>
|
||||
<targetType>FORTRESS_FLAGPOLE</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
|
@@ -1135,7 +1135,7 @@
|
||||
<skill id="3626" toLevel="1" name="Kabokula">
|
||||
<castRange>300</castRange>
|
||||
<channelingSkillId>5106</channelingSkillId>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<effectPoint>-100</effectPoint>
|
||||
<effectRange>500</effectRange>
|
||||
<hitTime>25000</hitTime>
|
||||
@@ -1150,7 +1150,7 @@
|
||||
<rideState>NONE;STRIDER;WYVERN;WOLF</rideState>
|
||||
<basicProperty>NONE</basicProperty>
|
||||
<magicCriticalRate>5</magicCriticalRate>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingStart>1</channelingStart>
|
||||
<mpPerChanneling>15</mpPerChanneling>
|
||||
<targetType>ENEMY_ONLY</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
@@ -1167,7 +1167,7 @@
|
||||
<skill id="3627" toLevel="1" name="Tapirawa">
|
||||
<castRange>300</castRange>
|
||||
<channelingSkillId>5107</channelingSkillId>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<effectPoint>-100</effectPoint>
|
||||
<effectRange>500</effectRange>
|
||||
<hitTime>25000</hitTime>
|
||||
@@ -1182,7 +1182,7 @@
|
||||
<rideState>NONE;STRIDER;WYVERN;WOLF</rideState>
|
||||
<basicProperty>NONE</basicProperty>
|
||||
<magicCriticalRate>5</magicCriticalRate>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingStart>1</channelingStart>
|
||||
<mpPerChanneling>15</mpPerChanneling>
|
||||
<targetType>ENEMY_ONLY</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
@@ -1199,7 +1199,7 @@
|
||||
<skill id="3628" toLevel="1" name="Shabonoba">
|
||||
<castRange>300</castRange>
|
||||
<channelingSkillId>5108</channelingSkillId>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<effectPoint>-100</effectPoint>
|
||||
<effectRange>500</effectRange>
|
||||
<hitTime>25000</hitTime>
|
||||
@@ -1214,7 +1214,7 @@
|
||||
<rideState>NONE;STRIDER;WYVERN;WOLF</rideState>
|
||||
<basicProperty>NONE</basicProperty>
|
||||
<magicCriticalRate>5</magicCriticalRate>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingStart>1</channelingStart>
|
||||
<mpPerChanneling>15</mpPerChanneling>
|
||||
<targetType>ENEMY_ONLY</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
|
@@ -4527,7 +4527,7 @@
|
||||
<skill id="5396" toLevel="1" name="Spell Stance">
|
||||
<castRange>400</castRange>
|
||||
<channelingSkillId>5397</channelingSkillId>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<hitTime>15000</hitTime>
|
||||
<isMagic>2</isMagic> <!-- Static Skill -->
|
||||
<operateType>CA5</operateType>
|
||||
@@ -4536,7 +4536,7 @@
|
||||
<magicCriticalRate>-5</magicCriticalRate>
|
||||
<effectRange>600</effectRange>
|
||||
<magicLvl>77</magicLvl>
|
||||
<channelingTickInitialDelay>3600</channelingTickInitialDelay>
|
||||
<channelingStart>3.6</channelingStart>
|
||||
<targetType>OTHERS</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
</skill>
|
||||
|
@@ -2103,8 +2103,8 @@
|
||||
<rideState>NONE;STRIDER;WYVERN;WOLF</rideState>
|
||||
<basicProperty>NONE</basicProperty>
|
||||
<magicCriticalRate>-5</magicCriticalRate>
|
||||
<channelingTickInitialDelay>3600</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>3.6</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<targetType>TARGET</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<conditions>
|
||||
|
@@ -372,11 +372,16 @@
|
||||
<attributeType>FIRE</attributeType>
|
||||
<attributeValue>180</attributeValue>
|
||||
<affectRange>250</affectRange>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<targetType>SELF</targetType>
|
||||
<affectScope>POINT_BLANK</affectScope>
|
||||
<affectObject>NOT_FRIEND</affectObject>
|
||||
<channelingEffects>
|
||||
<effect name="MagicalAttack">
|
||||
<power>100</power>
|
||||
</effect>
|
||||
</channelingEffects>
|
||||
</skill>
|
||||
<skill id="5514" toLevel="1" name="Water Taint">
|
||||
<effectPoint>-1063</effectPoint>
|
||||
@@ -388,11 +393,16 @@
|
||||
<attributeType>WATER</attributeType>
|
||||
<attributeValue>180</attributeValue>
|
||||
<affectRange>250</affectRange>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<targetType>SELF</targetType>
|
||||
<affectScope>POINT_BLANK</affectScope>
|
||||
<affectObject>NOT_FRIEND</affectObject>
|
||||
<channelingEffects>
|
||||
<effect name="MagicalAttack">
|
||||
<power>30</power>
|
||||
</effect>
|
||||
</channelingEffects>
|
||||
</skill>
|
||||
<skill id="5515" toLevel="1" name="Wind Taint">
|
||||
<effectPoint>-1063</effectPoint>
|
||||
@@ -404,11 +414,16 @@
|
||||
<attributeType>WIND</attributeType>
|
||||
<attributeValue>180</attributeValue>
|
||||
<affectRange>250</affectRange>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<targetType>SELF</targetType>
|
||||
<affectScope>POINT_BLANK</affectScope>
|
||||
<affectObject>NOT_FRIEND</affectObject>
|
||||
<channelingEffects>
|
||||
<effect name="MagicalAttack">
|
||||
<power>30</power>
|
||||
</effect>
|
||||
</channelingEffects>
|
||||
</skill>
|
||||
<skill id="5516" toLevel="1" name="Earth Taint">
|
||||
<effectPoint>-1063</effectPoint>
|
||||
@@ -420,11 +435,16 @@
|
||||
<attributeType>EARTH</attributeType>
|
||||
<attributeValue>180</attributeValue>
|
||||
<affectRange>250</affectRange>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<targetType>SELF</targetType>
|
||||
<affectScope>POINT_BLANK</affectScope>
|
||||
<affectObject>NOT_FRIEND</affectObject>
|
||||
<channelingEffects>
|
||||
<effect name="MagicalAttack">
|
||||
<power>30</power>
|
||||
</effect>
|
||||
</channelingEffects>
|
||||
</skill>
|
||||
<skill id="5517" toLevel="1" name="Nurture">
|
||||
<abnormalLvl>1</abnormalLvl>
|
||||
|
@@ -311,9 +311,9 @@
|
||||
<magicCriticalRate>-5</magicCriticalRate>
|
||||
<effectRange>1700</effectRange>
|
||||
<channelingSkillId>5713</channelingSkillId>
|
||||
<channelingTickInitialDelay>3600</channelingTickInitialDelay>
|
||||
<channelingStart>3.6</channelingStart>
|
||||
<mpPerChanneling>15</mpPerChanneling>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<targetType>OTHERS</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<effects>
|
||||
@@ -2233,9 +2233,9 @@
|
||||
<magicCriticalRate>-5</magicCriticalRate>
|
||||
<effectRange>600</effectRange>
|
||||
<channelingSkillId>5713</channelingSkillId>
|
||||
<channelingTickInitialDelay>3600</channelingTickInitialDelay>
|
||||
<channelingStart>3.6</channelingStart>
|
||||
<mpPerChanneling>15</mpPerChanneling>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<castRange>400</castRange>
|
||||
<targetType>OTHERS</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
@@ -2777,8 +2777,8 @@
|
||||
<rideState>NONE;STRIDER;WYVERN;WOLF</rideState>
|
||||
<effectPoint>-1</effectPoint>
|
||||
<magicCriticalRate>-5</magicCriticalRate>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingTickInterval>5800</channelingTickInterval>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>5.8</channelingTickInterval>
|
||||
<targetType>TARGET</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<conditions>
|
||||
|
@@ -1358,8 +1358,8 @@
|
||||
<hitCancelTime>0</hitCancelTime>
|
||||
<effectRange>1400</effectRange>
|
||||
<channelingSkillId>14559</channelingSkillId>
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<icon>icon.skill1042</icon>
|
||||
<hitTime>10000</hitTime>
|
||||
<reuseDelay>30000</reuseDelay>
|
||||
|
@@ -944,7 +944,7 @@
|
||||
<hitCancelTime>0</hitCancelTime>
|
||||
<effectRange>2000</effectRange>
|
||||
<magicLvl>85</magicLvl>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>0</channelingTickInterval>
|
||||
<hitTime>90000</hitTime>
|
||||
<castRange>2000</castRange>
|
||||
|
@@ -1783,7 +1783,7 @@
|
||||
<attributeType>FIRE</attributeType>
|
||||
<attributeValue>20</attributeValue>
|
||||
<affectRange>200</affectRange>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>0</channelingTickInterval>
|
||||
<targetType>SELF</targetType>
|
||||
<affectScope>POINT_BLANK</affectScope>
|
||||
|
@@ -2559,23 +2559,19 @@
|
||||
<attributeType>FIRE</attributeType>
|
||||
<attributeValue>20</attributeValue>
|
||||
<affectRange>150</affectRange>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingStart>1</channelingStart>
|
||||
<affectLimit>10-10</affectLimit>
|
||||
<mpPerChanneling>72</mpPerChanneling>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<isMagic>1</isMagic>
|
||||
<targetType>ENEMY</targetType>
|
||||
<affectScope>RANGE</affectScope>
|
||||
<affectObject>NOT_FRIEND</affectObject>
|
||||
<effects>
|
||||
<channelingEffects>
|
||||
<effect name="MagicalAttack">
|
||||
<power>117</power>
|
||||
</effect>
|
||||
<effect name="DamOverTime">
|
||||
<power>111</power>
|
||||
<ticks>3</ticks>
|
||||
</effect>
|
||||
</effects>
|
||||
</channelingEffects>
|
||||
</skill>
|
||||
<skill id="8582" toLevel="1" name="Dark Vortex">
|
||||
<!-- Glory Days Confirmed -->
|
||||
@@ -2765,19 +2761,19 @@
|
||||
<effectRange>1100</effectRange>
|
||||
<magicLvl>81</magicLvl>
|
||||
<affectRange>150</affectRange>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingStart>1</channelingStart>
|
||||
<affectLimit>10-10</affectLimit>
|
||||
<mpPerChanneling>72</mpPerChanneling>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<isMagic>1</isMagic>
|
||||
<targetType>ENEMY</targetType>
|
||||
<affectScope>RANGE</affectScope>
|
||||
<affectObject>NOT_FRIEND</affectObject>
|
||||
<effects>
|
||||
<channelingEffects>
|
||||
<effect name="MagicalAttack">
|
||||
<power>117</power>
|
||||
</effect>
|
||||
</effects>
|
||||
</channelingEffects>
|
||||
</skill>
|
||||
<skill id="8587" toLevel="1" name="Wind Vortex">
|
||||
<!-- Glory Days Confirmed -->
|
||||
|
@@ -2297,9 +2297,8 @@
|
||||
<!-- Updated to IO -->
|
||||
<!-- For 10 seconds, drains target's life with 25 Power per second. Absorbs 100% of the damage inflicted as HP. -->
|
||||
<icon>icon.skill11030</icon>
|
||||
<channelingSkillId>11030</channelingSkillId>
|
||||
<channelingTickInterval>1000</channelingTickInterval>
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingTickInterval>1</channelingTickInterval>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<operateType>CA1</operateType>
|
||||
<magicLvl>
|
||||
<value level="1">85</value>
|
||||
@@ -4323,8 +4322,8 @@
|
||||
</activateRate>
|
||||
<basicProperty>NONE</basicProperty>
|
||||
<channelingSkillId>11182</channelingSkillId> <!-- Yoke Status -->
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<mpPerChanneling>15</mpPerChanneling>
|
||||
<operateType>CA2</operateType>
|
||||
<trait>AIRBIND</trait>
|
||||
|
@@ -2067,9 +2067,8 @@
|
||||
<!-- Updated to IO -->
|
||||
<!-- For 10 sec., attacks target with 115 Power per second and recovers HP equivalent to 100% of damage inflicted. -->
|
||||
<icon>icon.skill0000</icon>
|
||||
<channelingSkillId>11131</channelingSkillId>
|
||||
<channelingTickInterval>1000</channelingTickInterval>
|
||||
<channelingTickInitialDelay>2000</channelingTickInitialDelay>
|
||||
<channelingTickInterval>1</channelingTickInterval>
|
||||
<channelingStart>2</channelingStart>
|
||||
<operateType>CA1</operateType>
|
||||
<targetType>ENEMY</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
@@ -2174,7 +2173,7 @@
|
||||
<icon>icon.skill11134</icon>
|
||||
<affectRange>250</affectRange>
|
||||
<channelingSkillId>11134</channelingSkillId>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<attributeType>FIRE</attributeType>
|
||||
<attributeValue>20</attributeValue>
|
||||
<itemConsumeCount>5</itemConsumeCount>
|
||||
@@ -2232,9 +2231,8 @@
|
||||
<!-- Creates a black swamp in the selected location, dealing great damage, and receiving 50% of the target's damage as HP. Inflicts abnormal state and decreases Speed. The higher the level of the abnormal state, the greater the damage, and at the last stage, Shocks the target. Consumes 5 Spirit Ores. -->
|
||||
<icon>icon.skill11135</icon>
|
||||
<affectRange>250</affectRange>
|
||||
<channelingSkillId>11135</channelingSkillId>
|
||||
<channelingTickInterval>1000</channelingTickInterval>
|
||||
<channelingTickInitialDelay>2000</channelingTickInitialDelay>
|
||||
<channelingTickInterval>1</channelingTickInterval>
|
||||
<channelingStart>2</channelingStart>
|
||||
<attributeType>DARK</attributeType>
|
||||
<attributeValue>20</attributeValue>
|
||||
<itemConsumeCount>5</itemConsumeCount>
|
||||
@@ -2249,6 +2247,7 @@
|
||||
<reuseDelay>120000</reuseDelay>
|
||||
<effectPoint>-676</effectPoint>
|
||||
<isMagic>2</isMagic>
|
||||
<hitCancelTime>4</hitCancelTime>
|
||||
<channelingEffects>
|
||||
<effect name="HpDrain">
|
||||
<power>
|
||||
@@ -2276,9 +2275,8 @@
|
||||
<affectRange>250</affectRange>
|
||||
<abnormalLvl>1</abnormalLvl>
|
||||
<abnormalTime>5</abnormalTime>
|
||||
<channelingSkillId>11136</channelingSkillId>
|
||||
<channelingTickInterval>1000</channelingTickInterval>
|
||||
<channelingTickInitialDelay>2000</channelingTickInitialDelay>
|
||||
<channelingTickInterval>1</channelingTickInterval>
|
||||
<channelingStart>2</channelingStart>
|
||||
<attributeType>WATER</attributeType>
|
||||
<attributeValue>20</attributeValue>
|
||||
<itemConsumeCount>5</itemConsumeCount>
|
||||
@@ -2293,6 +2291,7 @@
|
||||
<reuseDelay>120000</reuseDelay>
|
||||
<effectPoint>-676</effectPoint>
|
||||
<isMagic>2</isMagic>
|
||||
<hitCancelTime>4</hitCancelTime>
|
||||
<channelingEffects>
|
||||
<effect name="MagicalAttack">
|
||||
<power>
|
||||
@@ -2336,9 +2335,8 @@
|
||||
<!-- Creates a tornado in the selected location, dealing great damage. Inflicts abnormal state and decreases Speed. The higher the level of the abnormal state, the greater the damage, and at the last stage, locks the target in an Aerial Yoke. Consumes 5 Spirit Ores. -->
|
||||
<icon>icon.skill11137</icon>
|
||||
<affectRange>250</affectRange>
|
||||
<channelingSkillId>11137</channelingSkillId>
|
||||
<channelingTickInterval>1000</channelingTickInterval>
|
||||
<channelingTickInitialDelay>2000</channelingTickInitialDelay>
|
||||
<channelingTickInterval>1</channelingTickInterval>
|
||||
<channelingStart>2</channelingStart>
|
||||
<attributeType>WIND</attributeType>
|
||||
<attributeValue>20</attributeValue>
|
||||
<itemConsumeCount>5</itemConsumeCount>
|
||||
@@ -2353,6 +2351,7 @@
|
||||
<reuseDelay>120000</reuseDelay>
|
||||
<effectPoint>-676</effectPoint>
|
||||
<isMagic>2</isMagic>
|
||||
<hitCancelTime>4</hitCancelTime>
|
||||
<channelingEffects>
|
||||
<effect name="MagicalAttack">
|
||||
<power>
|
||||
@@ -2396,9 +2395,8 @@
|
||||
<!-- Detonates the soul in the selected location to attack surrounding enemies. Inflicts abnormal state and increases PvP Damage. The effect increases as the level of the abnormal state increases. Consumes 5 Spirit Ores. -->
|
||||
<icon>icon.skill11138</icon>
|
||||
<affectRange>250</affectRange> <!-- Guessed -->
|
||||
<channelingSkillId>11138</channelingSkillId>
|
||||
<channelingTickInterval>1000</channelingTickInterval>
|
||||
<channelingTickInitialDelay>2000</channelingTickInitialDelay>
|
||||
<channelingTickInterval>1</channelingTickInterval>
|
||||
<channelingStart>2</channelingStart>
|
||||
<itemConsumeCount>5</itemConsumeCount>
|
||||
<itemConsumeId>3031</itemConsumeId> <!-- Spirit Ore -->
|
||||
<operateType>CA1</operateType>
|
||||
@@ -2411,6 +2409,7 @@
|
||||
<reuseDelay>120000</reuseDelay>
|
||||
<effectPoint>-676</effectPoint>
|
||||
<isMagic>1</isMagic>
|
||||
<hitCancelTime>4</hitCancelTime>
|
||||
<channelingEffects>
|
||||
<effect name="MagicalAttack">
|
||||
<power>600</power>
|
||||
|
@@ -1205,7 +1205,7 @@
|
||||
<hitCancelTime>0</hitCancelTime>
|
||||
<effectRange>1000</effectRange>
|
||||
<magicLvl>95</magicLvl>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>0</channelingTickInterval>
|
||||
<isMagic>2</isMagic>
|
||||
<reuseDelay>3000</reuseDelay>
|
||||
|
@@ -465,9 +465,9 @@
|
||||
<effectRange>1400</effectRange>
|
||||
<magicLvl>99</magicLvl>
|
||||
<channelingSkillId>14217</channelingSkillId>
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<mpPerChanneling>15</mpPerChanneling>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<isMagic>2</isMagic>
|
||||
<isDebuff>true</isDebuff>
|
||||
<targetType>ENEMY</targetType>
|
||||
@@ -660,9 +660,9 @@
|
||||
<effectRange>600</effectRange>
|
||||
<magicLvl>99</magicLvl>
|
||||
<channelingSkillId>14225</channelingSkillId>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingStart>1</channelingStart>
|
||||
<mpPerChanneling>15</mpPerChanneling>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<isMagic>2</isMagic>
|
||||
<reuseDelay>20000</reuseDelay>
|
||||
<targetType>ENEMY</targetType>
|
||||
@@ -2341,8 +2341,8 @@
|
||||
<effectRange>1500</effectRange>
|
||||
<magicLvl>99</magicLvl>
|
||||
<channelingSkillId>14436</channelingSkillId> <!-- Obedience Status -->
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<isMagic>2</isMagic>
|
||||
<hitTime>5000</hitTime>
|
||||
<targetType>TARGET</targetType>
|
||||
|
@@ -555,19 +555,19 @@
|
||||
<magicLvl>62</magicLvl>
|
||||
<attributeType>FIRE</attributeType>
|
||||
<attributeValue>20</attributeValue>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingStart>1</channelingStart>
|
||||
<affectLimit>10-10</affectLimit>
|
||||
<mpPerChanneling>1</mpPerChanneling>
|
||||
<channelingTickInterval>1000</channelingTickInterval>
|
||||
<channelingTickInterval>1</channelingTickInterval>
|
||||
<isMagic>1</isMagic>
|
||||
<targetType>ENEMY</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<effects>
|
||||
<channelingEffects>
|
||||
<effect name="HpDrain">
|
||||
<power>84</power>
|
||||
<percentage>40</percentage>
|
||||
</effect>
|
||||
</effects>
|
||||
</channelingEffects>
|
||||
</skill>
|
||||
<skill id="14423" toLevel="1" name="Byron's Darkness Attack">
|
||||
<!-- Glory Days confirmed -->
|
||||
@@ -889,8 +889,8 @@
|
||||
<magicLvl>85</magicLvl>
|
||||
<attributeType>DARK</attributeType>
|
||||
<attributeValue>20</attributeValue>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingTickInterval>1000</channelingTickInterval>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>1</channelingTickInterval>
|
||||
<staticReuse>true</staticReuse>
|
||||
<isMagic>1</isMagic>
|
||||
<targetType>ENEMY</targetType>
|
||||
@@ -911,8 +911,8 @@
|
||||
<magicLvl>85</magicLvl>
|
||||
<attributeType>DARK</attributeType>
|
||||
<attributeValue>20</attributeValue>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingTickInterval>1000</channelingTickInterval>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>1</channelingTickInterval>
|
||||
<staticReuse>true</staticReuse>
|
||||
<isMagic>1</isMagic>
|
||||
<targetType>ENEMY</targetType>
|
||||
@@ -933,8 +933,8 @@
|
||||
<magicLvl>85</magicLvl>
|
||||
<attributeType>DARK</attributeType>
|
||||
<attributeValue>20</attributeValue>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingTickInterval>1000</channelingTickInterval>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>1</channelingTickInterval>
|
||||
<staticReuse>true</staticReuse>
|
||||
<isMagic>1</isMagic>
|
||||
<targetType>ENEMY</targetType>
|
||||
@@ -955,8 +955,8 @@
|
||||
<magicLvl>85</magicLvl>
|
||||
<attributeType>DARK</attributeType>
|
||||
<attributeValue>20</attributeValue>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingTickInterval>1000</channelingTickInterval>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>1</channelingTickInterval>
|
||||
<staticReuse>true</staticReuse>
|
||||
<isMagic>1</isMagic>
|
||||
<targetType>ENEMY</targetType>
|
||||
@@ -977,8 +977,8 @@
|
||||
<magicLvl>85</magicLvl>
|
||||
<attributeType>DARK</attributeType>
|
||||
<attributeValue>20</attributeValue>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingTickInterval>1000</channelingTickInterval>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>1</channelingTickInterval>
|
||||
<staticReuse>true</staticReuse>
|
||||
<isMagic>1</isMagic>
|
||||
<targetType>ENEMY</targetType>
|
||||
@@ -999,8 +999,8 @@
|
||||
<magicLvl>85</magicLvl>
|
||||
<attributeType>DARK</attributeType>
|
||||
<attributeValue>20</attributeValue>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingTickInterval>1000</channelingTickInterval>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>1</channelingTickInterval>
|
||||
<staticReuse>true</staticReuse>
|
||||
<isMagic>1</isMagic>
|
||||
<targetType>ENEMY</targetType>
|
||||
@@ -1021,8 +1021,8 @@
|
||||
<magicLvl>85</magicLvl>
|
||||
<attributeType>DARK</attributeType>
|
||||
<attributeValue>20</attributeValue>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingTickInterval>1000</channelingTickInterval>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>1</channelingTickInterval>
|
||||
<staticReuse>true</staticReuse>
|
||||
<isMagic>1</isMagic>
|
||||
<targetType>ENEMY</targetType>
|
||||
@@ -1043,8 +1043,8 @@
|
||||
<magicLvl>85</magicLvl>
|
||||
<attributeType>DARK</attributeType>
|
||||
<attributeValue>20</attributeValue>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingTickInterval>1000</channelingTickInterval>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>1</channelingTickInterval>
|
||||
<staticReuse>true</staticReuse>
|
||||
<isMagic>1</isMagic>
|
||||
<targetType>ENEMY</targetType>
|
||||
|
@@ -205,8 +205,8 @@
|
||||
<effectRange>1400</effectRange>
|
||||
<magicLvl>85</magicLvl>
|
||||
<channelingSkillId>14510</channelingSkillId> <!-- Drain Status -->
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<isMagic>2</isMagic>
|
||||
<isDebuff>true</isDebuff>
|
||||
<targetType>ENEMY</targetType>
|
||||
@@ -419,8 +419,8 @@
|
||||
<effectRange>1000</effectRange>
|
||||
<magicLvl>96</magicLvl>
|
||||
<channelingSkillId>14616</channelingSkillId> <!-- Blood Siphon -->
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<staticReuse>true</staticReuse>
|
||||
<isMagic>2</isMagic>
|
||||
<reuseDelay>15000</reuseDelay>
|
||||
@@ -644,8 +644,8 @@
|
||||
<magicLvl>96</magicLvl>
|
||||
<attributeType>FIRE</attributeType>
|
||||
<attributeValue>20</attributeValue>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<staticReuse>true</staticReuse>
|
||||
<fanRange>0;0;500;500</fanRange>
|
||||
<isMagic>1</isMagic>
|
||||
@@ -1481,8 +1481,8 @@
|
||||
<effectRange>1100</effectRange>
|
||||
<magicLvl>94</magicLvl>
|
||||
<channelingSkillId>14548</channelingSkillId> <!-- Yoke of Sacrifice -->
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<isMagic>2</isMagic>
|
||||
<isDebuff>true</isDebuff>
|
||||
<targetType>ENEMY</targetType>
|
||||
@@ -1545,8 +1545,8 @@
|
||||
<effectRange>1100</effectRange>
|
||||
<magicLvl>94</magicLvl>
|
||||
<channelingSkillId>14550</channelingSkillId> <!-- Yoke of Offering -->
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<isMagic>2</isMagic>
|
||||
<isDebuff>true</isDebuff>
|
||||
<targetType>ENEMY</targetType>
|
||||
@@ -1716,8 +1716,8 @@
|
||||
<effectRange>400</effectRange>
|
||||
<magicLvl>99</magicLvl>
|
||||
<channelingSkillId>14555</channelingSkillId> <!-- Earth Wyrm Heart Protection -->
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<isMagic>2</isMagic>
|
||||
<isDebuff>true</isDebuff>
|
||||
<targetType>TARGET</targetType>
|
||||
@@ -1974,8 +1974,8 @@
|
||||
<magicLvl>87</magicLvl>
|
||||
<reuseDelayGroup>11050</reuseDelayGroup>
|
||||
<channelingSkillId>14569</channelingSkillId> <!-- Yoke of Sacrifice -->
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<isMagic>2</isMagic>
|
||||
<isDebuff>true</isDebuff>
|
||||
<targetType>ENEMY</targetType>
|
||||
@@ -2001,8 +2001,8 @@
|
||||
<magicLvl>87</magicLvl>
|
||||
<reuseDelayGroup>11050</reuseDelayGroup>
|
||||
<channelingSkillId>14569</channelingSkillId> <!-- Yoke of Sacrifice -->
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<isMagic>2</isMagic>
|
||||
<isDebuff>true</isDebuff>
|
||||
<targetType>ENEMY</targetType>
|
||||
@@ -2028,8 +2028,8 @@
|
||||
<magicLvl>87</magicLvl>
|
||||
<reuseDelayGroup>11050</reuseDelayGroup>
|
||||
<channelingSkillId>14569</channelingSkillId> <!-- Yoke of Sacrifice -->
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<isMagic>2</isMagic>
|
||||
<isDebuff>true</isDebuff>
|
||||
<targetType>ENEMY</targetType>
|
||||
@@ -2055,8 +2055,8 @@
|
||||
<magicLvl>87</magicLvl>
|
||||
<reuseDelayGroup>11050</reuseDelayGroup>
|
||||
<channelingSkillId>14569</channelingSkillId> <!-- Yoke of Sacrifice -->
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<isMagic>2</isMagic>
|
||||
<isDebuff>true</isDebuff>
|
||||
<targetType>ENEMY</targetType>
|
||||
@@ -2082,8 +2082,8 @@
|
||||
<magicLvl>87</magicLvl>
|
||||
<reuseDelayGroup>11050</reuseDelayGroup>
|
||||
<channelingSkillId>14569</channelingSkillId> <!-- Yoke of Sacrifice -->
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<isMagic>2</isMagic>
|
||||
<isDebuff>true</isDebuff>
|
||||
<targetType>ENEMY</targetType>
|
||||
|
@@ -676,8 +676,8 @@
|
||||
<rideState>NONE</rideState>
|
||||
<magicCriticalRate>-5</magicCriticalRate>
|
||||
<magicLvl>85</magicLvl>
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<targetType>ENEMY</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
</skill>
|
||||
|
@@ -465,8 +465,8 @@
|
||||
<magicCriticalRate>-5</magicCriticalRate>
|
||||
<effectRange>2000</effectRange>
|
||||
<magicLvl>85</magicLvl>
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<isMagic>1</isMagic>
|
||||
<targetType>ENEMY</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
|
@@ -2312,17 +2312,16 @@
|
||||
<hitCancelTime>0</hitCancelTime>
|
||||
<effectRange>1400</effectRange>
|
||||
<magicLvl>85</magicLvl>
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingTickInterval>1000</channelingTickInterval>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<channelingTickInterval>1</channelingTickInterval>
|
||||
<hitTime>12000</hitTime>
|
||||
<isMagic>2</isMagic>
|
||||
<channelingSkillId>14982</channelingSkillId>
|
||||
<targetType>ENEMY</targetType>
|
||||
<channelingEffects>
|
||||
<effect name="HealPercent">
|
||||
<power>-10</power>
|
||||
</effect>
|
||||
</channelingEffects>
|
||||
<targetType>ENEMY</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
</skill>
|
||||
<skill id="14983" toLevel="1" name="HP Drain">
|
||||
@@ -2337,18 +2336,17 @@
|
||||
<hitCancelTime>0</hitCancelTime>
|
||||
<effectRange>1400</effectRange>
|
||||
<magicLvl>90</magicLvl>
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingTickInterval>1000</channelingTickInterval>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<channelingTickInterval>1</channelingTickInterval>
|
||||
<hitTime>12000</hitTime>
|
||||
<isMagic>2</isMagic>
|
||||
<channelingSkillId>14983</channelingSkillId>
|
||||
<targetType>ENEMY</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<channelingEffects>
|
||||
<effect name="HealPercent">
|
||||
<power>-10</power>
|
||||
</effect>
|
||||
</channelingEffects>
|
||||
<targetType>ENEMY</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
</skill>
|
||||
<skill id="14984" toLevel="1" name="HP Drain">
|
||||
<!-- Glory Days confirmed -->
|
||||
@@ -2362,18 +2360,17 @@
|
||||
<hitCancelTime>0</hitCancelTime>
|
||||
<effectRange>1400</effectRange>
|
||||
<magicLvl>95</magicLvl>
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingTickInterval>1000</channelingTickInterval>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<channelingTickInterval>1</channelingTickInterval>
|
||||
<hitTime>12000</hitTime>
|
||||
<isMagic>2</isMagic>
|
||||
<channelingSkillId>14984</channelingSkillId>
|
||||
<targetType>ENEMY</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<channelingEffects>
|
||||
<effect name="HealPercent">
|
||||
<power>-10</power>
|
||||
</effect>
|
||||
</channelingEffects>
|
||||
<targetType>ENEMY</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
</skill>
|
||||
<skill id="14985" toLevel="1" name="Drain Status">
|
||||
<!-- Glory Days confirmed -->
|
||||
|
@@ -2091,8 +2091,8 @@
|
||||
<effectRange>3000</effectRange>
|
||||
<magicLvl>99</magicLvl>
|
||||
<channelingSkillId>15175</channelingSkillId>
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<isMagic>2</isMagic>
|
||||
<isDebuff>true</isDebuff>
|
||||
<targetType>TARGET</targetType>
|
||||
@@ -2137,8 +2137,8 @@
|
||||
<effectRange>3000</effectRange>
|
||||
<magicLvl>99</magicLvl>
|
||||
<channelingSkillId>15177</channelingSkillId>
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<isMagic>2</isMagic>
|
||||
<isDebuff>true</isDebuff>
|
||||
<targetType>TARGET</targetType>
|
||||
@@ -2183,8 +2183,8 @@
|
||||
<effectRange>3000</effectRange>
|
||||
<magicLvl>99</magicLvl>
|
||||
<channelingSkillId>15179</channelingSkillId>
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<isMagic>2</isMagic>
|
||||
<isDebuff>true</isDebuff>
|
||||
<targetType>TARGET</targetType>
|
||||
@@ -2229,8 +2229,8 @@
|
||||
<effectRange>3000</effectRange>
|
||||
<magicLvl>99</magicLvl>
|
||||
<channelingSkillId>15181</channelingSkillId>
|
||||
<channelingTickInitialDelay>1200</channelingTickInitialDelay>
|
||||
<channelingTickInterval>2000</channelingTickInterval>
|
||||
<channelingStart>1.2</channelingStart>
|
||||
<channelingTickInterval>2</channelingTickInterval>
|
||||
<isMagic>2</isMagic>
|
||||
<isDebuff>true</isDebuff>
|
||||
<targetType>TARGET</targetType>
|
||||
|
@@ -1728,7 +1728,7 @@
|
||||
<hitCancelTime>0</hitCancelTime>
|
||||
<effectRange>2160</effectRange>
|
||||
<magicLvl>95</magicLvl>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>0</channelingTickInterval>
|
||||
<isMagic>1</isMagic>
|
||||
<targetType>TARGET</targetType>
|
||||
|
@@ -523,7 +523,7 @@
|
||||
<hitCancelTime>0</hitCancelTime>
|
||||
<effectRange>1100</effectRange>
|
||||
<magicLvl>85</magicLvl>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>0</channelingTickInterval>
|
||||
<isMagic>2</isMagic>
|
||||
<hitTime>10000</hitTime>
|
||||
|
@@ -2353,8 +2353,8 @@
|
||||
<hitCancelTime>0</hitCancelTime>
|
||||
<effectRange>2200</effectRange>
|
||||
<magicLvl>85</magicLvl>
|
||||
<channelingTickInitialDelay>1000</channelingTickInitialDelay>
|
||||
<channelingTickInterval>1000</channelingTickInterval>
|
||||
<channelingStart>1</channelingStart>
|
||||
<channelingTickInterval>1</channelingTickInterval>
|
||||
<isMagic>1</isMagic>
|
||||
<targetType>OTHERS</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
|
@@ -2497,8 +2497,8 @@
|
||||
<xs:element name="blockedInOlympiad" type="xs:boolean" />
|
||||
<xs:element name="channelingSkillId" type="xs:unsignedShort" />
|
||||
<xs:element name="mpPerChanneling" type="xs:unsignedByte" />
|
||||
<xs:element name="channelingTickInitialDelay" type="xs:unsignedShort" />
|
||||
<xs:element name="channelingTickInterval" type="xs:unsignedShort" />
|
||||
<xs:element name="channelingStart" type="xs:decimal" />
|
||||
<xs:element name="channelingTickInterval" type="xs:decimal" />
|
||||
<xs:element name="removedOnDamage" type="xs:boolean" />
|
||||
<xs:element name="removedOnAnyActionExceptMove" type="xs:boolean" />
|
||||
<xs:element name="itemConsumeSteps" type="xs:unsignedByte" />
|
||||
|
@@ -126,7 +126,7 @@ public final class Skill implements IIdentifiable
|
||||
private final int _refId;
|
||||
// all times in milliseconds
|
||||
private final int _hitTime;
|
||||
// private final int _skillInterruptTime;
|
||||
private final double _hitCancelTime;
|
||||
private final int _coolTime;
|
||||
private final long _reuseHashCode;
|
||||
private final int _reuseDelay;
|
||||
@@ -185,8 +185,8 @@ public final class Skill implements IIdentifiable
|
||||
|
||||
// Channeling data
|
||||
private final int _channelingSkillId;
|
||||
private final int _channelingTickInitialDelay;
|
||||
private final int _channelingTickInterval;
|
||||
private final long _channelingStart;
|
||||
private final long _channelingTickInterval;
|
||||
|
||||
// Mentoring
|
||||
private final boolean _isMentoring;
|
||||
@@ -259,6 +259,7 @@ public final class Skill implements IIdentifiable
|
||||
_stayAfterDeath = set.getBoolean("stayAfterDeath", false);
|
||||
|
||||
_hitTime = set.getInt("hitTime", 0);
|
||||
_hitCancelTime = set.getDouble("hitCancelTime", 0);
|
||||
_coolTime = set.getInt("coolTime", 0);
|
||||
_isDebuff = set.getBoolean("isDebuff", false);
|
||||
_isRecoveryHerb = set.getBoolean("isRecoveryHerb", false);
|
||||
@@ -391,8 +392,8 @@ public final class Skill implements IIdentifiable
|
||||
_icon = set.getString("icon", "icon.skill0000");
|
||||
|
||||
_channelingSkillId = set.getInt("channelingSkillId", 0);
|
||||
_channelingTickInterval = set.getInt("channelingTickInterval", 2000);
|
||||
_channelingTickInitialDelay = set.getInt("channelingTickInitialDelay", _channelingTickInterval);
|
||||
_channelingTickInterval = (long) set.getFloat("channelingTickInterval", 2000f) * 1000;
|
||||
_channelingStart = (long) (set.getFloat("channelingStart", 0f) * 1000);
|
||||
|
||||
_isMentoring = set.getBoolean("isMentoring", false);
|
||||
|
||||
@@ -478,11 +479,6 @@ public final class Skill implements IIdentifiable
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isDamage()
|
||||
{
|
||||
return hasEffectType(L2EffectType.MAGICAL_ATTACK, L2EffectType.HP_DRAIN, L2EffectType.PHYSICAL_ATTACK, L2EffectType.PHYSICAL_ATTACK_HP_LINK);
|
||||
}
|
||||
|
||||
public boolean isSuicideAttack()
|
||||
{
|
||||
return _isSuicideAttack;
|
||||
@@ -863,6 +859,11 @@ public final class Skill implements IIdentifiable
|
||||
return _hitTime;
|
||||
}
|
||||
|
||||
public double getHitCancelTime()
|
||||
{
|
||||
return _hitCancelTime;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the cool time
|
||||
*/
|
||||
@@ -1355,8 +1356,6 @@ public final class Skill implements IIdentifiable
|
||||
final EffectScope pvpOrPveEffectScope = effector.isPlayable() && effected.isAttackable() ? EffectScope.PVE : effector.isPlayable() && effected.isPlayable() ? EffectScope.PVP : null;
|
||||
applyEffectScope(pvpOrPveEffectScope, info, instant, addContinuousEffects);
|
||||
|
||||
applyEffectScope(EffectScope.CHANNELING, info, instant, addContinuousEffects);
|
||||
|
||||
if (addContinuousEffects)
|
||||
{
|
||||
// Aura skills reset the abnormal time.
|
||||
@@ -1430,6 +1429,23 @@ public final class Skill implements IIdentifiable
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Applies the channeling effects from this skill to the target.
|
||||
* @param effector the caster of the skill
|
||||
* @param effected the target of the effect
|
||||
*/
|
||||
public void applyChannelingEffects(L2Character effector, L2Character effected)
|
||||
{
|
||||
// null targets cannot receive any effects.
|
||||
if (effected == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
final BuffInfo info = new BuffInfo(effector, effected, this, false, null, null);
|
||||
applyEffectScope(EffectScope.CHANNELING, info, true, true);
|
||||
}
|
||||
|
||||
/**
|
||||
* Activates a skill for the given creature and targets.
|
||||
* @param caster the caster
|
||||
@@ -1489,8 +1505,6 @@ public final class Skill implements IIdentifiable
|
||||
|
||||
final EffectScope pvpOrPveEffectScope = caster.isPlayable() && target.isAttackable() ? EffectScope.PVE : caster.isPlayable() && target.isPlayable() ? EffectScope.PVP : null;
|
||||
applyEffectScope(pvpOrPveEffectScope, info, true, false);
|
||||
|
||||
applyEffectScope(EffectScope.CHANNELING, info, true, false);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1709,14 +1723,14 @@ public final class Skill implements IIdentifiable
|
||||
return _icon;
|
||||
}
|
||||
|
||||
public int getChannelingTickInterval()
|
||||
public long getChannelingTickInterval()
|
||||
{
|
||||
return _channelingTickInterval;
|
||||
}
|
||||
|
||||
public int getChannelingTickInitialDelay()
|
||||
public long getChannelingTickInitialDelay()
|
||||
{
|
||||
return _channelingTickInitialDelay;
|
||||
return _channelingStart;
|
||||
}
|
||||
|
||||
public Set<MountType> getRideState()
|
||||
|
@@ -389,7 +389,7 @@ public class SkillCaster implements Runnable
|
||||
}
|
||||
|
||||
// Start channeling if skill is channeling.
|
||||
if (_skill.isChanneling() && (_skill.getChannelingSkillId() > 0))
|
||||
if (_skill.isChanneling())
|
||||
{
|
||||
caster.getSkillChannelizer().startChanneling(_skill);
|
||||
}
|
||||
|
@@ -149,82 +149,84 @@ public class SkillChannelizer implements Runnable
|
||||
}
|
||||
|
||||
// Apply channeling skills on the targets.
|
||||
if (skill.getChannelingSkillId() > 0)
|
||||
final List<L2Character> targetList = new ArrayList<>();
|
||||
final L2Object target = skill.getTarget(_channelizer, false, false, false);
|
||||
if (target != null)
|
||||
{
|
||||
final List<L2Character> targetList = new ArrayList<>();
|
||||
final L2Object target = skill.getTarget(_channelizer, false, false, false);
|
||||
if (target != null)
|
||||
skill.forEachTargetAffected(_channelizer, target, o ->
|
||||
{
|
||||
skill.forEachTargetAffected(_channelizer, target, o ->
|
||||
if (o.isCharacter())
|
||||
{
|
||||
if (o.isCharacter())
|
||||
targetList.add((L2Character) o);
|
||||
((L2Character) o).getSkillChannelized().addChannelizer(skill.getChannelingSkillId(), _channelizer);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
if (targetList.isEmpty())
|
||||
{
|
||||
return;
|
||||
}
|
||||
channelized = targetList;
|
||||
|
||||
for (L2Character character : channelized)
|
||||
{
|
||||
if (!Util.checkIfInRange(skill.getEffectRange(), _channelizer, character, true))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
else if (!GeoEngine.getInstance().canSeeTarget(_channelizer, character))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
if (skill.getChannelingSkillId() > 0)
|
||||
{
|
||||
final int maxSkillLevel = SkillData.getInstance().getMaxLevel(skill.getChannelingSkillId());
|
||||
final int skillLevel = Math.min(character.getSkillChannelized().getChannerlizersSize(skill.getChannelingSkillId()), maxSkillLevel);
|
||||
final BuffInfo info = character.getEffectList().getBuffInfoBySkillId(skill.getChannelingSkillId());
|
||||
|
||||
if ((info == null) || (info.getSkill().getLevel() < skillLevel))
|
||||
{
|
||||
final Skill channeledSkill = SkillData.getInstance().getSkill(skill.getChannelingSkillId(), skillLevel);
|
||||
if (channeledSkill == null)
|
||||
{
|
||||
targetList.add((L2Character) o);
|
||||
((L2Character) o).getSkillChannelized().addChannelizer(skill.getChannelingSkillId(), _channelizer);
|
||||
LOGGER.warning(getClass().getSimpleName() + ": Non existent channeling skill requested: " + skill);
|
||||
_channelizer.abortCast();
|
||||
return;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
if (targetList.isEmpty())
|
||||
{
|
||||
return;
|
||||
}
|
||||
channelized = targetList;
|
||||
|
||||
for (L2Character character : channelized)
|
||||
{
|
||||
if (!Util.checkIfInRange(skill.getEffectRange(), _channelizer, character, true))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
else if (!GeoEngine.getInstance().canSeeTarget(_channelizer, character))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
else
|
||||
{
|
||||
final int maxSkillLevel = SkillData.getInstance().getMaxLevel(skill.getChannelingSkillId());
|
||||
final int skillLevel = Math.min(character.getSkillChannelized().getChannerlizersSize(skill.getChannelingSkillId()), maxSkillLevel);
|
||||
final BuffInfo info = character.getEffectList().getBuffInfoBySkillId(skill.getChannelingSkillId());
|
||||
|
||||
if ((info == null) || (info.getSkill().getLevel() < skillLevel))
|
||||
// Update PvP status
|
||||
if (character.isPlayable() && _channelizer.isPlayer())
|
||||
{
|
||||
final Skill channeledSkill = SkillData.getInstance().getSkill(skill.getChannelingSkillId(), skillLevel);
|
||||
if (channeledSkill == null)
|
||||
{
|
||||
LOGGER.warning(getClass().getSimpleName() + ": Non existent channeling skill requested: " + skill);
|
||||
_channelizer.abortCast();
|
||||
return;
|
||||
}
|
||||
|
||||
// Update PvP status
|
||||
if (character.isPlayable() && _channelizer.isPlayer())
|
||||
{
|
||||
((L2PcInstance) _channelizer).updatePvPStatus(character);
|
||||
}
|
||||
|
||||
// Be warned, this method has the possibility to call doDie->abortCast->stopChanneling method. Variable cache above try"+ +" is used in this case to avoid NPEs.
|
||||
channeledSkill.applyEffects(_channelizer, character);
|
||||
|
||||
// Reduce shots.
|
||||
if (skill.useSpiritShot())
|
||||
{
|
||||
_channelizer.unchargeShot(_channelizer.isChargedShot(ShotType.BLESSED_SPIRITSHOTS) ? ShotType.BLESSED_SPIRITSHOTS : ShotType.SPIRITSHOTS);
|
||||
}
|
||||
else
|
||||
{
|
||||
_channelizer.unchargeShot(_channelizer.isChargedShot(ShotType.BLESSED_SOULSHOTS) ? ShotType.BLESSED_SOULSHOTS : ShotType.SOULSHOTS);
|
||||
}
|
||||
|
||||
// Shots are re-charged every cast.
|
||||
_channelizer.rechargeShots(skill.useSoulShot(), skill.useSpiritShot(), false);
|
||||
}
|
||||
if (!skill.isToggle())
|
||||
{
|
||||
_channelizer.broadcastPacket(new MagicSkillLaunched(_channelizer, skill.getId(), skill.getLevel(), SkillCastingType.NORMAL, character));
|
||||
((L2PcInstance) _channelizer).updatePvPStatus(character);
|
||||
}
|
||||
|
||||
// Be warned, this method has the possibility to call doDie->abortCast->stopChanneling method. Variable cache above try{} is used in this case to avoid NPEs.
|
||||
channeledSkill.applyEffects(_channelizer, character);
|
||||
}
|
||||
if (!skill.isToggle())
|
||||
{
|
||||
_channelizer.broadcastPacket(new MagicSkillLaunched(_channelizer, skill.getId(), skill.getLevel(), SkillCastingType.NORMAL, character));
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
skill.applyChannelingEffects(_channelizer, character);
|
||||
}
|
||||
|
||||
// Reduce shots.
|
||||
if (skill.useSpiritShot())
|
||||
{
|
||||
_channelizer.unchargeShot(_channelizer.isChargedShot(ShotType.BLESSED_SPIRITSHOTS) ? ShotType.BLESSED_SPIRITSHOTS : ShotType.SPIRITSHOTS);
|
||||
}
|
||||
else
|
||||
{
|
||||
_channelizer.unchargeShot(_channelizer.isChargedShot(ShotType.BLESSED_SOULSHOTS) ? ShotType.BLESSED_SOULSHOTS : ShotType.SOULSHOTS);
|
||||
}
|
||||
|
||||
// Shots are re-charged every cast.
|
||||
_channelizer.rechargeShots(skill.useSoulShot(), skill.useSpiritShot(), false);
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
|
@@ -484,13 +484,7 @@ public final class Formulas
|
||||
|
||||
public static double calcSkillCancelTime(L2Character creature, Skill skill)
|
||||
{
|
||||
// Fishing skills.
|
||||
if ((skill.getId() == 1312) || (skill.getId() == 1314) || (skill.getId() == 1315))
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
// return (int) Math.max(skill.getCancelTime() / calcSkillTimeFactor(attacker, skill), 500);
|
||||
return Math.max(skill.getHitTime() / calcSkillTimeFactor(creature, skill), SKILL_LAUNCH_TIME);
|
||||
return Math.max((skill.getHitCancelTime() * 1000) / calcSkillTimeFactor(creature, skill), SKILL_LAUNCH_TIME);
|
||||
}
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user