The Godot Q&A is currently undergoing maintenance!

Your ability to ask and answer questions is temporarily disabled. You can browse existing threads in read-only mode.

We are working on bringing this community platform back to its full functionality, stay tuned for updates. | Twitter

0 votes

I'm building a TD game with an enemySpawner which handles just that.

I've recently erased from enemies a "life_changed" signal which they all had. For some reason, the editor still tries to connect that signal when instanciating objects.

This error appears on line: "var enemy = tipo.enemy.instance()", where "tipo" refers to the given dictionary. And tipo.enemy refers to the preload Scene within that dictionary.

Also: there used to be a "colorRect" representing life which got the signal and act on it. But for all ColorRects i've cleaned the .gd file so that shouldnt be a problem.

i have also checked the timeout function but it has no clue whatsoever.

If anyone could help me, i've ran out of ideas here.

E 0:00:07.175 connect: In Object of type 'KinematicBody2D': Attempt to connect nonexistent signal 'lifechanged' to method 'ColorRect.onenemypedonormallifechanged'.
Condition "!signal
isvalid" is true. Returned: ERRINVALIDPARAMETER
core/object.cpp:1500 @ connect() @ spawn() @ _on

Godot version 3.3.2
in Engine by (12 points)

1 Answer

+1 vote

It sounds like You removed signal itself, but not connect() method. You must have forgotten about one ColorRect that still has this method. Perhaps there is some subclass, whose superclass tries to connect to it ?

by (8,188 points)
Welcome to Godot Engine Q&A, where you can ask questions and receive answers from other members of the community.

Please make sure to read Frequently asked questions and How to use this Q&A? before posting your first questions.
Social login is currently unavailable. If you've previously logged in with a Facebook or GitHub account, use the I forgot my password link in the login box to set a password for your account. If you still can't access your account, send an email to [email protected] with your username.