Я изучаю Corona, и я пытаюсь использовать событие столкновения. Целью следующей программы является то, что скала движется к машине, используя переход. И распечатайте строку, чтобы сообщить о столкновении, где она встречается.corona + collision не работает
Однако, это не работает. Более того, я даже не могу получить сообщение «enterenter», по какой причине программа не может даже попасть в функцию ввода?
Мой код выглядит следующим образом. Заранее спасибо.
local composer = require("composer")
local scene = composer.newScene()
local physics = require "physics"
physics.start(); physics.pause()
local function onLocalCollision(self, event)
if (event.phase == "began") then
print(self.myName .. ": collision began with " .. event.other.myName)
elseif (event.phase == "ended") then
print(self.myName .. ": collision ended with " .. event.other.myName)
end
end
local widget = require "widget"
function scene:create(event)
print("entercreate")
local sceneGroup = self.view
local backgrd = display.newImage("background2.png",0,260)
backgrd:scale(3,3)
local car = display.newImage("car2.png",80,270)
physics.addBody(car,"static")
car.myName="Car"
local rock = display.newImage("rock.jpg",520,280)
rock:scale(0.05,0.05)
physics.addBody(rock,"static")
rock.myName="rock"
sceneGroup:insert(backgrd)
sceneGroup:insert(car)
sceneGroup:insert(rock)
transition.to(backgrd,{time=24000, x=-1800,onComplete=endScroll})
transition.to(rock,{time=4000, delay=2500,x=-40})
end
function scene:enter(event)
print("enterenter")
physics.start()
local sceneGroup = self.view
Runtime:addEventListener("collision", onLocalCollision)
end
scene:addEventListener("create", scene)
scene:addEventListener("enter", scene)
return scene