|
|
@ -39,6 +39,14 @@ function UpdateGame(dt) |
|
|
|
|
|
|
|
|
|
|
|
for i, v in ipairs(Bullets1) do |
|
|
|
for i, v in ipairs(Bullets1) do |
|
|
|
v:update(dt) |
|
|
|
v:update(dt) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- Check bounce count |
|
|
|
|
|
|
|
if v.bounce >= _G.BULLETS_BOUNCE_MAX then |
|
|
|
|
|
|
|
table.remove(Bullets1, i) |
|
|
|
|
|
|
|
v.collider:destroy() |
|
|
|
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- Handle screen edges |
|
|
|
if v.y < 0 then --top of screen |
|
|
|
if v.y < 0 then --top of screen |
|
|
|
table.remove(Bullets1, i) |
|
|
|
table.remove(Bullets1, i) |
|
|
|
v.collider:destroy() |
|
|
|
v.collider:destroy() |
|
|
@ -46,6 +54,8 @@ function UpdateGame(dt) |
|
|
|
table.remove(Bullets1, i) |
|
|
|
table.remove(Bullets1, i) |
|
|
|
v.collider:destroy() |
|
|
|
v.collider:destroy() |
|
|
|
end |
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- Hit player2 |
|
|
|
if v.collider:enter("Player2") then |
|
|
|
if v.collider:enter("Player2") then |
|
|
|
print("Player1 hit Player2!") |
|
|
|
print("Player1 hit Player2!") |
|
|
|
table.remove(Bullets1, i) |
|
|
|
table.remove(Bullets1, i) |
|
|
@ -55,6 +65,7 @@ function UpdateGame(dt) |
|
|
|
end |
|
|
|
end |
|
|
|
end |
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- Hit player1 |
|
|
|
if v.collider:enter("Player1") then |
|
|
|
if v.collider:enter("Player1") then |
|
|
|
print("Player 1 hit themselves!") |
|
|
|
print("Player 1 hit themselves!") |
|
|
|
table.remove(Bullets1, i) |
|
|
|
table.remove(Bullets1, i) |
|
|
@ -63,10 +74,24 @@ function UpdateGame(dt) |
|
|
|
UserPlayer1.health = UserPlayer1.health - 1 |
|
|
|
UserPlayer1.health = UserPlayer1.health - 1 |
|
|
|
end |
|
|
|
end |
|
|
|
end |
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
--Hit another bullet |
|
|
|
|
|
|
|
if v.collider:enter("Bullet1") then |
|
|
|
|
|
|
|
table.remove(Bullets1, i) |
|
|
|
|
|
|
|
v.collider:destroy() |
|
|
|
|
|
|
|
end |
|
|
|
end |
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
for i, v in ipairs(Bullets2) do |
|
|
|
for i, v in ipairs(Bullets2) do |
|
|
|
v:update(dt) |
|
|
|
v:update(dt) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- Check bounce count |
|
|
|
|
|
|
|
if v.bounce >= _G.BULLETS_BOUNCE_MAX then |
|
|
|
|
|
|
|
table.remove(Bullets2, i) |
|
|
|
|
|
|
|
v.collider:destroy() |
|
|
|
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- Handle screen edges |
|
|
|
if v.y < 0 then --top of screen |
|
|
|
if v.y < 0 then --top of screen |
|
|
|
table.remove(Bullets2, i) |
|
|
|
table.remove(Bullets2, i) |
|
|
|
v.collider:destroy() |
|
|
|
v.collider:destroy() |
|
|
@ -75,6 +100,7 @@ function UpdateGame(dt) |
|
|
|
v.collider:destroy() |
|
|
|
v.collider:destroy() |
|
|
|
end |
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- Hit player2 |
|
|
|
if v.collider:enter("Player1") then |
|
|
|
if v.collider:enter("Player1") then |
|
|
|
print("Player2 hit Player1!") |
|
|
|
print("Player2 hit Player1!") |
|
|
|
table.remove(Bullets2, i) |
|
|
|
table.remove(Bullets2, i) |
|
|
@ -83,16 +109,24 @@ function UpdateGame(dt) |
|
|
|
UserPlayer2.health = UserPlayer2.health - 1 |
|
|
|
UserPlayer2.health = UserPlayer2.health - 1 |
|
|
|
end |
|
|
|
end |
|
|
|
end |
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- Hit player1 |
|
|
|
if v.collider:enter("Player2") then |
|
|
|
if v.collider:enter("Player2") then |
|
|
|
print("Player 2 hit themselves!") |
|
|
|
print("Player 2 hit themselves!") |
|
|
|
table.remove(Bullets2, i) |
|
|
|
table.remove(Bullets2, i) |
|
|
|
v.collider:destroy() |
|
|
|
v.collider:destroy() |
|
|
|
|
|
|
|
|
|
|
|
if UserPlayer2.health > 0 then |
|
|
|
if UserPlayer2.health > 0 then |
|
|
|
UserPlayer2.health = UserPlayer2.health - 1 |
|
|
|
UserPlayer2.health = UserPlayer2.health - 1 |
|
|
|
end |
|
|
|
end |
|
|
|
end |
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
--Hit another bullet |
|
|
|
|
|
|
|
if v.collider:enter("Bullet2") then |
|
|
|
|
|
|
|
table.remove(Bullets2, i) |
|
|
|
|
|
|
|
v.collider:destroy() |
|
|
|
|
|
|
|
end |
|
|
|
end |
|
|
|
end |
|
|
|
|
|
|
|
|
|
|
|
UserPlayer1:handleKeys("w", "s", "a", "d", dt) |
|
|
|
UserPlayer1:handleKeys("w", "s", "a", "d", dt) |
|
|
|
UserPlayer2:handleKeys("up", "down", "left", "right", dt) |
|
|
|
UserPlayer2:handleKeys("up", "down", "left", "right", dt) |
|
|
|
UserPlayer1:updateCol() |
|
|
|
UserPlayer1:updateCol() |
|
|
|