Beispiel #1
0
        public static (float x, float y, float z)? GetCursorPosition(bool isForObjectDrag)
        {
            Point?relPosMaybe = GetPositionMaybe(isForObjectDrag, false);

            if (!relPosMaybe.HasValue)
            {
                return(null);
            }
            Point relPos = relPosMaybe.Value;
            float inGameX, inGameY, inGameZ;

            if (Config.CurrentMapGraphics.IsOrthographicViewEnabled)
            {
                (inGameX, inGameY, inGameZ) = MapUtilities.ConvertCoordsForInGameOrthographicView(relPos.X, relPos.Y);
            }
            else
            {
                (inGameX, inGameZ) = MapUtilities.ConvertCoordsForInGameTopDownView(relPos.X, relPos.Y);
                inGameY            = Config.CurrentMapGraphics.MapViewCenterYValue;
            }
            return(inGameX, inGameY, inGameZ);
        }