GuardsoftheDawn.java 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. package transformations;
  2. import com.l2jserver.gameserver.datatables.SkillTable;
  3. import com.l2jserver.gameserver.instancemanager.TransformationManager;
  4. import com.l2jserver.gameserver.model.L2Transformation;
  5. public class GuardsoftheDawn extends L2Transformation
  6. {
  7. private static final int[] SKILLS = {5491,619,963};
  8. public GuardsoftheDawn()
  9. {
  10. // id, colRadius, colHeight
  11. super(113, 8, 23.5);
  12. }
  13. @Override
  14. public void onTransform()
  15. {
  16. if (getPlayer().getTransformationId() != 113 || getPlayer().isCursedWeaponEquipped())
  17. return;
  18. transformedSkills();
  19. }
  20. public void transformedSkills()
  21. {
  22. // Decrease Bow/Crossbow Attack Speed
  23. getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
  24. // Transform Dispel
  25. getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
  26. // Guard Ambush
  27. getPlayer().addSkill(SkillTable.getInstance().getInfo(963, 1), false);
  28. getPlayer().setTransformAllowedSkills(SKILLS);
  29. }
  30. @Override
  31. public void onUntransform()
  32. {
  33. removeSkills();
  34. }
  35. public void removeSkills()
  36. {
  37. // Decrease Bow/Crossbow Attack Speed
  38. getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
  39. // Transform Dispel
  40. getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
  41. // Guard's Ambush
  42. getPlayer().removeSkill(SkillTable.getInstance().getInfo(963, 1), false);
  43. getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
  44. }
  45. public static void main(String[] args)
  46. {
  47. TransformationManager.getInstance().registerTransformation(new GuardsoftheDawn());
  48. }
  49. }