Index

Package: Directions

Description

package Directions is

Types

Axis_Direction

subtype Axis_Direction is Integer range -1..1;

References:

directions.ads:6:13 (declaration)
directions.ads:12:20 (reference)

Direction_Type

type Direction_Type is
        record
            x, y : Axis_Direction;
        end record;

References:

directions.ads:10:10 (declaration)
directions.adb:4:23 (reference)
directions.adb:4:71 (reference)
directions.adb:5:18 (reference)
directions.adb:19:23 (reference)
directions.adb:19:71 (reference)
directions.adb:20:18 (reference)
directions.adb:46:25 (reference)
directions.adb:59:27 (reference)
directions.adb:99:26 (reference)
directions.adb:110:26 (reference)
directions.adb:121:26 (reference)
directions.adb:158:62 (reference)
directions.ads:31:23 (reference)
directions.ads:31:71 (reference)
directions.ads:36:23 (reference)
directions.ads:36:71 (reference)
directions.ads:40:25 (reference)
directions.ads:44:27 (reference)
directions.ads:52:26 (reference)
directions.ads:56:26 (reference)
directions.ads:60:26 (reference)
directions.ads:69:62 (reference)
directions.ads:73:31 (reference)
directions.ads:74:31 (reference)
directions.ads:75:31 (reference)
directions.ads:76:31 (reference)
directions.ads:77:31 (reference)
directions.ads:78:31 (reference)
directions.ads:79:31 (reference)
directions.ads:80:31 (reference)
directions.ads:84:31 (reference)
directions.ads:85:31 (reference)
directions.ads:86:31 (reference)
directions.ads:87:31 (reference)
directions.ads:88:31 (reference)
directions.ads:89:31 (reference)
directions.ads:90:31 (reference)
directions.ads:91:31 (reference)
entities.adb:97:49 (reference)
entities.adb:112:74 (reference)
entities.adb:432:20 (reference)
entities.adb:454:9 (reference)
entities.ads:38:49 (reference)
entities.ads:45:74 (reference)
entities.ads:201:19 (reference)
events-entities.adb:331:33 (reference)
events-entities.adb:339:85 (reference)
events-entities.adb:706:56 (reference)
events-entities.ads:133:85 (reference)
events-entities.ads:292:56 (reference)
events-entities.ads:458:19 (reference)
events-entities.ads:463:33 (reference)
worlds.adb:461:18 (reference)
widgets-sprites-ked.adb:421:30 (reference)
widgets-sprites-ked.ads:49:27 (reference)
widgets-sprites-ked.ads:101:30 (reference)
entities-players-keen.adb:417:38 (reference)
entities-players-keen.adb:486:47 (reference)
entities-players-keen.ads:78:47 (reference)
entities-players-little_keen.adb:226:54 (reference)
entities-players-little_keen.ads:29:54 (reference)
A record capable of expressing eight directions with x, y axis. It is useful because direction logic can be performed on a Direction_Type.

Cardinal_Direction

type Cardinal_Direction is (Left, Right, Up, Down);

References:

