MCPcopy Create free account
hub / github.com/OpenLoco/OpenLoco / paintFireballEntity

Function paintFireballEntity

src/OpenLoco/src/Paint/PaintEffectEntity.cpp:218–263  ·  view source on GitHub ↗

0x00440592

Source from the content-addressed store, hash-verified

216
217 // 0x00440592
218 static void paintFireballEntity(PaintSession& session, Fireball* particle)
219 {
220 const Gfx::RenderTarget* rt = session.getRenderTarget();
221 if (rt->zoomLevel > 2)
222 {
223 return;
224 }
225
226 static constexpr std::array<uint32_t, 31> kFireballImageIds = {
227 ImageIds::fireball_00,
228 ImageIds::fireball_01,
229 ImageIds::fireball_02,
230 ImageIds::fireball_03,
231 ImageIds::fireball_04,
232 ImageIds::fireball_05,
233 ImageIds::fireball_06,
234 ImageIds::fireball_07,
235 ImageIds::fireball_08,
236 ImageIds::fireball_09,
237 ImageIds::fireball_10,
238 ImageIds::fireball_11,
239 ImageIds::fireball_12,
240 ImageIds::fireball_13,
241 ImageIds::fireball_14,
242 ImageIds::fireball_15,
243 ImageIds::fireball_16,
244 ImageIds::fireball_17,
245 ImageIds::fireball_18,
246 ImageIds::fireball_19,
247 ImageIds::fireball_20,
248 ImageIds::fireball_21,
249 ImageIds::fireball_22,
250 ImageIds::fireball_23,
251 ImageIds::fireball_24,
252 ImageIds::fireball_25,
253 ImageIds::fireball_26,
254 ImageIds::fireball_27,
255 ImageIds::fireball_28,
256 ImageIds::fireball_29,
257 ImageIds::fireball_30
258 };
259
260 assert(static_cast<size_t>(particle->frame / 256) < kFireballImageIds.size());
261 const auto imageId = ImageId{ kFireballImageIds.at(particle->frame / 256) };
262 session.addToPlotListAsParent(imageId, { 0, 0, particle->position.z }, { 1, 1, 0 });
263 }
264
265 // 0x004404A6
266 static void paintExplosionSmokeEntity(PaintSession& session, ExplosionSmoke* particle)

Callers 1

paintEffectEntityFunction · 0.85

Calls 3

getRenderTargetMethod · 0.80
addToPlotListAsParentMethod · 0.80
sizeMethod · 0.45

Tested by

no test coverage detected