Fixed TriggerSkillByDamage effect handler.
Contributed by nasseka.
This commit is contained in:
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -371,11 +371,11 @@
|
||||
<excludedFromCheck>true</excludedFromCheck>
|
||||
<effects>
|
||||
<effect name="TriggerSkillByDamage">
|
||||
<!-- Undying Will -->
|
||||
<attackerType>Creature</attackerType>
|
||||
<chance>100</chance>
|
||||
<targetType>SELF</targetType>
|
||||
<minDamage>1</minDamage>
|
||||
<hpPercent>30</hpPercent>
|
||||
<skillId>1918</skillId> <!-- Undying Will -->
|
||||
<skillLevel>1</skillLevel>
|
||||
</effect>
|
||||
@@ -400,7 +400,7 @@
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<conditions>
|
||||
<condition name="RemainHpPer">
|
||||
<amount>20</amount>
|
||||
<amount>30</amount>
|
||||
<percentType>LESS</percentType>
|
||||
<affectType>CASTER</affectType>
|
||||
</condition>
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -371,11 +371,11 @@
|
||||
<excludedFromCheck>true</excludedFromCheck>
|
||||
<effects>
|
||||
<effect name="TriggerSkillByDamage">
|
||||
<!-- Undying Will -->
|
||||
<attackerType>Creature</attackerType>
|
||||
<chance>100</chance>
|
||||
<targetType>SELF</targetType>
|
||||
<minDamage>1</minDamage>
|
||||
<hpPercent>30</hpPercent>
|
||||
<skillId>1918</skillId> <!-- Undying Will -->
|
||||
<skillLevel>1</skillLevel>
|
||||
</effect>
|
||||
@@ -400,7 +400,7 @@
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<conditions>
|
||||
<condition name="RemainHpPer">
|
||||
<amount>20</amount>
|
||||
<amount>30</amount>
|
||||
<percentType>LESS</percentType>
|
||||
<affectType>CASTER</affectType>
|
||||
</condition>
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -371,11 +371,11 @@
|
||||
<excludedFromCheck>true</excludedFromCheck>
|
||||
<effects>
|
||||
<effect name="TriggerSkillByDamage">
|
||||
<!-- Undying Will -->
|
||||
<attackerType>Creature</attackerType>
|
||||
<chance>100</chance>
|
||||
<targetType>SELF</targetType>
|
||||
<minDamage>1</minDamage>
|
||||
<hpPercent>30</hpPercent>
|
||||
<skillId>1918</skillId> <!-- Undying Will -->
|
||||
<skillLevel>1</skillLevel>
|
||||
</effect>
|
||||
@@ -400,7 +400,7 @@
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<conditions>
|
||||
<condition name="RemainHpPer">
|
||||
<amount>20</amount>
|
||||
<amount>30</amount>
|
||||
<percentType>LESS</percentType>
|
||||
<affectType>CASTER</affectType>
|
||||
</condition>
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -371,11 +371,11 @@
|
||||
<excludedFromCheck>true</excludedFromCheck>
|
||||
<effects>
|
||||
<effect name="TriggerSkillByDamage">
|
||||
<!-- Undying Will -->
|
||||
<attackerType>Creature</attackerType>
|
||||
<chance>100</chance>
|
||||
<targetType>SELF</targetType>
|
||||
<minDamage>1</minDamage>
|
||||
<hpPercent>30</hpPercent>
|
||||
<skillId>1918</skillId> <!-- Undying Will -->
|
||||
<skillLevel>1</skillLevel>
|
||||
</effect>
|
||||
@@ -400,7 +400,7 @@
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<conditions>
|
||||
<condition name="RemainHpPer">
|
||||
<amount>20</amount>
|
||||
<amount>30</amount>
|
||||
<percentType>LESS</percentType>
|
||||
<affectType>CASTER</affectType>
|
||||
</condition>
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -371,11 +371,11 @@
|
||||
<excludedFromCheck>true</excludedFromCheck>
|
||||
<effects>
|
||||
<effect name="TriggerSkillByDamage">
|
||||
<!-- Undying Will -->
|
||||
<attackerType>Creature</attackerType>
|
||||
<chance>100</chance>
|
||||
<targetType>SELF</targetType>
|
||||
<minDamage>1</minDamage>
|
||||
<hpPercent>30</hpPercent>
|
||||
<skillId>1918</skillId> <!-- Undying Will -->
|
||||
<skillLevel>1</skillLevel>
|
||||
</effect>
|
||||
@@ -400,7 +400,7 @@
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<conditions>
|
||||
<condition name="RemainHpPer">
|
||||
<amount>20</amount>
|
||||
<amount>30</amount>
|
||||
<percentType>LESS</percentType>
|
||||
<affectType>CASTER</affectType>
|
||||
</condition>
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -371,11 +371,11 @@
|
||||
<excludedFromCheck>true</excludedFromCheck>
|
||||
<effects>
|
||||
<effect name="TriggerSkillByDamage">
|
||||
<!-- Undying Will -->
|
||||
<attackerType>Creature</attackerType>
|
||||
<chance>100</chance>
|
||||
<targetType>SELF</targetType>
|
||||
<minDamage>1</minDamage>
|
||||
<hpPercent>30</hpPercent>
|
||||
<skillId>1918</skillId> <!-- Undying Will -->
|
||||
<skillLevel>1</skillLevel>
|
||||
</effect>
|
||||
@@ -400,7 +400,7 @@
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<conditions>
|
||||
<condition name="RemainHpPer">
|
||||
<amount>20</amount>
|
||||
<amount>30</amount>
|
||||
<percentType>LESS</percentType>
|
||||
<affectType>CASTER</affectType>
|
||||
</condition>
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -371,11 +371,11 @@
|
||||
<excludedFromCheck>true</excludedFromCheck>
|
||||
<effects>
|
||||
<effect name="TriggerSkillByDamage">
|
||||
<!-- Undying Will -->
|
||||
<attackerType>Creature</attackerType>
|
||||
<chance>100</chance>
|
||||
<targetType>SELF</targetType>
|
||||
<minDamage>1</minDamage>
|
||||
<hpPercent>30</hpPercent>
|
||||
<skillId>1918</skillId> <!-- Undying Will -->
|
||||
<skillLevel>1</skillLevel>
|
||||
</effect>
|
||||
@@ -400,7 +400,7 @@
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<conditions>
|
||||
<condition name="RemainHpPer">
|
||||
<amount>20</amount>
|
||||
<amount>30</amount>
|
||||
<percentType>LESS</percentType>
|
||||
<affectType>CASTER</affectType>
|
||||
</condition>
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -371,11 +371,11 @@
|
||||
<excludedFromCheck>true</excludedFromCheck>
|
||||
<effects>
|
||||
<effect name="TriggerSkillByDamage">
|
||||
<!-- Undying Will -->
|
||||
<attackerType>Creature</attackerType>
|
||||
<chance>100</chance>
|
||||
<targetType>SELF</targetType>
|
||||
<minDamage>1</minDamage>
|
||||
<hpPercent>30</hpPercent>
|
||||
<skillId>1918</skillId> <!-- Undying Will -->
|
||||
<skillLevel>1</skillLevel>
|
||||
</effect>
|
||||
@@ -400,7 +400,7 @@
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<conditions>
|
||||
<condition name="RemainHpPer">
|
||||
<amount>20</amount>
|
||||
<amount>30</amount>
|
||||
<percentType>LESS</percentType>
|
||||
<affectType>CASTER</affectType>
|
||||
</condition>
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -468,11 +468,11 @@
|
||||
<excludedFromCheck>true</excludedFromCheck>
|
||||
<effects>
|
||||
<effect name="TriggerSkillByDamage">
|
||||
<!-- Undying Will -->
|
||||
<attackerType>Creature</attackerType>
|
||||
<chance>100</chance>
|
||||
<targetType>SELF</targetType>
|
||||
<minDamage>1</minDamage>
|
||||
<hpPercent>30</hpPercent>
|
||||
<skillId>1918</skillId> <!-- Undying Will -->
|
||||
<skillLevel>1</skillLevel>
|
||||
</effect>
|
||||
@@ -497,7 +497,7 @@
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<conditions>
|
||||
<condition name="RemainHpPer">
|
||||
<amount>20</amount>
|
||||
<amount>30</amount>
|
||||
<percentType>LESS</percentType>
|
||||
<affectType>CASTER</affectType>
|
||||
</condition>
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -468,11 +468,11 @@
|
||||
<excludedFromCheck>true</excludedFromCheck>
|
||||
<effects>
|
||||
<effect name="TriggerSkillByDamage">
|
||||
<!-- Undying Will -->
|
||||
<attackerType>Creature</attackerType>
|
||||
<chance>100</chance>
|
||||
<targetType>SELF</targetType>
|
||||
<minDamage>1</minDamage>
|
||||
<hpPercent>30</hpPercent>
|
||||
<skillId>1918</skillId> <!-- Undying Will -->
|
||||
<skillLevel>1</skillLevel>
|
||||
</effect>
|
||||
@@ -497,7 +497,7 @@
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<conditions>
|
||||
<condition name="RemainHpPer">
|
||||
<amount>20</amount>
|
||||
<amount>30</amount>
|
||||
<percentType>LESS</percentType>
|
||||
<affectType>CASTER</affectType>
|
||||
</condition>
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -468,11 +468,11 @@
|
||||
<excludedFromCheck>true</excludedFromCheck>
|
||||
<effects>
|
||||
<effect name="TriggerSkillByDamage">
|
||||
<!-- Undying Will -->
|
||||
<attackerType>Creature</attackerType>
|
||||
<chance>100</chance>
|
||||
<targetType>SELF</targetType>
|
||||
<minDamage>1</minDamage>
|
||||
<hpPercent>30</hpPercent>
|
||||
<skillId>1918</skillId> <!-- Undying Will -->
|
||||
<skillLevel>1</skillLevel>
|
||||
</effect>
|
||||
@@ -497,7 +497,7 @@
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<conditions>
|
||||
<condition name="RemainHpPer">
|
||||
<amount>20</amount>
|
||||
<amount>30</amount>
|
||||
<percentType>LESS</percentType>
|
||||
<affectType>CASTER</affectType>
|
||||
</condition>
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -468,11 +468,11 @@
|
||||
<excludedFromCheck>true</excludedFromCheck>
|
||||
<effects>
|
||||
<effect name="TriggerSkillByDamage">
|
||||
<!-- Undying Will -->
|
||||
<attackerType>Creature</attackerType>
|
||||
<chance>100</chance>
|
||||
<targetType>SELF</targetType>
|
||||
<minDamage>1</minDamage>
|
||||
<hpPercent>30</hpPercent>
|
||||
<skillId>1918</skillId> <!-- Undying Will -->
|
||||
<skillLevel>1</skillLevel>
|
||||
</effect>
|
||||
@@ -497,7 +497,7 @@
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<conditions>
|
||||
<condition name="RemainHpPer">
|
||||
<amount>20</amount>
|
||||
<amount>30</amount>
|
||||
<percentType>LESS</percentType>
|
||||
<affectType>CASTER</affectType>
|
||||
</condition>
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -92,7 +92,7 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
if ((_hpPercent < 100) && (event.getAttacker().getCurrentHpPercent() > _hpPercent))
|
||||
if ((_hpPercent < 100) && (event.getTarget().getCurrentHpPercent() > _hpPercent))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -102,10 +102,11 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
Skill triggerSkill = _skill.getSkill();
|
||||
WorldObject target = null;
|
||||
try
|
||||
{
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), _skill.getSkill(), false, false, false);
|
||||
target = TargetHandler.getInstance().getHandler(_targetType).getTarget(event.getTarget(), event.getAttacker(), triggerSkill, false, false, false);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -116,25 +117,16 @@ public class TriggerSkillByDamage extends AbstractEffect
|
||||
return;
|
||||
}
|
||||
|
||||
final Skill triggerSkill;
|
||||
if (_skillLevelScaleTo <= 0)
|
||||
if (_skillLevelScaleTo > 0)
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
}
|
||||
else
|
||||
{
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(_skill.getSkillId());
|
||||
final BuffInfo buffInfo = ((Creature) target).getEffectList().getBuffInfoBySkillId(triggerSkill.getId());
|
||||
if (buffInfo != null)
|
||||
{
|
||||
triggerSkill = SkillData.getInstance().getSkill(_skill.getSkillId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
triggerSkill = _skill.getSkill();
|
||||
triggerSkill = SkillData.getInstance().getSkill(triggerSkill.getId(), Math.min(_skillLevelScaleTo, buffInfo.getSkill().getLevel() + 1));
|
||||
}
|
||||
}
|
||||
|
||||
SkillCaster.triggerCast(event.getAttacker(), (Creature) target, triggerSkill);
|
||||
SkillCaster.triggerCast(event.getTarget(), (Creature) target, triggerSkill);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
Reference in New Issue
Block a user