summaryrefslogtreecommitdiff
path: root/src/KingSystem/ActorSystem/actAiClass.cpp
blob: 0fad8b581b2f1651d99fb7d8a973afd660e94226 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include "KingSystem/ActorSystem/actAiClass.h"

namespace ksys::act::ai {

ActionBase::ActionBase(const ClassArg& arg)
    : mActor{arg.actor}, mDefinitionIdx{u16(arg.definitionIdx)}, mRootIdx{u8(arg.rootIdx)} {}

bool ActionBase::isFinished() {
    return mStatus.isOn(Status::Finished);
}

bool ActionBase::isFailed() {
    return mStatus.isOn(Status::Failed);
}

void ActionBase::setFinished() {
    mStatus.set(Status::Finished);
    mStatus.reset(Status::Failed);
}

void ActionBase::setFailed() {
    mStatus.set(Status::Failed);
    mStatus.reset(Status::Finished);
}

}  // namespace ksys::act::ai