작품에 2D 타일 기반 전략이 있습니다. 지도와지도의 단위 간의 관계를 처리하는 방법을 방황하고 있습니다.
타일 좌표가 주어지면 유닛이 서있을 수 있어야합니다. 동시에 단위가 주어지면 단위의 좌표를 얻을 수 있기를 원할 것입니다.
나는 이것에 대한 두 가지 해결책을 보았다. 첫 번째 해결책은 유닛이 좌표를 저장하고지도 저장 유닛 참조를 타일에 저장하는 것입니다. 이는 맵과 단위 사이에 주기적 종속성을 작성합니다. 유닛이 움직일 때 모든 유닛의 맵이 동기화되어 있는지 확인해야합니다.
두 번째 해결책은 단위 만 좌표를 추적하도록하는 것입니다. 타일에 단위가 포함되어 있는지 확인하고 해당 단위를 얻으려면 전체 단위 세트를 반복하여 일치하는 좌표가있는 단위를 찾습니다. 순환 의존성을 제거하지만 첫 번째 솔루션이 맵에서 단위를 찾는 데 필요한 O (1) 속성을 잃습니다. 경로 찾기, 이동 범위 결정 및 주어진 단위에 대한 유효한 목표 찾기와 같은 것들에 대해 정기적으로지도를 스캔하고 싶을 때 추가 될 수 있습니다.
또한지도에 단위를 저장할 수 없습니다 (또는 할 수 있습니까?). 부대는 플레이어 또는 AI의 "군대"와 관련이 있습니다. 군대는 모든 부대를 쉽게 접근하고 반복 할 수 있어야합니다.
이것이 전략 게임에서 일반적인 문제인 것처럼 보이기 때문에 단위 / 맵 관계 관리에 대해 설명한 두 가지 패턴 외에 다른 패턴이 있습니까?