Mirai's Miscellaneous Misadventures
M47 / include / mimimi-chapters.h
#ifndef MIMIMI_CHAPTERS_H
#define MIMIMI_CHAPTERS_H
#include <mimimi.h>
struct mimimi_test_video_set
{
struct mimimi_video videos[0x40];
void *textures[0x100];
struct mimimi_image images[0x100];
unsigned char colors[0x100000];
};
struct mimimi_test_sprite
{
struct mimimi_sprite sprite;
struct mimimi_model *model;
struct mimimi_appearance appearance;
struct mimimi_test_video_set left, right;
struct mimimi_display display;
};
struct mimimi_test
{
struct mimimi_engine *engine;
struct mimimi_test_sprite mango;
struct mimimi_test_sprite pepper;
struct mimimi_history history;
struct mimimi_position camera;
struct mimimi_background background;
struct mimimi_image background_image;
unsigned char background_colors[0x200000];
struct mimimi_collision collision;
struct mimimi_position *collision_positions[2];
};
void mimimi_test_tick(void *chapter, unsigned char left, unsigned char right);
void mimimi_test(void *chapter, struct mimimi_engine *engine);
struct mimimi_chapter_I
{
struct mimimi_engine *engine;
struct mimimi_test_sprite player;
struct mimimi_history history;
struct mimimi_position origin;
struct mimimi_position camera;
struct mimimi_clamped_camera clamped_camera;
struct mimimi_background background;
struct mimimi_image background_image;
unsigned char background_colors[0x400000];
struct mimimi_image custom_background;
unsigned char colors[0x40000];
struct mimimi_background foreground;
struct mimimi_image foreground_image;
int progression;
struct mimimi_toast_dialogue dialogue;
struct mimimi_offset offset;
struct mimimi_momentum momentum;
struct mimimi_platform platforms[24];
unsigned char platform_colors[1024];
struct mimimi_image platform_image;
};
void mimimi_chapter_I_tick(void *chapter, unsigned char left, unsigned char right);
void mimimi_chapter_I(void *chapter, struct mimimi_engine *engine);
struct mimimi_loader_data
{
struct mimimi_engine *engine;
int previous_direction;
int x;
unsigned char colors[0x100000];
struct mimimi_image images[0x10];
void *textures[0x10];
void *background;
struct mimimi_image background_image;
};
union mimimi_loader_chapter
{
struct mimimi_loader_data data;
struct mimimi_test test;
struct mimimi_chapter_I chapter_I;
};
struct mimimi_loader
{
union mimimi_loader_chapter chapter;
int index;
unsigned char started;
};
void mimimi_loader_tick(void *chapter, unsigned char left, unsigned char right);
void mimimi_loader(void *chapter, struct mimimi_engine *engine);
#endif