layer_text_x 함수 설명
layer_text_x 함수는 주어진 텍스트 요소의 X(수평) 위치를 변경하는 기능을 제공합니다. 텍스트의 X 위치는 요소의 xorigin 값에 의해 오프셋됩니다.
문법
layer_text_x(text_element_id, x);
매개변수
| 매개변수 | 타입 | 설명 |
|---|---|---|
| text_element_id | Text | 텍스트 요소 ID, layer_text_create 또는 layer_text_get_id에서 가져옵니다. |
| x | Real | 요소의 X 위치 |
반환값
- N/A
예제
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 변수를 초기화해야 합니다.
활용 예제
- 텍스트 요소의 위치 애니메이션
gml var _text_id = layer_text_get_id("UI", "score_text"); var _score_pos = layer_text_get_x(_text_id); layer_text_x(_text_id, _score_pos + 2); - 텍스트 요소의 경계 체크
gml var _text_id = layer_text_get_id("Game", "player_name"); var _text_pos = layer_text_get_x(_text_id); if (_text_pos > room_width) { layer_text_x(_text_id, 0); } - 텍스트 요소의 위치 랜덤화
gml var _text_id = layer_text_get_id("Assets", "random_text"); var _random_x = random(room_width); layer_text_x(_text_id, _random_x); - 텍스트 요소의 주기적인 이동
gml var _text_id = layer_text_get_id("Assets", "moving_text"); var _current_x = layer_text_get_x(_text_id); layer_text_x(_text_id, _current_x + sin(current_time / 100) * 5);
이 예제들은 layer_text_x 함수를 활용하여 텍스트 요소의 위치를 다양하게 조정하는 방법을 보여줍니다.