Implement enter behaviour for Infiltrates plus other cleanups.

This commit is contained in:
Paul Chote
2015-11-23 21:24:17 +00:00
parent f5fafb1b9d
commit 1959820bc8
3 changed files with 35 additions and 23 deletions

View File

@@ -8,22 +8,29 @@
*/
#endregion
using OpenRA.Mods.Common.Traits;
using OpenRA.Mods.RA.Activities;
using OpenRA.Mods.RA.Traits;
using OpenRA.Scripting;
using OpenRA.Traits;
namespace OpenRA.Mods.RA.Scripting
{
[ScriptPropertyGroup("Ability")]
public class InfiltrateProperties : ScriptActorProperties
public class InfiltrateProperties : ScriptActorProperties, Requires<InfiltratesInfo>
{
readonly InfiltratesInfo info;
public InfiltrateProperties(ScriptContext context, Actor self)
: base(context, self)
{ }
{
info = Self.Info.TraitInfo<InfiltratesInfo>();
}
[Desc("Infiltrate the target actor.")]
public void Infiltrate(Actor target)
{
Self.QueueActivity(new Infiltrate(Self, target));
Self.QueueActivity(new Infiltrate(Self, target, info.EnterBehaviour, info.ValidStances, info.Notification));
}
}
}