1#include "Game/MapObj/SimpleTimerObj.hpp"
3SimpleTimerObj::SimpleTimerObj(
const char *pName) :
MapObjActor(pName) {
12 MapObjActorUtil::setupInitInfoSimpleMapObj(&info);
13 info.setupNerve(&NrvSimpleTimerObj::SimpleTimerObjNrvTimer::sInstance);
14 initialize(rIter, info);
15 MR::getJMapInfoArg7NoInit(rIter, &mTimer);
17 MR::invalidateShadow(
this, 0);
20void SimpleTimerObj::exeTimer() {
21 if (MR::isFirstStep(
this)) {
26void SimpleTimerObj::appear() {
27 MapObjActor::appear();
29 MR::validateShadow(
this, 0);
30 setNerve(&NrvSimpleTimerObj::SimpleTimerObjNrvTimer::sInstance);
33void SimpleTimerObj::kill() {
35 MR::invalidateShadow(
this, 0);
36 MR::emitEffect(
this,
"Appear");
40void SimpleTimerObj::control() {
41 s32 curTime = mTimeLeft;
42 mTimeLeft = curTime - 1;
44 if (mTimeLeft == 120) {
45 mFlashingCtrl->start(120);
47 else if (mTimeLeft != 0) {
52SimpleTimerObj::~SimpleTimerObj() {
56namespace NrvSimpleTimerObj {
57 INIT_NERVE(SimpleTimerObjNrvTimer);
59 void SimpleTimerObjNrvTimer::execute(
Spine *pSpine)
const {
61 timer_obj->exeTimer();
virtual void init(const JMapInfoIter &)
Intializes the NameObj and can set various settings and construct necessary classes.
virtual void init(const JMapInfoIter &)
Intializes the NameObj and can set various settings and construct necessary classes.