experiments-love2d/genart/main.lua

44 lines
859 B
Lua
Raw Normal View History

2024-01-07 00:13:20 +00:00
Tree = { x = 0, y = 0, r = 100 }
function Tree:create(o)
o.parent = self
return o
end
function Tree:collides(first, other)
print(first.x, first.y, other.x, other.y)
return math.sqrt((first.x - other.x)^2 + (first.y - other.y)^2) < (other.r + first.r)
end
function love.load()
trees = {}
nextNum = 0
r = 100
repeat
t = Tree:create({x=math.random(0, 500), y=math.random(0, 500), r=r})
collides = false
for j=0, nextNum-1 do
if Tree:collides(t, trees[j]) then
collides = true
break
end
end
if not collides then
trees[nextNum] = t
nextNum = nextNum + 1
else
r = r - math.random(0, 10)
end
until nextNum >= 20
end
function love.draw()
love.graphics.setColor(1, 1, 1)
for k, t in pairs(trees) do
love.graphics.circle("line", t.x, t.y, t.r, 100)
end
end