mirror of https://github.com/OpenRCT2/OpenRCT2.git
Update object names
This commit is contained in:
parent
b6667b5b98
commit
3864281b92
|
@ -12,69 +12,68 @@
|
|||
#include "Object.h"
|
||||
|
||||
// clang-format off
|
||||
const std::string_view MinimumRequiredObjects[] = { "rct2.surface.grass", "rct2.edge.rock" };
|
||||
const std::string_view MinimumRequiredObjects[] = { "rct2.terrain_surface.grass", "rct2.terrain_edge.rock" };
|
||||
|
||||
const std::string_view DefaultSelectedObjects[] = {
|
||||
// An initial default selection
|
||||
"rct2.scgtrees", // Scenery: Trees
|
||||
"rct2.scgshrub", // Scenery: Shrubs and Ornaments
|
||||
"rct2.scggardn", // Scenery: Gardens
|
||||
"rct2.scgfence", // Scenery: Fences and Walls
|
||||
"rct2.scgwalls", // Scenery: Walls and Roofs
|
||||
"rct2.scgpathx", // Scenery: Signs and Items for Footpaths
|
||||
"rct2.tarmac", // Footpath: Tarmac
|
||||
"rct2.twist1", // Ride: Twist
|
||||
"rct2.ptct1", // Ride: Wooden Roller Coaster (Wooden Roller Coaster Trains)
|
||||
"rct2.zldb", // Ride: Junior Roller Coaster (Ladybird Trains)
|
||||
"rct2.lfb1", // Ride: Log Flume
|
||||
"rct2.vcr", // Ride: Vintage Cars
|
||||
"rct2.mgr1", // Ride: Merry-Go-Round
|
||||
"rct2.tlt1", // Ride: Restroom
|
||||
"rct2.atm1", // Ride: Cash Machine
|
||||
"rct2.faid1", // Ride: First Aid Room
|
||||
"rct2.infok", // Ride: Information Kiosk
|
||||
"rct2.drnks", // Ride: Drinks Stall
|
||||
"rct2.cndyf", // Ride: Candyfloss Stall
|
||||
"rct2.burgb", // Ride: Burger Bar
|
||||
"rct2.balln", // Ride: Balloon Stall
|
||||
"rct2.arrt1", // Ride: Corkscrew Roller Coaster
|
||||
"rct2.rboat", // Ride: Rowing Boats
|
||||
"rct2.pkent1", // Park Entrance: Traditional Park Entrance
|
||||
"rct2.wtrcyan", // Water: Natural Water
|
||||
"rct2.scenery_group.scgtrees", // Scenery: Trees
|
||||
"rct2.scenery_group.scgshrub", // Scenery: Shrubs and Ornaments
|
||||
"rct2.scenery_group.scggardn", // Scenery: Gardens
|
||||
"rct2.scenery_group.scgfence", // Scenery: Fences and Walls
|
||||
"rct2.scenery_group.scgwalls", // Scenery: Walls and Roofs
|
||||
"rct2.scenery_group.scgpathx", // Scenery: Signs and Items for Footpaths
|
||||
"rct2.ride.twist1", // Ride: Twist
|
||||
"rct2.ride.ptct1", // Ride: Wooden Roller Coaster (Wooden Roller Coaster Trains)
|
||||
"rct2.ride.zldb", // Ride: Junior Roller Coaster (Ladybird Trains)
|
||||
"rct2.ride.lfb1", // Ride: Log Flume
|
||||
"rct2.ride.vcr", // Ride: Vintage Cars
|
||||
"rct2.ride.mgr1", // Ride: Merry-Go-Round
|
||||
"rct2.ride.tlt1", // Ride: Restroom
|
||||
"rct2.ride.atm1", // Ride: Cash Machine
|
||||
"rct2.ride.faid1", // Ride: First Aid Room
|
||||
"rct2.ride.infok", // Ride: Information Kiosk
|
||||
"rct2.ride.drnks", // Ride: Drinks Stall
|
||||
"rct2.ride.cndyf", // Ride: Candyfloss Stall
|
||||
"rct2.ride.burgb", // Ride: Burger Bar
|
||||
"rct2.ride.balln", // Ride: Balloon Stall
|
||||
"rct2.ride.arrt1", // Ride: Corkscrew Roller Coaster
|
||||
"rct2.ride.rboat", // Ride: Rowing Boats
|
||||
"rct2.park_entrance.pkent1", // Park Entrance: Traditional Park Entrance
|
||||
"rct2.water.wtrcyan", // Water: Natural Water
|
||||
|
||||
// The following are for all random map generation features to work out the box
|
||||
"rct2.scgjungl", // Jungle Theming
|
||||
"rct2.scgsnow", // Snow and Ice Theming
|
||||
"rct2.scgwater", // Water Feature Theming
|
||||
"rct2.scenery_group.scgjungl", // Jungle Theming
|
||||
"rct2.scenery_group.scgsnow", // Snow and Ice Theming
|
||||
"rct2.scenery_group.scgwater", // Water Feature Theming
|
||||
|
||||
// Surfaces
|
||||
"rct2.surface.grass",
|
||||
"rct2.surface.sand",
|
||||
"rct2.surface.dirt",
|
||||
"rct2.surface.rock",
|
||||
"rct2.surface.martian",
|
||||
"rct2.surface.chequerboard",
|
||||
"rct2.surface.grassclumps",
|
||||
"rct2.surface.ice",
|
||||
"rct2.surface.gridred",
|
||||
"rct2.surface.gridyellow",
|
||||
"rct2.surface.gridpurple",
|
||||
"rct2.surface.gridgreen",
|
||||
"rct2.surface.sandred",
|
||||
"rct2.surface.sandbrown",
|
||||
"rct2.terrain_surface.grass",
|
||||
"rct2.terrain_surface.sand",
|
||||
"rct2.terrain_surface.dirt",
|
||||
"rct2.terrain_surface.rock",
|
||||
"rct2.terrain_surface.martian",
|
||||
"rct2.terrain_surface.chequerboard",
|
||||
"rct2.terrain_surface.grass_clumps",
|
||||
"rct2.terrain_surface.ice",
|
||||
"rct2.terrain_surface.grid_red",
|
||||
"rct2.terrain_surface.grid_yellow",
|
||||
"rct2.terrain_surface.grid_purple",
|
||||
"rct2.terrain_surface.grid_green",
|
||||
"rct2.terrain_surface.sand_red",
|
||||
"rct2.terrain_surface.sand_brown",
|
||||
|
||||
// Edges
|
||||
"rct2.edge.rock",
|
||||
"rct2.edge.woodred",
|
||||
"rct2.edge.woodblack",
|
||||
"rct2.edge.ice",
|
||||
"rct2.terrain_edge.rock",
|
||||
"rct2.terrain_edge.wood_red",
|
||||
"rct2.terrain_edge.wood_black",
|
||||
"rct2.terrain_edge.ice",
|
||||
|
||||
// Stations
|
||||
"rct2.station.plain",
|
||||
"rct2.station.wooden",
|
||||
"rct2.station.canvastent",
|
||||
"rct2.station.castlegrey",
|
||||
"rct2.station.castlebrown",
|
||||
"rct2.station.canvas_tent",
|
||||
"rct2.station.castle_grey",
|
||||
"rct2.station.castle_brown",
|
||||
"rct2.station.jungle",
|
||||
"rct2.station.log",
|
||||
"rct2.station.classical",
|
||||
|
@ -116,47 +115,65 @@ const std::string_view DefaultSelectedObjects[] = {
|
|||
"rct2.music.candy",
|
||||
|
||||
// Footpath surfaces
|
||||
"rct2.pathsurface.tarmac.brown",
|
||||
"rct2.pathsurface.space",
|
||||
"rct2.pathsurface.dirt",
|
||||
"rct2.pathsurface.crazy",
|
||||
"rct2.pathsurface.ash",
|
||||
"rct2.pathsurface.queue.blue",
|
||||
"rct2.pathsurface.queue.green",
|
||||
"rct2.pathsurface.queue.red",
|
||||
"rct2.pathsurface.queue.yellow",
|
||||
"rct2.footpath_surface.tarmac",
|
||||
"rct2.footpath_surface.tarmac_brown",
|
||||
"rct2.footpath_surface.tarmac_red",
|
||||
"rct2.footpath_surface.dirt",
|
||||
"rct2.footpath_surface.crazy_paving",
|
||||
"rct2.footpath_surface.ash",
|
||||
"rct2.footpath_surface.queue_blue",
|
||||
"rct2.footpath_surface.queue_green",
|
||||
"rct2.footpath_surface.queue_red",
|
||||
"rct2.footpath_surface.queue_yellow",
|
||||
|
||||
// Footpath railings
|
||||
"rct2.railings.bambooblack",
|
||||
"rct2.railings.bamboobrown",
|
||||
"rct2.railings.concrete",
|
||||
"rct2.railings.concretegreen",
|
||||
"rct2.railings.space",
|
||||
"rct2.railings.wood"
|
||||
"rct2.footpath_railings.bamboo_black",
|
||||
"rct2.footpath_railings.bamboo_brown",
|
||||
"rct2.footpath_railings.concrete",
|
||||
"rct2.footpath_railings.concrete_green",
|
||||
"rct2.footpath_railings.space",
|
||||
"rct2.footpath_railings.wood",
|
||||
};
|
||||
|
||||
const std::string_view DesignerSelectedObjects[] = {
|
||||
// An initial default selection + all standard footpaths + all standard stations
|
||||
"rct2.scgtrees", // Scenery: Trees
|
||||
"rct2.scgshrub", // Scenery: Shrubs and Ornaments
|
||||
"rct2.scggardn", // Scenery: Gardens
|
||||
"rct2.scgfence", // Scenery: Fences and Walls
|
||||
"rct2.scgwalls", // Scenery: Walls and Roofs
|
||||
"rct2.scgpathx", // Scenery: Signs and Items for Footpaths
|
||||
"rct2.wtrcyan", // Water: Natural Water
|
||||
"rct2.pkent1", // Park Entrance: Traditional Park Entrance
|
||||
"rct2.tarmac", // Footpath: Tarmac
|
||||
"rct2.tarmacg", // Footpath: Green Tarmac Footpath
|
||||
"rct2.tarmacb", // Footpath: Brown Tarmac Footpath
|
||||
"rct2.pathspce", // Footpath: Space Style Footpath
|
||||
"rct2.pathcrzy", // Footpath: Crazy Paving Footpath
|
||||
"rct2.pathdirt", // Footpath: Dirt Footpath
|
||||
"rct2.pathash", // Footpath: Ash Footpath
|
||||
"rct2.scenery_group.scgtrees", // Scenery: Trees
|
||||
"rct2.scenery_group.scgshrub", // Scenery: Shrubs and Ornaments
|
||||
"rct2.scenery_group.scggardn", // Scenery: Gardens
|
||||
"rct2.scenery_group.scgfence", // Scenery: Fences and Walls
|
||||
"rct2.scenery_group.scgwalls", // Scenery: Walls and Roofs
|
||||
"rct2.scenery_group.scgpathx", // Scenery: Signs and Items for Footpaths
|
||||
"rct2.water.wtrcyan", // Water: Natural Water
|
||||
"rct2.park_entrance.pkent1", // Park Entrance: Traditional Park Entrance
|
||||
"rct2.terrain_surface.grass",
|
||||
"rct2.terrain_edge.rock",
|
||||
|
||||
// Footpath surfaces
|
||||
"rct2.footpath_surface.tarmac",
|
||||
"rct2.footpath_surface.tarmac_brown",
|
||||
"rct2.footpath_surface.tarmac_red",
|
||||
"rct2.footpath_surface.dirt",
|
||||
"rct2.footpath_surface.crazy_paving",
|
||||
"rct2.footpath_surface.ash",
|
||||
"rct2.footpath_surface.queue_blue",
|
||||
"rct2.footpath_surface.queue_green",
|
||||
"rct2.footpath_surface.queue_red",
|
||||
"rct2.footpath_surface.queue_yellow",
|
||||
|
||||
// Footpath railings
|
||||
"rct2.footpath_railings.bamboo_black",
|
||||
"rct2.footpath_railings.bamboo_brown",
|
||||
"rct2.footpath_railings.concrete",
|
||||
"rct2.footpath_railings.concrete_green",
|
||||
"rct2.footpath_railings.space",
|
||||
"rct2.footpath_railings.wood",
|
||||
|
||||
// Stations
|
||||
"rct2.station.plain",
|
||||
"rct2.station.wooden",
|
||||
"rct2.station.canvastent",
|
||||
"rct2.station.castlegrey",
|
||||
"rct2.station.castlebrown",
|
||||
"rct2.station.canvas_tent",
|
||||
"rct2.station.castle_grey",
|
||||
"rct2.station.castle_brown",
|
||||
"rct2.station.jungle",
|
||||
"rct2.station.log",
|
||||
"rct2.station.classical",
|
||||
|
|
|
@ -13,4 +13,4 @@
|
|||
|
||||
extern const std::string_view MinimumRequiredObjects[2];
|
||||
extern const std::string_view DefaultSelectedObjects[103];
|
||||
extern const std::string_view DesignerSelectedObjects[27];
|
||||
extern const std::string_view DesignerSelectedObjects[38];
|
||||
|
|
|
@ -159,12 +159,12 @@ std::string Object::GetString(int32_t language, ObjectStringID index) const
|
|||
|
||||
ObjectEntryDescriptor Object::GetScgWallsHeader() const
|
||||
{
|
||||
return ObjectEntryDescriptor("rct2.scgwalls");
|
||||
return ObjectEntryDescriptor("rct2.scenery_group.scgwalls");
|
||||
}
|
||||
|
||||
ObjectEntryDescriptor Object::GetScgPathXHeader() const
|
||||
{
|
||||
return ObjectEntryDescriptor("rct2.scgpathx");
|
||||
return ObjectEntryDescriptor("rct2.scenery_group.scgpathx");
|
||||
}
|
||||
|
||||
rct_object_entry Object::CreateHeader(const char name[DAT_NAME_LENGTH + 1], uint32_t flags, uint32_t checksum)
|
||||
|
|
|
@ -210,17 +210,17 @@ void SmallSceneryObject::PerformFixes()
|
|||
|
||||
ObjectEntryDescriptor SmallSceneryObject::GetScgPiratHeader() const
|
||||
{
|
||||
return ObjectEntryDescriptor("rct2.scgpirat");
|
||||
return ObjectEntryDescriptor("rct2.scenery_group.scgpirat");
|
||||
}
|
||||
|
||||
ObjectEntryDescriptor SmallSceneryObject::GetScgMineHeader() const
|
||||
{
|
||||
return ObjectEntryDescriptor("rct2.scgpirat");
|
||||
return ObjectEntryDescriptor("rct2.scenery_group.scgpirat");
|
||||
}
|
||||
|
||||
ObjectEntryDescriptor SmallSceneryObject::GetScgAbstrHeader() const
|
||||
{
|
||||
return ObjectEntryDescriptor("rct2.scgabstr");
|
||||
return ObjectEntryDescriptor("rct2.scenery_group.scgabstr");
|
||||
}
|
||||
|
||||
void SmallSceneryObject::ReadJson(IReadObjectContext* context, json_t& root)
|
||||
|
|
|
@ -407,39 +407,42 @@ private:
|
|||
{
|
||||
// Add default scenery groups
|
||||
_sceneryGroupEntries.AddRange({
|
||||
"rct2.scgtrees",
|
||||
"rct2.scgshrub",
|
||||
"rct2.scggardn",
|
||||
"rct2.scgfence",
|
||||
"rct2.scgwalls",
|
||||
"rct2.scgpathx",
|
||||
"rct2.scenery_group.scgtrees",
|
||||
"rct2.scenery_group.scgshrub",
|
||||
"rct2.scenery_group.scggardn",
|
||||
"rct2.scenery_group.scgfence",
|
||||
"rct2.scenery_group.scgwalls",
|
||||
"rct2.scenery_group.scgpathx",
|
||||
});
|
||||
|
||||
// Add default footpaths
|
||||
_footpathSurfaceEntries.AddRange(
|
||||
{ "rct1.pathsurface.tarmac", "rct1.pathsurface.dirt", "rct1.pathsurface.crazy", "rct1.pathsurface.tile.brown",
|
||||
"rct1.aa.pathsurface.ash", "rct1.aa.pathsurface.tarmac.green", "rct1.aa.pathsurface.tarmac.brown",
|
||||
"rct1.aa.pathsurface.tile.grey", "rct1.aa.pathsurface.space", "rct1.ll.pathsurface.tile.green",
|
||||
"rct1.ll.pathsurface.tile.red", "rct1.pathsurface.queue.blue", "rct1.aa.pathsurface.queue.red",
|
||||
"rct1.aa.pathsurface.queue.yellow", "rct1.aa.pathsurface.queue.green" });
|
||||
{ "rct1.footpath_surface.tarmac", "rct1.footpath_surface.dirt", "rct1.footpath_surface.crazy_paving",
|
||||
"rct1.footpath_surface.tiles_brown", "rct1aa.footpath_surface.ash", "rct1aa.footpath_surface.tarmac_green",
|
||||
"rct1aa.footpath_surface.tarmac_brown", "rct1aa.footpath_surface.tiles_grey",
|
||||
"rct1aa.footpath_surface.tarmac_red", "rct1ll.footpath_surface.tiles_green", "rct1ll.footpath_surface.tiles_red",
|
||||
"rct1.footpath_surface.queue_blue", "rct1aa.footpath_surface.queue_red", "rct1aa.footpath_surface.queue_yellow",
|
||||
"rct1aa.footpath_surface.queue_green" });
|
||||
|
||||
_footpathRailingsEntries.AddRange(
|
||||
{ "rct2.railings.wood", "rct1.ll.railings.space", "rct1.ll.railings.bamboo", "rct2.railings.concrete" });
|
||||
_footpathRailingsEntries.AddRange({ "rct2.footpath_railings.wood", "rct1ll.footpath_railings.space",
|
||||
"rct1ll.footpath_railings.bamboo", "rct2.footpath_railings.concrete" });
|
||||
|
||||
// Add default surfaces
|
||||
_terrainSurfaceEntries.AddRange({ "rct2.surface.grass", "rct2.surface.sand", "rct2.surface.dirt", "rct2.surface.rock",
|
||||
"rct2.surface.martian", "rct2.surface.chequerboard", "rct2.surface.grassclumps",
|
||||
"rct2.surface.ice", "rct2.surface.gridred", "rct2.surface.gridyellow",
|
||||
"rct2.surface.gridpurple", "rct2.surface.gridgreen", "rct2.surface.sandred",
|
||||
"rct2.surface.sandbrown", "rct1.aa.surface.roofred", "rct1.ll.surface.roofgrey",
|
||||
"rct1.ll.surface.rust", "rct1.ll.surface.wood" });
|
||||
_terrainSurfaceEntries.AddRange(
|
||||
{ "rct2.terrain_surface.grass", "rct2.terrain_surface.sand", "rct2.terrain_surface.dirt",
|
||||
"rct2.terrain_surface.rock", "rct2.terrain_surface.martian", "rct2.terrain_surface.chequerboard",
|
||||
"rct2.terrain_surface.grass_clumps", "rct2.terrain_surface.ice", "rct2.terrain_surface.grid_red",
|
||||
"rct2.terrain_surface.grid_yellow", "rct2.terrain_surface.grid_purple", "rct2.terrain_surface.grid_green",
|
||||
"rct2.terrain_surface.sand_red", "rct2.terrain_surface.sand_brown", "rct1aa.terrain_surface.roof_red",
|
||||
"rct1ll.terrain_surface.roof_grey", "rct1ll.terrain_surface.rust", "rct1ll.terrain_surface.wood" });
|
||||
|
||||
// Add default edges
|
||||
_terrainEdgeEntries.AddRange({ "rct2.edge.rock", "rct2.edge.woodred", "rct2.edge.woodblack", "rct2.edge.ice",
|
||||
"rct1.edge.brick", "rct1.edge.iron", "rct1.aa.edge.grey", "rct1.aa.edge.yellow",
|
||||
"rct1.aa.edge.red", "rct1.ll.edge.purple", "rct1.ll.edge.green",
|
||||
"rct1.ll.edge.stonebrown", "rct1.ll.edge.stonegrey", "rct1.ll.edge.skyscrapera",
|
||||
"rct1.ll.edge.skyscraperb" });
|
||||
_terrainEdgeEntries.AddRange({ "rct2.terrain_edge.rock", "rct2.terrain_edge.wood_red", "rct2.terrain_edge.wood_black",
|
||||
"rct2.terrain_edge.ice", "rct1.terrain_edge.brick", "rct1.terrain_edge.iron",
|
||||
"rct1aa.terrain_edge.grey", "rct1aa.terrain_edge.yellow", "rct1aa.terrain_edge.red",
|
||||
"rct1ll.terrain_edge.purple", "rct1ll.terrain_edge.green",
|
||||
"rct1ll.terrain_edge.stone_brown", "rct1ll.terrain_edge.stone_grey",
|
||||
"rct1ll.terrain_edge.skyscraper_a", "rct1ll.terrain_edge.skyscraper_b" });
|
||||
}
|
||||
|
||||
void AddAvailableEntriesFromResearchList()
|
||||
|
@ -599,6 +602,10 @@ private:
|
|||
break;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
log_error("Cannot find object %s", objectName);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1483,17 +1490,17 @@ private:
|
|||
AppendRequiredObjects(
|
||||
result, ObjectType::Banners,
|
||||
std::vector<std::string>({
|
||||
"rct2.bn1",
|
||||
"rct2.bn2",
|
||||
"rct2.bn3",
|
||||
"rct2.bn4",
|
||||
"rct2.bn5",
|
||||
"rct2.bn6",
|
||||
"rct2.bn7",
|
||||
"rct2.bn8",
|
||||
"rct2.bn9",
|
||||
"rct2.footpath_banner.bn1",
|
||||
"rct2.footpath_banner.bn2",
|
||||
"rct2.footpath_banner.bn3",
|
||||
"rct2.footpath_banner.bn4",
|
||||
"rct2.footpath_banner.bn5",
|
||||
"rct2.footpath_banner.bn6",
|
||||
"rct2.footpath_banner.bn7",
|
||||
"rct2.footpath_banner.bn8",
|
||||
"rct2.footpath_banner.bn9",
|
||||
}));
|
||||
AppendRequiredObjects(result, ObjectType::ParkEntrance, std::vector<std::string>({ "rct2.pkent1" }));
|
||||
AppendRequiredObjects(result, ObjectType::ParkEntrance, std::vector<std::string>({ "rct2.park_entrance.pkent1" }));
|
||||
AppendRequiredObjects(result, ObjectType::Water, _waterEntry);
|
||||
AppendRequiredObjects(result, ObjectType::TerrainSurface, _terrainSurfaceEntries);
|
||||
AppendRequiredObjects(result, ObjectType::TerrainEdge, _terrainEdgeEntries);
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1350,9 +1350,9 @@ RCT12TrackType OpenRCT2FlatTrackTypeToRCT12(track_type_t origTrackType)
|
|||
}
|
||||
|
||||
static constexpr std::string_view _stationStyles[] = {
|
||||
"rct2.station.plain", "rct2.station.wooden", "rct2.station.canvastent", "rct2.station.castlegrey",
|
||||
"rct2.station.castlebrown", "rct2.station.jungle", "rct2.station.log", "rct2.station.classical",
|
||||
"rct2.station.abstract", "rct2.station.snow", "rct2.station.pagoda", "rct2.station.space",
|
||||
"rct2.station.plain", "rct2.station.wooden", "rct2.station.canvas_tent", "rct2.station.castle_grey",
|
||||
"rct2.station.castle_brown", "rct2.station.jungle", "rct2.station.log", "rct2.station.classical",
|
||||
"rct2.station.abstract", "rct2.station.snow", "rct2.station.pagoda", "rct2.station.space",
|
||||
"openrct2.station.noentrance"
|
||||
};
|
||||
|
||||
|
@ -1390,41 +1390,41 @@ std::optional<uint8_t> GetStyleFromMusicIdentifier(std::string_view identifier)
|
|||
void SetDefaultRCT2TerrainObjects(ObjectList& objectList)
|
||||
{
|
||||
// Surfaces
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 0, "rct2.surface.grass");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 1, "rct2.surface.sand");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 2, "rct2.surface.dirt");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 3, "rct2.surface.rock");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 4, "rct2.surface.martian");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 5, "rct2.surface.chequerboard");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 6, "rct2.surface.grassclumps");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 7, "rct2.surface.ice");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 8, "rct2.surface.gridred");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 9, "rct2.surface.gridyellow");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 10, "rct2.surface.gridpurple");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 11, "rct2.surface.gridgreen");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 12, "rct2.surface.sandred");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 13, "rct2.surface.sandbrown");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 14, "rct1.aa.surface.roofred");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 15, "rct1.ll.surface.roofgrey");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 16, "rct1.ll.surface.rust");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 17, "rct1.ll.surface.wood");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 0, "rct2.terrain_surface.grass");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 1, "rct2.terrain_surface.sand");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 2, "rct2.terrain_surface.dirt");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 3, "rct2.terrain_surface.rock");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 4, "rct2.terrain_surface.martian");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 5, "rct2.terrain_surface.chequerboard");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 6, "rct2.terrain_surface.grass_clumps");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 7, "rct2.terrain_surface.ice");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 8, "rct2.terrain_surface.grid_red");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 9, "rct2.terrain_surface.grid_yellow");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 10, "rct2.terrain_surface.grid_purple");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 11, "rct2.terrain_surface.grid_green");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 12, "rct2.terrain_surface.sand_red");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 13, "rct2.terrain_surface.sand_brown");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 14, "rct1aa.terrain_surface.roof_red");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 15, "rct1ll.terrain_surface.roof_grey");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 16, "rct1ll.terrain_surface.rust");
|
||||
objectList.SetObject(ObjectType::TerrainSurface, 17, "rct1ll.terrain_surface.wood");
|
||||
|
||||
// Edges
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 0, "rct2.edge.rock");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 1, "rct2.edge.woodred");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 2, "rct2.edge.woodblack");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 3, "rct2.edge.ice");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 4, "rct1.edge.brick");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 5, "rct1.edge.iron");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 6, "rct1.aa.edge.grey");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 7, "rct1.aa.edge.yellow");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 8, "rct1.aa.edge.red");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 9, "rct1.ll.edge.purple");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 10, "rct1.ll.edge.green");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 11, "rct1.ll.edge.stonebrown");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 12, "rct1.ll.edge.stonegrey");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 13, "rct1.ll.edge.skyscrapera");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 14, "rct1.ll.edge.skyscraperb");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 0, "rct2.terrain_edge.rock");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 1, "rct2.terrain_edge.wood_red");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 2, "rct2.terrain_edge.wood_black");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 3, "rct2.terrain_edge.ice");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 4, "rct1.terrain_edge.brick");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 5, "rct1.terrain_edge.iron");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 6, "rct1aa.terrain_edge.grey");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 7, "rct1aa.terrain_edge.yellow");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 8, "rct1aa.terrain_edge.red");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 9, "rct1ll.terrain_edge.purple");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 10, "rct1ll.terrain_edge.green");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 11, "rct1ll.terrain_edge.stone_brown");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 12, "rct1ll.terrain_edge.stone_grey");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 13, "rct1ll.terrain_edge.skyscraper_a");
|
||||
objectList.SetObject(ObjectType::TerrainEdge, 14, "rct1ll.terrain_edge.skyscraper_b");
|
||||
}
|
||||
|
||||
void RCT12AddDefaultObjects(ObjectList& objectList)
|
||||
|
|
|
@ -166,36 +166,47 @@ RCT12TrackType OpenRCT2TrackTypeToRCT2(track_type_t origTrackType)
|
|||
|
||||
static FootpathMapping _footpathMappings[] = {
|
||||
// RCT2 mappings
|
||||
{ "PATHASH ", "rct2.pathsurface.ash", "rct2.pathsurface.queue.yellow", "rct2.railings.bambooblack" },
|
||||
{ "PATHCRZY", "rct2.pathsurface.crazy", "rct2.pathsurface.queue.yellow", "rct2.railings.concrete" },
|
||||
{ "PATHDIRT", "rct2.pathsurface.dirt", "rct2.pathsurface.queue.yellow", "rct2.railings.bamboobrown" },
|
||||
{ "PATHSPCE", "rct2.pathsurface.space", "rct2.pathsurface.queue.red", "rct2.railings.space" },
|
||||
{ "ROAD ", "rct2.pathsurface.road", "rct2.pathsurface.queue.blue", "rct2.railings.wood" },
|
||||
{ "TARMACB ", "rct2.pathsurface.tarmac.brown", "rct2.pathsurface.queue.yellow", "rct2.railings.concrete" },
|
||||
{ "TARMACG ", "rct2.pathsurface.tarmac.green", "rct2.pathsurface.queue.green", "rct2.railings.concretegreen" },
|
||||
{ "TARMAC ", "rct2.pathsurface.tarmac", "rct2.pathsurface.queue.blue", "rct2.railings.wood" },
|
||||
{ "PATHASH ", "rct2.footpath_surface.ash", "rct2.footpath_surface.queue_yellow", "rct2.footpath_railings.bamboo_black" },
|
||||
{ "PATHCRZY", "rct2.footpath_surface.crazy_paving", "rct2.footpath_surface.queue_yellow",
|
||||
"rct2.footpath_railings.concrete" },
|
||||
{ "PATHDIRT", "rct2.footpath_surface.dirt", "rct2.footpath_surface.queue_yellow", "rct2.footpath_railings.bamboo_brown" },
|
||||
{ "PATHSPCE", "rct2.footpath_surface.tarmac_red", "rct2.footpath_surface.queue_red", "rct2.footpath_railings.space" },
|
||||
{ "ROAD ", "rct2.footpath_surface.road", "rct2.footpath_surface.queue_blue", "rct2.footpath_railings.wood" },
|
||||
{ "TARMACB ", "rct2.footpath_surface.tarmac_brown", "rct2.footpath_surface.queue_yellow",
|
||||
"rct2.footpath_railings.concrete" },
|
||||
{ "TARMACG ", "rct2.footpath_surface.tarmac_green", "rct2.footpath_surface.queue_green",
|
||||
"rct2.footpath_railings.concrete_green" },
|
||||
{ "TARMAC ", "rct2.footpath_surface.tarmac", "rct2.footpath_surface.queue_blue", "rct2.footpath_railings.wood" },
|
||||
// Time Twister
|
||||
{ "1920PATH", "rct2.tt.pathsurface.pavement", "rct2.tt.pathsurface.queue.pavement", "rct2.tt.pathrailings.pavement" },
|
||||
{ "FUTRPATH", "rct2.tt.pathsurface.circuitboard", "rct2.tt.pathsurface.queue.circuitboard",
|
||||
"rct2.tt.pathrailings.circuitboard" },
|
||||
{ "FUTRPAT2", "rct2.tt.pathsurface.circuitboard", "rct2.tt.pathsurface.queue.circuitboard", "openrct2.railings.invisible" },
|
||||
{ "JURRPATH", "rct2.tt.pathsurface.rocky", "rct2.pathsurface.queue.yellow", "rct2.tt.pathrailings.rocky" },
|
||||
{ "MEDIPATH", "rct2.tt.pathsurface.medieval", "rct2.pathsurface.queue.yellow", "rct2.tt.pathrailings.medieval" },
|
||||
{ "MYTHPATH", "rct2.tt.pathsurface.mosaic", "rct2.pathsurface.queue.yellow", "rct2.tt.pathrailings.balustrade" },
|
||||
{ "RANBPATH", "rct2.tt.pathsurface.rainbow", "rct2.tt.pathsurface.queue.rainbow", "rct2.tt.pathrailings.rainbow" },
|
||||
{ "1920PATH", "rct2tt.footpath_surface.pavement", "rct2tt.footpath_surface.queue_pavement",
|
||||
"rct2tt.pathrailings.pavement" },
|
||||
{ "FUTRPATH", "rct2tt.footpath_surface.circuitboard", "rct2tt.footpath_surface.queue_circuitboard",
|
||||
"rct2tt.pathrailings.circuitboard" },
|
||||
{ "FUTRPAT2", "rct2tt.footpath_surface.circuitboard", "rct2tt.footpath_surface.queue_circuitboard",
|
||||
"openrct2.footpath_railings.invisible" },
|
||||
{ "JURRPATH", "rct2tt.footpath_surface.rocky", "rct2.footpath_surface.queue_yellow", "rct2tt.pathrailings.rocky" },
|
||||
{ "MEDIPATH", "rct2tt.footpath_surface.medieval", "rct2.footpath_surface.queue_yellow", "rct2tt.pathrailings.medieval" },
|
||||
{ "MYTHPATH", "rct2tt.footpath_surface.mosaic", "rct2.footpath_surface.queue_yellow", "rct2tt.pathrailings.balustrade" },
|
||||
{ "RANBPATH", "rct2tt.footpath_surface.rainbow", "rct2tt.footpath_surface.queue_rainbow", "rct2tt.pathrailings.rainbow" },
|
||||
|
||||
// RCT 1 mappings (for reverse lookup)
|
||||
{ "PATHASH ", "rct1.aa.pathsurface.ash", "rct1.aa.pathsurface.queue.yellow", "rct2.railings.bambooblack" },
|
||||
{ "PATHCRZY", "rct1.pathsurface.crazy", "rct1.aa.pathsurface.queue.yellow", "rct2.railings.concrete" },
|
||||
{ "PATHDIRT", "rct1.pathsurface.dirt", "rct1.aa.pathsurface.queue.yellow", "rct2.railings.bamboobrown" },
|
||||
{ "PATHSPCE", "rct1.aa.pathsurface.space", "rct1.pathsurface.queue.red", "rct1.ll.railings.space" },
|
||||
{ "TARMACB ", "rct1.aa.pathsurface.tarmac.brown", "rct1.aa.pathsurface.queue.yellow", "rct2.railings.concrete" },
|
||||
{ "TARMACG ", "rct1.aa.pathsurface.tarmac.green", "rct1.aa.pathsurface.queue.green", "rct2.railings.concretegreen" },
|
||||
{ "TARMAC ", "rct1.pathsurface.tarmac", "rct1.pathsurface.queue.blue", "rct2.railings.wood" },
|
||||
{ "PATHCRZY", "rct1.pathsurface.tile.brown", "rct1.aa.pathsurface.queue.yellow", "rct2.railings.concrete" },
|
||||
{ "PATHCRZY", "rct1.aa.pathsurface.tile.grey", "rct1.pathsurface.queue.blue", "rct2.railings.concrete" },
|
||||
{ "PATHCRZY", "rct1.ll.pathsurface.tile.red", "rct1.pathsurface.queue.red", "rct2.railings.concrete" },
|
||||
{ "PATHCRZY", "rct1.ll.pathsurface.tile.green", "rct1.aa.pathsurface.queue.green", "rct2.railings.concrete" },
|
||||
{ "PATHASH ", "rct1aa.footpath_surface.ash", "rct1aa.footpath_surface.queue_yellow",
|
||||
"rct2.footpath_railings.bamboo_black" },
|
||||
{ "PATHCRZY", "rct1.footpath_surface.crazy_paving", "rct1aa.footpath_surface.queue_yellow",
|
||||
"rct2.footpath_railings.concrete" },
|
||||
{ "PATHDIRT", "rct1.footpath_surface.dirt", "rct1aa.footpath_surface.queue_yellow", "rct2.footpath_railings.bamboo_brown" },
|
||||
{ "PATHSPCE", "rct1aa.footpath_surface.tarmac_red", "rct1.footpath_surface.queue_red", "rct1ll.footpath_railings.space" },
|
||||
{ "TARMACB ", "rct1aa.footpath_surface.tarmac_brown", "rct1aa.footpath_surface.queue_yellow",
|
||||
"rct2.footpath_railings.concrete" },
|
||||
{ "TARMACG ", "rct1aa.footpath_surface.tarmac_green", "rct1aa.footpath_surface.queue_green",
|
||||
"rct2.footpath_railings.concrete_green" },
|
||||
{ "TARMAC ", "rct1.footpath_surface.tarmac", "rct1.footpath_surface.queue_blue", "rct2.footpath_railings.wood" },
|
||||
{ "PATHCRZY", "rct1.footpath_surface.tiles_brown", "rct1aa.footpath_surface.queue_yellow",
|
||||
"rct2.footpath_railings.concrete" },
|
||||
{ "PATHCRZY", "rct1aa.footpath_surface.tiles_grey", "rct1.footpath_surface.queue_blue", "rct2.footpath_railings.concrete" },
|
||||
{ "PATHCRZY", "rct1ll.footpath_surface.tiles_red", "rct1.footpath_surface.queue_red", "rct2.footpath_railings.concrete" },
|
||||
{ "PATHCRZY", "rct1ll.footpath_surface.tiles_green", "rct1aa.footpath_surface.queue_green",
|
||||
"rct2.footpath_railings.concrete" },
|
||||
};
|
||||
|
||||
const FootpathMapping* GetFootpathSurfaceId(const ObjectEntryDescriptor& desc, bool ideallyLoaded, bool isQueue)
|
||||
|
|
|
@ -85,8 +85,9 @@ static constexpr const char* SnowTrees[] = {
|
|||
#pragma endregion
|
||||
|
||||
// Randomly chosen base terrains. We rarely want a whole map made out of chequerboard or rock.
|
||||
static constexpr const std::string_view BaseTerrain[] = { "rct2.surface.grass", "rct2.surface.sand", "rct2.surface.sandbrown",
|
||||
"rct2.surface.dirt", "rct2.surface.ice" };
|
||||
static constexpr const std::string_view BaseTerrain[] = { "rct2.terrain_surface.grass", "rct2.terrain_surface.sand",
|
||||
"rct2.terrain_surface.sand_brown", "rct2.terrain_surface.dirt",
|
||||
"rct2.terrain_surface.ice" };
|
||||
|
||||
static void mapgen_place_trees();
|
||||
static void mapgen_set_water_level(int32_t waterLevel);
|
||||
|
@ -151,12 +152,12 @@ void mapgen_generate(mapgen_settings* settings)
|
|||
if (edgeTexture.empty())
|
||||
{
|
||||
// Base edge type on surface type
|
||||
if (floorTexture == "rct2.surface.dirt")
|
||||
edgeTexture = "rct2.edge.woodred";
|
||||
else if (floorTexture == "rct2.surface.ice")
|
||||
edgeTexture = "rct2.edge.ice";
|
||||
if (floorTexture == "rct2.terrain_surface.dirt")
|
||||
edgeTexture = "rct2.terrain_edge.wood_red";
|
||||
else if (floorTexture == "rct2.terrain_surface.ice")
|
||||
edgeTexture = "rct2.terrain_edge.ice";
|
||||
else
|
||||
edgeTexture = "rct2.edge.rock";
|
||||
edgeTexture = "rct2.terrain_edge.rock";
|
||||
}
|
||||
|
||||
auto floorTextureId = object_manager_get_loaded_object_entry_index(ObjectEntryDescriptor(floorTexture));
|
||||
|
@ -203,15 +204,15 @@ void mapgen_generate(mapgen_settings* settings)
|
|||
|
||||
// Add sandy beaches
|
||||
std::string beachTexture = std::string(floorTexture);
|
||||
if (settings->floor == -1 && floorTexture == "rct2.surface.grass")
|
||||
if (settings->floor == -1 && floorTexture == "rct2.terrain_surface.grass")
|
||||
{
|
||||
switch (util_rand() % 4)
|
||||
{
|
||||
case 0:
|
||||
beachTexture = "rct2.surface.sand";
|
||||
beachTexture = "rct2.terrain_surface.sand";
|
||||
break;
|
||||
case 1:
|
||||
beachTexture = "rct2.surface.sandbrown";
|
||||
beachTexture = "rct2.terrain_surface.sand_brown";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -256,19 +257,20 @@ static void mapgen_place_tree(int32_t type, const CoordsXY& loc)
|
|||
static bool MapGenSurfaceTakesGrassTrees(const TerrainSurfaceObject& surface)
|
||||
{
|
||||
const auto& id = surface.GetIdentifier();
|
||||
return id == "rct2.surface.grass" || id == "rct2.surface.grassclumps" || id == "rct2.surface.dirt";
|
||||
return id == "rct2.terrain_surface.grass" || id == "rct2.terrain_surface.grass_clumps" || id == "rct2.terrain_surface.dirt";
|
||||
}
|
||||
|
||||
static bool MapGenSurfaceTakesSandTrees(const TerrainSurfaceObject& surface)
|
||||
{
|
||||
const auto& id = surface.GetIdentifier();
|
||||
return id == "rct2.surface.sand" || id == "rct2.surface.sandbrown" || id == "rct2.surface.sandred";
|
||||
return id == "rct2.terrain_surface.sand" || id == "rct2.terrain_surface.sand_brown"
|
||||
|| id == "rct2.terrain_surface.sand_red";
|
||||
}
|
||||
|
||||
static bool MapGenSurfaceTakesSnowTrees(const TerrainSurfaceObject& surface)
|
||||
{
|
||||
const auto& id = surface.GetIdentifier();
|
||||
return id == "rct2.surface.ice";
|
||||
return id == "rct2.terrain_surface.ice";
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in New Issue