1#include "Amiibo/HelpAmiiboInvincibleAttack.h"
2
3#include "Library/LiveActor/ActorFlagFunction.h"
4#include "Library/LiveActor/ActorInitUtil.h"
5#include "Library/LiveActor/ActorMovementFunction.h"
6#include "Library/LiveActor/ActorPoseUtil.h"
7#include "Library/Nfp/NfpFunction.h"
8#include "Library/Se/SeFunction.h"
9
10#include "Amiibo/HelpAmiiboDirector.h"
11#include "Amiibo/ItemAmiiboKoopa.h"
12
13HelpAmiiboInvincibleAttack::HelpAmiiboInvincibleAttack(HelpAmiiboDirector* director,
14 al::LiveActor* actor)
15 : HelpAmiiboExecutor(director, actor, "無敵攻撃お助け") {}
16
17void HelpAmiiboInvincibleAttack::initAfterPlacement(const al::ActorInitInfo& initInfo) {
18 HelpAmiiboExecutor::initAfterPlacement(initInfo);
19 mItemAmiiboKoopa = new ItemAmiiboKoopa("クッパamiibo");
20 al::initCreateActorNoPlacementInfo(actor: mItemAmiiboKoopa, initInfo);
21}
22
23bool HelpAmiiboInvincibleAttack::isTriggerTouch(const al::NfpInfo& nfpInfo) const {
24 return al::isCharacterIdBaseKoopa(nfpInfo);
25}
26
27void HelpAmiiboInvincibleAttack::activate() {
28 HelpAmiiboExecutor::activate();
29 al::resetPosition(actor: mItemAmiiboKoopa, trans: al::getTrans(actor: getActor()));
30 mItemAmiiboKoopa->appear();
31 al::startSe(getDirector(), "AmiiboKoopa");
32}
33
34bool HelpAmiiboInvincibleAttack::execute() {
35 return al::isDead(actor: mItemAmiiboKoopa);
36}
37