From 98ba5cc9b8579c89f964cde1bcd882186e9247a9 Mon Sep 17 00:00:00 2001 From: ne_mene Date: Mon, 30 Mar 2026 01:00:01 +0200 Subject: speck oneshot vfx entity --- src/objs/specks.lua | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'src/objs/specks.lua') diff --git a/src/objs/specks.lua b/src/objs/specks.lua index 3ea7e43..dd14a59 100644 --- a/src/objs/specks.lua +++ b/src/objs/specks.lua @@ -279,3 +279,22 @@ function load_speck_sys(filename) end return sys end + +function new_speck_entity(x, y, filepath) + local ent = new_entity() + add_comp(ent, "Position", x, y) + add_comp(ent, "Speck_System") + ent.speck_sys = load_speck_sys(filepath) + ent.speck_sys.oneshot = true + + add_comp(ent, "Speck_Entity") +end + +register_comp("Speck_Entity", TAGCOMP) + +function speck_entity_system(ent, dt) + local sys = ent.speck_sys + if not sys.emitting and sys:is_empty() then + queue_entity_kill(ent) + end +end -- cgit v1.3-2-g0d8e