Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15

Discussione: Rilevamento collisioni

  1. #1
    Utente di HTML.it L'avatar di Niniane
    Registrato dal
    May 2004
    Messaggi
    236

    Rilevamento collisioni

    Ciao a tutti e bentornati ai vacanzieri...

    Festeggio il mio primo post in questo forum!!!

    Premesso che sono una principiante assoluta, non ho assolutamente nozioni di programmazione e sto masticando un pò di scripting per la prima volta con questo lavoro...ho bisogno di aiuto con le collisioni.
    Spiego:
    sto realizzando un gioco didattico.
    All'interno c'è una parte arcade dove un motorino corre sulla strada e deve evitare ostacoli tipo buche e macchie d'olio nonché, naturalmente, evitare di scontrarsi con le macchinine.
    Buche, macchie d'olio e macchinine sono singole istanze di mc, non ho usato il duplicateMovieClip in quanto non necessario (almeno credo...) che appaiono sullo stage in posizione random.
    Nel codice del motorino ho inserito lo script per rilevare la collisione tra il motorino e gli ostacoli, se la collisione avviene deve partire l'animazione del motorino che si schianta.
    Questa animazione si trova all'interno dell'mc del motorino stesso a partire dal secondo frame.
    Come potete immaginare...NON FUNZIONAAAAAAAAAAAAAA!!!!!!!!!! Scusate
    l'urlaccio....e se continuo così presto verranno rilevate delle forti collisioni tra la mia testa e il monitor....

    Il codice che ho inserito nell'mc del motorino è il seguente:

    onClipEvent(enterFrame){
    if (Key.isDown(Key.RIGHT)) {
    if (this._x<scrollx) {
    this._x+=moveSpeed;
    } else {
    scrollStart=true;
    if (this.hitTest(_root.car)) {
    this.gotoAndPlay( 2 );
    }
    }
    } //else if (Key.isDown(Key.LEFT)) {
    //this._x-=moveSpeed;
    //}

    if (Key.isDown(Key.DOWN)) {
    this._y+=moveSpeed;
    } else if (Key.isDown(Key.UP)) {
    this._y-=moveSpeed;
    }
    }

    "car" è il nome d'istanza delle macchinine...qualcuno mi sà spiegare cosa non và???
    In questo codice ho fatto un tentativo usando di far rilevare la collisione tra il motorino e le macchine ma devo far funzionare stà cosa non solo con le macchine ma anche con altri elementi...

    Altra questione: gli elementi che vengono posizionati in random sullo stage spesso mi si sovrappongono, come posso fare per evitare che questo succeda?

    Grazie e ciao.

  2. #2
    per quanto riguarda l'hitTest... primo di tutto perchè lo metti nell'else del Key.Right? così fa il controllo solo quando NON stai premendo quel tasto... e non ha senso...

    punto secondo, in actionscript i nomi di istanza sono univoci... se chiami tutte le macchinine "car" non va + un bel niente

    chiamale car1, car2 ...carN

    comincia a sistemare queste cose poi ne riparliamo

    ciauz
    "La consapevolezza di Case suddivisa come perle di mercurio. La sua visione era sferica, come se una singola retina rivestisse la superficie interna di un globo che conteneva tutte le cose, se tutte le cose si potevano contare." —Neuromante, William Gibson (1984)

  3. #3
    Utente di HTML.it L'avatar di Niniane
    Registrato dal
    May 2004
    Messaggi
    236
    Quanto alla posizione del codice è quello che succede quando procedi alla cieca nelle paludi della programmazione coatta...

    In effetti mi era venuto il dubbio sui nomi di istanze univoci e a quanto pare il dubbio era corretto.
    Ti ringrazio per le osservazioni, provo a fare queste modifiche e a vedere cosa succede.

    Ciao e buona giornata!

  4. #4
    Originariamente inviato da Niniane
    Quanto alla posizione del codice è quello che succede quando procedi alla cieca nelle paludi della programmazione coatta...
    vedo che abbiamo una poetessa fra noi... questa me la segno che merita
    "La consapevolezza di Case suddivisa come perle di mercurio. La sua visione era sferica, come se una singola retina rivestisse la superficie interna di un globo che conteneva tutte le cose, se tutte le cose si potevano contare." —Neuromante, William Gibson (1984)

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    4

    Oggetti

    Uhm.. ma non sarebbe più comodo far fare il controllo agli "ostacoli"?
    Poi chiamarebbero una funzione del motorino che lancia il "capottamento".
    --
    Contro la stupidità umana neanche gli Dei hanno successo

  6. #6
    avresti una marea di enterFRame invece che un solo enterFrame che fa un ciclo for su tutti

    detto così sembra uguale, ma è + performante con un unico enterFrame
    "La consapevolezza di Case suddivisa come perle di mercurio. La sua visione era sferica, come se una singola retina rivestisse la superficie interna di un globo che conteneva tutte le cose, se tutte le cose si potevano contare." —Neuromante, William Gibson (1984)

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2004
    Messaggi
    4
    Intendo.. io abitualmente programmo in java.. e con la OOP potresti fare una classe "ostacolo" generica e tutti i clip "ostacolo" erediterebbero il metodo.

    Lo scrivi una volta sola il metodo.

    Mi sembra sia possibile con l'actionsctipt
    --
    Contro la stupidità umana neanche gli Dei hanno successo

  8. #8
    Utente di HTML.it L'avatar di Niniane
    Registrato dal
    May 2004
    Messaggi
    236
    Ieri poi ho disertato quindi il mio motorino è+ ancora lì che aspetta...mò ci provo.

    Ti ringrazio per il "poetessa"....in effetti me la cavo piuttosto bene con le parole uno dei motivi per cui ogni giorno da un mese a questa parte mi chiedo che cavolo c'entro io con 'sta roba ma tant'è!
    Che s'addafà per guadagnasse la pagnotta

    Have a nice day!

  9. #9

  10. #10
    Utente di HTML.it L'avatar di Niniane
    Registrato dal
    May 2004
    Messaggi
    236
    Grazie della segnalazione whitefox...sto usando anch'io i tutorial di Flashkit ma questo non lo avevo beccato.

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.