Ciao a tutti, per curiosita' e per gioco volevo cimentarmi nel costruire un semplice gioco in flash, e su internet ho trovato un tutorial.
Il gioco consiste in una semplice movieclip(nave) che spara ad dei movieclip(nemico).
Il problema che seguendo il tutorial alla perfezione non riesco a far partire la pallottola dalla nave.
Ora posto il codice, ringraziandovi in anticipo:
Codice del movieclip nave:
Codice nemico:codice:onClipEvent(load){ speed=10; //velocita navicella _root.palla._visible=false; //nasconde la pallottola counter=0; //numero spari utile per duplicare movieclip } onClipEvent (enterFrame) { speed=10; if (Key.isDown(Key.RIGHT)) { this._x+=speed; } else if (Key.isDown(Key.LEFT)) { this._x-=speed; } if (Key.isDown(Key.DOWN)) { this._y+=speed; } else if (Key.isDown(Key.UP)) { this._y-=speed; } else if (Key.isDown(key.SPACE)) { counter++; _root.palla.duplicateMovieClip( "palla"+counter,counter ); _root["palla"+counter]._visible=true; } }
Codice palla che sarebbe la pallottola:codice:onClipEvent (enterFrame) { this._y+=enemySpeed; if (this._y>=335) { //supera la dim massima del mio stage di esempio reset(); } } onClipEvent (load) { function reset(){ this._x=random(270); //270 è la dim massima del mio stage di esempio this._y=random(10); enemySpeed=random(4)+1; } reset(); }
Ed infine il codice associato al frame dove raggruppa tutti i movieclip:codice:onClipEvent (load) { speed=10; //velocita della pallottola this._y=_root.nave._y-30; //-30 perchè allineo la pallottola alla punta della nave this._x=_root.nave._x; } onClipEvent (enterFrame) { this._y-=speed; //fa muovere verso l'alto if (this._y<=0){ //appena arrriva alla fine dello schermo this.removeMovieClip(); //toglilo dallo schermo } //collisione col nemico for (i=1; i<=_root.numEnemy; i++){ if (this.hitTest( _root["nemico"+i])){ //collisione col nemico //_root.punteggio+=100; //punteggio //_root["enemy"+i].gotoAndPlay( 2 ); //fa vedere la distruzione removemovieclip(_root["nemico"+i]); //elimima da stage } } }
Non sparacodice:numEnemy=10; for (i=1; i<=numEnemy; i++){ nemico.duplicateMovieClip( "nemico"+i, i ); }
Grazie.

					
					
					
						
  Rispondi quotando