private void Update() { if (statoCorrente != statoPrecedente) { if (statoPrecedente != null) { statoPrecedente.EsecuzioneTerminata(); } statoCorrente.PreparoEsecuzione(); statoPrecedente = statoCorrente; } statoCorrente.Esecuzione(); if (obiettivoInVista) { if (!inZonaAttacco) { statoCorrente = inseguimento; } /* else * statoCorrente = attacco;*///levare il commento quando qualcuno implementa lo stato di attacco } else { statoCorrente = pattugliamento; } }