Transformation skill for ranks.
Contributed by manax182.
This commit is contained in:
parent
53bb8ca31a
commit
1c6372c9bd
@ -341,6 +341,8 @@ public enum AbnormalVisualEffect
|
||||
H_DEATH_EFFECT_AVE(352),
|
||||
AVE_WHITE_KNIGHT(353),
|
||||
U_ER_WI_WINDHIDE_AVE(354),
|
||||
RANKER_DECO_HUMAN(385),
|
||||
RANKER_DECO_KAMAEL(386),
|
||||
JDK_BODY_FIRE_1(387),
|
||||
DK_BONEPRISON_AVE(388),
|
||||
DK_IGNITION_HUMAN_AVE(390),
|
||||
|
@ -47,6 +47,12 @@ public class RankingSkillBonuses extends AbstractNpcAI
|
||||
private static final Skill SERVER_RANKING_BENEFIT_2 = SkillData.getInstance().getSkill(60013, 1);
|
||||
private static final Skill SERVER_RANKING_BENEFIT_3 = SkillData.getInstance().getSkill(60014, 1);
|
||||
private static final Skill RACE_RANKING_BENEFIT = SkillData.getInstance().getSkill(60015, 1);
|
||||
private static final Skill HUMAN_LEVEL_TRANSFORM_CLASS = SkillData.getInstance().getSkill(54204, 1);
|
||||
private static final Skill ELF_LEVEL_TRANSFORM_CLASS = SkillData.getInstance().getSkill(54210, 1);
|
||||
private static final Skill DARK_ELF_LEVEL_TRANSFORM_CLASS = SkillData.getInstance().getSkill(54211, 1);
|
||||
private static final Skill ORC_LEVEL_TRANSFORM_CLASS = SkillData.getInstance().getSkill(54209, 1);
|
||||
private static final Skill DWARF_LEVEL_TRANSFORM_CLASS = SkillData.getInstance().getSkill(54512, 1);
|
||||
private static final Skill KAMAEL_LEVEL_TRANSFORM_CLASS = SkillData.getInstance().getSkill(54205, 1);
|
||||
|
||||
@RegisterEvent(EventType.ON_PLAYER_LOGIN)
|
||||
@RegisterType(ListenerRegisterType.GLOBAL_PLAYERS)
|
||||
@ -68,6 +74,12 @@ public class RankingSkillBonuses extends AbstractNpcAI
|
||||
player.getEffectList().stopSkillEffects(true, ORC_LEVEL_RANKING_1ST_CLASS);
|
||||
player.getEffectList().stopSkillEffects(true, DWARF_LEVEL_RANKING_1ST_CLASS);
|
||||
player.getEffectList().stopSkillEffects(true, KAMAEL_LEVEL_RANKING_1ST_CLASS);
|
||||
player.getEffectList().stopSkillEffects(true, HUMAN_LEVEL_TRANSFORM_CLASS);
|
||||
player.getEffectList().stopSkillEffects(true, ELF_LEVEL_TRANSFORM_CLASS);
|
||||
player.getEffectList().stopSkillEffects(true, DARK_ELF_LEVEL_TRANSFORM_CLASS);
|
||||
player.getEffectList().stopSkillEffects(true, ORC_LEVEL_TRANSFORM_CLASS);
|
||||
player.getEffectList().stopSkillEffects(true, DWARF_LEVEL_TRANSFORM_CLASS);
|
||||
player.getEffectList().stopSkillEffects(true, KAMAEL_LEVEL_TRANSFORM_CLASS);
|
||||
player.removeSkill(SERVER_RANKING_BENEFIT_1);
|
||||
player.removeSkill(SERVER_RANKING_BENEFIT_2);
|
||||
player.removeSkill(SERVER_RANKING_BENEFIT_3);
|
||||
@ -136,6 +148,46 @@ public class RankingSkillBonuses extends AbstractNpcAI
|
||||
}
|
||||
player.addSkill(RACE_RANKING_BENEFIT, false);
|
||||
}
|
||||
|
||||
// Add race rank transform skills.
|
||||
final int raceTransform = RankManager.getInstance().getPlayerRaceRank(player);
|
||||
if ((raceTransform > 0) && (raceTransform <= 3))
|
||||
{
|
||||
switch (player.getRace())
|
||||
{
|
||||
case HUMAN:
|
||||
{
|
||||
|
||||
player.addSkill(HUMAN_LEVEL_TRANSFORM_CLASS, false);
|
||||
break;
|
||||
}
|
||||
case ELF:
|
||||
{
|
||||
player.addSkill(ELF_LEVEL_TRANSFORM_CLASS, false);
|
||||
break;
|
||||
}
|
||||
case DARK_ELF:
|
||||
{
|
||||
player.addSkill(DARK_ELF_LEVEL_TRANSFORM_CLASS, false);
|
||||
break;
|
||||
}
|
||||
case ORC:
|
||||
{
|
||||
player.addSkill(ORC_LEVEL_TRANSFORM_CLASS, false);
|
||||
break;
|
||||
}
|
||||
case DWARF:
|
||||
{
|
||||
player.addSkill(DWARF_LEVEL_TRANSFORM_CLASS, false);
|
||||
break;
|
||||
}
|
||||
case KAMAEL:
|
||||
{
|
||||
player.addSkill(KAMAEL_LEVEL_TRANSFORM_CLASS, false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void main(String[] args)
|
||||
|
@ -5699,11 +5699,11 @@
|
||||
<effects>
|
||||
<effect name="ReflectMagic">
|
||||
<amount>30</amount>
|
||||
<mode>PER</mode>
|
||||
<mode>DIFF</mode>
|
||||
</effect>
|
||||
<effect name="ReflectSkill">
|
||||
<amount>30</amount>
|
||||
<mode>PER</mode>
|
||||
<mode>DIFF</mode>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
@ -5855,7 +5855,7 @@
|
||||
<effects>
|
||||
<effect name="DamageShield">
|
||||
<amount>20</amount>
|
||||
<mode>PER</mode>
|
||||
<mode>DIFF</mode>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
@ -6062,6 +6062,7 @@
|
||||
<effects>
|
||||
<effect name="ReflectMagic">
|
||||
<chance>20</chance>
|
||||
<mode>DIFF</mode>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
|
@ -980,6 +980,7 @@
|
||||
<value level="3">40</value>
|
||||
<value level="4">50</value>
|
||||
</amount>
|
||||
<mode>DIFF</mode>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
|
@ -1469,6 +1469,7 @@
|
||||
<effects>
|
||||
<effect name="ReflectMagic">
|
||||
<amount>20</amount>
|
||||
<mode>DIFF</mode>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
|
@ -3746,6 +3746,8 @@
|
||||
<value level="4">50</value>
|
||||
<value level="5">54</value>
|
||||
</mpConsume>
|
||||
<targetType>ENEMY</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<effects>
|
||||
<effect name="PhysicalAttack">
|
||||
<power>
|
||||
@ -3764,7 +3766,7 @@
|
||||
<condition name="EquipWeapon">
|
||||
<weaponType>
|
||||
<item>SWORD</item>
|
||||
<item>DUALSWORD</item>
|
||||
<item>DUAL</item>
|
||||
<item>BLUNT</item>
|
||||
</weaponType>
|
||||
</condition>
|
||||
|
@ -21,14 +21,65 @@
|
||||
<operateType>A1</operateType>
|
||||
</skill>
|
||||
<skill id="54204" toLevel="1" name="Worthy Warrior Transformation">
|
||||
<!-- AUTO GENERATED SKILL TODO: FIX IT -->
|
||||
<icon>icon.skill0000</icon>
|
||||
<operateType>A1</operateType>
|
||||
<abnormalLevel>1</abnormalLevel>
|
||||
<abnormalTime>3600</abnormalTime>
|
||||
<abnormalVisualEffect>RANKER_DECO_HUMAN</abnormalVisualEffect>
|
||||
<abnormalType>CHANGEBODY</abnormalType>
|
||||
<blockedInOlympiad>true</blockedInOlympiad>
|
||||
<operateType>A2</operateType>
|
||||
<effectPoint>1</effectPoint>
|
||||
<basicProperty>NONE</basicProperty>
|
||||
<magicCriticalRate>5</magicCriticalRate>
|
||||
<specialLevel>-1</specialLevel>
|
||||
<hitCancelTime>0</hitCancelTime>
|
||||
<irreplacableBuff>true</irreplacableBuff>
|
||||
<isMagic>2</isMagic>
|
||||
<hitTime>1000</hitTime>
|
||||
<targetType>SELF</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<conditions>
|
||||
<condition name="CanTransform">
|
||||
<transformId>385</transformId>
|
||||
</condition>
|
||||
</conditions>
|
||||
<effects>
|
||||
<effect name="MaxHp">
|
||||
<amount>300</amount>
|
||||
<mode>DIFF</mode>
|
||||
</effect>
|
||||
<effect name="Transformation">
|
||||
<transformationId>385</transformationId>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="54205" toLevel="1" name="Worthy Warrior Transformation">
|
||||
<!-- AUTO GENERATED SKILL TODO: FIX IT -->
|
||||
<icon>icon.skill0000</icon>
|
||||
<operateType>A1</operateType>
|
||||
<abnormalVisualEffect>RANKER_DECO_KAMAEL</abnormalVisualEffect>
|
||||
<abnormalLevel>1</abnormalLevel>
|
||||
<abnormalTime>1200</abnormalTime>
|
||||
<abnormalType>CHANGEBODY</abnormalType>
|
||||
<blockedInOlympiad>true</blockedInOlympiad>
|
||||
<operateType>A2</operateType>
|
||||
<effectPoint>1</effectPoint>
|
||||
<basicProperty>NONE</basicProperty>
|
||||
<magicCriticalRate>5</magicCriticalRate>
|
||||
<specialLevel>-1</specialLevel>
|
||||
<hitCancelTime>0</hitCancelTime>
|
||||
<irreplacableBuff>true</irreplacableBuff>
|
||||
<isMagic>2</isMagic>
|
||||
<hitTime>1000</hitTime>
|
||||
<targetType>SELF</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<effects>
|
||||
<effect name="MaxHp">
|
||||
<amount>300</amount>
|
||||
<mode>DIFF</mode>
|
||||
</effect>
|
||||
<effect name="Transformation">
|
||||
<transformationId>386</transformationId>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="54206" toLevel="1" name="Ultimate Death Knight Transformation">
|
||||
<abnormalLevel>1</abnormalLevel>
|
||||
@ -97,11 +148,6 @@
|
||||
<hitTime>1000</hitTime>
|
||||
<targetType>SELF</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<conditions>
|
||||
<condition name="CanTransform">
|
||||
<transformId>208</transformId>
|
||||
</condition>
|
||||
</conditions>
|
||||
<effects>
|
||||
<effect name="Transformation">
|
||||
<transformationId>208</transformationId>
|
||||
@ -114,24 +160,116 @@
|
||||
<operateType>A1</operateType>
|
||||
</skill>
|
||||
<skill id="54209" toLevel="1" name="Worthy Warrior Transformation">
|
||||
<!-- AUTO GENERATED SKILL TODO: FIX IT -->
|
||||
<icon>icon.skill0000</icon>
|
||||
<operateType>A1</operateType>
|
||||
<abnormalLevel>1</abnormalLevel>
|
||||
<abnormalTime>1200</abnormalTime>
|
||||
<abnormalVisualEffect>RANKER_DECO_ORC</abnormalVisualEffect>
|
||||
<abnormalType>CHANGEBODY</abnormalType>
|
||||
<blockedInOlympiad>true</blockedInOlympiad>
|
||||
<operateType>A2</operateType>
|
||||
<effectPoint>1</effectPoint>
|
||||
<basicProperty>NONE</basicProperty>
|
||||
<magicCriticalRate>5</magicCriticalRate>
|
||||
<specialLevel>-1</specialLevel>
|
||||
<hitCancelTime>0</hitCancelTime>
|
||||
<irreplacableBuff>true</irreplacableBuff>
|
||||
<isMagic>2</isMagic>
|
||||
<hitTime>1000</hitTime>
|
||||
<targetType>SELF</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<effects>
|
||||
<effect name="MaxHp">
|
||||
<amount>300</amount>
|
||||
<mode>DIFF</mode>
|
||||
</effect>
|
||||
<effect name="Transformation">
|
||||
<transformationId>424</transformationId>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="54210" toLevel="1" name="Worthy Warrior Transformation">
|
||||
<!-- AUTO GENERATED SKILL TODO: FIX IT -->
|
||||
<icon>icon.skill0000</icon>
|
||||
<operateType>A1</operateType>
|
||||
<abnormalLevel>1</abnormalLevel>
|
||||
<abnormalTime>1200</abnormalTime>
|
||||
<abnormalVisualEffect>RANKER_DECO_ELF</abnormalVisualEffect>
|
||||
<abnormalType>CHANGEBODY</abnormalType>
|
||||
<blockedInOlympiad>true</blockedInOlympiad>
|
||||
<operateType>A2</operateType>
|
||||
<effectPoint>1</effectPoint>
|
||||
<basicProperty>NONE</basicProperty>
|
||||
<magicCriticalRate>5</magicCriticalRate>
|
||||
<specialLevel>-1</specialLevel>
|
||||
<hitCancelTime>0</hitCancelTime>
|
||||
<irreplacableBuff>true</irreplacableBuff>
|
||||
<isMagic>2</isMagic>
|
||||
<hitTime>1000</hitTime>
|
||||
<targetType>SELF</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<effects>
|
||||
<effect name="MaxHp">
|
||||
<amount>300</amount>
|
||||
<mode>DIFF</mode>
|
||||
</effect>
|
||||
<effect name="Transformation">
|
||||
<transformationId>428</transformationId>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="54211" toLevel="1" name="Worthy Warrior Transformation">
|
||||
<!-- AUTO GENERATED SKILL TODO: FIX IT -->
|
||||
<icon>icon.skill0000</icon>
|
||||
<operateType>A1</operateType>
|
||||
<abnormalLevel>1</abnormalLevel>
|
||||
<abnormalTime>1200</abnormalTime>
|
||||
<abnormalVisualEffect>RANKER_DECO_DARKELF</abnormalVisualEffect>
|
||||
<abnormalType>CHANGEBODY</abnormalType>
|
||||
<blockedInOlympiad>true</blockedInOlympiad>
|
||||
<operateType>A2</operateType>
|
||||
<effectPoint>1</effectPoint>
|
||||
<basicProperty>NONE</basicProperty>
|
||||
<magicCriticalRate>5</magicCriticalRate>
|
||||
<specialLevel>-1</specialLevel>
|
||||
<hitCancelTime>0</hitCancelTime>
|
||||
<irreplacableBuff>true</irreplacableBuff>
|
||||
<isMagic>2</isMagic>
|
||||
<hitTime>1000</hitTime>
|
||||
<targetType>SELF</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<effects>
|
||||
<effect name="MaxHp">
|
||||
<amount>300</amount>
|
||||
<mode>DIFF</mode>
|
||||
</effect>
|
||||
<effect name="Transformation">
|
||||
<transformationId>429</transformationId>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="54212" toLevel="1" name="Worthy Warrior Transformation">
|
||||
<!-- AUTO GENERATED SKILL TODO: FIX IT -->
|
||||
<icon>icon.skill0000</icon>
|
||||
<operateType>A1</operateType>
|
||||
<abnormalLevel>1</abnormalLevel>
|
||||
<abnormalTime>1200</abnormalTime>
|
||||
<abnormalVisualEffect>RANKER_DECO_DWARF</abnormalVisualEffect>
|
||||
<abnormalType>CHANGEBODY</abnormalType>
|
||||
<blockedInOlympiad>true</blockedInOlympiad>
|
||||
<operateType>A2</operateType>
|
||||
<effectPoint>1</effectPoint>
|
||||
<basicProperty>NONE</basicProperty>
|
||||
<magicCriticalRate>5</magicCriticalRate>
|
||||
<specialLevel>-1</specialLevel>
|
||||
<hitCancelTime>0</hitCancelTime>
|
||||
<irreplacableBuff>true</irreplacableBuff>
|
||||
<isMagic>2</isMagic>
|
||||
<hitTime>1000</hitTime>
|
||||
<targetType>SELF</targetType>
|
||||
<affectScope>SINGLE</affectScope>
|
||||
<effects>
|
||||
<effect name="MaxHp">
|
||||
<amount>300</amount>
|
||||
<mode>DIFF</mode>
|
||||
</effect>
|
||||
<effect name="Transformation">
|
||||
<transformationId>430</transformationId>
|
||||
</effect>
|
||||
</effects>
|
||||
</skill>
|
||||
<skill id="54213" toLevel="1" name="Mount Air Bike">
|
||||
<!-- AUTO GENERATED SKILL TODO: FIX IT -->
|
||||
|
@ -400,7 +400,7 @@
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
<xs:element minOccurs="0" name="isWithin" type="xs:boolean" />
|
||||
<xs:element minOccurs="0" name="transformId" type="xs:unsignedByte" />
|
||||
<xs:element minOccurs="0" name="transformId" type="xs:int" />
|
||||
<xs:element minOccurs="0" name="npcIds">
|
||||
<xs:complexType>
|
||||
<xs:sequence>
|
||||
@ -1325,7 +1325,7 @@
|
||||
<xs:element name="PHYSICAL_ATTACK_SPEED" type="xs:unsignedByte" />
|
||||
<xs:element name="MAGIC_ATTACK_SPEED" type="xs:unsignedByte" />
|
||||
<xs:element name="pDefMod" type="xs:decimal" />
|
||||
<xs:element name="transformationId" type="xs:unsignedByte" />
|
||||
<xs:element name="transformationId" type="xs:int" />
|
||||
<xs:element name="distance" type="xs:unsignedByte" />
|
||||
<xs:element name="speed" type="xs:unsignedShort" />
|
||||
<xs:element name="knockDown" type="xs:boolean" />
|
||||
|
@ -341,6 +341,8 @@ public enum AbnormalVisualEffect
|
||||
H_DEATH_EFFECT_AVE(352),
|
||||
AVE_WHITE_KNIGHT(353),
|
||||
U_ER_WI_WINDHIDE_AVE(354),
|
||||
RANKER_DECO_HUMAN(385),
|
||||
RANKER_DECO_KAMAEL(386),
|
||||
JDK_BODY_FIRE_1(387),
|
||||
DK_BONEPRISON_AVE(388),
|
||||
DK_IGNITION_HUMAN_AVE(390),
|
||||
|
Loading…
Reference in New Issue
Block a user