경로 재조정 (path_rescale)
path_rescale 함수는 주어진 경로를 수직 및 수평 축을 따라 재조정하는 데 사용됩니다. 이 함수는 경로의 각 점을 새로운 위치로 이동시켜 경로의 중심을 기준으로 스케일을 조정합니다.
이 함수는 실제 경로 자산을 변경하므로, 함수가 호출된 순간부터 게임이 끝날 때까지 모든 인스턴스에서 경로의 사용 방식에 영구적으로 영향을 미칩니다. 만약 이러한 방식이 필요하지 않다면, path_duplicate()와 같은 함수를 사용하여 먼저 경로의 복사본을 만든 후, 복제된 자산에 대해 이 함수를 호출해야 합니다. 더 이상 필요하지 않은 경우에는 path_delete()를 호출하는 것을 잊지 마세요.
문법
path_rescale(index, xscale, yscale);
인수 설명
| 인수 | 유형 | 설명 |
|---|---|---|
| index | 정수 | 스케일을 조정할 경로의 인덱스입니다. |
| xscale | 실수 | 현재 수평 스케일에 곱할 값입니다. 기본값은 1입니다. |
| yscale | 실수 | 현재 수직 스케일에 곱할 값입니다. 기본값은 1입니다. |
반환값
이 함수는 반환값이 없습니다.
예제
path_rescale(pth_AI, 3, 3);
위 코드는 주어진 경로를 원래 크기의 3배로 재조정합니다.
활용 예제
- 경로 크기 조정: 게임에서 적의 이동 경로를 조정하여 난이도를 조절할 수 있습니다.
gml path_rescale(pth_enemy, 2, 2); - 다양한 크기의 경로 생성: 플레이어의 레벨에 따라 경로의 크기를 다르게 설정할 수 있습니다.
gml if (player_level > 5) { path_rescale(pth_player, 1.5, 1.5); } - 특정 이벤트에 따른 경로 조정: 특정 이벤트 발생 시 경로를 확대하거나 축소할 수 있습니다.
gml if (event_occurred) { path_rescale(pth_special, 0.5, 0.5); } - 복사본을 만들어 경로 조정: 원본 경로를 유지하면서 복사본을 조정할 수 있습니다.
gml var new_path = path_duplicate(pth_original); path_rescale(new_path, 2, 2); - 경로 삭제: 더 이상 필요하지 않은 경로를 삭제하여 메모리를 관리할 수 있습니다.
gml path_delete(new_path);
이와 같은 방법으로 path_rescale 함수를 활용하여 게임 내에서 경로를 유동적으로 조정할 수 있습니다.