aboutsummaryrefslogtreecommitdiff
path: root/ShiftOS/Pong.vb
diff options
context:
space:
mode:
Diffstat (limited to 'ShiftOS/Pong.vb')
-rw-r--r--ShiftOS/Pong.vb743
1 files changed, 0 insertions, 743 deletions
diff --git a/ShiftOS/Pong.vb b/ShiftOS/Pong.vb
deleted file mode 100644
index ee99e6f..0000000
--- a/ShiftOS/Pong.vb
+++ /dev/null
@@ -1,743 +0,0 @@
-Public Class Pong
- Public oldsize As Integer
- 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 = 0
- Public minimumsizeheight As Integer = 0
-
- Dim RolledUp As Boolean = False
- Dim rndInst As New Random() ' Random instance
- Dim xVel As Single = 7
- Dim yVel As Single = 8
- Dim computerspeed = 8
- Dim rand As New Random
- Dim level As Integer = 1
- Dim secondsleft As Integer = 60
- Dim casualposition As Integer
- Dim xveldec As Double = 3.0
- Dim yveldec As Double = 3.0
- Dim incrementx As Double = 0.4
- Dim incrementy As Double = 0.2
- Dim levelxspeed As Integer = 3
- Dim levelyspeed As Integer = 3
- Dim beatairewardtotal As Integer
- Dim beataireward As Integer = 1
- Dim levelrewards(50) As Integer
- Dim totalreward As Integer
- Dim countdown As Integer = 3
- Dim paused As Boolean = False
-
-#Region "Template Code"
-
- 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()
- If ShiftOSDesktop.PongCorrupted Then Me.Close() : infobox.showinfo("The Plague.", Me.Name & "has been corrupted by The Plague.")
-
- setuplevelrewards()
-
- If ShiftOSDesktop.boughtgray4 = True And ShiftOSDesktop.boughtshiftnet = False Then tmrstoryline.Start()
-
- ShiftOSDesktop.pnlpanelbuttonpong.SendToBack() 'CHANGE NAME
- ShiftOSDesktop.setuppanelbuttons()
- ShiftOSDesktop.setpanelbuttonappearnce(ShiftOSDesktop.pnlpanelbuttonpong, ShiftOSDesktop.tbpongicon, ShiftOSDesktop.tbpongtext, 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(700, 400) '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.pongname '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.boughtpongicon = 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.pongicontitlebar '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 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
-
- 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
-
- ' Move the paddle according to the mouse position.
- Private Sub pongMain_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseMove, pgcontents.MouseMove, titlebar.MouseMove, ball.MouseMove, paddleComputer.MouseMove, paddleHuman.MouseMove, lblstatsX.MouseMove, lbllevelandtime.MouseMove, lblstatsY.MouseMove, lblstatscodepoints.MouseMove, pnlintro.MouseMove, Label6.MouseMove, Label8.MouseMove, btnstartgame.MouseMove
- paddleHuman.Location = New Point(paddleHuman.Location.X, (MousePosition.Y - Me.Location.Y - ShiftOSDesktop.titlebarheight - ShiftOSDesktop.windowbordersize) - (paddleHuman.Height / 2))
- End Sub
-
- Private Sub gameTimer_Tick(sender As Object, e As EventArgs) Handles gameTimer.Tick
-
- 'Set the computer player to move according to the ball's position.
- If ball.Location.X > 500 - xVel * 10 AndAlso xVel > 0 Then
- If ball.Location.Y > paddleComputer.Location.Y + 50 Then
- paddleComputer.Location = New Point(paddleComputer.Location.X, paddleComputer.Location.Y + computerspeed)
- End If
- If ball.Location.Y < paddleComputer.Location.Y + 50 Then
- paddleComputer.Location = New Point(paddleComputer.Location.X, paddleComputer.Location.Y - computerspeed)
- End If
- casualposition = rand.Next(-150, 201)
- Else
- If paddleComputer.Location.Y > Me.Size.Height / 2 - paddleComputer.Height + casualposition Then 'used to be me.location.y
- paddleComputer.Location = New Point(paddleComputer.Location.X, paddleComputer.Location.Y - computerspeed)
- End If
- If paddleComputer.Location.Y < Me.Size.Height / 2 - paddleComputer.Height + casualposition Then 'used to be me.location.y
- paddleComputer.Location = New Point(paddleComputer.Location.X, paddleComputer.Location.Y + computerspeed)
- End If
- End If
-
- 'Set Xvel and Yvel speeds from decimal
- If xVel > 0 Then xVel = Math.Round(xveldec)
- If xVel < 0 Then xVel = -Math.Round(xveldec)
- If yVel > 0 Then yVel = Math.Round(yveldec)
- If yVel < 0 Then yVel = -Math.Round(yveldec)
-
- ' Move the game ball.
- ball.Location = New Point(ball.Location.X + xVel, ball.Location.Y + yVel)
-
- ' Check for top wall.
- If ball.Location.Y < 0 Then
- ball.Location = New Point(ball.Location.X, 0)
- yVel = -yVel
- End If
-
- ' Check for bottom wall.
- If ball.Location.Y > Me.Height - ball.Size.Height - titlebar.Height - pgbottom.Height Then
- ball.Location = New Point(ball.Location.X, Me.Height - ball.Size.Height - titlebar.Height - pgbottom.Height)
- yVel = -yVel
- End If
-
- ' Check for player paddle.
- If ball.Bounds.IntersectsWith(paddleHuman.Bounds) Then
- ball.Location = New Point(paddleHuman.Location.X + ball.Size.Width, ball.Location.Y)
- 'randomly increase x or y speed of ball
- Select Case rand.Next(1, 3)
- Case 1
- xveldec = xveldec + incrementx
- Case 2
- If yveldec > 0 Then yveldec = yveldec + incrementy
- If yveldec < 0 Then yveldec = yveldec - incrementy
- End Select
- xVel = -xVel
- My.Computer.Audio.Play(My.Resources.typesound, AudioPlayMode.Background)
- End If
-
- ' Check for computer paddle.
- If ball.Bounds.IntersectsWith(paddleComputer.Bounds) Then
- ball.Location = New Point(paddleComputer.Location.X - paddleComputer.Size.Width + 1, ball.Location.Y)
- xveldec = xveldec + incrementx
- xVel = -xVel
- My.Computer.Audio.Play(My.Resources.typesound, AudioPlayMode.Background)
- End If
-
- ' Check for left wall.
- If ball.Location.X < -100 Then
- ball.Location = New Point(Me.Size.Width / 2 + 200, Me.Size.Height / 2)
- paddleComputer.Location = New Point(paddleComputer.Location.X, ball.Location.Y)
- If xVel > 0 Then xVel = -xVel
- pnllose.Show()
- gameTimer.Stop()
- counter.Stop()
- lblmissedout.Text = "You Missed Out On:" & Environment.NewLine & levelrewards(level - 1) + beatairewardtotal & " Codepoints"
- End If
-
- ' Check for right wall.
- If ball.Location.X > Me.Width - ball.Size.Width - paddleComputer.Width + 100 Then
- ball.Location = New Point(Me.Size.Width / 2 + 200, Me.Size.Height / 2)
- paddleComputer.Location = New Point(paddleComputer.Location.X, ball.Location.Y)
- If xVel > 0 Then xVel = -xVel
- beatairewardtotal = beatairewardtotal + beataireward
- lblbeatai.Show()
- lblbeatai.Text = "You got " & beataireward & " codepoints for beating the Computer!"
- tmrcountdown.Start()
- gameTimer.Stop()
- counter.Stop()
- End If
-
- 'lblstats.Text = "Xspeed: " & Math.Abs(xVel) & " Yspeed: " & Math.Abs(yVel) & " Human Location: " & paddleHuman.Location.ToString & " Computer Location: " & paddleComputer.Location.ToString & Environment.NewLine & " Ball Location: " & ball.Location.ToString & " Xdec: " & xveldec & " Ydec: " & yveldec & " Xinc: " & incrementx & " Yinc: " & incrementy
- lblstatsX.Text = "Xspeed: " & xveldec
- lblstatsY.Text = "Yspeed: " & yveldec
- lblstatscodepoints.Text = "Codepoints earned: " & levelrewards(level - 1) + beatairewardtotal
-
- lbllevelandtime.Text = "Level: " & level & " - " & secondsleft & " Seconds Left"
-
- If xVel > 20 OrElse xVel < -20 Then
- paddleHuman.Width = Math.Abs(xVel)
- paddleComputer.Width = Math.Abs(xVel)
- Else
- paddleHuman.Width = 20
- paddleComputer.Width = 20
- End If
-
- computerspeed = Math.Abs(yVel)
-
- ' pgcontents.Refresh()
- ' pgcontents.CreateGraphics.FillRectangle(Brushes.Black, ball.Location.X, ball.Location.Y, ball.Width, ball.Height)
-
- End Sub
-
- Private Sub counter_Tick(sender As Object, e As EventArgs) Handles counter.Tick
- secondsleft = secondsleft - 1
- If secondsleft = -1 Then
- secondsleft = 60
- level = level + 1
- generatenextlevel()
- pnlgamestats.Show()
- counter.Stop()
- gameTimer.Stop()
- End If
- lblstatscodepoints.Text = "Codepoints earned: " & levelrewards(level - 1) + beatairewardtotal
- End Sub
-
- Private Sub btnplayon_Click(sender As Object, e As EventArgs) Handles btnplayon.Click
- xveldec = levelxspeed
- yveldec = levelyspeed
-
- secondsleft = 60
-
- tmrcountdown.Start()
- lblbeatai.Text = "Get " & beataireward & " codepoints for beating the Computer!"
- pnlgamestats.Hide()
- lblbeatai.Show()
- ball.Location = New Point(paddleHuman.Location.X + paddleHuman.Width + 50, paddleHuman.Location.Y + paddleHuman.Height / 2)
- If xVel < 0 Then xVel = Math.Abs(xVel)
- lbllevelandtime.Text = "Level: " & level & " - " & secondsleft & " Seconds Left"
- End Sub
-
- 'Increase the ball speed stats for the next level
- Private Sub generatenextlevel()
- lbllevelreached.Text = "You Reached Level " & level & "!"
-
- lblpreviousstats.Text = "Initial Ball X Speed: " & levelxspeed & Environment.NewLine & _
- "Initial Ball Y Speed: " & levelyspeed & Environment.NewLine & _
- "Increment X Speed: " & incrementx & Environment.NewLine & _
- "Increment Y Speed: " & incrementy
-
- Select Case rand.Next(1, 3)
- Case 1
- levelxspeed = levelxspeed + 1
- Case 2
- levelxspeed = levelxspeed + 2
- End Select
-
- Select Case rand.Next(1, 3)
- Case 1
- levelyspeed = levelyspeed + 1
- Case 2
- levelyspeed = levelyspeed + 2
- End Select
-
- Select Case rand.Next(1, 6)
- Case 1
- incrementx = incrementx + 0.1
- Case 2
- incrementx = incrementx + 0.2
- Case 3
- incrementy = incrementy + 0.1
- Case 4
- incrementy = incrementy + 0.2
- Case 5
- incrementy = incrementy + 0.3
- End Select
-
- lblnextstats.Text = "Initial Ball X Speed: " & levelxspeed & Environment.NewLine & _
- "Initial Ball Y Speed: " & levelyspeed & Environment.NewLine & _
- "Increment X Speed: " & incrementx & Environment.NewLine & _
- "Increment Y Speed: " & incrementy
-
- If level < 15 Then
- beataireward = level * 2
- Else
- beataireward = Math.Round(levelrewards(level) / 10)
- End If
-
- totalreward = levelrewards(level - 1) + beatairewardtotal
-
- btncashout.Text = "Cash out with " & totalreward & " codepoints!"
- btnplayon.Text = "Play on for " & levelrewards(level) + beatairewardtotal & " codepoints!"
- End Sub
-
- Private Sub setuplevelrewards()
- levelrewards(0) = 0
- levelrewards(1) = 1
- levelrewards(2) = 3
- levelrewards(3) = 7
- levelrewards(4) = 13
- levelrewards(5) = 20
- levelrewards(6) = 30
- levelrewards(7) = 45
- levelrewards(8) = 60
- levelrewards(9) = 80
- levelrewards(10) = 100
- levelrewards(11) = 125
- levelrewards(12) = 150
- levelrewards(13) = 200
- levelrewards(14) = 250
- levelrewards(15) = 300
- levelrewards(16) = 400
- levelrewards(17) = 500
- levelrewards(18) = 650
- levelrewards(19) = 800
- levelrewards(20) = 1000
- levelrewards(21) = 1250
- levelrewards(22) = 1600
- levelrewards(23) = 2000
- levelrewards(24) = 2500
- levelrewards(25) = 3000
- levelrewards(26) = 3750
- levelrewards(27) = 4500
- levelrewards(28) = 5500
- levelrewards(29) = 7000
- levelrewards(30) = 9000
- levelrewards(31) = 11000
- levelrewards(32) = 13500
- levelrewards(33) = 16000
- levelrewards(34) = 20000
- levelrewards(35) = 25000
- levelrewards(36) = 32000
- levelrewards(37) = 40000
- levelrewards(38) = 50000
- levelrewards(39) = 75000
- levelrewards(40) = 100000
- End Sub
-
- Private Sub countdown_Tick(sender As Object, e As EventArgs) Handles tmrcountdown.Tick
- Select Case countdown
- Case 0
- countdown = 3
- lblcountdown.Hide()
- lblbeatai.Hide()
- My.Computer.Audio.Play(My.Resources.writesound, AudioPlayMode.Background)
- gameTimer.Start()
- counter.Start()
- tmrcountdown.Stop()
- Case 1
- lblcountdown.Text = "1"
- countdown = countdown - 1
- My.Computer.Audio.Play(My.Resources.writesound, AudioPlayMode.Background)
- Case 2
- lblcountdown.Text = "2"
- countdown = countdown - 1
- My.Computer.Audio.Play(My.Resources.writesound, AudioPlayMode.Background)
- Case 3
- lblcountdown.Text = "3"
- countdown = countdown - 1
- My.Computer.Audio.Play(My.Resources.writesound, AudioPlayMode.Background)
- lblcountdown.Show()
- End Select
- End Sub
-
- Private Sub btncashout_Click(sender As Object, e As EventArgs) Handles btncashout.Click
- pnlgamestats.Hide()
- pnlfinalstats.Show()
- lblfinalcodepointswithtext.Text = "You cashed out with " & totalreward & " codepoints!"
- lblfinallevelreached.Text = "Codepoints rewarded for reaching level " & level - 1
- lblfinallevelreward.Text = levelrewards(level - 1)
- lblfinalcomputerreward.Text = beatairewardtotal
- lblfinalcodepoints.Text = totalreward & " CP"
- ShiftOSDesktop.codepoints = ShiftOSDesktop.codepoints + totalreward
- End Sub
-
- Private Sub newgame()
- pnlfinalstats.Hide()
- pnllose.Hide()
- pnlintro.Hide()
-
- level = 1
- totalreward = 0
- beataireward = 2
- beatairewardtotal = 0
- secondsleft = 60
- lblstatscodepoints.Text = "Codepoints: " 'reset stats text
- lblstatsX.Text = "Xspeed: "
- lblstatsY.Text = "Yspeed: "
-
- levelxspeed = 3
- levelyspeed = 3
-
- incrementx = 0.4
- incrementy = 0.2
-
- xveldec = levelxspeed
- yveldec = levelyspeed
-
- tmrcountdown.Start()
- lblbeatai.Text = "Get " & beataireward & " codepoints for beating the Computer!"
- pnlgamestats.Hide()
- lblbeatai.Show()
- ball.Location = New Point(paddleHuman.Location.X + paddleHuman.Width + 50, paddleHuman.Location.Y + paddleHuman.Height / 2)
- If xVel < 0 Then xVel = Math.Abs(xVel)
- lbllevelandtime.Text = "Level: " & level & " - " & secondsleft & " Seconds Left"
- End Sub
-
- Private Sub btnplayagain_Click(sender As Object, e As EventArgs) Handles btnplayagain.Click
- newgame()
- End Sub
-
- Private Sub btnlosetryagain_Click(sender As Object, e As EventArgs) Handles btnlosetryagain.Click
- newgame()
- End Sub
-
- Private Sub btnstartgame_Click(sender As Object, e As EventArgs) Handles btnstartgame.Click
- newgame()
- End Sub
-
- Dim chance As Integer = 101
- Private Sub tmrstoryline_Tick(sender As Object, e As EventArgs) Handles tmrstoryline.Tick
- ' Random chance of showing getshiftnet storyline
- If gameTimer.Enabled = False Then ' Can't show if in middle of game
- chance = chance - 1
- If chance < 25 Then
- chance = 25
- End If
- Dim i As Integer = Math.Ceiling(Rnd() * chance)
- lblstorylinechancedebug.Text = i
- If i = 1 Then
- Terminal.Show()
- Terminal.BringToFront()
- Terminal.storyline = "getshiftnet"
- Terminal.tmrstorylineupdate.Start()
- tmrstoryline.Stop()
- End If
- End If
- End Sub
-
- Private Sub me_closing() Handles Me.FormClosing
- tmrstoryline.Stop()
- End Sub
-End Class \ No newline at end of file