# マニュアル：シグナル

**URL:** https://guild.rpgmakerofficial.com/t/topic/21
**Category:** チュートリアル
**Tags:** manual, english
**Created:** [2025 年 5 月 16 日午前 4:54 UTC](https://guild.rpgmakerofficial.com/t/topic/21 "2025-05-16T04:54:37Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![GGG-Administrator](https://sea2.discourse-cdn.com/flex002/user_avatar/guild.rpgmakerofficial.com/ggg-administrator/32/6_2.png) [@GGG-Administrator](https://guild.rpgmakerofficial.com/u/GGG-Administrator)
#### Post date: [2025 年 5 月 16 日午前 4:54 UTC](https://guild.rpgmakerofficial.com/t/topic/21/1 "2025-05-16T04:54:37Z")

</div>

A “Signal” is a mechanism in Godot used for communication between objects, and **Action Game Maker** supports this feature.

For more details about signals, please refer to the Godot Engine Documentation.

> **[Using signals](https://docs.godotengine.org/en/stable/getting_started/step_by_step/signals.html)**
>
> In this lesson, we will look at signals. They are messages that nodes emit when something specific happens to them, like a button being pressed. Other nodes can connect to that signal and call a fu...

Thanks to this signal functionality, it is possible to send and receive signals between:

- **Visual Scripts**
- **Visual Scripts and GDScript**

* * *

### What You Can Do with Signals

#### Case: Connecting Visual Script and GDScript

By using signals, GDScript can emit a signal, which then triggers an action in a visual script — and vice versa. This allows for combined usage of visual scripts and GDScript.

For example, when a button with an attached GDScript is clicked, a visual script can execute a certain action such as transitioning to State A.

#### Case: Connecting Visual Scripts Together

While visual scripts can actively change properties or perform specific actions, signals enable **passive** changes — making interactions more flexible and reactive.

* * *

### How to Connect Signals to a Visual Script

To send and receive signals, nodes must be connected via their signals. When connecting a signal to a visual script, additional setup is required:

1. Create a signal in the source object. In a visual script, this can be done using the “Emit Signal” action.
2. Place both the source object and the target visual script object in the same scene.
3. Select the source object and open the **Inspector** panel. Switch to the **Node** tab to see the signal you just created.  
 ![image](https://us1.discourse-cdn.com/flex002/uploads/rpgmaker_community/original/1X/5d55fae435d3a493fe98f15767102dc65dd9e89b.png)
4. Select the signal you want to send, then either right-click or click the **Connect** button at the bottom of the window to open the signal connection dialog._(Screenshot: connection window)_  
 ![image](https://us1.discourse-cdn.com/flex002/uploads/rpgmaker_community/original/1X/e497a4cb4cf20f5619a95f709f469974266c7151.png)
5. In the connection window, select the target object and click the **Pick** button._(Screenshot: receiver selection)_  
 ![image](https://us1.discourse-cdn.com/flex002/uploads/rpgmaker_community/original/1X/3bd21b8af71d31b7c782bbf5d9747914e502f146.png)
6. When the receiver selection screen appears, choose `receive_signal(signal_name:...)` and click **OK**._(Screenshot: method selection)_  
 ![image](https://us1.discourse-cdn.com/flex002/uploads/rpgmaker_community/original/1X/b1729689ae232fc94e96c66c4dba511b8935dd3b.png)
7. If the receiver is correctly set to `receive_signal`, press **Connect** to complete the setup._(Screenshot: successful connection)_  
 ![image](https://us1.discourse-cdn.com/flex002/uploads/rpgmaker_community/original/1X/1fde6ba85b64c29b8c6959a9a939d3a3f3cab6ba.png)
8. If it looks like the screenshot below, the connection was successful._(Screenshot: final state)_  
 ![image](https://us1.discourse-cdn.com/flex002/uploads/rpgmaker_community/original/1X/62a45d5cdba9e2f0b571c20bc34dfe4afa481506.png)

## Notes on Connecting from GDScript to Visual Script

The connection method is the same as described in the previous section, but there is one important point to keep in mind: **two arguments are required.**

```auto
signal(String, Value)

```

- The **first argument** is a string used as a **filter name** within the visual script.
- The **second argument** is the **value** to be received in the visual script.
