주기 가져오기 (Get Period)
이 문서는 주기 길이를 특정 시간 소스에서 가져오는 방법을 설명합니다.
## 액션 설명
이 액션은 주어진 시간 소스의 주기 길이를 가져옵니다.
### 액션 구문
```gml
GetPeriod(TimeSource, Target, Temp);
인수 설명
| 인수 | 설명 |
|---|---|
| Time Source | 주기의 길이를 가져올 시간 소스 ID |
| Target | 반환값을 저장할 변수 |
| Temp | 변수를 임시 변수로 생성할지 여부 (True/False) |
예제 및 활용
기본 예제
주기 가져오기 액션을 사용하여 특정 시간 소스의 주기를 가져오는 예제입니다.
var period_length;
GetPeriod(myTimeSourceID, period_length, true);
show_message("주기 길이: " + string(period_length));
이 예제에서는 myTimeSourceID라는 시간 소스의 주기를 period_length 변수에 저장하고, 그 값을 메시지로 표시합니다.
임시 변수 사용 예제
임시 변수를 생성하여 주기를 가져오는 예제를 보여줍니다.
var temp_period;
GetPeriod(myTimeSourceID, temp_period, true);
if (temp_period != undefined) {
show_message("임시 주기 길이: " + string(temp_period));
}
이 코드에서는 주기를 임시 변수인 temp_period에 저장하고, 주기가 유효할 경우 메시지로 표시합니다.
함수와의 결합 예제
주기 가져오기 기능을 다른 함수와 결합하여 효과적으로 사용할 수 있습니다.
function getAndProcessPeriod(time_source_id) {
var period;
GetPeriod(time_source_id, period, true);
if (period > 0) {
return period * 2; // 주기를 두 배로 증가시킴
}
return 0;
}
var result = getAndProcessPeriod(myTimeSourceID);
show_message("처리된 주기: " + string(result));
위 코드에서는 getAndProcessPeriod 함수를 정의하여 시간 소스의 주기를 가져오고, 주기가 0보다 클 경우 그 값을 두 배로 늘려 반환합니다.
결론
주기 가져오기 액션은 특정 시간 소스의 주기 길이를 얻는 간단하지만 유용한 기능입니다. 이 액션을 활용하여 게임의 타이머, 주기적 이벤트 등에 효과적으로 사용할 수 있습니다. ```