diff --git a/megamek/src/megamek/server/GameManager.java b/megamek/src/megamek/server/GameManager.java index b5c0f9f7e10..38f01ab3032 100644 --- a/megamek/src/megamek/server/GameManager.java +++ b/megamek/src/megamek/server/GameManager.java @@ -32047,7 +32047,11 @@ private PhysicalResult preTreatPhysicalAttack(AbstractAttackAction aaa) { int damage = 0; PhysicalResult pr = new PhysicalResult(); ToHitData toHit = new ToHitData(); - pr.roll = Compute.d6(2); + if (aaa instanceof PhysicalAttackAction && ae.getCrew() != null) { + pr.roll = ae.getCrew().rollPilotingSkill(); + } else { + pr.roll = Compute.d6(2); + } pr.aaa = aaa; if (aaa instanceof BrushOffAttackAction) { BrushOffAttackAction baa = (BrushOffAttackAction) aaa; @@ -32061,7 +32065,11 @@ private PhysicalResult preTreatPhysicalAttack(AbstractAttackAction aaa) { damage = BrushOffAttackAction.getDamageFor(ae, BrushOffAttackAction.LEFT); pr.damageRight = BrushOffAttackAction.getDamageFor(ae, BrushOffAttackAction.RIGHT); baa.setArm(arm); - pr.rollRight = Compute.d6(2); + if (ae.getCrew() != null) { + pr.rollRight = ae.getCrew().rollPilotingSkill(); + } else { + pr.rollRight = Compute.d6(2); + } } else if (aaa instanceof ChargeAttackAction) { ChargeAttackAction caa = (ChargeAttackAction) aaa; toHit = caa.toHit(game); @@ -32151,7 +32159,11 @@ else if (clubType.hasSubType(MiscType.S_WRECKING_BALL)) { } pr.damageRight = damageRight; pr.toHitRight = toHitRight; - pr.rollRight = Compute.d6(2); + if (ae.getCrew() != null) { + pr.rollRight = ae.getCrew().rollPilotingSkill(); + } else { + pr.rollRight = Compute.d6(2); + } } else if (aaa instanceof PushAttackAction) { PushAttackAction paa = (PushAttackAction) aaa; toHit = paa.toHit(game);