Area.cpp 801 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. #include "Area.h"
  2. Framework::Vec3<int> getDirection( Directions dir )
  3. {
  4. Framework::Vec3<int> result( 0, 0, 0 );
  5. if( (dir | NORTH) == dir )
  6. --result.y;
  7. if( (dir | EAST) == dir )
  8. ++result.x;
  9. if( (dir | SOUTH) == dir )
  10. ++result.y;
  11. if( (dir | WEST) == dir )
  12. --result.x;
  13. if( (dir | TOP) == dir )
  14. ++result.z;
  15. if( (dir | BOTTOM) == dir )
  16. --result.z;
  17. return result;
  18. }
  19. int getDirectionIndex( Direction dir )
  20. {
  21. if( dir == NORTH )
  22. return 0;
  23. if( dir == EAST )
  24. return 1;
  25. if( dir == SOUTH )
  26. return 2;
  27. if( dir == WEST )
  28. return 3;
  29. if( dir == TOP )
  30. return 4;
  31. if( dir == BOTTOM )
  32. return 5;
  33. assert( false );
  34. return -1;
  35. }