jump around
jump around
This commit is contained in:
parent
7b30c93128
commit
ae5da288ca
28
main.lua
28
main.lua
@ -1,6 +1,7 @@
|
||||
--[[ LOVE STUFF ]]
|
||||
function love.load()
|
||||
myWorld = love.physics.newWorld(0, 100)
|
||||
myWorld = love.physics.newWorld(0, 500)
|
||||
myWorld:setCallbacks(beginContact, endContact, preSolve, postSolve)
|
||||
|
||||
sprites = {}
|
||||
sprites.coin_sheet = love.graphics.newImage('sprites/coin_sheet.png')
|
||||
@ -16,21 +17,28 @@ end
|
||||
|
||||
function love.update(dt)
|
||||
myWorld:update(dt)
|
||||
playerUpdate(dt)
|
||||
end
|
||||
|
||||
function love.draw()
|
||||
love.graphics.draw(
|
||||
sprites.player_stand,
|
||||
player.body:getX(),
|
||||
player.body:getY(),
|
||||
nil, nil, nil,
|
||||
sprites.player_stand:getWidth()/2, sprites.player_stand:getHeight()/2)
|
||||
sprites.player_stand,
|
||||
player.body:getX(),
|
||||
player.body:getY(),
|
||||
nil, nil, nil,
|
||||
sprites.player_stand:getWidth()/2, sprites.player_stand:getHeight()/2)
|
||||
|
||||
for i, p in ipairs(platforms) do
|
||||
love.graphics.rectangle("fill", p.body:getX(), p.body:getY(), p.width, p.height)
|
||||
end
|
||||
end
|
||||
|
||||
function love.keypressed(key, scancode, isrepeat)
|
||||
if key == "space" and player.grounded then
|
||||
player.body:applyLinearImpulse(0, -2500)
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
function spawnPlatform(x, y, width, height)
|
||||
local platform = {}
|
||||
@ -42,3 +50,11 @@ function spawnPlatform(x, y, width, height)
|
||||
|
||||
table.insert(platforms, platform)
|
||||
end
|
||||
|
||||
|
||||
function beginContact(a, b, coll)
|
||||
player.grounded = true
|
||||
end
|
||||
function endContact(a, b, coll)
|
||||
player.grounded = false
|
||||
end
|
||||
|
16
player.lua
16
player.lua
@ -1,4 +1,20 @@
|
||||
player = {}
|
||||
-- Physics Engine
|
||||
player.body = love.physics.newBody(myWorld, 100, 100, 'dynamic')
|
||||
player.shape = love.physics.newRectangleShape(66, 92)
|
||||
player.fixture = love.physics.newFixture(player.body, player.shape)
|
||||
--
|
||||
player.speed = 200
|
||||
player.grounded = false
|
||||
|
||||
|
||||
function playerUpdate(dt)
|
||||
|
||||
if love.keyboard.isDown('a') then
|
||||
player.body:setX(player.body:getX() - player.speed * dt)
|
||||
end
|
||||
|
||||
if love.keyboard.isDown('d') then
|
||||
player.body:setX(player.body:getX() + player.speed * dt)
|
||||
end
|
||||
end
|
||||
|
Loading…
Reference in New Issue
Block a user