|
-
- local huamajiangGameStartAnimation = class("huamajiangGameStartAnimation", cc.UIView);
-
- function huamajiangGameStartAnimation:ctor ()
- self:initViews();
- end
-
- function huamajiangGameStartAnimation:initViews ()
- if self.imgText then
- self.imgText:removeFromParent();
- end
-
- if self.imgBg then
- self.imgBg:removeFromParent();
- end
-
- local visibleSize = cc.Director:getInstance():getVisibleSize();
-
- local imgBg = cc.Sprite:create();
- imgBg:setTexture("mj_huamajiang/res/zy_fangjian/anim/gamestart/huamajiang_bg_gamestart.png");
- imgBg:setPosition(cc.p(visibleSize.width / 6, visibleSize.height / 2));
- imgBg:setOpacity(0);
- self:addChild(imgBg);
- self.imgBg = imgBg;
-
- local imgText = cc.Sprite:create();
- imgText:setTexture("mj_huamajiang/res/zy_fangjian/anim/gamestart/huamajiang_img_gamestart.png");
- imgText:setPosition(cc.p(visibleSize.width * 5 / 6, visibleSize.height / 2));
- imgBg:setOpacity(0);
- self:addChild(imgText);
- self.imgText = imgText;
- end
-
- function huamajiangGameStartAnimation:play ()
- if not (self.imgBg and self.imgText) then
- return ;
- end
-
- local acMove1 = self:createMoveAction();
- local acMove2 = self:createMoveAction();
- local acMoveCallback = cc.CallFunc:create(handler(self, self.onMoveFinished));
- local acDelay = cc.DelayTime:create(0.7);
- local acCallback = cc.CallFunc:create(handler(self, self.onPlayAnimFinished));
- local acSeq = cc.Sequence:create(acMove2, acMoveCallback, acDelay, acCallback);
- self.imgBg:runAction(acMove1);
- self.imgText:runAction(acSeq);
- end
-
- function huamajiangGameStartAnimation:createMoveAction ()
- local visibleSize = cc.Director:getInstance():getVisibleSize();
- local acMoveTo = cc.MoveTo:create(0.5, cc.p(visibleSize.width / 2, visibleSize.height / 2));
- local acFadeIn = cc.FadeIn:create(0.5);
- local acSpawn = cc.Spawn:create(acMoveTo, acFadeIn);
- return acSpawn;
- end
- --- huamajiangGameStartAnimation:onMoveFinished 移动完成动画
- function huamajiangGameStartAnimation:onMoveFinished ()
- -- 移动完成,可能要显示繁星点点
- if not self.imgText then
- return ;
- end
- local size = self.imgText:getContentSize();
- math.randomseed(tostring(os.time()):reverse():sub(1, 6))
- function createStar ()
- local x = math.random(size.width * 3 /4);
- local y = math.random(size.height * 3 / 4);
- local sprite = cc.Sprite:create("mj_huamajiang/res/zy_fangjian/anim/gamestart/huamajiang_img_star1.png");
- sprite:setPosition(cc.p(x, y));
- sprite:setScale(math.random(15, 25) * 0.1);
- self.imgText:addChild(sprite);
-
- local acRotate = cc.RotateTo:create(0.5, 360);
- local acFadeIn = cc.FadeIn:create(0.5);
- local acFadeOut = cc.FadeOut:create(0.5);
- local acSeq = cc.Sequence:create(acFadeIn, acFadeOut);
- local acSpawn = cc.Spawn:create(acRotate, acSeq);
- local acRepeat = cc.RepeatForever:create(acSpawn);
- sprite:runAction(acRepeat);
- end
- for i = 1, 6 do
- createStar();
- end
- end
-
- function huamajiangGameStartAnimation:onPlayAnimFinished( )
- self:stop();
- end
-
- function huamajiangGameStartAnimation:stop ()
- self:setVisible(false);
- self:removeFromParent();
- self = nil;
- end
-
- return huamajiangGameStartAnimation;
|