Remove legacy bounds code.
This commit is contained in:
@@ -22,7 +22,7 @@ using OpenRA.Traits;
|
||||
namespace OpenRA.Mods.Cnc.Traits.Render
|
||||
{
|
||||
// TODO: This trait is hacky and should go away as soon as we support granting a condition on docking, in favor of toggling two regular WithVoxelBodies
|
||||
public class WithVoxelUnloadBodyInfo : ITraitInfo, IRenderActorPreviewVoxelsInfo, Requires<RenderVoxelsInfo>, IAutoSelectionSizeInfo, IAutoRenderSizeInfo
|
||||
public class WithVoxelUnloadBodyInfo : ITraitInfo, IRenderActorPreviewVoxelsInfo, Requires<RenderVoxelsInfo>
|
||||
{
|
||||
[Desc("Voxel sequence name to use when docked to a refinery.")]
|
||||
public readonly string UnloadSequence = "unload";
|
||||
@@ -46,11 +46,10 @@ namespace OpenRA.Mods.Cnc.Traits.Render
|
||||
}
|
||||
}
|
||||
|
||||
public class WithVoxelUnloadBody : IAutoSelectionSize, IAutoRenderSize, IAutoMouseBounds
|
||||
public class WithVoxelUnloadBody : IAutoMouseBounds
|
||||
{
|
||||
public bool Docked;
|
||||
|
||||
readonly int2 size;
|
||||
readonly ModelAnimation modelAnimation;
|
||||
readonly RenderVoxels rv;
|
||||
|
||||
@@ -67,11 +66,6 @@ namespace OpenRA.Mods.Cnc.Traits.Render
|
||||
|
||||
rv.Add(modelAnimation);
|
||||
|
||||
// Selection size
|
||||
var rvi = self.Info.TraitInfo<RenderVoxelsInfo>();
|
||||
var s = (int)(rvi.Scale * idleModel.Size.Aggregate(Math.Max));
|
||||
size = new int2(s, s);
|
||||
|
||||
var unloadModel = self.World.ModelCache.GetModelSequence(rv.Image, info.UnloadSequence);
|
||||
rv.Add(new ModelAnimation(unloadModel, () => WVec.Zero,
|
||||
() => new[] { body.QuantizeOrientation(self, self.Orientation) },
|
||||
@@ -79,9 +73,6 @@ namespace OpenRA.Mods.Cnc.Traits.Render
|
||||
() => 0, info.ShowShadow));
|
||||
}
|
||||
|
||||
int2 IAutoSelectionSize.SelectionSize(Actor self) { return size; }
|
||||
int2 IAutoRenderSize.RenderSize(Actor self) { return size; }
|
||||
|
||||
Rectangle IAutoMouseBounds.AutoMouseoverBounds(Actor self, WorldRenderer wr)
|
||||
{
|
||||
return modelAnimation.ScreenBounds(self.CenterPosition, wr, rv.Info.Scale);
|
||||
|
||||
@@ -23,8 +23,7 @@ using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.Cnc.Traits.Render
|
||||
{
|
||||
public class WithVoxelWalkerBodyInfo : ITraitInfo, IRenderActorPreviewVoxelsInfo, Requires<RenderVoxelsInfo>, Requires<IMoveInfo>, Requires<IFacingInfo>,
|
||||
IAutoSelectionSizeInfo, IAutoRenderSizeInfo
|
||||
public class WithVoxelWalkerBodyInfo : ITraitInfo, IRenderActorPreviewVoxelsInfo, Requires<RenderVoxelsInfo>, Requires<IMoveInfo>, Requires<IFacingInfo>
|
||||
{
|
||||
public readonly string Sequence = "idle";
|
||||
|
||||
@@ -48,12 +47,11 @@ namespace OpenRA.Mods.Cnc.Traits.Render
|
||||
}
|
||||
}
|
||||
|
||||
public class WithVoxelWalkerBody : IAutoSelectionSize, ITick, IActorPreviewInitModifier, IAutoRenderSize, IAutoMouseBounds
|
||||
public class WithVoxelWalkerBody : ITick, IActorPreviewInitModifier, IAutoMouseBounds
|
||||
{
|
||||
readonly WithVoxelWalkerBodyInfo info;
|
||||
readonly IMove movement;
|
||||
readonly IFacing facing;
|
||||
readonly int2 size;
|
||||
readonly ModelAnimation modelAnimation;
|
||||
readonly RenderVoxels rv;
|
||||
|
||||
@@ -76,16 +74,8 @@ namespace OpenRA.Mods.Cnc.Traits.Render
|
||||
() => false, () => frame, info.ShowShadow);
|
||||
|
||||
rv.Add(modelAnimation);
|
||||
|
||||
// Selection size
|
||||
var rvi = self.Info.TraitInfo<RenderVoxelsInfo>();
|
||||
var s = (int)(rvi.Scale * model.Size.Aggregate(Math.Max));
|
||||
size = new int2(s, s);
|
||||
}
|
||||
|
||||
int2 IAutoSelectionSize.SelectionSize(Actor self) { return size; }
|
||||
int2 IAutoRenderSize.RenderSize(Actor self) { return size; }
|
||||
|
||||
void ITick.Tick(Actor self)
|
||||
{
|
||||
if (movement.IsMoving || facing.Facing != oldFacing)
|
||||
|
||||
Reference in New Issue
Block a user