layer_sprite_get_yscale 함수 설명 및 활용 예제
layer_sprite_get_yscale 함수는 스프라이트 요소의 현재 y축 스케일 배율을 가져오는 데 사용됩니다. 이 함수는 스프라이트 요소의 ID를 인자로 받아, 해당 스프라이트의 y축 스케일 값을 반환합니다. 스케일 값이 1이면 스케일이 적용되지 않은 상태입니다.
문법
layer_sprite_get_yscale(sprite_element_id);
인자 설명
| 인자 이름 | 타입 | 설명 |
|---|---|---|
| sprite_element_id | Sprite Element ID | 정보를 가져올 스프라이트 요소의 고유 ID 값 |
반환값
- 실수형 값: y축 스케일 값
예제
var lay_id = layer_get_id("sprite_sky");
var spr_id = layer_sprite_get_id(lay_id, "Clouds");
if (layer_sprite_get_yscale(spr_id) != 1){
layer_sprite_yscale(spr_id, 1);
}
위 코드는 "sprite_sky"라는 레이어의 핸들을 가져오고, 그 레이어에서 "Clouds"라는 스프라이트 요소의 ID를 얻습니다. 이후 y축 스케일 값이 1이 아닌 경우, 스케일을 1로 설정합니다.
활용 예제
예제 1: 스프라이트 스케일 조정
var sprite_id = layer_sprite_get_id(layer_get_id("background"), "Tree");
if (layer_sprite_get_yscale(sprite_id) < 0.5) {
layer_sprite_yscale(sprite_id, 0.5);
}
이 코드는 "background" 레이어에서 "Tree" 스프라이트의 y축 스케일이 0.5보다 작으면 0.5로 설정합니다.
예제 2: 스프라이트 스케일 애니메이션
var sprite_id = layer_sprite_get_id(layer_get_id("characters"), "Hero");
var current_scale = layer_sprite_get_yscale(sprite_id);
layer_sprite_yscale(sprite_id, current_scale + 0.1);
이 코드는 "characters" 레이어의 "Hero" 스프라이트의 현재 y축 스케일을 가져와서 0.1을 더해 스케일을 증가시킵니다.
예제 3: 특정 조건에 따른 스케일 변경
var sprite_id = layer_sprite_get_id(layer_get_id("effects"), "Explosion");
if (some_condition) {
layer_sprite_yscale(sprite_id, 2);
} else {
layer_sprite_yscale(sprite_id, 1);
}
이 코드는 "effects" 레이어의 "Explosion" 스프라이트의 y축 스케일을 특정 조건에 따라 2 또는 1로 설정합니다.