Fixed auto attack not working properly due to code expecting 'Idle' activity but most units use 'IdleAnimation' in RA mod

This commit is contained in:
max621
2010-10-04 22:44:09 -05:00
committed by Paul Chote
parent 49a645cd2d
commit 2fc219ecd5
2 changed files with 8 additions and 21 deletions

View File

@@ -10,7 +10,7 @@
namespace OpenRA.Traits.Activities namespace OpenRA.Traits.Activities
{ {
class Idle : CancelableActivity public class Idle : CancelableActivity
{ {
public override IActivity Tick(Actor self) { return NextActivity; } public override IActivity Tick(Actor self) { return NextActivity; }
} }

View File

@@ -11,10 +11,11 @@
using System.Collections.Generic; using System.Collections.Generic;
using OpenRA.Mods.RA.Render; using OpenRA.Mods.RA.Render;
using OpenRA.Traits; using OpenRA.Traits;
using OpenRA.Traits.Activities;
namespace OpenRA.Mods.RA.Activities namespace OpenRA.Mods.RA.Activities
{ {
public class IdleAnimation : IActivity public class IdleAnimation : Idle
{ {
string sequence; string sequence;
int delay; int delay;
@@ -25,10 +26,8 @@ namespace OpenRA.Mods.RA.Activities
this.delay = delay; this.delay = delay;
} }
IActivity NextActivity { get; set; }
bool active = true; bool active = true;
public IActivity Tick(Actor self) public override IActivity Tick(Actor self)
{ {
if (!active) return NextActivity; if (!active) return NextActivity;
@@ -38,23 +37,11 @@ namespace OpenRA.Mods.RA.Activities
return this; return this;
} }
public void Cancel(Actor self) protected override bool OnCancel()
{ {
active = false; active = false;
NextActivity = null; return true;
} }
public void Queue( IActivity activity )
{
if( NextActivity != null )
NextActivity.Queue( activity );
else
NextActivity = activity;
}
public IEnumerable<float2> GetCurrentPath()
{
yield break;
}
} }
} }