클릭 가능한 아이콘 변경 함수 설명
clickable_change_ext
함수는 clickable_add()
로 생성된 클릭 가능한 아이콘의 스프라이트와 위치를 변경하는 데 사용됩니다. 이 함수는 다음과 같은 특징이 있습니다:
- 위치는 캔버스가 아닌 창을 기준으로 하며, (0,0) 위치에서 시작합니다.
- 스프라이트는 텍스처 페이지에서 직접 참조해야 합니다. (자세한 내용은
sprite_get_tpe()
를 참조하세요.) - 아이콘의 스케일과 알파 값도 변경할 수 있습니다. 스케일은 기본값 1을 기준으로 하며, 0.5는 절반, 2는 두 배를 의미합니다. 알파 값은 0(완전 투명)에서 1(완전 불투명)까지 설정할 수 있습니다.
문법
clickable_change_ext(index, tpe, x, y, alpha, scale)
인수 설명
인수 | 타입 | 설명 |
---|---|---|
index | Clickable ID | 변경할 클릭 가능한 아이콘의 인덱스입니다. |
tpe | Texture Page Entry | 사용할 스프라이트의 텍스처 페이지 항목입니다. |
x | Real | 창 내에서의 새로운 x 위치입니다. |
y | Real | 창 내에서의 새로운 y 위치입니다. |
scale | Real | 아이콘의 스케일 (기본값 1)입니다. |
alpha | Real | 아이콘의 이미지 알파 (기본값 1)입니다. |
반환값
- N/A
활용 예제
다음은 현재 방에 따라 클릭 가능한 아이콘의 이미지 인덱스와 위치를 변경하는 예제입니다:
switch (room) {
case rm_Menu:
clickable_change_ext(global.Help_Icon, sprite_get_tpe(spr_MS_Help, 1), 32, 32, 2, 1);
break;
case rm_Game:
clickable_change_ext(global.Help_Icon, sprite_get_tpe(spr_MS_Help, 0), 200, 32, 1, 0.5);
break;
}
위 코드는 변수 "global.Help"에 인덱스된 클릭 가능한 아이콘의 이미지 인덱스와 위치를 현재 방에 따라 변경합니다. 아이콘의 스케일과 알파 값도 함께 변경됩니다.
추가 활용 예제
- 아이콘 위치 변경: 게임에서 특정 이벤트 발생 시 아이콘 위치를 변경할 수 있습니다.
gml clickable_change_ext(global.Action_Icon, sprite_get_tpe(spr_Action, 0), mouse_x, mouse_y, 1, 1);
- 아이콘 크기 조정: 사용자 인터페이스에서 아이콘의 크기를 조정하여 강조할 수 있습니다.
gml clickable_change_ext(global.Notification_Icon, sprite_get_tpe(spr_Notify, 0), 100, 100, 1, 1.5);
- 아이콘 투명도 조정: 특정 상황에서 아이콘을 점점 사라지게 할 수 있습니다.
gml clickable_change_ext(global.Warning_Icon, sprite_get_tpe(spr_Warning, 0), 50, 50, 0.5, 1);
- 다양한 스프라이트 사용: 게임의 상태에 따라 다른 스프라이트를 사용할 수 있습니다.
gml clickable_change_ext(global.Status_Icon, sprite_get_tpe(spr_Status, game_status), 150, 150, 1, 1);
이와 같이 clickable_change_ext
함수를 활용하여 다양한 상황에 맞게 클릭 가능한 아이콘을 동적으로 변경할 수 있습니다.