Quella IF serve (servirebbe) a controllare se l'asterisco sta per toccare i bordi della mappa.
movimentoPersonaggio() l'ho richiamata nella stessa funzione per un semplice motivo: ripetere tutto.
Visto che quando l'asterisco sta per toccare i bordi l'IF dovrebbe bloccarlo, lo stesso asterisco non si dovrebbe effettivamente muovere, perché verrebbe richiamata la funzione movimentoPersonaggio, cioè dove richiede l'input del tasto per muoverlo.
Ma, ovviamente, non funziona.