pokeheartgold/include/msgfmt.h
2022-03-04 15:53:41 -05:00

98 lines
5.4 KiB
C

#ifndef GUARD_MSGFMT_H
#define GUARD_MSGFMT_H
#include "pm_string.h"
#include "player_data.h"
#include "save_misc_data.h"
#include "pokemon_types_def.h"
#include "trainer_data.h"
#include "pokemon_storage_system.h"
typedef struct MsgPlaceholderFieldAttrs {
u8 data[4];
} MSGFMT_FIELD_ATTRS;
typedef struct PlaceholderField {
MSGFMT_FIELD_ATTRS attrs;
STRING *msg;
} MSGFMT_FIELD;
typedef struct MSGFMT {
u32 nstr;
HeapID heapId;
MSGFMT_FIELD *fields;
STRING *buffer;
} MSGFMT;
MSGFMT *ScrStrBufs_new(u32 heap_id);
MSGFMT *ScrStrBufs_new_custom(u32 nstr, u32 _strlen, HeapID heapId);
void ScrStrBufs_delete(MSGFMT *msgFmt);
void StringExpandPlaceholders(MSGFMT *msgFmt, STRING *dest, STRING *src);
void BufferString(MSGFMT *msgFmt, u32 fieldno, const STRING *string, int a3, int a4, int a5);
void BufferIntegerAsString(MSGFMT *msgFmt, u32 idx, int num, u32 numDigits, STRCONVMODE strconvmode, BOOL whichCharset);
void BufferPlayersName(MSGFMT *msgFmt, u32 idx, PLAYERPROFILE *playerProfile);
void BufferECWord(MSGFMT *msgFmt, u32 idx, u16 wordno);
void BufferSpeciesName(MSGFMT *msgFmt, u32 idx, u16 species);
void BufferSpeciesNameWithArticle(MSGFMT *msgFmt, u32 idx, u32 species);
void BufferTrainerClassName(MSGFMT *msgFmt, u32 fieldno, u32 trainerClassId);
void ScrStrBufs_InitSub(MSGFMT_FIELD *field);
void SetStringAsPlaceholder(MSGFMT *msgFmt, u32 fieldno, const STRING *string, const MSGFMT_FIELD_ATTRS *attrs);
void BufferRivalsName(MSGFMT *msgFmt, u32 fieldno, SAVEDATA *saveData);
void BufferFriendsName(MSGFMT *msgFmt, u32 fieldno, SAVEDATA *saveData);
void BufferBoxMonSpeciesName(MSGFMT *msgFmt, u32 fieldno, BOXMON *boxmon);
void BufferBoxMonSpeciesNameWithArticle(MSGFMT *msgFmt, u32 fieldno, BOXMON *boxmon);
void BufferBoxMonNickname(MSGFMT *msgFmt, u32 fieldno, BOXMON *boxmon);
void BufferBoxMonOTName(MSGFMT *msgFmt, u32 fieldno, BOXMON *boxmon);
void BufferMoveName(MSGFMT *msgFmt, u32 fieldno, u32 moveId);
void BufferRibbonNameOrDesc(MSGFMT *msgFmt, u32 fieldno, u32 decoId);
void BufferAbilityName(MSGFMT *msgFmt, u32 fieldno, u32 abilityId);
void BufferNatureName(MSGFMT *msgFmt, u32 fieldno, u32 natureId);
void BufferItemName(MSGFMT *msgFmt, u32 fieldno, u32 itemId);
void BufferItemNameWithIndefArticle(MSGFMT *msgFmt, u32 fieldno, u32 itemId);
void BufferItemNamePlural(MSGFMT *msgFmt, u32 fieldno, u32 itemId);
void BufferPocketName(MSGFMT *msgFmt, u32 fieldno, u32 pocketId);
void BufferTypeName(MSGFMT *msgFmt, u32 fieldno, u32 typeId);
void BufferStatName(MSGFMT *msgFmt, u32 fieldno, u32 statId);
void BufferStatusName(MSGFMT *msgFmt, u32 fieldno, u32 statusId);
void BufferFlavorDislikeText(MSGFMT *msgFmt, u32 fieldno, u32 flavorId);
void BufferLandmarkName(MSGFMT *msgFmt, u32 fieldno, u32 landmarkId);
void BufferTrainerClassNameWithArticle(MSGFMT *msgFmt, u32 fieldno, u32 trainerClassId);
void BufferTrainerClassNameFromDataStruct(MSGFMT *msgFmt, u32 fieldno, TRAINER *trainer);
void BufferTrainerName(MSGFMT *msgFmt, u32 fieldno, u32 trainerId);
void BufferFrontierOpponentName(MSGFMT *msgFmt, u32 fieldno, u32 opponentId);
void BufferTrainerNameFromDataStruct(MSGFMT *msgFmt, u32 fieldno, TRAINER *trainer);
void BufferDecorationName(MSGFMT *msgFmt, u32 fieldno, u32 decorationId);
void BufferGenderSymbol(MSGFMT *msgFmt, u32 fieldno, u8 gender);
void BufferPCBoxName(MSGFMT *msgFmt, u32 fieldno, PC_STORAGE *pcStorage, u32 boxno);
void BufferCountryName(MSGFMT *msgFmt, u32 fieldno, u32 countryId);
void BufferCityName(MSGFMT *msgFmt, u32 fieldno, u32 countryId, u32 cityId);
void BufferSealName(MSGFMT *msgFmt, u32 fieldno, u32 sealId);
void BufferSealNamePlural(MSGFMT *msgFmt, u32 fieldno, u32 sealId);
void BufferLocationName(MSGFMT *msgFmt, u32 fieldno, u32 mapsecId);
void BufferFashionName(MSGFMT *msgFmt, u32 fieldno, u32 fashionId);
void BufferFashionNameWithArticle(MSGFMT *msgFmt, u32 fieldno, u32 fashionId);
void BufferContestBackgroundName(MSGFMT *msgFmt, u32 fieldno, u32 bgId);
void BufferGroupName(MSGFMT *msgFmt, SAVEDATA *saveData, int groupId, int fieldno, int nameType);
void BufferWiFiPlazaActivityName(MSGFMT *msgFmt, u32 fieldno, u32 activityId);
void BufferWiFiPlazaEventName(MSGFMT *msgFmt, u32 fieldno, u32 eventId);
void BufferWiFiPlazaInstrumentName(MSGFMT *msgFmt, u32 fieldno, u32 instrumentId);
void BufferJPGreeting(MSGFMT *msgFmt, u32 fieldno, u32 timeOfDay);
void BufferENGreeting(MSGFMT *msgFmt, u32 fieldno, u32 timeOfDay);
void BufferFRGreeting(MSGFMT *msgFmt, u32 fieldno, u32 timeOfDay);
void BufferITGreeting(MSGFMT *msgFmt, u32 fieldno, u32 timeOfDay);
void BufferDEGreeting(MSGFMT *msgFmt, u32 fieldno, u32 timeOfDay);
void BufferSPGreeting(MSGFMT *msgFmt, u32 fieldno, u32 timeOfDay);
void BufferPokeathlonCourseName(MSGFMT *msgFmt, u32 fieldno, u32 courseId);
void BufferPokeathlonMedalName(MSGFMT *msgFmt, u32 fieldno, u32 medalId);
void BufferPokeathlonEventName(MSGFMT *msgFmt, u32 fieldno, u32 eventId);
void BufferApricornName(MSGFMT *msgFmt, u32 fieldno, u32 apricornId);
void BufferSafariZoneObjectName(MSGFMT *msgFmt, u32 fieldno, u32 objectId);
void BufferSafariZoneAreaName(MSGFMT *msgFmt, u32 fieldno, u32 areaId);
void BufferPokewalkerCourseName(MSGFMT *msgFmt, u32 fieldno, u32 courseId);
void BufferMonthNameAbbr(MSGFMT *msgFmt, u32 fieldno, u32 month);
void ScrStrBufs_UpperFirstChar(MSGFMT *msgFmt, u32 fieldno);
void BufferDeptStoreFloorNo(MSGFMT *msgFmt, u32 fieldno, u32 floor);
void ScrStrBufs_ResetBuffers(MSGFMT * msgFmt);
#endif //GUARD_MSGFMT_H