Love2D Меню выбора - PullRequest
       5

Love2D Меню выбора

0 голосов
/ 24 марта 2012

По какой-то причине код не отвечает, когда я получил код if love.keyboard.isDown("s") Возможно, я использую функции просто неправильно, но это все еще странно.

Я пытался использовать функцию Menu () в love.keypressedи в любви.Все еще нет ответа.

Вот полный код:

main.lua

function love.load()
require "menu"
select = love.graphics.newImage("select.png")
Menu()
end
function love.draw()
   Menu()
end
function love.keypressed(key)
   Menu()
end

function love.update()
   Menu()
end

menu.lua

function Menu()
sly = 300
love.graphics.draw(select,sly,300)
if key == "w" then
    sly = sly + 50
end

if love.keyboard.isDown("s") then
    sly = sly - 50
end
end

1 Ответ

0 голосов
/ 13 апреля 2012

Не уверен, что именно вы пытаетесь сделать здесь, но в вашей функции Menu() вы сбрасываете переменную sly каждый раз, когда вызываете ее, а затем изменяете sly после того, как вы уже нарисовали изображение.Это приводит к тому, что ничего не происходит.

Если вы измените его так, чтобы sly инициализировалось за пределами Menu(), оно по крайней мере перемещает изображение, когда вы нажимаете клавишу 's'.Кроме того, если вы хотите, чтобы 's' переместило его в одну сторону, а 'w' переместило его в другую, возможно, код должен выглядеть следующим образом:

sly = 300

function Menu()

    love.graphics.draw(select,sly,300)
    if love.keyboard.isDown("w") then
        sly = sly + 50
    end

    if love.keyboard.isDown("s") then
        sly = sly - 50
    end
end

Или вы можете передать переменную keyв Menu(), когда вы вызываете его из love.keypressed и не используете функцию keyboard.isDown.

Опять же, я не уверен, что вы на самом деле пытаетесь сделать здесь, но для меня это выглядит каккод работает нормально, возможно, у вас просто логическая ошибка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...