diff options
Diffstat (limited to 'src/engine/data/vector2.hpp')
| -rw-r--r-- | src/engine/data/vector2.hpp | 29 | 
1 files changed, 29 insertions, 0 deletions
diff --git a/src/engine/data/vector2.hpp b/src/engine/data/vector2.hpp index acfe11f..dff548c 100644 --- a/src/engine/data/vector2.hpp +++ b/src/engine/data/vector2.hpp @@ -1,6 +1,7 @@  #pragma once  #include <cstdint> +#include <functional>  struct Vector2Options  { @@ -27,7 +28,35 @@ public:  	const Vector2 &operator+=(const Vector2 &vector2) noexcept;  	const Vector2 &operator-=(const Vector2 &vector2) noexcept; +	bool operator==(const Vector2 &vector2) const noexcept; + +	/** +	 *  Returns Vector2({.x = 0, .y = 1}) +	 */ +	static Vector2 up(); + +	/** +	 *  Returns Vector2({.x = 0, .y = -1}) +	 */ +	static Vector2 down(); + +	/** +	 *  Returns Vector2({.x = -1, .y = 0}) +	 */ +	static Vector2 left(); + +	/** +	 *  Returns Vector2({.x = 1, .y = 0}) +	 */ +	static Vector2 right(); +  private:  	int32_t _x;  	int32_t _y;  }; + +class Vector2Hasher +{ +public: +	std::size_t operator()(const Vector2 &vector2) const; +};  | 
