PaletteFromCurrentTheatre (pchote: amended)
This commit is contained in:
@@ -103,7 +103,7 @@ namespace OpenRA.Editor
|
|||||||
Rules.LoadRules(manifest, map);
|
Rules.LoadRules(manifest, map);
|
||||||
tileset = Rules.TileSets[map.Theater];
|
tileset = Rules.TileSets[map.Theater];
|
||||||
tileset.LoadTiles();
|
tileset.LoadTiles();
|
||||||
var palette = new Palette(FileSystem.Open(map.Theater.ToLowerInvariant() + ".pal"), true);
|
var palette = new Palette(FileSystem.Open(tileset.Palette), true);
|
||||||
|
|
||||||
surface1.Bind(map, tileset, palette);
|
surface1.Bind(map, tileset, palette);
|
||||||
|
|
||||||
|
|||||||
@@ -61,6 +61,7 @@ namespace OpenRA.FileFormats
|
|||||||
{
|
{
|
||||||
public readonly string Name;
|
public readonly string Name;
|
||||||
public readonly string Id;
|
public readonly string Id;
|
||||||
|
public readonly string Palette;
|
||||||
public readonly string[] Extensions;
|
public readonly string[] Extensions;
|
||||||
public readonly Dictionary<string, TerrainTypeInfo> Terrain = new Dictionary<string, TerrainTypeInfo>();
|
public readonly Dictionary<string, TerrainTypeInfo> Terrain = new Dictionary<string, TerrainTypeInfo>();
|
||||||
public readonly Dictionary<ushort, Terrain> Tiles = new Dictionary<ushort, Terrain>();
|
public readonly Dictionary<ushort, Terrain> Tiles = new Dictionary<ushort, Terrain>();
|
||||||
|
|||||||
@@ -204,6 +204,7 @@
|
|||||||
<Compile Include="StoresOre.cs" />
|
<Compile Include="StoresOre.cs" />
|
||||||
<Compile Include="TransformsOnDeploy.cs" />
|
<Compile Include="TransformsOnDeploy.cs" />
|
||||||
<Compile Include="Activities\TransformIntoActor.cs" />
|
<Compile Include="Activities\TransformIntoActor.cs" />
|
||||||
|
<Compile Include="PaletteFromCurrentTheatre.cs" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\OpenRA.FileFormats\OpenRA.FileFormats.csproj">
|
<ProjectReference Include="..\OpenRA.FileFormats\OpenRA.FileFormats.csproj">
|
||||||
|
|||||||
42
OpenRA.Mods.RA/PaletteFromCurrentTheatre.cs
Normal file
42
OpenRA.Mods.RA/PaletteFromCurrentTheatre.cs
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
#region Copyright & License Information
|
||||||
|
/*
|
||||||
|
* Copyright 2007,2009,2010 Chris Forbes, Robert Pepperell, Matthew Bowra-Dean, Paul Chote, Alli Witheford.
|
||||||
|
* This file is part of OpenRA.
|
||||||
|
*
|
||||||
|
* OpenRA is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* OpenRA is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with OpenRA. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
using OpenRA.FileFormats;
|
||||||
|
using OpenRA.Traits;
|
||||||
|
|
||||||
|
namespace OpenRA.Mods.RA
|
||||||
|
{
|
||||||
|
class PaletteFromCurrentTheatreInfo : ITraitInfo
|
||||||
|
{
|
||||||
|
public readonly string Name = null;
|
||||||
|
public readonly bool Transparent = true;
|
||||||
|
|
||||||
|
public object Create(ActorInitializer init) { return new PaletteFromCurrentTheatre(init.world, this); }
|
||||||
|
}
|
||||||
|
|
||||||
|
class PaletteFromCurrentTheatre
|
||||||
|
{
|
||||||
|
public PaletteFromCurrentTheatre(World world, PaletteFromCurrentTheatreInfo info)
|
||||||
|
{
|
||||||
|
world.WorldRenderer.AddPalette(info.Name,
|
||||||
|
new Palette(FileSystem.Open(world.TileSet.Palette), info.Transparent));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -51,18 +51,8 @@ World:
|
|||||||
# HazardLayer:
|
# HazardLayer:
|
||||||
BridgeLayer:
|
BridgeLayer:
|
||||||
Bridges: bridge1, bridge2, bridge3, bridge4
|
Bridges: bridge1, bridge2, bridge3, bridge4
|
||||||
PaletteFromFile@terrain_desert:
|
PaletteFromCurrentTheatre:
|
||||||
Name: terrain
|
Name: terrain
|
||||||
Theater: desert
|
|
||||||
Filename: desert.pal
|
|
||||||
PaletteFromFile@terrain_temperate:
|
|
||||||
Name: terrain
|
|
||||||
Theater: temperat
|
|
||||||
Filename: temperat.pal
|
|
||||||
PaletteFromFile@terrain_winter:
|
|
||||||
Name: terrain
|
|
||||||
Theater: winter
|
|
||||||
Filename: winter.pal
|
|
||||||
PlayerColorPalette@player0:
|
PlayerColorPalette@player0:
|
||||||
Name: player0
|
Name: player0
|
||||||
DisplayName: Gold
|
DisplayName: Gold
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ General:
|
|||||||
Name: Desert
|
Name: Desert
|
||||||
Id: DESERT
|
Id: DESERT
|
||||||
Extensions: .des, .shp, .tem
|
Extensions: .des, .shp, .tem
|
||||||
|
Palette: desert.pal
|
||||||
|
|
||||||
Terrain:
|
Terrain:
|
||||||
TerrainType@Clear:
|
TerrainType@Clear:
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ General:
|
|||||||
Name: Temperate
|
Name: Temperate
|
||||||
Id: TEMPERAT
|
Id: TEMPERAT
|
||||||
Extensions: .tem, .shp
|
Extensions: .tem, .shp
|
||||||
|
Palette: temperat.pal
|
||||||
|
|
||||||
Terrain:
|
Terrain:
|
||||||
TerrainType@Clear:
|
TerrainType@Clear:
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ General:
|
|||||||
Name: Winter
|
Name: Winter
|
||||||
Id: WINTER
|
Id: WINTER
|
||||||
Extensions: .win, .shp, .tem
|
Extensions: .win, .shp, .tem
|
||||||
|
Palette: winter.pal
|
||||||
|
|
||||||
Terrain:
|
Terrain:
|
||||||
TerrainType@Clear:
|
TerrainType@Clear:
|
||||||
|
|||||||
@@ -101,12 +101,8 @@ World:
|
|||||||
Maximum: 3
|
Maximum: 3
|
||||||
SpawnInterval: 120
|
SpawnInterval: 120
|
||||||
WaterChance: .2
|
WaterChance: .2
|
||||||
PaletteFromFile@terrain_temperat:
|
PaletteFromCurrentTheatre:
|
||||||
Name: terrain
|
Name: terrain
|
||||||
Filename: temperat.pal
|
|
||||||
PaletteFromFile@terrain_snow:
|
|
||||||
Name: snow
|
|
||||||
Filename: snow.pal
|
|
||||||
PlayerColorPalette@player0:
|
PlayerColorPalette@player0:
|
||||||
Name: player0
|
Name: player0
|
||||||
DisplayName: Gold
|
DisplayName: Gold
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ General:
|
|||||||
Name: Interior
|
Name: Interior
|
||||||
Id: INTERIOR
|
Id: INTERIOR
|
||||||
Extensions: .int, .shp, .tem
|
Extensions: .int, .shp, .tem
|
||||||
|
Palette: interior.pal
|
||||||
|
|
||||||
Terrain:
|
Terrain:
|
||||||
TerrainType@Clear:
|
TerrainType@Clear:
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ General:
|
|||||||
Name: Snow
|
Name: Snow
|
||||||
Id: SNOW
|
Id: SNOW
|
||||||
Extensions: .sno, .shp, .tem
|
Extensions: .sno, .shp, .tem
|
||||||
|
Palette: snow.pal
|
||||||
|
|
||||||
Terrain:
|
Terrain:
|
||||||
TerrainType@Clear:
|
TerrainType@Clear:
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ General:
|
|||||||
Name: Temperate
|
Name: Temperate
|
||||||
Id: TEMPERAT
|
Id: TEMPERAT
|
||||||
Extensions: .tem, .shp
|
Extensions: .tem, .shp
|
||||||
|
Palette: temperat.pal
|
||||||
|
|
||||||
Terrain:
|
Terrain:
|
||||||
TerrainType@Clear:
|
TerrainType@Clear:
|
||||||
|
|||||||
Reference in New Issue
Block a user