Mirai's Miscellaneous Misadventures
M43 / include / mimimi-chapters.h
1
2
3
4#ifndef MIMIMI_CHAPTERS_H
5#define MIMIMI_CHAPTERS_H
6
7#include <mimimi.h>
8
9struct mimimi_test_video_set
10{
11 struct mimimi_video videos[0x40];
12 void *textures[0x100];
13 struct mimimi_image images[0x100];
14 unsigned char colors[0x100000];
15};
16
17struct mimimi_test_sprite
18{
19 struct mimimi_sprite sprite;
20 struct mimimi_model *model;
21 struct mimimi_appearance appearance;
22 struct mimimi_test_video_set left, right;
23 struct mimimi_display display;
24};
25
26struct mimimi_test
27{
28 struct mimimi_engine *engine;
29 struct mimimi_test_sprite mango;
30 struct mimimi_test_sprite pepper;
31 struct mimimi_history history;
32 struct mimimi_position camera;
33 struct mimimi_background background;
34 struct mimimi_image background_image;
35 unsigned char background_colors[0x200000];
36 struct mimimi_collision collision;
37 struct mimimi_position *collision_positions[2];
38};
39
40void mimimi_test_tick(void *chapter, unsigned char left, unsigned char right);
41void mimimi_test(void *chapter, struct mimimi_engine *engine);
42
43struct mimimi_chapter_I
44{
45 struct mimimi_engine *engine;
46 struct mimimi_test_sprite player;
47 struct mimimi_history history;
48 struct mimimi_position origin;
49 struct mimimi_position camera;
50 struct mimimi_clamped_camera clamped_camera;
51 struct mimimi_background background;
52 struct mimimi_image background_image;
53 unsigned char background_colors[0x30000];
54 int progression;
55 struct mimimi_toast_dialogue dialogue;
56};
57
58void mimimi_chapter_I_tick(void *chapter, unsigned char left, unsigned char right);
59void mimimi_chapter_I(void *chapter, struct mimimi_engine *engine);
60
61struct mimimi_loader_data
62{
63 struct mimimi_engine *engine;
64 int previous_direction;
65 int x;
66 unsigned char colors[0x100000];
67 struct mimimi_image images[0x10];
68 void *textures[0x10];
69 void *background;
70};
71
72union mimimi_loader_chapter
73{
74 struct mimimi_loader_data data;
75 struct mimimi_test test;
76 struct mimimi_chapter_I chapter_I;
77};
78
79struct mimimi_loader
80{
81 union mimimi_loader_chapter chapter;
82 int index;
83 unsigned char started;
84};
85
86void mimimi_loader_tick(void *chapter, unsigned char left, unsigned char right);
87void mimimi_loader(void *chapter, struct mimimi_engine *engine);
88
89#endif