Fix IDE0028, IDE0300, IDE0301, IDE0302, IDE0303, IDE0304.
Silence IDE0305.
This commit is contained in:
committed by
Pavel Penev
parent
0740991c12
commit
79454d8fd2
@@ -87,7 +87,7 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
[ActorReference(dictionaryReference: LintDictionaryReference.Keys)]
|
||||
[Desc("Conditions to grant when disguised as specified actor.",
|
||||
"A dictionary of [actor id]: [condition].")]
|
||||
public readonly Dictionary<string, string> DisguisedAsConditions = new();
|
||||
public readonly Dictionary<string, string> DisguisedAsConditions = [];
|
||||
|
||||
[CursorReference]
|
||||
[Desc("Cursor to display when hovering over a valid actor to disguise as.")]
|
||||
|
||||
@@ -42,8 +42,8 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
|
||||
readonly Player owner;
|
||||
|
||||
readonly List<Actor> actors = new();
|
||||
readonly HashSet<TraitPair<IOnGpsRefreshed>> notifyOnRefresh = new();
|
||||
readonly List<Actor> actors = [];
|
||||
readonly HashSet<TraitPair<IOnGpsRefreshed>> notifyOnRefresh = [];
|
||||
|
||||
public GpsWatcher(Player owner)
|
||||
{
|
||||
|
||||
@@ -32,7 +32,7 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
|
||||
sealed class InfiltrateForDecoration : WithDecoration, INotifyInfiltrated
|
||||
{
|
||||
readonly HashSet<Player> infiltrators = new();
|
||||
readonly HashSet<Player> infiltrators = [];
|
||||
readonly InfiltrateForDecorationInfo info;
|
||||
|
||||
public InfiltrateForDecoration(Actor self, InfiltrateForDecorationInfo info)
|
||||
|
||||
@@ -71,10 +71,10 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
|
||||
infiltrator.Owner.PlayerActor.TraitOrDefault<PlayerExperience>()?.GiveExperience(info.PlayerExperience);
|
||||
|
||||
infiltrator.World.AddFrameEndTask(w => w.CreateActor(info.Proxy, new TypeDictionary
|
||||
{
|
||||
infiltrator.World.AddFrameEndTask(w => w.CreateActor(info.Proxy,
|
||||
[
|
||||
new OwnerInit(infiltrator.Owner)
|
||||
}));
|
||||
]));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -243,11 +243,11 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
|
||||
void EjectDriver()
|
||||
{
|
||||
var driver = self.World.CreateActor(mad.info.DriverActor.ToLowerInvariant(), new TypeDictionary
|
||||
{
|
||||
var driver = self.World.CreateActor(mad.info.DriverActor.ToLowerInvariant(),
|
||||
[
|
||||
new LocationInit(self.Location),
|
||||
new OwnerInit(self.Owner)
|
||||
});
|
||||
]);
|
||||
driver.QueueActivity(false, new Nudge(driver));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,7 +20,7 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
sealed class LightPaletteRotatorInfo : TraitInfo
|
||||
{
|
||||
[Desc("Palettes this effect should not apply to.")]
|
||||
public readonly HashSet<string> ExcludePalettes = new();
|
||||
public readonly HashSet<string> ExcludePalettes = [];
|
||||
|
||||
[Desc("'Speed' at which the effect cycles through palette indices.")]
|
||||
public readonly float TimeStep = .5f;
|
||||
@@ -29,7 +29,7 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
public readonly int ModifyIndex = 103;
|
||||
|
||||
[Desc("Palette indices to rotate through.")]
|
||||
public readonly int[] RotationIndices = { 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 238, 237, 236, 235, 234, 233, 232, 231 };
|
||||
public readonly int[] RotationIndices = [230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 238, 237, 236, 235, 234, 233, 232, 231];
|
||||
|
||||
public override object Create(ActorInitializer init) { return new LightPaletteRotator(this); }
|
||||
}
|
||||
|
||||
@@ -52,8 +52,8 @@ namespace OpenRA.Mods.Cnc.Traits.Render
|
||||
|
||||
public readonly WAngle LightPitch = WAngle.FromDegrees(50);
|
||||
public readonly WAngle LightYaw = WAngle.FromDegrees(240);
|
||||
public readonly float[] LightAmbientColor = { 0.6f, 0.6f, 0.6f };
|
||||
public readonly float[] LightDiffuseColor = { 0.4f, 0.4f, 0.4f };
|
||||
public readonly float[] LightAmbientColor = [0.6f, 0.6f, 0.6f];
|
||||
public readonly float[] LightDiffuseColor = [0.4f, 0.4f, 0.4f];
|
||||
|
||||
public override object Create(ActorInitializer init) { return new RenderVoxels(init.Self, this); }
|
||||
|
||||
@@ -111,8 +111,8 @@ namespace OpenRA.Mods.Cnc.Traits.Render
|
||||
public readonly RenderVoxelsInfo Info;
|
||||
public readonly ModelRenderer Renderer;
|
||||
|
||||
readonly List<ModelAnimation> components = new();
|
||||
readonly Dictionary<ModelAnimation, AnimationWrapper> wrappers = new();
|
||||
readonly List<ModelAnimation> components = [];
|
||||
readonly Dictionary<ModelAnimation, AnimationWrapper> wrappers = [];
|
||||
|
||||
readonly Actor self;
|
||||
readonly BodyOrientation body;
|
||||
@@ -154,13 +154,13 @@ namespace OpenRA.Mods.Cnc.Traits.Render
|
||||
initializePalettes = false;
|
||||
}
|
||||
|
||||
return new IRenderable[]
|
||||
{
|
||||
return
|
||||
[
|
||||
new ModelRenderable(
|
||||
Renderer, components, self.CenterPosition, 0, camera, Info.Scale,
|
||||
lightSource, Info.LightAmbientColor, Info.LightDiffuseColor,
|
||||
colorPalette, normalsPalette, shadowPalette)
|
||||
};
|
||||
];
|
||||
}
|
||||
|
||||
IEnumerable<Rectangle> IRender.ScreenBounds(Actor self, WorldRenderer wr)
|
||||
|
||||
@@ -84,7 +84,7 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
readonly WithBuildingBibInfo info;
|
||||
readonly RenderSprites rs;
|
||||
readonly BuildingInfo bi;
|
||||
readonly List<AnimationWithOffset> anims = new();
|
||||
readonly List<AnimationWithOffset> anims = [];
|
||||
|
||||
public WithBuildingBib(Actor self, WithBuildingBibInfo info)
|
||||
{
|
||||
|
||||
@@ -24,10 +24,10 @@ namespace OpenRA.Mods.Cnc.Traits.Render
|
||||
public class WithCargoInfo : TraitInfo, Requires<CargoInfo>, Requires<BodyOrientationInfo>
|
||||
{
|
||||
[Desc("Cargo position relative to turret or body in (forward, right, up) triples. The default offset should be in the middle of the list.")]
|
||||
public readonly WVec[] LocalOffset = { WVec.Zero };
|
||||
public readonly WVec[] LocalOffset = [WVec.Zero];
|
||||
|
||||
[Desc("Passenger CargoType to display.")]
|
||||
public readonly HashSet<string> DisplayTypes = new();
|
||||
public readonly HashSet<string> DisplayTypes = [];
|
||||
|
||||
public override object Create(ActorInitializer init) { return new WithCargo(init.Self, this); }
|
||||
}
|
||||
@@ -40,7 +40,7 @@ namespace OpenRA.Mods.Cnc.Traits.Render
|
||||
readonly IFacing facing;
|
||||
WAngle cachedFacing;
|
||||
|
||||
readonly Dictionary<Actor, IActorPreview[]> previews = new();
|
||||
readonly Dictionary<Actor, IActorPreview[]> previews = [];
|
||||
|
||||
public WithCargo(Actor self, WithCargoInfo info)
|
||||
{
|
||||
|
||||
@@ -9,7 +9,6 @@
|
||||
*/
|
||||
#endregion
|
||||
|
||||
using System;
|
||||
using OpenRA.Mods.Common.Traits;
|
||||
using OpenRA.Mods.Common.Traits.Render;
|
||||
using OpenRA.Traits;
|
||||
@@ -19,7 +18,7 @@ namespace OpenRA.Mods.Cnc.Traits.Render
|
||||
public class WithHarvesterSpriteBodyInfo : WithFacingSpriteBodyInfo, Requires<HarvesterInfo>
|
||||
{
|
||||
[Desc("Images switched between depending on fullness of harvester. Overrides RenderSprites.Image.")]
|
||||
public readonly string[] ImageByFullness = Array.Empty<string>();
|
||||
public readonly string[] ImageByFullness = [];
|
||||
|
||||
public override object Create(ActorInitializer init) { return new WithHarvesterSpriteBody(init, this); }
|
||||
}
|
||||
|
||||
@@ -19,7 +19,7 @@ namespace OpenRA.Mods.Cnc.Traits.Render
|
||||
{
|
||||
public class WithLandingCraftAnimationInfo : TraitInfo, Requires<IMoveInfo>, Requires<WithSpriteBodyInfo>, Requires<CargoInfo>
|
||||
{
|
||||
public readonly HashSet<string> OpenTerrainTypes = new() { "Clear" };
|
||||
public readonly HashSet<string> OpenTerrainTypes = ["Clear"];
|
||||
|
||||
[SequenceReference]
|
||||
public readonly string OpenSequence = "open";
|
||||
|
||||
@@ -45,7 +45,7 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
public ResourcePurifier(ResourcePurifierInfo info)
|
||||
: base(info)
|
||||
{
|
||||
modifier = new int[] { Info.Modifier };
|
||||
modifier = [Info.Modifier];
|
||||
currentDisplayTick = Info.TickRate;
|
||||
}
|
||||
|
||||
|
||||
@@ -17,7 +17,6 @@ using OpenRA.Mods.Cnc.Effects;
|
||||
using OpenRA.Mods.Common;
|
||||
using OpenRA.Mods.Common.Activities;
|
||||
using OpenRA.Mods.Common.Traits;
|
||||
using OpenRA.Primitives;
|
||||
using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.Cnc.Traits
|
||||
@@ -26,7 +25,7 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
{
|
||||
[FieldLoader.Require]
|
||||
[Desc("Drop pod unit")]
|
||||
[ActorReference(new[] { typeof(AircraftInfo), typeof(FallsToEarthInfo) })]
|
||||
[ActorReference([typeof(AircraftInfo), typeof(FallsToEarthInfo)])]
|
||||
public readonly string[] UnitTypes = null;
|
||||
|
||||
[Desc("Number of drop pods spawned.")]
|
||||
@@ -82,8 +81,8 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
{
|
||||
readonly DropPodsPowerInfo info;
|
||||
readonly string[] unitTypes;
|
||||
readonly Dictionary<string, Func<CPos, WPos>> getLaunchLocation = new();
|
||||
readonly Dictionary<string, HashSet<string>> landableTerrainTypes = new();
|
||||
readonly Dictionary<string, Func<CPos, WPos>> getLaunchLocation = [];
|
||||
readonly Dictionary<string, HashSet<string>> landableTerrainTypes = [];
|
||||
|
||||
public DropPodsPower(Actor self, DropPodsPowerInfo info)
|
||||
: base(self, info)
|
||||
@@ -134,11 +133,11 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
|
||||
if (info.CameraActor != null)
|
||||
{
|
||||
var camera = world.CreateActor(info.CameraActor, new TypeDictionary
|
||||
{
|
||||
var camera = world.CreateActor(info.CameraActor,
|
||||
[
|
||||
new LocationInit(targetCell),
|
||||
new OwnerInit(self.Owner),
|
||||
});
|
||||
]);
|
||||
|
||||
camera.QueueActivity(new Wait(info.CameraRemoveDelay));
|
||||
camera.QueueActivity(new RemoveSelf());
|
||||
@@ -166,12 +165,12 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
var dropLocation = validDropLocations.Random(world.SharedRandom);
|
||||
var launchLocation = getLaunchLocation[unitType](dropLocation);
|
||||
|
||||
var pod = world.CreateActor(false, unitType, new TypeDictionary
|
||||
{
|
||||
var pod = world.CreateActor(false, unitType,
|
||||
[
|
||||
new CenterPositionInit(launchLocation),
|
||||
new OwnerInit(self.Owner),
|
||||
new FacingInit(info.PodFacing)
|
||||
});
|
||||
]);
|
||||
|
||||
var aircraft = pod.Trait<Aircraft>();
|
||||
if (!aircraft.CanLand(dropLocation))
|
||||
|
||||
@@ -51,7 +51,7 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
: base(self, info)
|
||||
{
|
||||
this.info = info;
|
||||
prerequisites = new[] { info.Prerequisite };
|
||||
prerequisites = [info.Prerequisite];
|
||||
}
|
||||
|
||||
protected override void Created(Actor self)
|
||||
|
||||
@@ -13,7 +13,6 @@ using OpenRA.GameRules;
|
||||
using OpenRA.Mods.Cnc.Effects;
|
||||
using OpenRA.Mods.Common.Activities;
|
||||
using OpenRA.Mods.Common.Traits;
|
||||
using OpenRA.Primitives;
|
||||
using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.Cnc.Traits
|
||||
@@ -91,11 +90,11 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
if (info.CameraActor == null)
|
||||
return;
|
||||
|
||||
var camera = w.CreateActor(info.CameraActor, new TypeDictionary
|
||||
{
|
||||
var camera = w.CreateActor(info.CameraActor,
|
||||
[
|
||||
new LocationInit(self.World.Map.CellContaining(target.CenterPosition)),
|
||||
new OwnerInit(self.Owner),
|
||||
});
|
||||
]);
|
||||
|
||||
camera.QueueActivity(new Wait(info.CameraRemoveDelay));
|
||||
camera.QueueActivity(new RemoveSelf());
|
||||
|
||||
@@ -142,7 +142,7 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
|
||||
int MovementSpeed => Common.Util.ApplyPercentageModifiers(Info.Speed, speedModifiers);
|
||||
|
||||
public (CPos, SubCell)[] OccupiedCells() { return new[] { (TopLeft, SubCell.FullCell) }; }
|
||||
public (CPos, SubCell)[] OccupiedCells() { return [(TopLeft, SubCell.FullCell)]; }
|
||||
|
||||
WVec MoveStep(WAngle facing)
|
||||
{
|
||||
|
||||
@@ -38,7 +38,7 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
public readonly int Adjacency = 1;
|
||||
|
||||
[Desc("The range of time (in ticks) until the transformation starts.")]
|
||||
public readonly int[] Delay = { 1000, 3000 };
|
||||
public readonly int[] Delay = [1000, 3000];
|
||||
|
||||
public override object Create(ActorInitializer init) { return new TransformsNearResources(init.Self, this); }
|
||||
}
|
||||
|
||||
@@ -29,7 +29,7 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
readonly IShader shader;
|
||||
readonly IVertexBuffer<RenderPostProcessPassTexturedVertex> vortexBuffer;
|
||||
readonly Sheet vortexSheet;
|
||||
readonly List<(float3, int)> vortices = new();
|
||||
readonly List<(float3, int)> vortices = [];
|
||||
|
||||
public ChronoVortexRenderer(Actor self)
|
||||
{
|
||||
|
||||
@@ -23,7 +23,7 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
public readonly short JumpjetTransitionCost = 0;
|
||||
|
||||
[Desc("The terrain types that this actor can transition on. Leave empty to allow any.")]
|
||||
public readonly HashSet<string> JumpjetTransitionTerrainTypes = new();
|
||||
public readonly HashSet<string> JumpjetTransitionTerrainTypes = [];
|
||||
|
||||
[Desc("Can this actor transition on slopes?")]
|
||||
public readonly bool JumpjetTransitionOnRamps = true;
|
||||
|
||||
@@ -44,22 +44,22 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
public sealed class ModelRenderer : IDisposable, IRenderer, INotifyActorDisposing
|
||||
{
|
||||
// Static constants
|
||||
static readonly float[] ShadowDiffuse = new float[] { 0, 0, 0 };
|
||||
static readonly float[] ShadowAmbient = new float[] { 1, 1, 1 };
|
||||
static readonly float[] ShadowDiffuse = [0, 0, 0];
|
||||
static readonly float[] ShadowAmbient = [1, 1, 1];
|
||||
static readonly float2 SpritePadding = new(2, 2);
|
||||
static readonly float[] ZeroVector = new float[] { 0, 0, 0, 1 };
|
||||
static readonly float[] ZVector = new float[] { 0, 0, 1, 1 };
|
||||
static readonly float[] ZeroVector = [0, 0, 0, 1];
|
||||
static readonly float[] ZVector = [0, 0, 1, 1];
|
||||
static readonly float[] FlipMtx = Util.ScaleMatrix(1, -1, 1);
|
||||
static readonly float[] ShadowScaleFlipMtx = Util.ScaleMatrix(2, -2, 2);
|
||||
static readonly float[] GroundNormal = { 0, 0, 1, 1 };
|
||||
static readonly float[] GroundNormal = [0, 0, 1, 1];
|
||||
|
||||
readonly Renderer renderer;
|
||||
readonly IShader shader;
|
||||
public readonly IModelCache ModelCache;
|
||||
|
||||
readonly Dictionary<Sheet, IFrameBuffer> mappedBuffers = new();
|
||||
readonly Stack<KeyValuePair<Sheet, IFrameBuffer>> unmappedBuffers = new();
|
||||
readonly List<(Sheet Sheet, Action Func)> doRender = new();
|
||||
readonly Dictionary<Sheet, IFrameBuffer> mappedBuffers = [];
|
||||
readonly Stack<KeyValuePair<Sheet, IFrameBuffer>> unmappedBuffers = [];
|
||||
readonly List<(Sheet Sheet, Action Func)> doRender = [];
|
||||
readonly int sheetSize;
|
||||
|
||||
SheetBuilder sheetBuilderForFrame;
|
||||
@@ -156,10 +156,10 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
// Corners of the shadow quad, in shadow-space
|
||||
var corners = new float[][]
|
||||
{
|
||||
new[] { stl.X, stl.Y, 0, 1 },
|
||||
new[] { sbr.X, sbr.Y, 0, 1 },
|
||||
new[] { sbr.X, stl.Y, 0, 1 },
|
||||
new[] { stl.X, sbr.Y, 0, 1 }
|
||||
[stl.X, stl.Y, 0, 1],
|
||||
[sbr.X, sbr.Y, 0, 1],
|
||||
[sbr.X, stl.Y, 0, 1],
|
||||
[stl.X, sbr.Y, 0, 1]
|
||||
};
|
||||
|
||||
var shadowScreenTransform = Util.MatrixMultiply(cameraTransform, invShadowTransform);
|
||||
|
||||
@@ -45,25 +45,25 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
wr.AddPalette(info.Name, new ImmutablePalette(Enumerable.Range(0, Palette.Size).Select(i => c[i % 8].ToArgb())));
|
||||
}
|
||||
|
||||
static readonly Color[] Fog = new[]
|
||||
{
|
||||
static readonly Color[] Fog =
|
||||
[
|
||||
Color.FromArgb(0, 0, 0, 0),
|
||||
Color.Green, Color.Blue, Color.Yellow,
|
||||
Color.FromArgb(128, 0, 0, 0),
|
||||
Color.FromArgb(96, 0, 0, 0),
|
||||
Color.FromArgb(64, 0, 0, 0),
|
||||
Color.FromArgb(32, 0, 0, 0)
|
||||
};
|
||||
];
|
||||
|
||||
static readonly Color[] Shroud = new[]
|
||||
{
|
||||
static readonly Color[] Shroud =
|
||||
[
|
||||
Color.FromArgb(0, 0, 0, 0),
|
||||
Color.Green, Color.Blue, Color.Yellow,
|
||||
Color.Black,
|
||||
Color.FromArgb(160, 0, 0, 0),
|
||||
Color.FromArgb(128, 0, 0, 0),
|
||||
Color.FromArgb(64, 0, 0, 0)
|
||||
};
|
||||
];
|
||||
|
||||
public IEnumerable<string> PaletteNames { get { yield return info.Name; } }
|
||||
}
|
||||
|
||||
@@ -23,7 +23,7 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
|
||||
[ActorReference]
|
||||
[Desc("Actor types that should be treated as veins for adjacency.")]
|
||||
public readonly HashSet<string> VeinholeActors = new();
|
||||
public readonly HashSet<string> VeinholeActors = [];
|
||||
|
||||
public override object Create(ActorInitializer init) { return new TSEditorResourceLayer(init.Self, this); }
|
||||
}
|
||||
|
||||
@@ -25,7 +25,7 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
|
||||
[ActorReference]
|
||||
[Desc("Actor types that should be treated as veins for adjacency.")]
|
||||
public readonly HashSet<string> VeinholeActors = new();
|
||||
public readonly HashSet<string> VeinholeActors = [];
|
||||
|
||||
public override object Create(ActorInitializer init) { return new TSResourceLayer(init.Self, this); }
|
||||
}
|
||||
@@ -33,7 +33,7 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
sealed class TSResourceLayer : ResourceLayer, INotifyActorDisposing
|
||||
{
|
||||
readonly TSResourceLayerInfo info;
|
||||
readonly HashSet<CPos> veinholeCells = new();
|
||||
readonly HashSet<CPos> veinholeCells = [];
|
||||
|
||||
public TSResourceLayer(Actor self, TSResourceLayerInfo info)
|
||||
: base(self, info)
|
||||
|
||||
@@ -22,16 +22,16 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
public class TSTiberiumRendererInfo : ResourceRendererInfo
|
||||
{
|
||||
[Desc("Sequences to use for ramp type 1.", "Dictionary of [resource type]: [list of sequences].")]
|
||||
public readonly Dictionary<string, string[]> Ramp1Sequences = new();
|
||||
public readonly Dictionary<string, string[]> Ramp1Sequences = [];
|
||||
|
||||
[Desc("Sequences to use for ramp type 2.", "Dictionary of [resource type]: [list of sequences].")]
|
||||
public readonly Dictionary<string, string[]> Ramp2Sequences = new();
|
||||
public readonly Dictionary<string, string[]> Ramp2Sequences = [];
|
||||
|
||||
[Desc("Sequences to use for ramp type 3.", "Dictionary of [resource type]: [list of sequences].")]
|
||||
public readonly Dictionary<string, string[]> Ramp3Sequences = new();
|
||||
public readonly Dictionary<string, string[]> Ramp3Sequences = [];
|
||||
|
||||
[Desc("Sequences to use for ramp type 4.", "Dictionary of [resource type]: [list of sequences].")]
|
||||
public readonly Dictionary<string, string[]> Ramp4Sequences = new();
|
||||
public readonly Dictionary<string, string[]> Ramp4Sequences = [];
|
||||
|
||||
public override object Create(ActorInitializer init) { return new TSTiberiumRenderer(init.Self, this); }
|
||||
}
|
||||
@@ -40,10 +40,10 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
{
|
||||
readonly TSTiberiumRendererInfo info;
|
||||
readonly World world;
|
||||
readonly Dictionary<string, Dictionary<string, ISpriteSequence>> ramp1Variants = new();
|
||||
readonly Dictionary<string, Dictionary<string, ISpriteSequence>> ramp2Variants = new();
|
||||
readonly Dictionary<string, Dictionary<string, ISpriteSequence>> ramp3Variants = new();
|
||||
readonly Dictionary<string, Dictionary<string, ISpriteSequence>> ramp4Variants = new();
|
||||
readonly Dictionary<string, Dictionary<string, ISpriteSequence>> ramp1Variants = [];
|
||||
readonly Dictionary<string, Dictionary<string, ISpriteSequence>> ramp2Variants = [];
|
||||
readonly Dictionary<string, Dictionary<string, ISpriteSequence>> ramp3Variants = [];
|
||||
readonly Dictionary<string, Dictionary<string, ISpriteSequence>> ramp4Variants = [];
|
||||
|
||||
public TSTiberiumRenderer(Actor self, TSTiberiumRendererInfo info)
|
||||
: base(self, info)
|
||||
|
||||
@@ -45,7 +45,7 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
|
||||
[ActorReference]
|
||||
[Desc("Actor types that should be treated as veins for adjacency.")]
|
||||
public readonly HashSet<string> VeinholeActors = new();
|
||||
public readonly HashSet<string> VeinholeActors = [];
|
||||
|
||||
void IMapPreviewSignatureInfo.PopulateMapPreviewSignatureCells(Map map, ActorInfo ai, ActorReference s, List<(MPos Uv, Color Color)> destinationBuffer)
|
||||
{
|
||||
@@ -140,21 +140,21 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
{ Adjacency.MinusX | Adjacency.PlusX | Adjacency.MinusY | Adjacency.PlusY, new[] { 45, 46, 47 } },
|
||||
};
|
||||
|
||||
static readonly int[] HeavyIndices = { 48, 49, 50, 51 };
|
||||
static readonly int[] LightIndices = { 52 };
|
||||
static readonly int[] Ramp1Indices = { 53, 54 };
|
||||
static readonly int[] Ramp2Indices = { 55, 56 };
|
||||
static readonly int[] Ramp3Indices = { 57, 58 };
|
||||
static readonly int[] Ramp4Indices = { 59, 60 };
|
||||
static readonly int[] HeavyIndices = [48, 49, 50, 51];
|
||||
static readonly int[] LightIndices = [52];
|
||||
static readonly int[] Ramp1Indices = [53, 54];
|
||||
static readonly int[] Ramp2Indices = [55, 56];
|
||||
static readonly int[] Ramp3Indices = [57, 58];
|
||||
static readonly int[] Ramp4Indices = [59, 60];
|
||||
|
||||
readonly TSVeinsRendererInfo info;
|
||||
readonly World world;
|
||||
readonly IResourceLayer resourceLayer;
|
||||
readonly CellLayer<int[]> renderIndices;
|
||||
readonly CellLayer<Adjacency> borders;
|
||||
readonly HashSet<CPos> dirty = new();
|
||||
readonly Queue<CPos> cleanDirty = new();
|
||||
readonly HashSet<CPos> veinholeCells = new();
|
||||
readonly HashSet<CPos> dirty = [];
|
||||
readonly Queue<CPos> cleanDirty = [];
|
||||
readonly HashSet<CPos> veinholeCells = [];
|
||||
readonly int maxDensity;
|
||||
readonly Color veinRadarColor;
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
public sealed class VoxelCache : IModelCache, INotifyActorDisposing, IDisposable
|
||||
{
|
||||
readonly VoxelLoader loader;
|
||||
readonly Dictionary<string, Dictionary<string, IModel>> models = new();
|
||||
readonly Dictionary<string, Dictionary<string, IModel>> models = [];
|
||||
|
||||
public VoxelCache(VoxelCacheInfo info, Actor self)
|
||||
{
|
||||
|
||||
@@ -61,7 +61,7 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
|
||||
// Normal vector tables from https://web.archive.org/web/20041022134721/https://www.sleipnirstuff.com/forum/viewtopic.php?t=8048
|
||||
static readonly float[] TSNormals =
|
||||
{
|
||||
[
|
||||
0.671214f, 0.198492f, -0.714194f,
|
||||
0.269643f, 0.584394f, -0.765360f,
|
||||
-0.040546f, 0.096988f, -0.994459f,
|
||||
@@ -98,10 +98,10 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
-0.596251f, 0.220132f, 0.772028f,
|
||||
-0.506455f, -0.396977f, 0.765449f,
|
||||
0.070569f, -0.478474f, 0.875262f
|
||||
};
|
||||
];
|
||||
|
||||
static readonly float[] RA2Normals =
|
||||
{
|
||||
[
|
||||
0.526578f, -0.359621f, -0.770317f,
|
||||
0.150482f, 0.435984f, 0.887284f,
|
||||
0.414195f, 0.738255f, -0.532374f,
|
||||
@@ -346,6 +346,6 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
-0.328188f, 0.140251f, 0.934143f,
|
||||
-0.328188f, 0.140251f, 0.934143f,
|
||||
-0.328188f, 0.140251f, 0.934143f
|
||||
};
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,10 +29,10 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
public readonly HashSet<string> Types = null;
|
||||
|
||||
[Desc("The percentage of resource cells to play the animation on.", "Use two values to randomize between them.")]
|
||||
public readonly int[] Ratio = { 1, 10 };
|
||||
public readonly int[] Ratio = [1, 10];
|
||||
|
||||
[Desc("Tick interval between two animation spawning.", "Use two values to randomize between them.")]
|
||||
public readonly int[] Interval = { 200, 500 };
|
||||
public readonly int[] Interval = [200, 500];
|
||||
|
||||
[FieldLoader.Require]
|
||||
[Desc("Animation image.")]
|
||||
@@ -40,7 +40,7 @@ namespace OpenRA.Mods.Cnc.Traits
|
||||
|
||||
[SequenceReference(nameof(Image))]
|
||||
[Desc("Randomly select one of these sequences to render.")]
|
||||
public readonly string[] Sequences = new string[] { "idle" };
|
||||
public readonly string[] Sequences = ["idle"];
|
||||
|
||||
[PaletteReference]
|
||||
[Desc("Animation palette.")]
|
||||
|
||||
Reference in New Issue
Block a user