0x00440592
| 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) |
no test coverage detected