⚠
FlameSystem · Alarm
Alarm
화염 이벤트 감지 → 메인 쓰레드 이벤트 변환 → 프레임 종료 후 일괄 발신
scroll

FlameSystem.Alarm

주변에서 발생하는 화염 이벤트를 감지하고, 메인 쓰레드 이벤트로 변환하여 스케줄 큐에 추가합니다. 수집된 이벤트는 해당 프레임의 업데이트 완료 이후 일괄 발신됩니다.

ⓘ

이벤트는 감지 즉시 발신되지 않습니다. 프레임 내에 누적된 후 업데이트 완료 시점에 한 번에 발신되어, 동일 프레임 내 상태 변화로 인한 중복 처리를 방지합니다.

두 가지 이벤트를 수신합니다

점화 이벤트
Ignition Event

특정 엔티티 또는 위치에서 발화가 시작될 때 발생합니다. Alarm은 이를 감지하여 큐에 추가합니다.

화염 확산 이벤트
Spread Event

화염이 인접 엔티티 또는 영역으로 확산될 때 발생합니다. Alarm은 이를 감지하여 큐에 추가합니다.

감지 → 변환 → 큐 → 발신

🔥
감지
주변 점화·확산 이벤트 수신
⇄
변환
메인 쓰레드 이벤트 형식으로 변환
☷
큐 추가
스케줄 큐에 누적
➤
일괄 발신
프레임 업데이트 완료 후 전송

프레임 업데이트 완료 이후 발신

Ignition
Spread
Spread
Queue
frame end
→
Main
Thread

프레임 내에서 발생한 모든 이벤트는 스케줄 큐에 누적됩니다. 해당 프레임의 업데이트가 완료되는 시점에 큐의 내용이 일괄적으로 메인 쓰레드에 발신됩니다.

이를 통해 동일 프레임 내 복수의 화염 이벤트가 발생하더라도, 처리는 항상 프레임 경계에서 한 번에 이루어집니다.