Files
lace/4-high/gel/source/dolly/gel-dolly-following.ads
2022-07-31 17:34:54 +10:00

63 lines
1.4 KiB
Ada

with
gel.Sprite;
package gel.Dolly.following
--
-- Provides a camera dolly which follows a sprite.
--
is
type Item is new gel.Dolly.item with private;
type View is access all Item'Class;
---------
--- Forge
--
overriding
procedure define (Self : in out Item);
overriding
procedure destroy (Self : in out Item);
--------------
--- Attributes
--
overriding
procedure allow_linear_Motion (Self : in out Item; Allow : in Boolean := True);
overriding
procedure allow_orbital_Motion (Self : in out Item; Allow : in Boolean := True);
procedure Offset_is (Self : in out Item; Now : in math.Vector_3);
function Offset (Self : in Item) return math.Vector_3;
--------------
--- Operations
--
overriding
procedure freshen (Self : in out Item);
procedure follow (Self : in out Item; the_Sprite : in gel.Sprite.view);
private
type Item is new gel.Dolly.item with
record
Sprite : gel.Sprite.view;
sprite_Offset : math.Vector_3 := [0.0, 30.0, 0.0];
allow_linear_Motion : Boolean := True;
allow_orbital_Motion : Boolean := True;
camera_x_Spin : math.Real := 0.0;
camera_y_Spin : math.Real := 0.0;
camera_z_Spin : math.Real := 0.0;
end record;
end gel.Dolly.following;