SMG-Decomp
A decompilation of Super Mario Galaxy 1
Loading...
Searching...
No Matches
TalkNodeCtrl.hpp
1#pragma once
2
3#include "Game/NPC/TalkMessageInfo.hpp"
4#include "Game/NPC/TalkMessageCtrl.hpp"
5
6class RecursiveHelper;
7
9public:
10
11 void entry(u16);
12 bool search(u16) const;
13
14 u16 mHistory[0x10]; // _0
15 s32 mCount; // _20
16};
17
18class TalkNode {
19public:
20
21 u8 mNodeType; // _0
22 u8 mGroupID; // _1
23 u16 mIndex; // _2
24 u16 mNextIdx; // _4
25 u16 mNextGroup; // _6
26};
27
29public:
30 const char* mMessage; // _0
31};
32
34public:
36
37 void createFlowNodeDirect(TalkMessageCtrl *, const JMapInfoIter &, const char *, ActorCameraInfo **);
38 void resetFlowNode();
39 void resetTempFlowNode();
40 void recordTempFlowNode();
41 void forwardFlowNode();
42 bool isExistNextNode() const;
43 bool isNextNodeMessage() const;
44 bool isCurrentNodeEvent() const;
45 TalkNode* getNextNode() const;
46 TalkNode* getNextNodeBranch() const;
47 TalkNode* getCurrentNodeBranch() const;
48 TalkNode* getCurrentNodeMessage() const;
49 TalkNode* getCurrentNodeEvent() const;
50 TalkNode* getNextNodeEvent() const;
51 void updateMessage();
52 void readMessage();
53 const wchar_t* getSubMessage() const;
54 void forwardCurrentBranchNode(bool);
55 void createFlowNode(TalkMessageCtrl *, const JMapInfoIter &, const char *, ActorCameraInfo **);
56 void initNodeRecursive(TalkMessageCtrl *, const JMapInfoIter &, ActorCameraInfo *, RecursiveHelper *);
57
58 u32 _0;
59 s32 mCurrentNodeIdx; // _4
60 TalkMessageInfo mMessageInfo; // _8
61 TalkMessageHistory mHistory; // _14
62 TalkNode* _38;
63 TalkNode* mCurrentNode; // _3C
64 TalkNode* mFlowNode; // _40
65 s16 mNodeData; // _44
66};