Timer UE5
https://gyazo.com/e0b904287b3c30de0f569de2152371ed
worldが持つFTimerManagerからSetTimer()を呼びだす
FTimerManager& timerManager = GetWorld()->GetTimerManager();
SetTimer()の引数にDelegateやHandleやTimeRateを入れることでタイマーを作動。
最後の引数でloop実行か、one time実行かを制御できる
FTimerDelegate::CreateUObject()でFTimerDelegeteを作る
code:exmaple
// StartDelay秒後にPlayerControlerのSetPlayeEnableState(false)を実行
FTimerHandle PlayerEnableTimerHandle;
FTimerDelegate PlayerEnableTimerDelegate = FTimerDelegate::CreateUObject(
PlayerController,
&APlayerController::SetPlayerEnableState,
true
);
GetWorldTimerManager().SetTimer(
PlayerEnableTimerHandle,
PlayerEnableTimerDelegate,
StartDelay,
false
);