private EnumPieceAlignVec GetBackAlignVec(Vector2Int position, EnumSwipeVec swipeType) { int halfPos = (GridSize / 2); if (swipeType == EnumSwipeVec.Horizontal) { int posX = Mathf.Abs(position.x) % GridSize; if (posX != 0) { return(((posX < halfPos) ^ (position.x < 0)) ? EnumPieceAlignVec.Left : EnumPieceAlignVec.Right); } } else if (swipeType == EnumSwipeVec.Vertical) { int posY = Mathf.Abs(position.y) % GridSize; if (posY != 0) { return(((posY < halfPos) ^ (position.y < 0)) ? EnumPieceAlignVec.Down : EnumPieceAlignVec.Up); } } return(EnumPieceAlignVec.None); }
private EnumPieceAlignVec GetSlipAlignVec(Vector2 delta, EnumSwipeVec swipeType) { if (swipeType == EnumSwipeVec.Horizontal) { if (delta.x > 0) { return(EnumPieceAlignVec.Right); } if (delta.x < 0) { return(EnumPieceAlignVec.Left); } } else if (swipeType == EnumSwipeVec.Vertical) { if (delta.y > 0) { return(EnumPieceAlignVec.Up); } if (delta.y < 0) { return(EnumPieceAlignVec.Down); } } return(EnumPieceAlignVec.None); }
private bool CheckOnGrid(Vector2Int position, EnumSwipeVec swipeType) { if (swipeType == EnumSwipeVec.Horizontal) { int posX = Mathf.Abs(position.x) % GridSize; // DebugPanel.Log($"posX", posX.ToString()); return((posX < BorderOnGridDist) || (GridSize - posX < BorderOnGridDist)); } else if (swipeType == EnumSwipeVec.Vertical) { int posY = Mathf.Abs(position.y) % GridSize; return((posY < BorderOnGridDist) || (GridSize - posY < BorderOnGridDist)); } return(true); }