- Home
- Categorie
- Digital Marketing
- Grafica, Visual Design & UX
- Cambiare lo stage (scena) in flash
-
Cambiare lo stage (scena) in flash
Sono di nuovo io, questo è il listato del codice con il quale muovo una jeep (ship) con fari annessi, spara proiettili(il codice è in un altro fotogramma), quando colpisce una "buca" appare del fumo sul coffano etc. etc. Giorni fa' ho chiesto un consiglio su come cambiare scena, in un batibaleno mi è stata data la risposta che considero corretta( quella contrassegnata dall'icona) ma nonostante mille variazioni, la jeep se ne va tranquillamente olte lo stage senza cambiare niente. potete aiutarmi??
spero di ricevere una risposta altrettanto veloce come la volta scorsa.onClipEvent(load) {
//_root.startLevel();
for(i=0;i<5;i++){
// DUPLICA LE BUCHE
_root.buca.duplicateMovieClip("buca"+i,i);
// GLI DA' UNA POSIZIONE CASUALE
_root["buca"+i]._x = int(Math.random()*550);
_root["buca"+i]._y = int(Math.random()*400);// DICHIARA LE VARIABILI thrust = 3; //SLITTAMENTO LATERALE decay = .12; maxSpeed = 6;
}
}onClipEvent (enterFrame) {
//SENZA QUESTA STRINGA I PROIETTILI RIMANGONO FERMI IMPORTANTISSIMO!! _root.bulletsMove(); // CONTROLLA LE COLLISIONI _root.checkHits(); //COLLISIONI TRA MOONBUGGY E LE FOSSE //CREA UN "CICLO" for(i=1;i<25;i++) //controlla se la jeep colpisce la buca if (_root["buca"+i].hitTest(_root["ship"])) { //AZIONE QUANDO C'E LA COLLISIONE _root.ship.gotoAndPlay("fumo2");
}
for(i=0;i<25;i++)
if (_root["ship"._x] <= 0); { gotoAndStop(Scena2);
}
//DICE: CON QUESTO CLIP(SHIP) COLLEGA IL CLIP FAR E FALLO MUOVERE INSIEME
with (_root.fari) {
_x = this._x+3;
_y = this._y+3;
_rotation = this._rotation+90;
}// rotate right or left if (Key.isDown(Key.RIGHT)) { _rotation += 10; } if (Key.isDown(Key.LEFT)) { _rotation -= 10; } if (Key.isDown(Key.UP)) { // calculate speed and trajectory based on rotation xSpeed += thrust*Math.sin(_rotation*(Math.PI/180)); ySpeed += thrust*Math.cos(_rotation*(Math.PI/180)); } ////SENZA DI QUESTE STRINGHE IL MOONBUGGY SI MUOVE E NON SI FERMA PIU' else { xSpeed *= decay; ySpeed *= decay;
}
// MANTIENE LA STESSA VELOCITA' ALTRIMENTI SCHIZZA VIA speed = Math.sqrt((xSpeed*xSpeed)+(ySpeed*ySpeed)); if (speed>maxSpeed) { xSpeed *= maxSpeed/speed; ySpeed *= maxSpeed/speed; } // muove il moonbuggy nella direzione scelta _y -= ySpeed; _x += xSpeed;
}
-
Speriamo che ora funzioni. Il libro che dici forse è "Programmare Flash 5 con Action Script" di Gary Rosenzweig. Molto bello pratico e con tantissimo codice. L'ho acquistato l'anno scorso.