API Docs for: 1.10.1 最后更新日期:2016年03月28日
Google搜索   
Show:

LGlobal Class

Defined in: utils/LGlobal.js:1

Available since 1.0.0

全局类。

Methods

divideCoordinate

(
  • width
  • height
  • row
  • col
)
Array public static

Defined in utils/LGlobal.js:817

Available since 1.3.1

将传入的宽和高,按照行数和列数进行拆分计算,会得到一个2维数组。

Parameters:

  • width Float

  • height Float

  • row Int

    行数

  • col Int

    列数

Returns:

Array:

2维数组

Example:

LInit(50, "legend", 800, 480, main);
function main () {
    var loader = new LLoader();
    loader.addEventListener(LEvent.COMPLETE, loadBitmapdata); 
    loader.load("player.png", "bitmapData");
}
function loadBitmapdata(event){
    var backLayer = new LSprite();
    addChild(backLayer);
    var list = LGlobal.divideCoordinate(480,630,3,4);
    var data = new LBitmapData(event.target,0,0,120,210);
    player = new LAnimation(backLayer,data,list);
    backLayer.addEventListener(LEvent.ENTER_FRAME,onframe);
}
function onframe(){
    player.onframe();
}

hitPolygon

(
  • vertices
  • x
  • y
)
Boolean public static

Defined in utils/LGlobal.js:869

Available since 1.8.9

检测点是否在多边形内部

Parameters:

  • vertices Array

    多边形的顶点数组[[x1,y1],[x2,y2],[x3,y3],......]

  • x Float

    coordinate-x of point

  • y Float

    coordinate-y of point

Returns:

Boolean:

当たったらtrueを返す

Example:

LGlobal.setDebug(true);
var layer = new LSprite();
addChild(layer);
var vertices = [[50,100],[150,50],[100,150]];
layer.graphics.drawVertices(1,"#000000",vertices);
var point1 = [100,100];
layer.graphics.drawArc(1,"#000000",[point1[0],point1[1],2,0,2*Math.PI]);
var point2 = [50,200];
layer.graphics.drawArc(1,"#000000",[point2[0],point2[1],2,0,2*Math.PI]);
trace(LGlobal.hitPolygon(vertices,point1[0],point1[1]));//out:true
trace(LGlobal.hitPolygon(vertices,point2[0],point2[1]));//out:false

hitTestArc

(
  • objA
  • objB
  • objAR
  • objBR
)
Boolean public static

Defined in utils/LGlobal.js:1010

Available since 1.4.1

将两个对象看作圆来检测碰撞

如果对象发生旋转,则不能使用此方法进行碰撞检测,请使用LSprite类的hitTestObject

Parameters:

Returns:

Boolean:

当たったらtrueを返す

Example:

LGlobal.setDebug(true);
var arcLayer1 = new LSprite();
arcLayer1.graphics.drawArc(1,"#000000",[100,100,100,0,2*Math.PI]);
addChild(arcLayer1);
var arcLayer2 = new LSprite();
arcLayer2.alpha = 0.5;
arcLayer2.x = 150;
arcLayer2.graphics.drawArc(1,"#000000",[100,100,100,0,2*Math.PI]);
addChild(arcLayer2);
var arcLayer3 = new LSprite();
arcLayer3.alpha = 0.5;
arcLayer3.x = 300;
arcLayer3.graphics.drawArc(1,"#000000",[100,100,100,0,2*Math.PI]);
addChild(arcLayer3);
//[100,100,100,0,2*Math.PI] vs [100,100,100,0,2*Math.PI]
trace(LGlobal.hitTestArc(arcLayer1,arcLayer2));//out:true
//[115,115,70,0,2*Math.PI] vs [115,115,70,0,2*Math.PI]
trace(LGlobal.hitTestArc(arcLayer2,arcLayer3,70,70));//out:false

hitTestPolygon

(
  • verticesA
  • verticesB
)
Boolean public static

Defined in utils/LGlobal.js:916

Available since 1.9.0

检测多边形与多边形的碰撞

Parameters:

  • verticesA Array

    多边形A的顶点数组[[x1,y1],[x2,y2],[x3,y3],......]

  • verticesB Array

    多边形B的顶点数组[[x1,y1],[x2,y2],[x3,y3],......]

