From 686e15fd1afe4e1447ba1256da7fed4fea5e5b13 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=CE=B6eh=20Matt?= <5415177+ZehMatt@users.noreply.github.com> Date: Sat, 27 Nov 2021 15:43:39 +0200 Subject: [PATCH] Move painting for SteamParticle entity --- src/openrct2/entity/Particle.cpp | 5 ++++- src/openrct2/entity/Particle.h | 2 +- src/openrct2/paint/sprite/Paint.Misc.cpp | 6 ------ 3 files changed, 5 insertions(+), 8 deletions(-) diff --git a/src/openrct2/entity/Particle.cpp b/src/openrct2/entity/Particle.cpp index b6da3d7df3..dec2e10267 100644 --- a/src/openrct2/entity/Particle.cpp +++ b/src/openrct2/entity/Particle.cpp @@ -257,8 +257,11 @@ void SteamParticle::Serialise(DataSerialiser& stream) stream << time_to_move; } -void SteamParticle::Paint() const +void SteamParticle::Paint(paint_session* session, int32_t imageDirection) const { + // TODO: Create constant in sprites.h + uint32_t imageId = 22637 + (frame / 256); + PaintAddImageAsParent(session, imageId, { 0, 0, z }, { 1, 1, 0 }); } /** diff --git a/src/openrct2/entity/Particle.h b/src/openrct2/entity/Particle.h index 624065d68e..9ccfb9c594 100644 --- a/src/openrct2/entity/Particle.h +++ b/src/openrct2/entity/Particle.h @@ -74,5 +74,5 @@ struct SteamParticle : EntityBase static void Create(const CoordsXYZ& coords); void Update(); void Serialise(DataSerialiser& stream); - void Paint() const; + void Paint(paint_session* session, int32_t imageDirection) const; }; diff --git a/src/openrct2/paint/sprite/Paint.Misc.cpp b/src/openrct2/paint/sprite/Paint.Misc.cpp index 0a6ac4c7b4..b738bc703a 100644 --- a/src/openrct2/paint/sprite/Paint.Misc.cpp +++ b/src/openrct2/paint/sprite/Paint.Misc.cpp @@ -24,12 +24,6 @@ static constexpr const int8_t money_wave[] = { 0, 1, 2, 2, 3, 3, 3, 3, 2, 2, 1, 0, -1, -2, -2, -3, -3, -3, -3, -2, -2, -1, }; -template<> void PaintEntity(paint_session* session, const SteamParticle* particle, int32_t imageDirection) -{ - uint32_t imageId = 22637 + (particle->frame / 256); - PaintAddImageAsParent(session, imageId, { 0, 0, particle->z }, { 1, 1, 0 }); -} - template<> void PaintEntity(paint_session* session, const MoneyEffect* moneyEffect, int32_t imageDirection) { rct_drawpixelinfo* dpi = &session->DPI;