chrisslfissl Geschrieben 24. Januar 2015 Melden Share Geschrieben 24. Januar 2015 Also, mein Problem ist folgendes. Ich habe ein Aufbauspiel, bei dem man Gebäude plazieren kann und der Preis von diesen Gebäuden dann beim Bau vom gesamtpreis abgezogen werden soll. Mein Problem: Wie gebe ich jedem Gebäude einen eigenen Preis ohne, dass ich auf jedes Prefab dieser Gebäude ein Script plaziere das den eigenen Preis beinhaltet? Oder sollte ich doch für jedes Haus-Prefab ein eigenes Script erstellen? Später kommen ja noch eigene Funktionen für jedes gebäude hinzu. Also Gebäude sollen fähigkeiten haben wie bei Age of Empires. Wie würdet ihr das lösen? Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Djeurissen Geschrieben 24. Januar 2015 Melden Share Geschrieben 24. Januar 2015 Naja, einfach ne Standarfklasse Gebäude erstellen die eben den Preis beinhaltet. Dann einfach jede Gebäudeart von dieser Klasse ableiten lassen. Das hat auch noch den Vorteil das du zum Beispiel eine Liste von Gebäuden erstellen kannst und da jede Gebäudeart reinpasst. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Sascha Geschrieben 24. Januar 2015 Melden Share Geschrieben 24. Januar 2015 ...oder du machst es komponentenbasiert, wie das in Unity so üblich ist public class Buyable : MonoBehaviour { public int price; } Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
chrisslfissl Geschrieben 25. Januar 2015 Autor Melden Share Geschrieben 25. Januar 2015 Danke für die schnelle Antwort. Ich werde es also Komponentenbasiert machen. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Djeurissen Geschrieben 25. Januar 2015 Melden Share Geschrieben 25. Januar 2015 Das heißt man fügt nun zusätzlich an jedes Objekt ein Skript Buyable dran und eben jeweils ein eigenes Skript für jede Gebäudeart? Bin ich blöd oder ist das nicht ziemlich umständlich? Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Sascha Geschrieben 25. Januar 2015 Melden Share Geschrieben 25. Januar 2015 Klar geht das auch mit Vererbung, aber das skaliert dann richtig schlecht mit. Wie der Editor einer Spieleengine aussieht, die das alles über Vererbungshierarchien macht, kann man hautnah miterleben, indem man sich den Editor für Crysis 1 besorgt. Da sträuben siche einem die Haare. Vorteile, das komponentenbasiert zu machen: Man hat nicht plötzlich den Fall, in dem man Mehrfachvererbung braucht. Man hat auch nicht die Situation, dass man gerne ein Gebäude hätte, das keinen Preis hat, und das dann nicht ohne weiteres kann. Die Inspektor-GUI des Objekts ist schön sortiert. Wie gesagt, Gegenbeispiel ist der Sandbox Editor von Crysis 1. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Recommended Posts
Archiviert
Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.