Thema: Pacman

Einzelnen Beitrag anzeigen

Benutzerbild von Coffeecoder
Coffeecoder

Registriert seit: 27. Apr 2011
242 Beiträge
 
Delphi 6 Enterprise
 
#10

AW: Pacman

  Alt 8. Feb 2012, 15:10
Delphi-Quellcode:
 //Spieler und Monster
  TphItem = class(TObject)
  private
    FName: String;
    FSize: Integer;
    FPosition: TPoint;
    procedure GetName(const Value: String);
    procedure GetSize(const Value: Integer);
    procedure GetPosition(const Value: TPoint);
  public
    constructor Create();
    destructor Destroy();
    property Name: String read FName write GetName;
    property Size: Integer read FSize write GetSize;
    property Position: TPoint read FPosition write GetPosition;
  end;

  //Spielfigur
  TphPlayer = class(TphItem)
  private
  
  public
    constructor Create();
    destructor Destroy();
  end;

  //Gegner (Monster)
  TphMonster = class(TphItem)
  private

  public
    procedure Draw(ACanvas: TCanvas);
    constructor Create();
    destructor Destroy();
  end;
Der Konstruktor deiner Oberklasse also TphItem würde ich so anpassen, falls es noch nicht ist:
Delphi-Quellcode:
constructor TphItem.Create(posx, posy) ;
begin
   ... // andere Felder initialisieren, ggf. in der Paramterliste erweitern
   FPosition.Position.X := posx;
   FPosition.Position.Y := posy; // eventuell anpassen wegen TPoint, properties nicht im Kopf ;)
end;
Und dann im Create des Monsters dies machen:

Delphi-Quellcode:
constructor TphMonster.Create;
begin
   randomize; // ---> auslagern , nur einmal nötig
  inherited Create(random(128), random(128));
end;
Zuhause also heute abend kann ich das besser überprüfen
Coffeecoder
  Mit Zitat antworten Zitat