combat manager fix

This commit is contained in:
2024-03-28 20:25:40 -05:00
parent 94253f547d
commit df07c80b1b
+12 -2
View File
@@ -65,6 +65,9 @@ public enum CombatManager {
} else if (mainWeapon == null && offWeapon != null && offWeapon.template.item_skill_required.containsKey("Block") == false) {
//swing left hand only
processAttack(attacker, target, Enum.EquipSlotType.LHELD);
} else if (mainWeapon != null && offWeapon == null) {
//swing left hand only
processAttack(attacker, target, Enum.EquipSlotType.RHELD);
}
}
@@ -146,7 +149,10 @@ public enum CombatManager {
if (target.getObjectType() == Enum.GameObjectType.Building)
hitChance = 100;
int passiveAnim = getSwingAnimation(attacker.charItemManager.getEquipped().get(slot).template, null, true);
int passiveAnim = getSwingAnimation(null, null, slot.equals(Enum.EquipSlotType.RHELD));
if(attacker.charItemManager.getEquipped().get(slot) != null){
passiveAnim = getSwingAnimation(attacker.charItemManager.getEquipped().get(slot).template, null, true);
}
if (ThreadLocalRandom.current().nextInt(100) > hitChance) {
TargetedActionMsg msg = new TargetedActionMsg(attacker, target, 0f, passiveAnim);
@@ -282,7 +288,11 @@ public enum CombatManager {
else
((Building) target).setCurrentHitPoints(target.getCurrentHitpoints() - damage);
TargetedActionMsg cmm = new TargetedActionMsg(attacker, target, (float) damage, 0);
int attackAnim = getSwingAnimation(null,null,slot.equals(Enum.EquipSlotType.RHELD));
if (attacker.charItemManager.getEquipped().get(slot) != null) {
attackAnim = getSwingAnimation(attacker.charItemManager.getEquipped().get(slot).template,null,slot.equals(Enum.EquipSlotType.RHELD));
}
TargetedActionMsg cmm = new TargetedActionMsg(attacker, target, (float) damage, attackAnim);
DispatchMessage.sendToAllInRange(target, cmm);
}