ShiftOS-TheRevival-Old/ShiftOS-TheRevival/Functions/OutGame/SaveLoadSystem.vb

321 lines
15 KiB
VB.net
Raw Normal View History

2022-11-06 18:45:00 +07:00
Imports System.IO
Module SaveLoadSystem
2022-11-27 20:58:48 +07:00
Public Sub NewGameMode(Chapter As Integer)
2022-11-14 13:50:43 +07:00
'Sets all features to 2 (Unavailable for Shiftorium) except ShiftOS Key (AvailableFeatures(11))
2022-11-08 10:22:01 +07:00
Directory.Delete(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\ShiftOS\ShiftFS", True)
Directory.Delete(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\ShiftOS\SysShiftFS", True)
2022-11-08 10:22:01 +07:00
Directory.Delete(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\ShiftOS\saved", True)
Directory.CreateDirectory(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\ShiftOS\ShiftFS")
Directory.CreateDirectory(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\ShiftOS\SysShiftFS")
2022-11-08 10:22:01 +07:00
Directory.CreateDirectory(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\ShiftOS\saved")
Strings.ComputerInfo(0) = "shiftos"
Strings.ComputerInfo(1) = "user"
2022-11-05 05:36:43 +07:00
Strings.ComputerInfo(2) = "0"
Strings.ComputerInfo(4) = "0"
2022-11-27 20:58:48 +07:00
Select Case Chapter
Case 0
Strings.AvailableFeature(0) = "2"
Strings.AvailableFeature(1) = "2"
Strings.AvailableFeature(2) = "2"
Strings.AvailableFeature(3) = "2"
Strings.AvailableFeature(4) = "2"
Strings.AvailableFeature(5) = "2"
Strings.AvailableFeature(6) = "2"
Strings.AvailableFeature(7) = "2"
Strings.AvailableFeature(8) = "2"
Strings.AvailableFeature(9) = "2"
Strings.AvailableFeature(10) = "2"
Strings.AvailableFeature(11) = "0"
Strings.AvailableFeature(12) = "2"
Strings.AvailableFeature(13) = "2"
Strings.AvailableFeature(14) = "2"
Strings.AvailableFeature(15) = "2"
'0.2.4 Features
Strings.AvailableFeature(16) = "2"
Strings.AvailableFeature(17) = "2"
Strings.AvailableFeature(18) = "2"
Strings.AvailableFeature(19) = "2"
Strings.AvailableFeature(20) = "2"
Strings.AvailableFeature(21) = "2"
Strings.AvailableFeature(22) = "2"
'0.2.5 Features
Strings.AvailableFeature(23) = "2"
Strings.AvailableFeature(24) = "2"
Strings.AvailableFeature(25) = "2"
Strings.AvailableFeature(26) = "2"
Strings.AvailableFeature(27) = "2"
Strings.AvailableFeature(28) = "2"
Strings.AvailableFeature(29) = "2"
Strings.AvailableFeature(30) = "2"
'0.2.6 Features
Strings.AvailableFeature(31) = "2"
Strings.AvailableFeature(32) = "2"
Strings.AvailableFeature(33) = "2"
'0.2.7 Features
Strings.AvailableFeature(34) = "2"
Strings.AvailableFeature(35) = "2"
Strings.AvailableFeature(36) = "2"
Strings.AvailableFeature(37) = "2"
Strings.AvailableFeature(38) = "2"
Strings.AvailableFeature(39) = "2"
Strings.AvailableFeature(40) = "2"
Strings.AvailableFeature(41) = "2"
'0.2.8 Features
Strings.AvailableFeature(42) = "2"
2022-12-04 18:46:53 +07:00
Strings.AvailableFeature(43) = "2"
Strings.AvailableFeature(44) = "2"
Strings.AvailableFeature(45) = "2"
Strings.AvailableFeature(46) = "2"
Strings.AvailableFeature(47) = "2"
Strings.AvailableFeature(48) = "2"
Strings.AvailableFeature(49) = "2"
Strings.AvailableFeature(50) = "2"
Strings.AvailableFeature(51) = "2"
Strings.AvailableFeature(52) = "2"
Strings.AvailableFeature(53) = "2"
2022-11-27 20:58:48 +07:00
Case 1
Strings.AvailableFeature(0) = "1"
Strings.AvailableFeature(1) = "1"
Strings.AvailableFeature(2) = "1"
Strings.AvailableFeature(3) = "1"
Strings.AvailableFeature(4) = "1"
Strings.AvailableFeature(5) = "3"
Strings.AvailableFeature(6) = "3"
Strings.AvailableFeature(7) = "3"
Strings.AvailableFeature(8) = "1"
Strings.AvailableFeature(9) = "1"
Strings.AvailableFeature(10) = "1"
Strings.AvailableFeature(11) = "1"
Strings.AvailableFeature(12) = "3"
Strings.AvailableFeature(13) = "1"
Strings.AvailableFeature(14) = "1"
Strings.AvailableFeature(15) = "1"
'0.2.4 Features
Strings.AvailableFeature(16) = "1"
Strings.AvailableFeature(17) = "1"
Strings.AvailableFeature(18) = "1"
Strings.AvailableFeature(19) = "1"
Strings.AvailableFeature(20) = "1"
Strings.AvailableFeature(21) = "1"
Strings.AvailableFeature(22) = "1"
'0.2.5 Features
Strings.AvailableFeature(23) = "1"
Strings.AvailableFeature(24) = "3"
Strings.AvailableFeature(25) = "3"
Strings.AvailableFeature(26) = "3"
Strings.AvailableFeature(27) = "3"
Strings.AvailableFeature(28) = "3"
Strings.AvailableFeature(29) = "1"
Strings.AvailableFeature(30) = "1"
'0.2.6 Features
Strings.AvailableFeature(31) = "1"
Strings.AvailableFeature(32) = "1"
Strings.AvailableFeature(33) = "1"
'0.2.7 Features
Strings.AvailableFeature(34) = "1"
Strings.AvailableFeature(35) = "2"
Strings.AvailableFeature(36) = "2"
Strings.AvailableFeature(37) = "2"
Strings.AvailableFeature(38) = "2"
Strings.AvailableFeature(39) = "2"
Strings.AvailableFeature(40) = "2"
Strings.AvailableFeature(41) = "2"
'0.2.8 Features
Strings.AvailableFeature(42) = "2"
2022-12-03 07:10:41 +07:00
Strings.AvailableFeature(43) = "2"
Strings.AvailableFeature(44) = "2"
Strings.AvailableFeature(45) = "2"
Strings.AvailableFeature(46) = "2"
Strings.AvailableFeature(47) = "2"
Strings.AvailableFeature(48) = "2"
Strings.AvailableFeature(49) = "2"
Strings.AvailableFeature(50) = "2"
Strings.AvailableFeature(51) = "2"
Strings.AvailableFeature(52) = "2"
Strings.AvailableFeature(53) = "2"
2022-11-27 20:58:48 +07:00
End Select
End Sub
Public Sub FreeRoamMode()
2022-11-22 05:42:55 +07:00
IsConsoleParent = True
2022-11-24 08:18:00 +07:00
'Sets all features to as bought or either upgraded, Complete ShiftOS should have been like this
2022-11-08 10:22:01 +07:00
Strings.ComputerInfo(0) = "shiftos"
Strings.ComputerInfo(1) = "user"
2022-11-05 05:36:43 +07:00
Strings.ComputerInfo(2) = "0"
2022-12-10 01:56:35 +07:00
Strings.ComputerInfo(4) = "53"
Strings.AvailableFeature(0) = "1"
Strings.AvailableFeature(1) = "1"
Strings.AvailableFeature(2) = "1"
Strings.AvailableFeature(3) = "1"
Strings.AvailableFeature(4) = "1"
Strings.AvailableFeature(5) = "3"
Strings.AvailableFeature(6) = "3"
Strings.AvailableFeature(7) = "3"
2022-11-05 05:36:43 +07:00
Strings.AvailableFeature(8) = "1"
2022-11-05 22:24:30 +07:00
Strings.AvailableFeature(9) = "1"
Strings.AvailableFeature(10) = "1"
Strings.AvailableFeature(11) = "1"
Strings.AvailableFeature(12) = "3"
2022-11-06 14:24:53 +07:00
Strings.AvailableFeature(13) = "1"
Strings.AvailableFeature(14) = "1"
Strings.AvailableFeature(15) = "1"
2022-11-07 07:13:50 +07:00
'0.2.4 Features
Strings.AvailableFeature(16) = "1"
Strings.AvailableFeature(17) = "1"
2022-11-08 10:22:01 +07:00
Strings.AvailableFeature(18) = "1"
Strings.AvailableFeature(19) = "1"
Strings.AvailableFeature(20) = "1"
2022-11-09 06:30:53 +07:00
Strings.AvailableFeature(21) = "1"
Strings.AvailableFeature(22) = "1"
'0.2.5 Features
Strings.AvailableFeature(23) = "1"
Strings.AvailableFeature(24) = "3"
Strings.AvailableFeature(25) = "3"
Strings.AvailableFeature(26) = "3"
Strings.AvailableFeature(27) = "3"
Strings.AvailableFeature(28) = "3"
Strings.AvailableFeature(29) = "1"
Strings.AvailableFeature(30) = "1"
2022-11-14 13:50:43 +07:00
'0.2.6 Features
Strings.AvailableFeature(31) = "1"
2022-11-20 02:25:18 +07:00
Strings.AvailableFeature(32) = "1"
Strings.AvailableFeature(33) = "1"
'0.2.7 Features
Strings.AvailableFeature(34) = "1"
2022-11-24 08:18:00 +07:00
Strings.AvailableFeature(35) = "1"
Strings.AvailableFeature(36) = "1"
Strings.AvailableFeature(37) = "1"
Strings.AvailableFeature(38) = "1"
Strings.AvailableFeature(39) = "1"
Strings.AvailableFeature(40) = "3"
Strings.AvailableFeature(41) = "1"
2022-11-27 20:58:48 +07:00
'0.2.8 Features
Strings.AvailableFeature(42) = "1"
2022-12-03 07:10:41 +07:00
Strings.AvailableFeature(43) = "1"
Strings.AvailableFeature(44) = "1"
Strings.AvailableFeature(45) = "1"
Strings.AvailableFeature(46) = "1"
Strings.AvailableFeature(47) = "1"
Strings.AvailableFeature(48) = "1"
Strings.AvailableFeature(49) = "1"
Strings.AvailableFeature(50) = "1"
Strings.AvailableFeature(51) = "1"
Strings.AvailableFeature(52) = "1"
Strings.AvailableFeature(53) = "1"
'GUI Customizations
GUISCustomizations.DesktopColor = Color.Black
GUISCustomizations.GUIConsoleFont = New Font("Consolas", 11)
End Sub
Public Sub GodMode()
2022-11-14 13:50:43 +07:00
'Same as new game but codepoints automatically assigned to 9999 and not saved into the FS
2022-11-08 10:22:01 +07:00
Strings.ComputerInfo(0) = "shiftos"
Strings.ComputerInfo(1) = "user"
2022-12-10 01:56:35 +07:00
Strings.ComputerInfo(2) = 100000
2022-11-05 05:36:43 +07:00
Strings.ComputerInfo(4) = "0"
Strings.AvailableFeature(0) = "2"
Strings.AvailableFeature(1) = "2"
Strings.AvailableFeature(2) = "2"
Strings.AvailableFeature(3) = "2"
Strings.AvailableFeature(4) = "2"
Strings.AvailableFeature(5) = "2"
Strings.AvailableFeature(6) = "2"
Strings.AvailableFeature(7) = "2"
2022-11-05 05:36:43 +07:00
Strings.AvailableFeature(8) = "2"
2022-11-05 22:24:30 +07:00
Strings.AvailableFeature(9) = "2"
Strings.AvailableFeature(10) = "2"
Strings.AvailableFeature(11) = "0"
Strings.AvailableFeature(12) = "2"
2022-11-06 14:24:53 +07:00
Strings.AvailableFeature(14) = "2"
Strings.AvailableFeature(15) = "2"
2022-11-07 07:13:50 +07:00
'0.2.4 Features
Strings.AvailableFeature(16) = "2"
Strings.AvailableFeature(17) = "2"
2022-11-08 10:22:01 +07:00
Strings.AvailableFeature(18) = "2"
Strings.AvailableFeature(19) = "2"
Strings.AvailableFeature(20) = "2"
2022-11-09 06:30:53 +07:00
Strings.AvailableFeature(21) = "2"
Strings.AvailableFeature(22) = "2"
'0.2.5 Features
Strings.AvailableFeature(23) = "2"
Strings.AvailableFeature(24) = "2"
Strings.AvailableFeature(25) = "2"
Strings.AvailableFeature(26) = "2"
Strings.AvailableFeature(27) = "2"
Strings.AvailableFeature(28) = "2"
Strings.AvailableFeature(29) = "2"
Strings.AvailableFeature(30) = "2"
2022-11-14 13:50:43 +07:00
'0.2.6 Features
Strings.AvailableFeature(31) = "2"
2022-11-20 02:25:18 +07:00
Strings.AvailableFeature(32) = "2"
Strings.AvailableFeature(33) = "2"
'0.2.7 Features
Strings.AvailableFeature(34) = "2"
2022-11-24 08:18:00 +07:00
Strings.AvailableFeature(35) = "2"
Strings.AvailableFeature(36) = "2"
Strings.AvailableFeature(37) = "2"
Strings.AvailableFeature(38) = "2"
Strings.AvailableFeature(39) = "2"
Strings.AvailableFeature(40) = "2"
Strings.AvailableFeature(41) = "2"
2022-11-27 20:58:48 +07:00
'0.2.8 Features
Strings.AvailableFeature(42) = "2"
2022-12-03 07:10:41 +07:00
Strings.AvailableFeature(43) = "2"
Strings.AvailableFeature(44) = "2"
Strings.AvailableFeature(45) = "2"
Strings.AvailableFeature(46) = "2"
Strings.AvailableFeature(47) = "2"
Strings.AvailableFeature(48) = "2"
Strings.AvailableFeature(49) = "2"
Strings.AvailableFeature(50) = "2"
Strings.AvailableFeature(51) = "2"
Strings.AvailableFeature(52) = "2"
Strings.AvailableFeature(53) = "2"
End Sub
2022-11-06 18:45:00 +07:00
Public Sub SaveGame()
If Strings.OnceInfo(6) = "story" Then
File.WriteAllLines(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\ShiftOS\saved\ComputerInfo.sos", Strings.ComputerInfo)
File.WriteAllLines(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\ShiftOS\saved\AvailableFeature.sos", Strings.AvailableFeature)
2022-11-24 22:51:51 +07:00
If Strings.AvailableFeature(35) Then
Select Case Strings.ComputerInfo(7)
Case 1
Dim DesktopColor As Integer = GUISCustomizations.DesktopColor.ToArgb()
File.WriteAllText(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\ShiftOS\saved\Shifter_Desktop.sos", DesktopColor.ToString)
Dim ConsoleFont(1) As String
ConsoleFont(0) = GUISCustomizations.GUIConsoleFont.Name
ConsoleFont(1) = GUISCustomizations.GUIConsoleFont.Size
File.WriteAllLines(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\ShiftOS\saved\Shifter_ConsoleFont.sos", ConsoleFont)
2022-11-24 22:51:51 +07:00
End Select
End If
2022-11-06 18:45:00 +07:00
End If
End Sub
Public Sub LoadGame()
If Strings.OnceInfo(6) = "story" Then
Strings.ComputerInfo = File.ReadAllLines(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\ShiftOS\saved\ComputerInfo.sos")
Strings.AvailableFeature = File.ReadAllLines(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\ShiftOS\saved\AvailableFeature.sos")
2022-11-24 22:51:51 +07:00
If Strings.AvailableFeature(35) Then
Select Case Strings.ComputerInfo(7)
Case 1
Dim DesktopColor As Integer
If File.Exists(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\ShiftOS\saved\Shifter_Desktop.sos") = True Then
DesktopColor = File.ReadAllText(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\ShiftOS\saved\Shifter_Desktop.sos")
GUISCustomizations.DesktopColor = Color.FromArgb(DesktopColor)
Else
GUISCustomizations.DesktopColor = Color.Black
End If
If File.Exists(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\ShiftOS\saved\Shifter_ConsoleFont.sos") = True Then
Dim ConsoleFont(1) As String
ConsoleFont = File.ReadAllLines(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\ShiftOS\saved\Shifter_ConsoleFont.sos")
GUISCustomizations.GUIConsoleFont = New Font(ConsoleFont(0), ConsoleFont(1))
Else
GUISCustomizations.GUIConsoleFont = New Font("Consolas", 11)
End If
2022-11-24 22:51:51 +07:00
End Select
End If
2022-11-06 18:45:00 +07:00
End If
End Sub
End Module