private static ICharacterRenderProperties EnsureCorrectXAndY(ICharacterRenderProperties renderProperties, byte x, byte y)
        {
            var opposite             = renderProperties.Direction.Opposite();
            var tempRenderProperties = renderProperties
                                       .WithDirection(opposite)
                                       .WithMapX(x)
                                       .WithMapY(y);

            return(renderProperties
                   .WithMapX(tempRenderProperties.GetDestinationX())
                   .WithMapY(tempRenderProperties.GetDestinationY()));
        }