Compare commits
3 commits
0e410d262d
...
9ec3b93cc2
Author | SHA1 | Date | |
---|---|---|---|
|
9ec3b93cc2 | ||
|
2a3d7b188f | ||
|
a290a9113a |
1 changed files with 26 additions and 23 deletions
|
@ -21,7 +21,7 @@ local explosion_duration = 0.4
|
||||||
local enemies = {}
|
local enemies = {}
|
||||||
local enemy_radius = 0.025
|
local enemy_radius = 0.025
|
||||||
local enemy_min_shoot = 5
|
local enemy_min_shoot = 5
|
||||||
local enemy_max_shoot = 10
|
local enemy_max_shoot = 20
|
||||||
|
|
||||||
local window_width = nil
|
local window_width = nil
|
||||||
local window_height = nil
|
local window_height = nil
|
||||||
|
@ -62,16 +62,23 @@ function love.load()
|
||||||
setScreenDimensions(width, height)
|
setScreenDimensions(width, height)
|
||||||
movePaddle(0)
|
movePaddle(0)
|
||||||
spawnCities()
|
spawnCities()
|
||||||
spawnEnemy(0.1, 0.1, false)
|
spawnEnemy(0.1, 0.1)
|
||||||
spawnEnemy(0.2, 0.1, true)
|
spawnEnemy(0.2, 0.1)
|
||||||
spawnEnemy(0.3, 0.1, false)
|
spawnEnemy(0.3, 0.1)
|
||||||
spawnEnemy(0.4, 0.1, true)
|
spawnEnemy(0.4, 0.1)
|
||||||
spawnEnemy(0.5, 0.1, false)
|
spawnEnemy(0.5, 0.1)
|
||||||
spawnEnemy(0.6, 0.1, true)
|
spawnEnemy(0.6, 0.1)
|
||||||
spawnEnemy(0.7, 0.1, false)
|
spawnEnemy(0.7, 0.1)
|
||||||
spawnEnemy(0.8, 0.1, true)
|
spawnEnemy(0.8, 0.1)
|
||||||
spawnEnemy(0.9, 0.1, false)
|
spawnEnemy(0.9, 0.1)
|
||||||
spawnEnemy(0.1, 0.3, true)
|
spawnEnemy(0.15, 0.2)
|
||||||
|
spawnEnemy(0.25, 0.2)
|
||||||
|
spawnEnemy(0.35, 0.2)
|
||||||
|
spawnEnemy(0.45, 0.2)
|
||||||
|
spawnEnemy(0.55, 0.2)
|
||||||
|
spawnEnemy(0.65, 0.2)
|
||||||
|
spawnEnemy(0.75, 0.2)
|
||||||
|
spawnEnemy(0.85, 0.2)
|
||||||
end
|
end
|
||||||
|
|
||||||
function spawnCities()
|
function spawnCities()
|
||||||
|
@ -118,11 +125,10 @@ function spawnExplosion(x, y)
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
function spawnEnemy(x, y, active)
|
function spawnEnemy(x, y)
|
||||||
table.insert(enemies, {
|
table.insert(enemies, {
|
||||||
x = x,
|
x = x,
|
||||||
y = y,
|
y = y,
|
||||||
active = active,
|
|
||||||
until_shoot = math.random() * (enemy_max_shoot - enemy_min_shoot),
|
until_shoot = math.random() * (enemy_max_shoot - enemy_min_shoot),
|
||||||
alive = true
|
alive = true
|
||||||
})
|
})
|
||||||
|
@ -203,7 +209,6 @@ function updateMissiles(dt)
|
||||||
table.remove(missile.history)
|
table.remove(missile.history)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
print(#missile.history)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
local i = 1
|
local i = 1
|
||||||
|
@ -272,14 +277,12 @@ function updateEnemies(dt)
|
||||||
while i <= #enemies do
|
while i <= #enemies do
|
||||||
local enemy = enemies[i]
|
local enemy = enemies[i]
|
||||||
|
|
||||||
if enemy.active then
|
|
||||||
enemy.until_shoot = enemy.until_shoot - dt
|
enemy.until_shoot = enemy.until_shoot - dt
|
||||||
if enemy.until_shoot < 0 then
|
if enemy.until_shoot < 0 then
|
||||||
enemy.until_shoot = enemy_min_shoot + math.random() * (enemy_max_shoot - enemy_min_shoot)
|
enemy.until_shoot = enemy_min_shoot + math.random() * (enemy_max_shoot - enemy_min_shoot)
|
||||||
local target = cities[math.random(1, #cities)]
|
local target = cities[math.random(1, #cities)]
|
||||||
spawnMissile(enemy.x, enemy.y, target.x, target.y, 0.2)
|
spawnMissile(enemy.x, enemy.y, target.x, target.y, 0.2)
|
||||||
end
|
end
|
||||||
end
|
|
||||||
|
|
||||||
if not enemy.alive then
|
if not enemy.alive then
|
||||||
table.remove(enemies, i)
|
table.remove(enemies, i)
|
||||||
|
@ -354,9 +357,9 @@ function drawMissiles()
|
||||||
|
|
||||||
local x, y = toScreenCoordinates(point.x, point.y)
|
local x, y = toScreenCoordinates(point.x, point.y)
|
||||||
if missile.reflected then
|
if missile.reflected then
|
||||||
love.graphics.setColor(1 * visibility, 1 * visibility, 0.5 * visibility)
|
love.graphics.setColor(1, 1, 0.5, visibility)
|
||||||
else
|
else
|
||||||
love.graphics.setColor(1 * visibility, 0.4 * visibility, 0 * visibility)
|
love.graphics.setColor(1, 0.4, 0, visibility)
|
||||||
end
|
end
|
||||||
love.graphics.line(from_x, from_y, x, y)
|
love.graphics.line(from_x, from_y, x, y)
|
||||||
from_x = x
|
from_x = x
|
||||||
|
|
Loading…
Reference in a new issue