2015-09-11 2 views
1

Я пишу программу Lua LÖVE в качестве школьного проекта.Lua LÖVE автоматизирует имена переменных

Задача - это что-то о муравьях, которые должны найти пищу, взять некоторые из гнезда, из которого они пришли, и по пути оставляя след феромонов. Кроме того, мы пишем программу, визуализирующую процесс. Для 100 муравьев, 5 источников питания и все это в пространстве 500x500 квадратов

Я выбрал Lua ЛЮБОВЬ для визуализации и написал следующий код:

function love.load() 
    p = 500 -- Starting position 

    xNest, yNest = p, p -- Initializing nest position 

    xAnt1, yAnt1 = p, p -- Initializing ant position 
    xAnt2, yAnt2 = p, p 


end 

-- Changes position every frame. 
function love.update(dt) 

-- AntI // See what I did there? 
    xAnt1 = xAnt1 + math.random (-2, 2) -- Change position by a random number between 2 steps forward and 2 steps backward 
    yAnt1 = yAnt1 + math.random (-2, 2) -- Change position by a random number between 2 steps sideways 

    xAnt2 = xAnt2 + math.random (-2, 2) 
    yAnt2 = yAnt2 + math.random (-2, 2) 
end 



-- Draw ants and nest. 
function love.draw() 

    -- Nest 
    love.graphics.setColor(0, 255, 255) -- set drawing color green 
    love.graphics.rectangle("line", xNest, yNest, 2, 2) -- draw a nest at xNest, yNest with a size of 2x2 

    -- Ant 
    love.graphics.setColor(255, 255, 255) -- set drawing color white 
    love.graphics.rectangle("line", xAnt1, yAnt1, 2, 2) -- draw an ant at xAnt(number of ant), yAnt(number of ant) with a size of 2x2 
    love.graphics.rectangle("line", xAnt2, yAnt2, 2, 2) 

end 

Поскольку моя задача состоит в том, чтобы делать то, что я сделал в xAntX, yAntX = p, p 100 раз, где XI означает число для муравья, мне нужна какая-то петля, которая создает xAntX, yAntX = p, p, xAntX = xAntX + math.random (-2, 2), yAntX = yAntX + math.random (-2, 2) и love.graphics.rectangle("line", xAntX, yAntX, 2, 2 в 100 раз.

Я пробовал цикл for, но он всегда кричал на меня, пытаясь добавить переменную'i 'к инициализации xAnt .. i, yAnt .. i, а затем подсчитать i ++ с i = i + 1.

ответ

0

Сделать xAnt и yAnt таблицами и получить доступ к отдельным записям как xAnt[i] и yAnt[i].

+0

Спасибо, отлично работал * _Посмотреть [здесь] (http://thellama.space/cdn/ants.gif) _ –

Смежные вопросы