2011-12-18 78 views
0

好的讓我說清楚。我只是出於興趣。這不是一項家庭作業。我這樣做是因爲我有興趣編寫ActionScript。我看到一個男人的網站做一些令人驚歎的事情,所以我試圖複製,我想這樣做:ActionScript 3.0更改方向

哦,順便說一句,你需要做一個符號,需要導出的ActionScript和類名稱是「球」。而按鈕即時名稱是:bButton。所以這是我迄今爲止編寫的腳本。

var boundaryRight:Number = stage.stageWidth; 
var boundaryLeft:Number = 0; 
var balls:Array; 
var reverseRight:Number = 0; 
var reverseLeft:Number = stage.stageWidth; 

init(); 

function init(){ 
    balls = new Array(); 
    for(var i:Number = 0; i<10; i++){ 
     var myBall:ball = new ball(); 
     myBall.x=(Math.random()*boundaryRight); 
     myBall.y=50+i*40; 
     addChild(myBall); 
     balls.push(myBall); 
    } 
} 

addEventListener(Event.ENTER_FRAME,moveBall); 

function moveBall(e:Event){ 
    for(var i:Number = 0;i<10;i++){ 
     var myBall:ball = balls[i]; 
     myBall.x-=20; 
     if(myBall.x<boundaryLeft){ 
      myBall.x=boundaryRight; 
     } 
    } 
} 

正如你所看到的那樣,代碼使多個球左轉,並且一遍又一遍循環。所以這就是我想要做的。我想製作一個按鈕,當我點擊按鈕時,它會像點擊一樣改變方向,並將方向改變爲向右。我再次點擊它,它會再次離開。我該如何編寫代碼?

+0

」哦,順便說一句,你需要做一個符號,需要導出的ActionScript和類名是「球」,而按鈕的即時名稱是:bButton。「我不知道,如果你非常熱衷,你已經在動作中創造了一切。咳嗽cuogh *家庭作業*,咳嗽咳嗽;) – Frank 2011-12-18 20:51:38

回答

2

使用兩個全局變量的方向和速度。

var direction:Number = 1; var speed:Number = 20;

而不是給myBall.x- = 20;

Give myBall.x + =(direction * speed);

在按鈕

的點擊處理函數給出方向* = -1;

您也可以像這樣改變速度。 「