Replace Tileset id with Environment name.
This commit is contained in:
committed by
Gustas Kažukauskas
parent
90013bc6d3
commit
5b7a714ac2
@@ -25,6 +25,7 @@ namespace OpenRA
|
||||
public interface ITerrainInfo
|
||||
{
|
||||
string Id { get; }
|
||||
string Name { get; }
|
||||
Size TileSize { get; }
|
||||
TerrainTypeInfo[] TerrainTypes { get; }
|
||||
TerrainTileInfo GetTerrainInfo(TerrainTile r);
|
||||
|
||||
@@ -171,6 +171,7 @@ namespace OpenRA.Mods.Common.Terrain
|
||||
}
|
||||
|
||||
string ITerrainInfo.Id => Id;
|
||||
string ITerrainInfo.Name => Name;
|
||||
Size ITerrainInfo.TileSize => TileSize;
|
||||
TerrainTypeInfo[] ITerrainInfo.TerrainTypes => TerrainInfo;
|
||||
TerrainTileInfo ITerrainInfo.GetTerrainInfo(TerrainTile r) { return GetTileInfo(r); }
|
||||
|
||||
@@ -29,21 +29,23 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
||||
|
||||
panel.Get<ButtonWidget>("CANCEL_BUTTON").OnClick = () => { Ui.CloseWindow(); onExit(); };
|
||||
|
||||
var selectedTerrain = modData.DefaultTerrainInfo.Values.First();
|
||||
var tilesetDropDown = panel.Get<DropDownButtonWidget>("TILESET");
|
||||
var tilesets = modData.DefaultTerrainInfo.Keys;
|
||||
ScrollItemWidget SetupItem(string option, ScrollItemWidget template)
|
||||
ScrollItemWidget SetupItem(ITerrainInfo option, ScrollItemWidget template)
|
||||
{
|
||||
var item = ScrollItemWidget.Setup(template,
|
||||
() => tilesetDropDown.GetText() == option,
|
||||
() => tilesetDropDown.GetText = () => option);
|
||||
item.Get<LabelWidget>("LABEL").GetText = () => option;
|
||||
() => selectedTerrain == option,
|
||||
() => selectedTerrain = option);
|
||||
|
||||
var itemLabel = FluentProvider.GetMessage(option.Name);
|
||||
item.Get<LabelWidget>("LABEL").GetText = () => itemLabel;
|
||||
return item;
|
||||
}
|
||||
|
||||
var firstTileset = tilesets.First();
|
||||
tilesetDropDown.GetText = () => firstTileset;
|
||||
var label = new CachedTransform<ITerrainInfo, string>(ti => FluentProvider.GetMessage(ti.Name));
|
||||
tilesetDropDown.GetText = () => label.Update(selectedTerrain);
|
||||
tilesetDropDown.OnClick = () =>
|
||||
tilesetDropDown.ShowDropDown("LABEL_DROPDOWN_TEMPLATE", 210, tilesets, SetupItem);
|
||||
tilesetDropDown.ShowDropDown("LABEL_DROPDOWN_TEMPLATE", 210, modData.DefaultTerrainInfo.Values, SetupItem);
|
||||
|
||||
var widthTextField = panel.Get<TextFieldWidget>("WIDTH");
|
||||
var heightTextField = panel.Get<TextFieldWidget>("HEIGHT");
|
||||
@@ -59,8 +61,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
||||
height = Math.Max(2, height);
|
||||
|
||||
var maxTerrainHeight = world.Map.Grid.MaximumTerrainHeight;
|
||||
var tileset = modData.DefaultTerrainInfo[tilesetDropDown.GetText()];
|
||||
var map = new Map(Game.ModData, tileset, new Size(width + 2, height + maxTerrainHeight + 2));
|
||||
var map = new Map(Game.ModData, selectedTerrain, new Size(width + 2, height + maxTerrainHeight + 2));
|
||||
|
||||
var tl = new PPos(1, 1 + maxTerrainHeight);
|
||||
var br = new PPos(width, height + maxTerrainHeight);
|
||||
|
||||
@@ -42,7 +42,7 @@ button-text-input-prompt-accept = OK
|
||||
|
||||
## editor.yaml
|
||||
label-new-map-bg-title = New Map
|
||||
label-bg-tileset = Tileset:
|
||||
label-bg-tileset = Environment:
|
||||
label-bg-width = Width:
|
||||
label-bg-height = Height:
|
||||
button-new-map-bg-create = Create
|
||||
|
||||
@@ -38,7 +38,7 @@ label-credits-title = Credits
|
||||
|
||||
## editor.yaml
|
||||
label-new-map-bg-title = New Map
|
||||
label-new-map-bg-tileset = Tileset:
|
||||
label-new-map-bg-tileset = Environment:
|
||||
label-new-map-bg-width = Width:
|
||||
label-new-map-bg-height = Height:
|
||||
button-new-map-bg-create = Create
|
||||
|
||||
Reference in New Issue
Block a user