Use Targets
This commit is contained in:
@@ -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)
|
||||||
|
|||||||
@@ -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();
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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();
|
||||||
|
|||||||
@@ -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();
|
||||||
|
|||||||
@@ -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();
|
||||||
|
|||||||
@@ -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();
|
||||||
|
|||||||
@@ -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();
|
||||||
|
|||||||
@@ -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();
|
||||||
|
|||||||
@@ -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();
|
||||||
|
|||||||
@@ -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();
|
||||||
|
|||||||
Reference in New Issue
Block a user