–加载具体的场景内容
function LoadSceneMajorUI( objSceneMajorUI )
– 创建一个CCLayer 来承载所有的要显示的子节点
objSceneMajorUI.miRootLayer = LG.CCLayer:create()
– 创建 backgroundbotto 精灵为背景
local backgroundbotto = LG.CCSprite:create(Global_DEF_RES_SC_UI … “TEMP_NO/dialogue_portrait_44.jpg”);
backgroundbotto:setScale(1.0)
backgroundbotto:setAnchorPoint( Global_CCPointMake(0,0) )
–pwidth = backgroundbotto:getContentSize().width
– 创建 backgroundleft 精灵为背景
local backgroundleft = LG.CCSprite:create(Global_DEF_RES_SC_UI … “TEMP_NO/main_bg_grass_left.jpg”);
backgroundleft:setScale(1.0)
backgroundleft:setAnchorPoint( Global_CCPointMake(0,0) )
pwidth = backgroundleft:getContentSize().width
– 创建backgroundright精灵
local backgroundright= LG.CCSprite:create(Global_DEF_RES_SC_UI … “TEMP_NO/main_bg_grass_right.jpg”);
backgroundright:setScale(1.0)
backgroundright:setAnchorPoint(Global_CCPointMake(0,0) )
– 创建tsecond精灵
local tsecond = LG.CCSprite:create(Global_DEF_RES_SC_UI … “TEMP_NO/main_cloud_1.png”);
tsecond:setScale(1.0)
tsecond:setAnchorPoint(Global_CCPointMake(0,0) )
– 创建tfirst精灵
local tfirst = LG.CCSprite:create(Global_DEF_RES_SC_UI … “TEMP_NO/main_cloud_2.png”);
tfirst:setScale(1.0)
tfirst:setAnchorPoint(Global_CCPointMake(0,0) )
– 创建一个parallax节点用于储存各种精灵,然后移动parallax节点以展示“视差”效果
objSceneMajorUI.miVoidNode = LG.CCParallaxNode:create()
– backgroundbotto的移动速度为 0.1x, 0.1y
objSceneMajorUI.miVoidNode:addChild(backgroundbotto, 2, Global_CCPointMake(0.5,0.5), Global_CCPointMake(0,300))
– backgroundleft的移动速度为 0.1x, 0.1y
objSceneMajorUI.miVoidNode:addChild(backgroundleft, -1, Global_CCPointMake(1.0,0.5), Global_CCPointMake(-pwidth,0))
– backgroundright的移动速度为1.0x, 0.5y
objSceneMajorUI.miVoidNode:addChild(backgroundright,-1, Global_CCPointMake(1.0,0.5), Global_CCPointMake(0,0) )
– tfirst的移动速度为 2.0x, 2.0y
objSceneMajorUI.miVoidNode:addChild(tfirst, 1, Global_CCPointMake(2.0,2.0), Global_CCPointMake(200,200) )
– tsecond的移动速度为 2.0x, 2.0y
objSceneMajorUI.miVoidNode:addChild(tsecond, 1, Global_CCPointMake(2.0,2.0), Global_CCPointMake(-1200,200) )
– 添加 触摸事件
objSceneMajorUI.miRootLayer:addChild( objSceneMajorUI.miVoidNode )
--voidNode:runAction( LG.CCMoveBy:create(4, Global_CCPointMake(0,500) ) )
objSceneMajorUI.miRootLayer:registerScriptTouchHandler( onTouchGoodsField, false, 0, false )
objSceneMajorUI.miRootLayer:setTouchEnabled( true )
end
– 触摸的响应事件
local function onTouchGoodsField( eventType, x, y )
if eventType == “began” then
return onTouchBegan( objSceneMajorUI, x, y )
elseif eventType == “moved” then
return onTouchMoved( objSceneMajorUI, x, y )
else
return onTouchEnded( objSceneMajorUI, x, y )
end
end
function onTouchBegan( objSceneMajorUI, x, y )
LG.CCLuaLog( “onTouchBegan” )
startX = x
pstartX = objSceneMajorUI.miVoidNode:getPositionX()
return true
end
function onTouchMoved( objSceneMajorUI, x, y )
LG.CCLuaLog( “onTouchMoved” )
– 移动时,不让出现黑边
if 0 < (pstartX + ( x - startX)) and pwidth > (pstartX + ( x - startX)) then
objSceneMajorUI.miVoidNode:setPositionX( pstartX + ( x - startX) )
end
end
