2016-04-06 3 views
0

Я новичок в Love2D и Lua, но пока все идет хорошо. Я пытаюсь сделать простую игру, но до сих пор мне не удалось найти что-либо на столкновении, кроме того, что у игрока нет прокрутки экрана. Я пытался использовать этотЯ не знаю, как получить базовое столкновение

function CheckCollision(x1,y1,w1,h1, x2,y2,w2,h2) 
return x1 < x2+w2 and 
    x2 < x1+w1 and 
    y1 < y2+h2 and 
    y2 < y1+h1 
end 

Но я не совсем уверен, как использовать его, как каждый раз, когда я не пытался ничего в программе изменилось. Пожалуйста помоги?

Я не слишком хорошо знаком с этим сайтом, извините. Я изменил его, но он все еще не работает.

tree = {x = 20, y = 20, speed = 0, img = nil } 

tree.img = love.graphics.newImage("assets/tree.png") 

function CheckCollision(x1,y1,w1,h1, x2,y2,w2,h2) 
    return x1 < x2+w2 or 
    x2 < x1+w1 or 
    y1 < y2+h2 or 
    y2 < y1+h1 
end 

function tree_update(dt) 
    if CheckCollision(crs.x, crs.y, crs.img:getWidth(), crs.img:getHeight(), tree.x, tree.y, tree.img:getWidth(), tree.img:getHeight()) then 
    love.graphics.print("It touched the thing", love.graphics:getWidth()/2-  50, love.graphics:getHeight()/2-10) 
    end 
    end 

    function tree_draw() 
    love.graphics.draw(tree.img, tree.x, tree.y) 
    end 

ответ

0

Ответное заявление следует использовать or вместо and, как вы хотите, чтобы вернуться, что он столкнулся, когда какие-либо из утверждений верно.

function CheckCollision(x1,y1,w1,h1, x2,y2,w2,h2) 
    return x1 < x2+w2 or 
    x2 < x1+w1 or 
    y1 < y2+h2 or 
    y2 < y1+h1 
end 

Там также функция столкновений в Love2D называется «Contacts», который может помочь с вещами, как столкновения.

 Смежные вопросы

  • Нет связанных вопросов^_^