Skip to content

Commit 5365c54

Browse files
committed
Fix compatibility with new 066 achievement
1.3.11 saves now load again.
1 parent 3478fb5 commit 5365c54

File tree

1 file changed

+45
-2
lines changed

1 file changed

+45
-2
lines changed

Save.bb

Lines changed: 45 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)