1#include "Amiibo/HelpAmiiboExecutor.h"
2
3HelpAmiiboExecutor::HelpAmiiboExecutor(HelpAmiiboDirector* director, al::LiveActor* amiiboActor,
4 const char* amiiboName)
5 : mHelpAmiiboDirector(director), mHelpAmiiboActor(amiiboActor) {}
6
7void HelpAmiiboExecutor::initAfterPlacement(const al::ActorInitInfo&) {}
8
9bool HelpAmiiboExecutor::tryTouch(const al::NfpInfo& nfpInfo) {
10 if (mIsActivated || !isTriggerTouch(nfpInfo))
11 return false;
12
13 mIsTouched = true;
14 activate();
15 return true;
16}
17
18void HelpAmiiboExecutor::tryExecute() {
19 if (!mIsActivated)
20 return;
21
22 mIsTouched = false;
23 if (execute())
24 deactivate();
25}
26
27void HelpAmiiboExecutor::activate() {
28 mIsActivated = true;
29}
30
31void HelpAmiiboExecutor::deactivate() {
32 mIsActivated = false;
33}
34