巫荣云师 发表于 2020-3-4 16:25

[云师学脚本] 下雪 (下)

本帖最后由 巫荣云师 于 2020-3-4 16:37 编辑 <br /><br /><DIV style="LEFT: -20px; WIDTH: 800px; POSITION: relative; TOP:0px">
<IFRAME marginWidth=0 marginHeight=0 src="http://yun.aiu365.com/s.php?sid=1i5xk3" frameBorder=0
width=800 scrolling=no height=600>
</IFRAME>
</DIV><BR>
请点场景观雪花听音乐,谢谢光临!<BR><BR>

巫荣云师 发表于 2020-3-4 16:27

本帖最后由 巫荣云师 于 2020-3-4 16:29 编辑

********************** 全部代码
package {
        import flash.display.Sprite;//加载外部类,用于影片剪辑
        import flash.events.Event;//加载外部类,用于侦听事件
        import flash.events.MouseEvent;//加载外部类,用于鼠标侦听事件
        import flash.media.Sound;//加载外部类,用于用声音
        import flash.media.SoundChannel;//加载外部类,用于声道
        public class Xiaxue extends Sprite {
                private var XHSL:Number = 800;//定义一个变量,用于存放雪花数量
                private var xh:Array = new Array;//定义一个数组存放雪花
                private var vx:Array = new Array;//定义一个数组用于存放雪花x方向的速度
                private var vy:Array = new Array;//定义一个数组用于存放雪花y方向的速度
                var xg:XG=new XG();//用库中XG构建一个影片剪辑
                var i:int = 1;//定义一个整型变量,用于播放标记
                var chl:SoundChannel;//定义变量,用于声道
                var snd:Sound = new ST;//用库中的声音构建一个新的声音
                public function Xiaxue() {//主函数
                        addChild(xg);//加效果影片剪辑添加到场景中
                        xg.y = 75;//调整位置
                        xg.stop();//效果停止语句,运行即停止;
                        AN();//调用AN函数
                }
                private function XHmove(e: Event) {//定义侦听函数   
                        for (var i: int = 0; i < XHSL; i++) {
                                xh.x +=vx;//所有雪花的x方向增加一个数值
                                xh.y +=vy;//所有雪花的y方向增加一个数值
                                if (xh.x > 800) {//将超出右边界的雪花x值设置为0
                                        xh.x = 0;
                                }
                                if (xh.y > 525) {//将超出下边界的雪花y值设置为0
                                        xh.y = 75;
                                }
                                if (xh.x < 0) {//将超出右边界的雪花x值设置为0
                                        xh.x = 800;
                                }
                        }
                }
                private function AN():void {
                        var an:Sprite = new Sprite;//构建一个按钮元件
                        addChild(an);//添加到场景中
                        an.graphics.beginFill(0x000000);
                        // 设置填充色;
                        an.graphics.drawRect(0, 0, 800, 600);
                        //绘制一个宽400高50像素距形;
                        an.graphics.endFill();
                        // 结束填充;
                        an.buttonMode = true;//打开按钮模式
                        an.alpha = 0;//将此按钮的不透明度设置0
                        an.addEventListener(MouseEvent.CLICK,t_click);
                        //添加按钮的侦听事件;
                }
                private function t_click(evt: MouseEvent):void {//按下按钮后做的语句
                        i *=-1;
                        if (i < 1) {// i初值为1,当点击时变成了-1。动画运行时,是停止的,点击后运动。
                                xg.play();
                                addXH();//调用addXH函数
                                addEventListener(Event.ENTER_FRAME, XHmove);//添加侦听事件
                                chl = snd.play();//声音播放
                        }
                        else {// 当i>1时,停止运动。
                                xg.stop();//效果停止
                                removeXH();//移除雪花
                                chl.stop();//声音停止
                        }
                }
                private function removeXH():void {
                        for (var i: Number = 0; i < XHSL; i++) {
                                removeChild(xh);//移除雪花
                        }
                }
                private function addXH():void {//创建一个函数,用于加载雪花
                        for (var i: Number = 0; i < XHSL; i++) {
                                xh = new XH();//构建一个新的雪花
                                xh.x = 800 * Math.random();//生成雪花的x位置
                                xh.y = 450 * Math.random() + 75;//生成雪花y位置
                                vx = 5 * Math.random() - 3;//生成雪花的x方向速度,有正有负
                                vy = 5 * Math.random();//生成雪花的y方向速度
                                addChild(xh);//将生成雪花添加到场景中
                        }
                }

        }
}


黔中一叟 发表于 2020-3-4 16:50

问好云师,分享学习你提供的教程,谢谢了!真心的祝愿朋友永远幸福快乐 !

绿地水池 发表于 2020-3-4 17:01

欣赏佳作。为你点赞。

绿地水池 发表于 2020-3-4 17:01

白茫茫一片大地真干净。

玫_玫 发表于 2020-3-4 18:18

雪景很漂亮,图图切换效果美美哒!

玫_玫 发表于 2020-3-4 18:20

感谢精彩分享,制作辛苦,祝您一切顺利,万事如意!

玫_玫 发表于 2020-3-4 18:21

点击场景 开始下雪,音乐好听!

巫荣云师 发表于 2020-3-4 18:22

黔中一叟 发表于 2020-3-4 16:50
问好云师,分享学习你提供的教程,谢谢了!真心的祝愿朋友永远幸福快乐 !

问好黔中一叟超版,谢谢您的鼓励!

巫荣云师 发表于 2020-3-4 18:24

绿地水池 发表于 2020-3-4 17:01
欣赏佳作。为你点赞。

问好绿地水池老师,谢谢您的鼓励!
页: [1] 2 3
查看完整版本: [云师学脚本] 下雪 (下)