layer_sprite_get_angle 함수 설명
layer_sprite_get_angle 함수는 스프라이트 요소의 현재 각도를 가져오는 데 사용됩니다. 이 함수는 스프라이트 요소 ID를 인자로 받아, 해당 스프라이트의 각도를 반환합니다. 각도 값은 0에서 360 사이의 실수 값으로, 0은 오른쪽, 90은 위쪽, 180은 왼쪽, 270은 아래쪽을 나타냅니다.
문법
layer_sprite_get_angle(sprite_element_id);
인자 설명
| 인자 이름 | 타입 | 설명 |
|---|---|---|
| sprite_element_id | Sprite Element ID | 정보를 가져올 스프라이트 요소의 고유 ID 값 |
반환 값
- 실수 값 (Real)
예제 코드
다음은 layer_sprite_get_angle 함수를 사용하는 예제입니다.
var lay_id = layer_get_id("sprite_sky");
var spr_id = layer_sprite_get_id(lay_id, "Clouds");
if (layer_sprite_get_angle(spr_id) != 0) {
layer_sprite_yscale(spr_id, 0);
}
위의 코드는 "sprite_sky"라는 이름의 레이어에 대한 핸들을 가져온 후, 해당 레이어에서 "Clouds"라는 스프라이트 요소의 ID를 얻습니다. 이 ID를 사용하여 각도를 확인하고, 각도가 0이 아닐 경우 Y 스케일을 0으로 설정합니다.
활용 예제
- 스프라이트 회전 제어
gml var angle = layer_sprite_get_angle(spr_id); if (angle > 180) { layer_sprite_set_angle(spr_id, 180); } - 스프라이트의 방향에 따라 다른 행동 수행
gml var angle = layer_sprite_get_angle(spr_id); if (angle == 90) { // 위쪽으로 이동 } else if (angle == 270) { // 아래쪽으로 이동 } - 스프라이트의 각도에 따라 애니메이션 변경
gml var angle = layer_sprite_get_angle(spr_id); if (angle < 90) { sprite_index = spr_animation1; } else { sprite_index = spr_animation2; } - 스프라이트의 각도에 따라 색상 변경
gml var angle = layer_sprite_get_angle(spr_id); if (angle == 0) { layer_sprite_color(spr_id, c_red); } else { layer_sprite_color(spr_id, c_blue); } - 스프라이트의 각도에 따라 크기 조정
gml var angle = layer_sprite_get_angle(spr_id); if (angle > 90) { layer_sprite_xscale(spr_id, 1.5); } else { layer_sprite_xscale(spr_id, 1); }