📋
Blackboard
  • Getting Started
  • How it works
  • FAQ
  • Release Notes
  • Concepts
    • Blackboard
    • Signals
    • Saving & Loading
    • Validations
    • Source Generators
  • Examples
    • 01 Basic
    • 02 Computed
    • 03 Events
    • 04 Saving & Loading
    • 05 Lists
    • 06 Validations
    • 07 Nested Objects
    • 08 Unity Attributes
    • 09 Object Lists
    • 10 Dictionaries
    • 11 Scriptable Object Blackboard
    • 12 Class Blackboard
    • 13 Blackboard References
Powered by GitBook
On this page
  • SourceBlackboard.cs
  • ReferenceBlackboard.cs
  • DoubleReferenceBlackboard.cs
  1. Examples

13 Blackboard References

This example shows you how to reference another blackboard from a blackboard.

These files can be found in the /Examples/[example] and /Blackboards/Examples folders.

SourceBlackboard.cs

using CrashKonijn.Blackboard.Contracts;
using UnityEngine;

namespace CrashKonijn.BlackboardPro.Blackboards.Examples
{
    public partial class SourceBlackboard : BlackboardBehaviour
    {
        private int lowHealth = 50;
    }
}

ReferenceBlackboard.cs

using CrashKonijn.Blackboard.Contracts;
using CrashKonijn.BlackboardPro.Blackboards.Tests;

namespace CrashKonijn.BlackboardPro.Blackboards.Examples
{
    public partial class ReferenceBlackboard : BlackboardBehaviour
    {
        private SourceBlackboard _sourceBlackboard;
        
        private int health;
        
        private static bool isLowHealth(SourceBlackboard.Signals.LowHealth lowHealth, Signals.Health health) => health.Value < lowHealth.Value;
    }
}

DoubleReferenceBlackboard.cs

using CrashKonijn.Blackboard.Contracts;

namespace CrashKonijn.BlackboardPro.Blackboards.Examples
{
    public partial class DoubleReferenceBlackboard : BlackboardBehaviour
    {
        private ReferenceBlackboard referenceBlackboard;
        
        private static bool isAlive(ReferenceBlackboard.Signals.Health health) => health.Value > 0;
        private static bool isHighHealth(ReferenceBlackboard.Signals.Health health, SourceBlackboard.Signals.LowHealth lowHealth) => health.Value > lowHealth.Value;
    }
}
Previous12 Class Blackboard

Last updated 7 months ago