Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!
Werbeanzeige
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 |
void CMap::Save_Map(const char* FilePath) { std::ofstream File; // To Save the Parts of a Tile unsigned int Save1 = 0; unsigned int Save2 = 0; unsigned int Save3 = 0; unsigned int Save4 = 0; unsigned int Save5 = 0; bool Save6 = false; bool Save7 = false; bool Save8 = false; char Save9 = '0'; void* Save10 = 0; File.open(FilePath, std::ios::out | std::ios::binary); File.write((char*)&Length_X, sizeof(Length_X)); File.write((char*)&Length_Y, sizeof(Length_Y)); File.write((char*)&TileSetID,sizeof(TileSetID)); File.write((char*)&GlobalLight,sizeof(GlobalLight)); for (unsigned int i = 0;i<Length_X;i++) { for (unsigned int j = 0; j<Length_Y;j++) { // Save1 = TileArray[i][j].Get_Coord_X(); Save2 = TileArray[i][j].Get_Coord_Y(); Save3 = TileArray[i][j].Get_ID_Layer_Ground(); Save4 = TileArray[i][j].Get_ID_Layer_Wall(); Save5 = TileArray[i][j].Get_ID_Layer_Deco(); Save6 = TileArray[i][j].Get_LOS_Blocked(); Save7 = TileArray[i][j].Get_Tile_Known(); Save8 = TileArray[i][j].Get_Walkable(); // File.write((char*)&Save1,sizeof(unsigned int)); File.write((char*)&Save2,sizeof(unsigned int)); File.write((char*)&Save3,sizeof(unsigned int)); File.write((char*)&Save4,sizeof(unsigned int)); File.write((char*)&Save5,sizeof(unsigned int)); File.write((char*)&Save6,sizeof(bool)); File.write((char*)&Save7,sizeof(bool)); File.write((char*)&Save8,sizeof(bool)); } } for (unsigned int i = 0;i<Length_X;i++) { for (unsigned int j = 0; j<Length_Y;j++) { Save1 = TileArray[i][j].Get_ID_Number().Coordinaten.X; Save2 = TileArray[i][j].Get_ID_Number().Coordinaten.Y; Save3 = TileArray[i][j].Get_ID_Number().ID_Nummer; Save9 = TileArray[i][j].Get_ID_Number().ID_Letter; // File.write((char*)&Save1,sizeof(unsigned int)); File.write((char*)&Save2,sizeof(unsigned int)); File.write((char*)&Save3,sizeof(unsigned int)); File.write((char*)&Save9,sizeof(char)); // Object Save switch(Save9) { CCreature* Temp_CCreature; Temp_CCreature->Save_Creature(File); // Save the NPC case 'N': //Temp_CCreature = TileArray[i][j].Get_ID_Number().ptr_Object.ptr_Creature; //Temp_CCreature->Save_Creature(File); break; // Save the Monster case 'E': break; // Save the ITem case 'I': break; // Nothing to Save default: break; }; } } File.close(); } |
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
bool CCreature::Save_Creature(std::ofstream File) { unsigned short Save1 = 0; // AttributeLevel; unsigned short Save2 = 0; // temp_AttributeLevel; unsigned int Save3 = 0; // TotalXP; unsigned int Save4 = 0; // XP_Next_Level; std::string Save5 = ""; // AttributeName; bool Save6 = false; // Spells float Save7 = 0.0f; // Attackspeed Save7 = Attackspeed; Save3 = TotalXP; Save4 = UnusedXP; Save3 = Lightradius; // Attribute first en_Attribute Attri_Temp; for(int i = 0;i < static_cast<int> (CreatureEnums::ATTRI_COUNTER);i++) { Attri_Temp = static_cast<CreatureEnums::en_Attribute>(i); // Save1 = Get_Attribute(Attri_Temp).Get_AttributeLevel(); Save2 = Get_Attribute(Attri_Temp).Get_Temp_AttributeLevel(); Save3 = Get_Attribute(Attri_Temp).Get_TotalXP(); Save4 = Get_Attribute(Attri_Temp).Get_XP_Next_Level(); Save5 = Get_Attribute(Attri_Temp).Get_AttributeName(); // File.write((char*)&Save1,sizeof(unsigned short)); File.write((char*)&Save2,sizeof(unsigned short)); File.write((char*)&Save3,sizeof(unsigned int)); File.write((char*)&Save4,sizeof(unsigned int)); File.write((char*)&Save5,sizeof(Save5.size())); } // Now Skills en_Skill Skill_Temp; for(int i = 0;i < static_cast<int> (CreatureEnums::SKILL_COUNTER);i++) { Skill_Temp = static_cast<CreatureEnums::en_Skill>(i); // Save1 = Get_Skill(Skill_Temp).Get_SkillLevel(); Save2 = Get_Skill(Skill_Temp).Get_Temp_SkillLevel(); Save3 = Get_Skill(Skill_Temp).Get_TotalXP(); Save4 = Get_Skill(Skill_Temp).Get_XP_Next_Level(); Save5 = Get_Skill(Skill_Temp).Get_SkillName(); // File.write((char*)&Save1,sizeof(unsigned short)); File.write((char*)&Save2,sizeof(unsigned short)); File.write((char*)&Save3,sizeof(unsigned int)); File.write((char*)&Save4,sizeof(unsigned int)); File.write((char*)&Save5,sizeof(Save5.size())); } // Spells en_Spell Spell_Temp; for(int i = 0;i < static_cast<int> (CreatureEnums::SPL_COUNTER);i++) { Spell_Temp = static_cast<en_Spell>(i); Save6 = Get_Spell(Spell_Temp); File.write((char*)&Save6,sizeof(bool)); } // the Rest Save3 = TotalXP; Save4 = UnusedXP; Save7 = Attackspeed; File.write((char*)&Save3,sizeof(unsigned int)); File.write((char*)&Save4,sizeof(unsigned int)); File.write((char*)&Save7,sizeof(float)); Save3 = Lightradius; File.write((char*)&Save3,sizeof(unsigned int)); return true; } |
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
d:\programme\microsoft visual studio 9.0\vc\include\fstream(803) : error C2248: "std::basic_ios<_Elem,_Traits>::basic_ios": Kein Zugriff auf private Member, dessen Deklaration in der std::basic_ios<_Elem,_Traits>-Klasse erfolgte. with [ _Elem=char, _Traits=std::char_traits<char> ] d:\programme\microsoft visual studio 9.0\vc\include\ios(151): Siehe Deklaration von 'std::basic_ios<_Elem,_Traits>::basic_ios' with [ _Elem=char, _Traits=std::char_traits<char> ] Diese Diagnose trat in der vom Compiler generierten Funktion "std::basic_ofstream<_Elem,_Traits>::basic_ofstream(const std::basic_ofstream<_Elem,_Traits> &)" auf. with [ _Elem=char, _Traits=std::char_traits<char> ] Code wird generiert... |
C-/C++-Quelltext |
|
1 |
Temp_CCreature->Save_Creature(File); |
Community-Fossil
Werbeanzeige