Fix e6
This commit is contained in:
@@ -33,16 +33,16 @@ namespace OpenRA.Mods.RA.Activities
|
|||||||
public IActivity Tick(Actor self)
|
public IActivity Tick(Actor self)
|
||||||
{
|
{
|
||||||
if (target == null || target.IsDead) return NextActivity;
|
if (target == null || target.IsDead) return NextActivity;
|
||||||
|
var damage = -self.Info.Traits.Get<EngineerCaptureInfo>().EngineerDamage;
|
||||||
if (self.Owner.Stances[ target.Owner ] == Stance.Ally)
|
if (self.Owner.Stances[ target.Owner ] == Stance.Ally)
|
||||||
{
|
{
|
||||||
if (target.Health == target.Info.Traits.Get<OwnedActorInfo>().HP)
|
if (target.Health == target.Info.Traits.Get<OwnedActorInfo>().HP)
|
||||||
return NextActivity;
|
return NextActivity;
|
||||||
target.InflictDamage(self, -EngineerCapture.EngineerDamage, null);
|
target.InflictDamage(self, damage, null);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (target.Health - EngineerCapture.EngineerDamage <= 0)
|
if (target.Health - damage <= 0)
|
||||||
{
|
{
|
||||||
target.World.AddFrameEndTask(w =>
|
target.World.AddFrameEndTask(w =>
|
||||||
{ // momentarily remove from world so the ownership queries don't get confused
|
{ // momentarily remove from world so the ownership queries don't get confused
|
||||||
@@ -54,10 +54,10 @@ namespace OpenRA.Mods.RA.Activities
|
|||||||
t.OnCapture(target, self);
|
t.OnCapture(target, self);
|
||||||
});
|
});
|
||||||
|
|
||||||
target.InflictDamage(self, target.Health - EngineerCapture.EngineerDamage, null);
|
target.InflictDamage(self, target.Health - damage, null);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
target.InflictDamage(self, EngineerCapture.EngineerDamage, null);
|
target.InflictDamage(self, damage, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
// the engineer is sacrificed.
|
// the engineer is sacrificed.
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
#region Copyright & License Information
|
#region Copyright & License Information
|
||||||
/*
|
/*
|
||||||
* Copyright 2007,2009,2010 Chris Forbes, Robert Pepperell, Matthew Bowra-Dean, Paul Chote, Alli Witheford.
|
* Copyright 2007,2009,2010 Chris Forbes, Robert Pepperell, Matthew Bowra-Dean, Paul Chote, Alli Witheford.
|
||||||
* This file is part of OpenRA.
|
* This file is part of OpenRA.
|
||||||
@@ -24,11 +24,13 @@ using OpenRA.Traits.Activities;
|
|||||||
|
|
||||||
namespace OpenRA.Mods.RA
|
namespace OpenRA.Mods.RA
|
||||||
{
|
{
|
||||||
class EngineerCaptureInfo : TraitInfo<EngineerCapture> { }
|
class EngineerCaptureInfo : TraitInfo<EngineerCapture>
|
||||||
|
{
|
||||||
|
public readonly int EngineerDamage = 300;
|
||||||
|
}
|
||||||
|
|
||||||
class EngineerCapture : IIssueOrder, IResolveOrder
|
class EngineerCapture : IIssueOrder, IResolveOrder
|
||||||
{
|
{
|
||||||
public const int EngineerDamage = 300; // todo: push into rules, as a weapon
|
|
||||||
|
|
||||||
public Order IssueOrder(Actor self, int2 xy, MouseInput mi, Actor underCursor)
|
public Order IssueOrder(Actor self, int2 xy, MouseInput mi, Actor underCursor)
|
||||||
{
|
{
|
||||||
@@ -39,7 +41,7 @@ namespace OpenRA.Mods.RA
|
|||||||
// todo: other bits
|
// todo: other bits
|
||||||
if (underCursor.Owner == null) return null; // don't allow capturing of bridges, etc.
|
if (underCursor.Owner == null) return null; // don't allow capturing of bridges, etc.
|
||||||
|
|
||||||
var isCapture = underCursor.Health <= EngineerDamage &&
|
var isCapture = underCursor.Health <= self.Info.Traits.Get<EngineerCaptureInfo>().EngineerDamage &&
|
||||||
self.Owner.Stances[underCursor.Owner] != Stance.Ally;
|
self.Owner.Stances[underCursor.Owner] != Stance.Ally;
|
||||||
|
|
||||||
return new Order(isCapture ? "Capture" : "Infiltrate",
|
return new Order(isCapture ? "Capture" : "Infiltrate",
|
||||||
|
|||||||
@@ -120,14 +120,11 @@ E6:
|
|||||||
Unit:
|
Unit:
|
||||||
HP: 25
|
HP: 25
|
||||||
Speed: 4
|
Speed: 4
|
||||||
AttackBase:
|
|
||||||
PrimaryWeapon: Chemspray
|
|
||||||
PrimaryOffset: 0,0,0,-5
|
|
||||||
FireDelay: 3
|
|
||||||
TakeCover:
|
TakeCover:
|
||||||
Passenger:
|
Passenger:
|
||||||
ColorOfCargoPip: Yellow
|
ColorOfCargoPip: Yellow
|
||||||
EngineerCapture:
|
EngineerCapture:
|
||||||
|
EngineerDamage: 9999999
|
||||||
-AutoTarget:
|
-AutoTarget:
|
||||||
|
|
||||||
RMBO:
|
RMBO:
|
||||||
|
|||||||
Reference in New Issue
Block a user