sign 함수 설명 및 활용 예제
sign
함수는 주어진 숫자가 양수인지, 음수인지, 아니면 0인지 판단하여 각각 1, -1, 또는 0을 반환합니다. 예를 들어, sign(458)
은 1을 반환하고, sign(-5)
는 -1을 반환하며, sign(0)
은 0을 반환합니다.
사용법 노트
sign(NaN)
은 항상 -1을 반환합니다.
문법
sign(n);
인수
인수 | 타입 | 설명 |
---|---|---|
n | Real | 부호를 확인할 숫자 |
반환값
반환값 | 타입 | 설명 |
---|---|---|
Real | 숫자의 부호 (1, -1, 0) |
예제
y += sign(y - mouse_y);
위 코드는 y - mouse_y
의 결과에 따라 y
에 1, -1 또는 0을 더합니다.
활용 예제
- 점수 시스템
gml score += sign(player_score - enemy_score);
이 코드는 플레이어의 점수가 적의 점수보다 높으면 1을 더하고, 낮으면 -1을 빼며, 같으면 변동이 없습니다. - 캐릭터 이동
gml if (key_left) { x -= sign(-1); } else if (key_right) { x += sign(1); }
이 코드는 왼쪽 키가 눌리면 캐릭터를 왼쪽으로, 오른쪽 키가 눌리면 오른쪽으로 이동시킵니다. - 충돌 처리
gml if (place_meeting(x + sign(dx), y, obj_wall)) { x += sign(dx) * -1; // 벽에 부딪히면 반대 방향으로 이동 }
이 코드는 캐릭터가 벽과 충돌할 경우 반대 방향으로 이동하게 합니다. - 속도 조절
gml speed += sign(target_speed - speed);
이 코드는 현재 속도와 목표 속도의 차이에 따라 속도를 조절합니다. - AI 행동
gml direction += sign(player_x - enemy_x);
이 코드는 적이 플레이어의 위치에 따라 방향을 조정하게 합니다.