2011-12-18 2 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, а имя класса -« ball ». И мгновенное имя кнопки: bButton.» Я не знаю, если бы вы были ошеломлены, вы создали все в ActionScript. Кашель cuogh * домашнее задание *, кашель кашель;) – Frank

ответ

2

Используйте два направления глобальных переменных и скорость.

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

Вместо предоставления myBall.x- = 20;

Давать myBall.x + = (Направление * скорость);

В функции обработки нажмите на кнопку

Дайте направление * = -1;

Вы также можете изменить скорость следующим образом.