[搬運]彈幕藝術(shù)聯(lián)合文檔-速查手冊
轉(zhuǎn)自:biliscript-syndicate.github.io
標(biāo)題:速查手冊

API

基本操作
clear():void
clone(object:*):*
(Utils.clone) 有些(TODO)類型無法正確復(fù)制foreach(object:Object, iterator:Function):void
(Utils.foreach) 只能訪問公開可遍歷屬性。例foreach({1:2, 3:4}, function(key, value) {trace(key, value);});
load(library:String, onload:Function):void
(libBitmap
已內(nèi)嵌)。只在加載成功時調(diào)用onload。例load('libBitmap', function(){trace('ok', Bitmap);});
trace(… args):void
例trace(1, 2, [3,4], '5 6', trace);
$G._get(name:String):*
($G._, Global._get, Global._)$G._set(name:String, value:*):void
(Global._set)ScriptManager.clearEl():void
停止并清除$.createComment()、$.createShape()、$.createCanvas()、$.createButton()、Bitmap.createBitmap()產(chǎn)生的運動元件。ScriptManager.clearTimer():void
清除只由interval()產(chǎn)生的計時器。不清除timer()。ScriptManager.clearTrigger():void
清除只由Player.keyTrigger()產(chǎn)生的鍵盤事件偵聽。不清除Player.commentTrigger()。

Player信息
Player.videoWidth:uint, Player.videoHeight:uint [只讀]
視頻等比例尺寸$.width:uint, $.height:uint [只讀]
(Player.width:uint, Player.height:uint) 播放窗口尺寸;包括黑邊$.stageWidth:uint, $.stageHeight:uint [只讀]
Flash界面尺寸$.screenWidth:uint, $.screenHeight:uint [只讀]
($.fullScreenWidth:uint, $.fullScreenHeight:uint) 屏幕尺寸Player.commentList:Array [只讀]
一組CommentData。Player.state:String [只讀]
stop
,?pause
,?playing
Player.time:Number [只讀]
毫秒

時間
clearTimeout(timeout_id:uint)
中止由timeout_id指定的延時操作。getTimer():int
毫秒interval(exec:Function, delay_msec:Number = 1000, repeatCount:uint = 1):Timer
(Utils.interval) 重復(fù)定時執(zhí)行。repeatCount為0則無限重復(fù)。delay推薦最小20毫秒(再小影響性能)。timer(exec:Function, delay_msec:Number = 1000):uint
(Utils.delay) 一次延時執(zhí)行。delay最小1毫秒。返回timeout_id。

Player控制
Player.commentTrigger(onComment:Function, timeout_msec:Number = 1000):uint
返回timeout_id。不能用clearTimeout或者ScriptManager清除。 例Player.commentTrigger(function(c){trace(c, c.text);}, 1 << 30);
Player.createSound(sample:String, onload:Function = null):ScriptSound
目前已知sample:btnover
。ScriptSound.play(startTime:Number = 0, loops:int = 0):void.?查看樣例Player.jump(av:String, page:int = 1, newwindow:Boolean = false):void
Player.keyTrigger(onKey:Function, timeout_msec:Number = 1000, up:Boolean = false):uint
timeout最大2147483647,小于0不工作。返回timeout_id。查看樣例。Player.pause():void
Player.play():void
Player.refreshRate:int
不工作;暫不修復(fù)。$.frameRate:Number
大于0小于120,超過60一般無意義。Player.seek(time_msec:Number):void
只能seek到關(guān)鍵幀。Player.setMask(mask:DisplayObject):void
即player.parent.mask = mask;

數(shù)據(jù)轉(zhuǎn)換
parseInt(str:String, radix:uint = 0):Number
parseFloat(str:String):Number
$.toIntVector(ints:Array):Vector.<int>
$.toUintVector(uints:Array):Vector.<uint>
$.toNumberVector(numbers:Array):Vector.<Number>
String.fromCharCode(… charCodes):String
Unicode碼,0到65535。例trace(String.fromCharCode(27979, 35797, 10, 9731, 9773));
Utils.distance(x1:Number, y1:Number, x2:Number, y2:Number):Number
即Math.sqrt((x1 - x2)*(x1 - x2) + (y1 - y2)*(y1 - y2))
Utils.formatTimes(second:Number):String
時間格式mm:ss;例trace(Utils.formatTimes(Player.time / 1000));
Utils.hue(value:int):int
最小0最大359

