aboutsummaryrefslogtreecommitdiff
path: root/ShiftOS-TheRevival/Functions/InGame
diff options
context:
space:
mode:
authorEverythingWindows <[email protected]>2022-11-14 13:50:43 +0700
committerEverythingWindows <[email protected]>2022-11-14 13:50:43 +0700
commitbd4c45f316d11e124fe5d21d9c5f66e21149fc5d (patch)
treec9b1a4ad85f7d8c6b3cbe05f7769cb04f907dfa3 /ShiftOS-TheRevival/Functions/InGame
parentb37a6e60c9ffa266fc1fc9afc13cada7704100b0 (diff)
downloadshiftos-therevival-old-bd4c45f316d11e124fe5d21d9c5f66e21149fc5d.tar.gz
shiftos-therevival-old-bd4c45f316d11e124fe5d21d9c5f66e21149fc5d.tar.bz2
shiftos-therevival-old-bd4c45f316d11e124fe5d21d9c5f66e21149fc5d.zip
More organized
Diffstat (limited to 'ShiftOS-TheRevival/Functions/InGame')
-rw-r--r--ShiftOS-TheRevival/Functions/InGame/DirectoryManagements.vb83
-rw-r--r--ShiftOS-TheRevival/Functions/InGame/FileManagement.vb25
-rw-r--r--ShiftOS-TheRevival/Functions/InGame/Shiftoriums.vb684
-rw-r--r--ShiftOS-TheRevival/Functions/InGame/Strings.vb118
-rw-r--r--ShiftOS-TheRevival/Functions/InGame/TerminalColorSystem.vb212
-rw-r--r--ShiftOS-TheRevival/Functions/InGame/TerminalExternalApps.vb328
-rw-r--r--ShiftOS-TheRevival/Functions/InGame/TerminalInternalApps.vb447
7 files changed, 1897 insertions, 0 deletions
diff --git a/ShiftOS-TheRevival/Functions/InGame/DirectoryManagements.vb b/ShiftOS-TheRevival/Functions/InGame/DirectoryManagements.vb
new file mode 100644
index 0000000..7647e1e
--- /dev/null
+++ b/ShiftOS-TheRevival/Functions/InGame/DirectoryManagements.vb
@@ -0,0 +1,83 @@
+Module DirectoryManagements
+ Dim spaces As String
+ Public Sub TerminalDirectories(TheDirectory As String)
+ Console.Pseudodir = TheDirectory.Replace(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\ShiftOS\ShiftFS", "!")
+ NewLine("Contents of " & Console.Pseudodir)
+ NewLine(Nothing)
+ NewLine("[DIR] 0 KB .")
+ NewLine("[DIR] 0 KB ..")
+ For Each Dir As String In IO.Directory.GetDirectories(TheDirectory)
+ Dim dirinf As New IO.DirectoryInfo(Dir)
+ NewLine("[DIR] 0 KB " & dirinf.Name)
+ Next
+ For Each file As String In IO.Directory.GetFiles(TheDirectory)
+ Dim filinf As New IO.FileInfo(file)
+ Dim filsize As Long = filinf.Length / 1024
+ Dim thesize As Integer = 1
+ Do
+ If filsize >= 1024 Then
+ filsize = filsize / 1024
+ thesize = thesize + 1
+ Else
+ Exit Do
+ End If
+ Loop
+ Select Case filsize
+ Case 0 To 9
+ spaces = " "
+ Case 10 To 99
+ spaces = " "
+ Case 100 To 999
+ spaces = " "
+ Case 1000 To 1023
+ spaces = " "
+ End Select
+ Select Case thesize
+ Case 1
+ NewLine(spaces & filsize & " KB " & filinf.Name)
+ Case 2
+ NewLine(spaces & filsize & " MB " & filinf.Name)
+ Case 3
+ NewLine(spaces & filsize & " GB " & filinf.Name)
+ End Select
+ Next
+ End Sub
+
+ Public Sub NavigateDir(TheDirectory As String)
+ If TheDirectory = ".." Then
+ If Console.CurrentDirectory = Strings.OnceInfo(1) Then
+ NewLine("!\")
+ Else
+ Console.CurrentDirectory = IO.Directory.GetParent(Console.CurrentDirectory).ToString
+ End If
+ Else
+ If IO.Directory.Exists(Console.CurrentDirectory + "\" + TheDirectory) Then
+ Console.CurrentDirectory = Console.CurrentDirectory & "\" & TheDirectory
+ ElseIf IO.Directory.Exists(TheDirectory) Then
+ Console.CurrentDirectory = TheDirectory
+ Else
+ NewLine("The directory is not exist!")
+ End If
+ End If
+ End Sub
+
+ Public Sub CreateDir(TheDirectory As String)
+ If IO.Directory.Exists(Console.CurrentDirectory + "\" + TheDirectory) Then
+ NewLine("Directory is already exists!")
+ Else
+ IO.Directory.CreateDirectory(Console.CurrentDirectory + "\" + TheDirectory)
+ End If
+ End Sub
+
+ Public Sub RemoveDir(TheDirectory As String)
+ If IO.Directory.Exists(Console.CurrentDirectory + "\" + TheDirectory) Then
+ Try
+ IO.Directory.Delete(Console.CurrentDirectory + "\" + TheDirectory)
+ Catch ex As Exception
+ NewLine(ex.Message)
+ End Try
+ Else
+ NewLine("The directory is not exists!")
+ End If
+ End Sub
+End Module
diff --git a/ShiftOS-TheRevival/Functions/InGame/FileManagement.vb b/ShiftOS-TheRevival/Functions/InGame/FileManagement.vb
new file mode 100644
index 0000000..b84a2a0
--- /dev/null
+++ b/ShiftOS-TheRevival/Functions/InGame/FileManagement.vb
@@ -0,0 +1,25 @@
+Imports System.IO
+
+Module FileManagement
+ Public Sub CatFile(filename As String)
+ If File.Exists(Console.CurrentDirectory & "\" & filename) = True Then
+ Dim ContentsFinal As String = File.ReadAllText(Console.CurrentDirectory & "\" & filename)
+ NewLine(ContentsFinal)
+ End If
+ End Sub
+
+ Public Sub DeleteFile(filename As String)
+ If File.Exists(Console.CurrentDirectory & "\" & filename) = True Then
+ File.Delete(Console.CurrentDirectory & "\" & filename)
+ End If
+ End Sub
+
+ Public Sub SaveFile(filename As String)
+ 'If File.Exists(Terminal.CurrentDirectory & "\" & filename) = False Then
+ ' File.WriteAllText(Terminal.CurrentDirectory & "\" & filename, Terminal.TextBox1.Text)
+ 'Else
+ ' File.WriteAllText(Terminal.CurrentDirectory & "\" & filename, Terminal.TextBox1.Text)
+ 'End If
+ File.WriteAllText(Console.CurrentDirectory & "\" & filename, Console.TextBox1.Text)
+ End Sub
+End Module
diff --git a/ShiftOS-TheRevival/Functions/InGame/Shiftoriums.vb b/ShiftOS-TheRevival/Functions/InGame/Shiftoriums.vb
new file mode 100644
index 0000000..89a1e77
--- /dev/null
+++ b/ShiftOS-TheRevival/Functions/InGame/Shiftoriums.vb
@@ -0,0 +1,684 @@
+Module Shiftoriums
+ Public prompt As String
+
+ Public Sub Shiftorium_ListFeatures()
+ 'Shows available installable feature on Shiftorium
+ 'Only AvailableFeature that are in the value of 0 can be displayed in the list
+ NewLine("Shiftorium Available Feature(s)")
+ NewLine(Nothing)
+ If Strings.AvailableFeature(11) = "0" Then
+ NewLine("(key | 5 CP) ShiftOS Key")
+ Else
+ If Strings.AvailableFeature(0) = "0" Then
+ NewLine("(man | 10 CP) ShiftOS Help Manual")
+ Else
+ If Strings.AvailableFeature(19) = "0" Then
+ NewLine("(username | 15 CP) Custom Username")
+ End If
+ If Strings.AvailableFeature(20) = "0" Then
+ NewLine("(hostname | 15 CP) Custom hostname")
+ End If
+ End If
+ If Strings.AvailableFeature(1) = "0" Then
+ NewLine("(clear | 20 CP) Clear Terminal Screen")
+ Else
+ If Strings.AvailableFeature(2) = "0" Then
+ NewLine("(print | 25 CP) Print Terminal Screen")
+ Else
+ If Strings.AvailableFeature(3) = "0" Then
+ NewLine("(termdspdrv | 40 CP) Terminal Display Driver")
+ Else
+ If Strings.AvailableFeature(4) = "0" Then
+ NewLine("(infobar | 50 CP) Terminal InfoBar")
+ End If
+ If Strings.AvailableFeature(8) = "0" Then
+ NewLine("(shiftfetch | 55 CP) Shiftfetch")
+ End If
+ If Strings.AvailableFeature(10) = "0" Then
+ NewLine("(2bitcolor | 60 CP) 2-bit Color Support")
+ Else
+ If Strings.AvailableFeature(13) = "0" Then
+ NewLine("(rgb | 70 CP) Red, Green, and Blue")
+ Else
+ If Strings.AvailableFeature(14) = "0" Then
+ NewLine("(rgb2 | 75 CP) RGB Variant")
+ Else
+ If Strings.AvailableFeature(15) = "0" Then
+ NewLine("(4bitcolor | 80 CP) 4-bit Color Support")
+ Else
+ If Strings.AvailableFeature(16) = "0" Then
+ NewLine("(romdriver | 90 CP) Terminal Read-Only Memory Support")
+ Else
+ If Strings.AvailableFeature(17) = "0" Then
+ NewLine("(textpad | 100 CP) TextPad")
+ Else
+ If Strings.AvailableFeature(30) = "0" Then
+ NewLine("(batchscript | 100 CP) ShiftOS Batch Script Support")
+ End If
+ If Strings.AvailableFeature(31) = "0" Then
+ NewLine("(clipboard | 100 CP) Clipboard support")
+ End If
+ End If
+ End If
+ End If
+ End If
+ End If
+ End If
+ End If
+ If Strings.AvailableFeature(18) = "0" Then
+ NewLine("(shiftkey | 45 CP) ShiftKey")
+ End If
+ If Strings.AvailableFeature(21) = "0" Then
+ NewLine("(rev | 30 CP) Reverse String")
+ Else
+ If Strings.AvailableFeature(22) = "0" Then
+ NewLine("(cowsay | 50 CP) Cowsay")
+ End If
+ End If
+ End If
+ If Strings.AvailableFeature(5) = "0" Then
+ NewLine("(stime | 10 CP) Time by Seconds")
+ Else
+ If Strings.AvailableFeature(6) = "0" Then
+ NewLine("(mtime | 20 CP) Time by Minutes")
+ Else
+ If Strings.AvailableFeature(7) = "0" Then
+ NewLine("(htime | 30 CP) Time by Hours")
+ Else
+ If Strings.AvailableFeature(12) = "0" Then
+ NewLine("(pmam | 40 CP) PM and AM")
+ Else
+ If Strings.AvailableFeature(23) = "0" Then
+ NewLine("(hhmm | 50 CP) Time by Hours and Minutes")
+ Else
+ If Strings.AvailableFeature(24) = "0" Then
+ NewLine("(date | 70 CP) Date command")
+ Else
+ If Strings.AvailableFeature(25) = "0" Then
+ NewLine("(woy | 75 CP) Date by week of year")
+ Else
+ If Strings.AvailableFeature(26) = "0" Then
+ NewLine("(moy | 80 CP) Date by month of year")
+ Else
+ If Strings.AvailableFeature(27) = "0" Then
+ NewLine("(year | 85 CP) Date by year")
+ Else
+ If Strings.AvailableFeature(28) = "0" Then
+ NewLine("(mmyyyy | 90 CP) Date by month and year")
+ Else
+ If Strings.AvailableFeature(29) = "0" Then
+ NewLine("(generaldate | 95 CP) Date by general format")
+ End If
+ End If
+ End If
+ End If
+ End If
+ End If
+ End If
+ End If
+ End If
+ End If
+ End If
+ If Strings.AvailableFeature(9) = "0" Then
+ NewLine("(bc | 55 CP) Basic Calculator")
+ End If
+ End If
+ End If
+ End Sub
+
+ Public Sub Shiftorium_InformationFeatures()
+ 'ManHeader is for the ShiftOS Help Manual header and the 'Cost' footer, kinda like template-ish
+ Dim ManHeader(1) As String
+ 'ManHeader(0) = Insert any feature here for the Case prompt
+ ManHeader(1) = "Cost: "
+ Select Case prompt
+ Case "man"
+ If Strings.AvailableFeature(0) = "0" Then
+ ManHeader(0) = "ShiftOS Help Manual (command: man)"
+ ManHeader(1) = "10 CP"
+ NewLine(ManHeader(0))
+ NewLine(Nothing)
+ NewLine("Shows up any further help instruction on each command, its corresponding action and its example if necessary")
+ NewLine(Nothing)
+ NewLine(ManHeader(1))
+ Console.BadCommand = False
+ End If
+ Case "clear"
+ If Strings.AvailableFeature(1) = "0" Then
+ ManHeader(0) = "Clear Terminal Screen (command: clear)"
+ ManHeader(1) = "20 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Clears the terminal screen" & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "print"
+ If Strings.AvailableFeature(2) = "0" Then
+ ManHeader(0) = "Print Command (command: print)"
+ ManHeader(1) = "25 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Prints a corresponding text entered in the command" & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "termdspdrv"
+ If Strings.AvailableFeature(3) = "0" Then
+ ManHeader(0) = "Terminal Display Driver"
+ ManHeader(1) = "40 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Display driver for ShiftOS' Terminal to utilize advantages such as Infobar, ASCII-based applications" & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "infobar"
+ If Strings.AvailableFeature(4) = "0" Then
+ ManHeader(0) = "Terminal InfoBar"
+ ManHeader(1) = "50 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Panel bar at the bottom of the terminal to display basic informations" & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "stime"
+ If Strings.AvailableFeature(5) = "0" Then
+ ManHeader(0) = "Time by Seconds"
+ ManHeader(1) = "10 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Shows time in seconds form since midnight" & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "stime"
+ If Strings.AvailableFeature(6) = "0" Then
+ ManHeader(0) = "Time by Minutes"
+ ManHeader(1) = "20 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Shows time in minutes form since midnight" & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "htime"
+ If Strings.AvailableFeature(7) = "0" Then
+ ManHeader(0) = "Time by Hours"
+ ManHeader(1) = "30 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Shows time in hours form since midnight" & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "shiftfetch"
+ If Strings.AvailableFeature(8) = "0" Then
+ ManHeader(0) = "Shiftfetch"
+ ManHeader(1) = "55 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "ShiftOS port of Neofetch, A command-line system information tool" & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "bc"
+ If Strings.AvailableFeature(9) = "0" Then
+ ManHeader(0) = "Basic Calculator"
+ ManHeader(1) = "55 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Basic Calculator for simple calculation" & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "2bitcolor"
+ If Strings.AvailableFeature(10) = "0" Then
+ ManHeader(0) = "2-bit Color Support"
+ ManHeader(1) = "60 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Adds 2 colours (Dark Gray, Light Gray) supports to the terminal" & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "key"
+ If Strings.AvailableFeature(11) = "0" Then
+ ManHeader(0) = "ShiftOS Key"
+ ManHeader(1) = "5 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "An encryption key to unlock advanced terminal feature for ShiftOS" & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "pmam"
+ If Strings.AvailableFeature(12) = "0" Then
+ ManHeader(0) = "PM and AM"
+ ManHeader(1) = "40 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Shows time in PM and AM format" & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "rgb"
+ If Strings.AvailableFeature(13) = "0" Then
+ ManHeader(0) = "Red, Green, and Blue"
+ ManHeader(1) = "70 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Adds Red, Green, and Blue support to the Display Driver" & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "rgb2"
+ If Strings.AvailableFeature(14) = "0" Then
+ ManHeader(0) = "RGB Variant"
+ ManHeader(1) = "75 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Adds lighter or darker variant of Red, Green, and Blue" & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "4bitcolor"
+ If Strings.AvailableFeature(15) = "0" Then
+ ManHeader(0) = "4-bit Color Display"
+ ManHeader(1) = "80 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Adds to 16 colours support to the Display Driver" & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "romdriver"
+ If Strings.AvailableFeature(16) = "0" Then
+ ManHeader(0) = "Terminal Read-Only Memory Driver"
+ ManHeader(1) = "90 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "ShiftOS Read-Only Memory support for ShiftOS such as writing and reading permanent memory such as HDD, SDD, etc." & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "textpad"
+ If Strings.AvailableFeature(17) = "0" Then
+ ManHeader(0) = "TextPad"
+ ManHeader(1) = "100 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "A simple text-editor for ShiftOS" & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "shiftkey"
+ If Strings.AvailableFeature(18) = "0" Then
+ ManHeader(0) = "ShiftKey"
+ ManHeader(1) = "45 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Recall the previous command on terminal" & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "username"
+ If Strings.AvailableFeature(19) = "0" Then
+ ManHeader(0) = "Custom Username"
+ ManHeader(1) = "15 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Set custom username for ShfitOS" & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "hostname"
+ If Strings.AvailableFeature(20) = "0" Then
+ ManHeader(0) = "Custom Hostname"
+ ManHeader(1) = "15 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Set custom hostname/computer name for ShfitOS" & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "rev"
+ If Strings.AvailableFeature(21) = "0" Then
+ ManHeader(0) = "Reverse String"
+ ManHeader(1) = "30 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Reverse any text you entered in the terminal" & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "cowsay"
+ If Strings.AvailableFeature(22) = "0" Then
+ ManHeader(0) = "Cowsay"
+ ManHeader(1) = "50 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Make the ASCII cow say anything you want to" & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "hhmm"
+ If Strings.AvailableFeature(23) = "0" Then
+ ManHeader(0) = "Time by Hours and Minutes"
+ ManHeader(1) = "50 CP"
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & ManHeader(0) & Environment.NewLine & Environment.NewLine & "Shows time in Hours and Minutes format" & Environment.NewLine & Environment.NewLine & ManHeader(1)
+ Console.BadCommand = False
+ End If
+ Case "date"
+ If Strings.AvailableFeature(24) = "0" Then
+ ManHeader(0) = "Date command"
+ ManHeader(1) = "70 CP"
+ NewLine(ManHeader(0))
+ NewLine(Nothing)
+ NewLine("Displays date in days format since first day of the year")
+ NewLine(Nothing)
+ NewLine(ManHeader(1))
+ Console.BadCommand = False
+ End If
+ Case "woy"
+ If Strings.AvailableFeature(25) = "0" Then
+ ManHeader(0) = "Date by week of year"
+ ManHeader(1) = "75 CP"
+ NewLine(ManHeader(0))
+ NewLine(Nothing)
+ NewLine("Displays date in week format since first week of the year")
+ NewLine(Nothing)
+ NewLine(ManHeader(1))
+ Console.BadCommand = False
+ End If
+ Case "moy"
+ If Strings.AvailableFeature(26) = "0" Then
+ ManHeader(0) = "Date by month of year"
+ ManHeader(1) = "80 CP"
+ NewLine(ManHeader(0))
+ NewLine(Nothing)
+ NewLine("Displays date in month format since first month of the year")
+ NewLine(Nothing)
+ NewLine(ManHeader(1))
+ Console.BadCommand = False
+ End If
+ Case "year"
+ If Strings.AvailableFeature(27) = "0" Then
+ ManHeader(0) = "Date by year"
+ ManHeader(1) = "85 CP"
+ NewLine(ManHeader(0))
+ NewLine(Nothing)
+ NewLine("Displays date in year format")
+ NewLine(Nothing)
+ NewLine(ManHeader(1))
+ Console.BadCommand = False
+ End If
+ Case "mmyyyy"
+ If Strings.AvailableFeature(28) = "0" Then
+ ManHeader(0) = "Date by month and year"
+ ManHeader(1) = "90 CP"
+ NewLine(ManHeader(0))
+ NewLine(Nothing)
+ NewLine("Displays date in month and year format")
+ NewLine(Nothing)
+ NewLine(ManHeader(1))
+ Console.BadCommand = False
+ End If
+ Case "generaldate"
+ If Strings.AvailableFeature(29) = "0" Then
+ ManHeader(0) = "Date by general format"
+ ManHeader(1) = "95 CP"
+ NewLine(ManHeader(0))
+ NewLine(Nothing)
+ NewLine("Displays date in DD/MM/YYYY format")
+ NewLine(Nothing)
+ NewLine(ManHeader(1))
+ Console.BadCommand = False
+ End If
+ Case "batchscript"
+ If Strings.AvailableFeature(30) = "0" Then
+ ManHeader(0) = "ShiftOS Batch Script Support"
+ ManHeader(1) = "100 CP"
+ NewLine(ManHeader(0))
+ NewLine(Nothing)
+ NewLine("Adds the supports for ShiftOS Batch Script")
+ NewLine(Nothing)
+ NewLine(ManHeader(1))
+ Console.BadCommand = False
+ End If
+ Case "clipboard"
+ If Strings.AvailableFeature(31) = "0" Then
+ ManHeader(0) = "Clipboard Support"
+ ManHeader(1) = "100 CP"
+ NewLine(ManHeader(0))
+ NewLine(Nothing)
+ NewLine("Adds the supports for clipboard")
+ NewLine(Nothing)
+ NewLine(ManHeader(1))
+ Console.BadCommand = False
+ End If
+ Case Else
+ Console.BadCommand = False
+ Console.TextBox1.Text = Console.TextBox1.Text & Environment.NewLine & "Shiftorium: Bad command or not available"
+ End Select
+ End Sub
+
+ Public Sub Shiftorium_DetectInstallFeatures()
+ NewLine("Installing feature...")
+ Select Case prompt
+ Case "man"
+ Shiftorium_InstallFeatures(True, "man", 0, 10)
+ Console.BadCommand = False
+ Case "clear"
+ Shiftorium_InstallFeatures(True, "clear", 1, 20)
+ Console.BadCommand = False
+ Case "print"
+ Shiftorium_InstallFeatures(True, "print", 2, 25)
+ Console.BadCommand = False
+ Case "termdspdrv"
+ Shiftorium_InstallFeatures(True, "termdspdrv", 3, 40)
+ Console.BadCommand = False
+ Case "infobar"
+ Shiftorium_InstallFeatures(True, "infobar", 4, 50)
+ Console.BadCommand = False
+ Case "stime"
+ Shiftorium_InstallFeatures(True, "stime", 5, 10)
+ Console.BadCommand = False
+ Case "mtime"
+ Shiftorium_InstallFeatures(True, "mtime", 6, 20)
+ Console.BadCommand = False
+ Case "htime"
+ Shiftorium_InstallFeatures(True, "htime", 7, 30)
+ Console.BadCommand = False
+ Case "shiftfetch"
+ Shiftorium_InstallFeatures(True, "shiftfetch", 8, 55)
+ Console.BadCommand = False
+ Case "bc"
+ Shiftorium_InstallFeatures(True, "bc", 9, 55)
+ Console.BadCommand = False
+ Case "2bitcolor"
+ Shiftorium_InstallFeatures(True, "2bitcolor", 10, 60)
+ Console.BadCommand = False
+ Case "key"
+ Shiftorium_InstallFeatures(True, "key", 11, 5)
+ Console.BadCommand = False
+ Case "pmam"
+ Shiftorium_InstallFeatures(True, "pmam", 12, 40)
+ Console.BadCommand = False
+ Case "rgb"
+ Shiftorium_InstallFeatures(True, "rgb", 13, 70)
+ Console.BadCommand = False
+ Case "rgb2"
+ Shiftorium_InstallFeatures(True, "rgb2", 14, 75)
+ Console.BadCommand = False
+ Case "4bitcolor"
+ Shiftorium_InstallFeatures(True, "4bitcolor", 15, 80)
+ Console.BadCommand = False
+ Case "romdriver"
+ Shiftorium_InstallFeatures(True, "romdriver", 16, 90)
+ Console.BadCommand = False
+ Case "textpad"
+ Shiftorium_InstallFeatures(True, "textpad", 17, 100)
+ Console.BadCommand = False
+ Case "shiftkey"
+ Shiftorium_InstallFeatures(True, "shiftkey", 18, 45)
+ Console.BadCommand = False
+ Case "username"
+ Shiftorium_InstallFeatures(True, "username", 19, 15)
+ Console.BadCommand = False
+ Case "hostname"
+ Shiftorium_InstallFeatures(True, "hostname", 20, 15)
+ Console.BadCommand = False
+ Case "rev"
+ Shiftorium_InstallFeatures(True, "rev", 21, 30)
+ Console.BadCommand = False
+ Case "cowsay"
+ Shiftorium_InstallFeatures(True, "cowsay", 22, 50)
+ Console.BadCommand = False
+ Case "hhmm"
+ Shiftorium_InstallFeatures(True, "hhmm", 23, 50)
+ Console.BadCommand = False
+ Case "date"
+ Shiftorium_InstallFeatures(True, "date", 24, 70)
+ Console.BadCommand = False
+ Case "woy"
+ Shiftorium_InstallFeatures(True, "woy", 25, 75)
+ Console.BadCommand = False
+ Case "moy"
+ Shiftorium_InstallFeatures(True, "moy", 26, 80)
+ Console.BadCommand = False
+ Case "year"
+ Shiftorium_InstallFeatures(True, "year", 27, 85)
+ Console.BadCommand = False
+ Case "mmyyyy"
+ Shiftorium_InstallFeatures(True, "mmyyyy", 28, 90)
+ Console.BadCommand = False
+ Case "generaldate"
+ Shiftorium_InstallFeatures(True, "generaldate", 29, 95)
+ Console.BadCommand = False
+ Case "batchscript"
+ Shiftorium_InstallFeatures(True, "batchscript", 30, 100)
+ Console.BadCommand = False
+ Case "clipboard"
+ Shiftorium_InstallFeatures(True, "clipboard", 31, 100)
+ Console.BadCommand = False
+ Case Else
+ Console.BadCommand = False
+ NewLine("Shiftorium: Bad command or not available")
+ End Select
+ End Sub
+
+ Public Sub Shiftorium_InstallFeatures(IsCLI As Boolean, Feature As String, FeatureRow As Integer, Codepoint As Integer)
+ 'Import the current CP as an Integer
+ Dim TempCP As Integer = Convert.ToInt32(Strings.ComputerInfo(2))
+ 'See what feature that are going to be installed
+ Select Case Strings.AvailableFeature(FeatureRow)
+ Case "0"
+ If TempCP >= Codepoint Then
+ Dim success As Boolean = False
+ Select Case Feature
+ Case "man"
+ Strings.AvailableFeature(0) = "1"
+ Strings.AvailableFeature(19) = "0"
+ Strings.AvailableFeature(20) = "0"
+ success = True
+ Case "clear"
+ Strings.AvailableFeature(1) = "1"
+ Strings.AvailableFeature(2) = "0"
+ Strings.AvailableFeature(5) = "0"
+ Strings.AvailableFeature(9) = "0"
+ success = True
+ Case "print"
+ Strings.AvailableFeature(2) = "1"
+ Strings.AvailableFeature(3) = "0"
+ Strings.AvailableFeature(18) = "0"
+ Strings.AvailableFeature(21) = "0"
+ success = True
+ Case "termdspdrv"
+ Strings.AvailableFeature(3) = "1"
+ Strings.AvailableFeature(4) = "0"
+ Strings.AvailableFeature(8) = "0"
+ Strings.AvailableFeature(10) = "0"
+ success = True
+ Case "infobar"
+ Strings.AvailableFeature(4) = "1"
+ success = True
+ Case "stime"
+ Strings.AvailableFeature(5) = "1"
+ Strings.AvailableFeature(6) = "0"
+ success = True
+ Case "mtime"
+ Strings.AvailableFeature(5) = "3"
+ Strings.AvailableFeature(6) = "1"
+ Strings.AvailableFeature(7) = "0"
+ success = True
+ Case "htime"
+ Strings.AvailableFeature(6) = "3"
+ Strings.AvailableFeature(7) = "1"
+ Strings.AvailableFeature(12) = "0"
+ success = True
+ Case "shiftfetch"
+ Strings.AvailableFeature(8) = "1"
+ success = True
+ Case "bc"
+ Strings.AvailableFeature(9) = "1"
+ success = True
+ Case "2bitcolor"
+ Strings.AvailableFeature(10) = "1"
+ Strings.AvailableFeature(13) = "0"
+ success = True
+ Case "key"
+ Strings.AvailableFeature(11) = "1"
+ Strings.AvailableFeature(0) = "0"
+ Strings.AvailableFeature(1) = "0"
+ success = True
+ Case "pmam"
+ Strings.AvailableFeature(7) = "3"
+ Strings.AvailableFeature(12) = "1"
+ Strings.AvailableFeature(23) = "0"
+ success = True
+ Case "rgb"
+ Strings.AvailableFeature(13) = "1"
+ Strings.AvailableFeature(14) = "0"
+ success = True
+ Case "rgb2"
+ Strings.AvailableFeature(14) = "1"
+ Strings.AvailableFeature(15) = "0"
+ success = True
+ Case "4bitcolor"
+ Strings.AvailableFeature(15) = "1"
+ Strings.AvailableFeature(16) = "0"
+ success = True
+ Case "romdriver"
+ Strings.AvailableFeature(16) = "1"
+ Strings.AvailableFeature(17) = "0"
+ success = True
+ Case "textpad"
+ Strings.AvailableFeature(17) = "1"
+ Strings.AvailableFeature(30) = "0"
+ Strings.AvailableFeature(31) = "0"
+ success = True
+ Case "shiftkey"
+ Strings.AvailableFeature(18) = "1"
+ success = True
+ Case "username"
+ Strings.AvailableFeature(19) = "1"
+ success = True
+ Case "hostname"
+ Strings.AvailableFeature(20) = "1"
+ success = True
+ Case "rev"
+ Strings.AvailableFeature(21) = "1"
+ Strings.AvailableFeature(22) = "0"
+ success = True
+ Case "cowsay"
+ Strings.AvailableFeature(22) = "1"
+ success = True
+ Case "hhmm"
+ Strings.AvailableFeature(12) = "3"
+ Strings.AvailableFeature(23) = "1"
+ Strings.AvailableFeature(24) = "0"
+ success = True
+ Case "date"
+ Strings.AvailableFeature(24) = "1"
+ Strings.AvailableFeature(25) = "0"
+ success = True
+ Case "woy"
+ Strings.AvailableFeature(24) = "3"
+ Strings.AvailableFeature(25) = "1"
+ Strings.AvailableFeature(26) = "0"
+ success = True
+ Case "moy"
+ Strings.AvailableFeature(25) = "3"
+ Strings.AvailableFeature(26) = "1"
+ Strings.AvailableFeature(27) = "0"
+ success = True
+ Case "year"
+ Strings.AvailableFeature(26) = "3"
+ Strings.AvailableFeature(27) = "1"
+ Strings.AvailableFeature(28) = "0"
+ success = True
+ Case "mmyyyy"
+ Strings.AvailableFeature(27) = "3"
+ Strings.AvailableFeature(28) = "1"
+ Strings.AvailableFeature(29) = "0"
+ success = True
+ Case "generaldate"
+ Strings.AvailableFeature(28) = "3"
+ Strings.AvailableFeature(29) = "1"
+ success = True
+ Case "batchscript"
+ Strings.AvailableFeature(30) = "1"
+ success = True
+ Case "clipboard"
+ Strings.AvailableFeature(31) = "1"
+ success = True
+ End Select
+ If success = False Then
+ If IsCLI = True Then
+ NewLine("Shiftorium: Invalid command or feature already installed")
+ End If
+ Else
+ 'It will deduct the current codepoint to the modified codepoint and exporting it back to ComputerInfo(2)
+ Strings.ComputerInfo(4) = Strings.ComputerInfo(4) + 1
+ TempCP = TempCP - Codepoint
+ Strings.ComputerInfo(2) = Convert.ToString(TempCP)
+ If IsCLI = True Then
+ NewLine("Feature has been install succesfully")
+ End If
+ End If
+ Else
+ If IsCLI = True Then
+ NewLine("Shiftorium: Insufficent Codepoint")
+ End If
+ End If
+ Case "1"
+ If IsCLI = True Then
+ NewLine("Shiftorium: Feature has already been installed")
+ End If
+ Case "2"
+ If IsCLI = True Then
+ NewLine("Shiftorium: Feature is not available")
+ End If
+ Case "3"
+ If IsCLI = True Then
+ NewLine("Shiftorium: Feature is already upgraded to a newer one")
+ End If
+ End Select
+ End Sub
+End Module
diff --git a/ShiftOS-TheRevival/Functions/InGame/Strings.vb b/ShiftOS-TheRevival/Functions/InGame/Strings.vb
new file mode 100644
index 0000000..0bbada4
--- /dev/null
+++ b/ShiftOS-TheRevival/Functions/InGame/Strings.vb
@@ -0,0 +1,118 @@
+Public Class Strings
+ Public Shared OSInfo() As String
+ Public Shared ComputerInfo(6) As String
+ Public Shared IsFree As Boolean
+ Public Shared OnceInfo(8) As String
+ Public Shared AvailableFeature(31) As String
+ Public Shared CLIInterpreter As String
+ Public Shared SaveFile As String
+ Public Shared Achievement As String
+
+ 'STRING CATEGORIZATION WRITING RULES!
+ 'THIS IS IN ORDER TO REMAIN COMPATIBLE WITH OLDER VERSIONS!
+ '
+ 'General string :
+ '(Row Number) = Function/Subject (default value : default)
+ '
+ 'Each have to placed in numerical order
+ 'If there's moved strings for newer version, example:
+ '0 = Computer Name (0.1) => OS Version (0.2) => Root Location (0.3), etc.
+ 'If there's removed strings for newer version, example:
+ '69 = Secret Easter Egg (removed in 0.420)
+ 'If there's repurposed strings for newer version after removed, example:
+ '5 = FreeRoam enabled? (removed in 0.4) => Story Mode State
+ '
+ 'ALWAYS WRITE THE NOTES IN COMMENTS, THIS CLASS ONLY IS FOR STORING STRINGS AND DEPLOYING STRINGS TO DISK
+
+ 'OSInfo Strings:
+ '0 = OSVersion (default : dependant)
+ '
+ 'OnceInfo Strings:
+ '0 = IsRoot? (0.1) (default : No)
+ '1 = RootDirectory (0.2.3) (default : Environment.SpecialDirectories.ApplicationData & "\ShiftOS\ShiftFS\")
+ '2 = Infobar Boolean (0.2.3) (default : True)
+ '3 = Color for Terminal (0.2.3) (default : 0F) => moved to ComputerInfo(5)
+ '4 = RootDirectoryString (0.2.3) (default : !)
+ '5 = Terminal TrackPos (0.2.3) (default : 0)
+ '6 = GameMode (0.2.3) (dependant)
+ '7 = MaxWidth (0.2.4) (depentant)
+ '8 = MaxHeight (0.2.4) (depentant)
+ '
+ 'ComputerInfo Strings:
+ '0 = Computer Name (0.1) (default : shiftos)
+ '1 = Username (0.1) (default : user)
+ '2 = Codepoint (0.2) (default : 0)
+ '3 = Story Chapter (0.2) (default : 0 for New Game)
+ '4 = Installed Packages (0.2.3) (default : 0 for New Game)
+ '5 = Color for Terminal (0.2.4) (default : 0F)
+ '6 = Color for Infobar (0.2.4) (default : F0)
+ '
+ 'AvailableFeature (Default is defined on the Story Mode, Free Mode automatically assigns every available feature to 1, Unavailable in the Shiftorium assigned as 2, Upgraded assigned as 3) Strings:
+ '0 = MAN command [Manual on each command] (0.2) (default : 0)
+ '1 = CLEAR command [Clearing the screen] (0.2) (default : 0)
+ '2 = PRINT command [Printing a string] (0.2.2) (default : 0)
+ '3 = Terminal Display Driver [Dependencies for advanced terminal applications] (0.2.2) (default : 0)
+ '4 = Terminal InfoBar [A panel bar at the bottom of the terminal to show 'Time', 'User Session', 'Codepoint', 'Program running'] (0.2.2) (default : 0)
+ '5 = Time by Second [Showing time in seconds form since midnight] (0.2.2) (default : 0)
+ '6 = Time by Minutes [Showing time in minutes form since midnight] (0.2.2) (default : 0)
+ '7 = Time by Hours [Showing time in hours form since midnight] (0.2.2) (default : 0)
+ '8 = Shiftfetch [ShiftOS port of Neofetch, A command-line system information tool] (0.2.3) (default : 0)
+ '9 = bc [Basic Calculator for ShiftOS] (0.2.3) (default : 0)
+ '10 = 2-bit Color Display [Adds Dark Gray and Light Gray support to the Display Driver] (0.2.3) (default : 0)
+ '11 = ShiftOS Key [A key to unlock advanced features on ShiftOS] (0.2.3) (default : 0)
+ '12 = Time by PM and AM [Showing time in hours form since midnight] (0.2.3) (default : 0)
+ '13 = Red, Green, Blue [Adds Red, Green, and Blue support to the Display Driver] (0.2.3) (default : 0)
+ '14 = RGB Variant [Adds lighter or darker variant of Red, Green, and Blue] (0.2.3) (default : 0)
+ '15 = 4-bit Color Display [Adds to 16 colours support to the Display Driver] (0.2.3) (default : 0)
+ '16 = Terminal Read-Only Memory Driver [ShiftOS Read-Only Memory support for HDD, SSD, etc.] (0.2.4) (default : 0)
+ '17 = TextPad [Notepad] (0.2.4) (default : 0)
+ '18 = ShiftKey [DOSKey for ShiftOS] (0.2.4) (default : 0)
+ '19 = Custom Username [Custom username for ShiftOS] (0.2.4) (default : 0)
+ '20 = Custom Hostname [Custom hostname for ShiftOS] (0.2.4) (default : 0)
+ '21 = Reverse String [Reverse a text] (0.2.4) (default : 0)
+ '22 = Cowsay [Cowsay] (0.2.4) (default : 0)
+ '23 = Time by Hours and Minutes [Shows time in Hours and Minutes format] (0.2.5) (default : 0)
+ '24 = Date command [Shows date in days since first day of the year format] (0.2.5) (default : 0)
+ '25 = Date by week [Shows date in weeks since first week of the year format] (0.2.5) (default : 0)
+ '26 = Date by month [Shows date in months since first month of the year format] (0.2.5) (default : 0)
+ '27 = Date by year [Shows date in year format] (0.2.5) (default : 0)
+ '28 = Date by month and year [Shows date in MM/YYYY format] (0.2.5) (default : 0)
+ '29 = Date by general [Shows date in general DD/MM/YYYY format] (0.2.5) (default : 0)
+ '30 = Batch-file support for ShiftOS [Gives execution support for ShiftOS Script File (.scr)] (0.2.5) (default : 0)
+ '31 = Clipboard support for ShiftOS [Gives clipboard support for copy-pasting in ShiftOS] (0.2.6) (default : 0)
+ '
+ 'Features bought hierarchy :
+ 'ShiftOS Key (KEY) (5 CP)
+ '>ShiftOS Help Manual (MAN) (10 CP)
+ '>>Custom Username (USERNAME) (15 CP)
+ '>>Custom Hostname (HOSTNAME) (15 CP)
+ '>Terminal Clear (CLEAR) (20 CP)
+ '>>Terminal Print (PRINT) (25 CP)
+ '>>>Reverse String command (REV) (30 CP)
+ '>>>>Cowsay (50 CP)
+ '>>>>Fortune command (55 CP)
+ '>>>ShiftKey (ShOSKey) (45 CP)
+ '>>>Terminal Display Driver (TERMDSPDRV) (40 CP)
+ '>>>>Terminal InfoBar (INFOBAR) (50 CP)
+ '>>>>Shiftfetch (SHIFTFETCH) (55 CP)
+ '>>>>2-bit Color Display (2BITCOLOR) (60 CP)
+ '>>>>>Red, Green, Blue (rgb) (70 CP)
+ '>>>>>>RGB Variant (rgb2) (75 CP)
+ '>>>>>>>4-bit Color Display (4BITCOLOR) (80 CP)
+ '>>>>>>>>Terminal Read-Only Memory Driver (ROMDRIVER, DIR, MKDIR, RMDIR, CD, PWD) (90 CP)
+ '>>>>>>>>>TextPad (100 CP)
+ '>>>>>>>>>>Clipboard support (CLIPBOARD) (100 CP)
+ '>>>>>>>>>>ShiftOS Batch Script Support (BATCHSCRIPT) (100 CP)
+ '>>Basic Calculator (BC) (55 CP)
+ '>>Time by Seconds (TIME, STIME) (10 CP)
+ '>>>Time by Minutes (TIME, MTIME) (20 CP)
+ '>>>>Time by Hours (Time, HTIME) (30 CP)
+ '>>>>>PM and AM (Time, PMAM (40 CP))
+ '>>>>>>Time by Hours and Minutes (Time, HHMM (50 CP))
+ '>>>>>>>Date command (DATE (70 CP))
+ '>>>>>>>>Date by week (DATE, WOY (75 CP))
+ '>>>>>>>>>Date by month (DATE, MOY (80 CP))
+ '>>>>>>>>>>Date by year (DATE, YEAR (85 CP))
+ '>>>>>>>>>>>Date by month and year (DATE, MMYYYY (90 CP))
+ '>>>>>>>>>>>>Date by general (DATE, GENERALDATE (95 CP))
+End Class
diff --git a/ShiftOS-TheRevival/Functions/InGame/TerminalColorSystem.vb b/ShiftOS-TheRevival/Functions/InGame/TerminalColorSystem.vb
new file mode 100644
index 0000000..9042910
--- /dev/null
+++ b/ShiftOS-TheRevival/Functions/InGame/TerminalColorSystem.vb
@@ -0,0 +1,212 @@
+Module TerminalColorSystem
+ 'GUIDE to COLORS in TERMINAL
+ 'Using the same Hexadecimal numbering as what Command Prompt used to:
+ '0 = Black 8 = Gray
+ '1 = Blue 9 = Light Blue
+ '2 = Green A = Light Green
+ '3 = Aqua B = Light Aqua
+ '4 = Red C = Light Red
+ '5 = Purple D = Light Purple
+ '6 = Yellow E = Yellow
+ '7 = Dark Gray F = White
+ Public BgColor As Color
+ Public FgColor As Color
+
+ Public Sub DisplayColors()
+ NewLine("TERMINAL SUPPORTED COLORS")
+ NewLine(Nothing)
+ NewLine(Nothing)
+ If Strings.AvailableFeature(10) = "1" Then
+ NewLine("0 = Black 8 = Gray")
+ Else
+ NewLine("0 = Black 8 = ???")
+ End If
+ If Strings.AvailableFeature(14) = "1" Then
+ NewLine("1 = Blue 9 = Light Blue")
+ NewLine("2 = Green A = Light Green")
+ Else
+ If Strings.AvailableFeature(13) = "1" Then
+ NewLine("1 = ??? 9 = Light Blue")
+ NewLine("2 = Green A = ???")
+ Else
+ NewLine("1 = ??? 9 = ???")
+ NewLine("2 = ??? A = ???")
+ End If
+ End If
+ If Strings.AvailableFeature(15) = "1" Then
+ NewLine("3 = Aqua B = Light Aqua")
+ Else
+ NewLine("3 = ??? B = ???")
+ End If
+ If Strings.AvailableFeature(14) = "1" Then
+ NewLine("4 = Red C = Light Red")
+ ElseIf Strings.AvailableFeature(13) = "1" Then
+ NewLine("4 = ??? C = Light Red")
+ Else
+ NewLine("4 = ??? C = ???")
+ End If
+ If Strings.AvailableFeature(15) = "1" Then
+ NewLine("5 = Purple D = Light Purple")
+ NewLine("6 = Yellow E = Yellow")
+ Else
+ NewLine("5 = ??? D = ???")
+ NewLine("6 = ??? E = ???")
+ End If
+ If Strings.AvailableFeature(10) = "1" Then
+ NewLine("7 = Dark Gray F = White")
+ Else
+ NewLine("7 = ??? F = White")
+ End If
+ End Sub
+
+ Public Sub GetColor(App As String, Bg As String, Fg As String)
+ Select Case App
+ Case "terminal"
+ BgColor = Color.Black
+ FgColor = Color.White
+ Case "infobar"
+ BgColor = Color.White
+ FgColor = Color.Black
+ End Select
+ If Bg = Fg Then
+ NewLine("Background and Foreground Color cannot be same!")
+ Else
+ If Strings.AvailableFeature(10) = "1" Then
+ Select Case Bg
+ Case "0"
+ BgColor = Color.Black
+ Case "7"
+ BgColor = Color.Silver
+ Case "8"
+ BgColor = Color.Gray
+ Case "f"
+ BgColor = Color.White
+ Case "2", "9", "c"
+ If Strings.AvailableFeature(13) = "1" Then
+ Select Case Bg
+ Case "2"
+ BgColor = Color.Green
+ Case "9"
+ BgColor = Color.Blue
+ Case "c"
+ BgColor = Color.Red
+ End Select
+ Else
+ NewLine("One or two colors you selected is not available.")
+ End If
+ Case "1", "4", "a"
+ If Strings.AvailableFeature(14) = "1" Then
+ Select Case Bg
+ Case "1"
+ BgColor = Color.Navy
+ Case "4"
+ BgColor = Color.Maroon
+ Case "a"
+ BgColor = Color.Lime
+ End Select
+ Else
+ NewLine("One or two colors you selected is not available.")
+ End If
+ Case "3", "5", "6", "b", "d", "e"
+ If Strings.AvailableFeature(15) = "1" Then
+ Select Case Bg
+ Case "3"
+ BgColor = Color.Cyan
+ Case "5"
+ BgColor = Color.Magenta
+ Case "6"
+ BgColor = Color.Brown
+ Case "b"
+ BgColor = Color.Aqua
+ Case "d"
+ BgColor = Color.Fuchsia
+ Case "e"
+ BgColor = Color.Yellow
+ End Select
+ Else
+ NewLine("One or two colors you selected is not available.")
+ End If
+ Case Else
+ BgColor = Color.Black
+ End Select
+ Select Case Fg
+ Case "0"
+ FgColor = Color.Black
+ Case "7"
+ FgColor = Color.Silver
+ Case "8"
+ FgColor = Color.Gray
+ Case "f"
+ FgColor = Color.White
+ Case "2", "9", "c"
+ If Strings.AvailableFeature(13) = "1" Then
+ Select Case Fg
+ Case "2"
+ FgColor = Color.Green
+ Case "9"
+ FgColor = Color.Blue
+ Case "c"
+ FgColor = Color.Red
+ End Select
+ Else
+ NewLine("One or two colors you selected is not available.")
+ End If
+ Case "1", "4", "a"
+ If Strings.AvailableFeature(14) = "1" Then
+ Select Case Fg
+ Case "1"
+ FgColor = Color.Navy
+ Case "4"
+ FgColor = Color.Maroon
+ Case "a"
+ FgColor = Color.Lime
+ End Select
+ Else
+ NewLine("One or two colors you selected is not available.")
+ End If
+ Case "3", "5", "6", "b", "d", "e"
+ If Strings.AvailableFeature(15) = "1" Then
+ Select Case Fg
+ Case "3"
+ FgColor = Color.Cyan
+ Case "5"
+ FgColor = Color.Magenta
+ Case "6"
+ FgColor = Color.Brown
+ Case "b"
+ FgColor = Color.Aqua
+ Case "d"
+ FgColor = Color.Fuchsia
+ Case "e"
+ FgColor = Color.Yellow
+ End Select
+ Else
+ NewLine("One or two colors you selected is not available.")
+ End If
+ Case Else
+ FgColor = Color.White
+ End Select
+ Else
+ NewLine("Color is not supported for 1-bit Color Display")
+ Select Case App
+ Case "terminal"
+ BgColor = Color.Black
+ FgColor = Color.White
+ Case "infobar"
+ BgColor = Color.White
+ FgColor = Color.Black
+ End Select
+ End If
+ End If
+ Select Case App
+ Case "infobar"
+ Console.InfoBar.BackColor = BgColor
+ Console.InfoBar.ForeColor = FgColor
+ Strings.ComputerInfo(6) = Bg & Fg
+ Case "terminal"
+ Console.TextBox1.BackColor = BgColor
+ Console.TextBox1.ForeColor = FgColor
+ Strings.ComputerInfo(5) = Bg & Fg
+ End Select
+ End Sub
+End Module
diff --git a/ShiftOS-TheRevival/Functions/InGame/TerminalExternalApps.vb b/ShiftOS-TheRevival/Functions/InGame/TerminalExternalApps.vb
new file mode 100644
index 0000000..20188ed
--- /dev/null
+++ b/ShiftOS-TheRevival/Functions/InGame/TerminalExternalApps.vb
@@ -0,0 +1,328 @@
+Imports System.IO
+
+Module TerminalExternalApps
+ Public ShouldChange As Boolean = False
+ Public KeyInput As Keys
+ 'This is for GTN's RAM
+ Public TheNumber As Integer = 0
+ Public FreezeText As String
+ 'Basic Calculator's RAM
+ Public BC_ReadNumbers As Integer
+ Public BC_Numbers1 As String
+ Public BC_Numbers2 As String
+ Public BC_ThriceMoreValue As Integer
+ Public BC_ThriceMoreCount As Integer
+ Public BC_CurrentNumber As String
+ Public BC_Result As Integer
+ Public BC_Operation2 As String
+ 'TextPad's RAM
+ Public TextPad_FileName As String
+ Public TextPad_TempText As New Timer
+
+ Public Sub ChangeCP(Addition As Boolean, NeededCP As Integer)
+ Dim TempCP As Integer = Convert.ToInt32(Strings.ComputerInfo(2))
+ If Addition = True Then
+ TempCP = TempCP + NeededCP
+ Else
+ TempCP = TempCP - NeededCP
+ End If
+ Strings.ComputerInfo(2) = Convert.ToString(TempCP)
+ End Sub
+
+ Public Sub AppHost(App As Object, UseToolBar As Boolean)
+ Select Case App
+ Case "bc"
+ Console.DefaultPrompt = "> "
+ ResetLine("bc (Basic Calcultator)")
+ NewLine("Copyright, Free Software Foundation.")
+ NewLine("ShiftOS port by DevX.")
+ NewLine("This is free software with ABSOLUTELY NO WARRANTY.")
+ NewLine(Nothing)
+ Console.CurrentInterpreter = "bc"
+ ShouldChange = True
+ Case "guess" 'Guess the Number
+ Console.DefaultPrompt = "Your answer: "
+ NewLine("Guess the Number")
+ NewLine("Guess the correct number between 1 and 50 and you'll get anything between 1 to 10 Codepoints")
+ NewLine("Type 'exit' to terminate this game")
+ Console.CurrentInterpreter = "guess"
+ GTN_GenerateNumber()
+ ShouldChange = True
+ 'Revisit Later
+ 'Case "pause" 'Pause function
+ ' Terminal.TextBox1.ReadOnly = True
+ ' Terminal.DefaultPrompt = "Press any key to continue..."
+ ' Terminal.CurrentInterpreter = "pause"
+ ' FreezeText = Terminal.TextBox1.Text
+ ' ShouldChange = True
+ Case "shiftoriumfx" 'ShiftoriumFX : Advanced Shiftorium
+ Console.DefaultPrompt = "Navigate> "
+ Console.CurrentInterpreter = "shiftoriumfx"
+ ShiftoriumFX_DisplayPackages()
+ NewLine(Nothing)
+ NewLine("Type any package you want to investigate")
+ ShouldChange = True
+ Case "textpad"
+ Console.DefaultPrompt = Nothing
+ Console.TextBox1.Text = Nothing
+ Console.ToolBarUse = True
+ Console.CheckFeature()
+ Console.CurrentInterpreter = "textpad"
+ TextPad_CheckExist(command)
+ Console.ToolBar.Text = "TextPad - " & command & Environment.NewLine & "Ctrl-Q Exit | Ctrl-N New | Ctrl-O Open | Ctrl-S Save | F12 Save As"
+ Console.ReleaseCursor = True
+ TextRebind()
+ End Select
+ If Console.ReleaseCursor = True Then
+ 'Strings.OnceInfo(5) = Terminal.TrackPos
+ 'Terminal.TrackPos = Nothing
+ End If
+ If ShouldChange = True Then
+ Console.ChangeInterpreter = True
+ ShouldChange = False
+ End If
+ End Sub
+
+ Public Sub CaptureKeyBinding(KeysInput As Keys)
+ Select Case KeysInput
+ Case (Keys.S + Keys.Control)
+ Select Case Console.CurrentInterpreter
+ Case "textpad"
+ If File.Exists(Console.CurrentDirectory & "\" & command) = True Then
+ Dim TempCompare As String = File.ReadAllText(Console.CurrentDirectory & "\" & command)
+ If Console.TextBox1.Text = TempCompare Then
+
+ Else
+ Dim BeforeCP As Integer = Strings.ComputerInfo(2)
+ SaveFile(command)
+ TextPad_GenerateCP_SavedFile()
+ Dim AfterCP As Integer = Strings.ComputerInfo(2) - BeforeCP
+ Console.ToolBar.Text = "TextPad - " & command & " - You've got " & AfterCP & " Codepoints" & Environment.NewLine & "Ctrl-Q Exit | Ctrl-N New | Ctrl-O Open | Ctrl-S Save | F12 Save As"
+ End If
+ Else
+ Dim BeforeCP As Integer = Strings.ComputerInfo(2)
+ SaveFile(command)
+ TextPad_GenerateCP_SavedFile()
+ Dim AfterCP As Integer = Strings.ComputerInfo(2) - BeforeCP
+ Console.ToolBar.Text = "TextPad - " & command & " - You've got " & AfterCP & " Codepoints" & Environment.NewLine & "Ctrl-Q Exit | Ctrl-N New | Ctrl-O Open | Ctrl-S Save | F12 Save As"
+ End If
+ End Select
+ Case (Keys.N + Keys.Control)
+ Select Case Console.CurrentInterpreter
+ Case "textpad"
+ Console.TextBox1.Text = Nothing
+ End Select
+ End Select
+ End Sub
+
+ Public Sub TerminateApp(KeyInput As Keys)
+ Select Case Console.CurrentInterpreter
+ Case "textpad"
+ Dim BeforeCP As Integer = Strings.ComputerInfo(2)
+ If File.Exists(Console.CurrentDirectory & "\" & command) = True Then
+ Dim TextCompare As String = My.Computer.FileSystem.ReadAllText(Console.CurrentDirectory & "\" & command)
+ If Console.TextBox1.Text = TextCompare Then
+ Console.TextBox1.Text = Nothing
+ Else
+ SaveFile(command)
+ TextPad_GenerateCP_SavedFile()
+ Dim AfterCP As Integer = Strings.ComputerInfo(2) - BeforeCP
+ Console.TextBox1.Text = "You've got " & AfterCP & " Codepoints"
+ End If
+ Else
+ SaveFile(command)
+ TextPad_GenerateCP_SavedFile()
+ Dim AfterCP As Integer = Strings.ComputerInfo(2) - BeforeCP
+ Console.TextBox1.Text = "You've got " & AfterCP & " Codepoints"
+ End If
+ Console.ToolBarUse = False
+ Console.ChangeInterpreter = False
+ Console.ReleaseCursor = False
+ Console.CurrentInterpreter = "terminal"
+ Console.CheckFeature()
+ Terminal_AssignPrompt()
+ Terminal_PrintPrompt()
+ TextRebind()
+ Case Else
+ Console.ToolBarUse = False
+ Console.ChangeInterpreter = False
+ Console.ReleaseCursor = False
+ Console.CurrentInterpreter = "terminal"
+ Console.CheckFeature()
+ Terminal_AssignPrompt()
+ Terminal_PrintPrompt()
+ TextRebind()
+ End Select
+ End Sub
+
+ Public Sub DoChildCommand()
+ Select Case Console.CurrentInterpreter
+ Case "guess"
+ Select Case command
+ Case "exit"
+ TerminateApp(Nothing)
+ Case Else
+ Try
+ GTN_CheckNumber()
+ Catch ex As Exception
+ NewLine("Invalid value!")
+ End Try
+ End Select
+ Case "shiftoriumfx"
+ Select Case command
+ Case ""
+
+ Case "exit"
+ TerminateApp(Nothing)
+ Case Else
+ ShiftoriumFX_DisplayPackages()
+ NewLine(Nothing)
+ NewLine("Type any package you want to investigate")
+ NewLine("Invalid package or bad command")
+ End Select
+ Case "bc"
+ Select Case command
+ Case "jim"
+ NewLine("69, the funni number")
+ NewLine("gotcha!")
+ Case "ojas"
+ NewLine("dis calculator is very gud")
+ NewLine("it counts from another universe")
+ Case "exit"
+ TerminateApp(Nothing)
+ Case Else
+ BC_ReadNumbers = 0
+ BC_ThriceMoreValue = 1
+ BC_Numbers1 = Nothing
+ BC_Numbers2 = Nothing
+ BC_Operation2 = Nothing
+ BC_CurrentNumber = Nothing
+ BC_Result = Nothing
+ Dim GetText As String
+ Try
+ Do
+ GetText = command.Chars(BC_ReadNumbers)
+ Select Case GetText
+ Case "0", "1", "2", "3", "4", "5", "6", "7", "8", "9"
+ BC_CurrentNumber = BC_CurrentNumber & GetText
+ Case "+", "-", "*", "/", "^"
+ Dim BC_Numbers3 As Integer
+ Select Case BC_ThriceMoreValue
+ Case 1
+ BC_Numbers1 = BC_CurrentNumber
+ BC_CurrentNumber = Nothing
+ BC_Operation2 = GetText
+ BC_ThriceMoreValue = BC_ThriceMoreValue + 1
+ Case >= 2
+ BC_Numbers2 = BC_CurrentNumber
+ BC_Counting(BC_Numbers1, BC_Numbers2, BC_Operation2)
+ BC_Numbers3 = BC_Result
+ BC_Numbers1 = BC_Numbers3
+ BC_Numbers2 = Nothing
+ BC_CurrentNumber = Nothing
+ BC_ThriceMoreValue = BC_ThriceMoreValue + 1
+ End Select
+ BC_Operation2 = GetText
+ Case "."
+ NewLine("Decimals aren't supported yet!")
+ Case Else
+ 'BC_Counting(BC_Numbers1, BC_Numbers2, BC_Operation2)
+ End Select
+ BC_ReadNumbers = BC_ReadNumbers + 1
+ Loop
+ Catch ex As Exception
+ BC_Numbers2 = BC_CurrentNumber
+ BC_CurrentNumber = Nothing
+ End Try
+ BC_Counting(BC_Numbers1, BC_Numbers2, BC_Operation2)
+ BC_ThriceMoreValue = Nothing
+ NewLine(BC_Result)
+ End Select
+ End Select
+ End Sub
+
+ Public Sub BC_Counting(FirstNum As Integer, SecondNum As Integer, Operation As String)
+ Select Case Operation
+ Case "+"
+ BC_Result = FirstNum + SecondNum
+ Case "-"
+ BC_Result = FirstNum - SecondNum
+ Case "*"
+ BC_Result = FirstNum * SecondNum
+ Case "/"
+ BC_Result = FirstNum / SecondNum
+ Case "^"
+ BC_Result = FirstNum ^ SecondNum
+ End Select
+ End Sub
+
+ Public Sub GTN_GenerateNumber()
+ Dim RandNum As New Random
+ TheNumber = RandNum.Next(1, 51)
+ End Sub
+
+ Public Sub GTN_CheckNumber()
+ Dim TheirNumber As Integer = Convert.ToInt32(command)
+ If TheirNumber > 0 And TheirNumber < 51 Then
+ If TheirNumber = TheNumber Then
+ Dim GetCP As New Random
+ Dim GotCP As Integer = GetCP.Next(1, 11)
+ ChangeCP(True, GotCP)
+ NewLine("You are correct!, you got " & GotCP & " Codepoint(s)")
+ NewLine("Guess the new number between 1 and 50.")
+ GTN_GenerateNumber()
+ Else
+ If TheirNumber < TheNumber Then
+ NewLine("Higher!")
+ ElseIf TheirNumber > TheNumber Then
+ NewLine("Lower!")
+ End If
+ End If
+ End If
+ End Sub
+
+ Public Sub ShOSKey_InputCommand(lastcommand As String)
+ Console.ShOSKey = lastcommand
+ End Sub
+
+ Public Sub ShOSKey_Display()
+ Console.TextBox1.Text = Console.TextBox1.Text & Console.ShOSKey
+ Try
+ Console.TrackPos = Console.ShOSKey.Length
+ Catch ex As Exception
+ Console.TrackPos = 0
+ End Try
+ End Sub
+
+ Public Sub TextPad_CheckExist(TxtFileName As String)
+ If File.Exists(Console.CurrentDirectory & "\" & TxtFileName) = True Then
+ Console.TextBox1.Text = My.Computer.FileSystem.ReadAllText(Console.CurrentDirectory & "\" & TxtFileName)
+ End If
+ End Sub
+
+ Public Sub TextPad_GenerateCP_SavedFile()
+ Select Case Console.TextBox1.TextLength
+ Case 1 To 9
+ Dim GetCP As New Random
+ Dim GotCP As Integer = GetCP.Next(1, 3)
+ ChangeCP(True, GotCP)
+ Case 10 To 99
+ Dim GetCP As New Random
+ Dim GotCP As Integer = GetCP.Next(4, 26)
+ ChangeCP(True, GotCP)
+ Case 100 To 999
+ Dim GetCP As New Random
+ Dim GotCP As Integer = GetCP.Next(27, 251)
+ ChangeCP(True, GotCP)
+ Case 1000 To 9999
+ Dim GetCP As New Random
+ Dim GotCP As Integer = GetCP.Next(252, 2501)
+ ChangeCP(True, GotCP)
+ End Select
+ End Sub
+
+ Public Sub ShiftoriumFX_DisplayPackages()
+ Console.TextBox1.Text = "Shiftorium FX!" & Environment.NewLine & "The place to shiftisize the ShiftOS" & Environment.NewLine & Environment.NewLine & "Available Package(s)"
+ Shiftorium_ListFeatures()
+ End Sub
+End Module
diff --git a/ShiftOS-TheRevival/Functions/InGame/TerminalInternalApps.vb b/ShiftOS-TheRevival/Functions/InGame/TerminalInternalApps.vb
new file mode 100644
index 0000000..8b544a0
--- /dev/null
+++ b/ShiftOS-TheRevival/Functions/InGame/TerminalInternalApps.vb
@@ -0,0 +1,447 @@
+Module TerminalInternalApps
+ Public Sub Cowsay_Say(Say As String)
+ Select Case Say.Length
+ Case 1 To 40
+ Dim SubtractLength As Integer = Say.Length + 1
+ NewLine(" ")
+ Do
+ AddLine("_")
+ SubtractLength = SubtractLength - 1
+ If SubtractLength = 0 Then
+ AddLine("_")
+ SubtractLength = Say.Length + 1
+ Exit Do
+ End If
+ Loop
+ NewLine("< " & Say & " >")
+ NewLine(" ")
+ Do
+ AddLine("-")
+ SubtractLength = SubtractLength - 1
+ If SubtractLength = 0 Then
+ AddLine("-")
+ SubtractLength = Say.Length + 1
+ Exit Do
+ End If
+ Loop
+ NewLine(" \ ^__^")
+ NewLine(" \ (oo)\_______")
+ NewLine(" (__)\ )\/\")
+ NewLine(" ||----w |")
+ NewLine(" || ||")
+ Case 41 To 80
+ NewLine(" __________________________________________ ")
+ NewLine("/ " & Say.Substring(0, 40) & " \")
+ Say = Say.Substring(40, Say.Length - 40)
+ NewLine("\ " & Say)
+ Dim Spaces As Integer = 40 - Say.Length
+ Do
+ AddLine(" ")
+ If Spaces = 0 Then
+ AddLine("/")
+ Exit Do
+ End If
+ Spaces = Spaces - 1
+ Loop
+ NewLine(" ------------------------------------------ ")
+ NewLine(" \ ^__^")
+ NewLine(" \ (oo)\_______")
+ NewLine(" (__)\ )\/\")
+ NewLine(" ||----w |")
+ NewLine(" || ||")
+ Case >= 81
+ NewLine("cowsay: Character limit exceeded")
+ 'Dim SubtractLength As Integer = Say.Length + 1
+ 'Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & " __________________________________________ "
+ 'Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "/ " & Say.Substring(0, 40) & " \"
+ 'Dim CurrentLength As Integer = 40
+ 'Dim WhatSay As String
+ 'Dim Spaces As Integer
+ 'Do
+ ' Try
+ ' WhatSay = Say.Substring(CurrentLength, 40)
+ ' Catch ex As Exception
+ ' WhatSay = Say.Substring(CurrentLength, (CurrentLength + 40) - Say.Length)
+ ' End Try
+ ' Spaces = 40 - WhatSay.Length
+ ' If Spaces > 0 Then
+ ' Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "\ " & WhatSay
+ ' Do
+ ' Terminal.TextBox1.Text = Terminal.TextBox1.Text & " "
+ ' If Spaces = 0 Then
+ ' Terminal.TextBox1.Text = Terminal.TextBox1.Text & "/"
+ ' Exit Do
+ ' End If
+ ' Spaces = Spaces - 1
+ ' Loop
+ ' Exit Do
+ ' Else
+ ' Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & "| " & WhatSay & " |"
+ ' CurrentLength = CurrentLength + 40
+ ' End If
+ 'Loop
+ End Select
+ End Sub
+
+ Public Sub DateTerm()
+ If Strings.AvailableFeature(24) = 1 Then
+ NewLine("The date is " & Date.Now.DayOfYear & " days since the first day of the year")
+ AdvancedCommand = False
+ Console.BadCommand = False
+ ElseIf Strings.AvailableFeature(24) = 3 Then
+ If Strings.AvailableFeature(25) = 1 Then
+ Dim TheWeek As String = Date.Now.DayOfYear / 7
+ NewLine("The date is " & TheWeek.Substring(0, 2) & " weeks since the first week of the year")
+ AdvancedCommand = False
+ Console.BadCommand = False
+ ElseIf Strings.AvailableFeature(25) = 3 Then
+ If Strings.AvailableFeature(26) = 1 Then
+ NewLine("The date is " & Date.Now.Month & " months since the first month of the year")
+ AdvancedCommand = False
+ Console.BadCommand = False
+ ElseIf Strings.AvailableFeature(26) = 3 Then
+ If Strings.AvailableFeature(27) = 1 Then
+ NewLine("The year is " & Date.Now.Year)
+ AdvancedCommand = False
+ Console.BadCommand = False
+ ElseIf Strings.AvailableFeature(27) = 3 Then
+ If Strings.AvailableFeature(28) = 1 Then
+ NewLine("The date is " & Date.Now.Day & "/" & Date.Now.Month)
+ AdvancedCommand = False
+ Console.BadCommand = False
+ ElseIf Strings.AvailableFeature(28) = 3 Then
+ If Strings.AvailableFeature(29) = 1 Then
+ NewLine("The date is " & Date.Now.Day & "/" & Date.Now.Month & "/" & Date.Now.Year)
+ AdvancedCommand = False
+ Console.BadCommand = False
+ End If
+ End If
+ End If
+ End If
+ End If
+ End If
+ End Sub
+
+ Public Sub Help()
+ NewLine("ShiftOS Help Manual")
+ NewLine(Nothing)
+ NewLine("You can type 'help' to get all available commands and its corresponding action.")
+ If Strings.AvailableFeature(0) = 1 Then
+ NewLine("To get help on each command, you can type 'man [command]'")
+ NewLine(Nothing)
+ Else
+ NewLine(Nothing)
+ End If
+ If Strings.AvailableFeature(9) = 1 Then
+ NewLine("BC Basic Calculator for simple calculation")
+ End If
+ If Strings.AvailableFeature(16) = 1 Then
+ NewLine("CD Changes directory to a selected one")
+ End If
+ If Strings.AvailableFeature(1) = 1 Then
+ NewLine("CLEAR Clear the terminal")
+ End If
+ NewLine("CODEPOINT Display Codepoint(s) from your wallet")
+ NewLine("COLOR Changes Terminal Text And Background color To the corresponding choice")
+ NewLine("COLORS Shows available colors support For the terminal")
+ If Strings.AvailableFeature(22) = 1 Then
+ NewLine("COWSAY Spawn a cow And saying anything you want")
+ End If
+ If Strings.AvailableFeature(24) = 1 Then
+ NewLine("DATE Displays date in days since first day of the year format")
+ ElseIf Strings.AvailableFeature(24) = 3 Then
+ If Strings.AvailableFeature(25) = 1 Then
+ NewLine("DATE Displays date in weeks since first week of the year format")
+ ElseIf Strings.AvailableFeature(25) = 3 Then
+ If Strings.AvailableFeature(26) = 1 Then
+ NewLine("DATE Displays date in months since first month of the year format")
+ ElseIf Strings.AvailableFeature(26) = 3 Then
+ If Strings.AvailableFeature(27) = 1 Then
+ NewLine("DATE Displays date in year format format")
+ ElseIf Strings.AvailableFeature(27) = 3 Then
+ If Strings.AvailableFeature(28) = 1 Then
+ NewLine("DATE Displays date in MM/YYYY format")
+ ElseIf Strings.AvailableFeature(28) = 3 Then
+ If Strings.AvailableFeature(29) = 1 Then
+ NewLine("DATE Displays date in general DD/MM/YYYY format")
+ End If
+ End If
+ End If
+ End If
+ End If
+ End If
+ If Strings.AvailableFeature(16) = 1 Then
+ NewLine("DEL Delete a selected file from the directory")
+ NewLine("DIR Displays subdirectories And files In a directory")
+ End If
+ NewLine("GUESS Runs 'Guess the Number' application")
+ NewLine("HELP Shows all commands available and its corresponding action")
+ If Strings.AvailableFeature(20) = 1 Then
+ NewLine("HOSTNAME Sets the name of current hostname/computer name with a new one")
+ End If
+ If Strings.AvailableFeature(4) = 1 Then
+ NewLine("INFOBAR Displays informations about current session such as current app, current user, current time, etc.")
+ End If
+ If Strings.AvailableFeature(0) = 1 Then
+ NewLine("MAN Shows a command, its corresponding action, and its example usage")
+ End If
+ If Strings.AvailableFeature(16) = 1 Then
+ NewLine("MKDIR Creating a directory")
+ End If
+ If Strings.AvailableFeature(16) = 1 Then
+ NewLine("PWD Display current directory navigated on ShiftOS")
+ End If
+ If Strings.AvailableFeature(2) = 1 Then
+ NewLine("PRINT Prints a corresponding text entered in the command")
+ End If
+ NewLine("REBOOT Terminate and re-run ShiftOS session")
+ If Strings.AvailableFeature(21) = 1 Then
+ NewLine("REV Turn any sentences you want and making it reversed")
+ End If
+ If Strings.AvailableFeature(16) = 1 Then
+ NewLine("RMDIR Deleting a directory")
+ End If
+ If Strings.AvailableFeature(8) = 1 Then
+ NewLine("SHIFTFETCH Shows informations about your computer")
+ End If
+ NewLine("SHIFTORIUM A software center for upgrading features on ShiftOS")
+ NewLine("SHUTDOWN Terminate ShiftOS session")
+ NewLine("SU Runs terminal as super user")
+ If Strings.AvailableFeature(17) = 1 Then
+ NewLine("TEXTPAD Simple text-editor for ShiftOS")
+ End If
+ If Strings.AvailableFeature(5) = 1 Then
+ NewLine("TIME Display the current time in the form of seconds since midnight")
+ ElseIf Strings.AvailableFeature(5) = 3 Then
+ If Strings.AvailableFeature(6) = 1 Then
+ NewLine("TIME Display the current time in the form of minutes since midnight")
+ ElseIf Strings.AvailableFeature(6) = 3 Then
+ If Strings.AvailableFeature(7) = 1 Then
+ NewLine("TIME Display the current time in the form of hours since midnight")
+ ElseIf Strings.AvailableFeature(7) = 3 Then
+ If Strings.AvailableFeature(12) = 1 Then
+ NewLine("TIME Display the current time in the form of PM and AM format")
+ End If
+ End If
+ End If
+ End If
+ If Strings.AvailableFeature(20) = 1 Then
+ NewLine("USERNAME Sets the name of current user with a new one")
+ End If
+ NewLine("VER Printing current version of ShiftOS TheRevival")
+ End Sub
+
+ Public Sub Manual(Command As String)
+ 'MAN command starts with this kinda format
+ 'ShiftOS Help Manual
+ '
+ ''command' Usage: [switch/value if needed]
+ '
+ 'Summary of the command's action
+ '
+ 'Example usage : command
+ NewLine("ShiftOS Help Manual")
+ NewLine(Nothing)
+ 'Terminal.TextBox1.Text = Terminal.TextBox1.Text & Environment.NewLine & command.Substring(4)
+ Dim mancommand As String = Command.Replace("man ", "")
+ Dim TempUsage As String = "'" & mancommand & "' Usage: "
+ Select Case mancommand
+ 'In process to convert every command from printing from code to printing from text file
+ Case "bc"
+ If Strings.AvailableFeature(9) = "1" Then
+ TempUsage = TempUsage & "bc"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_bc & Environment.NewLine
+ Console.BadCommand = False
+ End If
+ Case "cd"
+ If Strings.AvailableFeature(16) = "1" Then
+ TempUsage = TempUsage & "cd [DIRECTORY]"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_cd & Environment.NewLine
+ Console.BadCommand = False
+ End If
+ Case "clear"
+ If Strings.AvailableFeature(1) = "1" Then
+ TempUsage = TempUsage & "clear"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_clear & Environment.NewLine
+ Console.BadCommand = False
+ End If
+ Case "color"
+ TempUsage = TempUsage & "color [bg][fg]"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_color & Environment.NewLine
+ Console.BadCommand = False
+ Case "colors"
+ TempUsage = TempUsage & "colors"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_colors & Environment.NewLine
+ Console.BadCommand = False
+ Case "cowsay"
+ If Strings.AvailableFeature(22) = 1 Then
+ TempUsage = TempUsage & "cowsay [STRING]"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_cowsay & Environment.NewLine
+ Console.BadCommand = False
+ End If
+ Case "codepoint"
+ TempUsage = TempUsage & "codepoint"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_codepoint & Environment.NewLine
+ Console.BadCommand = False
+ Case "del"
+ If Strings.AvailableFeature(16) = 1 Then
+ TempUsage = TempUsage & "del [FILENAME.TXT]"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_del & Environment.NewLine
+ Console.BadCommand = False
+ End If
+ Case "dir"
+ If Strings.AvailableFeature(16) = "1" Then
+ TempUsage = TempUsage & "dir"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_dir & Environment.NewLine
+ Console.BadCommand = False
+ End If
+ Case "guess"
+ TempUsage = TempUsage & "guess"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_guess & Environment.NewLine
+ Console.BadCommand = False
+ Case "help"
+ TempUsage = TempUsage & "help"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_help & Environment.NewLine
+ Console.BadCommand = False
+ Case "hostname"
+ If Strings.AvailableFeature(20) = 1 Then
+ TempUsage = TempUsage & "hostname [HOSTNAME]"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_hostname & Environment.NewLine
+ Console.BadCommand = False
+ End If
+ Case "infobar"
+ If Strings.AvailableFeature(4) = 1 Then
+ TempUsage = TempUsage & "infobar [ON|OFF] [OPTION]"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_infobar & Environment.NewLine
+ Console.BadCommand = False
+ End If
+ Case "man"
+ If Strings.AvailableFeature(0) = "1" Then
+ TempUsage = TempUsage & "man [command]"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_man & Environment.NewLine
+ Console.BadCommand = False
+ End If
+ Case "mkdir"
+ If Strings.AvailableFeature(16) = "1" Then
+ TempUsage = TempUsage & "mkdir [DIRECTORY]"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_mkdir & Environment.NewLine
+ Console.BadCommand = False
+ End If
+ Case "print"
+ If Strings.AvailableFeature(2) = "1" Then
+ TempUsage = TempUsage & "print [text]"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_print & Environment.NewLine
+ Console.BadCommand = False
+ End If
+ Case "pwd"
+ If Strings.AvailableFeature(16) = "1" Then
+ TempUsage = TempUsage & "pwd"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_pwd & Environment.NewLine
+ Console.BadCommand = False
+ End If
+ Case "reboot"
+ TempUsage = TempUsage & "reboot"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_reboot & Environment.NewLine
+ Console.BadCommand = False
+ Case "rmdir"
+ If Strings.AvailableFeature(16) = "1" Then
+ TempUsage = TempUsage & "rmdir [DIRECTORY]"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_rmdir & Environment.NewLine
+ Console.BadCommand = False
+ End If
+ Case "shiftfetch"
+ If Strings.AvailableFeature(8) = "1" Then
+ TempUsage = TempUsage & "shiftfetch"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_shiftfetch & Environment.NewLine
+ Console.BadCommand = False
+ End If
+ Case "shiftorium"
+ TempUsage = TempUsage & "shiftorium [option] [featureName]"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_shiftorium & Environment.NewLine
+ Console.BadCommand = False
+ Case "shutdown"
+ TempUsage = TempUsage & "shutdown"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_shutdown & Environment.NewLine
+ Console.BadCommand = False
+ Case "textpad"
+ If Strings.AvailableFeature(17) = "1" Then
+ TempUsage = TempUsage & "textpad [FILENAME.TXT]"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_textpad & Environment.NewLine
+ Console.BadCommand = False
+ End If
+ Case "time"
+ If Strings.AvailableFeature(17) = "1" Then
+ TempUsage = TempUsage & "time"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_time & Environment.NewLine
+ Console.BadCommand = False
+ End If
+ Case "username"
+ If Strings.AvailableFeature(19) = "1" Then
+ TempUsage = TempUsage & "username"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_username & Environment.NewLine
+ Console.BadCommand = False
+ End If
+ Case "ver"
+ TempUsage = TempUsage & "ver"
+ Console.TextBox1.Text = Console.TextBox1.Text & TempUsage & Environment.NewLine & Environment.NewLine & My.Resources.man_ver & Environment.NewLine
+ Console.BadCommand = False
+ Case Else
+ NewLine("MAN : Invalid command")
+ End Select
+ End Sub
+
+ Public Sub Shiftfetch()
+ If Strings.OnceInfo(0) = "Yes" Then
+ NewLine(" :^!7?JJJJJ?7!^: root@" & Strings.ComputerInfo(0))
+ Else
+ NewLine(" :^!7?JJJJJ?7!^: " & Strings.ComputerInfo(1) & "@" & Strings.ComputerInfo(0))
+ End If
+ NewLine(" .~?PB###BGP555PGB###BP?~. ----------------------")
+ NewLine(" .!P#&B57^..:: ^~~!!~^::~7YG&#5!. OS: ShiftOS TheRevival")
+ NewLine(" .?#@G7: .^ :^::!5&#?. Host: " & Environment.MachineName)
+ NewLine(" .?#@5^ ! .^!!..J&#? Kernel: " & My.Resources.CurrentVersion)
+ NewLine(" B@G^ .J : 7?..J@G: Uptime : N/ A")
+ NewLine(" ~&@Y 7 ~PB&#Y:. ~G7 ~&&^ Packages: " & Strings.ComputerInfo(4))
+ NewLine(" ^&@Y Y 5#5??YB@&B~ .GJ :&&: Shell: sos-justshell")
+ NewLine(" G@B ? 5P ^YB! .#! ~@G Window Manager: -")
+ NewLine(" ^@@! : @Y .:::^~:. 7# Y@^ Window Manager Theme: -")
+ NewLine(" 7@@: ! B@&BBBBGPPB@#Y. :&^ ^@? Terminal: shiftos-terminal")
+ NewLine(" ?@@: 7 :??7~:. 5@@5 :&^ .&? Terminal Font: Consolas, 11pt")
+ NewLine(" ~@@! !@ G#&B!. Y@@B 7#. Y~ CPU: " & My.Computer.Registry.GetValue("HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\CentralProcessor\0", "ProcessorNameString", Nothing))
+ NewLine(" B@G B@J ...~&G. 7@@@? .#? 7 GPU: N/A")
+ Dim TripleDigitRAM As String
+ TripleDigitRAM = (My.Computer.Info.TotalPhysicalMemory / 1024 / 1024 / 1024)
+ NewLine(" ~&@? ^@Y !G#57~~!YB@#Y^ .GP .. Memory: " & TripleDigitRAM.Substring(0, 4) & " GB")
+ NewLine(" !@@7 ~#J 5#&&BG57^ ~BY Codepoint: " & Strings.ComputerInfo(2))
+ NewLine(" ~#@Y .5P~ ^5G~ ")
+ NewLine(" .J&#! ^JY!:. ^?P5! ")
+ NewLine(" :J&B?..!JYY7!~::...::~!7Y5Y7: ")
+ NewLine(" .7PBP?^::~!?JJJJJJJ?7~: ")
+ NewLine(" .~?55Y?!^:... ")
+ NewLine(" .:~~^~^^::. ")
+ End Sub
+
+ Public Sub TimeTerm()
+ If Strings.AvailableFeature(5) = 1 Then
+ NewLine(Math.Floor(Date.Now.Subtract(Date.Today).TotalSeconds) & " seconds passed since midnight")
+ ElseIf Strings.AvailableFeature(5) = 3 Then
+ If Strings.AvailableFeature(6) = 1 Then
+ NewLine(Math.Floor(Date.Now.Subtract(Date.Today).TotalMinutes) & " minutes passed since midnight")
+ ElseIf Strings.AvailableFeature(6) = 3 Then
+ If Strings.AvailableFeature(7) = 1 Then
+ NewLine(Math.Floor(Date.Now.Subtract(Date.Today).TotalHours) & " hours passed since midnight")
+ ElseIf Strings.AvailableFeature(7) = 3 Then
+ If Strings.AvailableFeature(12) = 1 Then
+ If Date.Now.Hour < 12 Then
+ NewLine("The time is " & TimeOfDay.Hour & " AM")
+ Else
+ NewLine("The time is " & TimeOfDay.Hour - 12 & " PM")
+ End If
+ ElseIf Strings.AvailableFeature(23) = 1 Then
+ NewLine("The time is " & TimeOfDay.Hour & ":" & TimeOfDay.Minute)
+ End If
+ End If
+ End If
+ End If
+ End Sub
+End Module