Chakl22 Posted June 2, 2010 Posted June 2, 2010 #P L2_GameServer_It Index: java/net/sf/l2j/gameserver/skills/Formulas.java =================================================================== --- java/net/sf/l2j/gameserver/skills/Formulas.java (revision 3695) +++ java/net/sf/l2j/gameserver/skills/Formulas.java (working copy) @@ -1162,6 +1162,104 @@ { defence += target.getShldDef(); } + + if (target instanceof L2PcInstance && weapon != null && weapon.getItemType() == L2WeaponType.DAGGER && skill != null) + { + L2Armor armor = ((L2PcInstance) target).getActiveChestArmorItem(); + if (armor != null) + { + if (((L2PcInstance) target).isWearingHeavyArmor()) + damage /= Config.DAGGER_VS_HEAVY; + if (((L2PcInstance) target).isWearingLightArmor()) + damage /= Config.DAGGER_VS_LIGHT; + if (((L2PcInstance) target).isWearingMagicArmor()) + damage /= Config.DAGGER_VS_ROBE; + } + } + + if (target instanceof L2PcInstance && weapon != null && weapon.getItemType() == L2WeaponType.BOW && skill != null) + { + L2Armor armor = ((L2PcInstance) target).getActiveChestArmorItem(); + if (armor != null) + { + if (((L2PcInstance) target).isWearingHeavyArmor()) + damage /= Config.ARCHER_VS_HEAVY; + if (((L2PcInstance) target).isWearingLightArmor()) + damage /= Config.ARCHER_VS_LIGHT; + if (((L2PcInstance) target).isWearingMagicArmor()) + damage /= Config.ARCHER_VS_ROBE; + } + } + + if (target instanceof L2PcInstance && weapon != null && weapon.getItemType() == L2WeaponType.BLUNT && skill != null) + { + L2Armor armor = ((L2PcInstance) target).getActiveChestArmorItem(); + if (armor != null) + { + if (((L2PcInstance) target).isWearingHeavyArmor()) + damage /= Config.BLUNT_VS_HEAVY; + if (((L2PcInstance) target).isWearingLightArmor()) + damage /= Config.BLUNT_VS_LIGHT; + if (((L2PcInstance) target).isWearingMagicArmor()) + damage /= Config.BLUNT_VS_ROBE; + } + } + + if (target instanceof L2PcInstance && weapon != null && weapon.getItemType() == L2WeaponType.DUALFIST && skill != null) + { + L2Armor armor = ((L2PcInstance) target).getActiveChestArmorItem(); + if (armor != null) + { + if (((L2PcInstance) target).isWearingHeavyArmor()) + damage /= Config.FIST_VS_HEAVY; + if (((L2PcInstance) target).isWearingLightArmor()) + damage /= Config.FIST_VS_LIGHT; + if (((L2PcInstance) target).isWearingMagicArmor()) + damage /= Config.FIST_VS_ROBE; + } + } + + if (target instanceof L2PcInstance && weapon != null && weapon.getItemType() == L2WeaponType.DUAL && skill != null) + { + L2Armor armor = ((L2PcInstance) target).getActiveChestArmorItem(); + if (armor != null) + { + if (((L2PcInstance) target).isWearingHeavyArmor()) + damage /= Config.DUAL_VS_HEAVY; + if (((L2PcInstance) target).isWearingLightArmor()) + damage /= Config.DUAL_VS_LIGHT; + if (((L2PcInstance) target).isWearingMagicArmor()) + damage /= Config.DUAL_VS_ROBE; + } + } + + if (target instanceof L2PcInstance && weapon != null && weapon.getItemType() == L2WeaponType.SWORD && skill != null) + { + L2Armor armor = ((L2PcInstance) target).getActiveChestArmorItem(); + if (armor != null) + { + if (((L2PcInstance) target).isWearingHeavyArmor()) + damage /= Config.SWORD_VS_HEAVY; + if (((L2PcInstance) target).isWearingLightArmor()) + damage /= Config.SWORD_VS_LIGHT; + if (((L2PcInstance) target).isWearingMagicArmor()) + damage /= Config.SWORD_VS_ROBE; + } + } + + if (target instanceof L2PcInstance && weapon != null && weapon.getItemType() == L2WeaponType.POLE && skill != null) + { + L2Armor armor = ((L2PcInstance) target).getActiveChestArmorItem(); + if (armor != null) + { + if (((L2PcInstance) target).isWearingHeavyArmor()) + damage /= Config.POLE_VS_HEAVY; + if (((L2PcInstance) target).isWearingLightArmor()) + damage /= Config.POLE_VS_LIGHT; + if (((L2PcInstance) target).isWearingMagicArmor()) + damage /= Config.POLE_VS_ROBE; + } + } //if (!(attacker instanceof L2RaidBossInstance) && /* if ((attacker instanceof L2NpcInstance || attacker instanceof L2SiegeGuardInstance)) Index: java/net/sf/l2j/Config.java =================================================================== --- java/net/sf/l2j/Config.java (revision 3695) +++ java/net/sf/l2j/Config.java (working copy) @@ -881,7 +881,30 @@ public static boolean L2JMOD_WEDDING_SAMESEX; public static boolean L2JMOD_WEDDING_FORMALWEAR; public static int L2JMOD_WEDDING_DIVORCE_COSTS; - + + /** Class Balances */ + public static float DAGGER_VS_HEAVY; + public static float DAGGER_VS_LIGHT; + public static float DAGGER_VS_ROBE; + public static float ARCHER_VS_HEAVY; + public static float ARCHER_VS_LIGHT; + public static float ARCHER_VS_ROBE; + public static float BLUNT_VS_HEAVY; + public static float BLUNT_VS_LIGHT; + public static float BLUNT_VS_ROBE; + public static float FIST_VS_HEAVY; + public static float FIST_VS_LIGHT; + public static float FIST_VS_ROBE; + public static float DUAL_VS_HEAVY; + public static float DUAL_VS_LIGHT; + public static float DUAL_VS_ROBE; + public static float SWORD_VS_HEAVY; + public static float SWORD_VS_LIGHT; + public static float SWORD_VS_ROBE; + public static float POLE_VS_HEAVY; + public static float POLE_VS_LIGHT; + public static float POLE_VS_ROBE; + // Packet information /** Count the amount of packets per minute ? */ public static boolean COUNT_PACKETS = false; @@ -1848,6 +1871,34 @@ TVT_EVENT_RUNNING_TIME = Integer.parseInt(L2JModSettings.getProperty("TvTEventRunningTime", "1800")); TVT_EVENT_PARTICIPATION_NPC_ID = Integer.parseInt(L2JModSettings.getProperty("TvTEventParticipationNpcId", "0")); + DAGGER_VS_HEAVY = Float.parseFloat(L2JModSettings.getProperty("DaggerVsHeavy", "2.50")); + DAGGER_VS_LIGHT = Float.parseFloat(L2JModSettings.getProperty("DaggerVsHeavy", "2.00")); + DAGGER_VS_ROBE = Float.parseFloat(L2JModSettings.getProperty("DaggerVsHeavy", "1.80")); + + ARCHER_VS_HEAVY = Float.parseFloat(L2JModSettings.getProperty("ArcherVsHeavy", "2.50")); + ARCHER_VS_LIGHT = Float.parseFloat(L2JModSettings.getProperty("ArcherVsHeavy", "2.00")); + ARCHER_VS_ROBE = Float.parseFloat(L2JModSettings.getProperty("ArcherVsHeavy", "1.80")); + + BLUNT_VS_HEAVY = Float.parseFloat(L2JModSettings.getProperty("BluntVsHeavy", "2.50")); + BLUNT_VS_LIGHT = Float.parseFloat(L2JModSettings.getProperty("BluntVsHeavy", "2.00")); + BLUNT_VS_ROBE = Float.parseFloat(L2JModSettings.getProperty("BluntVsHeavy", "1.80")); + + FIST_VS_HEAVY = Float.parseFloat(L2JModSettings.getProperty("FistVsHeavy", "2.50")); + FIST_VS_LIGHT = Float.parseFloat(L2JModSettings.getProperty("FistVsHeavy", "2.00")); + FIST_VS_ROBE = Float.parseFloat(L2JModSettings.getProperty("FistVsHeavy", "1.80")); + + DUAL_VS_HEAVY = Float.parseFloat(L2JModSettings.getProperty("DualVsHeavy", "2.50")); + DUAL_VS_LIGHT = Float.parseFloat(L2JModSettings.getProperty("DualVsHeavy", "2.00")); + DUAL_VS_ROBE = Float.parseFloat(L2JModSettings.getProperty("DualVsHeavy", "1.80")); + + SWORD_VS_HEAVY = Float.parseFloat(L2JModSettings.getProperty("SwordVsHeavy", "2.50")); + SWORD_VS_LIGHT = Float.parseFloat(L2JModSettings.getProperty("SwordVsHeavy", "2.00")); + SWORD_VS_ROBE = Float.parseFloat(L2JModSettings.getProperty("SwordVsHeavy", "1.80")); + + POLE_VS_HEAVY = Float.parseFloat(L2JModSettings.getProperty("PoleVsHeavy", "2.50")); + POLE_VS_LIGHT = Float.parseFloat(L2JModSettings.getProperty("PoleVsHeavy", "2.00")); + POLE_VS_ROBE = Float.parseFloat(L2JModSettings.getProperty("PoleVsHeavy", "1.80")); + /** L2JMOD Wedding system */ L2JMOD_ALLOW_WEDDING = Boolean.valueOf(L2JModSettings.getProperty("AllowWedding", "False")); L2JMOD_WEDDING_PRICE = Integer.parseInt(L2JModSettings.getProperty("WeddingPrice", "250000000")); Index: java/config/l2jmods.properties =================================================================== --- java/config/l2jmods.properties (revision 3695) +++ java/config/l2jmods.properties (working copy) @@ -132,3 +132,52 @@ # ex.: 1;2;3;4;5;6 # no ";" at the start or end TvTEventDoorsCloseOpenOnStartEnd = + +#--------------------------------------------- +# Balance Dagger Classes - +#--------------------------------------------- +DaggerVsHeavy = 2.50 +DaggerVsLight = 2.00 +DaggerVsRobe = 1.80 + +#--------------------------------------------- +# Balance Archer Classes - +#--------------------------------------------- +ArcherVsHeavy = 2.50 +ArcherVsLight = 2.00 +ArcherVsRobe = 1.80 + +#--------------------------------------------- +# Balance Blunt Classes - +#--------------------------------------------- +BluntVsHeavy = 2.50 +BluntVsLight = 2.00 +BluntVsRobe = 1.80 + +#--------------------------------------------- +# Balance Dual-Weapon Classes - +#--------------------------------------------- +DualVsHeavy = 2.50 +DualVsLight = 2.00 +DualVsRobe = 1.80 + +#--------------------------------------------- +# Balance Fist Classes - +#--------------------------------------------- +FistVsHeavy = 2.50 +FistVsLight = 2.00 +FistVsRobe = 1.80 + +#--------------------------------------------- +# Balance Sword Classes - +#--------------------------------------------- +SwordVsHeavy = 2.50 +SwordVsLight = 2.00 +SwordVsRobe = 1.80 + +#--------------------------------------------- +# Balance Pole Classes - +#--------------------------------------------- +PoleVsHeavy = 2.50 +PoleVsLight = 2.00 +PoleVsRobe = 1.80 Quote
0 xAddytzu Posted June 2, 2010 Posted June 2, 2010 TVT_EVENT_RUNNING_TIME = Integer.parseInt(L2JModSettings.getProperty("TvTEventRunningTime", "1800")); TVT_EVENT_PARTICIPATION_NPC_ID = Integer.parseInt(L2JModSettings.getProperty("TvTEventParticipationNpcId", "0")); + DAGGER_VS_HEAVY = Float.parseFloat(L2JModSettings.getProperty("DaggerVsHeavy", "2.50")); Quote
0 DemoniK® Posted August 27, 2010 Posted August 27, 2010 + DAGGER_VS_HEAVY = Float.parseFloat(L2JModSettings.getProperty("DaggerVsHeavy", "2.50")); Works. Chackl just delete your 1rst line DAGGER_VS_HEAVY and recplace it with this. Quote
0 Chakl22 Posted May 14, 2011 Author Posted May 14, 2011 yeah works nice but the guy put all vsHeavy xD Quote
0 Chakl22 Posted May 15, 2011 Author Posted May 15, 2011 For Crossbow should be like this?: if (target instanceof L2PcInstance && weapon != null && weapon.getItemType() == L2WeaponType.CROSSBOW && skill != null) + { + L2Armor armor = ((L2PcInstance) target).getActiveChestArmorItem(); + if (armor != null) + { + if (((L2PcInstance) target).isWearingHeavyArmor()) + damage /= Config.CROSSBOW_VS_HEAVY; + if (((L2PcInstance) target).isWearingLightArmor()) + damage /= Config.CROSSBOW_VS_LIGHT; + if (((L2PcInstance) target).isWearingMagicArmor()) + damage /= Config.CROSSBOW_VS_ROBE; + } + } Or crossbow is affected from ARCHER class? Quote
0 Chakl22 Posted May 15, 2011 Author Posted May 15, 2011 For Crossbow should be like this?: if (target instanceof L2PcInstance && weapon != null && weapon.getItemType() == L2WeaponType.CROSSBOW && skill != null) + { + L2Armor armor = ((L2PcInstance) target).getActiveChestArmorItem(); + if (armor != null) + { + if (((L2PcInstance) target).isWearingHeavyArmor()) + damage /= Config.CROSSBOW_VS_HEAVY; + if (((L2PcInstance) target).isWearingLightArmor()) + damage /= Config.CROSSBOW_VS_LIGHT; + if (((L2PcInstance) target).isWearingMagicArmor()) + damage /= Config.CROSSBOW_VS_ROBE; + } + } Or crossbow is affected from ARCHER class? Quote
0 Chakl22 Posted May 15, 2011 Author Posted May 15, 2011 For Crossbow should be like this?: if (target instanceof L2PcInstance && weapon != null && weapon.getItemType() == L2WeaponType.CROSSBOW && skill != null) + { + L2Armor armor = ((L2PcInstance) target).getActiveChestArmorItem(); + if (armor != null) + { + if (((L2PcInstance) target).isWearingHeavyArmor()) + damage /= Config.CROSSBOW_VS_HEAVY; + if (((L2PcInstance) target).isWearingLightArmor()) + damage /= Config.CROSSBOW_VS_LIGHT; + if (((L2PcInstance) target).isWearingMagicArmor()) + damage /= Config.CROSSBOW_VS_ROBE; + } + } Or crossbow is affected from ARCHER class? Quote
Question
Chakl22
6 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.