Returns:

Boolean:

当たったらtrueを返す

Example:

LGlobal.setDebug(true);
var layer = new LSprite();
addChild(layer);
var vertices = [[50,100],[150,50],[100,150]];
layer.graphics.drawVertices(1,"#000000",vertices);
var vertices1 = [[120,60],[250,150],[100,100]];
layer.graphics.drawVertices(1,"#000000",vertices1);
var vertices2 = [[70,200],[100,160],[200,300]];
layer.graphics.drawVertices(1,"#000000",vertices2);
trace(LGlobal.hitTestPolygon(vertices,vertices1));//out:true
trace(LGlobal.hitTestPolygon(vertices,vertices2));//out:false

hitTestPolygonArc

(
  • vertices
  • circle
)
Boolean public static

Defined in utils/LGlobal.js:963

Available since 1.9.0

检测一个多边形和一个圆的碰撞

Parameters:

  • vertices Array

    多边形的顶点数组[[x1,y1],[x2,y2],[x3,y3],......]

  • circle Array

    圆[中心坐标x,中心坐标y,半径,半径*半径]

Returns:

Boolean:

当たったらtrueを返す

Example:

LGlobal.setDebug(true);
var layer = new LSprite();
addChild(layer);
var vertices = [[50,100],[150,50],[100,150]];
layer.graphics.drawVertices(1,"#000000",vertices);
var circle1 = [170,100,50,2500];
layer.graphics.drawArc(1,"#000000",[circle1[0],circle1[1],circle1[2],0,2*Math.PI]);
var circle2 = [50,200,50,2500];
layer.graphics.drawArc(1,"#000000",[circle2[0],circle2[1],circle2[2],0,2*Math.PI]);
trace(LGlobal.hitTestPolygonArc(vertices,circle1));//out:true
trace(LGlobal.hitTestPolygonArc(vertices,circle2));//out:false

hitTestRect

(
  • objA
  • objB
  • vecA
  • vecB
)
Boolean public static

Defined in utils/LGlobal.js:1064

Available since 1.4.1

将两个对象看作矩形来检测碰撞,等同于 hitTest。

如果对象发生旋转,则不能使用此方法进行碰撞检测,请使用LSprite类的hitTestObject

Parameters:

  • objA LDisplayObject

    对象A

  • objB LDisplayObject

    对象B

  • vecA Array

    重新设置对象A的矩形范围 [width,height]

  • vecB Array

    重新设置对象B的矩形范围 [width,height]

Returns:

Boolean:

如果碰撞则返回true。

Example:

LGlobal.setDebug(true);
var rectLayer1 = new LSprite();
rectLayer1.graphics.drawRect(1,"#000000",[0,0,200,200],true,"#FF0000");
addChild(rectLayer1);
var rectLayer2 = new LSprite();
rectLayer2.alpha = 0.5;
rectLayer2.x = 150;
rectLayer2.graphics.drawRect(1,"#000000",[0,0,200,200],true,"#00FF00");
addChild(rectLayer2);
var rectLayer3 = new LSprite();
rectLayer3.alpha = 0.5;
rectLayer3.x = 300;
rectLayer3.graphics.drawRect(1,"#000000",[0,0,200,200],true,"#0000FF");
addChild(rectLayer3);
//[0,0,200,200] vs [0,0,200,200]
trace(LGlobal.hitTestRect(rectLayer1,rectLayer2));//out:true
//[30,0,140,200] vs [30,0,140,200]
trace(LGlobal.hitTestRect(rectLayer2,rectLayer3,[140,200],[140,200]));//out:false

resize

(
  • width
  • height
)
public static

Defined in utils/LGlobal.js:1159

Available since 1.9.0

将画面设置为指定大小

Parameters:

  • width Float

    指定宽度

  • height Float

    指定高度

Example:

LInit(1000/60, "legend", 240, 240, main);
function main () {
    LGlobal.resize(400,100);
    var loader = new LLoader();
    loader.addEventListener(LEvent.COMPLETE, loadBitmapdata); 
    loader.load("face.jpg", "bitmapData");
}
function loadBitmapdata (event) {
    var bitmapdata = new LBitmapData(event.target);  
    var bitmap = new LBitmap(bitmapdata);
    addChild(bitmap);
}

