`

水果忍者鼠标跟随特效制作[转载]

 
阅读更多
实现这效果其实比较简单,主要是思路~!


package  
{
        import flash.display.Sprite;
        import flash.events.MouseEvent;
        import flash.events.Event;
        import flash.filters.GlowFilter;
        
        /**
         * ...
         * @author Xing
         */
        public class Main extends Sprite 
        {
                private var _cacheX:int;
                private var _cacheY:int;
                private var _isDown:Boolean;
                private var _scene:Sprite;
                public function Main() 
                {
                        _scene = new Sprite();
                        this.addChild(_scene);
                        _scene.filters = [new GlowFilter(0x00CCFF, 1, 10, 10, 2, 1, false, false)];
                        
                        stage.addEventListener(MouseEvent.MOUSE_DOWN, downHandler);
                        stage.addEventListener(MouseEvent.MOUSE_UP, upHandler);
                        this.addEventListener(Event.ENTER_FRAME, enterFrame);
                }
                private function downHandler(e:MouseEvent):void
                {
                        _cacheX = mouseX;
                        _cacheY = mouseY;
                        _isDown = true;
                }
                private function upHandler(e:MouseEvent):void
                {
                        _isDown = false;
                }
                private function enterFrame(e:Event):void
                {
                        for each (var l:Line in Line.sets) 
                        {
                                l.update();
                        }
                        update();
                }
                private function update():void
                {
                        if (!_isDown) return;
                        var line:Line = new Line(_cacheX, _cacheY, mouseX, mouseY);
                        _scene.addChild(line);
                        _cacheX = mouseX;
                        _cacheY = mouseY;
                }
                
        }

}
import flash.display.Sprite;
class Line extends Sprite
{
        static public var sets:Array = [];
        
        public var sX:int;
        public var sY:int;
        public var eX:int;
        public var eY:int;
        public var linesize:Number;
        public function Line($sX:int, $sY:int, $eX:int, $eY:int, $linesize:Number = 8)
        {
                sets.push(this);
                sX = $sX;
                sY = $sY;
                eX = $eX;
                eY = $eY;
                linesize = $linesize;
                draw();
        }
        private function draw():void
        {
                graphics.clear();
                graphics.lineStyle(linesize, 0xFFFFFF);
                graphics.moveTo(sX, sY);
                graphics.lineTo(eX, eY);
        }
        public function update():void
        {
                draw();
                linesize -= 1;
                if (linesize < 1)
                {
                        clear();
                }
        }
        private function clear()
        {
                graphics.clear();
                for (var i:String in sets) 
                {
                        var l:Line = sets[i] as Line;
                        if (l == this)
                        {
                                sets.splice(i, 1);
                                parent.removeChild(this);
                        }
                }
        }
}

分享到:
评论
2 楼 老顽童203 2017-03-25  
字体
1 楼 liuhello 2012-03-27  
选择您需要装饰的文字, 按上列按钮即可添加上相应的标签} 
import flash.display.Sprite; 
class Line extends Sprite 

        static public var sets:Array = []; 
         
        public var sX:int; 
        public var sY:int; 
        public var eX:int; 
        public var eY:int; 
        public var linesize:Number; 
        public function Line($sX:int, $sY:int, $eX:int, $eY:int, $linesize:Number = 
        { 
                sets.push(this); 
                sX = $sX; 
                sY = $sY; 
                eX = $eX; 
                eY = $eY; 
                linesize = $linesize; 
                draw(); 
        } 
        private function draw():void 
        { 
                graphics.clear(); 
                graphics.lineStyle(linesize, 0xFFFFFF); 
                graphics.moveTo(sX, sY); 
                graphics.lineTo(eX, eY); 
        } 
        public function update():void 
        { 
                draw(); 
                linesize -= 1; 
                if (linesize < 1) 
                { 
                        clear(); 
                } 
        } 
        private function clear() 
        { 
                graphics.clear(); 
                for (var i:String in sets)  
                { 
                        var l:Line = sets[i] as Line; 
                        if (l == this) 
                        { 
                                sets.splice(i, 1); 
                                parent.removeChild(this); 
                        } 
                } 
        } 

相关推荐

    水果忍者刀光特效

    《水果忍者刀光特效深度解析》 "水果忍者"是一款广受欢迎的休闲游戏,其独特的刀光特效是游戏的一大亮点。在这个“水果忍者刀光特效demo”中,我们将深入探讨如何在Unity引擎中实现这样的视觉效果,以及背后的编程...

    网页动画素材 水果忍者(抖音资料)

    网页动画素材 水果忍者(抖音资料)网页动画素材 水果忍者(抖音资料)网页动画素材 水果忍者(抖音资料)网页动画素材 水果忍者(抖音资料)网页动画素材 水果忍者(抖音资料)网页动画素材 水果忍者(抖音资料)...

    unity游戏-水果忍者-游戏源码.zip

    5. **用户输入(User Input)**:在“水果忍者”中,用户的触摸或鼠标操作是游戏的主要交互方式。源码中会有专门处理用户输入的脚本,通过Input类获取用户的滑动动作,并转化为刀片的移动轨迹。 6. **UI系统(User ...

    Python版水果忍者源程序

    【Python版水果忍者源程序】是一款基于Python编程语言开发的简单游戏,灵感来源于流行的手机游戏“水果忍者”。这个游戏的特色在于它利用了Python的Pygame库来创建图形用户界面,实现玩家与屏幕上的水果进行互动,...

    水果忍者HTML5网页版在线游戏 | 源码

    在水果忍者游戏中,Canvas被用来绘制水果、刀片、分数和其他视觉元素,并通过其API实现动态效果,如刀片切割水果的轨迹、水果爆炸特效等。 三、JavaScript游戏框架 为了简化HTML5游戏开发,通常会使用游戏框架。...

    JS版水果忍者

    《JS版水果忍者》是一款基于JavaScript编程语言开发的在线休闲游戏,深受喜爱游戏的用户欢迎。这款游戏在网页上即可运行,无需下载安装,为玩家提供了便捷的游戏体验。通过JavaScript技术,开发者能够实现动态的水果...

    Unity3D版水果忍者

    本项目“Unity3D版水果忍者”就是一个典型的利用Unity进行手机游戏开发的实例,它将帮助我们深入了解Unity在2D游戏开发中的应用,以及如何通过Unity3D制作出具有高度互动性和趣味性的游戏。 一、Unity基础 在开始...

    scratch水果忍者完整游戏代码

    完整代码中包含了水果忍者的所有素材,代码非常完整包含游戏的三种模式。

    水果忍者HTML5+JS源码

    虽然水果忍者官方并没有推出网页版,但网上已有很多仿制品了 (大多由Flash制作)。而今天要介绍的则是一个由 HTML5+Javascript 技术编写的“水果忍者”,和之前介绍过的HTML5版本的割绳子、宝石迷阵一样,你完全不...

    Kinect模拟水果忍者

    《Kinect模拟水果忍者》是一款利用微软的Kinect设备,通过C#编程语言实现的在个人电脑(PC)上玩“水果忍者”的应用程序。这个项目不仅展示了Kinect的体感交互技术,还体现了C#在游戏开发中的应用。 首先,Kinect是...

    国外的fruit ninja 水果忍者 项目

    在“水果忍者”项目中,Unity的2D功能被充分利用,用于创建游戏中的水果、刀具以及各种特效。 二、游戏对象与组件 在Unity中,游戏世界是由一个个游戏对象(GameObject)组成的,每个对象都可以附加一个或多个组件...

    模仿水果忍者代码

    总的来说,模仿《水果忍者》代码是一个涵盖游戏设计、动画制作、事件处理、物理模拟等多个方面的综合性实践,通过这个项目,开发者不仅可以掌握Cocos2d的基本用法,还能对2D游戏开发有更深入的理解。而实际的代码...

    js 水果忍者源码

    《JS实现的“水果忍者”游戏解析》 在编程世界中,JavaScript(简称JS)是一种广泛应用于网页和网络应用开发的脚本语言,尤其在前端领域占据着主导地位。而“水果忍者”作为一款备受欢迎的休闲游戏,其通过简单的...

    水果忍者网页版,js+css+html

    水果忍者网页版,js+css+html 《水果忍者》当人们打开游戏的时候,看到水果图标很自然就会去点击,但是会看到手指划过的提示,于是就会很自然的采用划过的手势去点击图标,并且会把这种交互方式延续到游戏中。

    水果忍者java版

    《水果忍者Java版》是一款基于Java编程语言开发的经典休闲游戏,它的设计灵感来源于流行的同名手机游戏。在这个版本中,开发者充分利用了Java语言的特性,使得代码具有良好的可读性和学习价值,对于想要深入理解Java...

    火影忍者鼠标指针

    《火影忍者鼠标指针》是一套专为火影忍者爱好者设计的个性化鼠标指针,它将经典的动漫元素融入到电脑操作中,为用户的桌面体验增添了一份独特的趣味性。这一主题通常包括一系列与火影忍者角色或标志相关的指针形状,...

    水果忍者html5源代码

    利用CSS3的动画和过渡效果,可以实现流畅的界面切换和元素动态变换,如刀片划过屏幕的轨迹、水果爆炸的特效等。 总的来说,"水果忍者HTML5源代码"展示了如何利用HTML5、JavaScript、Canvas、Web Storage以及Audio ...

    UNITY3D水果忍者游戏源代码程序

    《Unity3D水果忍者游戏源代码解析》 Unity3D是一款强大的跨平台游戏开发引擎,广泛应用于2D和3D游戏制作。本资源提供的"UNITY3D水果忍者游戏源代码程序"是基于Unity3D开发的一款经典游戏——水果忍者的源代码,非常...

    C#版Kinect水果忍者

    在这个C#版的水果忍者游戏中,Coding4Fun可能被用来实现游戏中的特效,如水果被切开后的爆炸效果,或者是玩家得分的动态展示。 游戏的核心逻辑在于手势识别。Kinect通过捕捉玩家的手部运动,将其转化为数字信号,...

Global site tag (gtag.js) - Google Analytics