directions.ads:16:10 (declaration)
directions.adb:4:43 (reference)
directions.adb:19:43 (reference)
directions.adb:46:45 (reference)
directions.adb:86:27 (reference)
directions.adb:121:50 (reference)
directions.adb:145:30 (reference)
directions.adb:145:58 (reference)
directions.adb:158:34 (reference)
directions.ads:23:39 (reference)
directions.ads:31:43 (reference)
directions.ads:36:43 (reference)
directions.ads:40:45 (reference)
directions.ads:48:27 (reference)
directions.ads:60:50 (reference)
directions.ads:66:30 (reference)
directions.ads:66:58 (reference)
directions.ads:69:34 (reference)
entities-players.ads:11:55 (reference)
entities-players.ads:13:54 (reference)
entities.adb:186:68 (reference)
entities.adb:263:56 (reference)
entities.ads:67:68 (reference)
entities.ads:241:56 (reference)
events-entities.adb:54:33 (reference)
events-entities.adb:73:84 (reference)
events-entities.adb:367:33 (reference)
events-entities.adb:375:89 (reference)
events-entities.adb:627:39 (reference)
events-entities.adb:724:60 (reference)
events-entities.ads:35:84 (reference)
events-entities.ads:151:89 (reference)
events-entities.ads:257:39 (reference)
events-entities.ads:296:60 (reference)
events-entities.ads:349:19 (reference)
events-entities.ads:356:33 (reference)
events-entities.ads:480:19 (reference)
events-entities.ads:485:33 (reference)
physics-bodies.adb:146:42 (reference)
physics-managers.adb:145:32 (reference)
widgets-containers-scenes-ked.adb:430:40 (reference)
widgets-containers-scenes-ked.ads:28:40 (reference)
entities-players-keen.adb:591:53 (reference)
entities-players-keen.adb:681:52 (reference)
entities-players-keen.adb:740:54 (reference)
entities-players-keen.ads:84:53 (reference)
entities-players-keen.ads:86:52 (reference)
entities-players-keen.ads:97:54 (reference)
entities-players-little_keen.adb:288:60 (reference)
entities-players-little_keen.adb:308:59 (reference)
entities-players-little_keen.ads:35:60 (reference)
entities-players-little_keen.ads:37:59 (reference)
entities-sprites-keen4.adb:870:62 (reference)
entities-sprites-keen4.ads:248:62 (reference)
Enumeration of the four cardinal directions.

Direction_8

type Direction_8 is (D8_Left,    D8_Right,    D8_Up,        D8_Down,
                         D8_Up_Left, D8_Up_Right, D8_Down_Left, D8_Down_Right);

References:

directions.ads:19:10 (declaration)
directions.adb:59:51 (reference)
directions.adb:86:55 (reference)
directions.adb:99:50 (reference)
directions.adb:110:50 (reference)
directions.ads:44:51 (reference)
directions.ads:48:55 (reference)
directions.ads:52:50 (reference)
directions.ads:56:50 (reference)
entities-players-keen.adb:41:36 (reference)
entities-players-keen.adb:417:62 (reference)
entities-players-keen.adb:1041:43 (reference)
entities-players-little_keen.adb:29:36 (reference)
entities-players-little_keen.adb:413:43 (reference)
Enumeration of eight directions at 45 degree angles.

Direction_Booleans

type Direction_Booleans is array (Cardinal_Direction) of Boolean;

References:

directions.ads:23:10 (declaration)
directions.adb:132:26 (reference)
directions.ads:63:26 (reference)
entities-players.ads:20:22 (reference)
entities-players.ads:20:44 (reference)
An array of Booleans indexed by cardinal direction.

Constants & Global variables

Dir_Left (Direction_Type)

Dir_Left       : constant Direction_Type;

References:

directions.ads:73:5 (declaration)
directions.adb:161:33 (reference)
directions.ads:84:5 (full declaration)
entities.ads:201:37 (reference)
events-entities.ads:458:37 (reference)
widgets-sprites-ked.adb:215:42 (reference)
widgets-sprites-ked.adb:309:39 (reference)
entities-players-keen.adb:488:18 (reference)

Dir_Right (Direction_Type)

Dir_Right      : constant Direction_Type;

References:

directions.ads:74:5 (declaration)
directions.adb:162:34 (reference)
directions.ads:85:5 (full declaration)
widgets-sprites-ked.adb:218:42 (reference)
widgets-sprites-ked.adb:316:39 (reference)
entities-players-keen.adb:488:41 (reference)

Dir_Up (Direction_Type)

Dir_Up         : constant Direction_Type;

References:

directions.ads:75:5 (declaration)
directions.adb:163:31 (reference)
directions.ads:86:5 (full declaration)
widgets-sprites-ked.adb:221:42 (reference)
widgets-sprites-ked.adb:295:39 (reference)

Dir_Down (Direction_Type)

Dir_Down       : constant Direction_Type;

References:

