there should be 100 different pongs going on, each of which you control with the same two buttons, but all of them have different starting position balls/bats, and they should all be displayed next to each other down the screen, giving a res each with 64x48! On one 640x480 screen. :)
Technically, my version cannot be beaten! BWahaha!
Note: Not actually a very functioning Pong game, I just had a few minutes of free time to piss about. ;)
Graphics 640,480,16,2
SetBuffer BackBuffer()
Type pong
Field bat[1], ballx#, bally#, balla#
End Type
Dim zpong.pong(9,9)
For x=0 To 9
For y=0 To 9
zpong(x,y) = New pong
zpong(x,y)\bat[0] = Rnd(36)
zpong(x,y)\bat[1] = Rnd(36)
zpong(x,y)\ballx = 32
zpong(x,y)\bally = 24
zpong(x,y)\balla = Rnd(-4,4)*45
Next
Next
While Not KeyDown(1)
Cls
ky = (KeyDown(208) - KeyDown(200))
For x=0 To 9
For y=0 To 9
zpong(x,y)\bat[0] = zpong(x,y)\bat[0] + ky
If zpong(x,y)\bat[0] < 0 zpong(x,y)\bat[0] = 0
If zpong(x,y)\bat[0] > 36 zpong(x,y)\bat[0] = 36
zpong(x,y)\bat[1] = zpong(x,y)\bally-5
If zpong(x,y)\bat[1] < 0 zpong(x,y)\bat[1] = 0
If zpong(x,y)\bat[1] > 36 zpong(x,y)\bat[1] = 36
ix = x*64
iy = y*48
Color 255,255,0
Rect ix+32,iy,1,47,0
Color 255,255,255
Rect ix,iy,63,47,0
Rect ix+4,iy+zpong(x,y)\bat[0],2,10,0
Rect ix+57,iy+zpong(x,y)\bat[1],2,10,0
zpong(x,y)\ballx = zpong(x,y)\ballx + Sin(zpong(x,y)\balla) * .75
zpong(x,y)\bally = zpong(x,y)\bally + Cos(zpong(x,y)\balla) * .75
If zpong(x,y)\ballx < 1
Color 255,0,0
Rect ix,iy,64,48
zpong(x,y)\ballx = 32
zpong(x,y)\bally = 24
zpong(x,y)\balla = Rnd(-4,4)*45
EndIf
If zpong(x,y)\ballx > 61
Color 0,255,0
Rect ix,iy,64,48
zpong(x,y)\ballx = 32
zpong(x,y)\bally = 24
zpong(x,y)\balla = Rnd(-4,4)*45
EndIf
If zpong(x,y)\bally < 1 zpong(x,y)\balla = 180-zpong(x,y)\balla
If zpong(x,y)\bally > 45 zpong(x,y)\balla = 180-zpong(x,y)\balla
If zpong(x,y)\ballx => 3 And zpong(x,y)\ballx =< 6 And zpong(x,y)\bally => zpong(x,y)\bat[0] And zpong(x,y)\bally =< zpong(x,y)\bat[0] + 10
zpong(x,y)\balla = -zpong(x,y)\balla
EndIf
If zpong(x,y)\ballx => 56 And zpong(x,y)\ballx =< 57 And zpong(x,y)\bally => zpong(x,y)\bat[1] And zpong(x,y)\bally =< zpong(x,y)\bat[1] + 10
zpong(x,y)\balla = -zpong(x,y)\balla
EndIf
Rect ix+zpong(x,y)\ballx-1, iy+zpong(x,y)\bally-1, 3,3
Next
Next
Flip
Wend
End