Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
rubberduckycooly
GitHub Repository: rubberduckycooly/Sonic-Mania-Decompilation
Path: blob/master/SonicMania/Objects/Menu/UICarousel.h
338 views
1
#ifndef OBJ_UICAROUSEL_H
2
#define OBJ_UICAROUSEL_H
3
4
#include "Game.h"
5
6
#if MANIA_USE_PLUS
7
// Object Class
8
struct ObjectUICarousel {
9
RSDK_OBJECT
10
uint16 aniFrames; // both of these aren't used, and are thus prolly editor-only
11
Animator animator; // both of these aren't used, and are thus prolly editor-only
12
};
13
14
// Entity Class
15
struct EntityUICarousel {
16
RSDK_ENTITY
17
Vector2 shift;
18
Vector2 clipSize;
19
Vector2 clipOffset;
20
int32 unused1;
21
int32 unused2;
22
int32 unused3;
23
Entity *unused4;
24
int32 unused5;
25
int32 scrollOffset;
26
int32 virtualIndex;
27
int32 unused6;
28
Vector2 startPos;
29
int32 buttonID;
30
int32 minOffset;
31
int32 maxOffset;
32
Vector2 offset;
33
EntityUIControl *parent;
34
};
35
36
// Object Struct
37
extern ObjectUICarousel *UICarousel;
38
39
// Standard Entity Events
40
void UICarousel_Update(void);
41
void UICarousel_LateUpdate(void);
42
void UICarousel_StaticUpdate(void);
43
void UICarousel_Draw(void);
44
void UICarousel_Create(void *data);
45
void UICarousel_StageLoad(void);
46
#if GAME_INCLUDE_EDITOR
47
void UICarousel_EditorDraw(void);
48
void UICarousel_EditorLoad(void);
49
#endif
50
void UICarousel_Serialize(void);
51
52
// Extra Entity Functions
53
void UICarousel_HandleScrolling(void);
54
void UICarousel_HandleButtonPositions(void);
55
56
#endif
57
58
#endif //! OBJ_UICAROUSEL_H
59
60