mirror of https://github.com/OpenRCT2/OpenRCT2.git
Refactor entity paint setup
This commit is contained in:
parent
5fce6d340d
commit
e3eff3cddf
|
@ -22,6 +22,7 @@
|
||||||
#include "../../interface/Viewport.h"
|
#include "../../interface/Viewport.h"
|
||||||
#include "../../ride/RideData.h"
|
#include "../../ride/RideData.h"
|
||||||
#include "../../ride/TrackDesign.h"
|
#include "../../ride/TrackDesign.h"
|
||||||
|
#include "../../ride/Vehicle.h"
|
||||||
#include "../../ride/VehiclePaint.h"
|
#include "../../ride/VehiclePaint.h"
|
||||||
#include "../../world/Climate.h"
|
#include "../../world/Climate.h"
|
||||||
#include "../../world/MapAnimation.h"
|
#include "../../world/MapAnimation.h"
|
||||||
|
@ -112,7 +113,7 @@ void sprite_paint_setup(paint_session* session, const CoordsXY& pos)
|
||||||
switch (spr->Type)
|
switch (spr->Type)
|
||||||
{
|
{
|
||||||
case EntityType::Vehicle:
|
case EntityType::Vehicle:
|
||||||
PaintEntity(session, spr->As<Vehicle>(), image_direction);
|
spr->As<Vehicle>()->Paint(session, image_direction);
|
||||||
#ifdef __ENABLE_LIGHTFX__
|
#ifdef __ENABLE_LIGHTFX__
|
||||||
if (lightfx_for_vehicles_is_available())
|
if (lightfx_for_vehicles_is_available())
|
||||||
{
|
{
|
||||||
|
@ -122,37 +123,37 @@ void sprite_paint_setup(paint_session* session, const CoordsXY& pos)
|
||||||
break;
|
break;
|
||||||
case EntityType::Guest:
|
case EntityType::Guest:
|
||||||
case EntityType::Staff:
|
case EntityType::Staff:
|
||||||
PaintEntity(session, spr->As<Peep>(), image_direction);
|
spr->As<Peep>()->Paint(session, image_direction);
|
||||||
break;
|
break;
|
||||||
case EntityType::SteamParticle:
|
case EntityType::SteamParticle:
|
||||||
PaintEntity(session, spr->As<SteamParticle>(), image_direction);
|
spr->As<SteamParticle>()->Paint(session, image_direction);
|
||||||
break;
|
break;
|
||||||
case EntityType::MoneyEffect:
|
case EntityType::MoneyEffect:
|
||||||
PaintEntity(session, spr->As<MoneyEffect>(), image_direction);
|
spr->As<MoneyEffect>()->Paint(session, image_direction);
|
||||||
break;
|
break;
|
||||||
case EntityType::CrashedVehicleParticle:
|
case EntityType::CrashedVehicleParticle:
|
||||||
PaintEntity(session, spr->As<VehicleCrashParticle>(), image_direction);
|
spr->As<VehicleCrashParticle>()->Paint(session, image_direction);
|
||||||
break;
|
break;
|
||||||
case EntityType::ExplosionCloud:
|
case EntityType::ExplosionCloud:
|
||||||
PaintEntity(session, spr->As<ExplosionCloud>(), image_direction);
|
spr->As<ExplosionCloud>()->Paint(session, image_direction);
|
||||||
break;
|
break;
|
||||||
case EntityType::CrashSplash:
|
case EntityType::CrashSplash:
|
||||||
PaintEntity(session, spr->As<CrashSplashParticle>(), image_direction);
|
spr->As<CrashSplashParticle>()->Paint(session, image_direction);
|
||||||
break;
|
break;
|
||||||
case EntityType::ExplosionFlare:
|
case EntityType::ExplosionFlare:
|
||||||
PaintEntity(session, spr->As<ExplosionFlare>(), image_direction);
|
spr->As<ExplosionFlare>()->Paint(session, image_direction);
|
||||||
break;
|
break;
|
||||||
case EntityType::JumpingFountain:
|
case EntityType::JumpingFountain:
|
||||||
PaintEntity(session, spr->As<JumpingFountain>(), image_direction);
|
spr->As<JumpingFountain>()->Paint(session, image_direction);
|
||||||
break;
|
break;
|
||||||
case EntityType::Balloon:
|
case EntityType::Balloon:
|
||||||
PaintEntity(session, spr->As<Balloon>(), image_direction);
|
spr->As<Balloon>()->Paint(session, image_direction);
|
||||||
break;
|
break;
|
||||||
case EntityType::Duck:
|
case EntityType::Duck:
|
||||||
PaintEntity(session, spr->As<Duck>(), image_direction);
|
spr->As<Duck>()->Paint(session, image_direction);
|
||||||
break;
|
break;
|
||||||
case EntityType::Litter:
|
case EntityType::Litter:
|
||||||
PaintEntity(session, spr->As<Litter>(), image_direction);
|
spr->As<Litter>()->Paint(session, image_direction);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
assert(false);
|
assert(false);
|
||||||
|
|
|
@ -15,7 +15,3 @@ struct paint_session;
|
||||||
struct CoordsXY;
|
struct CoordsXY;
|
||||||
|
|
||||||
void sprite_paint_setup(paint_session* session, const CoordsXY& pos);
|
void sprite_paint_setup(paint_session* session, const CoordsXY& pos);
|
||||||
|
|
||||||
template<typename T> void PaintEntity(paint_session* session, const T* entity, int32_t imageDirection);
|
|
||||||
|
|
||||||
extern const uint32_t vehicle_particle_base_sprites[5];
|
|
||||||
|
|
Loading…
Reference in New Issue