Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
@hubertus
Sein Problem ist es eher, dass er den Unterschied zwischen Klasse und Objekt noch nicht ganz verstanden hat.
Ich persönlich würde ja eher ein Item-Objekt und ein Pickable-Interface programmieren, aber das ist auf Nynex' Wissenstand bezogen noch zu weit in der Zukunft.
@Nynex
Nynex schrieb:
Ich hatte das nur für einen Moment vergessen, dass ich nicht mit einer Instanz von "PickableItem" arbeite. Jedoch muss die Methode von wo anders aus aufgerufen werden. Ich werde das schon irgendwie hinbekommen!
Na ja, das macht man heute eigentlich alles mit Objekten statt Klassen.
Es ginge noch die Variante, dass man eine Klasse PickableObjekt programmiert, in der ein Array, eine Liste oder eine Map anzeigt, wo sich aufhebbare Dinge befinden. Das schränkt aber die Flexibilität deutlich ein und wird eigentlich nur bei zeitkritischen oder extrem simplen Dingen verwendet. Aber du willst doch sicher mehr machen, oder? Man denke zB an einen hypothetischen NPC, der gleichzeitig mit dir Dinge vom Boden aufhebt. Deine Variante, dass mit statischen Klassen und Variablen zu machen, erlaubt so was nur mit sehr viel Verrenkungen.
Jap, mit PickableItem als Interface ist das ganze natürlich noch besser, wird ja keine "PickableItems" geben die rumliegen, sondern nur zB "Rocks", die dann PickableItem implementieren sollten
das kann niemals als static funktionieren wenn mehrere PickableItem erstellt werden, da entweder checkEnvironment() nur einmal aufgerufen wird und so nur die Position eines Items überprüft wird und das zweite nie aufgehoben werden kann, oder checkEnvironment() mehrfach aufgerufen wird wobei schon der zweite Aufruf das Ergebnis des ersten überschreibt (wenn der Code etwa so aussieht):