mirror of
https://github.com/pret/pokefirered.git
synced 2026-04-21 00:47:18 -05:00
78 lines
2.3 KiB
C
78 lines
2.3 KiB
C
#ifndef GUARD_EASY_CHAT_H
|
|
#define GUARD_EASY_CHAT_H
|
|
|
|
#include "global.h"
|
|
#include "constants/easy_chat.h"
|
|
|
|
#define NUM_ALPHABET_ROWS 4
|
|
#define NUM_ALPHABET_COLUMNS 7
|
|
|
|
struct EasyChatWordInfo
|
|
{
|
|
const u8 *text;
|
|
int alphabeticalOrder;
|
|
int enabled;
|
|
};
|
|
|
|
typedef union
|
|
{
|
|
const u16 *valueList;
|
|
const struct EasyChatWordInfo *words;
|
|
} EasyChatGroupWordData;
|
|
|
|
struct EasyChatGroup
|
|
{
|
|
EasyChatGroupWordData wordData;
|
|
u16 numWords;
|
|
u16 numEnabledWords;
|
|
};
|
|
|
|
struct EasyChatWordsByLetter
|
|
{
|
|
const u16 *words;
|
|
int numWords;
|
|
};
|
|
|
|
u8 *CopyEasyChatWord(u8 *dest, u16 word);
|
|
u8 *ConvertEasyChatWordsToString(u8 *dest, const u16 *src, u16 columns, u16 rows);
|
|
bool8 EC_DoesEasyChatStringFitOnLine(const u16 *easyChatWords, u8 columns, u8 rows, u16 maxLength);
|
|
void InitQuestionnaireWords(void);
|
|
void InitEasyChatPhrases(void);
|
|
void EnableRareWord(u8);
|
|
bool8 InitEasyChatSelection(void);
|
|
void DestroyEasyChatSelectionData(void);
|
|
u8 GetSelectedGroupByIndex(u8);
|
|
void GetUnlockedECWords(bool32 isAlphabetical, u16 groupId);
|
|
u16 GetDisplayedWordByIndex(u16 index);
|
|
u16 GetNumDisplayedWords(void);
|
|
const u8 *GetEasyChatWordGroupName(u8);
|
|
u8 *CopyEasyChatWordPadded(u8 *, u16, u16);
|
|
void DoEasyChatScreen(u8 type, u16 *words, MainCallback callback);
|
|
u8 GetNumDisplayableGroups(void);
|
|
bool8 InitEasyChatGraphicsWork(void);
|
|
bool8 LoadEasyChatGraphics(void);
|
|
void DestroyEasyChatGraphicsResources(void);
|
|
void EasyChatInterfaceCommand_Setup(u16 id);
|
|
bool8 EasyChatInterfaceCommand_Run(void);
|
|
u8 GetEasyChatScreenFrameId(void);
|
|
const u8 *GetTitleText(void);
|
|
u16 *GetEasyChatWordBuffer(void);
|
|
u8 GetNumRows(void);
|
|
u8 GetNumColumns(void);
|
|
u8 GetMainCursorColumn(void);
|
|
u8 GetMainCursorRow(void);
|
|
void GetEasyChatInstructionsText(const u8 **str1, const u8 **str2);
|
|
void GetEasyChatConfirmText(const u8 **str1, const u8 **str2);
|
|
void GetEasyChatConfirmCancelText(const u8 **str1, const u8 **str2);
|
|
void GetEasyChatConfirmDeletionText(const u8 **str1, const u8 **str2);
|
|
void GetECSelectGroupCursorCoords(u8 *Xp, u8 *Yp);
|
|
bool8 IsEasyChatAlphaMode(void);
|
|
u8 GetECSelectGroupRowsAbove(void);
|
|
void GetECSelectWordCursorCoords(s8 *arg0, s8 *arg1);
|
|
u8 GetECSelectWordRowsAbove(void);
|
|
u8 GetECSelectWordNumRows(void);
|
|
bool32 ShouldDrawECUpArrow(void);
|
|
bool32 ShouldDrawECDownArrow(void);
|
|
|
|
#endif // GUARD_EASY_CHAT_H
|