Common skill adjustments.
This commit is contained in:
@@ -1290,13 +1290,27 @@
|
|||||||
</effect>
|
</effect>
|
||||||
</for>
|
</for>
|
||||||
</skill>
|
</skill>
|
||||||
<skill id="4267" levels="1" name="Grade Penalty">
|
<skill id="4267" levels="10" name="Grade Penalty">
|
||||||
<!-- A penalty applied when the grade of equipment one is wearing is not appropriate for one's level. -->
|
<!-- A penalty applied when the grade of equipment one is wearing is not appropriate for one's level. -->
|
||||||
<set name="icon" val="icon.skill4267" />
|
<set name="icon" val="icon.skill4267" />
|
||||||
|
<table name="#rate">0.22 0.19 0.16 0.13 0.1 0.1 0.1 0.1 0.1 0.1</table>
|
||||||
<set name="magicLevel" val="1" />
|
<set name="magicLevel" val="1" />
|
||||||
<set name="operateType" val="P" />
|
<set name="operateType" val="P" />
|
||||||
<set name="stayAfterDeath" val="true" />
|
<set name="stayAfterDeath" val="true" />
|
||||||
<set name="targetType" val="SELF" />
|
<set name="targetType" val="SELF" />
|
||||||
|
<for>
|
||||||
|
<effect name="Buff">
|
||||||
|
<mul stat="pAtkSpd" val="#rate" />
|
||||||
|
<mul stat="mAtkSpd" val="#rate" />
|
||||||
|
<mul stat="rEvas" val="#rate" />
|
||||||
|
<mul stat="rExp" val="#rate" />
|
||||||
|
<mul stat="runSpd" val="#rate" />
|
||||||
|
<mul stat="regHp" val="#rate" />
|
||||||
|
<mul stat="regCp" val="#rate" />
|
||||||
|
<mul stat="regMp" val="#rate" />
|
||||||
|
<sub stat="accCombat" val="20" />
|
||||||
|
</effect>
|
||||||
|
</for>
|
||||||
</skill>
|
</skill>
|
||||||
<skill id="4268" levels="1" name="Danger Area">
|
<skill id="4268" levels="1" name="Danger Area">
|
||||||
<!-- You are located in an area in which you can can receive environmental damage or penalty. -->
|
<!-- You are located in an area in which you can can receive environmental damage or penalty. -->
|
||||||
|
@@ -2026,44 +2026,27 @@ public class Player extends Playable
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean changed = false;
|
|
||||||
|
|
||||||
// calc weapon penalty
|
// calc weapon penalty
|
||||||
weaponPenalty = weaponPenalty - expertiseLevel - _expertisePenaltyBonus;
|
weaponPenalty = weaponPenalty - expertiseLevel - _expertisePenaltyBonus;
|
||||||
weaponPenalty = Math.min(Math.max(weaponPenalty, 0), 4);
|
weaponPenalty = Math.min(Math.max(weaponPenalty, 0), 4);
|
||||||
if ((_expertiseWeaponPenalty != weaponPenalty) || (getSkillLevel(CommonSkill.WEAPON_GRADE_PENALTY.getId()) != weaponPenalty))
|
|
||||||
{
|
|
||||||
_expertiseWeaponPenalty = weaponPenalty;
|
|
||||||
if (_expertiseWeaponPenalty > 0)
|
|
||||||
{
|
|
||||||
addSkill(SkillData.getInstance().getSkill(CommonSkill.WEAPON_GRADE_PENALTY.getId(), _expertiseWeaponPenalty));
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
removeSkill(getKnownSkill(CommonSkill.WEAPON_GRADE_PENALTY.getId()), false, true);
|
|
||||||
}
|
|
||||||
changed = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
// calc armor penalty
|
// calc armor penalty
|
||||||
armorPenalty = armorPenalty - expertiseLevel - _expertisePenaltyBonus;
|
armorPenalty = armorPenalty - expertiseLevel - _expertisePenaltyBonus;
|
||||||
armorPenalty = Math.min(Math.max(armorPenalty, 0), 4);
|
armorPenalty = Math.min(Math.max(armorPenalty, 0), 4);
|
||||||
if ((_expertiseArmorPenalty != armorPenalty) || (getSkillLevel(CommonSkill.ARMOR_GRADE_PENALTY.getId()) != armorPenalty))
|
|
||||||
|
if ((_expertiseWeaponPenalty != weaponPenalty) || (_expertiseArmorPenalty != armorPenalty))
|
||||||
{
|
{
|
||||||
|
_expertiseWeaponPenalty = weaponPenalty;
|
||||||
_expertiseArmorPenalty = armorPenalty;
|
_expertiseArmorPenalty = armorPenalty;
|
||||||
if (_expertiseArmorPenalty > 0)
|
if ((_expertiseWeaponPenalty > 0) || (_expertiseArmorPenalty > 0))
|
||||||
{
|
{
|
||||||
addSkill(SkillData.getInstance().getSkill(CommonSkill.ARMOR_GRADE_PENALTY.getId(), _expertiseArmorPenalty));
|
addSkill(SkillData.getInstance().getSkill(CommonSkill.GRADE_PENALTY.getId(), Math.max(weaponPenalty, armorPenalty)));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
removeSkill(getKnownSkill(CommonSkill.ARMOR_GRADE_PENALTY.getId()), false, true);
|
removeSkill(getKnownSkill(CommonSkill.GRADE_PENALTY.getId()), false, true);
|
||||||
}
|
}
|
||||||
changed = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (changed)
|
|
||||||
{
|
|
||||||
sendPacket(new EtcStatusUpdate(this));
|
sendPacket(new EtcStatusUpdate(this));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -30,7 +30,7 @@ public enum CommonSkill
|
|||||||
BUILD_HEADQUARTERS(247, 1),
|
BUILD_HEADQUARTERS(247, 1),
|
||||||
WYVERN_BREATH(4289, 1),
|
WYVERN_BREATH(4289, 1),
|
||||||
STRIDER_SIEGE_ASSAULT(325, 1),
|
STRIDER_SIEGE_ASSAULT(325, 1),
|
||||||
FIREWORK(5965, 1),
|
FIREWORK(2024, 1),
|
||||||
LARGE_FIREWORK(2025, 1),
|
LARGE_FIREWORK(2025, 1),
|
||||||
BLESSING_OF_PROTECTION(5182, 1),
|
BLESSING_OF_PROTECTION(5182, 1),
|
||||||
VOID_BURST(3630, 1),
|
VOID_BURST(3630, 1),
|
||||||
@@ -38,17 +38,13 @@ public enum CommonSkill
|
|||||||
THE_VICTOR_OF_WAR(5074, 1),
|
THE_VICTOR_OF_WAR(5074, 1),
|
||||||
THE_VANQUISHED_OF_WAR(5075, 1),
|
THE_VANQUISHED_OF_WAR(5075, 1),
|
||||||
SPECIAL_TREE_RECOVERY_BONUS(2139, 1),
|
SPECIAL_TREE_RECOVERY_BONUS(2139, 1),
|
||||||
WEAPON_GRADE_PENALTY(6209, 1),
|
GRADE_PENALTY(4267, 1),
|
||||||
ARMOR_GRADE_PENALTY(6213, 1),
|
|
||||||
CREATE_DWARVEN(172, 1),
|
CREATE_DWARVEN(172, 1),
|
||||||
LUCKY(194, 1),
|
LUCKY(194, 1),
|
||||||
EXPERTISE(239, 1),
|
EXPERTISE(239, 1),
|
||||||
CRYSTALLIZE(248, 1),
|
CRYSTALLIZE(248, 1),
|
||||||
ONYX_BEAST_TRANSFORMATION(617, 1),
|
|
||||||
CREATE_COMMON(1320, 1),
|
CREATE_COMMON(1320, 1),
|
||||||
DIVINE_INSPIRATION(1405, 1),
|
DIVINE_INSPIRATION(1405, 1);
|
||||||
SERVITOR_SHARE(1557, 1),
|
|
||||||
CARAVANS_SECRET_MEDICINE(2341, 1);
|
|
||||||
|
|
||||||
private final SkillHolder _holder;
|
private final SkillHolder _holder;
|
||||||
|
|
||||||
|
@@ -1496,7 +1496,7 @@ public class Skill implements IIdentifiable
|
|||||||
*/
|
*/
|
||||||
public boolean canBeStolen()
|
public boolean canBeStolen()
|
||||||
{
|
{
|
||||||
return !isPassive() && !isToggle() && !_isDebuff && !_isHeroSkill && !_isGMSkill && !(isStatic() && (getId() != CommonSkill.CARAVANS_SECRET_MEDICINE.getId())) && _canBeDispeled && (getId() != CommonSkill.SERVITOR_SHARE.getId());
|
return !isPassive() && !isToggle() && !_isDebuff && !_isHeroSkill && !_isGMSkill && !isStatic() && _canBeDispeled;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isClanSkill()
|
public boolean isClanSkill()
|
||||||
|
@@ -215,14 +215,7 @@ public class RequestAcquireSkill implements IClientIncomingPacket
|
|||||||
{
|
{
|
||||||
if (player.getSkillLevel(skill.getSkillId()) < skill.getSkillLevel())
|
if (player.getSkillLevel(skill.getSkillId()) < skill.getSkillLevel())
|
||||||
{
|
{
|
||||||
if (skill.getSkillId() == CommonSkill.ONYX_BEAST_TRANSFORMATION.getId())
|
player.sendPacket(SystemMessageId.YOU_DO_NOT_HAVE_THE_NECESSARY_MATERIALS_OR_PREREQUISITES_TO_LEARN_THIS_SKILL);
|
||||||
{
|
|
||||||
player.sendPacket(SystemMessageId.YOU_MUST_LEARN_THE_ONYX_BEAST_SKILL_BEFORE_YOU_CAN_ACQUIRE_FURTHER_SKILLS);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
player.sendPacket(SystemMessageId.YOU_DO_NOT_HAVE_THE_NECESSARY_MATERIALS_OR_PREREQUISITES_TO_LEARN_THIS_SKILL);
|
|
||||||
}
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user