Compare commits

...

2 Commits

Author SHA1 Message Date
Juhani Krekelä 7b742c35c4 Make enemies spin 2023-06-03 22:35:24 +03:00
Juhani Krekelä 093b9a7ece Render enemies as pentagons 2023-06-03 22:30:03 +03:00
1 changed files with 16 additions and 3 deletions

View File

@ -154,6 +154,7 @@ function spawnEnemy(x, y)
x = x,
y = y,
until_shoot = enemy_min_shoot + math.random() * (enemy_max_shoot - enemy_min_shoot),
angle = math.random() * 2 * math.pi,
alive = true
})
end
@ -315,6 +316,9 @@ function updateEnemies(dt)
end
end
local dangle = 10 / (2 + enemy.until_shoot) * dt
enemy.angle = enemy.angle + dangle
if not enemy.alive then
table.remove(enemies, i)
else
@ -449,9 +453,18 @@ end
function drawEnemies()
for _, enemy in ipairs(enemies) do
love.graphics.setColor(0.7, 0.5, 1)
local x, y = toScreenCoordinates(enemy.x, enemy.y)
local radius = toScreenSize(enemy_radius)
love.graphics.circle('fill', x, y, radius)
local fifth = 2 * math.pi / 5
local points = {}
for i = 0, 4 do
local x = enemy.x + math.cos(i * fifth + enemy.angle) * enemy_radius
local y = enemy.y + math.sin(i * fifth + enemy.angle) * enemy_radius
local x, y = toScreenCoordinates(x, y)
table.insert(points, x)
table.insert(points, y)
end
love.graphics.polygon('fill', points)
end
end