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