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
{
class Idle : CancelableActivity
public class Idle : CancelableActivity
{
public override IActivity Tick(Actor self) { return NextActivity; }
}

View File

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