Remove ScreenToWorld (#1114)

This commit is contained in:
ComicIronic
2020-06-07 23:41:59 +01:00
committed by GitHub
parent dd0cb9f216
commit d631048c1e
4 changed files with 24 additions and 7 deletions

View File

@@ -729,12 +729,18 @@ namespace Robust.Client.Console.Commands
var inputMan = IoCManager.Resolve<IInputManager>();
var eyeMan = IoCManager.Resolve<IEyeManager>();
var mousePos = eyeMan.ScreenToWorld(inputMan.MouseScreenPosition);
var mousePos = eyeMan.ScreenToMap(inputMan.MouseScreenPosition);
var grid = (IMapGridInternal)mapMan.GetGrid(mousePos.GridID);
if (!mapMan.TryFindGridAt(mousePos, out var grid))
{
console.AddLine("No grid under your mouse cursor.");
return false;
}
var chunkIndex = grid.LocalToChunkIndices(mousePos);
var chunk = grid.GetChunk(chunkIndex);
var internalGrid = (IMapGridInternal)grid;
var chunkIndex = grid.LocalToChunkIndices(grid.MapToGrid(mousePos));
var chunk = internalGrid.GetChunk(chunkIndex);
console.AddLine($"worldBounds: {chunk.CalcWorldBounds()} localBounds: {chunk.CalcLocalBounds()}");
return false;

View File

@@ -3,6 +3,7 @@ using Robust.Client.Graphics.ClientEye;
using Robust.Client.Graphics.Drawing;
using Robust.Shared.Map;
using Robust.Shared.Maths;
using Robust.Shared.Utility;
namespace Robust.Client.Placement.Modes
{
@@ -24,7 +25,9 @@ namespace Robust.Client.Placement.Modes
{
const int ppm = EyeManager.PixelsPerMeter;
var viewportSize = (Vector2)pManager._clyde.ScreenSize;
var position = pManager.eyeManager.ScreenToWorld(Vector2.Zero);
var position = pManager.eyeManager.ScreenToMap(Vector2.Zero);
var gridstartx = (float) Math.Round(position.X / snapSize, MidpointRounding.AwayFromZero) * snapSize;
var gridstarty = (float) Math.Round(position.Y / snapSize, MidpointRounding.AwayFromZero) * snapSize;
var gridstart = pManager.eyeManager.WorldToScreen(

View File

@@ -2,6 +2,7 @@
using Robust.Shared.Map;
using Robust.Shared.Maths;
using Robust.Client.Graphics.Drawing;
using Robust.Shared.Utility;
namespace Robust.Client.Placement.Modes
{
@@ -20,7 +21,9 @@ namespace Robust.Client.Placement.Modes
if (onGrid)
{
var viewportSize = (Vector2)pManager._clyde.ScreenSize;
var position = pManager.eyeManager.ScreenToWorld(Vector2.Zero);
var position = pManager.eyeManager.ScreenToMap(Vector2.Zero);
var gridstart = pManager.eyeManager.WorldToScreen(new Vector2( //Find snap grid closest to screen origin and convert back to screen coords
(float)(Math.Round(position.X / snapSize - 0.5f, MidpointRounding.AwayFromZero) + 0.5f) * snapSize,
(float)(Math.Round(position.Y / snapSize - 0.5f, MidpointRounding.AwayFromZero) + 0.5f) * snapSize));

View File

@@ -217,7 +217,12 @@ namespace Robust.Client.Placement
protected GridCoordinates ScreenToCursorGrid(ScreenCoordinates coords)
{
return pManager.eyeManager.ScreenToWorld(coords.Position);
var mapCoords = pManager.eyeManager.ScreenToMap(coords.Position);
if (!pManager.MapManager.TryFindGridAt(mapCoords, out var grid))
{
grid = pManager.MapManager.GetDefaultGrid(mapCoords.MapId);
}
return grid.MapToGrid(mapCoords);
}
}
}