Hallo,
Ich habe mir eine Extra
Unit für Andorra 2D erstellt.
Bisher bietet sie
"nur
" zwei Klassen.
Zum einen einen Cursor und zum anderen den sogenannten "Scaler", "Strecher".
Alle Klassen, Enumerationen etc. haben (der einfachheit halber), das Präfix "TAdX".
Nun komme ich zur Beschreibung des Cursors:
TAdXSpriteCursor = class(TImageSprite)
Das ist ein auf ein ImageSprite basierender Cursor, welcher einfach, wie ein Sprite eingeführt werden kann.
Zu Zeit muss man noch selbständig den Cursor zeichen. Wer Vorschläge hat um den Cursor intern zu zeichen sollte es mir sagen
Eigenschaften:
Delphi-Quellcode:
property Visible : Boolean read FVisible write SetVisible;
property ActionPoint : TAdXRelativePoint read FActionPoint write SetActionPoint;
- Visible - Gibt an, ob der Cursor erscheinen soll. Wenn man die Eigenschaft Visible auf true stellt, setzt er bei allen Controls mit der Eigenschaft Cursor diese auf crNone. Hinweis: Setzt man die Eigenschaft Visible auf false setzt er die Cursor-Eigenschaft der Controls auf crDefault.
- Actionpoint - Gibt an, an welcher Stelle der Grafik der Klick ausgeführt werden soll. Man kann mithilfe der Funktion "AdXRelativePoint" einen relativen Punkt erstellen. (0, 0 ist links oben und 1, 1 ist unten rechts)
Außerdem gibt es den "Scaler" oder "Strecher":
TAdXStreched = class(TSprite)
Wenn man die Anzeige beliebig skalieren möchte, zum Beispiel um zu zoomen gibt es die Möglichkeit den Scaler zu benutzen.
Man erstellt einfach ein Objekt davon und weißt es der zu skalierenden SpriteEngine zu.
Eigenschaften
Delphi-Quellcode:
property RelativeScale : Double read FRelativeScale write FRelativeScale;
property UseRelativeScale : Boolean read FUseRelativeScale write FUseRelativeScale default true;
property StaticWidth : Double read FStaticWidth write FStaticWidth;
property StaticHeight : Double read FStaticHeight write FStaticHeight;
property ScaleClasses : TAdXScaleClasses read FScaleClasses write FScaleClasses;
- RelativeScale - Gibt an um wie viel die Sprites vergrößert/kleinert werden (0.5 = halb so groß, 2 = doppelt so groß)
- UseRelativeScale - Wenn man die relativen Größen verwenden möchte, auf true setzen. Ansonsten auf false.
- StaticWidth - Gibt an, welche Breite alle (!) Sprites haben sollen.
- StaticHeight - Gibt an, welche Höhe alle (!) Sprites haben sollen.
- ScaleClasses - Dies ist eine Sammlung von den Klassentypen (TImageSprite, TBackgroundSprite, ...), welche skaliert werden sollen. (s.o.)
Zur Zeit wird nur TImageSprites vollständig unterstützt. TBackgroundSprite ist in entwicklung und die anderen Sprites werden normal gezeichnet.
Zusätzlich dazu gibt es noch folgendes:
Delphi-Quellcode:
TAdXRelativePoint = record
X : Double;
Y : Double;
end;
Gibt einen realtiven Punkt an.
function AdXRelativePoint(AX, AY : Double) : TAdXRelativePoint;
Erstellt aus zwei relativen Achsen einen relativen Punkt.
Delphi-Quellcode:
TAdXScaleClass = (scImageSprite, scBackgroundSprite, scLightSprite, scParticelSprite);
TAdXScaleClasses = set of TAdXScaleClass;
Ist eine Sammlung der verschiedenen Standardmäßigen Klassentypen. (Benötigt für TAdXStreched)
MfG
xZise
PS: Erstellt & kompiliert mit TurboDelphi Explorer.