generated from sigonasr2/CPlusPlusProjectTemplate
Potential to read from save file now.
Co-authored-by: sigonasr2 <sigonasr2@gmail.com>
This commit is contained in:
parent
d9c9a6e276
commit
c57aea3cf6
Binary file not shown.
@ -132,6 +132,10 @@ class SeasonI:public PixelGameEngine{
|
|||||||
void DrawTriggers();
|
void DrawTriggers();
|
||||||
void SaveGameSaveData(int saveSlot);
|
void SaveGameSaveData(int saveSlot);
|
||||||
void LoadGameSaveData(int saveSlot);
|
void LoadGameSaveData(int saveSlot);
|
||||||
|
int ReadIntFromStream(std::ifstream&f);
|
||||||
|
float ReadFloatFromStream(std::ifstream&f);
|
||||||
|
double ReadDoubleFromStream(std::ifstream&f);
|
||||||
|
std::string ReadStringFromStream(std::ifstream&f);
|
||||||
};
|
};
|
||||||
extern SeasonI*GAME;
|
extern SeasonI*GAME;
|
||||||
#endif
|
#endif
|
74
main.cpp
74
main.cpp
@ -5226,8 +5226,80 @@ void SeasonI::SaveGameSaveData(int saveSlot) {
|
|||||||
file.close();
|
file.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
void SeasonI::LoadGameSaveData(int saveSlot) {
|
int SeasonI::ReadIntFromStream(std::ifstream&f) {
|
||||||
|
int temp;
|
||||||
|
f>>temp;
|
||||||
|
return temp;
|
||||||
|
};
|
||||||
|
float SeasonI::ReadFloatFromStream(std::ifstream&f) {
|
||||||
|
float temp;
|
||||||
|
f>>temp;
|
||||||
|
return temp;
|
||||||
|
};
|
||||||
|
double SeasonI::ReadDoubleFromStream(std::ifstream&f) {
|
||||||
|
double temp;
|
||||||
|
f>>temp;
|
||||||
|
return temp;
|
||||||
|
};
|
||||||
|
std::string SeasonI::ReadStringFromStream(std::ifstream&f) {
|
||||||
|
std::string temp;
|
||||||
|
f>>temp;
|
||||||
|
return temp;
|
||||||
|
};
|
||||||
|
|
||||||
|
void SeasonI::LoadGameSaveData(int saveSlot) {
|
||||||
|
std::ifstream file("save"+std::to_string(saveSlot));
|
||||||
|
for (int i=PLAYER;i<7;i++) {
|
||||||
|
PARTY_MEMBER_STATS[i]->_SetDirectHP(ReadIntFromStream(file));
|
||||||
|
PARTY_MEMBER_STATS[i]->stats.maxHP=ReadIntFromStream(file);
|
||||||
|
if (PARTY_MEMBER_STATS[i]->obj!=nullptr) {
|
||||||
|
PARTY_MEMBER_STATS[i]->obj->name=ReadStringFromStream(file);
|
||||||
|
PARTY_MEMBER_STATS[i]->_SetDirectPP(ReadIntFromStream(file));
|
||||||
|
PARTY_MEMBER_STATS[i]->stats.maxPP=ReadIntFromStream(file);
|
||||||
|
PARTY_MEMBER_STATS[i]->stats.baseAtk=ReadIntFromStream(file);
|
||||||
|
PARTY_MEMBER_STATS[i]->stats.speed=ReadIntFromStream(file);
|
||||||
|
int resistanceSize = ReadIntFromStream(file);
|
||||||
|
for (int i=0;i<resistanceSize;i++) {
|
||||||
|
PARTY_MEMBER_STATS[i]->stats.resistances[i]=ReadIntFromStream(file);
|
||||||
|
}
|
||||||
|
PARTY_MEMBER_STATS[i]->stats.damageReduction=ReadIntFromStream(file);
|
||||||
|
PARTY_MEMBER_STATS[i]->stats.smart=ReadIntFromStream(file)?true:false;
|
||||||
|
PARTY_MEMBER_STATS[i]->stats.dumb=ReadIntFromStream(file)?true:false;
|
||||||
|
int movesetSize=ReadIntFromStream(file);
|
||||||
|
PARTY_MEMBER_STATS[i]->moveSet.clear();
|
||||||
|
for (int i=0;i<movesetSize;i++) {
|
||||||
|
PARTY_MEMBER_STATS[i]->moveSet.push_back(MOVELIST[(BattleMoveName)ReadIntFromStream(file)]);
|
||||||
|
}
|
||||||
|
int statusEffectsSize=ReadIntFromStream(file);
|
||||||
|
PARTY_MEMBER_STATS[i]->statusEffects.clear();
|
||||||
|
for (int i=0;i<statusEffectsSize;i++) {
|
||||||
|
PARTY_MEMBER_STATS[i]->statusEffects[(Property)ReadIntFromStream(file)]=ReadIntFromStream(file);
|
||||||
|
}
|
||||||
|
int equipmentSize=ReadIntFromStream(file);
|
||||||
|
for (int i=0;i<equipmentSize;i++) {
|
||||||
|
int equipID=ReadIntFromStream(file);
|
||||||
|
if (equipID!=-1) {
|
||||||
|
PARTY_MEMBER_STATS[i]->equipment[i]=ITEMLIST[(ItemName)equipID];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
double xPos=ReadDoubleFromStream(file);
|
||||||
|
double yPos=ReadDoubleFromStream(file);
|
||||||
|
if (PARTY_MEMBER_STATS[i]->obj!=nullptr) {
|
||||||
|
PARTY_MEMBER_STATS[i]->obj->Move({xPos,yPos});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
int inventorySize=ReadIntFromStream(file);
|
||||||
|
PARTY_INVENTORY.clear();
|
||||||
|
for (int i=0;i<inventorySize;i++) {
|
||||||
|
PARTY_INVENTORY.push_back(ITEMLIST[(ItemName)ReadIntFromStream(file)]);
|
||||||
|
}
|
||||||
|
int gameFlagSize=ReadIntFromStream(file);
|
||||||
|
for (int i=0;i<gameFlagSize;i++) {
|
||||||
|
GAME_FLAGS[i]=ReadIntFromStream(file)?true:false;
|
||||||
|
}
|
||||||
|
CURRENT_MAP=MAPS[(MapName::Map)ReadIntFromStream(file)];
|
||||||
|
LoadMap(CURRENT_MAP);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef TEST_SUITE
|
#ifndef TEST_SUITE
|
||||||
|
2
save0
2
save0
@ -1 +1 @@
|
|||||||
120 120 PLAYER 30 30 8 8 4 0 0 0 0 0 0 0 11 9 10 13 14 15 16 17 33 29 21 25 1 6 4 3 -1 -1 -1 343 200 120 120 NESS 30 30 8 8 4 0 0 0 0 0 0 0 6 33 34 29 30 31 32 0 3 -1 -1 -1 343 200 120 120 PAULA 30 30 8 8 4 0 0 0 0 0 0 0 6 21 22 23 24 37 38 0 3 -1 -1 -1 343 200 120 120 JEFF 30 30 8 8 4 0 0 0 0 0 0 0 1 0 0 3 -1 -1 -1 -999 -999 120 120 ANNA 30 30 8 8 4 0 0 0 0 0 0 0 4 21 25 26 29 0 3 -1 -1 -1 343 200 120 120 KING 30 30 8 8 4 0 0 0 0 0 0 0 1 0 0 3 -1 -1 -1 -999 -999 120 120 POO 30 30 8 8 4 0 0 0 0 0 0 0 1 0 0 3 -1 -1 -1 -999 -999 6 6 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 6 8 3 3 3 10 10 10 10 12 12 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 2 2 2 2 2 2 2 2 5 11 0 0 0 0 1 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
120 120 PLAYER 30 30 8 8 4 0 0 0 0 0 0 0 11 9 10 13 14 15 16 17 33 29 21 25 1 6 4 3 -1 -1 -1 343 200 120 120 NESS 30 30 8 8 4 0 0 0 0 0 0 0 6 33 34 29 30 31 32 0 3 -1 -1 -1 343 200 120 120 PAULA 30 30 8 8 4 0 0 0 0 0 0 0 6 21 22 23 24 37 38 0 3 -1 -1 -1 343 200 120 120 JEFF 30 30 8 8 4 0 0 0 0 0 0 0 1 0 0 3 -1 -1 -1 -999 -999 120 120 ANNA 30 30 8 8 4 0 0 0 0 0 0 0 4 21 25 26 29 0 3 -1 -1 -1 343 200 120 120 KING 30 30 8 8 4 0 0 0 0 0 0 0 1 0 0 3 -1 -1 -1 -999 -999 120 120 POO 30 30 8 8 4 0 0 0 0 0 0 0 1 0 0 3 -1 -1 -1 -999 -999 67 6 6 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 6 8 3 3 3 10 10 10 10 12 12 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 2 2 2 2 2 2 2 2 5 11 512 0 0 0 0 1 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
Loading…
x
Reference in New Issue
Block a user