Block1={}
Block1.x=100
Block1.y=100
Block1.width =100
Block1.height=100
Block1.speed = 500
Block2 = {}
Block2.x = 300
Block2.y = 100
Block2.width = 100
Block2.height = 100
Block2.speed = 500
-- 碰撞检测
function colide_check(block1,block2)
block1.right = block1.x + block1.width
block1.left = block1.x
block1.top = block1.y
block1.bottom = block1.y + block1.height
block2.right = block2.x + block2.width
block2.left = block2.x
block2.top = block2.y
block2.bottom = block2.y + block2.height
if block1.right>block2.left and block1.bottom>block2.top and block1.top<block2.bottom and block1.left<block2.right then
return true
else
return false
end
end
function love.load()
block1 = Block1
block2 = Block2
end
function love.update(dt)
if love.keyboard.isDown("right") then
block1.x = block1.x+block1.speed*dt
elseif love.keyboard.isDown("left") then
block1.x = block1.x - block1.speed * dt
elseif love.keyboard.isDown("up") then
block1.y = block1.y - block1.speed * dt
elseif love.keyboard.isDown("down") then
block1.y = block1.y + block1.speed * dt
end
end
function love.draw()
if colide_check(block1,block2) then
mode="fill"
else
mode="line"
end
love.graphics.rectangle(mode, block1.x, block1.y, block1.width, block1.height)
love.graphics.rectangle(mode, block2.x, block2.y, block2.width, block2.height)
end
效果: