Skip to main content

Event Nodes (Manually)

This guide will walk you through creating event nodes in Jungle manually. Let's get started!


Step 1: Create a New C# Script

First, create a new C# script in your Unity project.


Step 2: Inherit from EventNode

Next, make your new class inherit from the EventNode class. This will form the foundation of your event node.

using Jungle;

// ↓↓↓↓↓↓↓↓↓
public class MyEventNode : EventNode
{

}

Step 3: Implement OnStart and OnUpdate

Now, you need to implement the OnStart and OnUpdate methods.

using Jungle;

public class MyEventNode : EventNode
{
// ↓↓↓↓↓↓↓
protected override void OnStart()
{

}

// ↓↓↓↓↓↓↓↓
protected override void OnUpdate()
{

}
}

Step 4: Add the EventNode Attribute

Add the EventNode attribute to your class. This defines the output ports.

using Jungle;

// ↓↓↓↓↓↓↓
[EventNode(
OutputPortNames = new []
{
"My Output 1",
"My Output 2"
},
OutputPortTypes = new []
{
typeof(OUTPUT_TYPE),
typeof(OUTPUT_TYPE)
}
)]
public class MyEventNode : EventNode
{
protected override void OnStart()
{

}

protected override void OnUpdate()
{

}
}

Step 5: Add the NodeProperties Attribute

Finally, add the NodeProperties attribute to your class. This defines additional properties such as the title, description, and category of your node.

using Jungle;

// ↓↓↓↓↓↓↓↓↓↓↓↓
[NodeProperties(
Title = "My Event Node",
Description = "This is an Event node.",
Category = "My Nodes/Event",
Color = Green
)]
[EventNode(
OutputPortNames = new []
{
"My Output 1",
"My Output 2"
},
OutputPortTypes = new []
{
typeof(OUTPUT_TYPE),
typeof(OUTPUT_TYPE)
}
)]
public class MyEventNode : EventNode
{
protected override void OnStart()
{

}

protected override void OnUpdate()
{

}
}

With these steps, you've created a basic event node in Jungle. Feel free to customize the output properties to suit your needs!