我是日惹的新人,我试图为Android做一个非常简单的游戏。我有一个两个显示器,"球"和" stone"他们两个都添加了一个物理,现在我要做的就是检测或检查球是否接触到了石头然后我会改变球的形象。
任何想法都将受到高度赞赏。
答案 0 :(得分:4)
以下给出了步骤 -
本地物理=要求(“物理”) physics.start()
local firstObject = display.newImage(“bkg_ firstObject.png”) firstObject.x = display.contentWidth / 2 firstObject.y = 100
local secondObject = display.newImage(“bkg_secondObject.png”) secondObject.x = display.contentWidth / 2 secondObject.y = 400 secondObject.myName =“secondObject”
physics.addBody(secondObject,“static”,{friction = 0.6,bounce = 0.4})
local box1 = display.newImage(“crate.png”) box1.x = 180; crate1.y = -50 box1.myName =“第一个框”
local box2 = display.newImage(“crate.png”) box2.x = 180; crate2.y = -150 box2.myName =“第二个箱子”
physics.addBody(box1,{density = 3.0,friction = 0.5,bounce = 0.3}) physics.addBody(box2,{density = 3.0,friction = 0.5,bounce = 0.3})
----方法1:使用表监听器(本地方法)
local function methodOfCollision( self, event )
if ( event.phase == "began" ) then
elseif ( event.phase == "ended" ) then
end
end
crate1.collision = methodOfCollision crate1:addEventListener(“collision”,crate1)
crate2.collision = methodOfCollision crate2:addEventListener(“collision”,crate2)
----方法2:使用运行时监听器(全局方法)
local function onGlobalCollision( event )
if ( event.phase == "began" ) then
elseif ( event.phase == "ended" ) then
end
end
运行时:addEventListener(“collision”,onGlobalCollision)
这个答案可能会对你有所帮助。