[AS2] 按鈕複製產生影片實體_可拖曳_碰撞偵測
這個問題來自於知識+
http://tw.knowledge.yahoo.com/question/question?qid=1009111009903
程式機制在於,按下按鈕可以複製元件庫中的特定元件到舞台上,並以亂數產生X,Y座標,作為其位置.
所複製出來的實體,可以被拖曳到舞台上的垃圾桶實體,做碰撞偵測.
碰撞到了會產生音效,被拖曳實體會隱藏不見.
SWF預覽......
1. 主場景上佈署--> 複製按鈕duplicate_btn, 和垃圾桶trashCan實體
2.元件庫擺兩段音效WAV-->POP.WAV和ARCHER1.WAV ; 及被複製的實體star, 都設好連結識別名稱
3.第一影格AS2
//
var i:Number = 0;
var tmpX:Number;
var tmpY:Number;
//
this.attachMovie("star", "star", getNextHighestDepth(), {_x:-30, _y:-30});
//
duplicate_btn.onRelease = function() {
i++;
//
tmpX = Math.floor(Math.random()*(Stage.width+1));
tmpY = Math.floor(Math.random()*(Stage.height+1));
//
var myStar:MovieClip = new MovieClip();
//
myStar=star.duplicateMovieClip("star"+i, getNextHighestDepth(), {_x:tmpX, _y:tmpY});
trace(i+" "+tmpX+" "+tmpY+" "+_root["star"+i]+" "+myStar);
var mySound:Sound=new Sound();
mySound.attachSound("POP.WAV");
mySound.start();
//
myStar.onPress=function(){
this.startDrag();
}
myStar.onRelease=function(){
this.stopDrag();
if(trashCan.hitTest(this)){
var mySound:Sound=new Sound();
mySound.attachSound("ARCHER1.WAV");
mySound.start();
this._visible=false;
}
}
};
2009年12月24日 星期四
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言