diff --git a/OpenRA.Mods.RA/Activities/DeliverResources.cs b/OpenRA.Mods.RA/Activities/DeliverResources.cs index a4bbc2035e..86ad34bef1 100755 --- a/OpenRA.Mods.RA/Activities/DeliverResources.cs +++ b/OpenRA.Mods.RA/Activities/DeliverResources.cs @@ -54,17 +54,17 @@ namespace OpenRA.Mods.RA.Activities return Util.SequenceActivities(new Wait(25), this); var proc = harv.LinkedProc; - var iao = proc.Trait(); + var iao = proc.Trait(); self.SetTargetLine(Target.FromActor(proc), Color.Green, false); - if (self.Location != proc.Location + iao.DeliverOffset) + if (self.Location != proc.Location + iao.DeliveryOffset) { var notify = self.TraitsImplementing(); var next = new DeliverResources(); foreach (var n in notify) - n.MovingToRefinery(self, proc.Location + iao.DeliverOffset, next); + n.MovingToRefinery(self, proc.Location + iao.DeliveryOffset, next); - return Util.SequenceActivities(movement.MoveTo(proc.Location + iao.DeliverOffset, 0), this); + return Util.SequenceActivities(movement.MoveTo(proc.Location + iao.DeliveryOffset, 0), this); } if (!isDocking) diff --git a/OpenRA.Mods.RA/Traits/Buildings/OreRefinery.cs b/OpenRA.Mods.RA/Traits/Buildings/OreRefinery.cs index f8643a14e8..6c495da762 100644 --- a/OpenRA.Mods.RA/Traits/Buildings/OreRefinery.cs +++ b/OpenRA.Mods.RA/Traits/Buildings/OreRefinery.cs @@ -34,7 +34,7 @@ namespace OpenRA.Mods.RA.Traits public virtual object Create(ActorInitializer init) { return new OreRefinery(init.Self, this); } } - public class OreRefinery : ITick, IAcceptOre, INotifyKilled, INotifySold, INotifyCapture, INotifyOwnerChanged, IExplodeModifier, ISync + public class OreRefinery : ITick, IAcceptResources, INotifyKilled, INotifySold, INotifyCapture, INotifyOwnerChanged, IExplodeModifier, ISync { readonly Actor self; readonly OreRefineryInfo info; @@ -48,7 +48,7 @@ namespace OpenRA.Mods.RA.Traits [Sync] bool preventDock = false; public bool AllowDocking { get { return !preventDock; } } - public CVec DeliverOffset { get { return info.DockOffset; } } + public CVec DeliveryOffset { get { return info.DockOffset; } } public virtual Activity DockSequence(Actor harv, Actor self) { return new RAHarvesterDockSequence(harv, self, info.DockAngle); } @@ -66,9 +66,9 @@ namespace OpenRA.Mods.RA.Traits .Where(a => a.Trait.LinkedProc == self); } - public bool CanGiveOre(int amount) { return playerResources.CanGiveResources(amount); } + public bool CanGiveResource(int amount) { return playerResources.CanGiveResources(amount); } - public void GiveOre(int amount) + public void GiveResource(int amount) { playerResources.GiveResources(amount); if (info.ShowTicks) diff --git a/OpenRA.Mods.RA/Traits/Harvester.cs b/OpenRA.Mods.RA/Traits/Harvester.cs index 55f353ee51..661cef75c6 100644 --- a/OpenRA.Mods.RA/Traits/Harvester.cs +++ b/OpenRA.Mods.RA/Traits/Harvester.cs @@ -115,10 +115,10 @@ namespace OpenRA.Mods.RA.Traits { // Find all refineries and their occupancy count: var refs = ( - from r in self.World.ActorsWithTrait() + from r in self.World.ActorsWithTrait() where r.Actor != ignore && r.Actor.Owner == self.Owner && IsAcceptableProcType(r.Actor) let linkedHarvs = self.World.ActorsWithTrait().Where(a => a.Trait.LinkedProc == r.Actor).Count() - select new { Location = r.Actor.Location + r.Trait.DeliverOffset, Actor = r.Actor, Occupancy = linkedHarvs }).ToDictionary(r => r.Location); + select new { Location = r.Actor.Location + r.Trait.DeliveryOffset, Actor = r.Actor, Occupancy = linkedHarvs }).ToDictionary(r => r.Location); // Start a search from each refinery's delivery location: var mi = self.Info.Traits.Get(); @@ -162,7 +162,7 @@ namespace OpenRA.Mods.RA.Traits var lastproc = LastLinkedProc ?? LinkedProc; if (lastproc != null && !lastproc.Destroyed) { - var deliveryLoc = lastproc.Location + lastproc.Trait().DeliverOffset; + var deliveryLoc = lastproc.Location + lastproc.Trait().DeliveryOffset; if (self.Location == deliveryLoc) { // Get out of the way: @@ -236,11 +236,11 @@ namespace OpenRA.Mods.RA.Traits if (contents.Keys.Count > 0) { var type = contents.First().Key; - var iao = proc.Trait(); - if (!iao.CanGiveOre(type.ValuePerUnit)) + var iao = proc.Trait(); + if (!iao.CanGiveResource(type.ValuePerUnit)) return false; - iao.GiveOre(type.ValuePerUnit); + iao.GiveResource(type.ValuePerUnit); if (--contents[type] == 0) contents.Remove(type); @@ -254,9 +254,9 @@ namespace OpenRA.Mods.RA.Traits { get { - yield return new EnterAlliedActorTargeter("Deliver", 5, + yield return new EnterAlliedActorTargeter("Deliver", 5, proc => IsAcceptableProcType(proc), - proc => !IsEmpty && proc.Trait().AllowDocking); + proc => !IsEmpty && proc.Trait().AllowDocking); yield return new HarvestOrderTargeter(); } } @@ -337,7 +337,7 @@ namespace OpenRA.Mods.RA.Traits else if (order.OrderString == "Deliver") { // NOTE: An explicit deliver order forces the harvester to always deliver to this refinery. - var iao = order.TargetActor.TraitOrDefault(); + var iao = order.TargetActor.TraitOrDefault(); if (iao == null || !iao.AllowDocking || !IsAcceptableProcType(order.TargetActor)) return; diff --git a/OpenRA.Mods.RA/TraitsInterfaces.cs b/OpenRA.Mods.RA/TraitsInterfaces.cs index 7d2794f86f..c49f9727d7 100755 --- a/OpenRA.Mods.RA/TraitsInterfaces.cs +++ b/OpenRA.Mods.RA/TraitsInterfaces.cs @@ -9,17 +9,15 @@ #endregion using OpenRA.Mods.RA.Activities; -using OpenRA.Mods.RA.Traits; -using OpenRA.Traits; namespace OpenRA.Mods.RA { - public interface IAcceptOre + public interface IAcceptResources { void OnDock(Actor harv, DeliverResources dockOrder); - void GiveOre(int amount); - bool CanGiveOre(int amount); - CVec DeliverOffset { get; } + void GiveResource(int amount); + bool CanGiveResource(int amount); + CVec DeliveryOffset { get; } bool AllowDocking { get; } }