AddSkillBySkill canPump transform check and send skill list onExit.

Thanks to Liamxroy.
This commit is contained in:
MobiusDevelopment
2022-10-15 21:44:10 +00:00
parent ba09d61dc4
commit dbda42233c
24 changed files with 72 additions and 120 deletions

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }

View File

@@ -41,21 +41,19 @@ public class AddSkillBySkill extends AbstractEffect
@Override @Override
public boolean canPump(Creature effector, Creature effected, Skill skill) public boolean canPump(Creature effector, Creature effected, Skill skill)
{ {
return effector.isPlayer() && (effector.getSkillLevel(_existingSkillId) == _existingSkillLevel); return effected.isPlayer() && !effected.isTransformed() && (effected.getSkillLevel(_existingSkillId) == _existingSkillLevel);
} }
@Override @Override
public void pump(Creature effected, Skill skill) public void pump(Creature effected, Skill skill)
{ {
if (effected.isPlayer()) effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
{
effected.getActingPlayer().addSkill(_addedSkill.getSkill(), false);
}
} }
@Override @Override
public void onExit(Creature effector, Creature effected, Skill skill) public void onExit(Creature effector, Creature effected, Skill skill)
{ {
effected.removeSkill(_addedSkill.getSkill(), false); effected.removeSkill(_addedSkill.getSkill(), false);
effected.getActingPlayer().sendSkillList();
} }
} }