screen

(
  • value
)
public static

Defined in utils/LGlobal.js:1265

Available since 1.6.0

全画面显示或者设定画面大小的缩放比例值

Parameters:

  • value String | float

    全画面的静态值LGlobal.FULL_SCREEN 或者 画面大小的缩放比例值

Example:

LInit(1000/60, "legend", 240, 240, main);
function main () {
    LGlobal.stageScale = LStageScaleMode.SHOW_ALL;
    LGlobal.screen(LStage.FULL_SCREEN);
    //you can also use it like : LGlobal.screen(1.5);
    var loader = new LLoader();
    loader.addEventListener(LEvent.COMPLETE, loadBitmapdata); 
    loader.load("face.jpg", "bitmapData");
}
function loadBitmapdata (event) {
    var bitmapdata = new LBitmapData(event.target);  
    var bitmap = new LBitmap(bitmapdata);
    addChild(bitmap);
}

setDebug

(
  • value
)
public static

Defined in utils/LGlobal.js:297

Available since 1.4.0

设定是否开启测试模式。

*当游戏发布的时候,必须关闭测试模式。

Parameters:

  • value Boolean

    是否开启测试模式

Example:

LInit(50, "legend", 800, 480, main);
function main () {
    LGlobal.setDebug(true);
    trace("test01", "test02", "test03");
}    

setFrameRate

(
  • speed
)
public static

Defined in utils/LGlobal.js:1125

Available since 1.5.0

重新设定游戏速度

Parameters:

  • speed Int

    游戏速度,每次页面刷新间隔(单位毫秒), FPS = 1000 / speed。

Example:

LGlobal.setFrameRate(1000/60);

show

(
  • list
  • context2D
)
public static

Defined in utils/LGlobal.js:778

Available since 1.10.0

将传入的一组对象绘制到指定的CanvasRenderingContext2D对象上。

※该方法每调用一次,只绘制一次。

Parameters:

  • list Array

    要绘制的对象数组,数组中的对象必须是LDisplayObject对象

  • context2D CanvasRenderingContext2D

    通过canvas.getContext("2d")得到的对象

Example:

LInit(1000/60, "legend", 240, 240, main);
var myCanvas=document.getElementById("myCanvas");
var ctx=myCanvas.getContext("2d");
function main () {
    var loader = new LLoader();
    loader.addEventListener(LEvent.COMPLETE, loadBitmapdata); 
    loader.load("face.jpg", "bitmapData");
}
function loadBitmapdata(event){
    var bitmapdata = new LBitmapData(event.target); 
    var bitmap = new LBitmap(bitmapdata);
    addChild(bitmap);
    LGlobal.show([bitmap], ctx);
}

Properties

FULL_SCREEN

String public static

Defined in utils/LGlobal.js:11

Available since 1.6.0

[静态] 定义全屏的属性值。

用法请参照LGlobal.screen函数

LGlobal.align

String public static

Defined in utils/LGlobal.js:142

Available since 1.8.6

一个 LStageAlign 类中指定舞台在浏览器中的对齐方式的值。

Example:

LInit(50, "legend", 240, 240, main);
function main () {
    LGlobal.align = LStageAlign.BOTTOM_MIDDLE;
    LGlobal.stageScale = LStageScaleMode.SHOW_ALL;
    LSystem.screen(LStage.FULL_SCREEN);
    var loader = new LLoader();
    loader.addEventListener(LEvent.COMPLETE, loadBitmapdata); 
    loader.load("face.jpg", "bitmapData");
}
function loadBitmapdata (event) {
    var bitmapdata = new LBitmapData(event.target);  
    var bitmap = new LBitmap(bitmapdata);
    addChild(bitmap);
}

LGlobal.android

Boolean public static

Defined in utils/LGlobal.js:204

Available since 1.0.0

当前浏览器是否为Android。

LGlobal.aspectRatio

String public static

Defined in utils/LGlobal.js:23

Available since 1.8.1

将舞台设置成使用指定长宽比的方向。可以设置为下列值

LANDSCAPE、PORTRAIT。

LGlobal.backgroundColor

