@@ -119,6 +119,7 @@ Function SaveGame(file$)
119119 WriteByte f, SoundTransmission
120120 WriteByte f, Contained106
121121
122+ WriteByte f, MAXACHIEVEMENTS
122123 For i = 0 To MAXACHIEVEMENTS- 1
123124 WriteByte f, Achievements(i)
124125 Next
@@ -581,9 +582,30 @@ Function LoadGame(file$)
581582 SoundTransmission = ReadByte(f)
582583 Contained106 = ReadByte(f)
583584
584- For i = 0 To MAXACHIEVEMENTS- 1
585+ If CompareVersions(version, " 1.3.12" ) >= 0 Then
586+ temp = ReadByte(f)
587+ Else
588+ temp = 37
589+ EndIf
590+ For i = 0 To temp- 1
585591 Achievements(i)= ReadByte(f)
586592 Next
593+ If CompareVersions(version, " 1.3.12" ) < 0 Then
594+ Achievements(37 )= Achievements(36 )
595+ Achievements(36 )= Achievements(31 )
596+ Achievements(31 )= Achievements(28 )
597+ Achievements(28 )= Achievements(34 )
598+ Achievements(34 )= Achievements(32 )
599+ Achievements(32 )= Achievements(29 )
600+ Achievements(29 )= Achievements(35 )
601+ Achievements(35 )= Achievements(33 )
602+ Achievements(33 )= Achievements(30 )
603+ Achievements(30 )= Achievements(27 )
604+ For i = 27 To 6 Step - 1
605+ Achievements(i)= Achievements(i- 1 )
606+ Next
607+ Achievements(5 )= False
608+ EndIf
587609 RefinedItems = ReadInt(f)
588610
589611 MapWidth = ReadInt(f)
@@ -1416,9 +1438,30 @@ Function LoadGameQuick(file$)
14161438 SoundTransmission = ReadByte(f)
14171439 Contained106 = ReadByte(f)
14181440
1419- For i = 0 To MAXACHIEVEMENTS- 1
1441+ If CompareVersions(version, " 1.3.12" ) >= 0 Then
1442+ temp = ReadByte(f)
1443+ Else
1444+ temp = 37
1445+ EndIf
1446+ For i = 0 To temp- 1
14201447 Achievements(i)= ReadByte(f)
14211448 Next
1449+ If CompareVersions(version, " 1.3.12" ) < 0 Then
1450+ Achievements(37 )= Achievements(36 )
1451+ Achievements(36 )= Achievements(31 )
1452+ Achievements(31 )= Achievements(28 )
1453+ Achievements(28 )= Achievements(34 )
1454+ Achievements(34 )= Achievements(32 )
1455+ Achievements(32 )= Achievements(29 )
1456+ Achievements(29 )= Achievements(35 )
1457+ Achievements(35 )= Achievements(33 )
1458+ Achievements(33 )= Achievements(30 )
1459+ Achievements(30 )= Achievements(27 )
1460+ For i = 27 To 6 Step - 1
1461+ Achievements(i)= Achievements(i- 1 )
1462+ Next
1463+ Achievements(5 )= False
1464+ EndIf
14221465 RefinedItems = ReadInt(f)
14231466
14241467 MapWidth = ReadInt(f)
0 commit comments