powerup spawning
I am trying to get enemies to drop powerups but it isnt working, this is the code i have for it:
initPowerups = function() powerups = [] // Lege lijst voor powerups end
createSplitPowerup = function(x, y) local types = ["speed", "invulnerable", "weapon"] for i = 0 to 2 for powerup in powerups local offsetX = randRange(-10, 10) local offsetY = randRange(-10, 10) local p = (object x = x + offsetX y = y + offsetY type = types[i] timer = 5 end)
powerups.push(p)
end
print("nee") end end updatePowerups = function(dt) local temp = [] for powerup in powerups powerup.timer -= dt
if distance(powerup.x, powerup.y, player.x, player.y) < 15 then
applyPowerup(powerup.type)
elsif powerup.timer > 0 then
temp.push(powerup)
end
end powerups = temp end
applyPowerup = function(type)
if type == "speed" then
player.speed += 1
player.speed_timer = 5
elsif type == "invulnerable" then
player.invulnerable_timer = 5
elsif type == "weapon" then
player.extra_weapon = true
player.weapon_timer = 5
end
end
drawPowerups = function() for powerup in powerups spriteName = "powerup" if powerup.type == "speed" then spriteName = "powerup_speed" elsif powerup.type == "invulnerable" then spriteName = "powerup_invul" elsif powerup.type == "weapon" then spriteName = "extra_weapon" end screen.drawSprite(spriteName, powerup.x, powerup.y, 20, 20) end end
this if when you have slain an enemy: if distance(enemy.x, enemy.y, sword_x, sword_y) < 20 then score += 1 enemy.active = false if random.next() < 0.3 then createSplitPowerup(enemy.x, enemy.y) end end end
can someone please take a look at it an maybe tell what the problem was/is?