diff --git a/addons/observers.luau b/addons/observers.luau index 9d84445..0d725f9 100755 --- a/addons/observers.luau +++ b/addons/observers.luau @@ -7,7 +7,7 @@ export type PatchedWorld = jecs.World & { observer: ( PatchedWorld, jecs.Query, - (jecs.Entity) -> () + ((jecs.Entity, jecs.Id, a) -> ())? ) -> () -> (jecs.Entity), monitor: ( PatchedWorld, @@ -40,7 +40,9 @@ local function observers_new(world, query, callback) if jecs.query_match(query, archetype) then i += 1 entities[i] = entity - callback(entity, id, value) + if callback ~= nil then + callback(entity, id, value) + end end end