我是电晕的新手,我正在尝试为 android 制作一个非常简单的游戏。我有一个“球”和“石头”两个显示器,它们都添加了物理,现在我要做的是检测或检查球是否接触石头,然后我会改变球的图像.
任何想法将不胜感激。
我是电晕的新手,我正在尝试为 android 制作一个非常简单的游戏。我有一个“球”和“石头”两个显示器,它们都添加了物理,现在我要做的是检测或检查球是否接触石头,然后我会改变球的图像.
任何想法将不胜感激。
步骤如下 -
本地物理 = 要求(“物理”)physics.start()
本地 firstObject = display.newImage("bkg_firstObject.png") firstObject.x = display.contentWidth / 2 firstObject.y = 100
本地 secondObject = display.newImage( "bkg_secondObject.png" ) secondObject.x = display.contentWidth / 2 secondObject.y = 400 secondObject.myName = "secondObject"
physics.addBody(secondObject,“静态”,{摩擦=0.6,反弹=0.4})
本地 box1 = display.newImage( "crate.png" ) box1.x = 180; crate1.y = -50 box1.myName = "第一个盒子"
本地 box2 = display.newImage( "crate.png" ) box2.x = 180; crate2.y = -150 box2.myName = "第二个板条箱"
物理.addBody(box1, {密度=3.0, 摩擦=0.5, 弹跳=0.3 }) 物理.addBody(box2, {密度=3.0, 摩擦=0.5, 弹跳=0.3 })
---- 方法一:使用表监听器(本地方法)
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(“碰撞”,onGlobalCollision)
这个答案可能会对你有所帮助。