layer_sprite_get_speed 함수 설명
layer_sprite_get_speed 함수는 스프라이트 요소의 현재 속도 배율 값을 가져오는 데 사용됩니다. 이 함수는 스프라이트 요소 ID를 인자로 받아, 해당 스프라이트의 애니메이션 속도를 나타내는 실수 값을 반환합니다. 기본 값은 1입니다.
문법
layer_sprite_get_speed(sprite_element_id);
인자 설명
| 인자 이름 | 타입 | 설명 |
|---|---|---|
| sprite_element_id | Sprite Element ID | 정보를 가져올 스프라이트 요소의 고유 ID 값 |
반환 값
- 실수 값 (Real)
예제
var lay_id = layer_get_id("sprite_sky");
var spr_id = layer_sprite_get_id(lay_id, "Clouds");
if (layer_sprite_get_speed(spr_id) > 0) {
layer_sprite_speed(spr_id, 0);
}
위 코드는 "sprite_sky"라는 레이어의 핸들을 가져온 후, 해당 레이어에서 "Clouds"라는 스프라이트 요소의 ID를 얻습니다. 이 ID를 사용하여 요소의 애니메이션 속도를 확인하고, 만약 속도가 0보다 크면 속도를 0으로 설정합니다.
활용 예제
1. 스프라이트 속도 조정
var lay_id = layer_get_id("sprite_background");
var spr_id = layer_sprite_get_id(lay_id, "Stars");
if (layer_sprite_get_speed(spr_id) < 1) {
layer_sprite_speed(spr_id, 1); // 속도를 1로 설정
}
2. 애니메이션 일시 정지
var lay_id = layer_get_id("sprite_character");
var spr_id = layer_sprite_get_id(lay_id, "Hero");
if (layer_sprite_get_speed(spr_id) > 0) {
layer_sprite_speed(spr_id, 0); // 애니메이션 일시 정지
}
3. 속도 증가
var lay_id = layer_get_id("sprite_effects");
var spr_id = layer_sprite_get_id(lay_id, "Explosion");
var current_speed = layer_sprite_get_speed(spr_id);
layer_sprite_speed(spr_id, current_speed + 0.5); // 현재 속도에 0.5 추가
4. 속도 감소
var lay_id = layer_get_id("sprite_enemies");
var spr_id = layer_sprite_get_id(lay_id, "EnemyShip");
var current_speed = layer_sprite_get_speed(spr_id);
if (current_speed > 0.5) {
layer_sprite_speed(spr_id, current_speed - 0.5); // 현재 속도에서 0.5 감소
}
5. 속도에 따라 애니메이션 변경
var lay_id = layer_get_id("sprite_player");
var spr_id = layer_sprite_get_id(lay_id, "PlayerRun");
if (layer_sprite_get_speed(spr_id) > 2) {
layer_sprite_speed(spr_id, 2); // 속도가 2보다 크면 2로 설정
}
이와 같은 다양한 활용 예제를 통해 layer_sprite_get_speed 함수를 효과적으로 사용할 수 있습니다.