CallSkill effect can use 0 to trigger max learned skill level.

This commit is contained in:
MobiusDev 2018-05-31 12:12:18 +00:00
parent e3b983393a
commit 6aad685da3
7 changed files with 126 additions and 14 deletions

View File

@ -50,11 +50,27 @@ public final class CallSkill extends AbstractEffect
@Override
public void instant(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{
final Skill triggerSkill;
Skill triggerSkill = null;
if (_skillLevelScaleTo <= 0)
{
// Mobius: Use 0 to trigger max learned skill level.
if (_skill.getSkillLevel() == 0)
{
final int knownLevel = effected.getSkillLevel(_skill.getSkillId());
if (knownLevel > 0)
{
triggerSkill = new SkillHolder(_skill.getSkillId(), knownLevel, _skill.getSkillSubLevel()).getSkill();
}
else
{
LOGGER.warning("Player " + effected + " called unknown skill " + _skill + " triggered by " + skill + " CallSkill.");
}
}
else
{
triggerSkill = _skill.getSkill();
}
}
else
{
final BuffInfo buffInfo = effected.getEffectList().getBuffInfoBySkillId(_skill.getSkillId());

View File

@ -50,11 +50,27 @@ public final class CallSkill extends AbstractEffect
@Override
public void instant(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{
final Skill triggerSkill;
Skill triggerSkill = null;
if (_skillLevelScaleTo <= 0)
{
// Mobius: Use 0 to trigger max learned skill level.
if (_skill.getSkillLevel() == 0)
{
final int knownLevel = effected.getSkillLevel(_skill.getSkillId());
if (knownLevel > 0)
{
triggerSkill = new SkillHolder(_skill.getSkillId(), knownLevel, _skill.getSkillSubLevel()).getSkill();
}
else
{
LOGGER.warning("Player " + effected + " called unknown skill " + _skill + " triggered by " + skill + " CallSkill.");
}
}
else
{
triggerSkill = _skill.getSkill();
}
}
else
{
final BuffInfo buffInfo = effected.getEffectList().getBuffInfoBySkillId(_skill.getSkillId());

View File

@ -50,11 +50,27 @@ public final class CallSkill extends AbstractEffect
@Override
public void instant(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{
final Skill triggerSkill;
Skill triggerSkill = null;
if (_skillLevelScaleTo <= 0)
{
// Mobius: Use 0 to trigger max learned skill level.
if (_skill.getSkillLevel() == 0)
{
final int knownLevel = effected.getSkillLevel(_skill.getSkillId());
if (knownLevel > 0)
{
triggerSkill = new SkillHolder(_skill.getSkillId(), knownLevel, _skill.getSkillSubLevel()).getSkill();
}
else
{
LOGGER.warning("Player " + effected + " called unknown skill " + _skill + " triggered by " + skill + " CallSkill.");
}
}
else
{
triggerSkill = _skill.getSkill();
}
}
else
{
final BuffInfo buffInfo = effected.getEffectList().getBuffInfoBySkillId(_skill.getSkillId());

View File

@ -50,11 +50,27 @@ public final class CallSkill extends AbstractEffect
@Override
public void instant(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{
final Skill triggerSkill;
Skill triggerSkill = null;
if (_skillLevelScaleTo <= 0)
{
// Mobius: Use 0 to trigger max learned skill level.
if (_skill.getSkillLevel() == 0)
{
final int knownLevel = effected.getSkillLevel(_skill.getSkillId());
if (knownLevel > 0)
{
triggerSkill = new SkillHolder(_skill.getSkillId(), knownLevel, _skill.getSkillSubLevel()).getSkill();
}
else
{
LOGGER.warning("Player " + effected + " called unknown skill " + _skill + " triggered by " + skill + " CallSkill.");
}
}
else
{
triggerSkill = _skill.getSkill();
}
}
else
{
final BuffInfo buffInfo = effected.getEffectList().getBuffInfoBySkillId(_skill.getSkillId());

View File

@ -50,11 +50,27 @@ public final class CallSkill extends AbstractEffect
@Override
public void instant(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{
final Skill triggerSkill;
Skill triggerSkill = null;
if (_skillLevelScaleTo <= 0)
{
// Mobius: Use 0 to trigger max learned skill level.
if (_skill.getSkillLevel() == 0)
{
final int knownLevel = effected.getSkillLevel(_skill.getSkillId());
if (knownLevel > 0)
{
triggerSkill = new SkillHolder(_skill.getSkillId(), knownLevel, _skill.getSkillSubLevel()).getSkill();
}
else
{
LOGGER.warning("Player " + effected + " called unknown skill " + _skill + " triggered by " + skill + " CallSkill.");
}
}
else
{
triggerSkill = _skill.getSkill();
}
}
else
{
final BuffInfo buffInfo = effected.getEffectList().getBuffInfoBySkillId(_skill.getSkillId());

View File

@ -50,11 +50,27 @@ public final class CallSkill extends AbstractEffect
@Override
public void instant(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{
final Skill triggerSkill;
Skill triggerSkill = null;
if (_skillLevelScaleTo <= 0)
{
// Mobius: Use 0 to trigger max learned skill level.
if (_skill.getSkillLevel() == 0)
{
final int knownLevel = effected.getSkillLevel(_skill.getSkillId());
if (knownLevel > 0)
{
triggerSkill = new SkillHolder(_skill.getSkillId(), knownLevel, _skill.getSkillSubLevel()).getSkill();
}
else
{
LOGGER.warning("Player " + effected + " called unknown skill " + _skill + " triggered by " + skill + " CallSkill.");
}
}
else
{
triggerSkill = _skill.getSkill();
}
}
else
{
final BuffInfo buffInfo = effected.getEffectList().getBuffInfoBySkillId(_skill.getSkillId());

View File

@ -50,11 +50,27 @@ public final class CallSkill extends AbstractEffect
@Override
public void instant(L2Character effector, L2Character effected, Skill skill, L2ItemInstance item)
{
final Skill triggerSkill;
Skill triggerSkill = null;
if (_skillLevelScaleTo <= 0)
{
// Mobius: Use 0 to trigger max learned skill level.
if (_skill.getSkillLevel() == 0)
{
final int knownLevel = effected.getSkillLevel(_skill.getSkillId());
if (knownLevel > 0)
{
triggerSkill = new SkillHolder(_skill.getSkillId(), knownLevel, _skill.getSkillSubLevel()).getSkill();
}
else
{
LOGGER.warning("Player " + effected + " called unknown skill " + _skill + " triggered by " + skill + " CallSkill.");
}
}
else
{
triggerSkill = _skill.getSkill();
}
}
else
{
final BuffInfo buffInfo = effected.getEffectList().getBuffInfoBySkillId(_skill.getSkillId());