docs.unity3d.com
    Show / Hide Table of Contents

    Trigger a Custom Scripting Event from a C# script

    You can send or trigger a Custom Scripting Event node in a Script Graph with a C# script instead of a Custom Scripting Event Sender node. For more information on how to create a Custom Scripting Event Sender node, see Create a Custom Scripting Event Sender node.

    Note

    Before you can trigger a Custom Scripting Event node, you must create your Custom Scripting Event node. The examples below are based on the previous example to create a Custom Scripting Event node. For more information, see Create a Custom Scripting Event node.

    To trigger an Event from a C# script:

    1. Go to Window > General > Project, or press Ctrl+5 (macOS: Cmd+5) to open the Project window.

    2. Right-click a folder in the Project window's folder list or anywhere in the Project window's preview pane.

    3. Go to Create > C# Script.

    4. Enter a name, such as CodeTriggerCustomEvent, for the new script file.

    5. Press Enter.

    6. Double-click the new C# file. Unity opens the file in the program you specified in your preferences, under External Script Editor.

      Note

      For more information on script editors in Unity, see the Integrated development environment (IDE) support in the Unity User Manual.

    7. In your external editor, copy and paste the following code into your C# script:

      using Unity.VisualScripting;
      using UnityEngine;
      
          public class CodeTriggerCustomEvent : MonoBehaviour
          {
            void Update()
            {
               if (Input.anyKeyDown)
               {
                  //Trigger the previously created Custom Scripting Event MyCustomEvent with the integer value 2.
                  EventBus.Trigger(EventNames.MyCustomEvent, 2);
               }
            }
         }
      
    8. Save your script file.

    9. Return to the Unity Editor.

    10. Go to Window > General > Hierarchy, or press Ctrl+4 (macOS: Cmd+4) to open the Hierarchy window.

    11. Do one of the following in the Hierarchy window:

      • Select an existing GameObject where you want to attach the new script.
      • Select Add New (+) and in the menu, select a new GameObject to add to your scene from any of the available options. You can also right-click anywhere in the Hierarchy window and select the same options in the context menu.
    12. With the GameObject selected in the Hierarchy window, go to Window > General > Inspector, or press Ctrl+3 (macOS: Cmd+3) to open the Inspector window.

    13. Select Add Component.

    14. In the Component menu, enter the name of the script file.

    15. Select it to add it to the GameObject.

      An image of the Unity Editor's Inspector window with the Add Component menu open. The search bar has filtered the components displayed and the Code Trigger Custom Event C# script is highlighted.

    16. Select Play from the Unity Editor's Toolbar to enter Play mode.

    17. Press any key on keyboard in the Game view.

      Visual Scripting triggers your Event in any Script Graph in the current scene that contains the Custom Scripting Event node.

    Next steps

    After you create the script, you can create a script to listen to your Event.

    You can also create an Event Sender node to trigger the Event from another Script Graph or location in the same Script Graph.

    Back to top
    Terms of use
    Copyright © 2023 Unity Technologies — Terms of use
    • Legal
    • Privacy Policy
    • Cookies
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)
    "Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
    Generated by DocFX on 18 October 2023