Как проверить, находится ли узел рядом с другим? - PullRequest
0 голосов
/ 30 января 2019

Я хотел бы проверить, какие узлы находятся рядом с другим конкретным узлом.

В следующем примере зеленое поле используется для проверки того, какие поля находятся поблизости.Должно быть возвращено желтое, оранжевое (от горизонтального до зеленого и удалено только одно поле) и синее (по диагонали и удалено только одно поле) поле.

enter image description here

Каждое поле является узлом:

    let greenField = SKSpriteNode(imageNamed: "greenField")
    greenField.zPosition = 1

    let yellowField = SKSpriteNode(imageNamed: "yellowField")
    yellowField.zPosition = 1

    ...

Кто-нибудь знает, как это проверить?Буду очень признателен за любой ответ.

1 Ответ

0 голосов
/ 30 января 2019

Вы можете проверить расстояние каждого узла.

CGFloat distance = hypotf(p1.x - p2.x, p1.y - p2.y);

Совет: Убедитесь, что точка привязки находится в центре, чтобы упростить ее.

...