Table of Contents

Class TickableGroup

Namespace
Framework.Systems.Time.Tick
Assembly
Assembly-CSharp.dll

ITickable 여럿을 하나의 그룹으로 묶어 일괄 활성화/비활성화 단위로 관리.

public class TickableGroup : ITickable
Inheritance
object
TickableGroup
Implements

Examples

var group = new TickableGroup();
group.Add(playerService);
group.Add(enemyService);
_tickSystem.Register(group, TickInterval.ServiceTick);

// 전투 일시 정지
group.SetActive(false);

Remarks

TickableGroup 자체를 TickSystem에 등록하면 그룹 내 모든 ITickable이 한꺼번에 Tick을 받는다. SetActive(false)로 일시 정지하면 내부 ITickable 전체의 Tick이 중단된다. 씬 전환 시 그룹 단위로 비활성화해 불필요한 연산을 줄일 수 있다.

Methods

Add(ITickable)

그룹에 ITickable 추가. 중복 추가 무시.

public void Add(ITickable tickable)

Parameters

tickable ITickable

추가할 Tick 대상.

Remove(ITickable)

그룹에서 ITickable 제거.

public void Remove(ITickable tickable)

Parameters

tickable ITickable

제거할 Tick 대상.

SetActive(bool)

그룹 전체 Tick 활성화/비활성화.

public void SetActive(bool active)

Parameters

active bool

false이면 Tick 전달 중단.

Tick(float)

매 프레임(또는 TickInterval에 따라) 호출되는 업데이트 메서드.

public void Tick(float dt)

Parameters

dt float

ITimeSystem에서 전달된 DeltaTime. IsPaused 상태이면 0.