* Port some of hsfload.c * More byteswaps in hsfload.c * Finish hsfload besides cenv * hsfload fixes * Some x64 improvements * More x64 improvements * 64 bit improvements * Link in lots of files * Fix armem bug * Fix dll killing, load modeseldll * Fixes, clearing TODOs * Tons of warning/error fixes * Linux build fixes * Add -fPIC flag to fix build on x64 linux * GXSETARRAY sizes and misc fixes * More fixes * Build all RELs * Implement C_Quat functions * Fix PAL build
62 lines
2.1 KiB
C
62 lines
2.1 KiB
C
#ifndef _BOARD_SPACE_H
|
|
#define _BOARD_SPACE_H
|
|
|
|
#include "dolphin.h"
|
|
|
|
#define BOARD_SPACE_LINKMAX 4
|
|
|
|
typedef s32 (*BoardSpaceEventFunc)(void);
|
|
|
|
typedef struct board_space {
|
|
Vec pos;
|
|
u32 flag;
|
|
Vec scale;
|
|
Vec rot;
|
|
u16 type;
|
|
u16 link_cnt;
|
|
u16 link[BOARD_SPACE_LINKMAX+1];
|
|
} BoardSpace;
|
|
|
|
s32 BoardSpaceWalkExec(s32 player, s32 space);
|
|
void BoardSpaceWalkEventFuncSet(BoardSpaceEventFunc func);
|
|
void BoardSpaceWalkMiniEventFuncSet(BoardSpaceEventFunc func);
|
|
void BoardSpaceLandEventFuncSet(BoardSpaceEventFunc func);
|
|
s32 BoardSpaceWalkEventExec(void);
|
|
s32 BoardSpaceWalkMiniEventExec(void);
|
|
s32 BoardSpaceCountGet(s32 layer);
|
|
BoardSpace *BoardSpaceGet(s32 layer, s32 index);
|
|
void BoardSpaceAttrSet(s32 layer, u32 attr);
|
|
void BoardSpaceAttrReset(s32 layer, u32 attr);
|
|
u32 BoardSpaceFlagGet(s32 layer, s32 index);
|
|
void BoardSpaceTypeForce(u16 from, u16 to);
|
|
s32 BoardSpaceTypeGet(s32 layer, s32 index);
|
|
void BoardSpaceTypeSet(s32 layer, s32 index, s32 type);
|
|
s32 BoardSpacePosGet(s32 layer, s32 index, Vec *pos);
|
|
void BoardSpaceCornerPosGet(s32 index, s32 corner, Vec *pos);
|
|
s32 BoardSpaceRotGet(s32 layer, s32 index, Vec *rot);
|
|
s32 BoardSpaceFlagSearch(s32 layer, u32 flag);
|
|
s32 BoardSpaceFlagPosGet(s32 layer, u32 flag, Vec *pos);
|
|
s32 BoardSpaceLinkFlagSearch(s32 layer, s32 index, u32 flag);
|
|
s32 BoardSpaceLinkTypeListGet(s32 layer, s32 index, s32 type, s16 *list);
|
|
s32 BoardSpaceLinkTargetListGet(s32 layer, s32 target, s16 *list);
|
|
s32 BoardSpaceLinkTypeSearch(s32 layer, s32 target, u16 type);
|
|
s32 BoardSpaceLinkTransformGet(s32 flag, Vec *pos, Vec *rot, Vec *scale);
|
|
void BoardSpaceHostSet(s32 space);
|
|
void BoardSpaceHide(s32 value);
|
|
void BoardSpaceStarSetIndex(s32 index);
|
|
s32 BoardSpaceStarGetNext(void);
|
|
s32 BoardSpaceStarGetRandom(s32 excl_pos);
|
|
void BoardSpaceStarMove(void);
|
|
s32 BoardSpaceStarGet(s32 index);
|
|
s32 BoardSpaceStarGetCurr(void);
|
|
s32 BoardSpaceStarCheck(s32 index);
|
|
void BoardSpaceLandExec(s32 player, s32 space);
|
|
void BoardSpaceCameraSet(u16 mask);
|
|
s32 BoardSpaceBlockExec(s32 player, s32 space);
|
|
void BoardSpaceBlockPosSet(void);
|
|
void BoardSpaceInit(s32 data_num);
|
|
void BoardSpaceDestroy(void);
|
|
|
|
extern s16 boardSpaceStarTbl[8];
|
|
|
|
#endif
|