1
我想製作一個像DoodleJump的遊戲。 在級別(320x9600)中,對象的位置(bar1_67)(當然有很多對象)是(177,263),對象具有物理形狀。要求「LevelHelper.LevelHelperLoader」,我加載的水平:levelhelper-spritehelper-corona sdk-物體碰撞
...
local loader={}
--loading level
loader.level=LevelHelperLoader:initWithContentOfFile("level1.plhs")
loader.level:instantiateObjects()
loader.level:removeBackgroundColor()
local lhGroup=loader.level:layerWithUniqueName("MAIN_LAYER")
group:insert(lhGroup)
--to scroll the level, and start from the bottom of level
lhGroup.y=-loader.level.lhGameWorldRect.size.height+display.contentHeight
...
在此步驟之後,(根據設備屏幕)的bar1_67的新的Y位置是大約-9000s。 後來我加入的球員,要求「SpriteHelper.SpriteHelperLoader」:
...
sLoader = require("SpriteHelper.SpriteHelperLoader")
local _player={}
_player.player=sLoader:createSpriteWithName("player","sprites","extra.pshs")
_player.player:setReferencePoint(display.centerReferencePoint)
_player.player.x=display.contentWidth*0.5
_player.player.y=display.contentHeight*0.4
...
當啓動模擬器,是水平滾動,但球員與看不見的東西相撞,並在空中停留。 後來我加入這個代碼,看看發生了什麼:
...
function aa(self,event)
if(event.phase=="began") then
print(event.other.x, event.other.y, event.other.lhUniqueName)
end
end
_player.player.collision=aa
_player.player:addEventListener("collision", _player.player)
...
輸出是:
177 263 bar1_67
但正如我所說水平滾動和bar1_67超出屏幕。我可以/應該做什麼?