Creare un nuovo progetto Java chiamato Gioco.
All'interno della cartella src, creare un package chiamato application.
Definire le classi astratte, le interfacce e le classi concrete ritenute necessarie a rappresentare i seguenti concetti del gioco:
All'interno del gioco ci possono essere degli oggetti di diverso tipo, ma ogni oggetto deve avere una posizione nel gioco (rappresentata con delle coordinate intere) ed un nome associato.
Modellare le seguenti tipologie di oggetti:
Oggetti che si muovono - che possono cambiare le proprie coordinate
Oggetti con cui si può interagire (per esempio gli i Non-Player Characters anche detti NPC)
non cambiano le proprie coordinate
un oggetto del gioco può interagire con uno di questo oggetti solo se si trova entro una certa distanza massima
Implementare il metodo toString() per ognuna delle classi create
Realizzare un main di prova in cui:
si crea un Giocatore, ed un NPC.
Far muovere il Giocatore usando gli appositi metodi, e farlo interagire con L'NPC.
Nota: L'interazione con l'NPC deve semplicemente stampare un messaggio su standard output.