Sto lavorando su una sorta di editor di livelli, ma non sono abbastanza sicuro di come voglio gestire i due diversi stati: lo stato dell'editor e lo stato del giocatore.
In questo primo stato gli elementi del gioco possono essere spostati e le tessere possono essere disegnate.
Nel secondo stato gli elementi del gioco ricevono i loro corpi fisici e il giocatore può essere spostato usando la tastiera.
Ora quello che mi piacerebbe sapere è quale sarebbe il modo migliore per strutturare questi stati. La maggior parte dei miei oggetti si comporta diversamente a seconda dello stato in cui si trova il gioco.
Un modo per affrontarlo sarebbe dare a tutti due versioni dell'aggiornamento e metodi di disegno. Un updateEditor e updatePlayer per esempio.
Un altro modo sarebbe avere una classe base per un elemento di gioco, e derivare un EditorGameElement da PlayerGameElement da esso, ma credo che sarebbe un po 'eccessivo, oltre al fatto che non saprei come funzionerebbe dal momento che avrei due oggetti che ereditano da un singolo oggetto.
Quali altri modi ci sono per gestire una struttura come questa?