zoukankan      html  css  js  c++  java
  • Flash气泡回弹效果

          好久没有碰过Flash了,今天温习一下AS3.0,做了一个回弹效果,气泡回弹
    本想着怎么可以定义气泡的不同颜色,这样可以做出更绚丽的效果,或者更进步一,气泡和气泡直接回弹,想了老半天没有想出来,就先这样,等有更好的方案时候在更新

    效果图片

     as代码

    package 
    {
        
    import flash.display.Sprite;
        
    import flash.events.Event;
        
    import flash.display.StageAlign;
        
    import flash.display.StageScaleMode;
        
    public class bubble extends Sprite
        {
            
    public var count:int =6;
            
    public var balls:Array;
            
    public function bubble ()
            {
                init ();
            }
            
    private function init ():void
            {
                stage.align 
    = StageAlign.LEFT;
                stage.scaleMode 
    = StageScaleMode.NO_SCALE;
                balls 
    = new Array  ;
                
    for (var i = 0; i <= count; i++) {
                    var ball 
    = new Ball();
                    
    //ball.alpha = Math.random();
                    
                    ball.x 
    = Math.random() * stage.stageWidth;
                    ball.y 
    = Math.random() * stage.stageHeight;
                    ball.vx 
    = Math.random() * 3 - 3;
                    ball.vy 
    = Math.random() * 3 - 3;
                    addChild (ball);
                    balls.push (ball);
                }
                addEventListener (Event.ENTER_FRAME,onEnterFrame);

            }
            
    private function onEnterFrame (event:Event):void
            {


                var left 
    = 0;
                var top 
    = 0;
                var bottom 
    = stage.stageHeight;
                var right 
    = stage.stageWidth;

                
    for (var i:Number = balls.length - 1; i >= 0; i--) {

                    var ball 
    = balls[i];
                    var radius:Number 
    = ball.width / 2;
                    ball.x 
    += ball.vx;
                    ball.y
    +=ball.vy;
                    
    if (ball.x>right-radius) {
                        ball.x
    =right-radius;
                        ball.vx
    *=-1;
                    }
                    
    if (ball.x<radius) {
                        ball.x
    =radius;
                        ball.vx
    *=-1;
                    }
                    
    if (ball.y>bottom-radius) {
                        ball.y
    =bottom-radius;
                        ball.vy
    *=-1;
                    }
                    
    if (ball.y<radius) {
                        ball.y
    =radius;
                        ball.vy
    *=-1;
                    }

                }

            }

        }

    }

    文件下载
    Flash回弹.rar 

  • 相关阅读:
    OSG嵌入QT(QT界面使用Qt Designer编辑)
    C++ Makefile文件编写
    cbp2make使用
    for循环之后的return
    C++引用形参,函数返回多个值
    个人感悟之代理模式
    个人感悟之单例模式
    个人感悟之简单工厂模式-工厂方法模式-抽象工厂模式
    Java设计模式
    (转)java之Spring(IOC)注解装配Bean详解
  • 原文地址:https://www.cnblogs.com/clc2008/p/loaf.html
Copyright © 2011-2022 走看看