转载自: http://lufy.netne.net/lufylegend-js.php?v=api
lufylegend库件的使用方法的使用非常简单:
1,从http://lufy.netne.net/lufylegend-js.php下载库件最新版。
压缩包内包含lufylegend-x.x.x.js和lufylegend-x.x.x.min.js两个版本,后者是去除了回车和空格的压缩版本。
2,在html中将库件引入。
3,调用init函数,初始化库件。
举例:
函数原型:init(speed,divid,width,height,completeFunc,type)
参数:
speed:游戏速度设定
divid:传入一个div的id,库件进行初始化的时候,会自动将canvas加入到此div内部
width:游戏界面宽
height:游戏界面高
completeFunc:游戏初始化后,调用此函数
type:当为null时,会先进行页面的onload操作,如果你的init函数调用是在onload之后,那么需要将此参数设为LEvent.INIT 举例:
同上
函数原型:LGlobal.setDebug(value)
参数:
value:debug参数,此参数设为true的时候,进入debug状态,设为false时,结束debug状态
函数原型:trace(...param)
作用:此函数用于测试,会将传入的字符串输出到游戏界面的下方,只有在debug模式下有效,否则调用无效,参数可以是任意个,输出的时候每个参数的输出为一行
LGlobal.divideCoordinate 数组拆分
函数原型:LGlobal.divideCoordinate(w,h,row,col)
作用:此函数用于将一个矩形按要求分割成一个2维数组
参数:
w:矩形宽
h:矩形高
row:行数
col:列数
函数原型:base(derive,baseSprite,baseArgs)
作用:因为javascript没有继承,此函数用于实现继承
参数:
derive:需要继承的类
baseSprite:被继承的类
baseArgs:传给被继承类的参数
举例:
function Myclass(){
base(this,LSprite,[]);
}
因为LSprite的构造器不需要参数,所以最后的参数传了一个空数组
函数原型:addChild(DisplayObject)
作用:lufylegend库件实现了游戏的层结构,此函数将对象加入到游戏最底层画板上
参数:
DisplayObject:对象
举例:
var backLayer = LSprite();
addChild(backLayer);
函数原型:removeChild(DisplayObject)
作用:将对象移除游戏最底层画板
参数:
DisplayObject:对象
函数原型:load(src,loadtype)
作用:用来读取图片等
参数:
src:读取图片的路径
loadtype:目前只有bitmapData可用
举例:
构造器:LBitmapData(image,x,y,width,height)
作用:用来保存Image对象
参数:
image:Image对象
x:Image可是范围x坐标
y:Image可是范围y坐标
width:Image可是范围宽
height:Image可是范围高
可用属性:
type:类型x
函数原型:setCoordinate(x,y)
作用:用来改变LBitmapData内Image的可是范围的坐标
参数:
x:Image可是范围x坐标
y:Image可是范围y坐标
函数原型:setProperties(x,y,width,height)
作用:用来改变LBitmapData内Image的可是范围的坐标
参数:
x:Image可是范围x坐标
y:Image可是范围y坐标
width:Image可是范围宽
height:Image可是范围高
构造器:LBitmap(bitmapdata)
作用:用来将LBitmapData对象里的Image显示到页面上
参数:
bitmapdata:LBitmapData对象
可用属性:
type:类型x
x:坐标x
y:坐标y
scaleX:X坐标方向上的缩放比例
scaleY:Y坐标方向上的缩放比例
alpha:透明度
rotate:旋转角度
visible:是否可见,当设为false的时候,该LBitmap对象不可视,且内部所有处理都将停止
函数原型:getWidth()
返回值:LBitmap对象的宽度
函数原型:getHeight()
返回值:LBitmap对象的高度
构造器:LSprite()
作用:LSprite 类是基本显示列表构造块,一个可显示图形并且也可包含子项的显示列表节点。
可用属性:
type:类型x
x:坐标x
y:坐标y
scaleX:X坐标方向上的缩放比例
scaleY:Y坐标方向上的缩放比例
alpha:透明度
rotate:旋转角度
visible:是否可见,当设为false的时候,该LBitmap对象不可视,且内部所有处理都将停止
childList:该对象的所有子项
graphics:指定属于此 LSprite 的 Graphics 对象,在此 LSprite 中可执行矢量绘图命令。
box2dBody:结合box2dweb后,创建的body2d
mask:遮罩
函数原型:addChild(DisplayObject)
作用:将一个 可视对象添加到该实例中。
参数:
DisplayObject:添加的可视对象
函数原型:getChildAt(index)
作用:得到该实例的一个子对象。
参数:
index:子对象的索引
返回值:获取到的子对象
函数原型:removeChildAt(index)
作用:移除该实例的一个子对象。
参数:
index:移除子对象的索引
函数原型:removeAllChild()
作用:移除该实例的所有子对象。
函数原型:addEventListener(type,listener)
作用:注册事件侦听器对象,以使侦听器能够接收事件通知。
参数:
type:事件的类型。
listener:处理事件的侦听器函数。
函数原型:removeEventListener(type,listener)
作用:删除侦听器。如果没有向 EventDispatcher 对象注册任何匹配的侦听器,则对此方法的调用没有任何效果。
参数:
type:事件的类型。
listener:要删除的侦听器对象。
函数原型:LSprite.die()
作用:移除该实例的所有事件。
函数原型:addBodyCircle(radius,cx,cy,type,density,friction,restitution)
作用:Box2d相关,设定圆形body。
参数:
radius:半径
cx:圆心坐标x
cy:圆心坐标y
type:是否动态(1或0)
density:密度
friction:摩擦
restitution:弹性
返回值:返回一个box2d创建的body
函数原型:addBodyPolygon(w,h,type,density,friction,restitution)
作用:Box2d相关,设定矩形body。
参数:
w:矩形宽
h:矩形高
type:是否动态(1或0)
density:密度
friction:摩擦
restitution:弹性
返回值:返回一个box2d创建的body
函数原型:addBodyVertices(vertices,cx,cy,type,density,friction,restitution)
作用:Box2d相关,已定点数组形式设定任意形状的body。
参数:
vertices:定点数组
cx:中心坐标x
cy:中心坐标y
type:是否动态(1或0)
density:密度
friction:摩擦
restitution:弹性
返回值:返回一个box2d创建的body
函数原型:clearBody()
作用:Box2d相关,移除已设定的body。
函数原型:setBodyMouseJoint(value)
作用:Box2d相关,跟随鼠标拖动。
函数原型:setRotate(angle)
作用:Box2d相关,旋转
参数:
angle:旋转角度
构造器:LGraphics()
作用:LGraphics 类包含一组可用来创建矢量形状的方法。
函数原型:drawLine(thickness,lineColor,pointArray)
作用:画一条线。
参数:
thickness:线粗
lineColor:线颜色
pointArray:[起始坐标x,起始坐标y,结束坐标x,结束坐标y]
函数原型:drawArc(thickness,lineColor,pointArray,isfill,color)
作用:画一段圆弧。
参数:
thickness:边缘线粗
lineColor:边缘线颜色
pointArray:数组元素依次为arc的所有参数,[圆心坐标x,圆心坐标y,半径r,起始角度sAngle,结束角度eAngle,顺逆时针aClockwise]
isfill:是否实心图形
color:实心颜色
函数原型:drawRect(thickness,lineColor,pointArray,isfill,color)
作用:画一个矩形。
参数:
thickness:边缘线粗
lineColor:边缘线颜色
pointArray:[起始坐标x,起始坐标y,矩形宽width,矩形高height]
isfill:是否实心图形
color:实心颜色
函数原型:drawVertices(thickness,lineColor,vertices,isfill,color)
作用:根据数组定点画任意图形。
参数:
thickness:边缘线粗
lineColor:边缘线颜色
vertices:[[x,y],[x1,y1],[x2,y2]...]顶点个数必须大于3
isfill:是否实心图形
color:实心颜色
函数原型:add(fun)
作用:在LGraphics中调用原绘图方法。
参数:
fun:自定义函数
举例:
构造器:LButton(up,over)
作用:继承自LSprite类的一个子类,用来生成按钮
参数:
up:按钮的弹起状态(可以是LSprite类型或者LBitmap类型)
over:按钮的按下状态(可以是LSprite类型或者LBitmap类型)
举例:
构造器:LTextField()
作用:LTextField 类用于创建显示对象以显示和输入文本。
可用属性:
type:类型x
x:坐标x
y:坐标y
text:作为文本字段中当前文本的字符串。
font:文字的格式
size:文字大小
color:文字颜色
visible:是否可见,当设为false的时候,该LBitmap对象不可视,且内部所有处理都将停止
weight:文字粗细
stroke:文字的stroke属性,当为true时,可以设置lineWidth线宽
lineWidth:文字线宽,当stroke属性为true时有效
textAlign:文字左右对齐方式。
textBaseline:文字上下对齐方式
函数原型:setType(type)
作用:设置LTextField类型。
参数:
type:当设置为LTextFieldType.INPUT的时候,LTextField会变为可输入状态
注意:LTextField的可输入状态起始就是html的text文本框
函数原型:getWidth()
作用:得到当前文本的宽度
函数原型:wind(listener)
作用:打字机状态逐字显示当前文本
参数:
listener:文字逐字显示结束后调用此函数
构造器:LAnimation(layer,data,list)
作用:实现简单动画的播放,原理是将一张大的图片,按照保存有坐标的二维数组保存的坐标来逐个显示。
参数:
layer:LSprite显示层
data:LBitmapData对象
list:装有坐标的二维数组
可用属性:
rowIndex:当前小图片行序号
colIndex:当前小图片列序号
bitmap:封装了LBitmapData对象的LBitmap对象
imageArray:坐标数组。
函数原型:setAction(rowIndex,colIndex,mode,isMirror)
作用:设置播放动画的行号和列号。
参数:
rowIndex:播放动画的行号
colIndex:播放动画的列号
mode:(1,0,-1)分别代表(正序播放,静止,倒序播放)
isMirror:Boolean型,当设定为true的时候,图片显示为水平翻转后的镜像
函数原型:getAction()
作用:得到当前动画播放的行号和列号返回值:结果数组[行号,列号]
LAnimation.onframe
函数原型:onframe()
作用:按照坐标数组逐次播放一行图片
函数原型:addEventListener(type,listener)
作用:注册事件侦听器对象,以使侦听器能够接收事件通知。
参数:
type:事件的类型,目前只支持LEvent.COMPLETE事件,表示一行图片组播放完成。
listener:处理事件的侦听器函数。
函数原型:removeEventListener(type,listener)
作用:删除侦听器。如果没有向 EventDispatcher 对象注册任何匹配的侦听器,则对此方法的调用没有任何效果。
参数:
type:事件的类型,目前只支持LEvent.COMPLETE事件。
listener:要删除的侦听器对象。
函数原型:LTweenLite.to($target,$duration,$vars)
作用:对LSprite或LBitmap对象进行缓动操作。
参数:
$target:进行缓动的对象
$duration:缓动执行的时间。
$vars:Object对象,通过属性值,来存储各种属性参数用于缓动。
$vars可用属性:
x:x坐标
y:y坐标
delay:延时时间
rotate:旋转角度
alpha:透明度
scaleX:x轴缩放
scaleY:y轴缩放
ease:缓动函数
onUpdate:缓动过程中调用的函数
onComplete:缓动结束后调用的函数
ease缓动函数:
o.easeIn,o.easeOut,o.easeInOut
其中的o可以是Quad,Cubic,Quart,Quint,Sine,Strong,Expo,Circ,Elastic,Back,Bounce;
构造器:LBox2d()
作用:在lufylegend库件里使用box2dweb,在使用box2d相关属性的时候,必须加入下面一行代码,将box2dweb实例化。
LGlobal.box2d = new LBox2d();
函数原型:LBox2d.setEvent(type_value,fun_value)
作用:为box2d加载事件监听器。
参数:
type_value:事件的类型,可以使用下面四个事件类型。
LEvent.BEGIN_CONTACT:刚刚碰撞开始的时候会触发这个函数
LEvent.END_CONTACT:碰撞结束的时候会触发这个函数
LEvent.POST_SOLVE:碰撞后会处理这个函数
LEvent.PRE_SOLVE:碰撞前即将碰撞的时候
fun_value:侦听函数。
函数原型:LBox2d.setDistanceJoint(bodyA,bodyB)
作用:距离链接。
举例:
http://lufy.netne.net/lufylegend-js/lufylegend-1.4/box2d/sample01/index9.html
函数原型:LBox2d.setRevoluteJoint(bodyA,bodyB,angle,motor)
作用:锚点链接。
举例:
http://lufy.netne.net/lufylegend-js/lufylegend-1.4/box2d/sample01/index9.html
函数原型:LBox2d.setPulleyJoint(bodyA,bodyB,verticesA,verticesB,ratio)
作用:滑轮链接。
举例:
http://lufy.netne.net/lufylegend-js/lufylegend-1.4/box2d/sample01/index9.html
函数原型:LBox2d.setPrismaticJoint(bodyA,bodyB,vec,translation,motor)
作用:活塞链接。
举例:
http://lufy.netne.net/lufylegend-js/lufylegend-1.4/box2d/sample01/index9.html
函数原型:LBox2d.setGearJoint(bodyA,bodyB,ratio,revoluteJoint,prismaticJoint)
作用:齿轮链接。
举例:
http://lufy.netne.net/lufylegend-js/lufylegend-1.4/box2d/sample01/index9.html
函数原型:LBox2d.setLineJoint(bodyA,bodyB,vec,translation,motor)
作用:悬挂链接。
举例:
http://lufy.netne.net/lufylegend-js/lufylegend-1.4/box2d/sample01/index9.html
函数原型:LBox2d.setWeldJoint(bodyA,bodyB)
作用:焊接。
举例:
http://lufy.netne.net/lufylegend-js/lufylegend-1.4/box2d/sample01/index9.html
联系客服