Use Targets

This commit is contained in:
alzeih
2010-07-26 12:33:54 +12:00
parent e8adc357e9
commit 526bb3e042
11 changed files with 17 additions and 25 deletions

View File

@@ -27,19 +27,11 @@ namespace OpenRA.Traits
this.Info = info; this.Info = info;
} }
Actor target; Target target;
float2 pos;
int lifetime; int lifetime;
Color c; Color c;
public void SetTarget(Actor self, int2 cell, Color c)
{
pos = Game.CellSize * (cell + new float2(0.5f, 0.5f));
lifetime = Info.Ticks;
target = null;
this.c = c;
}
public void SetTarget(Actor self, Actor target, Color c) public void SetTarget(Actor self, Target target, Color c)
{ {
this.target = target; this.target = target;
lifetime = Info.Ticks; lifetime = Info.Ticks;
@@ -52,7 +44,7 @@ namespace OpenRA.Traits
if ((lifetime <= 0 || --lifetime <= 0) && !force) if ((lifetime <= 0 || --lifetime <= 0) && !force)
return; return;
var p = (target != null) ? target.CenterLocation : pos; var p = target.CenterLocation;
Game.Renderer.LineRenderer.DrawLine(self.CenterLocation, p, c, c); Game.Renderer.LineRenderer.DrawLine(self.CenterLocation, p, c, c);
for (bool b = false; !b; p = self.CenterLocation, b = true) for (bool b = false; !b; p = self.CenterLocation, b = true)

View File

@@ -117,7 +117,7 @@ namespace OpenRA.Traits
w.Add(new MoveFlash(self.World, order.TargetLocation)); w.Add(new MoveFlash(self.World, order.TargetLocation));
var line = self.traits.GetOrDefault<DrawLineToTarget>(); var line = self.traits.GetOrDefault<DrawLineToTarget>();
if (line != null) if (line != null)
line.SetTarget(self, order.TargetLocation, Color.Green); line.SetTarget(self, Target.FromOrder(order), Color.Green);
}); });
if( !order.Queued ) self.CancelActivity(); if( !order.Queued ) self.CancelActivity();

View File

@@ -255,8 +255,8 @@ namespace OpenRA.Mods.RA
var line = self.traits.GetOrDefault<DrawLineToTarget>(); var line = self.traits.GetOrDefault<DrawLineToTarget>();
if (line != null) if (line != null)
if (order.TargetActor != null) line.SetTarget(self, order.TargetActor, Color.Red); if (order.TargetActor != null) line.SetTarget(self, Target.FromOrder(order), Color.Red);
else line.SetTarget(self, order.TargetLocation, Color.Red); else line.SetTarget(self, Target.FromOrder(order), Color.Red);
}); });
} }
else else

View File

@@ -43,7 +43,7 @@ namespace OpenRA.Mods.RA
w.Add(new FlashTarget(order.TargetActor)); w.Add(new FlashTarget(order.TargetActor));
var line = self.traits.GetOrDefault<DrawLineToTarget>(); var line = self.traits.GetOrDefault<DrawLineToTarget>();
if (line != null) if (line != null)
line.SetTarget(self, order.TargetActor, Color.Red); line.SetTarget(self, Target.FromOrder(order), Color.Red);
}); });
self.CancelActivity(); self.CancelActivity();

View File

@@ -49,7 +49,7 @@ namespace OpenRA.Mods.RA
w.Add(new FlashTarget(order.TargetActor)); w.Add(new FlashTarget(order.TargetActor));
var line = self.traits.GetOrDefault<DrawLineToTarget>(); var line = self.traits.GetOrDefault<DrawLineToTarget>();
if (line != null) if (line != null)
line.SetTarget(self, order.TargetActor, Color.Red); line.SetTarget(self, Target.FromOrder(order), Color.Red);
}); });
self.CancelActivity(); self.CancelActivity();

View File

@@ -59,7 +59,7 @@ namespace OpenRA.Mods.RA
w.Add(new FlashTarget(order.TargetActor)); w.Add(new FlashTarget(order.TargetActor));
var line = self.traits.GetOrDefault<DrawLineToTarget>(); var line = self.traits.GetOrDefault<DrawLineToTarget>();
if (line != null) if (line != null)
line.SetTarget(self, order.TargetActor, Color.Yellow); line.SetTarget(self, Target.FromOrder(order), Color.Yellow);
}); });
self.CancelActivity(); self.CancelActivity();

View File

