53 lines
1.8 KiB
C
53 lines
1.8 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;
|
|
|
|
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);
|
|
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 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 BoardSpaceBlockPosSet(void);
|
|
|
|
#endif
|