From e68120034c6e3643b82beb6067a557dfd4fbf936 Mon Sep 17 00:00:00 2001 From: tron Date: Wed, 8 Mar 2006 08:51:26 +0000 Subject: (svn r3789) Add an enum and function to handle DiagDirection changes --- direction.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'direction.h') diff --git a/direction.h b/direction.h index 49a2b6340..8f29bdd6c 100644 --- a/direction.h +++ b/direction.h @@ -65,6 +65,19 @@ static inline DiagDirection ReverseDiagDir(DiagDirection d) } +typedef enum DiagDirDiff { + DIAGDIRDIFF_SAME = 0, + DIAGDIRDIFF_90RIGHT = 1, + DIAGDIRDIFF_REVERSE = 2, + DIAGDIRDIFF_90LEFT = 3 +} DiagDirDiff; + +static inline DiagDirection ChangeDiagDir(DiagDirection d, DiagDirDiff delta) +{ + return (DiagDirection)((d + delta) % 4); +} + + static inline DiagDirection DirToDiagDir(Direction dir) { return (DiagDirection)(dir >> 1); -- cgit v1.2.3-70-g09d2