52 void Read(std::string file_name);
60 void Write(
int slot, std::string file_name);
94 const unsigned int t_l_r,
const unsigned int t_l_g,
const unsigned int t_l_b,
95 const unsigned int t_r_r,
const unsigned int t_r_g,
const unsigned int t_r_b,
96 const unsigned int b_r_r,
const unsigned int b_r_g,
const unsigned int b_r_b,
97 const unsigned int b_l_r,
const unsigned int b_l_g,
const unsigned int b_l_b
105 void SetMoney(
const unsigned int money);
127 void SetKeyItem(
const unsigned int item,
const bool owned);
136 void SetParty(
const int member_1,
const int member_2,
const int member_3);
145 void SetItem(
const unsigned int slot,
const unsigned int id,
const unsigned int quantity);
156 void SetMateria(
const unsigned int slot,
const int id,
const unsigned int ap);
168 void SetESkillMateria(
const unsigned slot,
const unsigned int skill,
const bool learned);
179 void SetMateriaStash(
const unsigned int slot,
const int id,
const unsigned int ap);
192 const unsigned slot,
const unsigned int skill,
const bool learned
207 const float x,
const float y,
const float z,
208 const unsigned int triangle,
const int angle, std::string field, std::string name
218 void SetSetting(
const unsigned int key,
const unsigned int value);
240 const unsigned int id,
const int char_id,
const std::string name,
241 const bool enabled,
const bool locked,
242 const unsigned int level,
const unsigned int kills,
243 const bool back_row,
const unsigned int exp,
const unsigned int exp_to_next,
244 const unsigned int limit_level,
const unsigned int limit_bar,
245 const unsigned int weapon,
const unsigned int armor,
const int accessory
258 const unsigned int id,
const unsigned int stat,
259 const unsigned int base,
const unsigned int extra
272 const unsigned int id,
const unsigned int level,
273 const unsigned int technique,
const bool learned,
const unsigned int uses
288 const unsigned int id,
const bool weapon,
const unsigned int slot,
289 const int materia,
const unsigned int ap
306 const unsigned int id,
const bool weapon,
const unsigned int slot,
307 const unsigned int skill,
const bool learned
318 const unsigned int id,
const unsigned int status,
const bool inflicted
328 void SetData(
const unsigned int bank,
const unsigned int address,
const int value);
353 const unsigned int corner,
const unsigned int comp
707 const unsigned int id,
const unsigned int level,
const unsigned int tech
733 const unsigned int id,
const bool weapon,
const unsigned int pos
761 const unsigned int id,
const bool weapon,
const unsigned int pos,
const unsigned int skill
771 int GetData(
const unsigned int bank,
const unsigned int address);
783 static const unsigned int STR = 0;
788 static const unsigned int VIT = 1;
793 static const unsigned int MAG = 2;
798 static const unsigned int SPR = 3;
803 static const unsigned int DEX = 4;
808 static const unsigned int LCK = 5;
813 static const unsigned int HP = 6;
818 static const unsigned int MP = 7;
831 static const unsigned int T_L = 0;
836 static const unsigned int T_R = 1;
841 static const unsigned int B_R = 2;
846 static const unsigned int B_L = 3;
859 static const unsigned int R = 0;
864 static const unsigned int G = 1;
869 static const unsigned int B = 2;
@ WAIT
Definition: FieldDisassembler.h:57
Ogre::uint16 u16
Definition: TypeDefine.h:22
Ogre::uint8 u8
Definition: TypeDefine.h:21
Colour codes.
Definition: Savemap.h:852
static const unsigned int G
Green colour.
Definition: Savemap.h:864
static const unsigned int R
Red colour.
Definition: Savemap.h:859
static const unsigned int B
Blue colour.
Definition: Savemap.h:869
Window corners.
Definition: Savemap.h:824
static const unsigned int B_L
Bottom left window corner.
Definition: Savemap.h:846
static const unsigned int T_R
Top right window corner.
Definition: Savemap.h:836
static const unsigned int T_L
Top left window corner.
Definition: Savemap.h:831
static const unsigned int B_R
Bottom right window corner.
Definition: Savemap.h:841
Character basic stats.
Definition: Savemap.h:776
static const unsigned int MAG
Magic stat.
Definition: Savemap.h:793
static const unsigned int MP
MP stat.
Definition: Savemap.h:818
static const unsigned int LCK
Luck stat.
Definition: Savemap.h:808
static const unsigned int DEX
Dexterity stat.
Definition: Savemap.h:803
static const unsigned int STR
Strength stat.
Definition: Savemap.h:783
static const unsigned int HP
HP stat.
Definition: Savemap.h:813
static const unsigned int VIT
Vtatlity stat.
Definition: Savemap.h:788
static const unsigned int SPR
Spirit stat.
Definition: Savemap.h:798
A savemap.
Definition: Savemap.h:24
std::string GetLocationName()
Retrieves the location name.
Definition: Savemap.cpp:471
unsigned int GetCharacterKills(const unsigned int id)
Retrieves the total kills of a character.
Definition: Savemap.cpp:493
Settings settings_
Game settings.
Definition: Savemap.h:1378
unsigned int GetCharacterExpToNext(const unsigned int id)
Retrieves the experience for next level of a character.
Definition: Savemap.cpp:518
void SetGameTime(const unsigned int seconds)
Sets the total playtime of the savemap.
Definition: Savemap.cpp:167
Materia materia_stash_[MAX_STASH_SLOTS]
Alternative materia stash.
Definition: Savemap.h:1353
void SetWindowColours(const unsigned int t_l_r, const unsigned int t_l_g, const unsigned int t_l_b, const unsigned int t_r_r, const unsigned int t_r_g, const unsigned int t_r_b, const unsigned int b_r_r, const unsigned int b_r_g, const unsigned int b_r_b, const unsigned int b_l_r, const unsigned int b_l_g, const unsigned int b_l_b)
Sets the window colours in the current savemap.
Definition: Savemap.cpp:143
bool IsCharacterMateriaESkillLearned(const unsigned int id, const bool weapon, const unsigned int pos, const unsigned int skill)
Checks if a a enemy skill is learned by a equipped materia.
Definition: Savemap.cpp:635
int GetCharacterMateriaId(const unsigned int id, const bool weapon, const unsigned int pos)
Retrieves the ID of an equipped materia.
Definition: Savemap.cpp:594
bool IsEmpty()
Checks if the savemap is empty.
Definition: Savemap.cpp:369
void SetCharacterInfo(const unsigned int id, const int char_id, const std::string name, const bool enabled, const bool locked, const unsigned int level, const unsigned int kills, const bool back_row, const unsigned int exp, const unsigned int exp_to_next, const unsigned int limit_level, const unsigned int limit_bar, const unsigned int weapon, const unsigned int armor, const int accessory)
Sets a character basic information in the savemap.
Definition: Savemap.cpp:245
static const unsigned int MAX_LIMIT_TECHNIQUES
Maximum limit techniques per level.
Definition: Savemap.h:917
int GetSetting(const unsigned int key)
Retrieves a setting.
Definition: Savemap.cpp:473
int data_[BANK_COUNT][BANK_ADDRESS_COUNT]
Memory banks.
Definition: Savemap.h:1383
unsigned int GetCharacterExp(const unsigned int id)
Retrieves the total experience of a character.
Definition: Savemap.cpp:513
std::string GetControlKey() const
Retrieves a control string for a savemap.
Definition: Savemap.cpp:163
unsigned int GetCountdownTime()
Retrieves the time in the timer.
Definition: Savemap.cpp:384
Item items_[MAX_ITEM_SLOTS]
Owned items.
Definition: Savemap.h:1336
bool IsStashAtPosESkill(const unsigned int pos)
Checks if there is an Enemy Skill materia at a stash position.
Definition: Savemap.cpp:445
void SetMateriaStash(const unsigned int slot, const int id, const unsigned int ap)
Sets a materia in a materia inventory slot in the savemap.
Definition: Savemap.cpp:206
bool IsStashAtPosESkillLearned(const unsigned int pos, const unsigned int skill)
Checks if a a enemy skill is learned by a materia in the stash.
Definition: Savemap.cpp:451
void Write(int slot, std::string file_name)
Writes the savemap to a file.
Definition: Savemap.cpp:659
std::string GetLocationField()
Retrieves the field ID.
Definition: Savemap.cpp:469
void SetESkillMateria(const unsigned slot, const unsigned int skill, const bool learned)
Sets a skill as learned in an Enemy Skill materia inventory slot in the savemap.
Definition: Savemap.cpp:197
unsigned int GetItemAtPosId(const unsigned int pos)
Retrieves the ID of an item in the inventory.
Definition: Savemap.cpp:391
unsigned int money_
Current party money.
Definition: Savemap.h:1358
unsigned int GetCharacterLimitLevel(const unsigned int id)
Retrieves the current limit level of a character from a saved savemap.
Definition: Savemap.cpp:523
Location location_
Current location.
Definition: Savemap.h:1373
void SetCharacterStat(const unsigned int id, const unsigned int stat, const unsigned int base, const unsigned int extra)
Sets a character stat values in the savemap.
Definition: Savemap.cpp:272
void SetESkillMateriaStash(const unsigned slot, const unsigned int skill, const bool learned)
Sets a skill as learned in an Enemy Skill materia stash slot in the savemap.
Definition: Savemap.cpp:216
void operator=(const Savemap &to_copy)
Assignment operator.
Definition: Savemap.cpp:122
unsigned int GetCharacterArmorId(const unsigned int id)
Retrieves the ID of the armor of a character.
Definition: Savemap.cpp:538
int slot_
The slot the savemap is saved at, or -1 if not saved.
Definition: Savemap.h:1308
bool IsCharacterEnabled(const unsigned int id)
Checks if a character is enabled.
Definition: Savemap.cpp:498
unsigned int GetWindowCornerColourComponent(const unsigned int corner, const unsigned int comp)
Retrieves a colour component from a window corner.
Definition: Savemap.cpp:373
void SetMateria(const unsigned int slot, const int id, const unsigned int ap)
Sets a materia in a materia inventory slot in the savemap.
Definition: Savemap.cpp:188
void SetCharacterStatus(const unsigned int id, const unsigned int status, const bool inflicted)
Adds or removes a status to a character in the savemap.
Definition: Savemap.cpp:363
u8 window_colours_[4][3]
Window colours.
Definition: Savemap.h:1321
static const unsigned int BANK_COUNT
Number of data banks.
Definition: Savemap.h:932
static const unsigned int MAX_KEY_ITEM_SLOTS
Maximum number of inventory slots for key items.
Definition: Savemap.h:887
int GetMateriaAtPosId(const unsigned int pos)
Retrieves the ID of a materia in the inventory.
Definition: Savemap.cpp:407
static const unsigned int MAX_MATERIA_SLOTS
Maximum number of materia slots.
Definition: Savemap.h:892
unsigned int GetStashAtPosAp(const unsigned int pos)
Retrieves the AP of a materia in the stash.
Definition: Savemap.cpp:438
float GetLocationY()
Retrieves the Y coordinate of the player.
Definition: Savemap.cpp:461
bool empty_
Indicates if the savemap is empty or contains actual data.
Definition: Savemap.h:1303
unsigned int GetCharacterMateriaAp(const unsigned int id, const bool weapon, const unsigned int pos)
Retrieves the AP of an equipped materia.
Definition: Savemap.cpp:603
static const unsigned int MAX_LIMIT_BAR
Level at which the limit level is full.
Definition: Savemap.h:922
float GetLocationZ()
Retrieves the Z coordinate of the player.
Definition: Savemap.cpp:463
void SetCountdownTime(const unsigned int seconds)
Sets the time of the curent timer.
Definition: Savemap.cpp:169
int GetStashAtPosId(const unsigned int pos)
Retrieves the ID of a materia in the stash.
Definition: Savemap.cpp:433
static const unsigned int MAX_LIMIT_LEVELS
Maximum limit level.
Definition: Savemap.h:912
static const unsigned int BANK_ADDRESS_COUNT
Number of addresses in each data bank.
Definition: Savemap.h:937
void SetCharacterLimitLearned(const unsigned int id, const unsigned int level, const unsigned int technique, const bool learned, const unsigned int uses)
Sets a character limit learned status in the savemap.
Definition: Savemap.cpp:311
static const unsigned int MAX_STASH_SLOTS
Maximum number of materia slots in the stash.
Definition: Savemap.h:897
Materia materia_[MAX_MATERIA_SLOTS]
Owned materia.
Definition: Savemap.h:1346
void SetCharacterMateria(const unsigned int id, const bool weapon, const unsigned int slot, const int materia, const unsigned int ap)
Sets a materia in a character weapon or armor slot in the savemap.
Definition: Savemap.cpp:321
unsigned int GetCharacterStatExtra(const unsigned int id, const unsigned int stat)
Retrieves the extra value of a stat of a character.
Definition: Savemap.cpp:563
int GetLocationAngle()
Retrieves the facing angle of the player.
Definition: Savemap.cpp:467
unsigned int GetLocationTriangle()
Retrieves the walkmesh triangle of the player.
Definition: Savemap.cpp:465
void Read(std::string file_name)
Reads the savemap data from a file.
Definition: Savemap.cpp:1000
bool IsMateriaAtPosESkill(const unsigned int pos)
Checks if there is an Enemy Skill materia at a inventory position.
Definition: Savemap.cpp:419
std::string control_
Control string.
Definition: Savemap.h:1316
static const unsigned int MAX_ENEMY_SKILLS
Maximum number of skills in an Enemy Skill materia.
Definition: Savemap.h:907
void SetItem(const unsigned int slot, const unsigned int id, const unsigned int quantity)
Sets an item in a inventory slot in the savemap.
Definition: Savemap.cpp:181
void SetData(const unsigned int bank, const unsigned int address, const int value)
Sets data in a data bank.
Definition: Savemap.cpp:134
bool IsCharacterLimitLearned(const unsigned int id, const unsigned int level, const unsigned int tech)
Checks if a limit technique is learned by a character.
Definition: Savemap.cpp:584
int GetCharacterCharId(const unsigned int id)
Retrieves the char ID of a character.
Definition: Savemap.cpp:478
void SetControlKey(const std::string control)
Sets the control string of the savemap.
Definition: Savemap.cpp:138
void SetMoney(const unsigned int money)
Sets the money of the savemap.
Definition: Savemap.cpp:165
static const unsigned int MAX_CHARACTERS
Maximum number of characters.
Definition: Savemap.h:877
unsigned int GetCharacterLevel(const unsigned int id)
Retrieves the level of a character.
Definition: Savemap.cpp:488
bool GetKeyItem(const unsigned int id)
Checks if a key item is owned.
Definition: Savemap.cpp:402
unsigned int GetItemAtPosQty(const unsigned int pos)
Retrieves the quantity of an item in the inventory.
Definition: Savemap.cpp:397
bool key_items_[MAX_KEY_ITEM_SLOTS]
Owned key items.
Definition: Savemap.h:1341
unsigned int GetCharacterLimitUses(const unsigned int id, const unsigned int level)
Retrieves the uses of a character's limit level.
Definition: Savemap.cpp:578
Character characters_[MAX_CHARACTERS]
List of characters.
Definition: Savemap.h:1326
static const unsigned int MAX_PARTY_MEMBERS
Maximum number of party member.
Definition: Savemap.h:927
std::string GetCharacterName(const unsigned int id)
Retrieves the name of a character.
Definition: Savemap.cpp:483
static const unsigned int MAX_ITEM_SLOTS
Maximum number of inventory slots.
Definition: Savemap.h:882
static const unsigned int MAX_EQUIP_SLOTS
Maximum number of materia slots in a weapon or armor.
Definition: Savemap.h:902
float GetLocationX()
Retrieves the X coordinate of the player.
Definition: Savemap.cpp:459
unsigned int GetMateriaAtPosAp(const unsigned int pos)
Retrieves the AP of a materia in the inventory.
Definition: Savemap.cpp:412
bool IsMateriaAtPosESkillLearned(const unsigned int pos, const unsigned int skill)
Checks if a a enemy skill is learned by a materia in the inventory.
Definition: Savemap.cpp:425
unsigned int seconds_
Seconds played.
Definition: Savemap.h:1363
Savemap()
Constructor.
Definition: Savemap.cpp:25
void SetCharacterESkillMateria(const unsigned int id, const bool weapon, const unsigned int slot, const unsigned int skill, const bool learned)
Sets a skill as learned in a character's Enemy Skill materia in the savemap.
Definition: Savemap.cpp:343
void SetLocation(const float x, const float y, const float z, const unsigned int triangle, const int angle, std::string field, std::string name)
Sets the current location in the savemap.
Definition: Savemap.cpp:227
unsigned int GetCharacterStatBase(const unsigned int id, const unsigned int stat)
Retrieves the base value of a stat of a character.
Definition: Savemap.cpp:548
int GetData(const unsigned int bank, const unsigned int address)
Retrieves the value of a bank address.
Definition: Savemap.cpp:653
unsigned int GetMoney()
Retrieves the money.
Definition: Savemap.cpp:380
bool IsCharacterMateriaESkill(const unsigned int id, const bool weapon, const unsigned int pos)
Checks if an equipped materia is Enemy Skill.
Definition: Savemap.cpp:620
int GetCharacterAccessoryId(const unsigned int id)
Retrieves the ID of the weapon of a character.
Definition: Savemap.cpp:543
int GetPartyMember(const unsigned int pos)
Retrieves the ID of a party member.
Definition: Savemap.cpp:386
bool IsCharacterBackRow(const unsigned int id)
Checks the row of a character.
Definition: Savemap.cpp:508
void SetParty(const int member_1, const int member_2, const int member_3)
Sets the current party in the savemap.
Definition: Savemap.cpp:175
void SetSetting(const unsigned int key, const unsigned int value)
Sets a setting value in the savemap.
Definition: Savemap.cpp:241
unsigned int GetGameTime()
Retrieves the total playtime.
Definition: Savemap.cpp:382
unsigned int countdown_
Current countdown remaining seconds.
Definition: Savemap.h:1368
unsigned int GetCharacterLimitBar(const unsigned int id)
Retrieves the current limit bar status level of a character.
Definition: Savemap.cpp:528
void SetKeyItem(const unsigned int item, const bool owned)
Marks a key item as owned or non-owned in the savemap.
Definition: Savemap.cpp:171
int party_[MAX_PARTY_MEMBERS]
IDs of characters in the party.
Definition: Savemap.h:1331
bool IsCharacterLocked(const unsigned int id)
Checks if a character is locked in or out of the party.
Definition: Savemap.cpp:503
~Savemap()
Destructor.
Definition: Savemap.cpp:120
static const unsigned int MAX_COLOUR
MAx colour component value.
Definition: Savemap.h:942
unsigned int GetCharacterWeaponId(const unsigned int id)
Retrieves the ID of the weapon of a character.
Definition: Savemap.cpp:533
A weapon or armor.
Definition: Savemap.h:1154
u16 id
Item ID of the weapon or armor.
Definition: Savemap.h:1159
Materia materia[MAX_EQUIP_SLOTS]
Materia in the weapon/armor.
Definition: Savemap.h:1164
A character stat.
Definition: Savemap.h:1137
unsigned int extra
For STR, VIT, DEX and LCK, it means the source bonus.
Definition: Savemap.h:1148
unsigned int base
Stat base value.
Definition: Savemap.h:1142
A character entri in the savemap.
Definition: Savemap.h:1132
Stat mag
MAG stat.
Definition: Savemap.h:1230
unsigned int limit_uses[MAX_LIMIT_LEVELS]
Uses of techniques in each limit level.
Definition: Savemap.h:1277
Stat lck
LCK stat.
Definition: Savemap.h:1245
std::vector< u8 > status
Current status list.
Definition: Savemap.h:1297
int accessory
Equipped accessory ID.
Definition: Savemap.h:1292
unsigned int id
Character ID, sequential.
Definition: Savemap.h:1170
unsigned int limit_level
Current limit level.
Definition: Savemap.h:1260
std::string name
Character name.
Definition: Savemap.h:1190
Stat str
STR stat.
Definition: Savemap.h:1220
Equipment weapon
Equipped weapon;.
Definition: Savemap.h:1282
Stat spr
SPR stat.
Definition: Savemap.h:1235
unsigned int limit_bar
Current limit bar.
Definition: Savemap.h:1265
unsigned int exp_to_next
Experience required to reach next level.
Definition: Savemap.h:1215
Stat mp
MP stat.
Definition: Savemap.h:1255
bool back_row
Indicates if the character is in the back_row;.
Definition: Savemap.h:1205
bool enabled
Indicates if the character has been unlocked for the PHS.
Definition: Savemap.h:1180
unsigned int level
Character level.
Definition: Savemap.h:1195
Stat hp
HP stat.
Definition: Savemap.h:1250
Equipment armor
Equipped weapon;.
Definition: Savemap.h:1287
bool limits_learned[MAX_LIMIT_LEVELS][MAX_LIMIT_TECHNIQUES]
Learned limits.
Definition: Savemap.h:1272
unsigned int exp
Total experience.
Definition: Savemap.h:1210
int char_id
Character ID, can change with the history.
Definition: Savemap.h:1175
bool locked
Indicates if the character is locked in or out of the PHS.
Definition: Savemap.h:1185
unsigned int kills
Enemies killed by the character.
Definition: Savemap.h:1200
Stat dex
DEX stat.
Definition: Savemap.h:1240
Stat vit
VIT stat.
Definition: Savemap.h:1225
Item structure.
Definition: Savemap.h:1116
unsigned int quantity
Item stock.
Definition: Savemap.h:1126
int id
Item ID.
Definition: Savemap.h:1121
Location information.
Definition: Savemap.h:1045
float z
Z coordinate.
Definition: Savemap.h:1062
std::string field
Current field map.
Definition: Savemap.h:1079
std::string name
Location name.
Definition: Savemap.h:1084
float x
X coordinate.
Definition: Savemap.h:1050
float y
Y coordinate.
Definition: Savemap.h:1055
unsigned int angle
Facing direction.
Definition: Savemap.h:1072
unsigned int triangle
Triangle in the walkmesh;.
Definition: Savemap.h:1067
A materia structure.
Definition: Savemap.h:1090
int id
Materia ID.
Definition: Savemap.h:1095
bool enemy_skill_learned[MAX_ENEMY_SKILLS]
Learned enemy skills (only for Enemy Skill materia).
Definition: Savemap.h:1110
unsigned int ap
Total AP in the materia.
Definition: Savemap.h:1100
bool enemy_skill
Indicates if the materia is an enemy skill materia.
Definition: Savemap.h:1105
Game settings.
Definition: Savemap.h:948
AtbMode
ATB modes.
Definition: Savemap.h:989
unsigned int battle_msg_speed
Battle message speed.
Definition: Savemap.h:1015
unsigned int battle_speed
Battle speed.
Definition: Savemap.h:1010
unsigned int msg_speed
Field message speed.
Definition: Savemap.h:1020
MagicOrder
Magic sorting methods.
Definition: Savemap.h:953
bool batle_help
Indicates if the battle help window is to be shown.
Definition: Savemap.h:1035
AtbMode atb_mode
ATB mode.
Definition: Savemap.h:1030
MagicOrder order
Magic order.
Definition: Savemap.h:1025