Sto lavorando casualmente su un gioco di tipo RPG in Java, ma ho difficoltà a capire come posso avere oggetti che possono fare molte cose diverse senza creare una classe diversa per ogni oggetto.
Ad esempio, come potrei creare un'ascia che potrebbe tagliare alberi e attaccare i mostri?
Se estendo la classe di taglio o di arma, non posso estendere l'altra classe.
Se dovessi tagliare e l'arma fosse un'interfaccia, avrò un sacco di codice duplicato quando un pugnale può anche attaccare i mostri e un'ascia diversa può tagliare gli alberi.
Spero che ci sia un modo per avere una singola classe di oggetti e caricare gli oggetti e le loro rispettive abilità da un file. Se ciò è possibile, come può essere fatto? In caso contrario, qual è il modo migliore per avere oggetti in un gioco?