using ProjectM.Simulation;
using Unity.Entities;
using UnityEngine;
namespace ProjectM.Authoring
{
///
/// Authoring for a Blight-geyser ghost prefab (ownerless interpolated — duplicate from ResourceNode.prefab so the
/// GhostAuthoringComponent + LinkedEntityGroup come free; keep a cosmetic vent mesh, NO physics collider — the
/// hazard is the AoE, you walk over it). Bakes (NextEruptTick left 0 — the server stamps it
/// born-correct from the live ServerTick at spawn in RoomFieldSystem; a 0 must NEVER erupt) +
/// {Expedition} so GhostRelevancy scopes it to expedition players. The field spawner
/// overrides Position + the born-correct NextEruptTick per instance.
///
public class GeyserAuthoring : MonoBehaviour
{
private class GeyserBaker : Baker
{
public override void Bake(GeyserAuthoring authoring)
{
var entity = GetEntity(authoring, TransformUsageFlags.Dynamic);
AddComponent(entity, new Geyser { NextEruptTick = 0u }); // 0 = unstamped; server stamps born-correct at spawn
AddComponent(entity, new RegionTag { Region = RegionId.Expedition });
}
}
}
}