manzana


Utilizando el concepto de detección de colisiones, crear un juego que contenga dos objetos: un cubo y unas manzanas. Las manzanas caerán al azar desde la parte superior de la pantalla. El jugador intentará capturar las manzanas con el cubo. El juego se ejecuta durante 30 segundos. Incluya un tablero de puntuación para mostrar el número total de manzanas atrapadas por el jugador en 30 segundos. El juego debería ser algo como esto:

Código:
‘  copyright (c) Microsoft Corporation.  Todos los derechos reservados.
GraphicsWindow.Hide()
ventanaAncho = 800
ventanaAlto = 600
GraphicsWindow.CanResize = “False”
GraphicsWindow.Width  = ventanaAncho
GraphicsWindow.Height = ventanaAlto
GraphicsWindow.Top = (Desktop.Height - ventanaAlto) / 2
GraphicsWindow.Left = (Desktop.Width - ventanaAncho) / 2
GraphicsWindow.Title = “Atrapar las manzanas”
GraphicsWindow.Show()
manzanasRestantes = 30
puntuaciónJuego = 0
imagenCubo = Program.Directory + “\cubo.png”
imagenManzana = Program.Directory + “\manzana.png”
GraphicsWindow.MouseMove = AlMoverMouse
CrearInterfaz()
While manzanasRestantes > 0
SoltarManzana()
manzanasRestantes = manzanasRestantes – 1
Shapes.SetText(manzasRestantesCuadroTexto, “Manzanas restantes: ” + manzanasRestantes)
EndWhile
GraphicsWindow.ShowMessage(“Su puntuación es: ” + puntuaciónJuego, “FIN”)
Program.End()
Sub CrearInterfaz
GraphicsWindow.BackgroundColor = “LightBlue”
cubo = Shapes.AddImage(imagenCubo)
manzana = Shapes.AddImage(imagenManzana)
GraphicsWindow.BrushColor = “Gray”
GraphicsWindow.FillRectangle(1, 1, ventanaAncho, 40)
GraphicsWindow.FontName = “Verdana”
GraphicsWindow.FontSize = 18
GraphicsWindow.BrushColor = “White”
GraphicsWindow.DrawText(350, 5, “Atrapar las manzanas”)
puntuaciónCuadroTexto = Shapes.AddText(“Puntuación: 0″)
Shapes.Move(puntuaciónCuadroTexto, 650, 5)
manzasRestantesCuadroTexto = Shapes.AddText(“Manzanas restantes: ” + manzanasRestantes)
Shapes.Move(manzasRestantesCuadroTexto, 5, 5)
GraphicsWindow.PenColor = “Black”
GraphicsWindow.DrawLine(0, 50, 800, 50)
Shapes.Move(cubo, 0, ventanaAlto – 40)
Mouse.HideCursor()
EndSub
Sub AlMoverMouse
cuboX = Math.Min(GraphicsWindow.MouseX, 570)
Shapes.Move(cubo, cuboX, ventanaAlto – 40)
EndSub
Sub SoltarManzana
manzanaX = Math.GetRandomNumber(600)
manzanaY = 50
While (manzanaY < ventanaAlto + 20)
Shapes.Move(manzana, manzanaX, manzanaY)
Program.Delay(15)
DetecciónAtrapar()
manzanaY = manzanaY + 5
EndWhile
EndSub
Sub DetecciónAtrapar
If manzanaY >= ventanaAlto – 40 And manzanaX < cuboX + 50 And manzanaX >= cuboX Then
puntuaciónJuego = puntuaciónJuego + 1
Shapes.SetText(puntuaciónCuadroTexto, “Puntuación: ” + puntuaciónJuego)
manzanaY = ventanaAlto + 20
EndIf
EndSub


see also: http://www.empiezoinformatica.wordpress.com


Deja un comentario