Einzelnen Beitrag anzeigen

tumo

Registriert seit: 28. Apr 2014
46 Beiträge
 
Delphi 10.3 Rio
 
#5

AW: Zirkuläre Referenzen

  Alt 29. Aug 2018, 20:16
Hallo und danke für die schnellen und vielen Antworten.

@Uwe Raabe
Delphi-Quellcode:
--------Entity.pas--------
uses Map, ...;

type
TPlayer = class(TEntity)
  private
    procedure updateCollision(AMap: TMap; newX,newY: Single); override;
  public
    NearestBlock: TBlockVector;
    constructor Create(EntityPosition: TVector; SizeH,SizeV: Single); override;
    [...]
  end;

--------Map.pas--------
uses Blocks, ...;

type
TBlocks = array of array of TBlock;

  TMap = class(TObject)
  private
    Structure: TBlocks;
  [...]
  public
  [...]
  property Grid[X,Y: Word]: TBlock read GetStructure; default;
  property Grid[APos: TBlockVector]: TBlock read GetStructure; default;
end;

--------Blocks.pas--------
uses ...;

type
TBlock = class(TObject)
[...]
end;

TActionBlock = class(TBlock)
public
procedure OnAction(APlayer: TPlayer);
end;
Ist das in etwa, was Du wolltest? Mehr? Weniger?

@jaenicke Grundsätzlich danke. Das Dilemma über Events zu lösen ist durchaus eine Variante. Ich muss zugeben mit Events zu programmieren ist mir neu (klar, Komponentenevents, ich meine hier sebstverständlich eigene). Was ich sagen will: Gibt es da eine Art Tutorialempfehlung des Chefs?

@hoika Der Idee bin ich auch sehr aufgeschlossen. Darf ich erfahren, was Visitor-/Observer-Patterns sind?
Ich habe bis dato noch nie von Interfaces gehört (außer im Unit Aufbau). Eine erst Recherche ergab nur die Tatsache, dass diese existieren und Dinge können. Auch hier die eFrage: Gibt es da etwas, was Du empfehlen kannst?

Vielen Dank im vorraus
  Mit Zitat antworten Zitat