快速业务通道

追踪效果实现方法1

作者 佚名技术 来源 服务器技术 浏览 发布时间 2012-07-13


Chaser 类: Chaser类实现了简单的追踪效果,使用这个类,用户可以大大简化各种追踪效果的实现。 Chaser的实例具有追踪其他mc的功能,可以追踪的属性如下: _x
_y
_xscale
_yscale
_width
_height
_rotation
_alpha
使用方法:将一个mc连接到xp.gameLib.chase.Chaser类或其子类,并设置onChase事件处理函数,用户在onChase函数中实现追踪的具体实现。 实现效果演示:
点击浏览该文件 源文件:
点击浏览该文件
此方法不同于Target类,它将功能实现写在chaser上面,使他可以追踪任何一个mc(也可以是其他对象,但主要是针对mc作的这个dd^^)。
Target类则是将功能实现在‘目标’上,使它可以被任何1个对象所追踪。 Top Features l 速度比较快,如果要更快,可以删除一些不必要得追踪属性 l 易扩展,继承Chaser类后可以在calculateChase方法中添加需要的追踪属性。 l 通用性。 l 性价比高。。功能要求中等的场合。譬如追踪导弹,有趣的拖动条等。 disAdv: l 追踪者必须是Chaser类或其子类,制约了其他的功能实现。 l 只能追踪特定的属性,不能对不同的对象选择不同的追踪属性,追踪的功能难以细分(下个dd解决这个问题,恩) l 其他的还在想。。。
类实现: /**
* @author xp@drmingdrmer
* Chaser implements chasing.

* By making an MC to be a Chaser instance.

* Chaser的实例具有追踪其他mc的功能,可以追踪的属性如下:
*
* _x
* _y
* _xscale
* _yscale
* _width
* _height
* _rotation
* _alpha
*
* 使用方法:将一个mc连接到xp.gameLib.chase.Chaser类或其子类,并设置onChase事件处理函数,用户在onChase函数中实现追踪的具体实现。

* Chaser类仅提供了简单的即时追踪效果.

* 不支持指定步长的追踪,或几何速率的追踪。用户可以在子类中扩展并实现这些功能。
*/
class xp.gameLib.chase.Chaser extends xp.system.MovieClipAdv{

/**
* 触发器
*/
static var impulser:Object;


/**
* default properties list in which the property will be chase.

* 默认的属性列表。
*/
static var defaultPropList:Object={
_x:1,
_y:1,
_xscale:1,
_yscale:1,
_width:1,
_height:1,
_rotation:1,
_alpha:1
};


/**
* properties list,use ’addProperty’,’delProperty’ to add or remove properties from chasing。
* @see addProperty
* @see delProperty
* 属性列表,设置那些属性可以被追踪到。当Chaser实例被实例化后,就具有了默认的属性列表。
*/
var propList:Object;



/**
* mc list to which this Chaser chases.
* mc列表,记录那些mc被这个Chaser实例追踪了
*/
private var mlist:Array;


/**
* total weight value.
* 总的权重。
*/
var totalWeight:Number;


/**
* constructor

* 监听impulser的callChase事件,初始化成员变量。
*/

public function Chaser() {
//for sub class create a ’constructor’ property.
//function implemented in MovieClipAdv.
this["createConstructor"](arguments);


if (impulser==undefined){
impulser=createImpulser();
}
impulser.addListener(t

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号