String public static

Defined in utils/LGlobal.js:214

Available since 1.7.7

游戏画面的背景颜色。

LGlobal.canTouch

Boolean public static

Defined in utils/LGlobal.js:176

Available since 1.0.0

等同于 LGlobal.mobile。

LGlobal.canvas

CanvasRenderingContext2D public static

Defined in utils/LGlobal.js:42

Available since 1.0.0

context 对象。

LGlobal.canvasObj

HTML elements public static

Defined in utils/LGlobal.js:33

Available since 1.8.1

canvas 标签。

LGlobal.destroy

Boolean public static

Defined in utils/LGlobal.js:223

Available since 1.7.7

LDisplayObject对象从舞台上被移除的时候,是否将这个对象整个清空。

Default: true

LGlobal.forceRefresh

Boolean public static

Defined in utils/LGlobal.js:233

Available since 1.9.1

强制将画面彻底刷新,如果游戏中没有背景,有些手机上清空画面时偶尔会留下残影,如果遇到情况,可以在清空画面时将此属性设置为true来强制刷新画面一次。

Default: false

LGlobal.height

Int public static

Defined in utils/LGlobal.js:81

Available since 1.0.0

游戏初始化时设定的画面的高,即canvas的高。

LGlobal.ios

Boolean public static

Defined in utils/LGlobal.js:195

Available since 1.0.0

当前浏览器是否为IOS。

LGlobal.keepClear

Boolean public static

Defined in utils/LGlobal.js:245

Available since 1.8.7

LDisplayObject对象从舞台上被移除的时候,是否将这个对象整个清空。

如果游戏不是透明背景的话,可以将LGlobal.keepClear的值设置为false来提高游戏效率。

Default: true

LGlobal.mobile

Boolean public static

Defined in utils/LGlobal.js:167

Available since 1.9.0

当前浏览器是否是移动浏览器。等同于 LGlobal.canTouch。

LGlobal.os

String public static

Defined in utils/LGlobal.js:185

Available since 1.0.0

当前浏览器环境。可以是下面中的一个

OS_IPHONE,OS_IPOD,OS_IPAD,OS_ANDROID,OS_PC。

LGlobal.preventDefault

Boolean public static

Defined in utils/LGlobal.js:103

Available since 1.3.1

如果事件对象的cancelable属性为true,则该方法可以取消事件的默认动作.但并不取消事件的冒泡行为。移动网页中用来禁止滚屏,默认为true(禁止),如果需要使用滚屏功能,则需要将其设置为fasle。

Default: true

LGlobal.stage

LSprite public static

Defined in utils/LGlobal.js:62

Available since 1.3.1

一个LSprite对象,所有的DisplayObject对象的最底层。

除非做功能扩展,否则不推荐直接将对象加载到LGlobal.stage上。

LGlobal.stageScale

String public static

Defined in utils/LGlobal.js:117

Available since 1.4.0

一个 LStageScaleMode 类中指定要使用哪种缩放模式的值。

Example:

LInit(50, "legend", 240, 240, main);
function main () {
    LGlobal.align = LStageAlign.BOTTOM_MIDDLE;
    LGlobal.stageScale = LStageScaleMode.SHOW_ALL;
    LSystem.screen(LStage.FULL_SCREEN);
    var loader = new LLoader();
    loader.addEventListener(LEvent.COMPLETE, loadBitmapdata); 
    loader.load("face.jpg", "bitmapData");
}
function loadBitmapdata (event) {
    var bitmapdata = new LBitmapData(event.target);  
    var bitmap = new LBitmap(bitmapdata);
    addChild(bitmap);
}

LGlobal.stopPropagation

Boolean public static

Defined in utils/LGlobal.js:93

Available since 1.9.8

该方法将停止事件的传播,阻止它被分派到其他 Document 节点。

Default: false

LGlobal.webAudio

Boolean public static

Defined in utils/LGlobal.js:51

Available since 1.0.0

当设备支持Web Audio Api的时候,是否使用Web Audio Api来播放音频。

Default: true

LGlobal.width

Int public static

Defined in utils/LGlobal.js:72

Available since 1.0.0

游戏初始化时设定的画面的宽,即canvas的宽。