Merge pull request #8171 from reaperrr/withunitbody1
Introduce WithFacingSpriteBody and related With*Animation traits
This commit is contained in:
@@ -72,7 +72,6 @@
|
||||
<Compile Include="Traits\SupportPowers\IonCannonPower.cs" />
|
||||
<Compile Include="Widgets\Logic\CncMainMenuLogic.cs" />
|
||||
<Compile Include="Widgets\Logic\ProductionTabsLogic.cs" />
|
||||
<Compile Include="Traits\RenderUnitFlying.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\OpenRA.Game\OpenRA.Game.csproj">
|
||||
|
||||
@@ -364,6 +364,7 @@
|
||||
<Compile Include="Traits\ProximityCaptor.cs" />
|
||||
<Compile Include="Traits\ProximityCapturable.cs" />
|
||||
<Compile Include="Traits\RadarColorFromTerrain.cs" />
|
||||
<Compile Include="Traits\Render\AutoSelectionSize.cs" />
|
||||
<Compile Include="Traits\Render\Hovers.cs" />
|
||||
<Compile Include="Traits\Render\LeavesTrails.cs" />
|
||||
<Compile Include="Traits\Render\RenderBuilding.cs" />
|
||||
@@ -386,6 +387,8 @@
|
||||
<Compile Include="Traits\Render\WithBarrel.cs" />
|
||||
<Compile Include="Traits\Render\WithBuildingExplosion.cs" />
|
||||
<Compile Include="Traits\Render\WithActiveAnimation.cs" />
|
||||
<Compile Include="Traits\Render\WithAttackAnimation.cs" />
|
||||
<Compile Include="Traits\Render\WithMoveAnimation.cs" />
|
||||
<Compile Include="Traits\Render\WithBuildingPlacedAnimation.cs" />
|
||||
<Compile Include="Traits\Render\WithMakeAnimation.cs" />
|
||||
<Compile Include="Traits\Render\WithChargeOverlay.cs" />
|
||||
@@ -405,6 +408,7 @@
|
||||
<Compile Include="Traits\Render\WithSmoke.cs" />
|
||||
<Compile Include="Traits\Render\WithSpriteBody.cs" />
|
||||
<Compile Include="Traits\Render\WithTurret.cs" />
|
||||
<Compile Include="Traits\Render\WithFacingSpriteBody.cs" />
|
||||
<Compile Include="Traits\Render\WithBuildingPlacedOverlay.cs" />
|
||||
<Compile Include="Traits\Render\WithProductionDoorOverlay.cs" />
|
||||
<Compile Include="Traits\Render\WithProductionOverlay.cs" />
|
||||
|
||||
31
OpenRA.Mods.Common/Traits/Render/AutoSelectionSize.cs
Normal file
31
OpenRA.Mods.Common/Traits/Render/AutoSelectionSize.cs
Normal file
@@ -0,0 +1,31 @@
|
||||
#region Copyright & License Information
|
||||
/*
|
||||
* Copyright 2007-2015 The OpenRA Developers (see AUTHORS)
|
||||
* This file is part of OpenRA, which is free software. It is made
|
||||
* available to you under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation. For more information,
|
||||
* see COPYING.
|
||||
*/
|
||||
#endregion
|
||||
|
||||
using System;
|
||||
using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.Common.Traits
|
||||
{
|
||||
public class AutoSelectionSizeInfo : ITraitInfo, Requires<RenderSpritesInfo>
|
||||
{
|
||||
public object Create(ActorInitializer init) { return new AutoSelectionSize(this); }
|
||||
}
|
||||
|
||||
public class AutoSelectionSize : IAutoSelectionSize
|
||||
{
|
||||
public AutoSelectionSize(AutoSelectionSizeInfo info) { }
|
||||
|
||||
public int2 SelectionSize(Actor self)
|
||||
{
|
||||
var rs = self.Trait<RenderSprites>();
|
||||
return rs.AutoSelectionSize(self);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -16,7 +16,7 @@ using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.Common.Traits
|
||||
{
|
||||
[Desc("Basic render trait for immobile actors.")]
|
||||
[Desc("Basic render trait for immobile actors. Deprecated, use RenderSprites + WithSpriteBody instead.")]
|
||||
public class RenderSimpleInfo : RenderSpritesInfo, IRenderActorPreviewSpritesInfo, IQuantizeBodyOrientationInfo, Requires<IBodyOrientationInfo>
|
||||
{
|
||||
public readonly string Sequence = "idle";
|
||||
|
||||
@@ -236,8 +236,8 @@ namespace OpenRA.Mods.Common.Traits
|
||||
return sequence;
|
||||
}
|
||||
|
||||
// Required by RenderSimple
|
||||
protected int2 AutoSelectionSize(Actor self)
|
||||
// Required by RenderSimple, WithSpriteBody and WithInfantryBody
|
||||
public int2 AutoSelectionSize(Actor self)
|
||||
{
|
||||
return anims.Where(b => b.IsVisible
|
||||
&& b.Animation.Animation.CurrentSequence != null)
|
||||
|
||||
@@ -13,7 +13,8 @@ using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.Common.Traits
|
||||
{
|
||||
[Desc("Render trait for non-animated actors that have sprites facing into each direction.")]
|
||||
[Desc("Render trait for non-animated actors that have sprites facing into each direction.",
|
||||
"Deprecated. This will soon be removed, use RenderSprites + WithFacingSpriteBody instead.")]
|
||||
public class RenderUnitInfo : RenderSimpleInfo, Requires<IFacingInfo>
|
||||
{
|
||||
public override object Create(ActorInitializer init) { return new RenderUnit(init, this); }
|
||||
|
||||
73
OpenRA.Mods.Common/Traits/Render/WithAttackAnimation.cs
Normal file
73
OpenRA.Mods.Common/Traits/Render/WithAttackAnimation.cs
Normal file
@@ -0,0 +1,73 @@
|
||||
#region Copyright & License Information
|
||||
/*
|
||||
* Copyright 2007-2015 The OpenRA Developers (see AUTHORS)
|
||||
* This file is part of OpenRA, which is free software. It is made
|
||||
* available to you under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation. For more information,
|
||||
* see COPYING.
|
||||
*/
|
||||
#endregion
|
||||
|
||||
using System.Linq;
|
||||
using OpenRA.Mods.Common.Traits;
|
||||
using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.RA.Traits
|
||||
{
|
||||
public class WithAttackAnimationInfo : ITraitInfo, Requires<WithFacingSpriteBodyInfo>, Requires<ArmamentInfo>, Requires<AttackBaseInfo>
|
||||
{
|
||||
[Desc("Armament name")]
|
||||
public readonly string Armament = "primary";
|
||||
|
||||
[Desc("Displayed while attacking.")]
|
||||
public readonly string AttackSequence = null;
|
||||
|
||||
[Desc("Displayed while targeting.")]
|
||||
public readonly string AimSequence = null;
|
||||
|
||||
[Desc("Shown while reloading.")]
|
||||
public readonly string ReloadPrefix = null;
|
||||
|
||||
public object Create(ActorInitializer init) { return new WithAttackAnimation(init, this); }
|
||||
}
|
||||
|
||||
public class WithAttackAnimation : ITick, INotifyAttack
|
||||
{
|
||||
readonly WithAttackAnimationInfo info;
|
||||
readonly AttackBase attack;
|
||||
readonly Armament armament;
|
||||
readonly WithFacingSpriteBody wfsb;
|
||||
|
||||
public WithAttackAnimation(ActorInitializer init, WithAttackAnimationInfo info)
|
||||
{
|
||||
this.info = info;
|
||||
attack = init.Self.Trait<AttackBase>();
|
||||
armament = init.Self.TraitsImplementing<Armament>()
|
||||
.Single(a => a.Info.Name == info.Armament);
|
||||
wfsb = init.Self.Trait<WithFacingSpriteBody>();
|
||||
}
|
||||
|
||||
public void Attacking(Actor self, Target target, Armament a, Barrel barrel)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(info.AttackSequence))
|
||||
wfsb.PlayCustomAnimation(self, info.AttackSequence);
|
||||
}
|
||||
|
||||
public void Tick(Actor self)
|
||||
{
|
||||
if (string.IsNullOrEmpty(info.AimSequence) && string.IsNullOrEmpty(info.ReloadPrefix))
|
||||
return;
|
||||
|
||||
var sequence = wfsb.Info.Sequence;
|
||||
if (!string.IsNullOrEmpty(info.AimSequence) && attack.IsAttacking)
|
||||
sequence = info.AimSequence;
|
||||
|
||||
var prefix = (armament.IsReloading && !string.IsNullOrEmpty(info.ReloadPrefix)) ? info.ReloadPrefix : "";
|
||||
|
||||
if (!string.IsNullOrEmpty(prefix) && sequence != (prefix + sequence))
|
||||
sequence = prefix + sequence;
|
||||
|
||||
wfsb.DefaultAnimation.ReplaceAnim(sequence);
|
||||
}
|
||||
}
|
||||
}
|
||||
46
OpenRA.Mods.Common/Traits/Render/WithFacingSpriteBody.cs
Normal file
46
OpenRA.Mods.Common/Traits/Render/WithFacingSpriteBody.cs
Normal file
@@ -0,0 +1,46 @@
|
||||
#region Copyright & License Information
|
||||
/*
|
||||
* Copyright 2007-2015 The OpenRA Developers (see AUTHORS)
|
||||
* This file is part of OpenRA, which is free software. It is made
|
||||
* available to you under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation. For more information,
|
||||
* see COPYING.
|
||||
*/
|
||||
#endregion
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using OpenRA.Graphics;
|
||||
using OpenRA.Mods.Common.Graphics;
|
||||
using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.Common.Traits
|
||||
{
|
||||
public class WithFacingSpriteBodyInfo : WithSpriteBodyInfo, Requires<IBodyOrientationInfo>, Requires<IFacingInfo>
|
||||
{
|
||||
public override object Create(ActorInitializer init) { return new WithFacingSpriteBody(init, this); }
|
||||
|
||||
public override IEnumerable<IActorPreview> RenderPreviewSprites(ActorPreviewInitializer init, RenderSpritesInfo rs, string image, int facings, PaletteReference p)
|
||||
{
|
||||
var ifacing = init.Actor.Traits.GetOrDefault<IFacingInfo>();
|
||||
var facing = ifacing != null ? init.Contains<FacingInit>() ? init.Get<FacingInit, int>() : ifacing.GetInitialFacing() : 0;
|
||||
|
||||
var anim = new Animation(init.World, image, () => facing);
|
||||
anim.PlayRepeating(RenderSprites.NormalizeSequence(anim, init.GetDamageState(), Sequence));
|
||||
|
||||
yield return new SpriteActorPreview(anim, WVec.Zero, 0, p, rs.Scale);
|
||||
}
|
||||
|
||||
public override int QuantizedBodyFacings(ActorInfo ai, SequenceProvider sequenceProvider, string race)
|
||||
{
|
||||
var rsi = ai.Traits.Get<RenderSpritesInfo>();
|
||||
return sequenceProvider.GetSequence(rsi.GetImage(ai, sequenceProvider, race), Sequence).Facings;
|
||||
}
|
||||
}
|
||||
|
||||
public class WithFacingSpriteBody : WithSpriteBody
|
||||
{
|
||||
public WithFacingSpriteBody(ActorInitializer init, WithFacingSpriteBodyInfo info)
|
||||
: base(init, info, RenderSprites.MakeFacingFunc(init.Self)) { }
|
||||
}
|
||||
}
|
||||
@@ -40,7 +40,7 @@ namespace OpenRA.Mods.Common.Traits
|
||||
var rs = self.Trait<RenderSprites>();
|
||||
var body = self.Trait<IBodyOrientation>();
|
||||
|
||||
anim = new Animation(self.World, rs.GetImage(self), RenderSimple.MakeFacingFunc(self));
|
||||
anim = new Animation(self.World, rs.GetImage(self), RenderSprites.MakeFacingFunc(self));
|
||||
anim.IsDecoration = true;
|
||||
anim.Play(info.Sequence);
|
||||
rs.Add(new AnimationWithOffset(anim,
|
||||
|
||||
@@ -8,47 +8,47 @@
|
||||
*/
|
||||
#endregion
|
||||
|
||||
using OpenRA.Mods.Common.Traits;
|
||||
using System.Linq;
|
||||
using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.Cnc.Traits
|
||||
namespace OpenRA.Mods.Common.Traits
|
||||
{
|
||||
class RenderUnitFlyingInfo : RenderUnitInfo, Requires<IMoveInfo>
|
||||
public class WithMoveAnimationInfo : ITraitInfo, Requires<WithFacingSpriteBodyInfo>, Requires<IMoveInfo>
|
||||
{
|
||||
[Desc("Displayed while moving.")]
|
||||
public readonly string MoveSequence = "move";
|
||||
|
||||
public override object Create(ActorInitializer init) { return new RenderUnitFlying(init, this); }
|
||||
public object Create(ActorInitializer init) { return new WithMoveAnimation(init, this); }
|
||||
}
|
||||
|
||||
class RenderUnitFlying : RenderUnit, ITick
|
||||
public class WithMoveAnimation : ITick
|
||||
{
|
||||
readonly RenderUnitFlyingInfo info;
|
||||
readonly WithMoveAnimationInfo info;
|
||||
readonly IMove movement;
|
||||
readonly WithFacingSpriteBody wfsb;
|
||||
|
||||
WPos cachedPosition;
|
||||
|
||||
public RenderUnitFlying(ActorInitializer init, RenderUnitFlyingInfo info)
|
||||
: base(init, info)
|
||||
public WithMoveAnimation(ActorInitializer init, WithMoveAnimationInfo info)
|
||||
{
|
||||
this.info = info;
|
||||
movement = init.Self.Trait<IMove>();
|
||||
wfsb = init.Self.Trait<WithFacingSpriteBody>();
|
||||
|
||||
cachedPosition = init.Self.CenterPosition;
|
||||
}
|
||||
|
||||
public override void Tick(Actor self)
|
||||
public void Tick(Actor self)
|
||||
{
|
||||
base.Tick(self);
|
||||
|
||||
var oldCachedPosition = cachedPosition;
|
||||
cachedPosition = self.CenterPosition;
|
||||
|
||||
// Flying units set IsMoving whenever they are airborne, which isn't enough for our purposes
|
||||
var isMoving = movement.IsMoving && !self.IsDead && (oldCachedPosition - cachedPosition).HorizontalLengthSquared != 0;
|
||||
if (isMoving ^ (DefaultAnimation.CurrentSequence.Name != info.MoveSequence))
|
||||
if (isMoving ^ (wfsb.DefaultAnimation.CurrentSequence.Name != info.MoveSequence))
|
||||
return;
|
||||
|
||||
DefaultAnimation.ReplaceAnim(isMoving ? info.MoveSequence : info.Sequence);
|
||||
wfsb.DefaultAnimation.ReplaceAnim(isMoving ? info.MoveSequence : wfsb.Info.Sequence);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -9,13 +9,16 @@
|
||||
#endregion
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using OpenRA.Graphics;
|
||||
using OpenRA.Mods.Common.Graphics;
|
||||
using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.Common.Traits
|
||||
{
|
||||
[Desc("Default trait for rendering sprite-based actors.")]
|
||||
class WithSpriteBodyInfo : UpgradableTraitInfo, ITraitInfo, Requires<RenderSpritesInfo>
|
||||
public class WithSpriteBodyInfo : UpgradableTraitInfo, ITraitInfo, IRenderActorPreviewSpritesInfo, IQuantizeBodyOrientationInfo,
|
||||
Requires<RenderSpritesInfo>
|
||||
{
|
||||
[Desc("Animation to play when the actor is created.")]
|
||||
public readonly string StartSequence = null;
|
||||
@@ -23,30 +26,54 @@ namespace OpenRA.Mods.Common.Traits
|
||||
[Desc("Animation to play when the actor is idle.")]
|
||||
public readonly string Sequence = "idle";
|
||||
|
||||
public object Create(ActorInitializer init) { return new WithSpriteBody(init, this); }
|
||||
}
|
||||
public virtual object Create(ActorInitializer init) { return new WithSpriteBody(init, this); }
|
||||
|
||||
class WithSpriteBody : UpgradableTrait<WithSpriteBodyInfo>, ISpriteBody
|
||||
{
|
||||
readonly Animation body;
|
||||
readonly WithSpriteBodyInfo info;
|
||||
|
||||
public WithSpriteBody(ActorInitializer init, WithSpriteBodyInfo info)
|
||||
: base(info)
|
||||
public virtual IEnumerable<IActorPreview> RenderPreviewSprites(ActorPreviewInitializer init, RenderSpritesInfo rs, string image, int facings, PaletteReference p)
|
||||
{
|
||||
this.info = info;
|
||||
var anim = new Animation(init.World, image);
|
||||
anim.PlayRepeating(RenderSprites.NormalizeSequence(anim, init.GetDamageState(), Sequence));
|
||||
|
||||
var rs = init.Self.Trait<RenderSprites>();
|
||||
body = new Animation(init.Self.World, rs.GetImage(init.Self));
|
||||
PlayCustomAnimation(init.Self, info.StartSequence, () => body.PlayRepeating(info.Sequence));
|
||||
rs.Add(new AnimationWithOffset(body, null, () => IsTraitDisabled));
|
||||
yield return new SpriteActorPreview(anim, WVec.Zero, 0, p, rs.Scale);
|
||||
}
|
||||
|
||||
public void PlayCustomAnimation(Actor self, string newAnimation, Action after)
|
||||
public virtual int QuantizedBodyFacings(ActorInfo ai, SequenceProvider sequenceProvider, string race)
|
||||
{
|
||||
body.PlayThen(newAnimation, () =>
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
public class WithSpriteBody : UpgradableTrait<WithSpriteBodyInfo>, ISpriteBody
|
||||
{
|
||||
public readonly Animation DefaultAnimation;
|
||||
|
||||
public WithSpriteBody(ActorInitializer init, WithSpriteBodyInfo info)
|
||||
: this(init, info, () => 0) { }
|
||||
|
||||
protected WithSpriteBody(ActorInitializer init, WithSpriteBodyInfo info, Func<int> baseFacing)
|
||||
: base(info)
|
||||
{
|
||||
var rs = init.Self.Trait<RenderSprites>();
|
||||
|
||||
DefaultAnimation = new Animation(init.World, rs.GetImage(init.Self), baseFacing);
|
||||
rs.Add(new AnimationWithOffset(DefaultAnimation, null, () => IsTraitDisabled));
|
||||
|
||||
if (Info.StartSequence != null)
|
||||
PlayCustomAnimation(init.Self, Info.StartSequence,
|
||||
() => DefaultAnimation.PlayRepeating(NormalizeSequence(init.Self, Info.Sequence)));
|
||||
else
|
||||
DefaultAnimation.PlayRepeating(NormalizeSequence(init.Self, Info.Sequence));
|
||||
}
|
||||
|
||||
public string NormalizeSequence(Actor self, string sequence)
|
||||
{
|
||||
return RenderSprites.NormalizeSequence(DefaultAnimation, self.GetDamageState(), sequence);
|
||||
}
|
||||
|
||||
public void PlayCustomAnimation(Actor self, string name, Action after = null)
|
||||
{
|
||||
DefaultAnimation.PlayThen(NormalizeSequence(self, name), () =>
|
||||
{
|
||||
body.Play(info.Sequence);
|
||||
DefaultAnimation.Play(NormalizeSequence(self, Info.Sequence));
|
||||
if (after != null)
|
||||
after();
|
||||
});
|
||||
@@ -54,14 +81,15 @@ namespace OpenRA.Mods.Common.Traits
|
||||
|
||||
public void PlayCustomAnimationRepeating(Actor self, string name)
|
||||
{
|
||||
body.PlayThen(name, () => PlayCustomAnimationRepeating(self, name));
|
||||
DefaultAnimation.PlayThen(name,
|
||||
() => PlayCustomAnimationRepeating(self, name));
|
||||
}
|
||||
|
||||
public void PlayCustomAnimationBackwards(Actor self, string name, Action after)
|
||||
public void PlayCustomAnimationBackwards(Actor self, string name, Action after = null)
|
||||
{
|
||||
body.PlayBackwardsThen(name, () =>
|
||||
DefaultAnimation.PlayBackwardsThen(NormalizeSequence(self, name), () =>
|
||||
{
|
||||
body.PlayRepeating(info.Sequence);
|
||||
DefaultAnimation.PlayRepeating(NormalizeSequence(self, Info.Sequence));
|
||||
if (after != null)
|
||||
after();
|
||||
});
|
||||
|
||||
@@ -13,7 +13,7 @@ using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.Common.Traits
|
||||
{
|
||||
class ThrowsParticleInfo : ITraitInfo, Requires<RenderSimpleInfo>, Requires<IBodyOrientationInfo>
|
||||
class ThrowsParticleInfo : ITraitInfo, Requires<WithSpriteBodyInfo>, Requires<IBodyOrientationInfo>
|
||||
{
|
||||
public readonly string Anim = null;
|
||||
|
||||
@@ -57,7 +57,7 @@ namespace OpenRA.Mods.Common.Traits
|
||||
public ThrowsParticle(ActorInitializer init, ThrowsParticleInfo info)
|
||||
{
|
||||
var self = init.Self;
|
||||
var rs = self.Trait<RenderSimple>();
|
||||
var rs = self.Trait<RenderSprites>();
|
||||
var body = self.Trait<IBodyOrientation>();
|
||||
|
||||
// TODO: Carry orientation over from the parent instead of just facing
|
||||
|
||||
@@ -1016,6 +1016,75 @@ namespace OpenRA.Mods.Common.UtilityCommands
|
||||
}
|
||||
}
|
||||
|
||||
if (engineVersion < 20150528)
|
||||
{
|
||||
// Note (stolen from WithInfantryBody upgrade rule):
|
||||
// These rules are set up to do approximately the right thing for maps, but
|
||||
// mods need additional manual tweaks. This is the best we can do without having
|
||||
// much smarter rules parsing, because we currently can't reason about inherited traits.
|
||||
if (depth == 0)
|
||||
{
|
||||
var childKeys = new[] { "Sequence" };
|
||||
|
||||
var ru = node.Value.Nodes.FirstOrDefault(n => n.Key == "RenderUnit");
|
||||
if (ru != null)
|
||||
{
|
||||
ru.Key = "WithFacingSpriteBody";
|
||||
node.Value.Nodes.Add(new MiniYamlNode("AutoSelectionSize", ""));
|
||||
|
||||
var rsNodes = ru.Value.Nodes.Where(n => !childKeys.Contains(n.Key)).ToList();
|
||||
if (rsNodes.Any())
|
||||
node.Value.Nodes.Add(new MiniYamlNode("RenderSprites", new MiniYaml("", rsNodes)));
|
||||
else
|
||||
node.Value.Nodes.Add(new MiniYamlNode("RenderSprites", ""));
|
||||
|
||||
ru.Value.Nodes.RemoveAll(n => rsNodes.Contains(n));
|
||||
}
|
||||
|
||||
var rru = node.Value.Nodes.FirstOrDefault(n => n.Key == "-RenderUnit");
|
||||
if (rru != null)
|
||||
rru.Key = "-WithFacingSpriteBody";
|
||||
}
|
||||
|
||||
// For RenderUnitReload
|
||||
var rur = node.Value.Nodes.Where(x => x.Key == "RenderUnitReload");
|
||||
if (rur.Any())
|
||||
{
|
||||
rur.Do(x => x.Key = "RenderSprites");
|
||||
node.Value.Nodes.Add(new MiniYamlNode("AutoSelectionSize", ""));
|
||||
node.Value.Nodes.Add(new MiniYamlNode("WithFacingSpriteBody", "", new List<MiniYamlNode>
|
||||
{
|
||||
new MiniYamlNode("Sequence", "idle")
|
||||
}));
|
||||
node.Value.Nodes.Add(new MiniYamlNode("WithAttackAnimation", "", new List<MiniYamlNode>
|
||||
{
|
||||
new MiniYamlNode("AimSequence", "aim"),
|
||||
new MiniYamlNode("ReloadPrefix", "empty-")
|
||||
}));
|
||||
|
||||
var rrur = node.Value.Nodes.FirstOrDefault(n => n.Key == "-RenderUnitReload");
|
||||
if (rrur != null)
|
||||
rrur.Key = "-WithFacingSpriteBody";
|
||||
}
|
||||
|
||||
// For RenderUnitFlying
|
||||
var ruf = node.Value.Nodes.Where(x => x.Key == "RenderUnitFlying");
|
||||
if (ruf.Any())
|
||||
{
|
||||
ruf.Do(x => x.Key = "RenderSprites");
|
||||
node.Value.Nodes.Add(new MiniYamlNode("AutoSelectionSize", ""));
|
||||
node.Value.Nodes.Add(new MiniYamlNode("WithFacingSpriteBody", ""));
|
||||
node.Value.Nodes.Add(new MiniYamlNode("WithMoveAnimation", "", new List<MiniYamlNode>
|
||||
{
|
||||
new MiniYamlNode("MoveSequence", "move")
|
||||
}));
|
||||
|
||||
var rruf = node.Value.Nodes.FirstOrDefault(n => n.Key == "-RenderUnitFlying");
|
||||
if (rruf != null)
|
||||
rruf.Key = "-WithFacingSpriteBody";
|
||||
}
|
||||
}
|
||||
|
||||
UpgradeActorRules(engineVersion, ref node.Value.Nodes, node, depth + 1);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -88,7 +88,6 @@
|
||||
<Compile Include="Traits\Render\RenderJammerCircle.cs" />
|
||||
<Compile Include="Traits\Render\RenderLandingCraft.cs" />
|
||||
<Compile Include="Traits\Render\RenderShroudCircle.cs" />
|
||||
<Compile Include="Traits\Render\RenderUnitReload.cs" />
|
||||
<Compile Include="Traits\SupportPowers\ChronoshiftPower.cs" />
|
||||
<Compile Include="Traits\SupportPowers\GpsPower.cs" />
|
||||
<Compile Include="Traits\SupportPowers\ParatroopersPower.cs" />
|
||||
|
||||
@@ -22,7 +22,7 @@ using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.RA.Traits
|
||||
{
|
||||
class MadTankInfo : ITraitInfo, Requires<ExplodesInfo>, Requires<RenderUnitInfo>
|
||||
class MadTankInfo : ITraitInfo, Requires<ExplodesInfo>, Requires<WithFacingSpriteBodyInfo>
|
||||
{
|
||||
public readonly string ThumpSequence = "piston";
|
||||
public readonly int ThumpInterval = 8;
|
||||
@@ -52,7 +52,7 @@ namespace OpenRA.Mods.RA.Traits
|
||||
{
|
||||
readonly Actor self;
|
||||
readonly MadTankInfo info;
|
||||
readonly RenderUnit renderUnit;
|
||||
readonly WithFacingSpriteBody wfsb;
|
||||
readonly ScreenShaker screenShaker;
|
||||
bool deployed;
|
||||
int tick;
|
||||
@@ -61,7 +61,7 @@ namespace OpenRA.Mods.RA.Traits
|
||||
{
|
||||
this.self = self;
|
||||
this.info = info;
|
||||
renderUnit = self.Trait<RenderUnit>();
|
||||
wfsb = self.Trait<WithFacingSpriteBody>();
|
||||
screenShaker = self.World.WorldActor.Trait<ScreenShaker>();
|
||||
}
|
||||
|
||||
@@ -147,7 +147,7 @@ namespace OpenRA.Mods.RA.Traits
|
||||
|
||||
self.World.AddFrameEndTask(w => EjectDriver());
|
||||
if (info.ThumpSequence != null)
|
||||
renderUnit.PlayCustomAnimationRepeating(self, info.ThumpSequence);
|
||||
wfsb.PlayCustomAnimationRepeating(self, info.ThumpSequence);
|
||||
deployed = true;
|
||||
self.QueueActivity(new Wait(info.ChargeDelay, false));
|
||||
self.QueueActivity(new CallFunc(() => Sound.Play(info.ChargeSound, self.CenterPosition)));
|
||||
|
||||
@@ -1,55 +0,0 @@
|
||||
#region Copyright & License Information
|
||||
/*
|
||||
* Copyright 2007-2015 The OpenRA Developers (see AUTHORS)
|
||||
* This file is part of OpenRA, which is free software. It is made
|
||||
* available to you under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation. For more information,
|
||||
* see COPYING.
|
||||
*/
|
||||
#endregion
|
||||
|
||||
using System.Linq;
|
||||
using OpenRA.Mods.Common.Traits;
|
||||
using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.RA.Traits
|
||||
{
|
||||
class RenderUnitReloadInfo : RenderUnitInfo, Requires<ArmamentInfo>, Requires<AttackBaseInfo>
|
||||
{
|
||||
[Desc("Armament name")]
|
||||
public readonly string Armament = "primary";
|
||||
|
||||
[Desc("Displayed while targeting.")]
|
||||
public readonly string AimSequence = "aim";
|
||||
|
||||
[Desc("Shown while reloading.")]
|
||||
public readonly string EmptyPrefix = "empty-";
|
||||
|
||||
public override object Create(ActorInitializer init) { return new RenderUnitReload(init, this); }
|
||||
}
|
||||
|
||||
class RenderUnitReload : RenderUnit
|
||||
{
|
||||
readonly AttackBase attack;
|
||||
readonly Armament armament;
|
||||
readonly RenderUnitReloadInfo info;
|
||||
|
||||
public RenderUnitReload(ActorInitializer init, RenderUnitReloadInfo info)
|
||||
: base(init, info)
|
||||
{
|
||||
this.info = info;
|
||||
attack = init.Self.Trait<AttackBase>();
|
||||
armament = init.Self.TraitsImplementing<Armament>()
|
||||
.Single(a => a.Info.Name == info.Armament);
|
||||
}
|
||||
|
||||
public override void Tick(Actor self)
|
||||
{
|
||||
var sequence = (armament.IsReloading ? info.EmptyPrefix : "") + (attack.IsAttacking ? info.AimSequence : info.Sequence);
|
||||
if (sequence != DefaultAnimation.CurrentSequence.Name)
|
||||
DefaultAnimation.ReplaceAnim(sequence);
|
||||
|
||||
base.Tick(self);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -24,7 +24,7 @@ TRAN:
|
||||
Type: Light
|
||||
RevealsShroud:
|
||||
Range: 10c0
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithRotor@PRIMARY:
|
||||
Offset: -597,0,171
|
||||
Sequence: rotor2
|
||||
@@ -40,6 +40,8 @@ TRAN:
|
||||
Explodes:
|
||||
Weapon: HeliExplode
|
||||
EmptyWeapon: HeliExplode
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
HELI:
|
||||
Inherits: ^Helicopter
|
||||
@@ -81,7 +83,7 @@ HELI:
|
||||
SelfReloads: true
|
||||
ReloadCount: 10
|
||||
SelfReloadTicks: 200
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithRotor:
|
||||
Offset: 0,0,85
|
||||
WithMuzzleFlash:
|
||||
@@ -91,6 +93,8 @@ HELI:
|
||||
Explodes:
|
||||
Weapon: HeliExplode
|
||||
EmptyWeapon: HeliExplode
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
ORCA:
|
||||
Inherits: ^Helicopter
|
||||
@@ -129,13 +133,17 @@ ORCA:
|
||||
SelfReloads: true
|
||||
ReloadCount: 2
|
||||
SelfReloadTicks: 100
|
||||
RenderUnitFlying:
|
||||
RenderSprites:
|
||||
WithFacingSpriteBody:
|
||||
LeavesHusk:
|
||||
HuskActor: ORCA.Husk
|
||||
AutoTarget:
|
||||
Explodes:
|
||||
Weapon: HeliExplode
|
||||
EmptyWeapon: HeliExplode
|
||||
AutoSelectionSize:
|
||||
WithMoveAnimation:
|
||||
MoveSequence: move
|
||||
|
||||
C17:
|
||||
ParaDrop:
|
||||
@@ -154,7 +162,7 @@ C17:
|
||||
HP: 25
|
||||
Armor:
|
||||
Type: Heavy
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
Cargo:
|
||||
MaxWeight: 10
|
||||
PipCount: 10
|
||||
@@ -176,6 +184,8 @@ C17:
|
||||
Contrail@4:
|
||||
Offset: -261,650,0
|
||||
TrailLength: 15
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
A10:
|
||||
Inherits: ^Plane
|
||||
@@ -192,7 +202,7 @@ A10:
|
||||
HP: 150
|
||||
Armor:
|
||||
Type: Heavy
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
AttackBomber:
|
||||
Armaments: gun, bombs
|
||||
Guns: gun
|
||||
@@ -217,6 +227,8 @@ A10:
|
||||
Contrail@2:
|
||||
Offset: -640,-171,0
|
||||
TrailLength: 15
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
TRAN.Husk:
|
||||
Inherits: ^HelicopterHusk
|
||||
@@ -231,7 +243,9 @@ TRAN.Husk:
|
||||
Offset: -597,0,171
|
||||
WithRotor@SECONDARY:
|
||||
Offset: 597,0,85
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: tran
|
||||
|
||||
HELI.Husk:
|
||||
@@ -245,7 +259,9 @@ HELI.Husk:
|
||||
Range: 10c0
|
||||
WithRotor:
|
||||
Offset: 0,0,85
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: heli
|
||||
|
||||
ORCA.Husk:
|
||||
@@ -257,6 +273,8 @@ ORCA.Husk:
|
||||
Speed: 186
|
||||
RevealsShroud:
|
||||
Range: 10c0
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: orca
|
||||
|
||||
|
||||
@@ -460,7 +460,7 @@ VICE:
|
||||
WanderMoveRadius: 2
|
||||
MinMoveDelayInTicks: 25
|
||||
MaxMoveDelayInTicks: 45
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithMuzzleFlash:
|
||||
SplitFacings: true
|
||||
CombatDebugOverlay:
|
||||
@@ -473,4 +473,6 @@ VICE:
|
||||
Weapon: Heal
|
||||
Voiced:
|
||||
VoiceSet: DinoVoice
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
|
||||
@@ -3,148 +3,176 @@ MCV.Husk:
|
||||
Tooltip:
|
||||
Name: Mobile Construction Vehicle (Destroyed)
|
||||
Icon: mcvicnh
|
||||
RenderUnit:
|
||||
Image: mcv.destroyed
|
||||
WithFacingSpriteBody:
|
||||
TransformOnCapture:
|
||||
IntoActor: mcv
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: mcv.destroyed
|
||||
|
||||
HARV.Husk:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Harvester (Destroyed)
|
||||
Icon: harvicnh
|
||||
RenderUnit:
|
||||
Image: harv.destroyed
|
||||
WithFacingSpriteBody:
|
||||
TransformOnCapture:
|
||||
IntoActor: harv
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: harv.destroyed
|
||||
|
||||
APC.Husk:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: APC (Destroyed)
|
||||
Icon: apcicnh
|
||||
RenderUnit:
|
||||
Image: apc.destroyed
|
||||
WithFacingSpriteBody:
|
||||
TransformOnCapture:
|
||||
IntoActor: apc
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: apc.destroyed
|
||||
|
||||
FTNK.Husk:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Flame Tank (Destroyed)
|
||||
Icon: ftnkicnh
|
||||
RenderUnit:
|
||||
Image: ftnk.destroyed
|
||||
WithFacingSpriteBody:
|
||||
TransformOnCapture:
|
||||
IntoActor: ftnk
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: ftnk.destroyed
|
||||
|
||||
ARTY.Husk:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Artillery (Destroyed)
|
||||
Icon: artyicnh
|
||||
RenderUnit:
|
||||
Image: arty.destroyed
|
||||
WithFacingSpriteBody:
|
||||
TransformOnCapture:
|
||||
IntoActor: arty
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: arty.destroyed
|
||||
|
||||
BGGY.Husk:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Nod Buggy (Destroyed)
|
||||
Icon: bggyicnh
|
||||
RenderUnit:
|
||||
Image: bggy.destroyed
|
||||
WithFacingSpriteBody:
|
||||
TransformOnCapture:
|
||||
IntoActor: bggy
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: bggy.destroyed
|
||||
|
||||
BIKE.Husk:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Recon Bike (Destroyed)
|
||||
Icon: bikeicnh
|
||||
RenderUnit:
|
||||
Image: bike.destroyed
|
||||
WithFacingSpriteBody:
|
||||
TransformOnCapture:
|
||||
IntoActor: bike
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: bike.destroyed
|
||||
|
||||
JEEP.Husk:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Hum-Vee (Destroyed)
|
||||
Icon: jeepicnh
|
||||
RenderUnit:
|
||||
Image: jeep.destroyed
|
||||
WithFacingSpriteBody:
|
||||
TransformOnCapture:
|
||||
IntoActor: jeep
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: jeep.destroyed
|
||||
|
||||
LTNK.Husk:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Light Tank (Destroyed)
|
||||
Icon: ltnkicnh
|
||||
RenderUnit:
|
||||
Image: ltnk.destroyed
|
||||
WithFacingSpriteBody:
|
||||
ThrowsParticle@turret:
|
||||
Anim: turret
|
||||
TransformOnCapture:
|
||||
IntoActor: ltnk
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: ltnk.destroyed
|
||||
|
||||
MTNK.Husk:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Medium Tank (Destroyed)
|
||||
Icon: mtnkicnh
|
||||
RenderUnit:
|
||||
Image: mtnk.destroyed
|
||||
WithFacingSpriteBody:
|
||||
ThrowsParticle@turret:
|
||||
Anim: turret
|
||||
TransformOnCapture:
|
||||
IntoActor: mtnk
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: mtnk.destroyed
|
||||
|
||||
HTNK.Husk:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Mammoth Tank (Destroyed)
|
||||
Icon: htnkicnh
|
||||
RenderUnit:
|
||||
Image: htnk.destroyed
|
||||
WithFacingSpriteBody:
|
||||
ThrowsParticle@turret:
|
||||
Anim: turret
|
||||
TransformOnCapture:
|
||||
IntoActor: htnk
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: htnk.destroyed
|
||||
|
||||
MSAM.Husk:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Rocket Launcher (Destroyed)
|
||||
Icon: msamicnh
|
||||
RenderUnit:
|
||||
Image: msam.destroyed
|
||||
WithFacingSpriteBody:
|
||||
ThrowsParticle@turret:
|
||||
Anim: turret
|
||||
TransformOnCapture:
|
||||
IntoActor: msam
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: msam.destroyed
|
||||
|
||||
MLRS.Husk:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Mobile S.A.M. (Destroyed)
|
||||
Icon: mlrsicnh
|
||||
RenderUnit:
|
||||
Image: mlrs.destroyed
|
||||
WithFacingSpriteBody:
|
||||
ThrowsParticle@turret:
|
||||
Anim: turret
|
||||
TransformOnCapture:
|
||||
IntoActor: mlrs
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: mlrs.destroyed
|
||||
|
||||
STNK.Husk:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Stealth Tank (Destroyed)
|
||||
Icon: stnkicnh
|
||||
RenderUnit:
|
||||
Image: stnk.destroyed
|
||||
WithFacingSpriteBody:
|
||||
TransformOnCapture:
|
||||
IntoActor: stnk
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: stnk.destroyed
|
||||
|
||||
|
||||
@@ -60,7 +60,7 @@ LST:
|
||||
Type: Heavy
|
||||
RevealsShroud:
|
||||
Range: 7c0
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithRoof:
|
||||
WithCargo:
|
||||
DisplayTypes: Infantry, Vehicle
|
||||
@@ -70,4 +70,6 @@ LST:
|
||||
MaxWeight: 5
|
||||
PipCount: 5
|
||||
PassengerFacing: 0
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@ MCV:
|
||||
Facing: 108
|
||||
TransformSounds: constru2.aud, hvydoor1.aud
|
||||
NoTransformNotification: BuildingCannotPlaceAudio
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
MustBeDestroyed:
|
||||
RequiredForShortGame: true
|
||||
BaseBuilding:
|
||||
@@ -37,6 +37,8 @@ MCV:
|
||||
Explodes:
|
||||
Weapon: UnitExplodeSmall
|
||||
EmptyWeapon: UnitExplodeSmall
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
HARV:
|
||||
Inherits: ^Tank
|
||||
@@ -114,7 +116,7 @@ APC:
|
||||
MuzzleSequence: muzzle
|
||||
AttackTurreted:
|
||||
WithMuzzleFlash:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithTurret:
|
||||
AutoTarget:
|
||||
Cargo:
|
||||
@@ -123,6 +125,8 @@ APC:
|
||||
PipCount: 5
|
||||
LeavesHusk:
|
||||
HuskActor: APC.Husk
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
ARTY:
|
||||
Inherits: ^Tank
|
||||
@@ -150,11 +154,13 @@ ARTY:
|
||||
MuzzleSequence: muzzle
|
||||
AttackFrontal:
|
||||
WithMuzzleFlash:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
AutoTarget:
|
||||
InitialStance: Defend
|
||||
LeavesHusk:
|
||||
HuskActor: ARTY.Husk
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
FTNK:
|
||||
Inherits: ^Tank
|
||||
@@ -182,7 +188,7 @@ FTNK:
|
||||
MuzzleSequence: muzzle
|
||||
MuzzleSplitFacings: 8
|
||||
AttackFrontal:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
AutoTarget:
|
||||
WithMuzzleFlash:
|
||||
SplitFacings: true
|
||||
@@ -191,6 +197,8 @@ FTNK:
|
||||
EmptyWeapon: FlametankExplode
|
||||
LeavesHusk:
|
||||
HuskActor: FTNK.Husk
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
BGGY:
|
||||
Inherits: ^Vehicle
|
||||
@@ -221,11 +229,13 @@ BGGY:
|
||||
MuzzleSequence: muzzle
|
||||
AttackTurreted:
|
||||
WithMuzzleFlash:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithTurret:
|
||||
AutoTarget:
|
||||
LeavesHusk:
|
||||
HuskActor: BGGY.Husk
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
BIKE:
|
||||
Inherits: ^Vehicle
|
||||
@@ -259,10 +269,12 @@ BIKE:
|
||||
LocalOffset: -128, -170, 170, -128, 170, 170
|
||||
LocalYaw: 100, -100
|
||||
AttackFrontal:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
AutoTarget:
|
||||
LeavesHusk:
|
||||
HuskActor: BIKE.Husk
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
JEEP:
|
||||
Inherits: ^Vehicle
|
||||
@@ -293,11 +305,13 @@ JEEP:
|
||||
MuzzleSequence: muzzle
|
||||
AttackTurreted:
|
||||
WithMuzzleFlash:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithTurret:
|
||||
AutoTarget:
|
||||
LeavesHusk:
|
||||
HuskActor: JEEP.Husk
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
LTNK:
|
||||
Inherits: ^Tank
|
||||
@@ -329,7 +343,7 @@ LTNK:
|
||||
MuzzleSequence: muzzle
|
||||
AttackTurreted:
|
||||
WithMuzzleFlash:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithTurret:
|
||||
AutoTarget:
|
||||
LeavesHusk:
|
||||
@@ -337,6 +351,8 @@ LTNK:
|
||||
Explodes:
|
||||
Weapon: UnitExplodeSmall
|
||||
EmptyWeapon: UnitExplodeSmall
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
MTNK:
|
||||
Inherits: ^Tank
|
||||
@@ -367,7 +383,7 @@ MTNK:
|
||||
MuzzleSequence: muzzle
|
||||
AttackTurreted:
|
||||
WithMuzzleFlash:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithTurret:
|
||||
AutoTarget:
|
||||
LeavesHusk:
|
||||
@@ -377,6 +393,8 @@ MTNK:
|
||||
EmptyWeapon: UnitExplodeSmall
|
||||
Selectable:
|
||||
Bounds: 28,28
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
HTNK:
|
||||
Inherits: ^Tank
|
||||
@@ -416,7 +434,7 @@ HTNK:
|
||||
MuzzleSequence: muzzle
|
||||
AttackTurreted:
|
||||
WithMuzzleFlash:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithTurret:
|
||||
AutoTarget:
|
||||
SelfHealing:
|
||||
@@ -430,6 +448,8 @@ HTNK:
|
||||
EmptyWeapon: UnitExplodeSmall
|
||||
Selectable:
|
||||
Bounds: 34,34,0,-3
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
MSAM:
|
||||
Inherits: ^Tank
|
||||
@@ -461,12 +481,14 @@ MSAM:
|
||||
Weapon: 227mm
|
||||
LocalOffset: 213,-128,0, 213,128,0
|
||||
AttackFrontal:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithTurret:
|
||||
AimSequence: aim
|
||||
AutoTarget:
|
||||
LeavesHusk:
|
||||
HuskActor: MSAM.Husk
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
MLRS:
|
||||
Inherits: ^Tank
|
||||
@@ -496,7 +518,7 @@ MLRS:
|
||||
Weapon: Patriot
|
||||
LocalOffset: 0,-171,0, 0,171,0
|
||||
AttackTurreted:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithTurret:
|
||||
AimSequence: aim
|
||||
AutoTarget:
|
||||
@@ -507,6 +529,8 @@ MLRS:
|
||||
RenderRangeCircle:
|
||||
LeavesHusk:
|
||||
HuskActor: MLRS.Husk
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
STNK:
|
||||
Inherits: ^Vehicle
|
||||
@@ -539,13 +563,15 @@ STNK:
|
||||
Weapon: 227mm.stnk
|
||||
LocalOffset: 213,43,128, 213,-43,128
|
||||
AttackFrontal:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
AutoTarget:
|
||||
InitialStance: HoldFire
|
||||
TargetableUnit:
|
||||
LeavesHusk:
|
||||
HuskActor: STNK.Husk
|
||||
-MustBeDestroyed:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
MHQ:
|
||||
Inherits: ^Vehicle
|
||||
@@ -562,11 +588,13 @@ MHQ:
|
||||
Speed: 85
|
||||
RevealsShroud:
|
||||
Range: 6c0
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithIdleOverlay@SPINNER:
|
||||
Sequence: spinner
|
||||
Offset: -256,0,256
|
||||
Explodes:
|
||||
Weapon: UnitExplodeSmall
|
||||
EmptyWeapon: UnitExplodeSmall
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
|
||||
@@ -20,8 +20,7 @@ carryall.reinforce:
|
||||
Repulsable: False
|
||||
LandAltitude: 100
|
||||
LandWhenIdle: False
|
||||
RenderUnit:
|
||||
Image: carryall
|
||||
WithFacingSpriteBody:
|
||||
WithShadow:
|
||||
LeavesHusk:
|
||||
HuskActor: carryall.husk
|
||||
@@ -29,6 +28,9 @@ carryall.reinforce:
|
||||
-TargetableAircraft:
|
||||
Carryall:
|
||||
Automatic: False
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: carryall
|
||||
|
||||
carryall:
|
||||
Inherits: carryall.reinforce
|
||||
@@ -55,8 +57,7 @@ carryall.infantry:
|
||||
RepairBuildings: repair
|
||||
RearmBuildings:
|
||||
Repulsable: False
|
||||
RenderUnit:
|
||||
Image: carryall
|
||||
WithFacingSpriteBody:
|
||||
WithShadow:
|
||||
Cargo:
|
||||
MaxWeight: 5
|
||||
@@ -69,6 +70,9 @@ carryall.infantry:
|
||||
LeavesHusk:
|
||||
HuskActor: carryall.infantry.husk
|
||||
RejectsOrders:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: carryall
|
||||
|
||||
carryall.husk:
|
||||
Inherits: ^AircraftHusk
|
||||
@@ -79,9 +83,11 @@ carryall.husk:
|
||||
Speed: 210
|
||||
RepairBuildings: repair
|
||||
RearmBuildings:
|
||||
RenderUnit:
|
||||
Image: carryall
|
||||
WithFacingSpriteBody:
|
||||
WithShadow:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: carryall
|
||||
|
||||
frigate:
|
||||
Inherits: ^Plane
|
||||
@@ -137,12 +143,14 @@ orni:
|
||||
Speed: 280
|
||||
RepairBuildings: repair
|
||||
RearmBuildings:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithShadow:
|
||||
Selectable:
|
||||
Bounds: 38,32,0,0
|
||||
LeavesHusk:
|
||||
HuskActor: orni.husk
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
orni.bomber:
|
||||
AttackBomber:
|
||||
@@ -161,8 +169,7 @@ orni.bomber:
|
||||
Repulsable: False
|
||||
AmmoPool:
|
||||
Ammo: 5
|
||||
RenderUnit:
|
||||
Image: orni
|
||||
WithFacingSpriteBody:
|
||||
WithShadow:
|
||||
-Selectable:
|
||||
-GainsExperience:
|
||||
@@ -171,6 +178,9 @@ orni.bomber:
|
||||
LeavesHusk:
|
||||
HuskActor: orni.bomber.husk
|
||||
RejectsOrders:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: orni
|
||||
|
||||
orni.husk:
|
||||
Inherits: ^AircraftHusk
|
||||
@@ -181,9 +191,11 @@ orni.husk:
|
||||
Speed: 280
|
||||
RepairBuildings: repair
|
||||
RearmBuildings:
|
||||
RenderUnit:
|
||||
Image: orni
|
||||
WithFacingSpriteBody:
|
||||
WithShadow:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: orni
|
||||
|
||||
orni.bomber.husk:
|
||||
Inherits: ^AircraftHusk
|
||||
@@ -194,9 +206,11 @@ orni.bomber.husk:
|
||||
Speed: 350
|
||||
RepairBuildings: repair
|
||||
RearmBuildings:
|
||||
RenderUnit:
|
||||
Image: orni
|
||||
WithFacingSpriteBody:
|
||||
WithShadow:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: orni
|
||||
|
||||
carryall.infantry.husk:
|
||||
Inherits: ^AircraftHusk
|
||||
@@ -207,6 +221,9 @@ carryall.infantry.husk:
|
||||
Speed: 280
|
||||
RepairBuildings: repair
|
||||
RearmBuildings:
|
||||
RenderUnit:
|
||||
Image: carryall
|
||||
WithFacingSpriteBody:
|
||||
WithShadow:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: carryall
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
Guard:
|
||||
Voice: Guard
|
||||
Guardable:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
BodyOrientation:
|
||||
UpdatesPlayerStatistics:
|
||||
Huntable:
|
||||
@@ -58,6 +58,8 @@
|
||||
Image: pips
|
||||
Sequence: pickup-indicator
|
||||
Offset: -12, -12
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
^Tank:
|
||||
AppearsOnRadar:
|
||||
@@ -93,7 +95,7 @@
|
||||
Guard:
|
||||
Voice: Guard
|
||||
Guardable:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
BodyOrientation:
|
||||
UpdatesPlayerStatistics:
|
||||
Huntable:
|
||||
@@ -119,6 +121,8 @@
|
||||
Image: pips
|
||||
Sequence: pickup-indicator
|
||||
Offset: -12, -12
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
^Husk:
|
||||
Health:
|
||||
@@ -147,7 +151,9 @@
|
||||
ForceHealthPercentage: 25
|
||||
DisabledOverlay:
|
||||
ScriptTriggers:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
^TowerHusk:
|
||||
Health:
|
||||
@@ -295,9 +301,11 @@
|
||||
UpgradeManager:
|
||||
AnnounceOnSeen:
|
||||
Notification: EnemyUnitsDetected
|
||||
RenderUnit:
|
||||
Voiced:
|
||||
VoiceSet: GenericVoice
|
||||
WithFacingSpriteBody:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
^Helicopter:
|
||||
Inherits: ^Plane
|
||||
|
||||
@@ -24,9 +24,11 @@ siegetank.husk:
|
||||
|
||||
missiletank.husk:
|
||||
Inherits: ^Husk
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
TransformOnCapture:
|
||||
IntoActor: missiletank
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
sonictank.husk:
|
||||
Inherits: ^Husk
|
||||
|
||||
@@ -128,11 +128,13 @@ waypoint:
|
||||
|
||||
^carryall.colorpicker:
|
||||
Inherits: carryall
|
||||
RenderUnit:
|
||||
Image: carryall
|
||||
Palette: colorpicker
|
||||
WithFacingSpriteBody:
|
||||
Helicopter:
|
||||
InitialFacing: 104
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: carryall
|
||||
Palette: colorpicker
|
||||
|
||||
camera:
|
||||
Immobile:
|
||||
|
||||
@@ -5,7 +5,9 @@ mcv.starport:
|
||||
Queue: Starport
|
||||
Valued:
|
||||
Cost: 2500
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: mcv
|
||||
|
||||
harvester.starport:
|
||||
@@ -24,7 +26,9 @@ trike.starport:
|
||||
Prerequisites: starport
|
||||
Valued:
|
||||
Cost: 315
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: trike
|
||||
|
||||
quad.starport:
|
||||
@@ -33,7 +37,9 @@ quad.starport:
|
||||
Queue: Starport
|
||||
Valued:
|
||||
Cost: 500
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: quad
|
||||
|
||||
siegetank.starport:
|
||||
@@ -42,7 +48,9 @@ siegetank.starport:
|
||||
Queue: Starport
|
||||
Valued:
|
||||
Cost: 1075
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: siegetank
|
||||
|
||||
missiletank.starport:
|
||||
@@ -51,7 +59,9 @@ missiletank.starport:
|
||||
Queue: Starport
|
||||
Valued:
|
||||
Cost: 1250
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: missiletank
|
||||
|
||||
combata.starport:
|
||||
@@ -61,7 +71,9 @@ combata.starport:
|
||||
Queue: Starport
|
||||
Valued:
|
||||
Cost: 875
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: combata
|
||||
|
||||
combath.starport:
|
||||
@@ -71,7 +83,9 @@ combath.starport:
|
||||
Queue: Starport
|
||||
Valued:
|
||||
Cost: 875
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: combath
|
||||
|
||||
combato.starport:
|
||||
@@ -81,7 +95,9 @@ combato.starport:
|
||||
Queue: Starport
|
||||
Valued:
|
||||
Cost: 875
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: combato
|
||||
|
||||
carryall.starport:
|
||||
|
||||
@@ -75,6 +75,10 @@ harvester:
|
||||
EmptyWeapon: UnitExplodeScale
|
||||
LeavesHusk:
|
||||
HuskActor: Harvester.Husk
|
||||
RenderUnit:
|
||||
-RenderSprites:
|
||||
-WithFacingSpriteBody:
|
||||
-AutoSelectionSize:
|
||||
WithHarvestAnimation:
|
||||
Palette: effect50alpha
|
||||
AttractsWorms:
|
||||
@@ -102,7 +106,7 @@ trike:
|
||||
Speed: 128
|
||||
RevealsShroud:
|
||||
Range: 7c0
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithMuzzleFlash:
|
||||
Armament:
|
||||
Weapon: HMG
|
||||
@@ -115,6 +119,8 @@ trike:
|
||||
EmptyWeapon: UnitExplodeTiny
|
||||
AttractsWorms:
|
||||
Intensity: 420
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
quad:
|
||||
Inherits: ^Vehicle
|
||||
@@ -181,8 +187,7 @@ siegetank:
|
||||
MuzzleSequence: muzzle
|
||||
AttackFrontal:
|
||||
WithMuzzleFlash:
|
||||
RenderUnit:
|
||||
Image: SIEGETANK
|
||||
WithFacingSpriteBody:
|
||||
WithTurret:
|
||||
Explodes:
|
||||
Weapon: UnitExplodeScale
|
||||
@@ -195,6 +200,9 @@ siegetank:
|
||||
HuskActor: siegetank.husk
|
||||
AttractsWorms:
|
||||
Intensity: 600
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: SIEGETANK
|
||||
|
||||
missiletank:
|
||||
Inherits: ^Tank
|
||||
@@ -289,7 +297,7 @@ devast:
|
||||
Crushes: crate, infantry
|
||||
RevealsShroud:
|
||||
Range: 7c0
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
Armament:
|
||||
Weapon: DevBullet
|
||||
LocalOffset: 640,0,32
|
||||
@@ -307,6 +315,8 @@ devast:
|
||||
HuskActor: devast.husk
|
||||
AttractsWorms:
|
||||
Intensity: 700
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
raider:
|
||||
Inherits: ^Vehicle
|
||||
@@ -382,7 +392,7 @@ deviatortank:
|
||||
Type: Light
|
||||
RevealsShroud:
|
||||
Range: 5c0
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
Armament:
|
||||
Weapon: NerveGasMissile
|
||||
LocalOffset: -299,0,85
|
||||
@@ -398,6 +408,8 @@ deviatortank:
|
||||
HuskActor: deviatortank.husk
|
||||
AttractsWorms:
|
||||
Intensity: 600
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
^combat:
|
||||
Inherits: ^Tank
|
||||
@@ -430,7 +442,7 @@ deviatortank:
|
||||
MuzzleSequence: muzzle
|
||||
AttackTurreted:
|
||||
WithMuzzleFlash:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithTurret:
|
||||
AutoTarget:
|
||||
Explodes:
|
||||
@@ -440,6 +452,8 @@ deviatortank:
|
||||
Bounds: 30,30
|
||||
AttractsWorms:
|
||||
Intensity: 520
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
combata:
|
||||
Inherits: ^combat
|
||||
|
||||
@@ -480,8 +480,7 @@ Rules:
|
||||
PanelName: MISSION_OBJECTIVES
|
||||
TRAN.Extraction:
|
||||
Inherits: TRAN
|
||||
RenderUnit:
|
||||
Image: tran
|
||||
WithFacingSpriteBody:
|
||||
RevealsShroud:
|
||||
Range: 0c0
|
||||
RejectsOrders:
|
||||
@@ -489,12 +488,17 @@ Rules:
|
||||
Cargo:
|
||||
Types: Einstein
|
||||
MaxWeight: 1
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: tran
|
||||
TRAN.Insertion:
|
||||
Inherits: TRAN.Extraction
|
||||
RenderUnit:
|
||||
Image: tran
|
||||
WithFacingSpriteBody:
|
||||
Cargo:
|
||||
MaxWeight: 0
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: tran
|
||||
EINSTEIN:
|
||||
Passenger:
|
||||
CargoType: Einstein
|
||||
|
||||
@@ -1377,8 +1377,7 @@ Rules:
|
||||
ShowOwnerRow: false
|
||||
JEEP.mission:
|
||||
Inherits: JEEP
|
||||
RenderUnit:
|
||||
Image: JEEP
|
||||
WithFacingSpriteBody:
|
||||
-Selectable:
|
||||
-Demolishable:
|
||||
-Huntable:
|
||||
@@ -1389,6 +1388,9 @@ Rules:
|
||||
Types: ~disabled
|
||||
RevealsShroud:
|
||||
Range: 0c0
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: JEEP
|
||||
E3:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
@@ -1656,10 +1656,12 @@ Rules:
|
||||
Inherits: TRUK
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
RenderUnit:
|
||||
Image: TRUK
|
||||
WithFacingSpriteBody:
|
||||
-LeavesHusk:
|
||||
-EjectOnDeath:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: TRUK
|
||||
SPY:
|
||||
Infiltrates:
|
||||
Types: Mission Objectives
|
||||
|
||||
@@ -829,8 +829,7 @@ Rules:
|
||||
ROT: 900
|
||||
RevealsShroud:
|
||||
Range: 40c0
|
||||
RenderUnit:
|
||||
Image: MNLY
|
||||
WithFacingSpriteBody:
|
||||
MustBeDestroyed:
|
||||
RequiredForShortGame: true
|
||||
Transforms:
|
||||
@@ -840,6 +839,9 @@ Rules:
|
||||
CashTrickler:
|
||||
Period: 150
|
||||
Amount: 20
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: MNLY
|
||||
FTUR:
|
||||
Health:
|
||||
HP: 1000
|
||||
|
||||
@@ -684,14 +684,16 @@ Rules:
|
||||
Speed: 280
|
||||
AmmoPool:
|
||||
Ammo: 30
|
||||
RenderUnit:
|
||||
Image: mig
|
||||
WithFacingSpriteBody:
|
||||
WithShadow:
|
||||
-Selectable:
|
||||
-GainsExperience:
|
||||
Tooltip:
|
||||
Name: Mig Bomber
|
||||
-EjectOnDeath:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: mig
|
||||
BRIK:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
@@ -2210,8 +2210,7 @@ Rules:
|
||||
MuzzleSequence: muzzle
|
||||
AttackTurreted:
|
||||
WithMuzzleFlash:
|
||||
RenderUnit:
|
||||
Image: 4TNK
|
||||
WithFacingSpriteBody:
|
||||
WithTurret:
|
||||
AutoTarget:
|
||||
Explodes:
|
||||
@@ -2227,16 +2226,21 @@ Rules:
|
||||
Selectable:
|
||||
Bounds: 44,38,0,-4
|
||||
-EjectOnDeath:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: 4TNK
|
||||
5TNK.Husk:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Husk (Super Tank)
|
||||
RenderUnit:
|
||||
Image: 4TNK
|
||||
WithFacingSpriteBody:
|
||||
ThrowsParticle@turret:
|
||||
Anim: turret
|
||||
Health:
|
||||
HP: 2000
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: 4TNK
|
||||
DOME.NoInfiltrate:
|
||||
Inherits: DOME
|
||||
Buildable:
|
||||
@@ -2253,16 +2257,20 @@ Rules:
|
||||
Inherits: 3TNK
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
RenderUnit:
|
||||
Image: 3TNK
|
||||
WithFacingSpriteBody:
|
||||
-EjectOnDeath:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: 3TNK
|
||||
BADTRUK:
|
||||
Inherits: TRUK
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
RenderUnit:
|
||||
Image: TRUK
|
||||
WithFacingSpriteBody:
|
||||
-EjectOnDeath:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: TRUK
|
||||
SS:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
@@ -10,7 +10,7 @@ BADR:
|
||||
ROT: 5
|
||||
Speed: 149
|
||||
Repulsable: False
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
Cargo:
|
||||
MaxWeight: 10
|
||||
-Selectable:
|
||||
@@ -33,6 +33,8 @@ BADR:
|
||||
-GpsDot:
|
||||
RejectsOrders:
|
||||
-AnnounceOnSeen:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
BADR.Bomber:
|
||||
Inherits: ^Plane
|
||||
@@ -49,8 +51,7 @@ BADR.Bomber:
|
||||
Repulsable: False
|
||||
AmmoPool:
|
||||
Ammo: 7
|
||||
RenderUnit:
|
||||
Image: badr
|
||||
WithFacingSpriteBody:
|
||||
-Selectable:
|
||||
-GainsExperience:
|
||||
Tooltip:
|
||||
@@ -70,6 +71,9 @@ BADR.Bomber:
|
||||
-EjectOnDeath:
|
||||
-GpsDot:
|
||||
RejectsOrders:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: badr
|
||||
|
||||
MIG:
|
||||
Inherits: ^Plane
|
||||
@@ -105,8 +109,7 @@ MIG:
|
||||
TargetWhenIdle: false
|
||||
TargetWhenDamaged: false
|
||||
EnableStances: false
|
||||
RenderUnit:
|
||||
CameraPitch: 99
|
||||
WithFacingSpriteBody:
|
||||
AmmoPool:
|
||||
Ammo: 8
|
||||
ReturnOnIdle:
|
||||
@@ -121,6 +124,9 @@ MIG:
|
||||
SmokeTrailWhenDamaged:
|
||||
Offset: -853,0,171
|
||||
Interval: 2
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
CameraPitch: 99
|
||||
|
||||
YAK:
|
||||
Inherits: ^Plane
|
||||
@@ -161,8 +167,7 @@ YAK:
|
||||
TargetWhenIdle: false
|
||||
TargetWhenDamaged: false
|
||||
EnableStances: false
|
||||
RenderUnit:
|
||||
CameraPitch: 99
|
||||
WithFacingSpriteBody:
|
||||
AmmoPool:
|
||||
Ammo: 18
|
||||
PipCount: 6
|
||||
@@ -178,6 +183,9 @@ YAK:
|
||||
SmokeTrailWhenDamaged:
|
||||
Offset: -853,0,0
|
||||
Interval: 2
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
CameraPitch: 99
|
||||
|
||||
TRAN:
|
||||
Inherits: ^Helicopter
|
||||
@@ -205,7 +213,7 @@ TRAN:
|
||||
Speed: 112
|
||||
LandableTerrainTypes: Clear,Rough,Road,Ore,Beach
|
||||
AltitudeVelocity: 0c100
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithRotor@PRIMARY:
|
||||
Offset: -597,0,341
|
||||
Sequence: rotor2
|
||||
@@ -218,6 +226,8 @@ TRAN:
|
||||
PipCount: 8
|
||||
LeavesHusk:
|
||||
HuskActor: TRAN.Husk
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
HELI:
|
||||
Inherits: ^Helicopter
|
||||
@@ -254,7 +264,7 @@ HELI:
|
||||
Speed: 149
|
||||
AutoTarget:
|
||||
InitialStance: HoldFire
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithRotor:
|
||||
Offset: 0,0,85
|
||||
AmmoPool:
|
||||
@@ -265,6 +275,8 @@ HELI:
|
||||
HuskActor: HELI.Husk
|
||||
SmokeTrailWhenDamaged:
|
||||
Offset: -427,0,0
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
HIND:
|
||||
Inherits: ^Helicopter
|
||||
@@ -304,7 +316,7 @@ HIND:
|
||||
Speed: 112
|
||||
AutoTarget:
|
||||
InitialStance: HoldFire
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithRotor:
|
||||
AmmoPool:
|
||||
Ammo: 24
|
||||
@@ -317,6 +329,8 @@ HIND:
|
||||
HuskActor: HIND.Husk
|
||||
SmokeTrailWhenDamaged:
|
||||
Offset: -427,0,0
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
U2:
|
||||
Inherits: ^Plane
|
||||
@@ -329,7 +343,7 @@ U2:
|
||||
Speed: 373
|
||||
Repulsable: False
|
||||
MaximumPitch: 56
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
AttackBomber:
|
||||
-Selectable:
|
||||
-TargetableAircraft:
|
||||
@@ -345,4 +359,6 @@ U2:
|
||||
Interval: 2
|
||||
RejectsOrders:
|
||||
-AnnounceOnSeen:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
|
||||
@@ -536,7 +536,7 @@
|
||||
^Husk:
|
||||
Husk:
|
||||
AllowedTerrain: Clear, Rough, Road, Ore, Gems, Beach
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
Health:
|
||||
HP: 280
|
||||
Armor:
|
||||
@@ -562,6 +562,8 @@
|
||||
ForceHealthPercentage: 25
|
||||
DisabledOverlay:
|
||||
ScriptTriggers:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
^HelicopterHusk:
|
||||
Inherits: ^Husk
|
||||
|
||||
@@ -2,91 +2,106 @@
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Husk (Light Tank)
|
||||
RenderUnit:
|
||||
Image: 1tnk.destroyed
|
||||
WithFacingSpriteBody:
|
||||
ThrowsParticle@turret:
|
||||
Anim: turret
|
||||
TransformOnCapture:
|
||||
IntoActor: 1tnk
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: 1tnk.destroyed
|
||||
|
||||
2TNK.Husk:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Husk (Medium Tank)
|
||||
RenderUnit:
|
||||
Image: 2tnk.destroyed
|
||||
WithFacingSpriteBody:
|
||||
ThrowsParticle@turret:
|
||||
Anim: turret
|
||||
TransformOnCapture:
|
||||
IntoActor: 2tnk
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: 2tnk.destroyed
|
||||
|
||||
3TNK.Husk:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Husk (Heavy Tank)
|
||||
RenderUnit:
|
||||
Image: 3tnk.destroyed
|
||||
WithFacingSpriteBody:
|
||||
ThrowsParticle@turret:
|
||||
Anim: turret
|
||||
TransformOnCapture:
|
||||
IntoActor: 3tnk
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: 3tnk.destroyed
|
||||
|
||||
4TNK.Husk:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Husk (Mammoth Tank)
|
||||
RenderUnit:
|
||||
Image: 4tnk.destroyed
|
||||
WithFacingSpriteBody:
|
||||
ThrowsParticle@turret:
|
||||
Anim: turret
|
||||
TransformOnCapture:
|
||||
IntoActor: 4tnk
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: 4tnk.destroyed
|
||||
|
||||
HARV.FullHusk:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Husk (Harvester)
|
||||
RenderUnit:
|
||||
Image: hhusk
|
||||
WithFacingSpriteBody:
|
||||
TransformOnCapture:
|
||||
IntoActor: harv
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: hhusk
|
||||
|
||||
HARV.EmptyHusk:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Husk (Harvester)
|
||||
RenderUnit:
|
||||
Image: hhusk2
|
||||
WithFacingSpriteBody:
|
||||
TransformOnCapture:
|
||||
IntoActor: harv
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: hhusk2
|
||||
|
||||
MCV.Husk:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Husk (MCV)
|
||||
RenderUnit:
|
||||
Image: mcvhusk
|
||||
WithFacingSpriteBody:
|
||||
TransformOnCapture:
|
||||
IntoActor: mcv
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: mcvhusk
|
||||
|
||||
MGG.Husk:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Husk (Mobile Gap Generator)
|
||||
RenderUnit:
|
||||
Image: mgg.destroyed
|
||||
WithFacingSpriteBody:
|
||||
ThrowsParticle@spinner:
|
||||
Anim: spinner-idle
|
||||
Offset: -299,0,171
|
||||
TransformOnCapture:
|
||||
IntoActor: mgg
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: mgg.destroyed
|
||||
|
||||
TRAN.Husk:
|
||||
Inherits: ^HelicopterHusk
|
||||
Tooltip:
|
||||
Name: Transport Helicopter
|
||||
RenderUnit:
|
||||
Image: tran
|
||||
WithFacingSpriteBody:
|
||||
WithShadow:
|
||||
Helicopter:
|
||||
ROT: 4
|
||||
@@ -97,33 +112,39 @@ TRAN.Husk:
|
||||
Offset: 597,0,213
|
||||
RevealsShroud:
|
||||
Range: 12c0
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: tran
|
||||
|
||||
TRAN.Husk1:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Husk (Transport Helicopter)
|
||||
RenderUnit:
|
||||
Image: tran1husk
|
||||
WithFacingSpriteBody:
|
||||
-TargetableUnit:
|
||||
-Capturable:
|
||||
-TransformOnCapture:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: tran1husk
|
||||
|
||||
TRAN.Husk2:
|
||||
Inherits: ^Husk
|
||||
Tooltip:
|
||||
Name: Husk (Transport Helicopter)
|
||||
RenderUnit:
|
||||
Image: tran2husk
|
||||
WithFacingSpriteBody:
|
||||
-TargetableUnit:
|
||||
-Capturable:
|
||||
-TransformOnCapture:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: tran2husk
|
||||
|
||||
BADR.Husk:
|
||||
Inherits: ^PlaneHusk
|
||||
Tooltip:
|
||||
Name: Badger
|
||||
RenderUnit:
|
||||
Image: badr
|
||||
WithFacingSpriteBody:
|
||||
WithShadow:
|
||||
Plane:
|
||||
ROT: 5
|
||||
@@ -136,14 +157,15 @@ BADR.Husk:
|
||||
Offset: -432,-560,0
|
||||
Interval: 2
|
||||
MinDamage: Undamaged
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: badr
|
||||
|
||||
MIG.Husk:
|
||||
Inherits: ^PlaneHusk
|
||||
Tooltip:
|
||||
Name: Mig Attack Plane
|
||||
RenderUnit:
|
||||
CameraPitch: 99
|
||||
Image: mig
|
||||
WithFacingSpriteBody:
|
||||
WithShadow:
|
||||
Contrail@1:
|
||||
Offset: -598,-683,0
|
||||
@@ -158,14 +180,16 @@ MIG.Husk:
|
||||
MinDamage: Undamaged
|
||||
RevealsShroud:
|
||||
Range: 12c0
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
CameraPitch: 99
|
||||
Image: mig
|
||||
|
||||
YAK.Husk:
|
||||
Inherits: ^PlaneHusk
|
||||
Tooltip:
|
||||
Name: Yak Attack Plane
|
||||
RenderUnit:
|
||||
CameraPitch: 99
|
||||
Image: yak
|
||||
WithFacingSpriteBody:
|
||||
WithShadow:
|
||||
Contrail:
|
||||
Offset: -853,0,0
|
||||
@@ -178,13 +202,16 @@ YAK.Husk:
|
||||
MinDamage: Undamaged
|
||||
RevealsShroud:
|
||||
Range: 10c0
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
CameraPitch: 99
|
||||
Image: yak
|
||||
|
||||
HELI.Husk:
|
||||
Inherits: ^HelicopterHusk
|
||||
Tooltip:
|
||||
Name: Longbow
|
||||
RenderUnit:
|
||||
Image: heli
|
||||
WithFacingSpriteBody:
|
||||
WithShadow:
|
||||
Helicopter:
|
||||
ROT: 4
|
||||
@@ -196,13 +223,15 @@ HELI.Husk:
|
||||
MinDamage: Undamaged
|
||||
RevealsShroud:
|
||||
Range: 12c0
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: heli
|
||||
|
||||
HIND.Husk:
|
||||
Inherits: ^HelicopterHusk
|
||||
Tooltip:
|
||||
Name: Hind
|
||||
RenderUnit:
|
||||
Image: hind
|
||||
WithFacingSpriteBody:
|
||||
WithShadow:
|
||||
Helicopter:
|
||||
ROT: 4
|
||||
@@ -213,11 +242,13 @@ HIND.Husk:
|
||||
MinDamage: Undamaged
|
||||
RevealsShroud:
|
||||
Range: 10c0
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: hind
|
||||
|
||||
U2.Husk:
|
||||
Inherits: ^PlaneHusk
|
||||
RenderUnit:
|
||||
Image: u2
|
||||
WithFacingSpriteBody:
|
||||
WithShadow:
|
||||
Plane:
|
||||
ROT: 7
|
||||
@@ -230,4 +261,7 @@ U2.Husk:
|
||||
Offset: -1c43,0,0
|
||||
Interval: 2
|
||||
MinDamage: Undamaged
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: u2
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@ SS:
|
||||
TargetableSubmarine:
|
||||
TargetTypes: Ground, Water, Repair
|
||||
CloakedTargetTypes: Underwater, Repair
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
Cloak:
|
||||
CloakTypes: Underwater
|
||||
InitialDelay: 0
|
||||
@@ -49,6 +49,8 @@ SS:
|
||||
Weapon: UnitExplodeSubmarine
|
||||
EmptyWeapon: UnitExplodeSubmarine
|
||||
-MustBeDestroyed:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
MSUB:
|
||||
Inherits: ^Ship
|
||||
@@ -71,7 +73,7 @@ MSUB:
|
||||
Speed: 42
|
||||
RevealsShroud:
|
||||
Range: 6c0
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
-TargetableUnit:
|
||||
TargetableSubmarine:
|
||||
TargetTypes: Ground, Water, Repair
|
||||
@@ -101,6 +103,8 @@ MSUB:
|
||||
Weapon: UnitExplodeSubmarine
|
||||
EmptyWeapon: UnitExplodeSubmarine
|
||||
-MustBeDestroyed:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
DD:
|
||||
Inherits: ^Ship
|
||||
@@ -141,7 +145,7 @@ DD:
|
||||
AttackTurreted:
|
||||
Selectable:
|
||||
Bounds: 38,38
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithTurret:
|
||||
AutoTarget:
|
||||
Chronoshiftable:
|
||||
@@ -153,6 +157,8 @@ DD:
|
||||
Explodes:
|
||||
Weapon: UnitExplodeShip
|
||||
EmptyWeapon: UnitExplodeShip
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
CA:
|
||||
Inherits: ^Ship
|
||||
@@ -202,7 +208,7 @@ CA:
|
||||
WithMuzzleFlash:
|
||||
Selectable:
|
||||
Bounds: 44,44
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithTurret@PRIMARY:
|
||||
Turret: primary
|
||||
WithTurret@SECONDARY:
|
||||
@@ -213,6 +219,8 @@ CA:
|
||||
Explodes:
|
||||
Weapon: UnitExplodeShip
|
||||
EmptyWeapon: UnitExplodeShip
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
LST:
|
||||
Inherits: ^Ship
|
||||
@@ -282,7 +290,7 @@ PT:
|
||||
WithMuzzleFlash:
|
||||
Selectable:
|
||||
Bounds: 32,32
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithTurret:
|
||||
AutoTarget:
|
||||
Chronoshiftable:
|
||||
@@ -294,4 +302,6 @@ PT:
|
||||
Explodes:
|
||||
Weapon: UnitExplodeShip
|
||||
EmptyWeapon: UnitExplodeShip
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
|
||||
@@ -20,11 +20,17 @@ V2RL:
|
||||
Armament:
|
||||
Weapon: SCUD
|
||||
AttackFrontal:
|
||||
RenderUnitReload:
|
||||
RenderSprites:
|
||||
AutoTarget:
|
||||
Explodes:
|
||||
Weapon: SCUD
|
||||
EmptyWeapon: UnitExplodeSmall
|
||||
AutoSelectionSize:
|
||||
WithFacingSpriteBody:
|
||||
Sequence: idle
|
||||
WithAttackAnimation:
|
||||
AimSequence: aim
|
||||
ReloadPrefix: empty-
|
||||
|
||||
1TNK:
|
||||
Inherits: ^Tank
|
||||
@@ -56,7 +62,7 @@ V2RL:
|
||||
MuzzleSequence: muzzle
|
||||
AttackTurreted:
|
||||
WithMuzzleFlash:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithTurret:
|
||||
AutoTarget:
|
||||
Explodes:
|
||||
@@ -64,6 +70,8 @@ V2RL:
|
||||
EmptyWeapon: UnitExplodeSmall
|
||||
LeavesHusk:
|
||||
HuskActor: 1TNK.Husk
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
2TNK:
|
||||
Inherits: ^Tank
|
||||
@@ -95,7 +103,7 @@ V2RL:
|
||||
MuzzleSequence: muzzle
|
||||
AttackTurreted:
|
||||
WithMuzzleFlash:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithTurret:
|
||||
AutoTarget:
|
||||
Explodes:
|
||||
@@ -105,6 +113,8 @@ V2RL:
|
||||
HuskActor: 2TNK.Husk
|
||||
Selectable:
|
||||
Bounds: 30,30
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
3TNK:
|
||||
Inherits: ^Tank
|
||||
@@ -136,7 +146,7 @@ V2RL:
|
||||
MuzzleSequence: muzzle
|
||||
AttackTurreted:
|
||||
WithMuzzleFlash:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithTurret:
|
||||
AutoTarget:
|
||||
Explodes:
|
||||
@@ -146,6 +156,8 @@ V2RL:
|
||||
HuskActor: 3TNK.Husk
|
||||
Selectable:
|
||||
Bounds: 30,30
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
4TNK:
|
||||
Inherits: ^Tank
|
||||
@@ -186,7 +198,7 @@ V2RL:
|
||||
MuzzleSequence: muzzle
|
||||
AttackTurreted:
|
||||
WithMuzzleFlash:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithTurret:
|
||||
AutoTarget:
|
||||
Explodes:
|
||||
@@ -201,6 +213,8 @@ V2RL:
|
||||
DamageCooldown: 150
|
||||
Selectable:
|
||||
Bounds: 44,38,0,-4
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
ARTY:
|
||||
Inherits: ^Tank
|
||||
@@ -228,11 +242,13 @@ ARTY:
|
||||
MuzzleSequence: muzzle
|
||||
AttackFrontal:
|
||||
WithMuzzleFlash:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
Explodes:
|
||||
Weapon: UnitExplode
|
||||
Chance: 75
|
||||
AutoTarget:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
HARV:
|
||||
Inherits: ^Vehicle
|
||||
@@ -309,7 +325,7 @@ MCV:
|
||||
Facing: 96
|
||||
TransformSounds: placbldg.aud, build5.aud
|
||||
NoTransformNotification: BuildingCannotPlaceAudio
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
MustBeDestroyed:
|
||||
RequiredForShortGame: true
|
||||
BaseBuilding:
|
||||
@@ -318,6 +334,8 @@ MCV:
|
||||
Explodes:
|
||||
Weapon: UnitExplodeSmall
|
||||
EmptyWeapon: UnitExplodeSmall
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
JEEP:
|
||||
Inherits: ^Vehicle
|
||||
@@ -347,7 +365,7 @@ JEEP:
|
||||
MuzzleSequence: muzzle
|
||||
AttackTurreted:
|
||||
WithMuzzleFlash:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithTurret:
|
||||
AutoTarget:
|
||||
Cargo:
|
||||
@@ -357,6 +375,8 @@ JEEP:
|
||||
Explodes:
|
||||
Weapon: UnitExplodeSmall
|
||||
EmptyWeapon: UnitExplodeSmall
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
APC:
|
||||
Inherits: ^Tank
|
||||
@@ -383,7 +403,7 @@ APC:
|
||||
LocalOffset: 0,0,171
|
||||
MuzzleSequence: muzzle
|
||||
AttackFrontal:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithMuzzleFlash:
|
||||
AutoTarget:
|
||||
Cargo:
|
||||
@@ -393,6 +413,8 @@ APC:
|
||||
Explodes:
|
||||
Weapon: UnitExplodeSmall
|
||||
EmptyWeapon: UnitExplodeSmall
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
MNLY.AP:
|
||||
Inherits: ^Tank
|
||||
@@ -414,8 +436,7 @@ MNLY.AP:
|
||||
Crushes: wall, mine, crate, infantry
|
||||
RevealsShroud:
|
||||
Range: 5c0
|
||||
RenderUnit:
|
||||
Image: MNLY
|
||||
WithFacingSpriteBody:
|
||||
Minelayer:
|
||||
Mine: MINP
|
||||
MineImmune:
|
||||
@@ -428,6 +449,9 @@ MNLY.AP:
|
||||
RenderDetectionCircle:
|
||||
Explodes:
|
||||
Weapon: APMine
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: MNLY
|
||||
|
||||
MNLY.AT:
|
||||
Inherits: ^Tank
|
||||
@@ -449,8 +473,7 @@ MNLY.AT:
|
||||
Crushes: wall, mine, crate, infantry
|
||||
RevealsShroud:
|
||||
Range: 5c0
|
||||
RenderUnit:
|
||||
Image: MNLY
|
||||
WithFacingSpriteBody:
|
||||
Minelayer:
|
||||
Mine: MINV
|
||||
MineImmune:
|
||||
@@ -463,6 +486,9 @@ MNLY.AT:
|
||||
RenderDetectionCircle:
|
||||
Explodes:
|
||||
Weapon: ATMine
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
Image: MNLY
|
||||
|
||||
TRUK:
|
||||
Inherits: ^Vehicle
|
||||
@@ -483,7 +509,7 @@ TRUK:
|
||||
Speed: 128
|
||||
RevealsShroud:
|
||||
Range: 3c0
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
SupplyTruck:
|
||||
Payload: 500
|
||||
Explodes:
|
||||
@@ -491,6 +517,8 @@ TRUK:
|
||||
EmptyWeapon: UnitExplodeSmall
|
||||
LeavesHusk:
|
||||
HuskActor: moneycrate
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
MGG:
|
||||
Inherits: ^Vehicle
|
||||
@@ -509,7 +537,7 @@ MGG:
|
||||
Type: Heavy
|
||||
Mobile:
|
||||
Speed: 85
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithIdleOverlay@SPINNER:
|
||||
Offset: -299,0,171
|
||||
Sequence: spinner
|
||||
@@ -523,6 +551,8 @@ MGG:
|
||||
EmptyWeapon: UnitExplodeSmall
|
||||
LeavesHusk:
|
||||
HuskActor: MGG.Husk
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
MRJ:
|
||||
Inherits: ^Vehicle
|
||||
@@ -543,7 +573,7 @@ MRJ:
|
||||
Speed: 85
|
||||
RevealsShroud:
|
||||
Range: 6c0
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithIdleOverlay@SPINNER:
|
||||
Sequence: spinner
|
||||
Offset: -256,0,256
|
||||
@@ -558,6 +588,8 @@ MRJ:
|
||||
RenderJammerCircle:
|
||||
DetectCloaked:
|
||||
Range: 6
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
TTNK:
|
||||
Inherits: ^Tank
|
||||
@@ -583,7 +615,7 @@ TTNK:
|
||||
Weapon: TTankZap
|
||||
LocalOffset: 0,0,213
|
||||
AttackFrontal:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithIdleOverlay@SPINNER:
|
||||
Sequence: spinner
|
||||
Selectable:
|
||||
@@ -592,6 +624,8 @@ TTNK:
|
||||
Explodes:
|
||||
Weapon: UnitExplodeSmall
|
||||
EmptyWeapon: UnitExplodeSmall
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
FTRK:
|
||||
Inherits: ^Vehicle
|
||||
@@ -623,7 +657,7 @@ FTRK:
|
||||
MuzzleSequence: muzzle
|
||||
AttackTurreted:
|
||||
WithMuzzleFlash:
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
WithTurret:
|
||||
AutoTarget:
|
||||
Explodes:
|
||||
@@ -631,6 +665,8 @@ FTRK:
|
||||
EmptyWeapon: UnitExplodeSmall
|
||||
Selectable:
|
||||
Bounds: 28,28,0,0
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
DTRK:
|
||||
Inherits: ^Vehicle
|
||||
@@ -651,7 +687,7 @@ DTRK:
|
||||
Speed: 85
|
||||
RevealsShroud:
|
||||
Range: 3c0
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
Explodes:
|
||||
Weapon: MiniNuke
|
||||
EmptyWeapon: MiniNuke
|
||||
@@ -662,6 +698,8 @@ DTRK:
|
||||
UpgradeMinEnabledLevel: 1
|
||||
Chronoshiftable:
|
||||
ExplodeInstead: yes
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
CTNK:
|
||||
Inherits: ^Vehicle
|
||||
@@ -685,7 +723,7 @@ CTNK:
|
||||
Crushes: wall, mine, crate, infantry
|
||||
RevealsShroud:
|
||||
Range: 6c0
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
AutoTarget:
|
||||
Armament@PRIMARY:
|
||||
Weapon: APTusk
|
||||
@@ -700,6 +738,8 @@ CTNK:
|
||||
Explodes:
|
||||
Weapon: UnitExplodeSmall
|
||||
EmptyWeapon: UnitExplodeSmall
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
QTNK:
|
||||
Inherits: ^Tank
|
||||
@@ -723,13 +763,15 @@ QTNK:
|
||||
Range: 6c0
|
||||
Selectable:
|
||||
Bounds: 44,38,0,-4
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
Explodes:
|
||||
Weapon: UnitExplodeSmall
|
||||
MadTank:
|
||||
-EjectOnDeath:
|
||||
TargetableUnit:
|
||||
TargetTypes: Ground, MADTank, Repair
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
STNK:
|
||||
Inherits: ^Vehicle
|
||||
@@ -753,7 +795,7 @@ STNK:
|
||||
Crushes: wall, mine, crate, infantry
|
||||
RevealsShroud:
|
||||
Range: 6c0
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
AutoTarget:
|
||||
InitialStance: ReturnFire
|
||||
Armament:
|
||||
@@ -778,4 +820,6 @@ STNK:
|
||||
Weapon: UnitExplodeSmall
|
||||
EmptyWeapon: UnitExplodeSmall
|
||||
-MustBeDestroyed:
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
|
||||
@@ -233,6 +233,8 @@ VISSML:
|
||||
WanderMoveRadius: 2
|
||||
MinMoveDelayInTicks: 30
|
||||
MaxMoveDelayInTicks: 60
|
||||
WithFacingSpriteBody:
|
||||
AutoSelectionSize:
|
||||
|
||||
VISLRG:
|
||||
Inherits: ^Viceroid
|
||||
@@ -250,6 +252,8 @@ VISLRG:
|
||||
MaxMoveDelayInTicks: 45
|
||||
Mobile:
|
||||
Crushes: crate, infantry
|
||||
WithFacingSpriteBody:
|
||||
AutoSelectionSize:
|
||||
|
||||
CIV1:
|
||||
Inherits: ^CivilianInfantry
|
||||
|
||||
@@ -105,9 +105,14 @@ SMECH:
|
||||
Armament:
|
||||
Weapon: AssaultCannon
|
||||
RenderSprites:
|
||||
WithInfantryBody:
|
||||
Voiced:
|
||||
VoiceSet: Mech
|
||||
WithFacingSpriteBody:
|
||||
Sequence: stand
|
||||
WithAttackAnimation:
|
||||
AttackSequence: shoot
|
||||
WithMoveAnimation:
|
||||
MoveSequence: run
|
||||
Selectable:
|
||||
Bounds: 20, 32, 0, -8
|
||||
|
||||
|
||||
@@ -129,8 +129,11 @@ GGHUNT:
|
||||
Type: Light
|
||||
RevealsShroud:
|
||||
Range: 7c0
|
||||
RenderUnit:
|
||||
WithFacingSpriteBody:
|
||||
DemoTruck:
|
||||
Explodes:
|
||||
Weapon: SuicideBomb
|
||||
EmptyWeapon: SuicideBomb
|
||||
AutoSelectionSize:
|
||||
RenderSprites:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user