Avrei un dilemma sulla questione delle collisioni e della velocità dell'oggetto in in Action Script 2.
Per far muovere un oggetto ho usato un espressione tipo:
this._x=this._x+30
Dunque, l'oggetto si muove di 30 (credo pixel) ogni frame.
Mettiamo poi che ci sia un oggetto, un muro oltre il quale l'oggetto non dovrebbe andare..
Il muro è spesso 5 pixel.
Ora, se la x dell'oggetto che si muove viene aggiornata e spostata di 30 pixel, nel caso in cui l'oggetto in questione si trovi d'avanti al muro, salterebbe di 30 pixel senza
impattare con il muro e dunque, attraversandolo!
Mi sono spiegato?
Vi faccio uno schemino per farvi capire al volo:
Come posso evitare quest problema?
Ovviamente se la speedx fosse =1 non accadrebbe..ma non posso farlo andare così piano!
Si può spostare l'oggetto in altro modo?
Re: ACTION SCRIPT collisione e velocità oggetto...
In realtà oltre che a controllare la posizione del pg, dovresti
tenere in considerazione anche la direzione verso cui si dirige.
A questo punto tu hai un segmento direzionato nello stesso modo
del pg e di lunghezza di 30px, che è il tuo fattore di spostamento.
Se questo segmento interseca il muro, in quel verso, vuol dire che
hai colliso.
Quando si verifica questo prendi il tuo pg e lo piazzi di fronte al
muro in modo che non venga erroneamente disegnato dalla parte
opposta.
Un pò di algebra dei vettori ti può aiutare a realizzare il tutto.