1#include <game/bases/d_cyuukan.hpp>
2#include <game/bases/d_a_player_manager.hpp>
3#include <game/bases/d_s_stage.hpp>
4#include <game/bases/d_game_com.hpp>
5#include <game/bases/d_info.hpp>
36 dInfo_c *info = dInfo_c::m_instance;
38 u8 world = dInfo_c::m_startGameInfo.mWorld1;
39 u8 course = dInfo_c::m_startGameInfo.mLevel1;
40 if (STAGE_KINOKO_HOUSE <= course && course <= STAGE_KINOKO_HOUSE_7 || course == STAGE_PEACH_CASTLE) {
46 dInfo_c::m_startGameInfo.mScreenType != 0 ||
60 if (!dGameCom::PlayerEnterCheck(idx)) {
80 setPos(daPyMng_c::getPlayerSetPos(stage->mCurrFile, nextGoto));
91 if (world == 0xff || course == 0xff) {
PLAYER_TYPE_e mCoinCollection[STAR_COIN_COUNT]
The collected star coins up until the active checkpoint.
PLAYER_TYPE_e mHitPlayer[CHECKPOINT_COUNT]
The player who has hit each checkpoint.
bool mIsKinopioInChuukan
Whether Toad was saved before hitting a checkpoint.
void courseIN()
Prepares the checkpoint manager when entering a course, clearing the active checkpoint if required.
bool isCyuukanStart(int idx, u8 world, u8 course)
Checks whether the checkpoint is active for a given world and course.
void setCyuukanData(int checkpointIndex, u8 nextGoto, s8 player, ulong ambushType)
Sets the checkpoint data after hitting it.
s8 getPlrNo(int idx) const
Gets the player who hit checkpoint idx .
mVec3_c mPlayerSetPos
Where the player should be set after respawning.
dCyuukan_c()
Creates a new checkpoint manager.
u8 mWorldNo
The world in which the active checkpoint is located.
u8 mNextGoto
The next goto of the active checkpoint.
void clear()
Clears the active checkpoint.
u8 mCourseNo
The course in which the active checkpoint is located.
bool checkEntry()
Checks whether all players who have hit any checkpoint are still active.
u32 mAmbushType
The ambush type of the current level.
int mActiveCheckpointIndex
The active checkpoint index.
u8 mFileNo
The file in which the active checkpoint is located.
bool mClearCyuukan
Clear the checkpoint data if this is true. [Used for the backdoor entrance of 7-C].
static int getPlayerIndex(PLAYER_TYPE_e)
PLAYER_TYPE_e
The identifiers for each player type.
#define CHECKPOINT_COUNT
The maximum number of checkpoints supported.