hedgewars/uVisualGears.pas
changeset 4361 64ea345ab655
parent 4359 83ef50815535
child 4368 b89235e401e5
equal deleted inserted replaced
4359:83ef50815535 4361:64ea345ab655
    19 {$INCLUDE "options.inc"}
    19 {$INCLUDE "options.inc"}
    20 
    20 
    21 unit uVisualGears;
    21 unit uVisualGears;
    22 interface
    22 interface
    23 uses uConsts, uFloat, Math, GLunit, uTypes;
    23 uses uConsts, uFloat, Math, GLunit, uTypes;
    24 
       
    25 type PVisualGear = ^TVisualGear;
       
    26     TVGearStepProcedure = procedure (Gear: PVisualGear; Steps: Longword);
       
    27     TVisualGear = record
       
    28         NextGear, PrevGear: PVisualGear;
       
    29         Frame,
       
    30         FrameTicks: Longword;
       
    31         X : float;
       
    32         Y : float;
       
    33         dX: float;
       
    34         dY: float;
       
    35         tdX: float;
       
    36         tdY: float;
       
    37         State : Longword;
       
    38         Timer: Longword;
       
    39         Angle, dAngle: real;
       
    40         Kind: TVisualGearType;
       
    41         doStep: TVGearStepProcedure;
       
    42         Tex: PTexture;
       
    43         alpha, scale: GLfloat;
       
    44         Hedgehog: pointer;
       
    45         Text: shortstring;
       
    46         Tint: Longword;
       
    47         end;
       
    48 
    24 
    49 procedure initModule;
    25 procedure initModule;
    50 procedure freeModule;
    26 procedure freeModule;
    51 
    27 
    52 function  AddVisualGear(X, Y: LongInt; Kind: TVisualGearType; State: LongWord = 0): PVisualGear;
    28 function  AddVisualGear(X, Y: LongInt; Kind: TVisualGearType; State: LongWord = 0): PVisualGear;