directions.ads:76:5 (declaration)
directions.adb:164:33 (reference)
directions.ads:87:5 (full declaration)
widgets-sprites-ked.adb:224:42 (reference)
widgets-sprites-ked.adb:302:39 (reference)

Dir_Up_Left (Direction_Type)

Dir_Up_Left    : constant Direction_Type;

References:

directions.ads:77:5 (declaration)
directions.ads:88:5 (full declaration)
widgets-sprites-ked.adb:322:39 (reference)

Dir_Up_Right (Direction_Type)

Dir_Up_Right   : constant Direction_Type;

References:

directions.ads:78:5 (declaration)
directions.ads:89:5 (full declaration)
widgets-sprites-ked.adb:329:39 (reference)

Dir_Down_Left (Direction_Type)

Dir_Down_Left  : constant Direction_Type;

References:

directions.ads:79:5 (declaration)
directions.ads:90:5 (full declaration)
widgets-sprites-ked.adb:336:39 (reference)

Dir_Down_Right (Direction_Type)

Dir_Down_Right : constant Direction_Type;

References:

directions.ads:80:5 (declaration)
directions.ads:91:5 (full declaration)
widgets-sprites-ked.adb:343:39 (reference)

Subprograms & Entries

+

function "+"
( l: Direction_Type;
r: Cardinal_Direction )
return Direction_Type;

References:

directions.ads:31:14 (declaration)
directions.adb:4:14 (body)
directions.adb:14:9 (label)
entities-players-keen.adb:612:46 (reference)
entities-players-keen.adb:654:46 (reference)
entities-players-little_keen.adb:294:38 (reference)

Called by:

Entities.Players.Keen.Move_Start defined at entities-players-keen.ads:84:15
Entities.Players.Keen.Move_Start defined at entities-players-keen.ads:84:15
Entities.Players.Little_Keen.Move_Start defined at entities-players-little_keen.ads:35:15
Returns a combined direction. If the direction of 'r' is directly opposite the matching component of the 'l' direction, then 'r' will override the matching component of 'l' in the resultant direction. (ex: Dir_Left + Right = Dir_Right)

-

function "-"
( l: Direction_Type;
r: Cardinal_Direction )
return Direction_Type;

References:

directions.ads:36:14 (declaration)
directions.adb:19:14 (body)
directions.adb:41:9 (label)
entities-players-little_keen.adb:312:34 (reference)

Called by:

Entities.Players.Little_Keen.Move_Stop defined at entities-players-little_keen.ads:37:15
Zeros the component of direction 'l' that matches 'r'. Note that the returned direction will have at least one non-zero component because a direction with no components is illegal.

and

function "and"
( l: Direction_Type;
r: Cardinal_Direction )
return Boolean;

References:

directions.ads:40:14 (declaration)
directions.adb:46:14 (body)
directions.adb:54:9 (label)
entities-players-keen.adb:598:33 (reference)
entities-players-keen.adb:697:33 (reference)
entities-players-keen.adb:775:25 (reference)
entities-players-keen.adb:779:28 (reference)
entities-players-keen.adb:804:57 (reference)

Called by:

Entities.Players.Keen.Move_Start defined at entities-players-keen.ads:84:15
Entities.Players.Keen.Move_Stop defined at entities-players-keen.ads:86:15
Entities.Players.Keen.Shoot_Gun defined at entities-players-keen.ads:101:15
Entities.Players.Keen.Shoot_Gun defined at entities-players-keen.ads:101:15
Entities.Players.Keen.Start_Jump defined at entities-players-keen.ads:107:15
Returns true if cardinal direction 'r' is a component of direction 'l'. Example: "<Up+Right> and Up = True", "<Down+Right> and Up = False"

To_D8

function To_D8
( dir: Direction_Type )
return Direction_8;

References:

directions.ads:44:14 (declaration)
directions.adb:59:14 (body)
directions.adb:81:9 (label)
entities-players-little_keen.adb:465:51 (reference)
entities-players-little_keen.adb:467:50 (reference)
entities-players-little_keen.adb:471:47 (reference)

Called by:

