actual freya branch
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class Akamanah extends L2Transformation
|
||||
{
|
||||
public Akamanah()
|
||||
{
|
||||
// TODO: Unhardcode Akamanah and Zariche transformations as much as we can
|
||||
// id, colRadius, colHeight
|
||||
super(302, 10, 32.73);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
// Set charachter name to transformed name
|
||||
getPlayer().getAppearance().setVisibleName("Akamanah");
|
||||
getPlayer().getAppearance().setVisibleTitle("");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
// set character back to true name.
|
||||
getPlayer().getAppearance().setVisibleName(null);
|
||||
getPlayer().getAppearance().setVisibleTitle(null);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new Akamanah());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class Anakim extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = new int[]{720,721,722,723,724,5491,619};
|
||||
|
||||
public Anakim()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(306, 15.5, 29);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 306 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Anakim Holy Light Burst (up to 2 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(720, 2), false);
|
||||
// Anakim Energy Attack (up to 2 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(721, 2), false);
|
||||
// Anakim Holy Beam (up to 2 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(722, 2), false);
|
||||
// Anakim Sunshine
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(723, 1), false);
|
||||
// Anakim Cleanse
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(724, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Anakim Holy Light Burst (up to 2 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(720, 2), false);
|
||||
// Anakim Energy Attack (up to 2 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(721, 2), false);
|
||||
// Anakim Holy Beam (up to 2 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(722, 2), false);
|
||||
// Anakim Sunshine
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(723, 1), false);
|
||||
// Anakim Cleanse
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(724, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new Anakim());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class AquaElf extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = new int[]{619};
|
||||
|
||||
public AquaElf()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(125, 12, 27.50);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 125 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new AquaElf());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class ArcherCaptain extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = new int[]{5491, 619};
|
||||
|
||||
public ArcherCaptain()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(17, 10, 23.5);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 17 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new ArcherCaptain());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,103 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class AurabirdFalcon extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = new int[]{884,885,886,888,890,891,894,911,932,619};
|
||||
|
||||
public AurabirdFalcon()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(8, 38, 14.25);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 8 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
getPlayer().setIsFlyingMounted(true);
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Air Blink
|
||||
if (getPlayer().getLevel() >= 75)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(885, 1), false);
|
||||
|
||||
// Exhilarate
|
||||
if (getPlayer().getLevel() >= 83)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(894, 1), false);
|
||||
|
||||
int lvl = getPlayer().getLevel() -74;
|
||||
|
||||
if (lvl > 0)
|
||||
{
|
||||
// Air Assault (up to 11 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(884, lvl), false);
|
||||
// Air Shock Bomb (up to 11 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(886, lvl), false);
|
||||
// Energy Storm (up to 11 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(888, lvl), false);
|
||||
// Prodigious Flare (up to 11 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(890, lvl), false);
|
||||
// Energy Shot (up to 11 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(891, lvl), false);
|
||||
// Energy Burst (up to 11 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(911, lvl), false);
|
||||
}
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
getPlayer().setIsFlyingMounted(false);
|
||||
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Air Blink
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(885, 1), false);
|
||||
|
||||
// Exhilarate
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(894, 1), false);
|
||||
|
||||
int lvl = getPlayer().getLevel() -74;
|
||||
|
||||
if (lvl > 0)
|
||||
{
|
||||
// Air Assault (up to 11 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(884, lvl), false);
|
||||
// Air Shock Bomb (up to 11 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(886, lvl), false);
|
||||
// Energy Storm (up to 11 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(888, lvl), false);
|
||||
// Prodigious Flare (up to 11 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(890, lvl), false);
|
||||
// Energy Shot (up to 11 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(891, lvl), false);
|
||||
// Energy Burst (up to 11 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(911, lvl), false);
|
||||
}
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new AurabirdFalcon());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,103 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class AurabirdOwl extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = new int[]{884,885,887,889,892,893,895,911,932,619};
|
||||
|
||||
public AurabirdOwl()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(9, 40, 18.57);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 9 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
getPlayer().setIsFlyingMounted(true);
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Air Blink
|
||||
if (getPlayer().getLevel() >= 75)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(885, 1), false);
|
||||
|
||||
// Exhilarate
|
||||
if (getPlayer().getLevel() >= 83)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(895, 1), false);
|
||||
|
||||
int lvl = getPlayer().getLevel() -74;
|
||||
|
||||
if (lvl > 0)
|
||||
{
|
||||
// Air Assault (up to 11 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(884, lvl), false);
|
||||
// Sky Clutch (up to 11 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(887, lvl), false);
|
||||
// Energy Storm (up to 11 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(889, lvl), false);
|
||||
// Energy Shot (up to 11 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(892, lvl), false);
|
||||
// Concentrated Energy Shot (up to 11 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(893, lvl), false);
|
||||
// Energy Burst (up to 11 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(911, lvl), false);
|
||||
}
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
getPlayer().setIsFlyingMounted(false);
|
||||
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Air Blink
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(885, 1), false);
|
||||
|
||||
// Exhilarate
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(895, 1), false);
|
||||
|
||||
int lvl = getPlayer().getLevel() -74;
|
||||
|
||||
if (lvl > 0)
|
||||
{
|
||||
// Air Assault (up to 11 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(884, lvl), false);
|
||||
// Sky Clutch (up to 11 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(887, lvl), false);
|
||||
// Energy Storm (up to 11 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(889, lvl), false);
|
||||
// Energy Shot (up to 11 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(892, lvl), false);
|
||||
// Concentrated Energy Shot (up to 11 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(893, lvl), false);
|
||||
// Energy Burst (up to 11 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(911, lvl), false);
|
||||
}
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new AurabirdOwl());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,68 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class Benom extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = new int[]{725,726,727,5491,619};
|
||||
|
||||
public Benom()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(307, 20, 56);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 307 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Benom Power Smash
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(725, 1), false);
|
||||
// Benom Sonic Storm
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(726, 1), false);
|
||||
// Benom Disillusion
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(727, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Benom Power Smash
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(725, 1), false);
|
||||
// Benom Sonic Storm
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(726, 1), false);
|
||||
// Benom Disillusion
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(727, 1), false, false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new Benom());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class Buffalo extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = new int[]{5437,619};
|
||||
|
||||
public Buffalo()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(103, 22, 31);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 103 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Dissonance
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5437, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Dissonance
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5437, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new Buffalo());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class DarkElfMercenary extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = new int[]{5491, 619};
|
||||
|
||||
public DarkElfMercenary()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(12, 8, 25);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 12 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new DarkElfMercenary());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class DemonPrince extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {735,736,737,5491,619};
|
||||
public DemonPrince()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(311, 33, 49);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 311 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Devil Spinning Weapon
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(735, 1), false);
|
||||
// Devil Seed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(736, 1), false);
|
||||
// Devil Ultimate Defense
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(737, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Devil Spinning Weapon
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(735, 1), false);
|
||||
// Devil Seed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(736, 1), false);
|
||||
// Devil Ultimate Defense
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(737, 1), false, false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new DemonPrince());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,81 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
/*
|
||||
* TODO: Skill levels. How do they work? Transformation is given at level 83, there are 6 levels of the skill. How are they assigned? Based on player level somehow? Based on servitor?
|
||||
*/
|
||||
public class DemonRace extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {901,902,903,904,905,5491,619};
|
||||
public DemonRace()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(221, 11, 27);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 221 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
if (getPlayer().getPet() != null)
|
||||
getPlayer().getPet().unSummon(getPlayer());
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Dark Strike (up to 6)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(901, 4), false);
|
||||
// Bursting Flame (up to 6)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(902, 4), false);
|
||||
// Stratum Explosion (up to 6)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(903, 4), false);
|
||||
// Corpse Burst (up to 6)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(904, 4), false);
|
||||
// Dark Detonation (up to 6)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(905, 4), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Dark Strike
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(901, 4), false);
|
||||
// Bursting Flame
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(902, 4), false);
|
||||
// Stratum Explosion
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(903, 4), false);
|
||||
// Corpse Burst
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(904, 4), false);
|
||||
// Dark Detonation
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(905, 4), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new DemonRace());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,79 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class DivineEnchanter extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {704,705,706,707,708,709,5779,619};
|
||||
public DivineEnchanter()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(257, 8, 18.25);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 257 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Divine Enchanter Water Spirit
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(704, 1), false);
|
||||
// Divine Enchanter Fire Spirit
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(705, 1), false);
|
||||
// Divine Enchanter Wind Spirit
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(706, 1), false);
|
||||
// Divine Enchanter Hero Spirit
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(707, 1), false);
|
||||
// Divine Enchanter Mass Binding
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(708, 1), false);
|
||||
// Sacrifice Enchanter
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(709, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Divine Enchanter Water Spirit
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(704, 1), false, false);
|
||||
// Divine Enchanter Fire Spirit
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(705, 1), false, false);
|
||||
// Divine Enchanter Wind Spirit
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(706, 1), false, false);
|
||||
// Divine Enchanter Hero Spirit
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(707, 1), false, false);
|
||||
// Divine Enchanter Mass Binding
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(708, 1), false, false);
|
||||
// Sacrifice Enchanter
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(709, 1), false, false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new DivineEnchanter());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,79 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class DivineHealer extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {648,803,1490,698,699,700,701,702,703,5491,619};
|
||||
public DivineHealer()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(255, 10, 25);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 255 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Divine Healer Major Heal
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(698, 1), false);
|
||||
// Divine Healer Battle Heal
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(699, 1), false);
|
||||
// Divine Healer Group Heal
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(700, 1), false);
|
||||
// Divine Healer Resurrection
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(701, 1), false);
|
||||
// Divine Healer Cleanse
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(702, 1), false);
|
||||
// Sacrifice Healer
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(703, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Divine Healer Major Heal
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(698, 1), false);
|
||||
// Divine Healer Battle Heal
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(699, 1), false);
|
||||
// Divine Healer Group Heal
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(700, 1), false);
|
||||
// Divine Healer Resurrection
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(701, 1), false);
|
||||
// Divine Healer Clans
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(702, 1), false);
|
||||
// Sacrifice Healer
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(703, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new DivineHealer());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,87 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class DivineKnight extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {680,681,682,683,684,685,795,796,5491,619};
|
||||
public DivineKnight()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(252, 16, 30);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 252 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Divine Knight Hate
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(680, 1), false);
|
||||
// Divine Knight Hate Aura
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(681, 1), false);
|
||||
// Divine Knight Stun Attack
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(682, 1), false);
|
||||
// Divine Knight Thunder Storm
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(683, 1), false);
|
||||
// Divine Knight Ultimate Defense
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(684, 1), false);
|
||||
// Sacrifice Knight
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(685, 1), false);
|
||||
// Divine Knight Brandish
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(795, 1), false);
|
||||
// Divine Knight Explosion
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(796, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Divine Knight Hate
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(680, 1), false);
|
||||
// Divine Knight Hate Aura
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(681, 1), false);
|
||||
// Divine Knight Stun Attack
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(682, 1), false);
|
||||
// Divine Knight Thunder Storm
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(683, 1), false);
|
||||
// Divine Knight Ultimate Defense
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(684, 1), false, false);
|
||||
// Sacrifice Knight
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(685, 1), false, false);
|
||||
// Divine Knight Brandish
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(795, 1), false);
|
||||
// Divine Knight Explosion
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(796, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new DivineKnight());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,83 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class DivineRogue extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {686,687,688,689,690,691,797,5491,619};
|
||||
public DivineRogue()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(254, 10, 28);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 254 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Divine Rogue Stun Shot
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(686, 1), false);
|
||||
// Divine Rogue Double Shot
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(687, 1), false);
|
||||
// Divine Rogue Bleed Attack
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(688, 1), false);
|
||||
// Divine Rogue Deadly Blow
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(689, 1), false);
|
||||
// Divine Rogue Agility
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(690, 1), false);
|
||||
// Sacrifice Rogue
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(691, 1), false);
|
||||
// Divine Rogue Piercing Attack
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(797, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Divine Rogue Stun Shot
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(686, 1), false);
|
||||
// Divine Rogue Double Shot
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(687, 1), false);
|
||||
// Divine Rogue Bleed Attack
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(688, 1), false);
|
||||
// Divine Rogue Deadly Blow
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(689, 1), false);
|
||||
// Divine Rogue Agility
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(690, 1), false, false);
|
||||
// Sacrifice Rogue
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(691, 1), false, false);
|
||||
// Divine Rogue Piercing Attack
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(797, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new DivineRogue());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,81 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class DivineSummoner extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {710,711,712,713,714,5779,619};
|
||||
public DivineSummoner()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(258, 10, 25);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 258 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
if (getPlayer().getPet() != null)
|
||||
getPlayer().getPet().unSummon(getPlayer());
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Divine Summoner Summon Divine Beast
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(710, 1), false);
|
||||
// Divine Summoner Transfer Pain
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(711, 1), false);
|
||||
// Divine Summoner Final Servitor
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(712, 1), false);
|
||||
// Divine Summoner Servitor Hill
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(713, 1), false);
|
||||
// Sacrifice Summoner
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(714, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
if (getPlayer().getPet() != null)
|
||||
getPlayer().getPet().unSummon(getPlayer());
|
||||
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Divine Summoner Summon Divine Beast
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(710, 1), false);
|
||||
// Divine Summoner Transfer Pain
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(711, 1), false);
|
||||
// Divine Summoner Final Servitor
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(712, 1), false);
|
||||
// Divine Summoner Servitor Hill
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(713, 1), false);
|
||||
// Sacrifice Summoner
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(714, 1), false, false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new DivineSummoner());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,79 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class DivineWarrior extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {675,676,677,678,679,798,5491,619};
|
||||
public DivineWarrior()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(253, 14.5, 29);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 253 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Cross Slash
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(675, 1), false);
|
||||
// Sonic Blaster
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(676, 1), false);
|
||||
// Transfixition of Earth
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(677, 1), false);
|
||||
// Divine Warrior War Cry
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(678, 1), false);
|
||||
// Sacrifice Warrior
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(679, 1), false);
|
||||
// Divine Warrior Assault Attack
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(798, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Cross Slash
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(675, 1), false);
|
||||
// Sonic Blaster
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(676, 1), false);
|
||||
// Transfixition of Earth
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(677, 1), false);
|
||||
// Divine Warrior War Cry
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(678, 1), false, false);
|
||||
// Sacrifice Warrior
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(679, 1), false, false);
|
||||
// Divine Warrior Assault Attack
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(798, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new DivineWarrior());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,79 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class DivineWizard extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {692,693,694,695,696,697,5491,619};
|
||||
public DivineWizard()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(256, 10, 26);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 256 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Divine Wizard Holy Flare
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(692, 1), false);
|
||||
// Divine Wizard Holy Strike
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(693, 1), false);
|
||||
// Divine Wizard Holy Curtain
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(694, 1), false);
|
||||
// Divine Wizard Holy Cloud
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(695, 1), false);
|
||||
// Divine Wizard Surrender to Holy
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(696, 1), false);
|
||||
// Sacrifice Wizard
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(697, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Divine Wizard Holy Flare
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(692, 1), false);
|
||||
// Divine Wizard Holy Strike
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(693, 1), false);
|
||||
// Divine Wizard Holy Curtain
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(694, 1), false);
|
||||
// Divine Wizard Holy Cloud
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(695, 1), false);
|
||||
// Divine Wizard Surrender to Holy
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(696, 1), false);
|
||||
// Sacrifice Wizard
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(697, 1), false, false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new DivineWizard());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,103 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class DollBlader extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {752,753,754,5491,619};
|
||||
public DollBlader()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(7, 6, 12);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 7 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Doll Blader Clairvoyance
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(754, 1), false);
|
||||
|
||||
if (getPlayer().getLevel() >= 76)
|
||||
{
|
||||
// Doll Blader Sting (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(752, 3), false);
|
||||
// Doll Blader Throwing Knife (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(753, 3), false);
|
||||
}
|
||||
else if (getPlayer().getLevel() >= 73)
|
||||
{
|
||||
// Doll Blader Sting (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(752, 2), false);
|
||||
// Doll Blader Throwing Knife (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(753, 2), false);
|
||||
}
|
||||
else if (getPlayer().getLevel() >= 70)
|
||||
{
|
||||
// Doll Blader Sting (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(752, 1), false);
|
||||
// Doll Blader Throwing Knife (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(753, 1), false);
|
||||
}
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Doll Blader Clairvoyance
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(754, 1), false, false);
|
||||
|
||||
if (getPlayer().getLevel() >= 76)
|
||||
{
|
||||
// Doll Blader Sting (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(752, 3), false);
|
||||
// Doll Blader Throwing Knife (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(753, 3), false);
|
||||
}
|
||||
else if (getPlayer().getLevel() >= 73)
|
||||
{
|
||||
// Doll Blader Sting (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(752, 2), false);
|
||||
// Doll Blader Throwing Knife (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(753, 2), false);
|
||||
}
|
||||
else
|
||||
{
|
||||
// Doll Blader Sting (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(752, 1), false);
|
||||
// Doll Blader Throwing Knife (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(753, 1), false);
|
||||
}
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new DollBlader());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class DoomWraith extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {586,587,588,589,5491,619};
|
||||
public DoomWraith()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(2, 13, 25);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 2 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Rolling Attack (up to 2 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(586, 2), false);
|
||||
// Earth Storm (up to 2 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(587, 2), false);
|
||||
// Curse of Darkness (up to 2 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(588, 2), false);
|
||||
// Darkness Energy Drain (up to 2 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(589, 2), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Rolling Attack (up to 2 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(586, 2), false);
|
||||
// Earth Storm (up to 2 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(587, 2), false);
|
||||
// Curse of Darkness (up to 2 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(588, 2), false);
|
||||
// Darkness Energy Drain (up to 2 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(589, 2), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new DoomWraith());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class DragonBomberNormal extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {580,581,582,583,5491,619};
|
||||
public DragonBomberNormal()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(217, 16, 24);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 217 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Death Blow (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(580, 3), false);
|
||||
// Sand Cloud (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(581, 3), false);
|
||||
// Scope Bleed (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(582, 3), false);
|
||||
// Assimilation (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(583, 3), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Death Blow (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(580, 3), false);
|
||||
// Sand Cloud (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(581, 3), false);
|
||||
// Scope Bleed (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(582, 3), false);
|
||||
// Assimilation (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(583, 3), false, false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new DragonBomberNormal());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class DragonBomberStrong extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {580,581,582,583,5491,619};
|
||||
public DragonBomberStrong()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(216, 16, 24);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 216 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Death Blow (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(580, 4), false);
|
||||
// Sand Cloud (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(581, 4), false);
|
||||
// Scope Bleed (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(582, 4), false);
|
||||
// Assimilation (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(583, 4), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Death Blow (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(580, 4), false);
|
||||
// Sand Cloud (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(581, 4), false);
|
||||
// Scope Bleed (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(582, 4), false);
|
||||
// Assimilation (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(583, 4), false, false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new DragonBomberStrong());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class DragonBomberWeak extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {580,581,582,583,5491,619};
|
||||
public DragonBomberWeak()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(218, 16, 24);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 218 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Death Blow (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(580, 2), false);
|
||||
// Sand Cloud (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(581, 2), false);
|
||||
// Scope Bleed (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(582, 2), false);
|
||||
// Assimilation (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(583, 2), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Death Blow (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(580, 2), false);
|
||||
// Sand Cloud (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(581, 2), false);
|
||||
// Scope Bleed (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(582, 2), false);
|
||||
// Assimilation (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(583, 2), false, false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new DragonBomberWeak());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class DwarfGolem extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {806,807,808,809,5491,619};
|
||||
public DwarfGolem()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(259, 31, 51.8);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 259 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Magic Obstacle
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(806, 1), false);
|
||||
// Over-hit
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(807, 1), false);
|
||||
// Golem Punch
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(808, 1), false);
|
||||
// Golem Tornado Swing
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(809, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Magic Obstacle
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(806, 1), false);
|
||||
// Over-hit
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(807, 1), false);
|
||||
// Golem Punch
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(808, 1), false);
|
||||
// Golem Tornado Swing
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(809, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new DwarfGolem());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class DwarfMercenary extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,619};
|
||||
public DwarfMercenary()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(14, 8, 19);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 14 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new DwarfMercenary());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class ElfMercenary extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,619};
|
||||
public ElfMercenary()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(11, 8, 23.5);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 11 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new ElfMercenary());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class EpicQuestChild extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = { 5437, 960 };
|
||||
|
||||
public EpicQuestChild()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(112, 5, 12.3);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 112 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Dissonance
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5437, 1), false);
|
||||
// Race Running
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(960, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Dissonance
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5437, 1), false);
|
||||
// Race Running
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(960, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new EpicQuestChild());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class EpicQuestFrog extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = { 5437, 959 };
|
||||
|
||||
public EpicQuestFrog()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(111, 20, 10);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 111 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Dissonance
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5437, 1), false);
|
||||
// Frog Jump
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(959, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Dissonance
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5437, 1), false);
|
||||
// Frog Jump
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(959, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new EpicQuestFrog());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class EpicQuestNative extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = { 5437, 961 };
|
||||
|
||||
public EpicQuestNative()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(124, 8, 23.5);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 124 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Dissonance
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5437, 1), false);
|
||||
// Swift Dash
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(961, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Dissonance
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5437, 1), false);
|
||||
// Swift Dash
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(961, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new EpicQuestNative());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,87 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class FlyingFinalForm extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {932,950,951,953,1544,1545,619};
|
||||
public FlyingFinalForm()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(260, 9, 38);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 260 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
getPlayer().setIsFlyingMounted(true);
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Life to Soul
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(953, 1), false);
|
||||
// Soul Sucking
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(1545, 1), false);
|
||||
|
||||
int lvl = getPlayer().getLevel() -78;
|
||||
|
||||
if (lvl > 0)
|
||||
{
|
||||
// Nail Attack (up to 7 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(950, lvl), false);
|
||||
// Wing Assault (up to 7 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(951, lvl), false);
|
||||
// Death Beam (up to 7 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(1544, lvl), false);
|
||||
}
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
getPlayer().setIsFlyingMounted(false);
|
||||
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Life to Soul
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(953, 1), false);
|
||||
// Soul Sucking
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(1545, 1), false);
|
||||
|
||||
int lvl = getPlayer().getLevel() -78;
|
||||
|
||||
if (lvl > 0)
|
||||
{
|
||||
// Nail Attack (up to 7 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(950, lvl), false);
|
||||
// Wing Assault (up to 7 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(951, lvl), false);
|
||||
// Death Beam (up to 7 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(1544, lvl), false);
|
||||
}
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new FlyingFinalForm());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class FortressCaptain extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,619};
|
||||
public FortressCaptain()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(21, 10, 26.99);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 21 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new FortressCaptain());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class GolemGuardianNormal extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {572,573,574,575,5491,619};
|
||||
public GolemGuardianNormal()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(211, 13, 25);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 211 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Double Slasher (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(572, 3), false);
|
||||
// Earthquake (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(573, 3), false);
|
||||
// Bomb Installation (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(574, 3), false);
|
||||
// Steel Cutter (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(575, 3), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Double Slasher (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(572, 3), false);
|
||||
// Earthquake (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(573, 3), false);
|
||||
// Bomb Installation (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(574, 3), false);
|
||||
// Steel Cutter (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(575, 3), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new GolemGuardianNormal());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class GolemGuardianStrong extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {572,573,574,575,5491,619};
|
||||
public GolemGuardianStrong()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(210, 13, 25);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 210 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Double Slasher (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(572, 4), false);
|
||||
// Earthquake (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(573, 4), false);
|
||||
// Bomb Installation (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(574, 4), false);
|
||||
// Steel Cutter (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(575, 4), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Double Slasher (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(572, 4), false);
|
||||
// Earthquake (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(573, 4), false);
|
||||
// Bomb Installation (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(574, 4), false);
|
||||
// Steel Cutter (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(575, 4), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new GolemGuardianStrong());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class GolemGuardianWeak extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {572,573,574,575,5491,619};
|
||||
public GolemGuardianWeak()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(212, 13, 25);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 212 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Double Slasher (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(572, 2), false);
|
||||
// Earthquake (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(573, 2), false);
|
||||
// Bomb Installation (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(574, 2), false);
|
||||
// Steel Cutter (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(575, 2), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Double Slasher (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(572, 2), false);
|
||||
// Earthquake (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(573, 2), false);
|
||||
// Bomb Installation (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(574, 2), false);
|
||||
// Steel Cutter (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(575, 2), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new GolemGuardianWeak());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class Gordon extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {728,729,730,5491,619};
|
||||
public Gordon()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(308, 43, 46.6);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 308 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Gordon Beast Attack
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(728, 1), false);
|
||||
// Gordon Sword Stab
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(729, 1), false);
|
||||
// Gordon Press
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(730, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Gordon Beast Attack
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(728, 1), false);
|
||||
// Gordon Sword Stab
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(729, 1), false);
|
||||
// Gordon Press
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(730, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new Gordon());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class GrailApostleNormal extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {559,560,561,562,5491,619};
|
||||
public GrailApostleNormal()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(202, 10, 35);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 202 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Spear (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(559, 3), false);
|
||||
// Power Slash (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(560, 3), false);
|
||||
// Bless of Angel (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(561, 3), false);
|
||||
// Wind of Angel (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(562, 3), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Spear (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(559, 3), false);
|
||||
// Power Slash (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(560, 3), false);
|
||||
// Bless of Angel (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(561, 3), false, false);
|
||||
// Wind of Angel (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(562, 3), false, false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new GrailApostleNormal());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class GrailApostleStrong extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {559,560,561,562,5491,619};
|
||||
public GrailApostleStrong()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(201, 10, 35);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 201 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Spear (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(559, 4), false);
|
||||
// Power Slash (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(560, 4), false);
|
||||
// Bless of Angel (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(561, 4), false);
|
||||
// Wind of Angel (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(562, 4), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Spear (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(559, 4), false);
|
||||
// Power Slash (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(560, 4), false);
|
||||
// Bless of Angel (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(561, 4), false, false);
|
||||
// Wind of Angel (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(562, 4), false, false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new GrailApostleStrong());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class GrailApostleWeak extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {559,560,561,562,5491,619};
|
||||
public GrailApostleWeak()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(203, 10, 35);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 203 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Spear (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(559, 2), false);
|
||||
// Power Slash (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(560, 2), false);
|
||||
// Bless of Angel (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(561, 2), false);
|
||||
// Wind of Angel (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(562, 2), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Spear (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(559, 2), false);
|
||||
// Power Slash (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(560, 2), false);
|
||||
// Bless of Angel (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(561, 2), false, false);
|
||||
// Wind of Angel (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(562, 2), false, false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new GrailApostleWeak());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class GrizzlyBear extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,619};
|
||||
public GrizzlyBear()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(320, 21, 40);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 320 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new GrizzlyBear());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,51 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class GuardianStrider extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {839};
|
||||
public GuardianStrider()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(123, 13, 40);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 123 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Dismount
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(839, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Dismount
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(839, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new GuardianStrider());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class GuardsoftheDawn extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,619,963};
|
||||
public GuardsoftheDawn()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(113, 8, 23.5);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 113 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
// Guard Ambush
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(963, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
// Guard's Ambush
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(963, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new GuardsoftheDawn());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class HeavyTow extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,619};
|
||||
public HeavyTow()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(119, 4.4, 8.25);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 119 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new HeavyTow());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,121 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class Heretic extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {738,739,740,741,5491,619};
|
||||
public Heretic()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(3, 7.7, 28.4);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 3 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
if (getPlayer().getLevel() >= 76)
|
||||
{
|
||||
// Heretic Heal (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(738, 3), false);
|
||||
// Heretic Battle Heal (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(739, 3), false);
|
||||
// Heretic Resurrection (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(740, 3), false);
|
||||
// Heretic Heal Side Effect (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(741, 3), false);
|
||||
}
|
||||
else if (getPlayer().getLevel() >= 73)
|
||||
{
|
||||
// Heretic Heal (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(738, 2), false);
|
||||
// Heretic Battle Heal (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(739, 2), false);
|
||||
// Heretic Resurrection (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(740, 2), false);
|
||||
// Heretic Heal Side Effect (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(741, 2), false);
|
||||
}
|
||||
else if (getPlayer().getLevel() >= 70)
|
||||
{
|
||||
// Heretic Heal (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(738, 1), false);
|
||||
// Heretic Battle Heal (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(739, 1), false);
|
||||
// Heretic Resurrection (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(740, 1), false);
|
||||
// Heretic Heal Side Effect (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(741, 1), false);
|
||||
}
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
if (getPlayer().getLevel() >= 76)
|
||||
{
|
||||
// Heretic Heal (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(738, 3), false);
|
||||
// Heretic Battle Heal (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(739, 3), false);
|
||||
// Heretic Resurrection (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(740, 3), false);
|
||||
// Heretic Heal Side Effect (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(741, 3), false, false);
|
||||
}
|
||||
else if (getPlayer().getLevel() >= 73)
|
||||
{
|
||||
// Heretic Heal (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(738, 2), false);
|
||||
// Heretic Battle Heal (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(739, 2), false);
|
||||
// Heretic Resurrection (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(740, 2), false);
|
||||
// Heretic Heal Side Effect (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(741, 2), false, false);
|
||||
}
|
||||
else
|
||||
{
|
||||
// Heretic Heal (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(738, 1), false);
|
||||
// Heretic Battle Heal (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(739, 1), false);
|
||||
// Heretic Resurrection (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(740, 1), false);
|
||||
// Heretic Heal Side Effect (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(741, 1), false, false);
|
||||
}
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new Heretic());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class HumanMercenary extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,619};
|
||||
public HumanMercenary()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(10, 8, 24);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 10 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new HumanMercenary());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class InfernoDrakeNormal extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {619,5491,576,577,578,579};
|
||||
public InfernoDrakeNormal()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(214, 15, 24);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 214 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Paw Strike (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(576, 3), false);
|
||||
// Fire Breath (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(577, 3), false);
|
||||
// Blaze Quake (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(578, 3), false);
|
||||
// Fire Armor (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(579, 3), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Paw Strike (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(576, 3), false);
|
||||
// Fire Breath (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(577, 3), false);
|
||||
// Blaze Quake (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(578, 3), false);
|
||||
// Fire Armor (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(579, 3), false, false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new InfernoDrakeNormal());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class InfernoDrakeStrong extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {576,577,578,579,5491,619};
|
||||
public InfernoDrakeStrong()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(213, 15, 24);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 213 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Paw Strike (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(576, 4), false);
|
||||
// Fire Breath (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(577, 4), false);
|
||||
// Blaze Quake (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(578, 4), false);
|
||||
// Fire Armor (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(579, 4), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Paw Strike (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(576, 4), false);
|
||||
// Fire Breath (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(577, 4), false);
|
||||
// Blaze Quake (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(578, 4), false);
|
||||
// Fire Armor (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(579, 4), false, false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new InfernoDrakeStrong());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class InfernoDrakeWeak extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {576,577,578,579,5491,619};
|
||||
public InfernoDrakeWeak()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(215, 15, 24);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 215 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Paw Strike (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(576, 2), false);
|
||||
// Fire Breath (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(577, 2), false);
|
||||
// Blaze Quake (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(578, 2), false);
|
||||
// Fire Armor (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(579, 2), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Paw Strike (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(576, 2), false);
|
||||
// Fire Breath (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(577, 2), false);
|
||||
// Blaze Quake (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(578, 2), false);
|
||||
// Fire Armor (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(579, 2), false, false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new InfernoDrakeWeak());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,74 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class InquisitorBishop extends L2Transformation
|
||||
{
|
||||
public InquisitorBishop()
|
||||
{
|
||||
// id
|
||||
super(316);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 316 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
int lvl = 1;
|
||||
if (getPlayer().getLevel() > 43)
|
||||
lvl = (getPlayer().getLevel() - 43);
|
||||
|
||||
// Divine Punishment
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(1523, lvl), false);
|
||||
// Divine Flash
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(1528, lvl), false);
|
||||
// Surrender to the Holy
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(1524, lvl), false);
|
||||
// Divine Curse
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(1525, lvl), false);
|
||||
// Set allowed skills
|
||||
getPlayer().setTransformAllowedSkills(new int[]{838,1523,1528,1524,1525,1430,1043,1042,1400,1418});
|
||||
// Switch Stance
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(838, 1), false);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
int lvl = 1;
|
||||
if (getPlayer().getLevel() > 43)
|
||||
lvl = (getPlayer().getLevel() - 43);
|
||||
|
||||
// Divine Punishment
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(1523, lvl), false);
|
||||
// Divine Flash
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(1528, lvl), false);
|
||||
// Surrender to the Holy
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(1524, lvl), false);
|
||||
// Divine Curse
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(1525, lvl), false);
|
||||
// Switch Stance
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(838, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new InquisitorBishop());
|
||||
}
|
||||
}
|
||||
+74
@@ -0,0 +1,74 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class InquisitorElvenElder extends L2Transformation
|
||||
{
|
||||
public InquisitorElvenElder()
|
||||
{
|
||||
// id
|
||||
super(317);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 317 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
int lvl = 1;
|
||||
if (getPlayer().getLevel() > 43)
|
||||
lvl = (getPlayer().getLevel() - 43);
|
||||
|
||||
// Divine Punishment
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(1523, lvl), false);
|
||||
// Divine Flash
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(1528, lvl), false);
|
||||
// Surrender to the Holy
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(1524, lvl), false);
|
||||
// Divine Curse
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(1525, lvl), false);
|
||||
// Set allowed skills
|
||||
getPlayer().setTransformAllowedSkills(new int[]{838,1523,1528,1524,1525,1430,1043,1400,1303});
|
||||
// Switch Stance
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(838, 1), false);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
int lvl = 1;
|
||||
if (getPlayer().getLevel() > 43)
|
||||
lvl = (getPlayer().getLevel() - 43);
|
||||
|
||||
// Divine Punishment
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(1523, lvl), false);
|
||||
// Divine Flash
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(1528, lvl), false);
|
||||
// Surrender to the Holy
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(1524, lvl), false);
|
||||
// Divine Curse
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(1525, lvl), false);
|
||||
// Switch Stance
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(838, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new InquisitorElvenElder());
|
||||
}
|
||||
}
|
||||
+78
@@ -0,0 +1,78 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class InquisitorShilienElder extends L2Transformation
|
||||
{
|
||||
public InquisitorShilienElder()
|
||||
{
|
||||
// id
|
||||
super(318);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 318 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
int lvl = 1;
|
||||
if (getPlayer().getLevel() > 43)
|
||||
lvl = (getPlayer().getLevel() - 43);
|
||||
|
||||
// Divine Punishment
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(1523, lvl), false);
|
||||
// Divine Flash
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(1528, lvl), false);
|
||||
// Holy Weapon
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(1043, 1), false);
|
||||
// Surrender to the Holy
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(1524, lvl), false);
|
||||
// Divine Curse
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(1525, lvl), false);
|
||||
// Set allowed skills
|
||||
getPlayer().setTransformAllowedSkills(new int[]{838,1523,1528,1524,1525,1430,1303,1059,1043});
|
||||
// Switch Stance
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(838, 1), false);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
int lvl = 1;
|
||||
if (getPlayer().getLevel() > 43)
|
||||
lvl = (getPlayer().getLevel() - 43);
|
||||
|
||||
// Divine Punishment
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(1523, lvl), false);
|
||||
// Divine Flash
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(1528, lvl), false);
|
||||
// Holy Weapon
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(1043, 1), false, false);
|
||||
// Surrender to the Holy
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(1524, lvl), false);
|
||||
// Divine Curse
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(1525, lvl), false);
|
||||
// Switch Stance
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(838, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new InquisitorShilienElder());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class JetBike extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,839};
|
||||
public JetBike()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(20001, 21.5, 27);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 20001 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Dismount
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(839, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Dismount
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(839, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new JetBike());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class Kadomas extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {23154,619};
|
||||
public Kadomas()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(20000, 24.5, 14);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 20000 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
//Kadomas Special Skill - Fireworks
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(23154, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
//Kadomas Special Skill - Fireworks
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(23154, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new Kadomas());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class Kamael extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {539,540,1471,1472,5491,619};
|
||||
public Kamael()
|
||||
{
|
||||
// id, duration (secs), colRadius, colHeight
|
||||
super(251, 9, 38);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 251 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Nail Attack
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(539, 1), false);
|
||||
// Wing Assault
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(540, 1), false);
|
||||
// Soul Sucking
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(1471, 1), false);
|
||||
// Death Beam
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(1472, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Nail Attack
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(539, 1), false);
|
||||
// Wing Assault
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(540, 1), false);
|
||||
// Soul Sucking
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(1471, 1), false);
|
||||
// Death Beam
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(1472, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new Kamael());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class KamaelGuardCaptain extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,619};
|
||||
public KamaelGuardCaptain()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(19, 13, 22.5);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 19 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new KamaelGuardCaptain());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class KamaelMercenary extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,619};
|
||||
public KamaelMercenary()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(15, 13, 25);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 15 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new KamaelMercenary());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,63 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class Kiyachi extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {733,734,5491,619};
|
||||
public Kiyachi()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(310, 12, 29);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 310 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Kechi Double Cutter
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(733, 1), false);
|
||||
// Kechi Air Blade
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(734, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Kechi Double Cutter
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(733, 1), false);
|
||||
// Kechi Air Blade
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(734, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new Kiyachi());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class KnightofDawn extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,619};
|
||||
public KnightofDawn()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(20, 12, 24.5);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 20 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new KnightofDawn());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class LavaGolem extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,619};
|
||||
public LavaGolem()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(322, 22, 45);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 322 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new LavaGolem());
|
||||
}
|
||||
}
|
||||
+55
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class LightPurpleManedHorse extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,839};
|
||||
public LightPurpleManedHorse()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(106, 31, 32.5);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 106 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Dismount
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(839, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Dismount
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(839, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new LightPurpleManedHorse());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class LilimKnightNormal extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {568,569,570,571,5491,619};
|
||||
public LilimKnightNormal()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(208, 12, 25.5);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 208 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Attack Buster (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(568, 3), false);
|
||||
// Attack Storm (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(569, 3), false);
|
||||
// Attack Rage (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(570, 3), false);
|
||||
// Poison Dust (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(571, 3), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Attack Buster (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(568, 3), false);
|
||||
// Attack Storm (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(569, 3), false);
|
||||
// Attack Rage (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(570, 3), false);
|
||||
// Poison Dust (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(571, 3), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new LilimKnightNormal());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class LilimKnightStrong extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {568,569,570,571,5491,619};
|
||||
public LilimKnightStrong()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(207, 12, 25.5);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 207 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Attack Buster (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(568, 4), false);
|
||||
// Attack Storm (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(569, 4), false);
|
||||
// Attack Rage (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(570, 4), false);
|
||||
// Poison Dust (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(571, 4), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Attack Buster (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(568, 4), false);
|
||||
// Attack Storm (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(569, 4), false);
|
||||
// Attack Rage (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(570, 4), false);
|
||||
// Poison Dust (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(571, 4), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new LilimKnightStrong());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class LilimKnightWeak extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {568,569,570,571,5491,619};
|
||||
public LilimKnightWeak()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(209, 12, 25.5);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 209 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Attack Buster (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(568, 2), false);
|
||||
// Attack Storm (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(569, 2), false);
|
||||
// Attack Rage (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(570, 2), false);
|
||||
// Poison Dust (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(571, 2), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Attack Buster (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(568, 2), false);
|
||||
// Attack Storm (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(569, 2), false);
|
||||
// Attack Rage (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(570, 2), false);
|
||||
// Poison Dust (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(571, 2), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new LilimKnightWeak());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class LureTow extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,619};
|
||||
public LureTow()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(118, 4.4, 8.25);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 118 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new LureTow());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class MagicLeader extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,619};
|
||||
public MagicLeader()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(18, 9, 23.5);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 18 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new MagicLeader());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,81 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
/*
|
||||
* TODO: Skill levels. How do they work? Transformation is given at level 83, there are 6 levels of the skill. How are they assigned? Based on player level somehow? Based on servitor?
|
||||
*/
|
||||
public class MyoRace extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {896,897,898,899,900,5491,619};
|
||||
public MyoRace()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(219, 10, 23);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 219 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
if (getPlayer().getPet() != null)
|
||||
getPlayer().getPet().unSummon(getPlayer());
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Rolling Step (up to 6 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(896, 4), false);
|
||||
// Double Blast (up to 6 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(897, 4), false);
|
||||
// Tornado Slash (up to 6 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(898, 4), false);
|
||||
// Cat Roar (up to 6 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(899, 4), false);
|
||||
// Energy Blast (up to 6)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(900, 4), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Rolling Step (up to 6 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(896, 4), false);
|
||||
// Double Blast (up to 6 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(897, 4), false);
|
||||
// Tornado Slash (up to 6 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(898, 4), false);
|
||||
// Cat Roar (up to 6 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(899, 4), false);
|
||||
// Energy Blast (up to 6)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(900, 4), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new MyoRace());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class Native extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,619};
|
||||
public Native()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(101, 8, 23.5);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 101 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new Native());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,105 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class OlMahum extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {749,750,751,5491,619};
|
||||
public OlMahum()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(6, 23, 61);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 6 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
if (getPlayer().getLevel() >= 76)
|
||||
{
|
||||
// Oel Mahum Stun Attack (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(749, 3), false);
|
||||
// Oel Mahum Ultimate Defense
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(750, 1), false);
|
||||
// Oel Mahum Arm Flourish (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(751, 3), false);
|
||||
}
|
||||
else if (getPlayer().getLevel() >= 73)
|
||||
{
|
||||
// Oel Mahum Stun Attack (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(749, 2), false);
|
||||
// Oel Mahum Ultimate Defense
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(750, 1), false);
|
||||
// Oel Mahum Arm Flourish (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(751, 2), false);
|
||||
}
|
||||
else if (getPlayer().getLevel() >= 70)
|
||||
{
|
||||
// Oel Mahum Stun Attack (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(749, 1), false);
|
||||
// Oel Mahum Ultimate Defense
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(750, 1), false);
|
||||
// Oel Mahum Arm Flourish (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(751, 1), false);
|
||||
}
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
if (getPlayer().getLevel() >= 76)
|
||||
{
|
||||
// Oel Mahum Stun Attack (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(749, 3), false);
|
||||
// Oel Mahum Arm Flourish (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(751, 3), false);
|
||||
}
|
||||
else if (getPlayer().getLevel() >= 73)
|
||||
{
|
||||
// Oel Mahum Stun Attack (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(749, 2), false);
|
||||
// Oel Mahum Arm Flourish (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(751, 2), false);
|
||||
}
|
||||
else if (getPlayer().getLevel() >= 70)
|
||||
{
|
||||
// Oel Mahum Stun Attack (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(749, 1), false);
|
||||
// Oel Mahum Arm Flourish (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(751, 1), false);
|
||||
}
|
||||
// Oel Mahum Ultimate Defense
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(750, 1), false, false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new OlMahum());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,63 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class OnyxBeast extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {584,585,5491,619};
|
||||
public OnyxBeast()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(1, 14, 14.5);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 1 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Power Claw
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(584, 1), false);
|
||||
// Fast Moving
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(585, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Power Claw
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(584, 1), false);
|
||||
// Fast Moving
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(585, 1), false, false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new OnyxBeast());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class OrcMercenary extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,619};
|
||||
public OrcMercenary()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(13, 8, 27);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 13 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new OrcMercenary());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class Pig extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,619};
|
||||
public Pig()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(104, 15, 18.3);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 104 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new Pig());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class Pixy extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,619};
|
||||
public Pixy()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(304, 5, 25);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 304 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new Pixy());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class PumpkinGhost extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,619};
|
||||
public PumpkinGhost()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(108, 12, 18);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 108 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5437, 2), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5437, 2), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new PumpkinGhost());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,63 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class Rabbit extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {629,630,5491,619};
|
||||
public Rabbit()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(105, 5, 4.5);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 105 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Rabbit Magic Eye
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(629, 1), false);
|
||||
// Rabbit Tornado
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(630, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Rabbit Magic Eye
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(629, 1), false);
|
||||
// Rabbit Tornado
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(630, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new Rabbit());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,63 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class Ranku extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {731,732,5491,619};
|
||||
public Ranku()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(309, 13, 29);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 309 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Ranku Dark Explosion
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(731, 1), false);
|
||||
// Ranku Stun Attack
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(732, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Ranku Dark Explosion
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(731, 1), false);
|
||||
// Ranku Stun Attack
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(732, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new Ranku());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class RoyalGuardCaptain extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,619};
|
||||
public RoyalGuardCaptain()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(16, 8, 24);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 16 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new RoyalGuardCaptain());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,101 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class SaberToothTiger extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {746,747,748,5491,619};
|
||||
public SaberToothTiger()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(5, 34, 28);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 5 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
if (getPlayer().getLevel() >= 76)
|
||||
{
|
||||
// Saber Tooth Tiger Bite (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(746, 3), false);
|
||||
// Saber Tooth Tiger Fear (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(747, 3), false);
|
||||
}
|
||||
else if (getPlayer().getLevel() >= 73)
|
||||
{
|
||||
// Saber Tooth Tiger Bite (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(746, 2), false);
|
||||
// Saber Tooth Tiger Fear (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(747, 2), false);
|
||||
}
|
||||
else if (getPlayer().getLevel() >= 70)
|
||||
{
|
||||
// Saber Tooth Tiger Bite (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(746, 1), false);
|
||||
// Saber Tooth Tiger Fear (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(747, 1), false);
|
||||
}
|
||||
// Saber Tooth Tiger Sprint
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(748, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
if (getPlayer().getLevel() >= 76)
|
||||
{
|
||||
// Saber Tooth Tiger Bite (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(746, 3), false);
|
||||
// Saber Tooth Tiger Fear (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(747, 3), false);
|
||||
}
|
||||
else if (getPlayer().getLevel() >= 73)
|
||||
{
|
||||
// Saber Tooth Tiger Bite (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(746, 2), false);
|
||||
// Saber Tooth Tiger Fear (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(747, 2), false);
|
||||
}
|
||||
else
|
||||
{
|
||||
// Saber Tooth Tiger Bite (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(746, 1), false);
|
||||
// Saber Tooth Tiger Fear (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(747, 1), false);
|
||||
}
|
||||
// Saber Tooth Tiger Sprint
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(748, 1), false, false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new SaberToothTiger());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,63 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class Scarecrow extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {940,942,5437,619};
|
||||
public Scarecrow()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(115, 13, 30);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 115 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Fake Attack
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(940, 1), false);
|
||||
// Special Motion
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(942, 1), false);
|
||||
// Dissonance
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5437, 2), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Fake Attack
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(940, 1), false);
|
||||
// Special Motion
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(942, 1), false);
|
||||
// Dissonance
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5437, 2), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new Scarecrow());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,69 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
/**
|
||||
* TODO: Buffs disappear once you get transformed, but reappear after the transformed state wears off.
|
||||
* Skills involved in the minigame but are not assigned directly to players:
|
||||
* Flip Nearby Blocks - 5847 - For Flip Block, there are two skills, one for each side (makes sense). For this, there is only one skill. Thus it is probably not assigned to the transformation.
|
||||
* Block Trigger Slow - 5848 - This may be assigned to players, unsure.
|
||||
* Decrease Speed - 5849 - This is possibly assigned to all players to set all players to the same running speed for the duration of the game.
|
||||
* Block Trigger Stun - 5849 - From L2Vault: "The squares gives drops of "bond" and "landmine". I wasn't able to figure out what the bond did as it wasn't anything that seemed to go into your inventory. However, Landmine did appear in your inventory which allows you to use it before flipping a square which will give the other team a state of stun when they attempt to flip the same square (from what I can gather, it all happens so quickly ;) "
|
||||
* Shock - 5851 - Stun effect from 5849
|
||||
* More Info: http://l2vault.ign.com/wiki/index.php/Handy%E2%80%99s_Block_Checker
|
||||
*/
|
||||
public class ScrollBlue extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5852,5491,619};
|
||||
public ScrollBlue()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(122, 9, 28.3);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 122 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Flip Block
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5852, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
//getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Flip Block
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5852, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
//getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new ScrollBlue());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,69 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
/**
|
||||
* TODO: Buffs disappear once you get transformed, but reappear after the transformed state wears off.
|
||||
* Skills involved in the minigame but are not assigned directly to players:
|
||||
* Flip Nearby Blocks - 5847 - For Flip Block, there are two skills, one for each side (makes sense). For this, there is only one skill. Thus it is probably not assigned to the transformation.
|
||||
* Block Trigger Slow - 5848 - This may be assigned to players, unsure.
|
||||
* Decrease Speed - 5849 - This is possibly assigned to all players to set all players to the same running speed for the duration of the game.
|
||||
* Block Trigger Stun - 5849 - From L2Vault: "The squares gives drops of "bond" and "landmine". I wasn't able to figure out what the bond did as it wasn't anything that seemed to go into your inventory. However, Landmine did appear in your inventory which allows you to use it before flipping a square which will give the other team a state of stun when they attempt to flip the same square (from what I can gather, it all happens so quickly ;) "
|
||||
* Shock - 5851 - Stun effect from 5849
|
||||
* More Info: http://l2vault.ign.com/wiki/index.php/Handy%E2%80%99s_Block_Checker
|
||||
*/
|
||||
public class ScrollRed extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5853,5491,619};
|
||||
public ScrollRed()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(121, 9, 28.3);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 121 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Flip Block
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5853, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
//getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Flip Block
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5853, 1), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
//getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new ScrollRed());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,63 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class SnowKung extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {940,943,5437,619};
|
||||
public SnowKung()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(114, 28, 30);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 114 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Fake Attack
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(940, 1), false);
|
||||
// Special Motion
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(943, 1), false);
|
||||
// Dissonance
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5437, 2), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Fake Attack
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(940, 1), false);
|
||||
// Special Motion
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(943, 1), false);
|
||||
// Dissonance
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5437, 2), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new SnowKung());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class SteamBeatle extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,839};
|
||||
public SteamBeatle()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(110, 40, 27.5);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 110 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Dismount
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(839, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Dismount
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(839, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new SteamBeatle());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class SujinChild extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = new int[]{619};
|
||||
|
||||
public SujinChild()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(20003, 10, 11.00);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 20003 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new SujinChild());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class TawnyManedLion extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,839};
|
||||
public TawnyManedLion()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(109, 25, 22.5);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 109 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Dismount
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(839, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Dismount
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(839, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new TawnyManedLion());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,83 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class Teleporter extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5656,5657,5658,5491,8248};
|
||||
public Teleporter()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(319, 8, 25);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 319 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
/*
|
||||
Commented out until we figure out how to remove the skills properly.
|
||||
What happens if a player transforms at level 40, gets the level 40 version of the skill, then somehow levels up?
|
||||
Then when we untransform, the script will look for the level 41 version of the skill, right?
|
||||
Or will it still remove the level 40 skill? Needs to be tested.
|
||||
// Gatekeeper Aura Flare
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5656, getPlayer().getLevel()), false);
|
||||
// Gatekeeper Prominence
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5657, getPlayer().getLevel()), false);
|
||||
// Gatekeeper Flame Strike
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5658, getPlayer().getLevel()), false);
|
||||
// Gatekeeper Berserker Spirit (there are two levels, when do players get access to level 2?)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5659, 1), false);
|
||||
*/
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Cancel Gatekeeper Transformation
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(8248, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
/*
|
||||
Commented out until we figure out how to remove the skills properly.
|
||||
What happens if a player transforms at level 40, gets the level 40 version of the skill, then somehow levels up?
|
||||
Then when we untransform, the script will look for the level 41 version of the skill, right?
|
||||
Or will it still remove the level 40 skill? Needs to be tested.
|
||||
// Gatekeeper Aura Flare
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5656, getPlayer().getLevel()), false);
|
||||
// Gatekeeper Prominence
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5657, getPlayer().getLevel()), false);
|
||||
// Gatekeeper Flame Strike
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5658, getPlayer().getLevel()), false);
|
||||
// Gatekeeper Berserker Spirit (there are two levels, when do players get access to level 2?)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5659, 1), false);
|
||||
*/
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Cancel Gatekeeper Transformation
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(8248, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new Teleporter());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,83 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class Teleporter2 extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5656,5657,5658,5491,8248};
|
||||
public Teleporter2()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(107, 8, 25);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 107 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
/*
|
||||
Commented out until we figure out how to remove the skills properly.
|
||||
What happens if a player transforms at level 40, gets the level 40 version of the skill, then somehow levels up?
|
||||
Then when we untransform, the script will look for the level 41 version of the skill, right?
|
||||
Or will it still remove the level 40 skill? Needs to be tested.
|
||||
// Gatekeeper Aura Flare
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5656, getPlayer().getLevel()), false);
|
||||
// Gatekeeper Prominence
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5657, getPlayer().getLevel()), false);
|
||||
// Gatekeeper Flame Strike
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5658, getPlayer().getLevel()), false);
|
||||
// Gatekeeper Berserker Spirit (there are two levels, when do players get access to level 2?)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5659, 1), false);
|
||||
*/
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Cancel Gatekeeper Transformation
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(8248, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
/*
|
||||
Commented out until we figure out how to remove the skills properly.
|
||||
What happens if a player transforms at level 40, gets the level 40 version of the skill, then somehow levels up?
|
||||
Then when we untransform, the script will look for the level 41 version of the skill, right?
|
||||
Or will it still remove the level 40 skill? Needs to be tested.
|
||||
// Gatekeeper Aura Flare
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5656, getPlayer().getLevel()), false);
|
||||
// Gatekeeper Prominence
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5657, getPlayer().getLevel()), false);
|
||||
// Gatekeeper Flame Strike
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5658, getPlayer().getLevel()), false);
|
||||
// Gatekeeper Berserker Spirit (there are two levels, when do players get access to level 2?)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5659, 1), false);
|
||||
*/
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Cancel Gatekeeper Transformation
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(8248, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new Teleporter2());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class Timitran extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,619};
|
||||
public Timitran()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(321, 23, 90);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 321 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new Timitran());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,63 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class TinGolem extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {940,941,5437,619};
|
||||
public TinGolem()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(116, 13, 18.5);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 116 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Fake Attack
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(940, 1), false);
|
||||
// Special Motion
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(941, 1), false);
|
||||
// Dissonance
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5437, 2), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Fake Attack
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(940, 1), false);
|
||||
// Special Motion
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(941, 1), false);
|
||||
// Dissonance
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5437, 2), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new TinGolem());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class Tow extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,619};
|
||||
public Tow()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(117, 4.4, 8.25);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 117 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new Tow());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class TrejuoChild extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = new int[]{619};
|
||||
|
||||
public TrejuoChild()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(20002, 10, 13.00);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 20002 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new TrejuoChild());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class Treykan extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = new int[]{619};
|
||||
|
||||
public Treykan()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(126, 25, 27.00);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 126 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new Treykan());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class UnicornNormal extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {563,564,565,567,5491,619};
|
||||
public UnicornNormal()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(205, 15, 28);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 205 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Horn of Doom (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(563, 3), false);
|
||||
// Gravity Control (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(564, 3), false);
|
||||
// Horn Assault (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(565, 3), false);
|
||||
// Light of Heal (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(567, 3), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Horn of Doom (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(563, 3), false);
|
||||
// Gravity Control (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(564, 3), false);
|
||||
// Horn Assault (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(565, 3), false);
|
||||
// Light of Heal (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(567, 3), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new UnicornNormal());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class UnicornStrong extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {563,564,565,567,5491,619};
|
||||
public UnicornStrong()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(204, 15, 28);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 204 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Horn of Doom (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(563, 4), false);
|
||||
// Gravity Control (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(564, 4), false);
|
||||
// Horn Assault (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(565, 4), false);
|
||||
// Light of Heal (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(567, 4), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Horn of Doom (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(563, 4), false);
|
||||
// Gravity Control (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(564, 4), false);
|
||||
// Horn Assault (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(565, 4), false);
|
||||
// Light of Heal (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(567, 4), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new UnicornStrong());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class UnicornWeak extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {563,564,565,567,5491,619};
|
||||
public UnicornWeak()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(206, 15, 28);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 206 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Horn of Doom (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(563, 2), false);
|
||||
// Gravity Control (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(564, 2), false);
|
||||
// Horn Assault (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(565, 2), false);
|
||||
// Light of Heal (up to 4 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(567, 2), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Horn of Doom (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(563, 2), false);
|
||||
// Gravity Control (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(564, 2), false);
|
||||
// Horn Assault (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(565, 2), false);
|
||||
// Light of Heal (up to 4 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(567, 2), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new UnicornWeak());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,81 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
/*
|
||||
* TODO: Skill levels. How do they work? Transformation is given at level 83, there are 6 levels of the skill. How are they assigned? Based on player level somehow? Based on servitor?
|
||||
*/
|
||||
public class Unicorniun extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {906,907,908,909,910,5491,619};
|
||||
public Unicorniun()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(220, 8, 30);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 220 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
if (getPlayer().getPet() != null)
|
||||
getPlayer().getPet().unSummon(getPlayer());
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Lance Step (up to 6 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(906, 4), false);
|
||||
// Aqua Blast (up to 6 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(907, 4), false);
|
||||
// Spin Slash (up to 6 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(908, 4), false);
|
||||
// Ice Focus (up to 6 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(909, 4), false);
|
||||
// Water Jet (up to 6 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(910, 4), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Lance Step (up to 6 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(906, 4), false);
|
||||
// Aqua Blast (up to 6 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(907, 4), false);
|
||||
// Spin Slash (up to 6 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(908, 4), false);
|
||||
// Ice Focus (up to 6 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(909, 4), false);
|
||||
// Water Jet (up to 6 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(910, 4), false);
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new Unicorniun());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,121 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class ValeMaster extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {742,743,744,745,5491,619};
|
||||
public ValeMaster()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(4, 12, 40);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 4 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
if (getPlayer().getLevel() >= 76)
|
||||
{
|
||||
// Vale Master Bursting Flame (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(742, 3), false);
|
||||
// Vale Master Dark Explosion (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(743, 3), false);
|
||||
// Vale Master Dark Flare (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(744, 3), false);
|
||||
// Vale Master Dark Cure (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(745, 3), false);
|
||||
}
|
||||
else if (getPlayer().getLevel() >= 73)
|
||||
{
|
||||
// Vale Master Bursting Flame (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(742, 2), false);
|
||||
// Vale Master Dark Explosion (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(743, 2), false);
|
||||
// Vale Master Dark Flare (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(744, 2), false);
|
||||
// Vale Master Dark Cure (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(745, 2), false);
|
||||
}
|
||||
else if (getPlayer().getLevel() >= 70)
|
||||
{
|
||||
// Vale Master Bursting Flame (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(742, 1), false);
|
||||
// Vale Master Dark Explosion (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(743, 1), false);
|
||||
// Vale Master Dark Flare (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(744, 1), false);
|
||||
// Vale Master Dark Cure (up to 3 levels)
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(745, 1), false);
|
||||
}
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
if (getPlayer().getLevel() >= 76)
|
||||
{
|
||||
// Vale Master Bursting Flame (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(742, 3), false);
|
||||
// Vale Master Dark Explosion (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(743, 3), false);
|
||||
// Vale Master Dark Flare (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(744, 3), false);
|
||||
// Vale Master Dark Cure (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(745, 3), false);
|
||||
}
|
||||
else if (getPlayer().getLevel() >= 73)
|
||||
{
|
||||
// Vale Master Bursting Flame (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(742, 2), false);
|
||||
// Vale Master Dark Explosion (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(743, 2), false);
|
||||
// Vale Master Dark Flare (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(744, 2), false);
|
||||
// Vale Master Dark Cure (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(745, 2), false);
|
||||
}
|
||||
else
|
||||
{
|
||||
// Vale Master Bursting Flame (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(742, 1), false);
|
||||
// Vale Master Dark Explosion (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(743, 1), false);
|
||||
// Vale Master Dark Flare (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(744, 1), false);
|
||||
// Vale Master Dark Cure (up to 3 levels)
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(745, 1), false);
|
||||
}
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new ValeMaster());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,78 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class VanguardDarkAvenger extends L2Transformation
|
||||
{
|
||||
public VanguardDarkAvenger()
|
||||
{
|
||||
// id
|
||||
super(313);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 313 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
int lvl = 1;
|
||||
if (getPlayer().getLevel() > 42)
|
||||
lvl = (getPlayer().getLevel() - 42);
|
||||
|
||||
// Dual Weapon Mastery
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(144, lvl), false);
|
||||
// Blade Hurricane
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(815, lvl), false);
|
||||
// Double Strike
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(817, lvl), false);
|
||||
// Boost Morale
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(956, lvl), false);
|
||||
// Triple Blade Slash
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(958, lvl), false);
|
||||
// Switch Stance
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(838, 1), false);
|
||||
// Set allowed skills
|
||||
getPlayer().setTransformAllowedSkills(new int[]{18,28,65,86,144,283,815,817,838,956,958,401});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
int lvl = 1;
|
||||
if (getPlayer().getLevel() > 42)
|
||||
lvl = (getPlayer().getLevel() - 42);
|
||||
|
||||
// Dual Weapon Mastery
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(144, lvl), false);
|
||||
// Blade Hurricane
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(815, lvl), false);
|
||||
// Double Strike
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(817, lvl), false);
|
||||
// Switch Stance
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(838, 1), false);
|
||||
// Boost Morale
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(956, lvl), false, false);
|
||||
// Triple Blade Slash
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(958, lvl), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new VanguardDarkAvenger());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,78 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class VanguardPaladin extends L2Transformation
|
||||
{
|
||||
public VanguardPaladin()
|
||||
{
|
||||
// id
|
||||
super(312);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 312 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
int lvl = 1;
|
||||
if (getPlayer().getLevel() > 42)
|
||||
lvl = (getPlayer().getLevel() - 42);
|
||||
|
||||
// Two handed mastery
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(293, lvl), false);
|
||||
// Full Swing
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(814, lvl), false);
|
||||
// Power Divide
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(816, lvl), false);
|
||||
// Boost Morale
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(956, lvl), false);
|
||||
// Guillotine Attack
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(957, lvl), false);
|
||||
// Switch Stance
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(838, 1), false);
|
||||
// Set allowed skills
|
||||
getPlayer().setTransformAllowedSkills(new int[]{18,28,196,197,293,400,406,814,816,838,956,957});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
int lvl = 1;
|
||||
if (getPlayer().getLevel() > 42)
|
||||
lvl = (getPlayer().getLevel() - 42);
|
||||
|
||||
// Two handed mastery
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(293, lvl), false);
|
||||
// Full Swing
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(814, lvl), false);
|
||||
// Power Divide
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(816, lvl), false);
|
||||
// Boost Morale
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(956, lvl), false, false);
|
||||
// Guillotine Attack
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(957, lvl), false);
|
||||
// Switch Stance
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(838, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new VanguardPaladin());
|
||||
}
|
||||
}
|
||||
+78
@@ -0,0 +1,78 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class VanguardShilienKnight extends L2Transformation
|
||||
{
|
||||
public VanguardShilienKnight()
|
||||
{
|
||||
// id
|
||||
super(315);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 315 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
int lvl = 1;
|
||||
if (getPlayer().getLevel() > 42)
|
||||
lvl = (getPlayer().getLevel() - 42);
|
||||
|
||||
// Dual Weapon Mastery
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(144, lvl), false);
|
||||
// Blade Hurricane
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(815, lvl), false);
|
||||
// Double Strike
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(817, lvl), false);
|
||||
// Boost Morale
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(956, lvl), false);
|
||||
// Triple Blade Slash
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(958, lvl), false);
|
||||
// Switch Stance
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(838, 1), false);
|
||||
// Set allowed skills
|
||||
getPlayer().setTransformAllowedSkills(new int[]{18,22,28,33,144,278,279,289,401,815,817,838,956,958});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
int lvl = 1;
|
||||
if (getPlayer().getLevel() > 42)
|
||||
lvl = (getPlayer().getLevel() - 42);
|
||||
|
||||
// Dual Weapon Mastery
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(144, lvl), false);
|
||||
// Blade Hurricane
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(815, lvl), false);
|
||||
// Double Strike
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(817, lvl), false);
|
||||
// Boost Morale
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(956, lvl), false, false);
|
||||
// Triple Blade Slash
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(958, lvl), false);
|
||||
// Switch Stance
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(838, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new VanguardShilienKnight());
|
||||
}
|
||||
}
|
||||
+78
@@ -0,0 +1,78 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class VanguardTempleKnight extends L2Transformation
|
||||
{
|
||||
public VanguardTempleKnight()
|
||||
{
|
||||
// id
|
||||
super(314);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 314 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
int lvl = 1;
|
||||
if (getPlayer().getLevel() > 42)
|
||||
lvl = (getPlayer().getLevel() - 42);
|
||||
|
||||
// Two handed mastery
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(293, lvl), false);
|
||||
// Full Swing
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(814, lvl), false);
|
||||
// Power Divide
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(816, lvl), false);
|
||||
// Boost Morale
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(956, lvl), false);
|
||||
// Guillotine Attack
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(957, lvl), false);
|
||||
// Switch Stance
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(838, 1), false);
|
||||
// Set allowed skills
|
||||
getPlayer().setTransformAllowedSkills(new int[]{10,18,28,67,197,293,400,449,814,816,838,956,957});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
int lvl = 1;
|
||||
if (getPlayer().getLevel() > 42)
|
||||
lvl = (getPlayer().getLevel() - 42);
|
||||
|
||||
// Two handed mastery
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(293, lvl), false);
|
||||
// Full Swing
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(814, lvl), false);
|
||||
// Power Divide
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(816, lvl), false);
|
||||
// Boost Morale
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(956, lvl), false, false);
|
||||
// Guillotine Attack
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(957, lvl), false);
|
||||
// Switch Stance
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(838, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new VanguardTempleKnight());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package transformations;
|
||||
|
||||
import com.l2jserver.gameserver.datatables.SkillTable;
|
||||
import com.l2jserver.gameserver.instancemanager.TransformationManager;
|
||||
import com.l2jserver.gameserver.model.L2Transformation;
|
||||
|
||||
public class WingTow extends L2Transformation
|
||||
{
|
||||
private static final int[] SKILLS = {5491,619};
|
||||
public WingTow()
|
||||
{
|
||||
// id, colRadius, colHeight
|
||||
super(120, 4.4, 8.25);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onTransform()
|
||||
{
|
||||
if (getPlayer().getTransformationId() != 120 || getPlayer().isCursedWeaponEquipped())
|
||||
return;
|
||||
|
||||
transformedSkills();
|
||||
}
|
||||
|
||||
public void transformedSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().addSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(SKILLS);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onUntransform()
|
||||
{
|
||||
removeSkills();
|
||||
}
|
||||
|
||||
public void removeSkills()
|
||||
{
|
||||
// Decrease Bow/Crossbow Attack Speed
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(5491, 1), false);
|
||||
// Transform Dispel
|
||||
getPlayer().removeSkill(SkillTable.getInstance().getInfo(619, 1), false);
|
||||
|
||||
getPlayer().setTransformAllowedSkills(EMPTY_ARRAY);
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
{
|
||||
TransformationManager.getInstance().registerTransformation(new WingTow());
|
||||
}
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user