aboutsummaryrefslogtreecommitdiff
path: root/ShiftOS/Labyrinth.vb
diff options
context:
space:
mode:
authorAShifter <[email protected]>2017-09-24 12:32:50 -0600
committerAShifter <[email protected]>2017-09-24 12:32:50 -0600
commit9107510c4985ceb781640163bbb82ab6de2fa35e (patch)
treec6a440b7ed182df8f8d1e5d0fdf55e28cf74055f /ShiftOS/Labyrinth.vb
parent2992686ec723fa4c854b6de27007a284b484a92e (diff)
downloadshiftos-rewind-9107510c4985ceb781640163bbb82ab6de2fa35e.tar.gz
shiftos-rewind-9107510c4985ceb781640163bbb82ab6de2fa35e.tar.bz2
shiftos-rewind-9107510c4985ceb781640163bbb82ab6de2fa35e.zip
Add proper WM and Remove old source
Added a proper, working WM. I also got rid of the old source as we could just make a new repo for that.
Diffstat (limited to 'ShiftOS/Labyrinth.vb')
-rw-r--r--ShiftOS/Labyrinth.vb684
1 files changed, 0 insertions, 684 deletions
diff --git a/ShiftOS/Labyrinth.vb b/ShiftOS/Labyrinth.vb
deleted file mode 100644
index 22c7d69..0000000
--- a/ShiftOS/Labyrinth.vb
+++ /dev/null
@@ -1,684 +0,0 @@
-Public Class Labyrinth
-
-#Region "Template Code"
- Public rolldownsize As Integer
- Public oldbordersize As Integer
- Public oldtitlebarheight As Integer
- Public justopened As Boolean = False
- Public needtorollback As Boolean = False
- Public minimumsizewidth As Integer = 100 'replace with minimum size
- Public minimumsizeheight As Integer = 100 'replace with minimum size
-
- Private Sub Template_Load(sender As Object, e As EventArgs) Handles MyBase.Load
- justopened = True
- Me.Left = (Screen.PrimaryScreen.Bounds.Width - Me.Width) / 2
- Me.Top = (Screen.PrimaryScreen.Bounds.Height - Me.Height) / 2
- setupall()
-
- setuplevels(0, True)
- If ShiftOSDesktop.LabyrinthCorrupted Then Me.Close() : infobox.showinfo("The Plague.", Me.Name & "has been corrupted by The Plague.")
-
- ShiftOSDesktop.pnlpanelbuttonmaze.SendToBack() 'CHANGE NAME
- ShiftOSDesktop.setuppanelbuttons()
- ShiftOSDesktop.setpanelbuttonappearnce(ShiftOSDesktop.pnlpanelbuttonmaze, ShiftOSDesktop.tbmazeicon, ShiftOSDesktop.tbmazetext, True) 'modify to proper name
- ShiftOSDesktop.programsopen = ShiftOSDesktop.programsopen + 1
- End Sub
-
- Public Sub setupall()
- setuptitlebar()
- setupborders()
- setskin()
- End Sub
-
- Private Sub ShiftOSDesktop_keydown(sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
- 'Make terminal appear
- If e.KeyCode = Keys.T AndAlso e.Control Then
- Terminal.Show()
- Terminal.Visible = True
- Terminal.BringToFront()
- End If
-
- 'Movable Windows
- If ShiftOSDesktop.boughtmovablewindows = True Then
- If e.KeyCode = Keys.A AndAlso e.Control Then
- e.Handled = True
- Me.Location = New Point(Me.Location.X - ShiftOSDesktop.movablewindownumber, Me.Location.Y)
- End If
- If e.KeyCode = Keys.D AndAlso e.Control Then
- e.Handled = True
- Me.Location = New Point(Me.Location.X + ShiftOSDesktop.movablewindownumber, Me.Location.Y)
- End If
- If e.KeyCode = Keys.W AndAlso e.Control Then
- e.Handled = True
- Me.Location = New Point(Me.Location.X, Me.Location.Y - ShiftOSDesktop.movablewindownumber)
- End If
- If e.KeyCode = Keys.S AndAlso e.Control Then
- e.Handled = True
- Me.Location = New Point(Me.Location.X, Me.Location.Y + ShiftOSDesktop.movablewindownumber)
- End If
- ShiftOSDesktop.log = ShiftOSDesktop.log & My.Computer.Clock.LocalTime & " User moved " & Me.Name & " to " & Me.Location.ToString & " with " & e.KeyCode.ToString & Environment.NewLine
- End If
- End Sub
-
- Private Sub titlebar_MouseDown(sender As Object, e As MouseEventArgs) Handles titlebar.MouseDown, lbtitletext.MouseDown, pnlicon.MouseDown, pgtoplcorner.MouseDown, pgtoprcorner.MouseDown
- ' Handle Draggable Windows
- If ShiftOSDesktop.boughtdraggablewindows = True Then
- If e.Button = MouseButtons.Left Then
- titlebar.Capture = False
- lbtitletext.Capture = False
- pnlicon.Capture = False
- pgtoplcorner.Capture = False
- pgtoprcorner.Capture = False
- Const WM_NCLBUTTONDOWN As Integer = &HA1S
- Const HTCAPTION As Integer = 2
- Dim msg As Message = _
- Message.Create(Me.Handle, WM_NCLBUTTONDOWN, _
- New IntPtr(HTCAPTION), IntPtr.Zero)
- Me.DefWndProc(msg)
- End If
- ShiftOSDesktop.log = ShiftOSDesktop.log & My.Computer.Clock.LocalTime & " User dragged " & Me.Name & " to " & Me.Location.ToString & Environment.NewLine
- End If
- End Sub
-
- Public Sub setupborders()
- If ShiftOSDesktop.boughtwindowborders = False Then
- pgleft.Hide()
- pgbottom.Hide()
- pgright.Hide()
- Me.Size = New Size(Me.Width - pgleft.Width - pgright.Width, Me.Height - pgbottom.Height)
- End If
- End Sub
-
- Private Sub closebutton_Click(sender As Object, e As EventArgs) Handles closebutton.Click
- Me.Close()
- End Sub
-
- Private Sub closebutton_MouseEnter(sender As Object, e As EventArgs) Handles closebutton.MouseEnter, closebutton.MouseUp
- closebutton.BackgroundImage = Skins.closebtnhover
- End Sub
-
- Private Sub closebutton_MouseLeave(sender As Object, e As EventArgs) Handles closebutton.MouseLeave
- closebutton.BackgroundImage = Skins.closebtn
- End Sub
-
- Private Sub closebutton_MouseDown(sender As Object, e As EventArgs) Handles closebutton.MouseDown
- closebutton.BackgroundImage = Skins.closebtnclick
- End Sub
-
- Private Sub minimizebutton_Click(sender As Object, e As EventArgs) Handles minimizebutton.Click
- ShiftOSDesktop.minimizeprogram(Me, False)
- End Sub
-
- 'Old skinning system - No idea what this does
- ''Private Sub titlebar_MouseEnter(sender As Object, e As EventArgs) Handles titlebar.MouseEnter, titlebar.MouseUp, lbtitletext.MouseEnter, pnlicon.MouseEnter, closebutton.MouseEnter, rollupbutton.MouseEnter
- '' If ShiftOSDesktop.skinimages(3) = ShiftOSDesktop.skinimages(4) Then Else titlebar.BackgroundImage = ShiftOSDesktop.skintitlebar(1)
- ''End Sub
-
- 'Private Sub titlebar_MouseLeave(sender As Object, e As EventArgs) Handles titlebar.MouseLeave, lbtitletext.MouseLeave, pnlicon.MouseLeave, closebutton.MouseLeave, rollupbutton.MouseLeave
- ' If ShiftOSDesktop.skinimages(3) = ShiftOSDesktop.skinimages(4) Then Else titlebar.BackgroundImage = ShiftOSDesktop.skintitlebar(0)
- 'End Sub
-
- Private Sub rollupbutton_Click(sender As Object, e As EventArgs) Handles rollupbutton.Click
- rollupanddown()
- End Sub
-
- Private Sub rollupbutton_MouseEnter(sender As Object, e As EventArgs) Handles rollupbutton.MouseEnter, rollupbutton.MouseUp
- rollupbutton.BackgroundImage = Skins.rollbtnhover
- End Sub
-
- Private Sub rollupbutton_MouseLeave(sender As Object, e As EventArgs) Handles rollupbutton.MouseLeave
- rollupbutton.BackgroundImage = Skins.rollbtn
- End Sub
-
- Private Sub rollupbutton_MouseDown(sender As Object, e As EventArgs) Handles rollupbutton.MouseDown
- rollupbutton.BackgroundImage = Skins.rollbtnclick
- End Sub
-
- Public Sub setuptitlebar()
-
- setupborders()
-
- If Me.Height = Me.titlebar.Height Then pgleft.Show() : pgbottom.Show() : pgright.Show() : Me.Height = rolldownsize : needtorollback = True
- pgleft.Width = Skins.borderwidth
- pgright.Width = Skins.borderwidth
- pgbottom.Height = Skins.borderwidth
- titlebar.Height = Skins.titlebarheight
-
- If justopened = True Then
- Me.Size = New Size(500, 300) 'put the default size of your window here
- Me.Size = New Size(Me.Width, Me.Height + Skins.titlebarheight - 30)
- Me.Size = New Size(Me.Width + Skins.borderwidth + Skins.borderwidth, Me.Height + Skins.borderwidth)
- oldbordersize = Skins.borderwidth
- oldtitlebarheight = Skins.titlebarheight
- justopened = False
- Else
- If Me.Visible = True Then
- 'Me.Hide()
- Me.Size = New Size(Me.Width - (2 * oldbordersize) + (2 * Skins.borderwidth), (Me.Height - oldtitlebarheight - oldbordersize) + Skins.titlebarheight + Skins.borderwidth)
- 'Me.Size = New Size(Me.Width - oldbordersize - oldbordersize, Me.Height - oldbordersize) 'Just put a little algebra in the first size setting and comment out the mess
- oldbordersize = Skins.borderwidth
- oldtitlebarheight = Skins.titlebarheight
- 'Me.Size = New Size(Me.Width, Me.Height + Skins.titlebarheight - 30)
- 'Me.Size = New Size(Me.Width + Skins. borderwidth + Skins. borderwidth, Me.Height + Skins. borderwidth)
- 'rolldownsize = Me.Height
- If needtorollback = True Then Me.Height = titlebar.Height : pgleft.Hide() : pgbottom.Hide() : pgright.Hide()
- 'Me.Show()
- End If
- End If
-
- If Skins.enablecorners = True Then
- pgtoplcorner.Show()
- pgtoprcorner.Show()
- pgtoprcorner.Width = Skins.titlebarcornerwidth
- pgtoplcorner.Width = Skins.titlebarcornerwidth
- Else
- pgtoplcorner.Hide()
- pgtoprcorner.Hide()
- End If
-
- If ShiftOSDesktop.boughttitlebar = False Then
- titlebar.Hide()
- Me.Size = New Size(Me.Width, Me.Size.Height - titlebar.Height)
- End If
-
- If ShiftOSDesktop.boughttitletext = False Then
- lbtitletext.Hide()
- Else
- lbtitletext.Font = New Font(Skins.titletextfontfamily, Skins.titletextfontsize, Skins.titletextfontstyle, GraphicsUnit.Point)
- lbtitletext.Text = ShiftOSDesktop.mazename 'Remember to change to name of program!!!!
- lbtitletext.Show()
- End If
-
- If ShiftOSDesktop.boughtclosebutton = False Then
- closebutton.Hide()
- Else
- closebutton.BackColor = Skins.closebtncolour
- closebutton.Size = Skins.closebtnsize
- closebutton.Show()
- End If
-
- If ShiftOSDesktop.boughtrollupbutton = False Then
- rollupbutton.Hide()
- Else
- rollupbutton.BackColor = Skins.rollbtncolour
- rollupbutton.Size = Skins.rollbtnsize
- rollupbutton.Show()
- End If
-
- If ShiftOSDesktop.boughtminimizebutton = False Then
- minimizebutton.Hide()
- Else
- minimizebutton.BackColor = Skins.minbtncolour
- minimizebutton.Size = Skins.minbtnsize
- minimizebutton.Show()
- End If
-
- If ShiftOSDesktop.boughtwindowborders = True Then
- closebutton.Location = New Point(titlebar.Size.Width - Skins.closebtnfromside - closebutton.Size.Width, Skins.closebtnfromtop)
- rollupbutton.Location = New Point(titlebar.Size.Width - Skins.rollbtnfromside - rollupbutton.Size.Width, Skins.rollbtnfromtop)
- minimizebutton.Location = New Point(titlebar.Size.Width - Skins.minbtnfromside - minimizebutton.Size.Width, Skins.minbtnfromtop)
- Select Case Skins.titletextpos
- Case "Left"
- lbtitletext.Location = New Point(Skins.titletextfromside, Skins.titletextfromtop)
- Case "Centre"
- lbtitletext.Location = New Point((titlebar.Width / 2) - lbtitletext.Width / 2, Skins.titletextfromtop)
- End Select
- lbtitletext.ForeColor = Skins.titletextcolour
- Else
- closebutton.Location = New Point(titlebar.Size.Width - Skins.closebtnfromside - pgtoplcorner.Width - pgtoprcorner.Width - closebutton.Size.Width, Skins.closebtnfromtop)
- rollupbutton.Location = New Point(titlebar.Size.Width - Skins.rollbtnfromside - pgtoplcorner.Width - pgtoprcorner.Width - rollupbutton.Size.Width, Skins.rollbtnfromtop)
- minimizebutton.Location = New Point(titlebar.Size.Width - Skins.minbtnfromside - pgtoplcorner.Width - pgtoprcorner.Width - minimizebutton.Size.Width, Skins.minbtnfromtop)
- Select Case Skins.titletextpos
- Case "Left"
- lbtitletext.Location = New Point(Skins.titletextfromside + pgtoplcorner.Width, Skins.titletextfromtop)
- Case "Centre"
- lbtitletext.Location = New Point((titlebar.Width / 2) - lbtitletext.Width / 2, Skins.titletextfromtop)
- End Select
- lbtitletext.ForeColor = Skins.titletextcolour
- End If
-
- 'Change when Icon skinning complete
- If ShiftOSDesktop.boughtshiftneticon = True Then ' Change to program's icon
- pnlicon.Visible = True
- pnlicon.Location = New Point(ShiftOSDesktop.titlebariconside, ShiftOSDesktop.titlebaricontop)
- pnlicon.Size = New Size(ShiftOSDesktop.titlebariconsize, ShiftOSDesktop.titlebariconsize)
- pnlicon.Image = ShiftOSDesktop.mazeicontitlebar 'Replace with the correct icon for the program.
- End If
-
- End Sub
-
- Public Sub rollupanddown()
- If Me.Height = Me.titlebar.Height Then
- pgleft.Show()
- pgbottom.Show()
- pgright.Show()
- Me.Height = rolldownsize
- Me.MinimumSize = New Size(minimumsizewidth, minimumsizeheight)
- Else
- Me.MinimumSize = New Size(0, 0)
- pgleft.Hide()
- pgbottom.Hide()
- pgright.Hide()
- rolldownsize = Me.Height
- Me.Height = Me.titlebar.Height
- End If
- End Sub
-
- Public Sub resettitlebar()
- If ShiftOSDesktop.boughtwindowborders = True Then
- closebutton.Location = New Point(titlebar.Size.Width - Skins.closebtnfromside - closebutton.Size.Width, Skins.closebtnfromtop)
- rollupbutton.Location = New Point(titlebar.Size.Width - Skins.rollbtnfromside - rollupbutton.Size.Width, Skins.rollbtnfromtop)
- minimizebutton.Location = New Point(titlebar.Size.Width - Skins.minbtnfromside - minimizebutton.Size.Width, Skins.minbtnfromtop)
- Select Case Skins.titletextpos
- Case "Left"
- lbtitletext.Location = New Point(Skins.titletextfromside, Skins.titletextfromtop)
- Case "Centre"
- lbtitletext.Location = New Point((titlebar.Width / 2) - lbtitletext.Width / 2, Skins.titletextfromtop)
- End Select
- lbtitletext.ForeColor = Skins.titletextcolour
- Else
- closebutton.Location = New Point(titlebar.Size.Width - Skins.closebtnfromside - pgtoplcorner.Width - pgtoprcorner.Width - closebutton.Size.Width, Skins.closebtnfromtop)
- rollupbutton.Location = New Point(titlebar.Size.Width - Skins.rollbtnfromside - pgtoplcorner.Width - pgtoprcorner.Width - rollupbutton.Size.Width, Skins.rollbtnfromtop)
- minimizebutton.Location = New Point(titlebar.Size.Width - Skins.minbtnfromside - pgtoplcorner.Width - pgtoprcorner.Width - minimizebutton.Size.Width, Skins.minbtnfromtop)
- Select Case Skins.titletextpos
- Case "Left"
- lbtitletext.Location = New Point(Skins.titletextfromside + pgtoplcorner.Width, Skins.titletextfromtop)
- Case "Centre"
- lbtitletext.Location = New Point((titlebar.Width / 2) - lbtitletext.Width / 2, Skins.titletextfromtop)
- End Select
- lbtitletext.ForeColor = Skins.titletextcolour
- End If
- End Sub
-
- Private Sub pullside_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles pullside.Tick
- Me.Width = Cursor.Position.X - Me.Location.X
- resettitlebar()
- End Sub
-
- Private Sub pullbottom_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles pullbottom.Tick
- Me.Height = Cursor.Position.Y - Me.Location.Y
- resettitlebar()
- End Sub
-
- Private Sub pullbs_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles pullbs.Tick
- Me.Width = Cursor.Position.X - Me.Location.X
- Me.Height = Cursor.Position.Y - Me.Location.Y
- resettitlebar()
- End Sub
-
- 'delete this for non-resizable windows
- Private Sub Rightpull_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles pgright.MouseDown
- If ShiftOSDesktop.boughtresizablewindows = True Then
- pullside.Start()
- End If
- End Sub
-
- Private Sub RightCursorOn_MouseDown(ByVal sender As Object, ByVal e As System.EventArgs) Handles pgright.MouseEnter
- If ShiftOSDesktop.boughtresizablewindows = True Then
- Cursor = Cursors.SizeWE
- End If
- End Sub
-
- Private Sub bottomCursorOn_MouseDown(ByVal sender As Object, ByVal e As System.EventArgs) Handles pgbottom.MouseEnter
- If ShiftOSDesktop.boughtresizablewindows = True Then
- Cursor = Cursors.SizeNS
- End If
- End Sub
-
- Private Sub CornerCursorOn_MouseDown(ByVal sender As Object, ByVal e As System.EventArgs) Handles pgbottomrcorner.MouseEnter
- If ShiftOSDesktop.boughtresizablewindows = True Then
- Cursor = Cursors.SizeNWSE
- End If
- End Sub
-
- Private Sub SizeCursoroff_MouseDown(ByVal sender As Object, ByVal e As System.EventArgs) Handles pgright.MouseLeave, pgbottom.MouseLeave, pgbottomrcorner.MouseLeave
- If ShiftOSDesktop.boughtresizablewindows = True Then
- Cursor = Cursors.Default
- End If
- End Sub
-
- Private Sub rightpull_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles pgright.MouseUp
- If ShiftOSDesktop.boughtresizablewindows = True Then
- pullside.Stop()
- End If
- End Sub
-
- Private Sub bottompull_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles pgbottom.MouseDown
- If ShiftOSDesktop.boughtresizablewindows = True Then
- pullbottom.Start()
- End If
- End Sub
-
- Private Sub buttompull_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles pgbottom.MouseUp
- If ShiftOSDesktop.boughtresizablewindows = True Then
- pullbottom.Stop()
- End If
- End Sub
-
- Private Sub bspull_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles pgbottomrcorner.MouseDown
- If ShiftOSDesktop.boughtresizablewindows = True Then
- pullbs.Start()
- End If
- End Sub
-
- Private Sub bspull_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles pgbottomrcorner.MouseUp
- If ShiftOSDesktop.boughtresizablewindows = True Then
- pullbs.Stop()
- End If
- End Sub
-
- Public Sub setskin()
- 'disposals
- closebutton.BackgroundImage = Nothing
- titlebar.BackgroundImage = Nothing
- rollupbutton.BackgroundImage = Nothing
- pgtoplcorner.BackgroundImage = Nothing
- pgtoprcorner.BackgroundImage = Nothing
- minimizebutton.BackgroundImage = Nothing
- 'apply new skin
- If Skins.closebtn Is Nothing Then closebutton.BackColor = Skins.closebtncolour Else closebutton.BackgroundImage = Skins.closebtn
- closebutton.BackgroundImageLayout = Skins.closebtnlayout
- If Skins.titlebar Is Nothing Then titlebar.BackColor = Skins.titlebarcolour Else titlebar.BackgroundImage = Skins.titlebar
- titlebar.BackgroundImageLayout = Skins.titlebarlayout
- If Skins.rollbtn Is Nothing Then rollupbutton.BackColor = Skins.rollbtncolour Else rollupbutton.BackgroundImage = Skins.rollbtn
- rollupbutton.BackgroundImageLayout = Skins.rollbtnlayout
- If Skins.leftcorner Is Nothing Then pgtoplcorner.BackColor = Skins.leftcornercolour Else pgtoplcorner.BackgroundImage = Skins.leftcorner
- pgtoplcorner.BackgroundImageLayout = Skins.leftcornerlayout
- If Skins.rightcorner Is Nothing Then pgtoprcorner.BackColor = Skins.rightcornercolour Else pgtoprcorner.BackgroundImage = Skins.rightcorner
- pgtoprcorner.BackgroundImageLayout = Skins.rightcornerlayout
- If Skins.minbtn Is Nothing Then minimizebutton.BackColor = Skins.minbtncolour Else minimizebutton.BackgroundImage = Skins.minbtn
- minimizebutton.BackgroundImageLayout = Skins.minbtnlayout
- If Skins.borderleft Is Nothing Then pgleft.BackColor = Skins.borderleftcolour Else pgleft.BackgroundImage = Skins.borderleft
- pgleft.BackgroundImageLayout = Skins.borderleftlayout
- If Skins.borderright Is Nothing Then pgright.BackColor = Skins.borderrightcolour Else pgright.BackgroundImage = Skins.borderright
- pgleft.BackgroundImageLayout = Skins.borderrightlayout
- If Skins.borderbottom Is Nothing Then pgbottom.BackColor = Skins.borderbottomcolour Else pgbottom.BackgroundImage = Skins.borderbottom
- pgbottom.BackgroundImageLayout = Skins.borderbottomlayout
- If enablebordercorners = True Then
- If Skins.bottomleftcorner Is Nothing Then pgbottomlcorner.BackColor = Skins.bottomleftcornercolour Else pgbottomlcorner.BackgroundImage = Skins.bottomleftcorner
- pgbottomlcorner.BackgroundImageLayout = Skins.bottomleftcornerlayout
- If Skins.bottomrightcorner Is Nothing Then pgbottomrcorner.BackColor = Skins.bottomrightcornercolour Else pgbottomrcorner.BackgroundImage = Skins.bottomrightcorner
- pgbottomrcorner.BackgroundImageLayout = Skins.bottomrightcornerlayout
- Else
- pgbottomlcorner.BackColor = Skins.borderrightcolour
- pgbottomrcorner.BackColor = Skins.borderrightcolour
- pgbottomlcorner.BackgroundImage = Nothing
- pgbottomrcorner.BackgroundImage = Nothing
- End If
-
- 'set bottom border corner size
- pgbottomlcorner.Size = New Size(Skins.borderwidth, Skins.borderwidth)
- pgbottomrcorner.Size = New Size(Skins.borderwidth, Skins.borderwidth)
- pgbottomlcorner.Location = New Point(0, Me.Height - Skins.borderwidth)
- pgbottomrcorner.Location = New Point(Me.Width, Me.Height - Skins.borderwidth)
-
- Me.TransparencyKey = ShiftOSDesktop.globaltransparencycolour
- End Sub
-
- Private Sub Clock_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
- ShiftOSDesktop.programsopen = ShiftOSDesktop.programsopen - 1
- Me.Hide()
- ShiftOSDesktop.setuppanelbuttons()
- End Sub
-
- 'end of general setup
-#End Region
-
- Dim timeleft As Integer
- Dim cpearnt As Integer
- Dim movex As Integer
- Dim movey As Integer
- Dim wall(50) As Panel
- Dim level As Integer = 1
-
- Private Sub setuplevels(ByVal lvl As Integer, ByVal firstlvl As Boolean)
- pnllvl1.Dock = DockStyle.None
- pnllvl2.Dock = DockStyle.None
- pnllvl3.Dock = DockStyle.None
- Select Case lvl
- Case 0
- cpearnt = 0
- level = 0
- pnlintro.Dock = DockStyle.Fill
- pnlintro.BringToFront()
- lbllevel.Text = "Intro"
- pnlplayer.Parent = pnlintro
- Case 1
- If firstlvl = False Then cpearnt = cpearnt + 2
- level = 1
- pnllvl1.Dock = DockStyle.Fill
- pnllvl1.BringToFront()
- pnlplayer.Parent = pnllvl1
- lbllevel.Text = "Up 'n Down"
- Case 2
- If firstlvl = False Then cpearnt = cpearnt + 2
- level = 2
- pnllvl2.Dock = DockStyle.Fill
- pnllvl2.BringToFront()
- pnlplayer.Parent = pnllvl2
- lbllevel.Text = "Mid 'I'"
- Case 3
- If firstlvl = False Then cpearnt = cpearnt + 2
- level = 3
- pnllvl3.Dock = DockStyle.Fill
- pnllvl3.BringToFront()
- pnlplayer.Parent = pnllvl3
- lbllevel.Text = "Followin' the Path"
- Case 4
- If firstlvl = False Then cpearnt = cpearnt + 2
- level = 4
- pnllvl4.Dock = DockStyle.Fill
- pnllvl4.BringToFront()
- pnlplayer.Parent = pnllvl4
- lbllevel.Text = "BOXES!"
- Case 5
- If firstlvl = False Then cpearnt = cpearnt + 2
- level = 5
- pnllvl5.Dock = DockStyle.Fill
- pnllvl5.BringToFront()
- pnlplayer.Parent = pnllvl5
- lbllevel.Text = "Twoway"
-
- End Select
- If Not lvl = 0 Then
- setupwalls()
- pnlplayer.Location = New Point(8, 10)
- tmrtimeleft.Start()
- tmrgametick.Start()
- End If
- End Sub
-
- Private Sub randomizelevel(ByVal firstrun As Boolean)
- Dim i As Integer = Math.Ceiling(Rnd() * 5)
- If i = level Or i = 0 Then
- i = Math.Ceiling(Rnd() * 5)
- Else
- setuplevels(i, firstrun)
- End If
- End Sub
-
- Private Sub key_press(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
- If e.KeyCode = Keys.A Then
- movex = -2
- End If
- If e.KeyCode = Keys.D Then
- movex = 2
- End If
- If e.KeyCode = Keys.W Then
- movey = -2
- End If
- If e.KeyCode = Keys.S Then
- movey = 2
- End If
- End Sub
-
- Private Sub key_up(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyUp
- If e.KeyCode = Keys.A Then
- movex = 0
- End If
- If e.KeyCode = Keys.D Then
- movex = 0
- End If
- If e.KeyCode = Keys.W Then
- movey = 0
- End If
- If e.KeyCode = Keys.S Then
- movey = 0
- End If
- End Sub
-
- Private Sub tmrtimeleft_Tick(sender As Object, e As EventArgs) Handles tmrtimeleft.Tick
- If timeleft > 0 Then
- timeleft = timeleft - 1
- Else
- infobox.showinfo("Time Up", "You have run out of time, having completed " & level & " mazes and earnt " & cpearnt & " CP")
- setuplevels(0, True)
- ShiftOSDesktop.codepoints = +cpearnt
- cpearnt = 0
- End If
- lbltime.Text = timeleft
- End Sub
-
- Dim i As Integer = 0
- Private Sub tmrgametimer_Tick(sender As Object, e As EventArgs) Handles tmrgametick.Tick
- pnlplayer.Location = New Point(pnlplayer.Location.X + movex, pnlplayer.Location.Y + movey)
-
- If Not level = 0 Then
- If pnlplayer.Bounds.IntersectsWith(wall(i).Bounds) Then
- infobox.showinfo(" Game Over", "You hit a wall, missing out on " & cpearnt & " Code Points")
- setuplevels(0, True)
- cpearnt = 0
- movex = 0
- movey = 0
- End If
- End If
-
- If Not level = 0 Then
- If Not pnlplayer.Bounds.IntersectsWith(pnlplayer.Parent.Bounds) Then
- infobox.showinfo("Game Over", "No escape, stop being a mazerunner. You just missed out on " & cpearnt & " Code Points")
- setuplevels(0, True)
- cpearnt = 0
- End If
- End If
-
- If pnlplayer.Bounds.IntersectsWith(lbllvl1exit.Bounds) Then
- randomizelevel(False)
- End If
-
- If level = 1 Then
- If i <= 9 Then
- i = i + 1
- Else
- i = 0
- End If
- ElseIf level = 2 Then
- If i <= 11 Then
- i = i + 1
- Else
- i = 0
- End If
- ElseIf level = 3 Then
- If i <= 3 Then
- i = i + 1
- Else
- i = 0
- End If
- ElseIf level = 4 Then
- If i <= 7 Then
- i = i + 1
- Else
- i = 0
- End If
- ElseIf level = 5 Then
- If i <= 4 Then
- i = i + 1
- Else
- i = 0
- End If
- End If
- btncashout.Text = "Cashout " & cpearnt & " CP"
- End Sub
-
- Private Sub setupwalls()
- Select Case level
- 'Dim j as integer = 0
- 'For Each ctl As Control In Lvls.Controls
- ' Dim i as integer = 0
- ' For Each ctrl As Control In ctl.Controls
- ' Try
- ' wallObj(j, i) = ctrl
- ' Catch ex As Exception
-
- ' End Try
- ' i = i + 1
- ' Next
- 'Next
- '^^^^^^^^^^ How to code for expandability
- Case 1
- wall(0) = Panel1
- wall(2) = Panel2
- wall(3) = Panel3
- wall(4) = Panel4
- wall(5) = Panel5
- wall(6) = Panel6
- wall(7) = Panel7
- wall(8) = Panel8
- wall(9) = Panel9
- wall(10) = Panel10
- wall(1) = Panel11
- Case 2
- wall(0) = Panel12
- wall(1) = Panel13
- wall(2) = Panel14
- wall(3) = Panel15
- wall(4) = Panel16
- wall(5) = Panel17
- wall(6) = Panel18
- wall(7) = Panel19
- wall(8) = Panel20
- wall(9) = Panel21
- wall(10) = Panel22
- wall(11) = Panel23
- wall(12) = Panel24
- wall(13) = Panel25
- Case 3
- wall(0) = Panel26
- wall(1) = Panel27
- wall(2) = Panel28
- wall(3) = Panel29
- wall(4) = Panel30
- wall(5) = Panel31
- Case 4
- wall(0) = Panel32
- wall(1) = Panel33
- wall(2) = Panel34
- wall(3) = Panel35
- wall(4) = Panel36
- wall(5) = Panel37
- wall(6) = Panel38
- wall(7) = Panel39
- wall(8) = Panel40
- wall(9) = Panel41
- Case 5
- wall(0) = Panel42
- wall(1) = Panel43
- wall(2) = Panel44
- wall(3) = Panel45
- wall(4) = Panel46
- wall(5) = Panel47
- wall(6) = Panel48
- End Select
- End Sub
-
- Private Sub btncashout_Click(sender As Object, e As EventArgs) Handles btncashout.Click
- ShiftOSDesktop.codepoints = ShiftOSDesktop.codepoints + cpearnt
- infobox.showinfo("Cashout Successful", "You have successfully cashed out " & cpearnt & " Code Points")
- cpearnt = 0
- setuplevels(0, True)
- End Sub
-
- Private Sub beginbtn_Click(sender As Object, e As EventArgs) Handles beginbtn.Click
- timeleft = 100
- randomizelevel(True)
- End Sub
-End Class