mirror of
https://github.com/CraftyBoss/SuperMarioOdysseyOnline.git
synced 2024-11-19 01:35:14 +00:00
68 lines
2.7 KiB
C
68 lines
2.7 KiB
C
|
#pragma once
|
||
|
|
||
|
#include "LayoutActor.h"
|
||
|
#include "TalkMessageVoicePlayer.h"
|
||
|
|
||
|
namespace al {
|
||
|
|
||
|
struct BalloonMessageInitParam {
|
||
|
const char *mActorName; // 0x0
|
||
|
const char *mLayoutName; // 0x8
|
||
|
const char *mPaneName; // 0x10
|
||
|
const char *mMessage; // 0x18
|
||
|
float mStartDist; // 0x20
|
||
|
float mEndDist; // 0x24
|
||
|
const char *mGroupName; // 0x28
|
||
|
float mActorOffset; // 0x30
|
||
|
int mPlayerIndex; // 0x34
|
||
|
int mIsUseSub; // 0x38
|
||
|
bool mIsHideIfNotVis; // 0x3C
|
||
|
};
|
||
|
|
||
|
class BalloonMessage : public LayoutActor {
|
||
|
public:
|
||
|
BalloonMessage(const al::LiveActor*, const al::LayoutInitInfo&,
|
||
|
const al::BalloonMessageInitParam&, bool isUseDistance);
|
||
|
|
||
|
void appear(void) override;
|
||
|
void control(void) override;
|
||
|
void updateTrans(void);
|
||
|
void hidePushA(void);
|
||
|
void appearWithPushA(void);
|
||
|
void showPushA(void);
|
||
|
void update(void);
|
||
|
void end(void);
|
||
|
void setText(char const*);
|
||
|
void setTextW(char16_t const*);
|
||
|
|
||
|
bool isEnableAppear(void) const;
|
||
|
bool isWait(void) const;
|
||
|
bool isVoicePlayerPlaying(void) const;
|
||
|
bool isShowPushA(void) const;
|
||
|
bool isEnableEnd(void) const;
|
||
|
bool isNearPlayerActor(float) const;
|
||
|
|
||
|
void exeAppear(void);
|
||
|
void exeWait(void);
|
||
|
void exeEnd(void);
|
||
|
void exeHide(void);
|
||
|
|
||
|
const LiveActor *mTargetActor; // 0x130
|
||
|
const char *mPaneName; // 0x138
|
||
|
float mMinDist; // 0x140
|
||
|
float mMaxDist; // 0x144
|
||
|
sead::Vector3f mTargetOffset = sead::Vector3f::zero; // 0x148
|
||
|
int mPlayerIndex; // 0x154
|
||
|
int mIsUseSub; // 0x158
|
||
|
bool mIsUseDistance; // 0x15C
|
||
|
bool mIsHideIfNotVis; // 0x15D
|
||
|
bool mIsUseVoice; // 0x15E
|
||
|
TalkMessageVoicePlayer* mTalkVoicePlayer = nullptr; // 0x160
|
||
|
sead::FixedSafeString<0x40> mTalkMsgSe; // 0x168
|
||
|
};
|
||
|
|
||
|
BalloonMessage *createBalloonMessage(al::LiveActor const*,al::ActorInitInfo const&);
|
||
|
BalloonMessage *createBalloonMessage(al::LiveActor const*,al::ActorInitInfo const&, char const*);
|
||
|
BalloonMessage *createBalloonMessage(al::LiveActor const*,al::ActorInitInfo const&,al::BalloonMessageInitParam const&);
|
||
|
BalloonMessage *createBalloonMessageNoAutoUpdate(al::LiveActor const*,al::ActorInitInfo const&,al::BalloonMessageInitParam const&);
|
||
|
}
|