2023-03-19 14:04:48 +00:00
|
|
|
#include "th02/main/entity.hpp"
|
2022-02-20 12:59:09 +00:00
|
|
|
|
2019-11-09 15:28:27 +00:00
|
|
|
// An expanding dotted circle, shown when spawning items. Note the slight
|
|
|
|
// semantic differences to the circle_t structure.
|
|
|
|
struct item_splash_t {
|
2023-03-19 14:04:48 +00:00
|
|
|
entity_flag_t flag;
|
2022-08-15 17:15:40 +00:00
|
|
|
char time; // ZUN bloat: Expressed via the radius.
|
2019-11-09 15:28:27 +00:00
|
|
|
SPPoint center;
|
|
|
|
Subpixel radius_cur;
|
|
|
|
Subpixel radius_prev;
|
|
|
|
};
|
|
|
|
|
|
|
|
#define ITEM_SPLASH_COUNT 8
|
|
|
|
#if GAME == 5
|
2022-07-08 21:18:43 +00:00
|
|
|
#define ITEM_SPLASH_DOTS 32
|
2019-11-09 15:28:27 +00:00
|
|
|
#else
|
2022-07-08 21:18:43 +00:00
|
|
|
#define ITEM_SPLASH_DOTS 64
|
2019-11-09 15:28:27 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
extern item_splash_t item_splashes[ITEM_SPLASH_COUNT];
|
|
|
|
|
2020-08-20 19:59:45 +00:00
|
|
|
void __fastcall near item_splash_dot_render(screen_x_t x, vram_y_t vram_y);
|
2022-02-20 12:59:09 +00:00
|
|
|
void near item_splashes_init(void);
|
|
|
|
void pascal near item_splashes_add(Subpixel center_x, Subpixel center_y);
|
|
|
|
void near item_splashes_update(void);
|
|
|
|
void near item_splashes_render(void);
|