Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    3

    hitTest con mc generati ?

    salve a tutti
    sto tentando di creare un giochino in flash in stile Space Invaders (l'idea è un'astronave che deve slalomare tra gli asteroidi o spararci contro distruggendoli).
    Gli asteroidi vengono generati con una _x random ad intervalli di uno al secondo, assegnando nomi di istanza " 'asteroid'+ n" mentre, premendo la barrra spaziatrice, viene creato un mc " 'projectile' + x" nel punto in cui si trova l'astronave.
    ora, per la collisione degli asteroidi con l'astronave ho risolto inserendo all'interno dell'mc di base asteroid l'hitTest sull'mc astronave,che è fisso, e qui funziona.

    Il problema si presenta invece nella collisione tra i proiettili e gli asteroidi, essendo entrambi generati con actionscript e nomi di istanze sempre diversi, il mio problema è quindi cosa inserire nell'hitTest(nomeistanza) per fare in modo che qualsiasi collisione di ogni asteroide con un proiettile attivi l'evento successivo...

    Grazie per l'attenzione

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    3
    nessuna idea ?

  3. #3
    postresti scrivere i nomi dei clip dentro un array e poi fargli fare un ciclo s l'hitest coincede con uno dei nomi scritti nel vettore.

    Ho fatto una cosa simil qui

    http://www.rempox.it/forum/actionscr...collision.html

    Ciao

  4. #4
    Ho fatto una provetta.

    codice:
    import mx.transitions.Tween;
    import mx.transitions.easing.*;
    
    nomi_Array = new Array()
    for(I=1;I<11;I++){
    	var mc:MovieClip=this.attachMovie("box", "box"+I, I)
    	nomi_Array[I] = "box"+I
    	mc._x = random(540)
    	mc._y = -20
    	var TWY:Tween = new Tween(mc,"_y", Strong.easeOut,-20, 490, 30, true)
    	/* qusto stoo funziona facendo conollare ad ogni asteoide
    	mc.onEnterFrame=function(){
    		if(this.hitTest(nave)){trace("nave beccata")}
    	}*/
    }
    
    i=1;
    	collision=false
    	chk=false
    nave.onEnterFrame=function(){
    
    			 for(i=1;i<=nomi_Array.length-1;i++){
    				 trace("sto controllando")
                   if (this.hitTest(_root["box"+i])) { 
    						collision = true;
    						chk=true
    							trace("nave beccata")
    
    				} 
    	          }
    
    }

  5. #5
    http://www.rempox.it/forum/extra/mar...rzianetti.html

    mi volevo accertare di non averti detto una bufala. Ovvio mancano un sacco di controlli ma con le fecce ti sposti e con la barra spaziatrice spari.

    sogente
    http://www.rempox.it/forum/extra/mar...arzianetti.fla


    Ciao

  6. #6
    certo un sacrificio estremo per la CPU se non ottimizzato.

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    3
    wow, quante informazioni !

    grazie mille per l'aiuto, adesso vedo di lavorarci un po' sopra e farlo funzionare...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.