Mirai's Miscellaneous Misadventures
M28 / include / mimimi / controls.h
1
2
3
4#ifndef MIMIMI_CONTROLS_H
5#define MIMIMI_CONTROLS_H
6
7struct mimimi_behavior;
8struct mimimi_chapter;
9struct mimimi_walk;
10struct mimimi_allocator;
11struct mimimi_physics;
12struct mimimi_position;
13
14struct mimimi_history
15{
16 unsigned int left:16, right:16;
17};
18
19struct mimimi_controls
20{
21 struct mimimi_behavior *jump;
22};
23
24struct mimimi_jump
25{
26 int strength;
27};
28
29struct mimimi_dash
30{
31 int x_strength;
32 int y_strength;
33};
34
35struct mimimi_behavior *mimimi_history(struct mimimi_history *history, struct mimimi_chapter *chapter, struct mimimi_allocator *allocator);
36
37struct mimimi_behavior *mimimi_controls(struct mimimi_controls *controls, struct mimimi_walk *walk, struct mimimi_history *history, struct mimimi_allocator *allocator);
38
39struct mimimi_behavior *mimimi_jump(struct mimimi_jump *jump, struct mimimi_physics *physics, struct mimimi_allocator *allocator);
40
41struct mimimi_behavior *mimimi_dash(struct mimimi_dash *dash, struct mimimi_physics *physics, struct mimimi_walk *walk, struct mimimi_allocator *allocator);
42
43struct mimimi_behavior *mimimi_stationary(int *direction, int *position, int *target, struct mimimi_allocator *allocator);
44
45#endif