Path: blob/master/SonicMania/Objects/TMZ/MagnetSphere.h
338 views
#ifndef OBJ_MAGNETSPHERE_H1#define OBJ_MAGNETSPHERE_H23#include "Game.h"45// Object Class6struct ObjectMagnetSphere {7RSDK_OBJECT8Hitbox hitbox;9uint8 sphereAngle[PLAYER_COUNT];10uint8 playerAngles[PLAYER_COUNT];11TABLE(int32 angleTable[16], { 0x20, 0x20, 0x20, 0x30, 0x40, 0x50, 0x60, 0x60, 0x60, 0xA0, 0xA0, 0xB0, 0xC0, 0xD0, 0xE0, 0xE0 });12uint16 aniFrames;13uint16 sfxBumper;14uint16 sfxPlasmaBall;15};1617// Entity Class18struct EntityMagnetSphere {19RSDK_ENTITY20uint8 activePlayers;21uint8 playerTimers[PLAYER_COUNT];22Animator unusedAnimator;23Animator glassInnerAnimator;24Animator glassOuterAnimator;25Animator plasma1Animator;26Animator plasma2Animator;27Animator centerBallAnimator;28};2930// Object Struct31extern ObjectMagnetSphere *MagnetSphere;3233// Standard Entity Events34void MagnetSphere_Update(void);35void MagnetSphere_LateUpdate(void);36void MagnetSphere_StaticUpdate(void);37void MagnetSphere_Draw(void);38void MagnetSphere_Create(void *data);39void MagnetSphere_StageLoad(void);40#if GAME_INCLUDE_EDITOR41void MagnetSphere_EditorDraw(void);42void MagnetSphere_EditorLoad(void);43#endif44void MagnetSphere_Serialize(void);4546// Extra Entity Functions47void MagnetSphere_DebugSpawn(void);48void MagnetSphere_DebugDraw(void);4950void MagnetSphere_CheckPlayerCollision(void);51void MagnetSphere_MovePlayer(EntityPlayer *player, int32 playerID);5253#endif //! OBJ_MAGNETSPHERE_H545556