Utils.rand(min:Number, max:Number):Number
整數(shù),即Math.floor(min + Math.random() * (max - min))
Utils.rgb(r:int, g:int, b:int):int
耗時是?r << 16 | g << 8 | b
?的2倍。

圖形元件
以下通用參數(shù)(附默認(rèn)值):{x:0, y:0, z:null, scale:1, alpha:1,
parent:$.root, lifeTime:3, motion:{}}
$.createButton(params:Object):CommentButton
{text:"Button", width:60, height:30, onclick:undefined}
$.createCanvas(params:Object):CommentCanvas
$.createComment(text:String, params:Object):CommentField
{color:0xffffff, font:"黑體", fontsize:25}
$.createShape(params:Object):CommentShape
$.createTextField():CommentField
不初始化$.createTextFormat(…):TextFormat

幾何
詳細(xì)參數(shù)見鏈接的Adobe手冊頁面。
$.createColorTransform(…):ColorTransform
$.createGradientBox(…):Matrix
即(new Matrix()).createGradientBox(...)
。用于beginGradientFill()和lineGradientStyle()。$.createMatrix(…):Matrix
$.createMatrix3D(…):Matrix3D
PerspectiveProjection
clone($.root.transform.perspectiveProjection)
$.createPoint(x:Number = 0, y:Number = 0):Point
Rectangle
$.root.getRect(null)
或Bitmap.createRectangle(x, y, w, h)
$.createVector3D(…):Vector3D
$.pointTowards(…):Matrix3D
$.projectVector(…):Vector3D
$.projectVectors(…):void

Bitmap庫
Bitmap.createBitmap(params:Object):CommentBitmap
{bitmapData:undefined, pixelSnapping:"auto", smothing:undefined, scale:1}
Bitmap.createBitmapData(width:int, height:int, transparent:Boolean = true, fillColor:uint = 0xFFFFFFFF):BitmapData
Bitmap.createParticle(params:Object):CommentBitmap
TODOBitmap.createRectangle(x:Number, y:Number, width:Number, height:Number):Rectangle

庫
Tween
(org.libspark.betweenas3::BetweenAS3)Math

濾鏡
無法獲得ShaderFilter。詳細(xì)參數(shù)見Adobe手冊頁面。
$.createBevelFilter(…):BevelFilter
$.createBlurFilter(…):BlurFilter
$.createColorMatrixFilter(…):ColorMatrixFilter
$.createConvolutionFilter(…):ConvolutionFilter
$.createDisplacementMapFilter(…):DisplacementMapFilter
$.createDropShadowFilter(…):DropShadowFilter
$.createGlowFilter(…):GlowFilter
$.createGradientBevelFilter(…):GradientBevelFilter
$.createGradientGlowFilter(…):GradientGlowFilter

內(nèi)部
$.root
ScriptManager.pushEl(param1:IMotionElement):void
ScriptManager.popEl(param1:IMotionElement):void
ScriptManager.pushTimer(param1:Timer):void
ScriptManager.popTimer(param1:Timer):void

類定義

CommentData
blocked:Boolean
blockType:uint
border:Boolean
color:uint
credit:Boolean
danmuId:uint [只讀]
date:String
deleted:Boolean
id:uint
mode:uint
msg:String
live:Boolean
locked:Boolean
on:Boolean
pool:int
preview:Boolean
reported:Boolean
size:int
stime:Number [只讀] 秒
text:String [只讀]
type:String
userId:String [只讀]
例Player.commentList.forEach(function(e) {trace(e.stime, e.text);});

Comment元件通用
motionManager:MotionManager [只讀]
initStyle(params:Object):void
CommentBitmap除外remove():void

CommentBitmap →?Bitmap
motionManager:MotionManager [讀寫]
setParent(parent:*):void
即parent.addChild(this)

CommentButton →?Sprite
text:String
fillColors:Array
fillAlphas:Array

CommentCanvas →?Sprite

