如何检查地图上特定对象的坐标?

杰西·肖恩维尔德

所以我正在尝试制作一个战舰游戏。首先,我只想能够在特定位置放置船只,它们不需要超过 1 个空间。但是我无法理解如何检查我的船阵列中对象的位置。

我想要做的是能够放置在一个位置,例如 3,3 并检查那里是否有船。当然,我会在之后添加更多东西,比如更大的船只,与可以将船只放置在随机位置的 PC 对战。但就目前而言,我似乎无法弄清楚这一点。

我对编程还很陌生,所以如果您看到有关此脚本的任何问题,请随时指出。

我在其中初始化船阵列和板的主类。

static void Main()
    {
        Board board = new Board(10, 10);

        try
        {

            Ship[] ships =
            {
                new Ship(new BoardLocation(1, 3, board)),
                new Ship(new BoardLocation(3, 5, board)),
                new Ship(new BoardLocation(5, 7, board))

            };

            Console.WriteLine("Enter the coordinate: ");
            double cr1 = Convert.ToDouble(Console.ReadLine());

            if (cr1 == ships.Contains<>)
            {

            }

我的板类:

namespace Battleship
{
class Board
{
    public readonly int Width;
    public readonly int Height;

    public Board(int width, int height)
    {
        Width = width;
        Height = height;

    }

    public bool OnBoard(Point point)
    {
        return point.X >= 0 && point.X < Width &&
               point.Y >= 0 && point.Y < Height;
    }

    }
}
}

我的板位类:

namespace Battleship
{
class BoardLocation : Point
{
    public BoardLocation(int x, int y, Board board) : base(x, y)
    {
        if (!board.OnBoard(this))
        {
            throw new OutOfBoundsException(x + "," + y + " is outside the 
            boundaries of the map.");
        }

    }
}
}

我的船级:

namespace Battleship
{
class Ship
{
    public readonly int shipHealth = 1;
    public readonly double shipLocation;

    public BoardLocation _location;

    public Ship(BoardLocation location)
    {
        _location = location;
    }     


}
}
Mong Zhu

我建议使用该FirstOrDefault方法。null如果条件不匹配,这将返回,如果匹配,它将返回该项目。所以在读取两个坐标后:

Console.WriteLine("Enter the X coordinate: ");
int X_input = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Enter the Y coordinate: ");
int Y_input = Convert.ToInt32(Console.ReadLine());

要检查坐标,您需要访问 的XY属性_location你可以使用 linq

Ship mayBeHit = ships.FirstOrDefault(
                ship => ship._location.X==X_input && 
                ship._location.Y == Y_input);

然后你可以检查你是否有命中

if(maybeHit != null)
{
    // use the ship the you hit
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

D3 DataMaps(或jvectormap):如何通过坐标将自定义对象放置在地图上

来自分类Dev

如何将地图上的标记移动到新坐标?

来自分类Dev

如何让 MKAnnotations 在地图上平滑移动(调整它们的坐标)?

来自分类Dev

在地图上放置标记时如何获取坐标

来自分类Dev

如何沿地图上2个坐标之间的直线计算N个等距点的坐标?

来自分类Dev

在地图上绘制纬度经度坐标

来自分类Dev

在Google地图上找到标记的坐标

来自分类Dev

Swift 3 - 在地图上显示坐标

来自分类Dev

如何在此处地图上设置对象的组名

来自分类Dev

Python:如何在Cartopy地图上的特定点绘制散点图?

来自分类Dev

如何在地图上的特定位置添加图像?

来自分类Dev

如何在地图上显示特定路线的实时路况数据

来自分类常见问题

如何在地图上覆盖具有给定坐标的矩形?

来自分类Dev

如何使用d3js连接地图上的坐标点?

来自分类Dev

GeoJson要素坐标以米为单位,而不是[lng,lat]。如何在谷歌地图上显示?

来自分类Dev

如何在kibana中在地图上实时绘制地理坐标

来自分类Dev

如何在地图上覆盖具有给定坐标的矩形?

来自分类Dev

如何使用cartopy和matplotlib从'natural_earth'在地图上的csv中绘制坐标?

来自分类Dev

Windows Phone 8-如何在地图上显示经度和纬度坐标(当前位置)

来自分类Dev

Android Google Map API:如何获取最小和最大坐标可以在地图上看到

来自分类Dev

如何从动态地图上刮取地理坐标?

来自分类Dev

如何在地图上显示坐标并在它们之间绘制箭头?

来自分类Dev

如何在地图上按半径和中心计算东北坐标

来自分类Dev

如何从HERE地图获取特定地点的GPS坐标

来自分类Dev

在地图上绘制特定元素

来自分类Dev

在地图视图上显示多个地图注释/坐标

来自分类Dev

如何使用google.maps.Rectangle对象在Google地图上绘制选择框/边界框/矩形,并检查标记是否在其中

来自分类Dev

如何使用经纬度坐标计算Google地图上两条路径线之间的角度

来自分类Dev

如何通过从数据库中提取所有坐标来使用传单在地图上放置标记?

Related 相关文章

  1. 1

    D3 DataMaps(或jvectormap):如何通过坐标将自定义对象放置在地图上

  2. 2

    如何将地图上的标记移动到新坐标?

  3. 3

    如何让 MKAnnotations 在地图上平滑移动(调整它们的坐标)?

  4. 4

    在地图上放置标记时如何获取坐标

  5. 5

    如何沿地图上2个坐标之间的直线计算N个等距点的坐标?

  6. 6

    在地图上绘制纬度经度坐标

  7. 7

    在Google地图上找到标记的坐标

  8. 8

    Swift 3 - 在地图上显示坐标

  9. 9

    如何在此处地图上设置对象的组名

  10. 10

    Python:如何在Cartopy地图上的特定点绘制散点图?

  11. 11

    如何在地图上的特定位置添加图像?

  12. 12

    如何在地图上显示特定路线的实时路况数据

  13. 13

    如何在地图上覆盖具有给定坐标的矩形?

  14. 14

    如何使用d3js连接地图上的坐标点?

  15. 15

    GeoJson要素坐标以米为单位,而不是[lng,lat]。如何在谷歌地图上显示?

  16. 16

    如何在kibana中在地图上实时绘制地理坐标

  17. 17

    如何在地图上覆盖具有给定坐标的矩形?

  18. 18

    如何使用cartopy和matplotlib从'natural_earth'在地图上的csv中绘制坐标?

  19. 19

    Windows Phone 8-如何在地图上显示经度和纬度坐标(当前位置)

  20. 20

    Android Google Map API:如何获取最小和最大坐标可以在地图上看到

  21. 21

    如何从动态地图上刮取地理坐标?

  22. 22

    如何在地图上显示坐标并在它们之间绘制箭头?

  23. 23

    如何在地图上按半径和中心计算东北坐标

  24. 24

    如何从HERE地图获取特定地点的GPS坐标

  25. 25

    在地图上绘制特定元素

  26. 26

    在地图视图上显示多个地图注释/坐标

  27. 27

    如何使用google.maps.Rectangle对象在Google地图上绘制选择框/边界框/矩形,并检查标记是否在其中

  28. 28

    如何使用经纬度坐标计算Google地图上两条路径线之间的角度

  29. 29

    如何通过从数据库中提取所有坐标来使用传单在地图上放置标记?

热门标签

归档