Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi DelphiX Frage für Spiel (https://www.delphipraxis.net/48576-delphix-frage-fuer-spiel.html)

mimi 31. Jul 2005 08:11

Re: DelphiX Frage für Spiel
 
das würde ich auch gerne wissen: wie entwickelne ich eine gute klassen strucktur für ein z.b. Aufbauspiel ?
ich dachte mir das so:
es gibt einmal eine klasse
- Map
- minimap
- Player
- Objekte(Häuser, Bäume, Pflanzen, Tiere, Menschen und soweiter)
problem ist halt nur, wie sieht die klasse aus die das alles verwahlten soll ??

tigerman33 31. Jul 2005 09:45

Re: DelphiX Frage für Spiel
 
Also die vier Sachen wirst du vermutlich nicht mit einer gemeinsamen Vorfahrklasse abbacken können (höchstens vielleicht Map und Minimap). Frag dich immer, welche deiner Sachen gemeinsame Eigenschaften und Verhaltensweisen haben. Im allgemeinen merkst du das auch spätestens beim Coden: Wenn du den gleichen Code in drei verschiedenen Klassen schreiben musst, spätestens dann solltest du dir mal Gedanken über Vererbung machen... :gruebel:

Wo du schon eher auf einen Nenner kommst sind deine "Objekte" (Bäume etc.). Ich spinntisiere jetzt einfach mal ein bisschen:

Delphi-Quellcode:
type TSpielobjekt = class
     private
       FPosition: TPoint;
     public
       constructor Create; virtual;
       destructor Destroy; virtual;
       property Position: TPoint read FPosition write FPosition;
       ... // Was halt ALLE Spielobjekte sonst noch gemeinsam haben sollen
     end;
     TVegetation = class(TSpielobjekt)
       // Hier alles was speziell Bäume und Pflanzen betrifft. Was weiß ich, ob die gerade blühen oder so halt
     end;
     TBewegliches = class(TSpielobjekt)
     private
     public
       procedure Move(Richtung: TPoint; Staerke: integer); virtual;
     end;

// So und jetzt die Endklassen ableiten:
     TBaum = class(TVegetation)
       // Alles was ganz speziell NUR den Baum betrifft
     end;
     TTier = class(TBewegliches)
       // Alles was ganz speziell NUR die Tiere betrifft, z.B. Raubtier: boolean
     end;
So ist natürlich ein bisschen Overkill so wie es da jetzt steht. Aber hat ja auch keinen Anspruch auf Vollständigkeit. Das lässt sich sehr einfach warten und handhaben und außerdem problemlos erweitern. Zum Beispiel eine von TSpielobjekt abgeleitete Klasse TGebaeude.

Hoffe das hilft.

Master_RC 6. Aug 2005 13:17

Re: DelphiX Frage für Spiel
 
ich möcht jetzt nicht nochmal reinplatzen, aber...
gibt es hier irgendwo ein tuto für solche klassen?
hab schon längere zeit gegoogelt und so, aber natürlich nur solche tutos, die die klassen voraussetzen... :(

tigerman33 6. Aug 2005 13:41

Re: DelphiX Frage für Spiel
 
In der Delphi-Hilfe müsste eigentlich ein Kapitel über Klassen, Vererbung und objekt-orientiertes Programmieren allgemein stehen. Ist ein bisschen viel um das jetzt hier zu erklären. :)

mimi 6. Aug 2005 18:26

Re: DelphiX Frage für Spiel
 
Wie klassen defniert werden weiß ich ja, nur wie die aufgabaut werden sollten.
@tigerman33
soweit bin ich mal bei mein ShipGame gekommen, das Problem ist ja auch: ich möchte mehre obj von diesen Obj Typen haben mehr als 1 Baum... das beste währe natürlich: eine klasse die sich nur um ein Obj kümmert und eine zweite die alle obj. verwahlten kann in einer Obj List, aber wie ?

In der Delphi hilfe wird zwar beschrieben wie Klassen denfiert werden eigenschafnte vererbungen und soweiter aber nicht wie eine klasse am besten aufgebaut sein sollte.

tigerman33 7. Aug 2005 08:23

Re: DelphiX Frage für Spiel
 
Zitat:

eine klasse die sich nur um ein Obj kümmert und eine zweite die alle obj. verwahlten kann in einer Obj List, aber wie ?
Da hast du dir die Antwort doch schon selber gegeben, oder? Wenn dir das von Delphi mitgelieferte nicht ausreicht, leitest du dir halt noch eine neue Klasse ab und veränderst/erweiterst die. Wo ist das Problem?

(Soll heißen: Stell deine Frage ein bisschen genauer... :) )

mimi 7. Aug 2005 11:17

Re: DelphiX Frage für Spiel
 
ok: also die frage ist:
Wie könnte so eine Verwaltungsklasse mit hilfer der TobjList aussehen ?
hatte schon mehrmals angefangen und bin gescheitert. Oder bei einer MenuKlasse.
z.z. schreibe ich ein Mainmenu(eigenes nicht abgeleitet) mit hilfe PowerDraw und dort habe ich das problm mit untermenus.... aber ich glaube die Frage war eine andre....


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:37 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz