스켈레톤 애니메이션 위치 가져오기
skeleton_animation_get_position 함수는 지정된 애니메이션 트랙에서 애니메이션의 위치를 0에서 1 사이의 값으로 반환합니다. 이 값은 애니메이션 트랙의 위치를 백분율로 나타내며, 0은 0%에 해당하고 1은 100%에 해당합니다. 만약 특정 트랙에 애니메이션이 할당되지 않았거나 인스턴스에 스프라이트가 설정되지 않은 경우 -1을 반환합니다.
문법
skeleton_animation_get_position(track);
인수 설명
| 인수 | 유형 | 설명 |
|---|---|---|
| track | Real | 위치를 가져올 애니메이션 트랙 |
반환값
- Real: 애니메이션 트랙의 현재 위치
예제 코드
var _position = skeleton_animation_get_position(0);
var _position_percent = _position * 100;
show_debug_message("The skeleton animation position on track 0 is at " + string(_position_percent) + "%.");
위의 코드는 트랙 0에 할당된 스켈레톤 애니메이션의 현재 위치를 확인하고, 이를 임시 변수 _position에 저장합니다. 그 후, 이 값을 100으로 곱하여 백분율로 변환하고, 결과를 또 다른 임시 변수 _position_percent에 저장합니다. 마지막으로, 디버그 메시지를 통해 백분율 값을 표시합니다.
활용 예제
예제 1: 애니메이션 진행 상태 확인
var current_position = skeleton_animation_get_position(1);
if (current_position >= 0.5) {
show_debug_message("애니메이션이 절반 이상 진행되었습니다.");
}
예제 2: 애니메이션 완료 여부 체크
var animation_complete = skeleton_animation_get_position(2);
if (animation_complete == 1) {
show_debug_message("애니메이션이 완료되었습니다.");
}
예제 3: 애니메이션 속도 조절
var position = skeleton_animation_get_position(0);
if (position < 0.5) {
// 애니메이션 속도를 증가시킴
skeleton_animation_set_speed(0, 2);
} else {
// 애니메이션 속도를 감소시킴
skeleton_animation_set_speed(0, 1);
}
이러한 예제들은 skeleton_animation_get_position 함수를 활용하여 애니메이션의 진행 상태를 확인하고, 그에 따라 다양한 행동을 취하는 방법을 보여줍니다.