layer_text_y 함수 설명
layer_text_y 함수는 주어진 텍스트 요소의 Y(수직) 위치를 변경하는 기능을 제공합니다. 텍스트의 Y 위치는 요소의 yorigin 값에 의해 오프셋됩니다.
문법
layer_text_y(text_element_id, y);
매개변수
| 매개변수 | 유형 | 설명 |
|---|---|---|
| text_element_id | Text | 텍스트 요소 ID, layer_text_create 또는 layer_text_get_id에서 가져옵니다. |
| y | Real | 요소의 Y 위치 |
반환값
- N/A
예제
다음은 텍스트 요소의 Y 위치를 변경하는 예제입니다.
var _text1_id = layer_text_get_id("Assets", "text1");
var _text1_pos = {x : layer_text_get_x(_text1_id), y : layer_text_get_y(_text1_id)};
if (_text1_pos.y > room_height) _text1_pos.y = 0;
if (_text1_pos.y < 0) _text1_pos.y = room_height;
if (_text1_pos.x > room_width) _text1_pos.x = 0;
if (_text1_pos.x < 0) _text1_pos.x = room_width;
layer_text_x(_text1_id, _text1_pos.x + 4);
layer_text_y(_text1_id, _text1_pos.y + 4);
이 코드는 Assets 레이어에서 text1 텍스트 요소의 ID를 가져오고, 해당 요소의 X 및 Y 위치를 구조체에 저장합니다. 그런 다음, 좌표가 방의 경계에 도달했는지 확인하고, 경계를 넘어가면 반대쪽으로 위치를 설정합니다(예: 오른쪽 경계를 넘어가면 왼쪽 경계로 이동). 마지막으로, 각 위치에 4를 더하여 매 프레임마다 4픽셀씩 아래와 오른쪽으로 이동하도록 설정합니다. 이 코드는 Step 이벤트를 위한 것이므로, Create 이벤트에서 _text1_id 변수를 초기화해야 합니다.
활용 예제
1. 텍스트 애니메이션
var _text_id = layer_text_get_id("UI", "score");
layer_text_y(_text_id, layer_text_get_y(_text_id) + 1);
2. 화면 경계에서 반사
||
|---|
speed_y = -speed_y;
}
3. 사용자 입력에 따른 위치 변경
if (keyboard_check(vk_up)) {
layer_text_y(_text_id, layer_text_get_y(_text_id) - 5);
}
if (keyboard_check(vk_down)) {
layer_text_y(_text_id, layer_text_get_y(_text_id) + 5);
}
4. 시간에 따른 위치 변화
layer_text_y(_text_id, layer_text_get_y(_text_id) + sin(current_time / 100) * 2);
5. 텍스트 요소의 Y 위치를 랜덤하게 변경
layer_text_y(_text_id, random(room_height));
이와 같은 다양한 활용 예제를 통해 layer_text_y 함수를 효과적으로 사용할 수 있습니다.