From e8fcdf9ae01aa832af47be67c2eaa0ac7f1cf097 Mon Sep 17 00:00:00 2001 From: Chris Forbes Date: Mon, 28 Dec 2009 18:24:48 +1300 Subject: [PATCH] minelayer limited ammo support --- OpenRa.Game/Traits/Minelayer.cs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/OpenRa.Game/Traits/Minelayer.cs b/OpenRa.Game/Traits/Minelayer.cs index 59cfd9ffa3..e1ebd703c6 100644 --- a/OpenRa.Game/Traits/Minelayer.cs +++ b/OpenRa.Game/Traits/Minelayer.cs @@ -11,7 +11,10 @@ namespace OpenRa.Game.Traits public Order IssueOrder(Actor self, int2 xy, MouseInput mi, Actor underCursor) { - // todo: check for ammo + var limitedAmmo = self.traits.GetOrDefault(); + if (limitedAmmo != null && !limitedAmmo.HasAmmo()) + return null; + if (mi.Button == MouseButton.Right && underCursor == self) return new Order("Deploy", self, null, int2.Zero, null); @@ -22,7 +25,10 @@ namespace OpenRa.Game.Traits { if (order.OrderString == "Deploy") { - // todo: check for and adjust ammo + var limitedAmmo = self.traits.GetOrDefault(); + if (limitedAmmo != null) + limitedAmmo.Attacking(self); + // todo: delay a bit? Game.world.AddFrameEndTask(