| 1 | #pragma once |
| 2 | |
| 3 | #include <basis/seadTypes.h> |
| 4 | #include <math/seadVector.h> |
| 5 | #include <prim/seadSafeString.h> |
| 6 | |
| 7 | namespace al { |
| 8 | class EventFlowNode; |
| 9 | class EventFlowEventData; |
| 10 | class SceneEventFlowMsg; |
| 11 | class LiveActor; |
| 12 | class EventFlowExecutor; |
| 13 | class IUseEventFlowData; |
| 14 | |
| 15 | class EventFlowRequestInfo { |
| 16 | public: |
| 17 | EventFlowRequestInfo(); |
| 18 | void reset(); |
| 19 | void requestDemoAction(const char*); |
| 20 | void requestDemoCamera(const char*); |
| 21 | }; |
| 22 | |
| 23 | bool isNodeName(const EventFlowNode*, const char*); |
| 24 | const char16* getScareMessage(const EventFlowNode*); |
| 25 | void startEventCamera(EventFlowNode*, const char*, s32); |
| 26 | void startEventAnimCamera(EventFlowNode*, const char*, const char*, s32); |
| 27 | void endEventCamera(EventFlowNode*, const char*, s32, bool); |
| 28 | bool tryEndEventCameraIfPlaying(EventFlowNode*, const char*, s32, bool); |
| 29 | bool isEndInterpoleEventCamera(const EventFlowNode*, const char*); |
| 30 | bool isPlayingEventAnimCamera(const EventFlowNode*, const char*); |
| 31 | void requestDemoAction(EventFlowNode*, const char*, bool); |
| 32 | void requestPlayerDemoAction(EventFlowNode*, const char*); |
| 33 | bool isEndDemoAction(const EventFlowNode*); |
| 34 | void setDemoTalkAction(EventFlowNode*, const char*); |
| 35 | void resetDemoTalkAction(EventFlowNode*); |
| 36 | void requestDemoCamera(EventFlowNode*, const char*); |
| 37 | bool isEndRequestDemoCamera(const EventFlowNode*); |
| 38 | bool isHideDemoPlayer(const EventFlowNode*); |
| 39 | void requestHideDemoPlayer(EventFlowNode*); |
| 40 | void requestShowDemoPlayer(EventFlowNode*); |
| 41 | void calcPlayerWatchTrans(sead::Vector3f*, const EventFlowNode*); |
| 42 | void requestCommandCloseTalkMessageLayout(EventFlowNode*); |
| 43 | bool isActive(const EventFlowExecutor*); |
| 44 | bool isScare(const IUseEventFlowData*); |
| 45 | bool tryGetScareEnemyPos(sead::Vector3f*, const IUseEventFlowData*); |
| 46 | void invalidateUiCollisionCheck(EventFlowExecutor*); |
| 47 | void onExistLookAtJointCtrl(EventFlowExecutor*); |
| 48 | void setTalkSubActorName(EventFlowExecutor*, const char*); |
| 49 | void resetTalkSubActorName(EventFlowExecutor*); |
| 50 | void startEventAction(LiveActor*, const IUseEventFlowData*, const char*); |
| 51 | void makeEventActionName(sead::BufferedSafeStringBase<char>*, const IUseEventFlowData*, |
| 52 | const char*); |
| 53 | void startEventActionAtRandomFrame(LiveActor*, const IUseEventFlowData*, const char*); |
| 54 | bool tryStartEventActionIfNotPlaying(LiveActor*, const IUseEventFlowData*, const char*); |
| 55 | bool isPlayingEventAction(const LiveActor*, const IUseEventFlowData*, const char*); |
| 56 | bool isExistEventAction(const LiveActor*, const IUseEventFlowData*, const char*); |
| 57 | bool isOneTimeEventAction(const LiveActor*, const IUseEventFlowData*, const char*); |
| 58 | f32 getEventActionFrameMax(const LiveActor*, const IUseEventFlowData*, const char*); |
| 59 | f32 getParamMoveSpeed(const IUseEventFlowData*); |
| 60 | f32 getParamTurnSpeedDegree(const IUseEventFlowData*); |
| 61 | const sead::Vector3f& getRecordActorFront(const IUseEventFlowData*); |
| 62 | void recordActorFront(IUseEventFlowData*, const sead::Vector3f&); |
| 63 | bool checkInsideTerritoryPos(const IUseEventFlowData*, const LiveActor*, const sead::Vector3f&, |
| 64 | f32); |
| 65 | bool checkInsideEmotionTerritoryPos(const IUseEventFlowData*, const LiveActor*, |
| 66 | const sead::Vector3f&); |
| 67 | bool checkInsideEmotionLowPriorityTerritoryPos(const IUseEventFlowData*, const LiveActor*, |
| 68 | const sead::Vector3f&); |
| 69 | bool checkInsideTalkTerritoryPos(const IUseEventFlowData*, const LiveActor*, const sead::Vector3f&); |
| 70 | void calcBalloonOffset(sead::Vector3f*, const IUseEventFlowData*, const LiveActor*); |
| 71 | void setBalloonLocalOffset(EventFlowExecutor*, const sead::Vector3f&); |
| 72 | f32 getBalloonCollisionCheckOffsetRadius(const IUseEventFlowData*); |
| 73 | bool isDisableOpenBalloonByOrderGroup(const LiveActor*, const IUseEventFlowData*); |
| 74 | bool isEnableForceOpenBalloonByOrderGroup(const LiveActor*, const IUseEventFlowData*); |
| 75 | bool isWaitAtPointMovement(const EventFlowExecutor*); |
| 76 | bool isStopMovement(const IUseEventFlowData*); |
| 77 | bool isRequestEventDemoAction(const EventFlowExecutor*); |
| 78 | bool isPlayingEventDemoAction(const EventFlowExecutor*); |
| 79 | const char* getEventDemoActionName(const EventFlowExecutor*); |
| 80 | bool isExistEventDemoTalkAction(const EventFlowExecutor*); |
| 81 | const char* getEventDemoTalkActionName(const EventFlowExecutor*); |
| 82 | bool isResetEventDemoPlayerDynamics(const EventFlowExecutor*); |
| 83 | void startEventDemoAction(EventFlowExecutor*); |
| 84 | void endEventDemoAction(EventFlowExecutor*); |
| 85 | bool isRequestEventDemoCamera(const EventFlowExecutor*); |
| 86 | const char* getEventDemoCameraAnimName(const EventFlowExecutor*); |
| 87 | void clearEventDemoCameraRequest(EventFlowExecutor*); |
| 88 | bool isHideDemoPlayer(const EventFlowExecutor*); |
| 89 | bool isExistEventEntry(const EventFlowExecutor*, const char*); |
| 90 | bool isCurrentEventEntry(const EventFlowExecutor*, const char*); |
| 91 | bool isEventName(const EventFlowEventData*, const char*, ...); |
| 92 | const char* getEventName(const EventFlowEventData*); |
| 93 | bool getEventDataParamString(const EventFlowEventData*, const char*); |
| 94 | bool isEventDataParamBool(const EventFlowEventData*, const char*); |
| 95 | } // namespace al |
| 96 | |
| 97 | namespace alEventFlowFunction { |
| 98 | bool isReceiveCommandCloseTalkMessageLayout(const al::SceneEventFlowMsg*); |
| 99 | void clearSceneEventFlowMsg(al::SceneEventFlowMsg*); |
| 100 | } // namespace alEventFlowFunction |
| 101 | |