1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-15 11:03:00 +01:00

Move all TileElementBase::As...() functions to .cpp

This commit is contained in:
Gymnasiast
2024-10-03 21:54:10 +02:00
parent 01cd900a1c
commit fc33dd3dff
2 changed files with 72 additions and 56 deletions

View File

@@ -161,6 +161,55 @@ const QuarterTile QuarterTile::Rotate(uint8_t amount) const
}
}
const SurfaceElement* TileElementBase::AsSurface() const
{
return as<SurfaceElement>();
}
SurfaceElement* TileElementBase::AsSurface()
{
return as<SurfaceElement>();
}
const PathElement* TileElementBase::AsPath() const
{
return as<PathElement>();
}
PathElement* TileElementBase::AsPath()
{
return as<PathElement>();
}
const TrackElement* TileElementBase::AsTrack() const
{
return as<TrackElement>();
}
TrackElement* TileElementBase::AsTrack()
{
return as<TrackElement>();
}
const SmallSceneryElement* TileElementBase::AsSmallScenery() const
{
return as<SmallSceneryElement>();
}
SmallSceneryElement* TileElementBase::AsSmallScenery()
{
return as<SmallSceneryElement>();
}
const LargeSceneryElement* TileElementBase::AsLargeScenery() const
{
return as<LargeSceneryElement>();
}
LargeSceneryElement* TileElementBase::AsLargeScenery()
{
return as<LargeSceneryElement>();
}
const WallElement* TileElementBase::AsWall() const
{
return as<WallElement>();
}
WallElement* TileElementBase::AsWall()
{
return as<WallElement>();
}
const EntranceElement* TileElementBase::AsEntrance() const
{
return as<EntranceElement>();
@@ -170,3 +219,12 @@ EntranceElement* TileElementBase::AsEntrance()
{
return as<EntranceElement>();
}
const BannerElement* TileElementBase::AsBanner() const
{
return as<BannerElement>();
}
BannerElement* TileElementBase::AsBanner()
{
return as<BannerElement>();
}

View File

@@ -101,64 +101,22 @@ struct TileElementBase
return GetType() == TType::ElementType ? reinterpret_cast<TType*>(this) : nullptr;
}
const SurfaceElement* AsSurface() const
{
return as<SurfaceElement>();
}
SurfaceElement* AsSurface()
{
return as<SurfaceElement>();
}
const PathElement* AsPath() const
{
return as<PathElement>();
}
PathElement* AsPath()
{
return as<PathElement>();
}
const TrackElement* AsTrack() const
{
return as<TrackElement>();
}
TrackElement* AsTrack()
{
return as<TrackElement>();
}
const SmallSceneryElement* AsSmallScenery() const
{
return as<SmallSceneryElement>();
}
SmallSceneryElement* AsSmallScenery()
{
return as<SmallSceneryElement>();
}
const LargeSceneryElement* AsLargeScenery() const
{
return as<LargeSceneryElement>();
}
LargeSceneryElement* AsLargeScenery()
{
return as<LargeSceneryElement>();
}
const WallElement* AsWall() const
{
return as<WallElement>();
}
WallElement* AsWall()
{
return as<WallElement>();
}
const SurfaceElement* AsSurface() const;
SurfaceElement* AsSurface();
const PathElement* AsPath() const;
PathElement* AsPath();
const TrackElement* AsTrack() const;
TrackElement* AsTrack();
const SmallSceneryElement* AsSmallScenery() const;
SmallSceneryElement* AsSmallScenery();
const LargeSceneryElement* AsLargeScenery() const;
LargeSceneryElement* AsLargeScenery();
const WallElement* AsWall() const;
WallElement* AsWall();
const EntranceElement* AsEntrance() const;
EntranceElement* AsEntrance();
const BannerElement* AsBanner() const
{
return as<BannerElement>();
}
BannerElement* AsBanner()
{
return as<BannerElement>();
}
const BannerElement* AsBanner() const;
BannerElement* AsBanner();
};
/**