2013-08-17 2 views
-1

나는 원뿔 모양의 효과 영역에서 모든 격자 점을 찾기 위해 roguelike를 작성 중이며 알고리즘 (필요하면 c 구현이 필요)이 필요합니다.두 번째 콘 모양의 격자 점 찾기

아무도 도와 줄 수 있습니까?

+0

콘은 어떻게 정의됩니까? 격자 점은 어떻게 정의됩니까? 너 뭐 해봤 니? 어떤 (부정확 한) 결과가 그 결과를 줍니까? "rougelike"는 무엇입니까? –

+0

[원형 분야] (http://en.wikipedia.org/wiki/Circular_sector)를 의미합니까? – sh1

+0

채워진 원형 섹터가 작동합니다. –

답변

1

플레이어가있는 격자 점에서 시작하여 '허용 된 격자 점 목록'에 추가하십시오. 귀하의 목록은 그 한 지점으로 시작됩니다.

다음으로 허용 목록에서 반복하고 각 하나 (하나만 시작하는 것)에서 손목이없는 이웃 격자 점에 대해 플레이어의 각도와 거리를 계산합니다. 이러한 셀이 원뿔 매개 변수의 각도와 반경 내에 있으면 해당 값을 목록 끝에 추가하십시오. 해당 격자 점이 바깥 쪽이면 목록에 추가하지 마십시오. 결국 매개 변수를 충족시키는 더 이상 손길이 닿지 않은 이웃이 없으면 목록의 끝에 도달하게됩니다.

이것은 A * 알고리즘과 유사합니다.이 알고리즘은 사용자의 원뿔에 속하는 점 이외에 아무것도 표시되지 않을 때까지 모든 인접 그리드 점을 계속 따라 가게됩니다.