2013-05-06 1 views
0

저는 코로나에서 새롭고 안드로이드에 대한 매우 간단한 게임을 만들려고합니다. 나는 "볼"과 "돌"두 가지 디스플레이를 가지고 있습니다. 둘 다 물리학을 추가했습니다. 이제 내가하려는 것은 공이 돌에 닿았는지 확인하거나 확인하는 것입니다. 그러면 볼의 이미지가 바뀝니다. .다른 디스플레이와 상호 작용할 때 디스플레이 이미지 변경

모든 의견을 높이 평가할 것입니다.

답변

4

단계는 이하와 같다 -

로컬 물리가 = ("물리") physics.start()

로컬 firstObject = display.newImage ("bkg_ firstObject.png") firstObject.x 필요할 = display.contentWidth/2 = 100 firstObject.y

로컬이며 secondObject = display.newImage ("bkg_secondObject.png") secondObject.x = display.contentWidth/2 = 400 secondObject.y secondObject.myName = "이며 secondObject"

physics.addBody (이며 secondObject "정적"마찰 = {0.6, 0.4} = 반송)

로컬 BOX1 = display.newImage ("crate.png") box1.x = 180; crate1.y = -50 box1.myName = "첫 번째 상자"

로컬 상자 2 = display.newImage ("crate.png") box2.x = 180; crate2.y = -150 box2.myName = "초 상자"

physics.addBody (BOX1 {밀도 = 3.0, 마찰 = 0.5, 반송 = 0.3}) physics.addBody (BOX2 {밀도 = 3.0 마찰력 = 0.5, 반송 = 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 ("충돌"crate1)

crate2.col lision = methodOfCollision crate2 :하여 addEventListener ("충돌", crate2)

---- 방법 2 : 런타임 리스너 (글로벌 방법)

local function onGlobalCollision(event) 

    if (event.phase == "began") then 

    elseif (event.phase == "ended") then 

    end 
end 

런타임 사용하여 addEventListener ("충돌", onGlobalCollision)

이 답변은 도움이 될 수 있습니다.

+0

오브젝트가 크레이트에 닿았을 때 어떤 코드가 코드 체크를 했습니까? –

+0

당신은 사용할 수 있습니다 - crate1.preCollision = onPreCollision crate1 :하여 addEventListener ("preCollision", crate1) crate1.postCollision = onPostCollision crate1 :하여 addEventListener ("postCollision", crate1) – Varsha

+0

선생님 당신은 또한 사용하는 방법을 알고 스프라이트 시트 ? –

관련 문제