Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Wirago

Alter Hase

Beiträge: 1 193

Wohnort: Stockerau

Beruf: CRM Application Manager

  • Private Nachricht senden

11

18.04.2019, 17:05

Würde bedeuten ich bräuchte eine Art "Item System" welches eine Tabelle mit ID->Item|Typ führt, sowie weitere Funktionalität für die ID->Item Auflösung bereit stellt.

Bspw. ich bin im Kampf und möchte ein Heiltrank nehmen. Nun müsste mein Inventar nach allen "consumables" durchsuchen und dann die entsprechende ID an das Item System übergeben. Das System selber gibt mir dann die Beschreibung/den Heilwert für das Item zurück. Oder beim angreifen. Ich hinterlege bei meinem Player eine ID für die Waffe und hole mir dann über das Item System die genauen Werte wie z.B den Schaden.

Hört sich das so sinnvoll an?


Wir haben es in etwa so, ja. Jedes Item entspricht einem Objekt der passenden Klasse (Weapon, Consumable, Material...). Wird dieses Item benutzt, wird anhand der ID dieses Items der jeweilig Effekt getriggert. Also bei Waffen -> Ausrüsten, bei Tränken -> Konsumieren usw.

Die jeweiligen Eigenschaften werden in einem separaten File gepflegt.

12

22.04.2019, 15:50

Vielen Dank für die Antworten.

Habe es momentan so gelöst: In CSV Dateien werden meine Datensätze angelegt-> Parser geht über die Dateien und füllt meine Look Up Tables -> per findByID Methode kann ich auf die Items zugreifen.
Die Inventory Klasse besteht dabei nur aus einem Vector<unsigned> (für die ID´s) sowie Methoden welche Items hinzufügt/entfernt/prüft ob man noch mehr Items aufnehmen kann usw.

Brauche ich konkrete Werte (bspw. im Kampf System oder in der Inventar Übersicht) hol ich mir einfach die ID des jeweiligen Items, übergebe Sie meiner findByID Methode und habe somit Zugriff auf die restlichen Werte. Sollte zumindest für dieses Projekt ausreichend sein.
Nochmal danke für eure Hilfe!

Grüße