LGlobal Class
グローバルクラス
Item Index
Methods
- divideCoordinate static
- hitPolygon static
- hitTestArc static
- hitTestPolygon static
- hitTestPolygonArc static
- hitTestRect static
- resize static
- screen static
- setDebug static
- setFrameRate static
Properties
- FULL_SCREEN static
- LGlobal.align static
- LGlobal.android static
- LGlobal.aspectRatio static
- LGlobal.backgroundColor static
- LGlobal.canTouch static
- LGlobal.canvas static
- LGlobal.canvasObj static
- LGlobal.destroy static
- LGlobal.height static
- LGlobal.ios static
- LGlobal.keepClear static
- LGlobal.mobile static
- LGlobal.os static
- LGlobal.preventDefault static
- LGlobal.stage static
- LGlobal.stageScale static
- LGlobal.webAudio static
- LGlobal.width static
Methods
divideCoordinate
-
width
-
height
-
row
-
col
幅と高さによって,指定する行数と列数の2次元の配列を戻す。
Parameters:
-
width
Float幅
-
height
Float高さ
-
row
Int行数
-
col
Int列数
Returns:
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
-
verticesA
-
x
-
y
点と多角形の衝突を検出する
Parameters:
-
verticesA
Array多角形の頂点の配列[[x1,y1],[x2,y2],[x3,y3],......]
-
x
Float点の座標x
-
y
Float点の座標y
Returns:
当たったら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
円として、二つのオブジェクトの衝突を検出する
オブジェクトを回転させた場合は,この関数は使えなくなります,LSpriteクラスのhitTestObjectを使ってください
Parameters:
-
objA
LDisplayObjectオブジェクトA
-
objB
LDisplayObjectオブジェクトB
-
objAR
Float新しい半径
-
objBR
Float新しい半径
Returns:
当たったらtrueを返す
Example:
LGlobal.setDebug(true);
var rectLayer1 = new LSprite();
rectLayer1.graphics.drawArc(1,"#000000",[100,100,100,0,2*Math.PI]);
addChild(rectLayer1);
var rectLayer2 = new LSprite();
rectLayer2.alpha = 0.5;
rectLayer2.x = 150;
rectLayer2.graphics.drawArc(1,"#000000",[100,100,100,0,2*Math.PI]);
addChild(rectLayer2);
var rectLayer3 = new LSprite();
rectLayer3.alpha = 0.5;
rectLayer3.x = 300;
rectLayer3.graphics.drawArc(1,"#000000",[100,100,100,0,2*Math.PI]);
addChild(rectLayer3);
//[100,100,100,0,2*Math.PI] vs [100,100,100,0,2*Math.PI]
trace(LGlobal.hitTestArc(rectLayer1,rectLayer2));//out:true
//[115,115,70,0,2*Math.PI] vs [115,115,70,0,2*Math.PI]
trace(LGlobal.hitTestArc(rectLayer2,rectLayer3,70,70));//out:false
hitTestPolygon
-
verticesA
-
verticesB
多角形と多角形の衝突を検出する
Parameters:
-
verticesA
Array多角形Aの頂点の配列[[x1,y1],[x2,y2],[x3,y3],......]
-
verticesB
Array多角形Bの頂点の配列[[x1,y1],[x2,y2],[x3,y3],......]
Returns:
当たったら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
多角形と円の衝突を検出する
Parameters:
-
vertices
Array多角形の頂点の配列[[x1,y1],[x2,y2],[x3,y3],......]
-
circle
Array円[中心の座標x,中心の座標y,半径,半径*半径]
Returns:
当たったら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
矩形として、二つのオブジェクトの衝突を検出する、hitTest と同等。
オブジェクトを回転させた場合は,この関数は使えなくなります,LSpriteクラスのhitTestObjectを使ってください
Parameters:
-
objA
LDisplayObjectオブジェクトA
-
objB
LDisplayObjectオブジェクトB
-
vecA
ArrayオブジェクトAの範囲を再設定する配列 [width,height]
-
vecB
ArrayオブジェクトBの範囲を再設定する配列 [width,height]
Returns:
当たったら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
スクリーンをリサイズする
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
フルスクリーン表示または画面サイズを拡大縮小する
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
デバッグモードを起動するかどうか。
*ゲームをリリースする時、デバッグモードを閉じないと行けないです。
Parameters:
-
value
Booleanデバッグモードを起動するかどうか
Example:
LInit(50, "legend", 800, 480, main);
function main () {
LGlobal.setDebug(true);
trace("test01", "test02", "test03");
}
setFrameRate
-
speed
スクリーンをリサイズする
Parameters:
-
speed
Floatゲームスピード(单位:ミリ秒), FPS = 1000 / speed。
Example:
LGlobal.setFrameRate(1000/60);
Properties
FULL_SCREEN
String
public
static
[静的] フルスクリーンの値を定義します。
使い方はLGlobal.screenの関数を参考してください。
LGlobal.align
String
public
static
ブラウザーでのステージの配置を指定する StageAlign クラスの値です。
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
現在のブラウザはAndroidかどうか。
LGlobal.aspectRatio
String
public
static
指定された縦横比になるように、ステージの方向を設定します。下記の値を設定することができます。
LANDSCAPE、PORTRAIT
LGlobal.backgroundColor
String
public
static
ゲーム画面の背景色です。
LGlobal.canTouch
Boolean
public
static
LGlobal.mobile と同等。
LGlobal.canvas
CanvasRenderingContext2D
public
static
context タグ。
LGlobal.canvasObj
HTML elements
public
static
canvas タグ。
LGlobal.destroy
Boolean
public
static
LDisplayObjectオブジェクトをremoveされた時、オブジェクトをクリアするかどうか。
Default: true
LGlobal.height
Int
public
static
ゲーム初期化する時の画面の高さ、canvasの高さと同じです。
LGlobal.ios
Boolean
public
static
現在のブラウザはIOSかどうか。
LGlobal.keepClear
Boolean
public
static
フレームごとにcanvasをクリアするかどうか。
もしゲーム背景が透明ではなければ、canvasをクリアしないほうがパフォーマンスがいいですから、LGlobal.keepClear=falseに設定してください。
Default: true
LGlobal.mobile
Boolean
public
static
現在のブラウザは、モバイルブラウザであるかどうか。LGlobal.canTouch と同等。
LGlobal.os
String
public
static
現在のブラウザ環境。下記の一つになります。
OS_IPHONE,OS_IPOD,OS_IPAD,OS_ANDROID,OS_PC。
LGlobal.preventDefault
Boolean
public
static
モバイルページのスクロールを禁止するかどうか設定する。ディフォルトは true。(スクロール禁止)
LGlobal.stage
LSprite
public
static
一つのLSPriteオブジェクト、全てのDisplayObjectオブジェクトのベース容器です。
機能を拡張しなければ,直接にLGlobal.stageを操作しないほうがいいです。
LGlobal.stageScale
String
public
static
使用する拡大 / 縮小モードを指定する 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.webAudio
Boolean
public
static
Web Audio Apiで音声を再生できる場合、Web Audio Apiを利用するかどうか。
Default: true
LGlobal.width
Int
public
static
ゲーム初期化する時の画面の幅、canvasの幅と同じです。