1#include "Enemy/PackunTrace.h"
2
3#include "Library/Base/StringUtil.h"
4#include "Library/Collision/PartsConnector.h"
5#include "Library/LiveActor/ActorActionFunction.h"
6#include "Library/LiveActor/ActorInitUtil.h"
7#include "Library/Placement/PlacementFunction.h"
8
9PackunTrace::PackunTrace(al::LiveActor* parentActor) : al::LiveActor("パックンの茎") {}
10
11void PackunTrace::init(const al::ActorInitInfo& info) {
12 const char* objectName;
13 al::getObjectName(name: &objectName, initInfo: info);
14
15 const char* archiveName = "PackunTrace";
16 if (al::isEqualString(str1: "PackunFlowerBig", str2: objectName) ||
17 al::isEqualString(str1: "PackunPoisonBig", str2: objectName))
18 archiveName = "PackunTraceBig";
19
20 al::initActorWithArchiveName(actor: this, initInfo: info, archiveName, suffix: nullptr);
21
22 mMtxConnector = al::tryCreateMtxConnector(actor: this, info);
23
24 makeActorDead();
25}
26
27void PackunTrace::initAfterPlacement() {
28 if (mMtxConnector)
29 al::attachMtxConnectorToCollision(mtxConnector: mMtxConnector, actor: this, false);
30}
31
32void PackunTrace::control() {
33 if (mMtxConnector)
34 al::connectPoseQT(actor: this, mtxConnector: mMtxConnector);
35}
36
37void PackunTrace::appear() {
38 al::LiveActor::appear();
39 al::startHitReaction(actor: this, name: "出現");
40}
41