1#include "Library/LiveActor/ActorFlagFunction.h"
2
3#include "Library/Collision/Collider.h"
4#include "Library/LiveActor/LiveActor.h"
5#include "Library/LiveActor/LiveActorFlag.h"
6#include "Library/Shadow/ShadowKeeper.h"
7#include "Library/Shadow/ShadowMaskCtrl.h"
8
9namespace al {
10bool isAlive(const LiveActor* actor) {
11 return !actor->getFlags()->isDead;
12}
13
14bool isDead(const LiveActor* actor) {
15 return actor->getFlags()->isDead;
16}
17
18bool isNoCollide(const LiveActor* actor) {
19 return actor->getFlags()->isCollideOff;
20}
21
22void onCalcAnim(LiveActor* actor) {
23 actor->getFlags()->isDisableCalcAnim = false;
24}
25
26void offCalcAnim(LiveActor* actor) {
27 actor->getFlags()->isDisableCalcAnim = true;
28}
29
30void validateShadow(LiveActor* actor) {
31 ShadowMaskCtrl* shadowMaskCtrl = actor->getShadowKeeper()->getShadowMaskCtrl();
32 if (shadowMaskCtrl)
33 shadowMaskCtrl->validate();
34}
35
36void invalidateShadow(LiveActor* actor) {
37 ShadowMaskCtrl* shadowMaskCtrl = actor->getShadowKeeper()->getShadowMaskCtrl();
38 if (shadowMaskCtrl)
39 shadowMaskCtrl->invalidate();
40}
41
42void onCollide(LiveActor* actor) {
43 actor->getFlags()->isCollideOff = false;
44 Collider* collider = actor->getCollider();
45 if (collider)
46 collider->onInvalidate();
47}
48
49void offCollide(LiveActor* actor) {
50 actor->getFlags()->isCollideOff = true;
51}
52
53void validateMaterialCode(LiveActor* actor) {
54 actor->getFlags()->isMaterialCodeValid = true;
55}
56
57void invalidateMaterialCode(LiveActor* actor) {
58 actor->getFlags()->isMaterialCodeValid = false;
59}
60
61void validatePuddleMaterial(LiveActor* actor) {
62 actor->getFlags()->isPuddleMaterialValid = true;
63}
64
65void invalidatePuddleMaterial(LiveActor* actor) {
66 actor->getFlags()->isPuddleMaterialValid = false;
67}
68
69bool isAreaTarget(const LiveActor* actor) {
70 return actor->getFlags()->isAreaTargetOn;
71}
72
73void onAreaTarget(LiveActor* actor) {
74 actor->getFlags()->isAreaTargetOn = true;
75}
76
77void offAreaTarget(LiveActor* actor) {
78 actor->getFlags()->isAreaTargetOn = false;
79}
80
81bool isUpdateMovementEffectAudioCollisionSensor(const LiveActor* actor) {
82 return actor->getFlags()->isUpdateMovementEffectAudioCollisionSensor;
83}
84
85void onUpdateMovementEffectAudioCollisionSensor(LiveActor* actor) {
86 actor->getFlags()->isUpdateMovementEffectAudioCollisionSensor = true;
87}
88
89void offUpdateMovementEffectAudioCollisionSensor(LiveActor* actor) {
90 actor->getFlags()->isUpdateMovementEffectAudioCollisionSensor = false;
91}
92} // namespace al
93