Sto creando un gioco di piattaforma in JavaScript utilizzando canvas
che è interamente basato su tile. Qual è il metodo migliore per archiviare i blocchi di oggetti nel gioco (muri, pavimenti, oggetti)? Il fatto è che ogni tessera può essere distrutta o creata.Struttura dati per livelli nei giochi
Attualmente ho un array 2D, quindi sono in grado di verificare rapidamente se un articolo è in una posizione specifica di X & Y. Il problema con questo è quando l'utente si sposta e la mappa deve scorrere, ho bisogno di riassegnare ogni blocco. E cosa succede quando l'articolo è x = 0
? Non posso usare indici negativi.
Preferisco l'analogo a scorrimento come a una piastrella alla volta. Inoltre pianifico di generare mappe in modo casuale man mano che l'utente si sposta e se non è stato generato in precedenza. Quindi, una volta generata qualcosa, dovrebbe rimanere così per sempre.
Un altro punto che dovrei menzionare è che sarà anche multiplayer. Quindi lo smantellamento dello schermo è una grande idea finché i dati nella cache non si sporcano e devono essere aggiornati dal database. Gah sono così nuovo per tutto questo; sembra impossibile, qualsiasi aiuto è molto apprezzato.
è la vostra piattaforma infinitamente largo sulla asse x? Perché hai un problema con x = 0? Dovresti solo bloccare lo scorrimento a sinistra in quel caso? –
Scopri http://www.youtube.com/watch?v=_RRnyChxijA – Sharun
è infinito. L'utente dovrebbe essere in grado di tornare indietro a sinistra con le stesse tessere. – Louis