加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Cocos2d-x_创建多个滚动层(每层速度不同)

发布时间:2020-12-14 16:27:07 所属栏目:百科 来源:网络整理
导读:local scheduler = cc.Director:getInstance():getScheduler()local winSize = cc.Director:getInstance():getWinSize()--创建循环地图local function createLoopMap(name,tag)local width = 1536local m_bg1 = cc.Sprite:create(name)m_bg1:setAnchorPoint(
	local scheduler = cc.Director:getInstance():getScheduler()
	local winSize = cc.Director:getInstance():getWinSize()

	--创建循环地图
	local function createLoopMap(name,tag)
		local width = 1536

		local m_bg1 = cc.Sprite:create(name)
		m_bg1:setAnchorPoint(cc.p(0,0))
		m_bg1:setPosition(cc.p(0,0))
		m_bg1:setTag(111)

		local m_bg2 = cc.Sprite:create(name)
		m_bg2:setAnchorPoint(cc.p(0,0))
		m_bg2:setPosition(cc.p(winSize.width,0))
		m_bg2:setTag(222)
	
		local node = cc.Node:create()
		node:addChild(m_bg1)
		node:addChild(m_bg2)
		node:setTag(tag)

		return node
	end
	
	local m_bg1 = createLoopMap("bg1.jpg",1)
    self.m_bg1 = m_bg1  
  
    local m_bg2 = createLoopMap("crop.png",2)  
    self.m_bg2 = m_bg2  
	
	self.panel.layer:addChild(m_bg1)
	self.panel.layer:addChild(m_bg2)
	
    local function updateFunc(dt)  
		for	i = 1,2 do
			local node = self.panel.layer:getChildByTag(i)
			local bg1 = node:getChildByTag(111)
			local bg2 = node:getChildByTag(222)
			
			local posX1 = bg1:getPositionX()  
			local posX2 = bg2:getPositionX()
			
			local speed = 0
			if i == 1 then
				speed = 5.0
			elseif i == 2 then
				speed = 10.0
			end
			
			posX1 = posX1 - speed  
			posX2 = posX2 - speed  
			local width = winSize.width  
		  
			if posX1 < -width then
				posX2 = 0  
				posX1 = width  
			end  
		  
			if posX2 < -width then
				posX1 = 0
				posX2 = width 
			end  
		  
			bg1:setPositionX(posX1)  
			bg2:setPositionX(posX2) 
		end
    end  
  
    if self.updateHandler == nil then  
        self.updateHandler = scheduler:scheduleScriptFunc(updateFunc,false)  
    end  

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读