public void Step4_Join() { if (m_islands == null) { return; } if (!m_startSet) { return; } if (!m_endSet) { return; } int startHitIndex = SpriteIsland.HitIndex(m_islands, m_startx, m_starty); if (startHitIndex == -1) { return; } int endHitIndex = SpriteIsland.HitIndex(m_islands, m_endx, m_endy); if (endHitIndex == -1) { return; } SpriteIsland.Join(m_islands, startHitIndex, endHitIndex); SpriteIsland.JoinOverlaps(m_islands); }
public void Step2_SetStart(int x, int y) { if (m_islands == null) { return; } int hitIndex = SpriteIsland.HitIndex(m_islands, x, y); m_startx = x; m_starty = y; m_startSet = hitIndex >= 0; }