Skip to content
56K

56K

La web de Fanta

Menu
  • Unix/Linux
  • Cacharreo
  • Games
  • Streaming
  • Notas
  • /dev/null
Menu

Brincando com a lua – 006 – Historias de Love, girando ruedas de furgoneta

Posted on 11/03/202116/01/2023 by fanta

Esta es la segunda parte de «Historias de Love». «Historias de love» son pequeños posts en los que mostramos como hacer algo con Love2D.

Hoy vamos a ver como podemos mover las ruedas de una furgoneta rotando estas al mismo tiempo que desplazamos la furgoneta.
Para ello se ha extraído el sprite de la furgoneta del juego Thimbleweed Park. La furgoneta de las palomas locas.

Lo cierto es que no se ve muy bien la rotación de las ruedas en este gif. No obstante creo que pese a que no se ve fluido el gif se entiende lo que vamos a hacer.

Las teclas que vamos a mapear

Escape para salir.
Tecla de dirección Izquierda para mover la furgoneta hacia la izquierda.
Tecla de dirección Derecha para mover la furgoneta hacia la derecha.

Los sprites necesarios

Básicamente son 2 imágenes y ya.
La furgoneta con su sombra debajo y una rueda que giraremos y duplicaremos.

Descargar el código fuente

El código fuente con todo se puede descargar desde aquí: sprite_ruedas.tar

El main.lua es el siguiente:

function love.load()
    van = {}
    van.img = love.graphics.newImage("furgoneta.png")
    van.width = 209
    van.height = 143
    van.x = 100
    van.y = 100

    wheel = {}
    wheel.img = love.graphics.newImage("rueda.png")
    wheel.width = 35
    wheel.height = 35
    wheel.y = van.y + 126
    wheel.r = 0
end

function love.update(dt)
    if love.keyboard.isDown( "right" ) then
        wheel.r = wheel.r + (dt*2)
        van.x = van.x + 2
    end

    if love.keyboard.isDown( "left" ) then
        wheel.r = wheel.r - (dt*2)
        van.x = van.x - 2
    end
    wheel.x = van.x + 44.5
    love.draw()
end

function love.draw()
    love.graphics.setColor(255,255,255,1) -- background color (white)
    love.graphics.rectangle("fill", 0, 0, 800, 600)
    love.graphics.draw(van.img, van.x, van.y)
    love.graphics.draw(wheel.img, wheel.x, wheel.y, wheel.r,1,1,(wheel.width/2),(wheel.height/2)) -- first wheel
    love.graphics.draw(wheel.img, wheel.x + 132, wheel.y, wheel.r,1,1,(wheel.width/2),(wheel.height/2)) -- second wheel
end

function love.keypressed(key)
    if key == "escape" then
        love.event.quit()
    end

    if ( key == "right" ) then
        van.x = van.x + 2
    end

    if ( key == "left" ) then
        van.x = van.x - 2
    end
end

Lo necesario para poner en marcha esto

Es necesario disponer de Lua 5.x y Love2D 11.3 .

Aquí información sobre compilar Lua 5.x y como compilar Love2D 11.3

Luego simplemente accedes al directorio en el que está el main.lua y ejecutas lo siguiente:

 love .

Y eso es todo

Saludos cordiales.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors

Comentarios recientes

  • fanta en i3wm en el ordenador del trabajo con 3 pantallas
  • Punk en i3wm en el ordenador del trabajo con 3 pantallas
  • Twicsy en Eliminar kernels viejos en redhat y liberar espacio en /boot
  • fanta en Capturar el audio de Firefox en archivos ogg en GNU+Linux
  • Jorge en Capturar el audio de Firefox en archivos ogg en GNU+Linux
  • fanta en Capturar el audio de Firefox en archivos ogg en GNU+Linux
  • Camilo en Capturar el audio de Firefox en archivos ogg en GNU+Linux
  • eovoltio en Mastodon.madrid se apaga el 12 de Octubre
  • fanta en Time Machine – Las Nuevas Aventuras de la Maquina del Tiempo sobre GNU+Linux
  • Alberto Salvia Novella en Time Machine – Las Nuevas Aventuras de la Maquina del Tiempo sobre GNU+Linux
©2023 56K | Built using WordPress and Responsive Blogily theme by Superb