(CORONA SDK) Анимация спрайтов не падает

Я написал код ниже, чтобы создать анимацию и линию, которая смещается справа налево. Моя проблема в том, что если линия больше не находится под спрайтом, спрайт не падает.

local sheet1 = graphics.newImageSheet( "hero.png", { width=135, height=259, numFrames=14 } )
local hero = display.newSprite( sheet1, { name="hero", start=1, count=14, time=450 } )
hero.timeScale = 1.0
hero.x = _W/2-400
hero.y = _H/2+180
hero.alpha = 1
hero.myName = "hero"
hero:play()
physics.addBody( hero, "dynamic", { friction=0.0, bounce=0 } )
hero.isFixedRotation=true


local linea = display.newRect(_H/2,math.random(_H/2+290,_H/2+400),1250,10)
linea:setFillColor(255,0,0)
linea.alpha = 0.5
linea.myName = "linea"
physics.addBody(linea, "static", { friction = 0, bounce = 0 } )


local function muoviLinea()
    linea.x = linea.x - velocita
    linea2.x = linea2.x - velocita

    if(linea.x<-712)then
         linea.x = _W/2
         linea.y = math.random(_H/2+290,_H/2+400)
    end
end


Runtime:addEventListener("enterFrame", muoviLinea)

Если вместо спрайта я использую

local hero = display.newRect(100,100,10,10)
physics.addBody( hero, "dynamic", { friction=0.0, bounce=0 } ) 

Все работает как надо.

Что я делаю не так? Спасибо.


person gigapico00    schedule 01.12.2014    source источник


Ответы (1)


вы не вызвали physics.start(), вся физика не запустится если вы явно не запустили его

person JamParaiso    schedule 11.12.2014