5#include "CoreMinimal.h"
6#include "SnakeGame/Containers/List.h"
11struct SNAKEGAME_API
Dim
19 Position(uint32 inX, uint32 inY) : x(inX), y(inY) {}
32 FORCEINLINE
bool operator==(
const Position& rhs)
const {
return x == rhs.x && y == rhs.y; }
33 FORCEINLINE
bool IsEqual(
const Position& rhs)
const {
return x == rhs.x && y == rhs.y; }
43 FORCEINLINE
bool opposite(
const Input& rhs)
const
45 return (x == -rhs.x && x != 0) || (y == -rhs.y && y != 0);
48 static const Input Default;
64 uint32 defaultSize{4};
67 float gameSpeed{1.0f};
70using TSnakeList = TDoubleLinkedList<Position>;
71using TPositionPtr = TSnakeList::TDoubleLinkedListNode;
73enum class GameplayEvent
80using GameplayEventCallback = TFunction<void(GameplayEvent)>;
Definition: SnakeGame.Build.cs:6