Migrate tileset names to Fluent.

This commit is contained in:
Paul Chote
2025-04-27 14:28:37 +01:00
committed by Gustas Kažukauskas
parent 246a1b9fec
commit 90013bc6d3
17 changed files with 43 additions and 14 deletions

View File

@@ -231,6 +231,9 @@ namespace OpenRA.Mods.Common.Lint
static (Keys UsedKeys, List<FieldInfo> TestedFields) GetUsedFluentKeysInMod(ModData modData) static (Keys UsedKeys, List<FieldInfo> TestedFields) GetUsedFluentKeysInMod(ModData modData)
{ {
const BindingFlags ConstBinding = BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Static;
const BindingFlags InstanceBinding = BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance;
var usedKeys = GetUsedFluentKeysInRuleset(modData.DefaultRules); var usedKeys = GetUsedFluentKeysInRuleset(modData.DefaultRules);
var testedFields = new List<FieldInfo>(); var testedFields = new List<FieldInfo>();
testedFields.AddRange( testedFields.AddRange(
@@ -256,15 +259,21 @@ namespace OpenRA.Mods.Common.Lint
[resource.Value], [resource.Value],
(obj, field) => $"`ResourceRenderer.ResourceTypes.{resource.Key}.{field.Name}` in rules yaml"); (obj, field) => $"`ResourceRenderer.ResourceTypes.{resource.Key}.{field.Name}` in rules yaml");
const BindingFlags Binding = BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Static; foreach (var terrainInfo in modData.DefaultTerrainInfo.Values)
var constFields = modData.ObjectCreator.GetTypes().SelectMany(modType => modType.GetFields(Binding)).Where(f => f.IsLiteral); GetUsedFluentKeys(
usedKeys, testedFields,
terrainInfo.GetType().GetFields(InstanceBinding),
[terrainInfo],
(obj, field) => $"`{field.ReflectedType.Name}.{field.Name}`");
var constFields = modData.ObjectCreator.GetTypes().SelectMany(modType => modType.GetFields(ConstBinding)).Where(f => f.IsLiteral);
GetUsedFluentKeys( GetUsedFluentKeys(
usedKeys, testedFields, usedKeys, testedFields,
constFields, constFields,
[(object)null], [(object)null],
(obj, field) => $"`{field.ReflectedType.Name}.{field.Name}`"); (obj, field) => $"`{field.ReflectedType.Name}.{field.Name}`");
var modMetadataFields = typeof(ModMetadata).GetFields(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance); var modMetadataFields = typeof(ModMetadata).GetFields(InstanceBinding);
GetUsedFluentKeys( GetUsedFluentKeys(
usedKeys, testedFields, usedKeys, testedFields,
modMetadataFields, modMetadataFields,

View File

@@ -68,6 +68,7 @@ namespace OpenRA.Mods.Common.Terrain
public class DefaultTerrain : ITemplatedTerrainInfo, ITerrainInfoNotifyMapCreated public class DefaultTerrain : ITemplatedTerrainInfo, ITerrainInfoNotifyMapCreated
{ {
[FluentReference]
public readonly string Name; public readonly string Name;
public readonly string Id; public readonly string Id;
public readonly Size TileSize = new(24, 24); public readonly Size TileSize = new(24, 24);

View File

@@ -4,3 +4,9 @@ mod-windowtitle = OpenRA - Tiberian Dawn
## CncLoadScreen ## CncLoadScreen
loadscreen-loading = Loading loadscreen-loading = Loading
## Tilesets
tileset-desert = Desert
tileset-snow = Snow
tileset-temperat = Temperate
tileset-winter = Winter

View File

@@ -1,5 +1,5 @@
General: General:
Name: Desert Name: tileset-desert
Id: DESERT Id: DESERT
EditorTemplateOrder: Terrain, Debris, Road, Cliffs, Beach, River, Bridge EditorTemplateOrder: Terrain, Debris, Road, Cliffs, Beach, River, Bridge
HeightDebugColors: 880000 HeightDebugColors: 880000

View File

@@ -1,5 +1,5 @@
General: General:
Name: Snow Name: tileset-snow
Id: SNOW Id: SNOW
EditorTemplateOrder: Terrain, Debris, Road, Cliffs, Beach, River, Bridge EditorTemplateOrder: Terrain, Debris, Road, Cliffs, Beach, River, Bridge
HeightDebugColors: 880000 HeightDebugColors: 880000

View File

@@ -1,5 +1,5 @@
General: General:
Name: Temperate Name: tileset-temperat
Id: TEMPERAT Id: TEMPERAT
EditorTemplateOrder: Terrain, Debris, Road, Cliffs, Beach, River, Bridge EditorTemplateOrder: Terrain, Debris, Road, Cliffs, Beach, River, Bridge
HeightDebugColors: AA0000 HeightDebugColors: AA0000

View File

@@ -1,5 +1,5 @@
General: General:
Name: Winter Name: tileset-winter
Id: WINTER Id: WINTER
EditorTemplateOrder: Terrain, Debris, Road, Cliffs, Beach, River, Bridge EditorTemplateOrder: Terrain, Debris, Road, Cliffs, Beach, River, Bridge
HeightDebugColors: 880000 HeightDebugColors: 880000

View File

@@ -4,3 +4,6 @@ mod-windowtitle = OpenRA - Dune 2000
## LogoStripLoadScreen ## LogoStripLoadScreen
loadscreen-loading = Filling Crates..., Breeding Sandworms..., Fuelling carryalls..., Deploying harvesters..., Preparing thopters..., Summoning mentats... loadscreen-loading = Filling Crates..., Breeding Sandworms..., Fuelling carryalls..., Deploying harvesters..., Preparing thopters..., Summoning mentats...
## Tilesets
tileset-arrakis = Arrakis

View File

@@ -1,5 +1,5 @@
General: General:
Name: Arrakis Name: tileset-arrakis
Id: ARRAKIS Id: ARRAKIS
TileSize: 32, 32 TileSize: 32, 32
SheetSize: 1024 SheetSize: 1024

View File

@@ -4,3 +4,9 @@ mod-windowtitle = OpenRA - Red Alert
## LogoStripeLoadScreen ## LogoStripeLoadScreen
loadscreen-loading = Filling Crates..., Charging Capacitors..., Reticulating Splines..., Planting Trees..., Building Bridges..., Aging Empires..., Compiling EVA..., Constructing Pylons..., Activating Skynet..., Splitting Atoms... loadscreen-loading = Filling Crates..., Charging Capacitors..., Reticulating Splines..., Planting Trees..., Building Bridges..., Aging Empires..., Compiling EVA..., Constructing Pylons..., Activating Skynet..., Splitting Atoms...
## Tilesets
tileset-desert = Desert
tileset-snow = Snow
tileset-temperat = Temperate
tileset-interior = Interior

View File

@@ -1,5 +1,5 @@
General: General:
Name: Desert Name: tileset-desert
Id: DESERT Id: DESERT
EditorTemplateOrder: Terrain, Debris, Road, Cliffs, Water Cliffs, Beach, River, Bridge EditorTemplateOrder: Terrain, Debris, Road, Cliffs, Water Cliffs, Beach, River, Bridge
HeightDebugColors: 880000 HeightDebugColors: 880000

View File

@@ -1,5 +1,5 @@
General: General:
Name: Interior Name: tileset-interior
Id: INTERIOR Id: INTERIOR
EditorTemplateOrder: Floor, Wall EditorTemplateOrder: Floor, Wall
HeightDebugColors: 880000 HeightDebugColors: 880000

View File

@@ -1,5 +1,5 @@
General: General:
Name: Snow Name: tileset-snow
Id: SNOW Id: SNOW
EditorTemplateOrder: Terrain, Debris, Road, Cliffs, Water Cliffs, Beach, River, Bridge EditorTemplateOrder: Terrain, Debris, Road, Cliffs, Water Cliffs, Beach, River, Bridge
HeightDebugColors: 880000 HeightDebugColors: 880000

View File

@@ -1,5 +1,5 @@
General: General:
Name: Temperate Name: tileset-temperat
Id: TEMPERAT Id: TEMPERAT
SheetSize: 1024 SheetSize: 1024
EditorTemplateOrder: Terrain, Debris, Road, Cliffs, Water Cliffs, Beach, River, Bridge EditorTemplateOrder: Terrain, Debris, Road, Cliffs, Water Cliffs, Beach, River, Bridge

View File

@@ -4,3 +4,7 @@ mod-windowtitle = OpenRA - Tiberian Sun
## LogoStripeLoadScreen ## LogoStripeLoadScreen
loadscreen-loading = Updating EVA installation..., Changing perspective... loadscreen-loading = Updating EVA installation..., Changing perspective...
## Tilesets
tileset-snow = Snow
tileset-temperate = Temperate

View File

@@ -1,5 +1,5 @@
General: General:
Name: Snow Name: tileset-snow
Id: SNOW Id: SNOW
TileSize: 48, 24 TileSize: 48, 24
HeightDebugColors: 00000080, 00004480, 00008880, 0000CC80, 0000FF80, 4400CC80, 88008880, CC004480, FF110080, FF550080, FF990080, FFDD0080, DDFF0080, 99FF0080, 55FF0080, 11FF0080 HeightDebugColors: 00000080, 00004480, 00008880, 0000CC80, 0000FF80, 4400CC80, 88008880, CC004480, FF110080, FF550080, FF990080, FFDD0080, DDFF0080, 99FF0080, 55FF0080, 11FF0080

View File

@@ -1,5 +1,5 @@
General: General:
Name: Temperate Name: tileset-temperate
Id: TEMPERATE Id: TEMPERATE
TileSize: 48, 24 TileSize: 48, 24
HeightDebugColors: 00000080, 00004480, 00008880, 0000CC80, 0000FF80, 4400CC80, 88008880, CC004480, FF110080, FF550080, FF990080, FFDD0080, DDFF0080, 99FF0080, 55FF0080, 11FF0080 HeightDebugColors: 00000080, 00004480, 00008880, 0000CC80, 0000FF80, 4400CC80, 88008880, CC004480, FF110080, FF550080, FF990080, FFDD0080, DDFF0080, 99FF0080, 55FF0080, 11FF0080