@@ -128,7 +128,7 @@ namespace OpenRA.Mods.RA
w.Add(new MoveFlash(self.World, order.TargetLocation)); w.Add(new MoveFlash(self.World, order.TargetLocation));
var line = self.traits.GetOrDefault<DrawLineToTarget>(); var line = self.traits.GetOrDefault<DrawLineToTarget>();
if (line != null) if (line != null)
line.SetTarget(self, order.TargetLocation, Color.Red); line.SetTarget(self, Target.FromOrder(order), Color.Red);
}); });
self.CancelActivity(); self.CancelActivity();
@@ -154,7 +154,7 @@ namespace OpenRA.Mods.RA
w.Add(new FlashTarget(order.TargetActor)); w.Add(new FlashTarget(order.TargetActor));
var line = self.traits.GetOrDefault<DrawLineToTarget>(); var line = self.traits.GetOrDefault<DrawLineToTarget>();
if (line != null) if (line != null)
line.SetTarget(self, order.TargetActor, Color.Green); line.SetTarget(self, Target.FromOrder(order), Color.Green);
}); });
self.CancelActivity(); self.CancelActivity();

View File

@@ -80,7 +80,7 @@ namespace OpenRA.Mods.RA
w.Add(new MoveFlash(self.World, order.TargetLocation)); w.Add(new MoveFlash(self.World, order.TargetLocation));
var line = self.traits.GetOrDefault<DrawLineToTarget>(); var line = self.traits.GetOrDefault<DrawLineToTarget>();
if (line != null) if (line != null)
line.SetTarget(self, order.TargetLocation, Color.Green); line.SetTarget(self, Target.FromOrder(order), Color.Green);
}); });
self.CancelActivity(); self.CancelActivity();
@@ -110,7 +110,7 @@ namespace OpenRA.Mods.RA
w.Add(new FlashTarget(order.TargetActor)); w.Add(new FlashTarget(order.TargetActor));
var line = self.traits.GetOrDefault<DrawLineToTarget>(); var line = self.traits.GetOrDefault<DrawLineToTarget>();
if (line != null) if (line != null)
line.SetTarget(self, order.TargetActor, Color.Green); line.SetTarget(self, Target.FromOrder(order), Color.Green);
}); });
self.CancelActivity(); self.CancelActivity();

View File

@@ -73,7 +73,7 @@ namespace OpenRA.Mods.RA
w.Add(new FlashTarget(order.TargetActor)); w.Add(new FlashTarget(order.TargetActor));
var line = self.traits.GetOrDefault<DrawLineToTarget>(); var line = self.traits.GetOrDefault<DrawLineToTarget>();
if (line != null) if (line != null)
line.SetTarget(self, order.TargetActor, Color.Green); line.SetTarget(self, Target.FromOrder(order), Color.Green);
}); });
self.CancelActivity(); self.CancelActivity();

View File

@@ -96,7 +96,7 @@ namespace OpenRA.Mods.RA
w.Add(new MoveFlash(self.World, order.TargetLocation)); w.Add(new MoveFlash(self.World, order.TargetLocation));
var line = self.traits.GetOrDefault<DrawLineToTarget>(); var line = self.traits.GetOrDefault<DrawLineToTarget>();
if (line != null) if (line != null)
line.SetTarget(self, order.TargetLocation, Color.Green); line.SetTarget(self, Target.FromOrder(order), Color.Green);
}); });
self.CancelActivity(); self.CancelActivity();
@@ -121,7 +121,7 @@ namespace OpenRA.Mods.RA
w.Add(new FlashTarget(order.TargetActor)); w.Add(new FlashTarget(order.TargetActor));
var line = self.traits.GetOrDefault<DrawLineToTarget>(); var line = self.traits.GetOrDefault<DrawLineToTarget>();
if (line != null) if (line != null)
line.SetTarget(self, order.TargetActor, Color.Green); line.SetTarget(self, Target.FromOrder(order), Color.Green);
}); });
self.CancelActivity(); self.CancelActivity();

View File

@@ -65,7 +65,7 @@ namespace OpenRA.Mods.RA
w.Add(new FlashTarget(order.TargetActor)); w.Add(new FlashTarget(order.TargetActor));
var line = self.traits.GetOrDefault<DrawLineToTarget>(); var line = self.traits.GetOrDefault<DrawLineToTarget>();
if (line != null) if (line != null)
line.SetTarget(self, order.TargetActor, Color.Green); line.SetTarget(self, Target.FromOrder(order), Color.Green);
}); });
self.CancelActivity(); self.CancelActivity();