Entities.Players.Little_Keen.Update_Frame defined at entities-players-little_keen.ads:56:15
Entities.Players.Little_Keen.Update_Frame defined at entities-players-little_keen.ads:56:15
Entities.Players.Little_Keen.Update_Frame defined at entities-players-little_keen.ads:56:15
Converts dir to a Direction_8 type. If dir doesn't have a component in any axis then a Constraint_Error is raised.

To_D8

function To_D8
( dir: Cardinal_Direction )
return Direction_8;

References:

directions.ads:48:14 (declaration)
directions.adb:86:14 (body)
directions.adb:94:9 (label)
entities-players-keen.adb:657:68 (reference)
entities-players-keen.adb:703:69 (reference)

Called by:

Entities.Players.Keen.Move_Start defined at entities-players-keen.ads:84:15
Entities.Players.Keen.Move_Stop defined at entities-players-keen.ads:86:15
Converts dir to a Direction_8 type.

To_X

function To_X
( dir: Direction_Type )
return Direction_8;

References:

directions.ads:52:14 (declaration)
directions.adb:99:14 (body)
directions.adb:105:9 (label)
directions.adb:106:20 (reference)
entities-players-keen.adb:424:16 (reference)

Called by:

Entities.Players.Keen.To_X defined at entities-players-keen.adb:417:14
Returns only the X component of dir as a Direction_8. If dir doesn't have an X component then Left is returned as a default.

To_Y

function To_Y
( dir: Direction_Type )
return Direction_8;

References:

directions.ads:56:14 (declaration)
directions.adb:110:14 (body)
directions.adb:116:9 (label)
entities-players-keen.adb:1123:46 (reference)

Called by:

Entities.Players.Keen.Update_Frame defined at entities-players-keen.ads:113:15
Returns only the Y component of dir as a Direction_8. If dir doesn't have any Y component then Up is returned as a default.

To_Y

function To_Y
( dir: Direction_Type )
return Cardinal_Direction;

References:

directions.ads:60:14 (declaration)
directions.adb:121:14 (body)
directions.adb:127:9 (label)
Returns only the Y component of dir as a cardinal direction. If dir doesn't have any Y component then Up is returned as a default.

not

function "not"
( db: Direction_Booleans )
return Boolean;

References:

directions.ads:63:14 (declaration)
directions.adb:132:14 (body)
directions.adb:140:9 (label)
entities-players-keen.adb:647:24 (reference)
entities-players-keen.adb:920:20 (reference)
entities-players-little_keen.adb:291:16 (reference)
entities-players-little_keen.adb:380:20 (reference)
entities-players-little_keen.adb:464:20 (reference)

Called by:

Entities.Players.Keen.Move_Start defined at entities-players-keen.ads:84:15
Entities.Players.Keen.Tick defined at entities-players-keen.ads:111:15
Entities.Players.Little_Keen.Move_Start defined at entities-players-little_keen.ads:35:15
Entities.Players.Little_Keen.Tick defined at entities-players-little_keen.ads:54:15
Entities.Players.Little_Keen.Update_Frame defined at entities-players-little_keen.ads:56:15
Returns true if all of the Booleans in the array are False.

Opposite

function Opposite
( dir: Cardinal_Direction )
return Cardinal_Direction;

References:

directions.ads:66:14 (declaration)
directions.adb:145:14 (body)
directions.adb:153:9 (label)
directions.adb:154:20 (reference)
entities-players-little_keen.adb:290:58 (reference)

Called by:

Entities.Players.Little_Keen.Move_Start defined at entities-players-little_keen.ads:35:15
Returns the opposite of the given direction.

To_Direction

function To_Direction
( dir: Cardinal_Direction )
return Direction_Type;

References:

directions.ads:69:14 (declaration)
directions.adb:158:14 (body)
directions.adb:166:9 (label)
directions.adb:167:20 (reference)
entities-players-little_keen.adb:292:29 (reference)

Called by:

Entities.Players.Little_Keen.Move_Start defined at entities-players-little_keen.ads:35:15
Converts a Cardinal_Direction to a general Direction_Type.