require "Cocos2d" require "Cocos2dConstants" local testscene = class("testscene",function() return cc.Scene:create() end) function testscene:create() local scene = testscene.new() return scene end --默认函数 function testscene:ctor() --创建层-将层加入场景中 local layer = cc.Layer:create() self:addChild(layer) --创建节点-将节点加入层中 local node = cc.Sprite:create("res/land.png") node:setPosition(240,160) node:setAnchorPoint(0.5,0.5) layer:addChild(node,2)
local size = node:getContentSize() _beginNum = 200 --创建文本-将文本加入节点中 txt = cc.LabelTTF:create(tostring(_beginNum),"Marker Felt",24) txt:setColor(cc.c4b(20,25,255,255)) txt:setPosition(size.width/2,size.height/2) txt:setAnchorPoint(0.5,0.5) node:addChild(txt) local taction = {} --延迟 local delay =cc.DelayTime:create(0.01) table.insert(taction,delay) --扩大 local scale = cc.ScaleTo:create(0.2,2) local scale2 = cc.ScaleTo:create(0.2,1) table.insert(taction,scale) table.insert(taction,scale2) -- 数值改变 _endNum =10000 math.randomseed(3000) _dis = math.random(5000,10000) print(_dis) local rtime = (_endNum-_beginNum)/_dis print(rtime) function chagenum() if (_beginNum < _endNum) then _beginNum= _beginNum +_dis txt:setString(_beginNum) elseif (_beginNum == _endNum) then txt:setString( _endNum) end end local seq = cc.Sequence:create(delay,cc.CallFunc:create(chagenum)) --数字翻滚 local X = size.width/2 local Y = size.height/2 local UPY = 2*Y local DownY = 0 local move1 = cc.MoveTo:create(0.05,cc.p(X,UPY)) local move2 = cc.MoveTo:create(0.05,cc.p(X,DownY)) local move3 = cc.MoveTo:create(0.05,cc.p(X,Y))
local scale1 = cc.ScaleTo:create(0.05,1,0.001) local scale2 = cc.ScaleTo:create(0.05,1,1)
local UP = cc.Sequence:create(move1,scale1) local Down = cc.Sequence:create(move2,scale1,scale2,move3) local spawn = cc.Spawn:create(UP,seq,Down) local rep = cc.Repeat:create(spawn,rtime) --设置真值 local function setnum() _beginNum = _endNum txt:setString(_beginNum) end
local call = cc.CallFunc:create(setnum) local seq2 = cc.Sequence:create(rep,delay,call) table.insert(taction,seq2) table.insert(taction,scale) table.insert(taction,scale2) local seqaction = cc.Sequence:create(taction) txt:runAction(seqaction)
return layer end
return testscene
|
请发表评论