J'ai des devoirs pour mes cours de programmation. Ma tâche est de créer un jeu de tir ballon. J'ai fait tout sur mon chemin, les ballons sont en train de naître, les contre-travaux. Mais je ne peux pas les faire bouger vers le haut, je sais comment bouger = y ++. C'est mon problème, je ne peux pas savoir où et comment. Code ci-dessous:Action Script 3 déplacer des objets par x, y
import flash.events.MouseEvent;
import flash.events.Event;
var c = 0;
circle.addEventListener(MouseEvent.MOUSE_DOWN, handlerMouseDown);
circle.addEventListener(MouseEvent.MOUSE_UP, handlerMouseUp);
function handlerMouseDown(event:MouseEvent):void{
circle.startDrag();
}
function handlerMouseUp(event:MouseEvent):void{
circle.stopDrag();
var i:int;
for (i=numChildren-1;i>=0;i--)
if (getChildAt(i) is MyRectangle){
if (circle.hitTestObject(getChildAt(i))){
removeChildAt(i);
c++;
score.text =c;
}
}
}
var moveUp:Boolean = true;
var b:Boolean = false;
var t1 = 1000;
var t2 = 1002;
var myTimer:Timer = new Timer(t1);
myTimer.addEventListener(TimerEvent.TIMER, runMany);
myTimer.start();
function runMany(event:TimerEvent):void {
b = true;
t1+=50;
}
var myTimer2:Timer = new Timer(t2);
myTimer2.addEventListener(TimerEvent.TIMER, runMany2);
myTimer2.start();
function runMany2(event:TimerEvent):void {
b = false;
t2 -=50;
}
addEventListener(Event.ENTER_FRAME, handlerEnterFrame);
function handlerEnterFrame(event:Event):void{
var rect:MyRectangle = new MyRectangle();
addChildAt(rect,0);
if(b){
rect.x = int(Math.random()*width);
rect.y = int(Math.random()*height)
}
}
circle.addEventListener(Event.ENTER_FRAME, handlerEnterFrame2);
function handlerEnterFrame2(event:Event):void{
Mouse.hide();
circle.startDrag(true);
}
Vous avez besoin d'un tableau contenant tous vos ballons, de sorte que vous pouvez appliquer des changements dans chacune de leurs propriétés y, de sorte qu'ils semblent flotter vers le haut. Vous avez besoin d'un tableau pour que tous les ballons puissent flotter vers le haut en même temps. – Alex
Vos gestionnaires ENTER_FRAME ne sont pas à leur place. Le premier engendre MyRectangle à l'écran. La deuxième commence à glisser. Ce n'est normalement pas fait à chaque image. Apparition de l'objet en fonction de certaines conditions (par exemple, le dernier ballon a sauté) et faites glisser lorsque le bouton gauche de la souris est enfoncé. Le gestionnaire EnterFrame est pour la mise à jour des coordonnées. – alxx
Ouais je l'ai trouvé aussi, corrigé. ok je l'ai fait, juste comme AlexW a dit - je les ai mis en rangée et puis pour chaque mouvement. Thx – Raimonds