SuperMarioOdysseyOnline/include/layouts/HideAndSeekIcon.h

36 lines
800 B
C++

#pragma once
#include "al/layout/LayoutActor.h"
#include "al/layout/LayoutInitInfo.h"
#include "al/util/NerveUtil.h"
#include "logger.hpp"
#include "server/gamemode/GameModeTimer.hpp"
// TODO: kill layout if going through loading zone or paused
class HideAndSeekIcon : public al::LayoutActor {
public:
HideAndSeekIcon(const char* name, const al::LayoutInitInfo& initInfo);
void appear() override;
bool tryStart();
bool tryEnd();
void showHiding();
void showSeeking();
void exeAppear();
void exeWait();
void exeEnd();
private:
struct HideAndSeekInfo *mInfo;
};
namespace {
NERVE_HEADER(HideAndSeekIcon, Appear)
NERVE_HEADER(HideAndSeekIcon, Wait)
NERVE_HEADER(HideAndSeekIcon, End)
}