AS3 0學習空間

2021-08-31 19:35:07 字數 1712 閱讀 3318

1、mc.gotoandplay(math.random()*10>>0);

math.random()*10 取 10以內帶小數的隨機數。

>> 是移位符號 >>0 的功能去除小數點後的數!!(這個方法的確高明)

所以 math.random()*10>>0 整句話的意思是 獲取10以內的隨機整數!

-------------------------------------------

推廣的想

用在載入進度條中,trace((已經載入的位元組數/總位元組數}*100>>0+"%"), 的確很方便啊!

2、if(i&1){}

i&1 的意思就是判斷,i是奇數還是偶數;

如果是奇數 i 的2進製表示最後一位是1, i&1=1 真;

偶數 i 的2進製表示最後一位是0, i&1=0 假。

3、var a:array = new array();

for (var i:int=0; i<10; a.push(i++))

此迴圈 執行後 a陣列的值為 0,1,2,3,4,5,6,7,8,9.

乙個簡化程式的方法 能用上的地方有很多。。具體地方具體分析。。

4、var temp:number=mou***;

stage.addeventlistener(mouseevent.mouse_move,movehandler);

function movehandler(e:mouseevent):void

這段**功能是獲取滑鼠移動距離 d。用在滑鼠拖拽窗體或者滑鼠拖拽遊戲上,真是不要太爽!!!**完全可以改為:

mouse.hide();

var temp:number=mou***;

stage.addeventlistener(mouseevent.mouse_move,movehandler);

function movehandler(e:mouseevent):void

這樣,spritemouse 這個影片剪輯就成了乙個滑鼠。

5、function fn1 ()

function fn2 ()

([fn1,fn2][math.random()*2>>0])();

這個是隨機執行函式的命令,挺有意思的。

function fn1 ()

function fn2 ()

function fn3 ()

function fn4 ()

([fn1,fn2,fn3,fn4][math.random()*4>>0])();

6、var a:int=3;

if (a>0&&(trace("a is positive number"),a&1))

trace("a is positive odd number");

先執行a>0 真,再執行 trace("a is positive number"),最後判斷a是不是奇數。這裡的逗號表示式是從左向右執行的。

此用法主要用來判斷有沒有執行某處語句吧。

7、var a:int=13;

var b:int=-12;

if((a^b)>0||(b*=-1,a>10))

trace(b);

又是乙個逗號表示式:

a^b = -7

b*=-1 b=12

a>10

輸出 b=12

此用法看的莫名其妙,真不知道應該用在什麼地方。

as3 0深度拷貝 新的記憶體空間

as3中很容易使用 flash.utils.bytearray 類來進行物件的深拷貝,深拷貝不只拷貝引用,而是拷貝整個相關物件,例如乙個array裡包含乙個object引用,這個object也將被拷貝 注意 這個方法通常用來拷貝一般的object 拷貝函式 function clone source...

AS3 0的聲音合成

以前,在flex2剛發布時,有人說as3.0能夠編輯聲音,方法是用bytearray與soundmixer。但被證明這是假的,soundmixer能讀不能寫!但現在新的方法出現了!把聲音用swf的格式寫到bytearray裡,再用loader讀進來,最後把它變為sound!實現這個的是andre m...

AS3 0遊戲開發(一)

最近一直研究flash as3.0的開發技術,深感用as3.0開發2d遊戲的方便與巧妙。我以前一直用ogre,cegui等引擎製作3d遊戲的,由於網頁遊戲的興起,我也來學習2d網頁遊戲的開發。開發一款2d遊戲,我認為有三種主流途徑。第一,使用傳統的方法,利用vc 開發,這種方法非常普遍而且成果很多,...