mirror of
https://github.com/MonsterDruide1/OdysseyDecomp
synced 2026-04-30 04:24:17 +00:00
142 lines
7.8 KiB
C++
142 lines
7.8 KiB
C++
#pragma once
|
|
|
|
#include <prim/seadSafeString.h>
|
|
|
|
#include "Library/HostIO/HioNode.h"
|
|
|
|
namespace al {
|
|
|
|
class IUseMessageSystem;
|
|
class LayoutActor;
|
|
class LayoutSystem;
|
|
class MessageProjectEx;
|
|
class MessageTag;
|
|
class MessageTagDataHolder;
|
|
|
|
struct ReplaceTimeInfo {
|
|
u32 year;
|
|
u32 month;
|
|
u32 day;
|
|
u32 hour;
|
|
u32 minute;
|
|
u32 second;
|
|
u32 centiSecond;
|
|
};
|
|
|
|
class MessageHolder : public HioNode {
|
|
public:
|
|
MessageHolder();
|
|
|
|
void init(const char*, const char*);
|
|
const char16* getText(s32) const;
|
|
const char16* getText(const char*) const;
|
|
const char16* tryGetText(const char*) const;
|
|
bool isExistText(const char*) const;
|
|
s32 calcCharacterNum(s32) const;
|
|
s32 calcCharacterNum(const char*) const;
|
|
s32 calcCharacterByteSize(const char*) const;
|
|
s32 getTextNum() const;
|
|
void searchTextLabelByIndex(sead::BufferedSafeString*, s32) const;
|
|
s32 getStyleByIndex(s32) const;
|
|
s32 trySearchStyleIndexByLabel(const char*) const;
|
|
};
|
|
|
|
const char* getLanguage();
|
|
const char* getLayoutMessageArcName();
|
|
bool isMessageTagMark(char16);
|
|
bool isMessageTagEndMark(char16);
|
|
bool isMessageTagPageBreak(const IUseMessageSystem*, const char16*);
|
|
bool isMessageTagPageBreak(const IUseMessageSystem*, const MessageTag&);
|
|
bool isMessageTagPageBreak(const MessageProjectEx*, const MessageTag&);
|
|
const char* getMessageTagGroupName(const MessageProjectEx*, s32);
|
|
const char* getMessageTagGroupName(const IUseMessageSystem*, s32);
|
|
const char* getMessageTagName(const MessageProjectEx*, s32, s32);
|
|
const char* getMessageTagName(const IUseMessageSystem*, s32, s32);
|
|
bool isExistMessageTag(const char16*);
|
|
s32 calcMessageSizeWithoutNullCharacter(const char16*, const char16*);
|
|
bool isExistMessageTagTextPaneAnim(const IUseMessageSystem*, const char16*);
|
|
bool tryGetMessageTagTextAnim(sead::BufferedSafeString*, const IUseMessageSystem*, const char16*);
|
|
bool isMessageTagVoice(const IUseMessageSystem*, const char16*);
|
|
void getMessageTagVoiceName(sead::BufferedSafeString*, const IUseMessageSystem*, const char16*);
|
|
bool tryGetMessageTagVoiceNameInPage(sead::BufferedSafeString*, const IUseMessageSystem*,
|
|
const char16*);
|
|
bool isMessageTagPictFont(const IUseMessageSystem*, s32);
|
|
bool isMessageTagDeviceFont(const IUseMessageSystem*, s32);
|
|
bool isExistMessageTagPadSwitch(const IUseMessageSystem*, const char16*, s32);
|
|
bool isMessageTagPadStyle(const IUseMessageSystem*, s32, s32);
|
|
bool isMessageTagPadPair(const IUseMessageSystem*, s32, s32);
|
|
bool isMessageTagPadStyle2P(const IUseMessageSystem*, s32, s32);
|
|
bool isMessageTagAlignLeft(const IUseMessageSystem*, s32, s32);
|
|
bool isMessageTagAlignCenter(const IUseMessageSystem*, s32, s32);
|
|
void replaceMessageTagString(sead::WBufferedSafeString*, const IUseMessageSystem*, const char16*,
|
|
const char16*);
|
|
void replaceMessageTagTimeDirectRaceTime(sead::WBufferedSafeString*, const IUseMessageSystem*,
|
|
ReplaceTimeInfo&);
|
|
const char16* getSystemMessageString(const IUseMessageSystem*, const char*, const char*);
|
|
void replaceMessageTagTimeDirectDate(sead::WBufferedSafeString*, const IUseMessageSystem*,
|
|
ReplaceTimeInfo&);
|
|
void replaceMessageTagTimeDirectDateDetail(sead::WBufferedSafeString*, const IUseMessageSystem*,
|
|
ReplaceTimeInfo&);
|
|
void replaceMessageTagScore(sead::WBufferedSafeString*, const IUseMessageSystem*, const char16*,
|
|
s32, const char*);
|
|
void replaceMessageTagCoinNum(sead::WBufferedSafeString*, const IUseMessageSystem*, const char16*,
|
|
s32, const char*);
|
|
void replaceMessageTagAmiiboName(sead::WBufferedSafeString*, const IUseMessageSystem*,
|
|
const char16*, const char*, const char*);
|
|
void replaceMessageTagUserName(sead::WBufferedSafeString*, const IUseMessageSystem*, const char16*,
|
|
const char16*, const char*);
|
|
void replaceMessageTagNamedString(sead::WBufferedSafeString*, const IUseMessageSystem*,
|
|
const char16*, const char16*, const char*);
|
|
void replaceMessageTagTime(sead::WBufferedSafeString*, const IUseMessageSystem*, const char16*,
|
|
ReplaceTimeInfo&, const char*);
|
|
void createReplaceTimeInfoForRaceTime(ReplaceTimeInfo*, s32, s32, s32);
|
|
void createReplaceTimeInfoForDateTime(ReplaceTimeInfo*, u64);
|
|
void replacePaneDateTime(LayoutActor*, const char*, u64);
|
|
MessageTagDataHolder* initMessageTagDataHolder(s32);
|
|
void registerMessageTagDataScore(MessageTagDataHolder*, const char*, const s32*);
|
|
void registerMessageTagDataCoinNum(MessageTagDataHolder*, const char*, const s32*);
|
|
void registerMessageTagDataUserName(MessageTagDataHolder*, const char*, const char16**);
|
|
void registerMessageTagDataAmiiboName(MessageTagDataHolder*, const char*, const char**);
|
|
void registerMessageTagDataString(MessageTagDataHolder*, const char*, const char16**);
|
|
void replaceMessageTagData(sead::WBufferedSafeString*, const IUseMessageSystem*,
|
|
const MessageTagDataHolder*, const char16*);
|
|
s32 calcMessageSizeWithoutTag(const char16*, const char16*);
|
|
bool isExistLayoutMessage(const IUseMessageSystem*, const char*);
|
|
bool isExistSystemMessage(const IUseMessageSystem*, const char*);
|
|
bool isExistStageMessage(const IUseMessageSystem*, const char*);
|
|
bool isExistLabelInLayoutMessage(const IUseMessageSystem*, const char*, const char*);
|
|
bool isExistLabelInSystemMessage(const IUseMessageSystem*, const char*, const char*);
|
|
bool isExistLabelInStageMessage(const IUseMessageSystem*, const char*, const char*);
|
|
s32 calcSystemMessageCharacterNum(const IUseMessageSystem*, const char*, const char*);
|
|
s32 calcSystemMessageCharacterNumWithoutTag(const IUseMessageSystem*, const char*, const char*);
|
|
const char16* getLayoutMessageString(const IUseMessageSystem*, const char*, const char*);
|
|
const char16* getStageMessageString(const IUseMessageSystem*, const char*, const char*);
|
|
bool tryGetStageMessageString(const char16**, const IUseMessageSystem*, const char*, const char*);
|
|
const char16* getLayoutMessageString(const IUseMessageSystem*, const char*, s32);
|
|
const char16* getSystemMessageString(const IUseMessageSystem*, const char*, s32);
|
|
s32 getSystemMessageLabelNum(const IUseMessageSystem*, const char*);
|
|
s32 getLayoutMessageLabelNum(const IUseMessageSystem*, const char*);
|
|
const char* getMessageTagParamName(const IUseMessageSystem*, const MessageTag&, s32);
|
|
s32 getMessageTagParamNum(const IUseMessageSystem*, const MessageTag&);
|
|
void getMessageTagParamString(sead::WBufferedSafeString*, const IUseMessageSystem*,
|
|
const MessageTag&, s32);
|
|
void getSystemMessageLabelString(sead::BufferedSafeString*, const IUseMessageSystem*, const char*,
|
|
s32);
|
|
void getLayoutMessageLabelString(sead::BufferedSafeString*, const IUseMessageSystem*, const char*,
|
|
s32);
|
|
void getMessageLine(char16*, u32, const char16*, u32);
|
|
s32 countMessageLine(const char16*);
|
|
bool copyMessageExpandTag(char16*, s32, const IUseMessageSystem*, const char16*);
|
|
bool copyMessageWithoutTag(char16*, s32, const char16*);
|
|
bool copyMessageWithoutRubyTag(char16*, s32, const IUseMessageSystem*, const char16*);
|
|
void copyMessageWithoutTagExpandRuby(char16*, s32, const IUseMessageSystem*, const char16*);
|
|
s32 copyMessageWithTag(char16*, s32, const char16*);
|
|
s32 copyMessageWithTagOnlyCurrentPage(const IUseMessageSystem*, char16*, s32, const char16*, s32);
|
|
const char16* getMessageWithPage(const IUseMessageSystem*, const char16*, s32);
|
|
void copyMessageOnlyRuby(char16*, s32, const IUseMessageSystem*, const char16*);
|
|
s32 countMessagePage(const IUseMessageSystem*, const char16*, s32);
|
|
const char16* getNextMessagePage(const IUseMessageSystem*, const char16*);
|
|
void* getPictureFont(const LayoutSystem*); // TODO: unknown return type
|
|
|
|
} // namespace al
|