Título: ayuuuda juego visual basic !! Publicado por: David977 en 24 Febrero 2015, 12:55 pm Buenas,
Estoy haciendo un juego como el geometry dash y me gustaría saber el código para hacer que el cuadrado (un picturebox) realice un salto hacia arriba hasta cierta altura al presionar una tecla del teclado (preferentemente las flechas o la barra espaciadora). Haciendo este un salto desde una posición 80;405 hasta la posición 80;329. Muchas gracias de antemano. PD: Os adjunto el programa https://mega.co.nz/#F!990DGTLQ!VD23Iru4mNk46-EJ0-d2vA Mod: Titulo modificado, no usar mayusculas, procura que sea descriptivo al problema "ayuda" no aporta ninguna característica Título: Re: AYUUUDA JUEGO VISUAL BASIC !! Publicado por: Brian1511 en 26 Febrero 2015, 23:12 pm Bueno puedes modificar el TOP del control es muy sencillo:
Este codigo es para VB.Net ya que vi tu Source y no es de VB6. Hay una sección para VB.Net te recomiendo que la busques para la proxima para no tener futuros problemas en el foro! ;) Código
Esto seria una animacion basica con un Timer y Un PictureBox, puedes modificar el Intervalo del Timer para cambiar la rapidez con la que la animacion se efectua. Espero que sea lo que necesites. PD: Un consejo, tus proyectos no los publiques haci por haci ya que hay muchos urtadores que pueden tomar tu idea, mejor comparte el codigo que necesites que te asistan. Saludos~ Título: Re: ayuuuda juego visual basic !! Publicado por: David977 en 3 Marzo 2015, 12:49 pm Gaaacias !!
Título: Re: ayuuuda juego visual basic !! Publicado por: 79137913 en 3 Marzo 2015, 14:16 pm HOLA!!!
Hay un pequeño problema con el codigo que propone Brian1511, si el Picturebox nunca llega a 329 nunca se frenara el timer, esto se soluciona colocando un > en vez de un = en el codigo. GRACIAS POR LEER!!! Título: Re: ayuuuda juego visual basic !! Publicado por: Brian1511 en 3 Marzo 2015, 19:19 pm cierto muy cierto ;). Gracias por corregir!
David977 El codigo quedaria así: Código
Saludos! Título: Re: ayuuuda juego visual basic !! Publicado por: 79137913 en 3 Marzo 2015, 19:47 pm HOLA!!!
Pusiste de nuevo el mismo codigo... GRACIAS POR LEER!!! Título: Re: ayuuuda juego visual basic !! Publicado por: Brian1511 en 3 Marzo 2015, 20:00 pm Mmm.. no lo creo :/
Título: Re: ayuuuda juego visual basic !! Publicado por: 79137913 en 3 Marzo 2015, 23:20 pm HOLA!!!
Jajajaja, viste la hora de mi post y la hora de tu modificacion... :silbar: GRACIAS POR LEER!!! Título: Re: ayuuuda juego visual basic !! Publicado por: Brian1511 en 4 Marzo 2015, 04:03 am Shhhh!!! no lo escribas , se daran cuenta xD ;D
Título: Re: ayuuuda juego visual basic !! Publicado por: David977 en 6 Marzo 2015, 12:28 pm Gracias por vuestras respuestas pero no consigo hacer el movimiento que deseo. Salta, muy lento, y también necesito que al chocarse con los obstáculos no los atraviese. Alguien me haria el favor de hacerme el código porfavor ???
PD: Os adjunto el programa: https://mega.co.nz/#F!990DGTLQ!VD23Iru4mNk46-EJ0-d2vA y aquí el código: Public Class frmPantalla Private WithEvents timerSalto As New Timer With {.Enabled = False, .Interval = 50} Private totalUnidades As Integer = 0 Private unidadesActuales As Integer = 0 Private salto As estadoSalto = estadoSalto.Terminado Private Enum estadoSalto Subiendo Bajando Terminado End Enum Private Enum unidadesSalto Setenta End Enum Private Sub tmrSalto_Tick() Handles tmrSalto.Tick tmrSalto.Interval = Location.Y + 40 Select Case salto Case estadoSalto.Bajando unidadesActuales = unidadesActuales - 10 Dim localizacionX As Integer = Cuadrado.Location.X + 6 Dim localizacionY As Integer = Cuadrado.Location.Y + 10 Cuadrado.Location = New Point(localizacionX, localizacionY) If unidadesActuales = 0 Then salto = estadoSalto.Terminado End If Case estadoSalto.Subiendo unidadesActuales = unidadesActuales - 10 Dim localizacionX As Integer = Cuadrado.Location.X + 3 Dim localizacionY As Integer = Cuadrado.Location.Y - 10 Cuadrado.Location = New Point(localizacionX, localizacionY) If unidadesActuales = 10 Then unidadesActuales = totalUnidades salto = estadoSalto.Bajando End If Case estadoSalto.Terminado tmrSalto.Stop() End Select End Sub Private Sub saltoCuadrado(unidades As unidadesSalto) Select Case unidades Case unidadesSalto.Setenta totalUnidades = 70 unidadesActuales = 70 End Select salto = estadoSalto.Subiendo tmrSalto.Start() End Sub Private Sub frmPantalla_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown If e.KeyCode = Keys.Space Then If salto = estadoSalto.Terminado Then saltoCuadrado(unidadesSalto.Setenta) End If End If End Sub End Class Título: Re: ayuuuda juego visual basic !! Publicado por: David977 en 6 Marzo 2015, 12:36 pm Por cierto me gustaría saber también como hacer que el fondo se desplaze horizontalmente hasta que termine el nivel. Muchas gracias de antemano.
|