← ClaudeAtlas

godot-signals-eventslisted

Godot signals as first-class objects - declaring custom signals, connect and emit in Godot 4, Callable binding, connection flags, editor connections stored in the .tscn, awaiting a signal, and when an event bus autoload helps versus when it hides the call graph. Use when wiring nodes together, when a handler fires twice or never, when connections leak across scene reloads, or when a codebase has become impossible to trace because everything talks through a global bus.
ibrohim1234567881717/game-dev-ai-skills · ★ 0 · AI & Automation · score 71
Install: claude install-skill ibrohim1234567881717/game-dev-ai-skills
# Godot Signals and Events ## Purpose Signals are Godot's observer implementation and the main tool for decoupling a node from whatever cares about it. In Godot 4 they stopped being strings and became objects: `damaged` is a property of type `Signal`, `damaged.emit(10)` is a method call, and `damaged.connect(_on_damaged)` takes a `Callable`. That change removed a whole class of typo bugs and introduced a new one — a connection is now a reference between two objects, with lifetime rules. This skill covers the mechanics, the flags that matter, and the architectural question of how much should travel through signals at all. ## When to use - Wiring a node to something that reacts to it. - A handler runs twice, or stops running after a scene reload. - Deciding between a direct method call, a signal, and a global event bus. - Porting `connect("sig", self, "_method")` from Godot 3. - Chasing "Attempt to call function on a previously freed instance" inside a signal callback. - A codebase where finding what handles an event requires a full-text search. ## When NOT to use - Scene tree shape and node ownership — `godot-scene-composition`. - General GDScript syntax and lifecycle — `godot-gdscript-patterns`. - Input events specifically, which have their own propagation chain — `godot-ui-control-nodes` covers the `_input` / `_gui_input` / `_unhandled_input` ordering. - Network replication, which is not a signal problem — `godot-multiplayer`. ## Required context - **Major vers