CommentField →?TextField
align:String
bold:Boolean
font:String
fontsize:uint
color:String
htmlText:String
過濾所有html

CommentShape →?Shape

MotionManager
running:Boolean [只讀]
reset():void
play():void
stop():void
forcasting(param1:Number):Boolean
setPlayTime(param1:Number):void
initTween(param1:Object, param2:Boolean = false):String
initTweenGroup(motionGroup:Array, lifeTime:Number = NaN):void
setCompleteListener(param1:Function):void

樣板代碼

Player.keyTrigger

Bitmap庫加載
(Bitmap庫已內(nèi)嵌無需再加載,以下僅作示例。)

Player.createSound

遍歷顯示列表

鼠標(biāo)定位
trace($.root.mouseX, $.root.mouseY);
或者:

檢測seek

已知問題
(TODO: 擴(kuò)充重現(xiàn)方法和結(jié)果)
安全考慮,TextField.htmlText被去掉所有html。
安全考慮,.loaderInfo屬性被禁止訪問。
UI控制考慮,.root、.parent、.stage屬性被禁止訪問。
Bitmap.createBitmap的smoothing參數(shù)被錯別字成smothing。
$.createComment、$.createShape、$.createCanvas、$.createButton會給進(jìn)行DisplayObject.z = null導(dǎo)致產(chǎn)生一個Matrix3D導(dǎo)致圖形模糊。解決方法
displayObject.transform.matrix3D = null;
。flash.display::Graphics里面沒有cubicCurveTo方法,這是在FP11.0的特性(2011年10月)。
無法修復(fù)。站方player.swf開發(fā)環(huán)境Flex SDK 4.1尚未支持加入此特性。近期無升級計劃。字符串中的
/n
會在提交后被轉(zhuǎn)義成換行。[]
訪問符語法問題,無法嵌套a = [0,1]; b = [0,1]; trace(a[0], b[a[0]]);
調(diào)用類靜態(tài)方法。
String.fromCharCode()
可以這樣實現(xiàn):''.constructor.fromCharCode()
。


clearTimeout:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/utils/package.html#clearTimeout%28%29
getTimer:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/utils/package.html#getTimer%28%29
Timer:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/utils/Timer.html

play:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/media/Sound.html#play%28%29

parseInt:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/package.html#parseInt%28%29
parseFloat:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/packate.html#parseFloat%28%29
Vector:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/Vector.html
fromCharCode:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/String.html#fromCharCode%28%29

TextFormat:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/text/TextFormat.html

ColorTransform:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/geom/ColorTransform.html
createGradientBox:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/geom/Matrix.html#createGradientBox%28%29
Matrix:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/geom/Matrix.html
Matrix3D:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/geom/Matrix3D.html
PerspectiveProjection:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/geom/PerspectiveProjection.html
Point:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/geom/Point.html
Vector3D:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/geom/Vector3D.html
pointTowards:
http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/geom/Utils3D.html#pointTowards%28%29
projectVector:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/geom/Utils3D.html#projectVector%28%29
projectVectors:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/geom/Utils3D.html#projectVectors%28%29

BitmapData:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/BitmapData.html
Rectangle:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/geom/Rectangle.html

Tween:http://www.libspark.org/wiki/BetweenAS3/en
Math:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/Math.html

BevelFilter:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/filters/BevelFilter.html
BlurFilter:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/filters/BlurFilter.html
ColorMatrixFilter:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/filters/ColorMatrixFilter.html
ConvolutionFilter:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/filters/ConvolutionFilter.html
DisplacementMapFilter:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/filters/DisplacementMapFilter.html
DropShadowFilter:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/filters/DropShadowFilter.html
GlowFilter:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/filters/GlowFilter.html
GradientBevelFilter:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/filters/GradientBevelFilter.html
GradientGlowFilter:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/filters/GradientGlowFilter.html

Bitmap:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/Bitmap.html

Sprite:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/Sprite.html

TextField:
http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/text/TextField.html
align:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/text/TextFormat.html#align
bold:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/text/TextFormat.html#bold
font:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/text/TextFormat.html#font
fontsize:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/text/TextFormat.html#size
color:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/text/TextFormat.html#color
htmlText:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/text/TextField.html#htmlText

Shape:http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/Shape.html
