Browse Source

progress for the night

master
NCLanceman 7 months ago
parent
commit
c0f1ee6dbe
  1. 18
      entities/enemy.lua

18
entities/enemy.lua

@ -6,26 +6,16 @@ Enemy = Object:extend()
--playableArea -> {int[2]} --playableArea -> {int[2]}
function Enemy:new(x, y, radius, playableArea) function Enemy:new(x, y, radius, playableArea)
self.origin = { x, y } self.origin = { x, y }
self.image = love.graphics.newImage("/assets/enemy/e-fighter.png")
self.x = x self.x = x
self.y = y self.y = y
self.playableLeft = playableArea[1] self.playableLeft = playableArea[1]
self.playableRight = playableArea[2] self.playableRight = playableArea[2]
self.type = "enemy"
self.health = 10
self.scoreValue = 100
self.move_radius = radius self.move_radius = radius
self.speed = 80
self.fireRate = 1
self.destroy = false self.destroy = false
self.height = 22 self.height, self.width, self.x_offset, self.y_offset,
self.width = 24
self.x_offset = 18
self.y_offset = 20
self.hitbox = { self.hitbox = {
(self.x + self.x_offset), (self.x + self.x_offset),
(self.x + self.x_offset + self.width), (self.x + self.x_offset + self.width),
@ -67,15 +57,12 @@ function Enemy:update(dt, player)
local window_height = love.graphics.getHeight() local window_height = love.graphics.getHeight()
self.x = self.x + self.speed * dt self.x = self.x + self.speed * dt
--self.hitbox = { (self.x + 18), (self.x + 44), (self.y + 20), (self.y + 44) }
self:setHitbox() self:setHitbox()
--movement --movement
if self.hitbox[1] < self.move_bounds[1] then if self.hitbox[1] < self.move_bounds[1] then
--self.x = self.move_bounds[1]
self.speed = -self.speed self.speed = -self.speed
elseif self.hitbox[2] > self.move_bounds[2] then elseif self.hitbox[2] > self.move_bounds[2] then
--self.x = self.move_bounds[2] - self.width - self.x_offset
self.speed = -self.speed self.speed = -self.speed
end end
@ -104,7 +91,6 @@ end
--shoot at the player a variable number of seconds --shoot at the player a variable number of seconds
function Enemy:fire() function Enemy:fire()
--local fire_origin = { self.x + 26, self.y + 44 }
local fire_origin = { ((self.x + (self.width / 2)) + self.x_offset), (self.y + self.height + self.y_offset) } local fire_origin = { ((self.x + (self.width / 2)) + self.x_offset), (self.y + self.height + self.y_offset) }
if love.timer.getTime() - self.fireTime > self.fireRate then if love.timer.getTime() - self.fireTime > self.fireRate then
table.insert(self.enemyBullets, Blaster(fire_origin[1], fire_origin[2], "enemy")) table.insert(self.enemyBullets, Blaster(fire_origin[1], fire_origin[2], "enemy"))
@ -117,10 +103,8 @@ function Enemy:setMoveBounds()
if (self.hitbox[1] - self.move_radius) < self.playableLeft then if (self.hitbox[1] - self.move_radius) < self.playableLeft then
result[1] = self.playableLeft result[1] = self.playableLeft
--result[2] = self.playableLeft + self.hitbox[1] + self.move_radius
result[2] = self.playableLeft + (self.move_radius * 2) result[2] = self.playableLeft + (self.move_radius * 2)
elseif (self.hitbox[2] + self.move_radius) > self.playableRight then elseif (self.hitbox[2] + self.move_radius) > self.playableRight then
--result[1] = self.playableRight - self.hitbox[2] - self.move_radius
result[1] = self.playableRight - (self.move_radius * 2) result[1] = self.playableRight - (self.move_radius * 2)
result[2] = self.playableRight result[2] = self.playableRight
else else

Loading…
Cancel
Save