Added accel to all directions; moved accel to function

This commit is contained in:
Logen Kain 2016-11-25 14:52:16 -07:00
parent 59a303d122
commit b9393dda5f

View File

@ -1,7 +1,13 @@
require "Tserial" require "Tserial"
function move(direction) function move(void)
-- with acceleration
if player.current_speed < player.speed then
player.current_speed = player.current_speed + (player.speed*player.accel)
end
return player.current_speed
end end
@ -20,10 +26,12 @@ function love.load()
player.y = 100 player.y = 100
player.w = 25 player.w = 25
player.h = 25 player.h = 25
player.speed = 100 player.speed = 500
player.current_speed = 0 player.current_speed = 0
--Must be less than 1 --Must be less than 1
player.accel = 1/16 --if I understand correctly, the second number should be how many frames
--it takes to get to top speed
player.accel = 1/120
end end
function love.keyreleased(key) function love.keyreleased(key)
@ -49,27 +57,29 @@ function love.update(dt)
--Move character left or right --Move character left or right
if love.keyboard.isDown("right") then if love.keyboard.isDown("right") then
-- with acceleration move()
if player.current_speed < player.speed then player.x = player.x + player.current_speed*dt
player.current_speed = player.current_speed + (player.speed*player.accel)
end
player.x = player.x + player.current_speed*dt
elseif love.keyboard.isDown("left") then elseif love.keyboard.isDown("left") then
player.x = player.x - player.speed*dt move()
player.x = player.x - player.current_speed*dt
--Reset current speed if key is released --Reset current speed if key is released
elseif not love.keyboard.isDown("right") then
player.current_speed = 0
end end
--Also able to move or up down at the same time as one of the above --Also able to move or up down at the same time as one of the above
if love.keyboard.isDown("up") then if love.keyboard.isDown("up") then
player.y = player.y - player.speed*dt move()
player.y = player.y - player.current_speed*dt
elseif love.keyboard.isDown ("down") then elseif love.keyboard.isDown ("down") then
player.y = player.y + player.speed*dt move()
player.y = player.y + player.current_speed*dt
end end
if not love.keyboard.isDown("right", "left", "up", "down") then
player.current_speed = 0
end
end end
function love.draw() function love.draw()