aboutsummaryrefslogtreecommitdiff
path: root/waves.lua
diff options
context:
space:
mode:
author1029chris <1029chris@gmail.com>2022-02-04 19:02:55 -0800
committer1029chris <1029chris@gmail.com>2022-02-04 19:02:55 -0800
commite9080c7efe446a21edff514941b0aed0b7f62f2d (patch)
tree63114d65e1443731322342ba24c78685c4765a0a /waves.lua
parentc3adabae861162b66c1b4499754848d1ffdc0833 (diff)
Wall enemies! more waves!!!!!
Diffstat (limited to 'waves.lua')
-rw-r--r--waves.lua68
1 files changed, 62 insertions, 6 deletions
diff --git a/waves.lua b/waves.lua
index 7be4735..dfab800 100644
--- a/waves.lua
+++ b/waves.lua
@@ -2,14 +2,13 @@ wave = {} --store wave functions here
currentwave = 1 --THIS IS THE CURRENT WAVE
currentwavetime = 0
delaytimer = 0
+everysecondtimer = 0
wave[1] = {
delay = 2,
start = function()
addbasicenemy(130, 60, rnd(basicenemysprites), 1, 0.15)
end,
- ending = function()
- end,
everysecond = function()
end,
conditions = function()
@@ -28,8 +27,6 @@ wave[2] = {
addbasicenemy(128, 60, rnd(basicenemysprites), 1, 0.8)
addbasicenemy(128, 90, rnd(basicenemysprites), 1, 0.4)
end,
- ending = function()
- end,
everysecond = function()
end,
conditions = function()
@@ -49,7 +46,21 @@ wave[3] = {
addbasicenemy(170, i*16, rnd(basicenemysprites), 1, 1.05 - 0.075*i)
end
end,
- ending = function()
+ everysecond = function()
+ end,
+ conditions = function()
+ if #enemies < 1 then
+ return true
+ else
+ return false
+ end
+ end
+}
+
+wave[4] = {
+ delay = 0,
+ start = function()
+ addwallshooter(130, true, 10, 0.7)
end,
everysecond = function()
end,
@@ -62,14 +73,59 @@ wave[3] = {
end
}
+wave[4] = {
+ delay = 0,
+ start = function()
+ addwallshooter(140, true, 10, 0.4)
+ addbasicenemy(128, 30, rnd(basicenemysprites), 1, 0.5)
+ addbasicenemy(155, 60, rnd(basicenemysprites), 1, 0.4)
+ addbasicenemy(128, 90, rnd(basicenemysprites), 1, 0.5)
+ end,
+ everysecond = function()
+ end,
+ conditions = function()
+ if #enemies < 1 then
+ return true
+ else
+ return false
+ end
+ end
+}
+
+wave[5] = {
+ delay = 0,
+ start = function()
+ for i = 1, 10, 1 do
+ addwallshooter(100 + (50-i)*i, (i%2==1), 10, 0.4)
+ end
+ addpickup(420, 60, "health")
+ end,
+ everysecond = function()
+ if flr(currentwavetime%3) == 2 and currentwavetime < 14 then
+ addbasicenemy(128, rnd(100)+10, rnd(basicenemysprites), 1, 0.6)
+ end
+ end,
+ conditions = function()
+ if #enemies < 1 then
+ return true
+ else
+ return false
+ end
+ end
+}
+
wave[currentwave].start()
function updatewaves()
currentwavetime += 1/60
+ everysecondtimer += 1/60
+ if everysecondtimer >= 1 then
+ everysecondtimer = 0
+ wave[currentwave].everysecond()
+ end
if wave[currentwave].conditions() then
delaytimer += 1/60
if delaytimer > wave[currentwave].delay then
- wave[currentwave].ending()
currentwave += 1
currentwavetime = 0
delaytimer = 0