порождает больше объектов в love2d? - PullRequest
0 голосов
/ 27 мая 2018

Итак, я новичок в кодировании love2d, но я думаю, что у меня есть большинство основ.

однако я не знаю, как бы я мог создать таблицу функций, которая будет порождаться несколькими объектами одновременно.

function love.load()
    local music = love.audio.newSource('flamingo.mp3')
    music:setLooping(true)
    love.audio.play(music)
    player = {}
    player.x = 5
    player.y = 225
    player.speed = 2
    player.image = love.graphics.newImage('player.png')

    flower = {}
    flower.image = love.graphics.newImage('flower.png')
    flower.x = love.math.random(0, 400)
    flower.y = love.math.random(0, 250)
end

function love.update(dt)
    if love.keyboard.isDown('right') then
        player.x = player.x + player.speed
    elseif love.keyboard.isDown('left') then
        player.x = player.x - player.speed
    elseif love.keyboard.isDown('up') then
        player.y = player.y - player.speed
    elseif love.keyboard.isDown('down') then
        player.y = player.y + player.speed
    end
end

function love.draw()
    love.graphics.draw(flower.image, flower.x, flower.y)
    love.graphics.draw(player.image, player.x, player.y)
end

у меня есть таблица, которая появляется в одномцветок, но я хотел бы больше появиться (случайное количество цветов со случайным положением x, y) и, как я уже сказал, я не знаю, как, поэтому я хотел бы некоторую помощь.

1 Ответ

0 голосов
/ 27 мая 2018

Конечно, добавляя больше таблиц!

function love.load()
    --....
    flower = {}
    flower.image = love.graphics.newImage('flower.png')
    flower.x = love.math.random(0, 400)
    flower.y = love.math.random(0, 250)

    flower1 = {}
    flower1.image = love.graphics.newImage('flower.png')
    flower1.x = love.math.random(0, 400)
    flower1.y = love.math.random(0, 250)

    flower2={}
    --etc...
end

function love.draw()
    love.graphics.draw(flower.image, flower.x, flower.y)
    love.graphics.draw(flower1.image, flower1.x, flower1.y)
    --etc...
    love.graphics.draw(player.image, player.x, player.y)
end

Серьезно, однако, вы, вероятно, можете увидеть некоторые проблемы с вышеуказанным подходом.Описание, объяснение и обучение тому, как организовать код лучше, чем тот, который подходит для хорошего учебника, а не SO-ответ.

Уже существует множество книг и руководств.Убедитесь, что вы понимаете по крайней мере Программирование на Lua и посмотрите, например, здесь , чтобы увидеть, как можно структурировать подобную программу.Имейте в виду, что, в идеале, еще есть чему поучиться в дополнение (и между ними). ​​

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