0 votes

I click on the button and generates this error:

0:00:03:0129 - Error calling method from signal 'pressed': 'CanvasLayer(Interfaz.cs)::_on_StartButton_pressed': Method not found.
----------
Type:Error
Description: 
Time: 0:00:03:0129
C Error: Error calling method from signal 'pressed': 'CanvasLayer(Interfaz.cs)::_on_StartButton_pressed': Method not found.
C Source: core/object.cpp:1202
C Function: emit_signal

I do not know if this well this C# code:

public void OnStartButtonPressed()
{
    Button startButton = (Button)GetNode("StartButton");
    startButton.Hide();

    EmitSignal("StartGame");
}

Why can the error give?

asked Dec 13, 2018 in Projects by BryanGieger (22 points)

1 Answer

+1 vote
Best answer

Because the function really doesn't exist.
The error is stating that _on_StartButton_pressed cannot be found. You're showing us a function named OnStartButtonPressed!
You're missing the hyphens and the initials of "On" and "Pressed" should be lowercase.

answered Dec 13, 2018 by SIsilicon (3,513 points)
selected Dec 13, 2018 by BryanGieger

In the documentation of Godot says that you have to write it this way:
enter image description here

Update: Anyway write it the way onStartButton_pressed() works.

You don't have to name them that way. It's just a naming convention.

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 How to use this Q&A? before posting your first questions.