Alternativet är väl att skriva kod i varje "fysiskt" objekt i spelet.
Pinnen::useOn(GameObject obj) { if (obj == "ögat") print("aj"); }
OK, ja egentligen är det väl inget som hindrar att man gör så heller, men som du säger tror jag det blir rätt jobbigt. Fast kanske kan man definiera generella objekt på högsta nivå:
class Item // Pinnar, BBQ-set mm class Character // Utskrivningsförrätare, Elvis [kanske också] class Scene
som innehåller så mycket generell funktionalitet att alla objekt kan definieras av parametrar hos de här klasserna. Men det kanske är mer för en fullskalig version tillsammans med ett skriptspråk... Hur som helst, beteendet från mittennivån att skicka upp UserEvent borde vara kompatibelt även med detta.
Jag använde strängar i exemplet för att slippa hitta på en ny klass, men det kanske inte är så dumt att ha en dynamisk namnrymd för objekt i
spelet?
Visst! De borde matcha den konvention som vi redan har, tex "cliff.bbqset".
OK, vi verkar vara rörande överens! Tänker du hacka något ikväll? Annars sätter jag igång, och satsar på att fixa till en gående Odd. Jag tror nämligen jag har kommit på ett sätt att fuska fram transparenta png-bilder.
/Jerker