public SetSearchZone(ref Guardblackboard _guardblackboard, ref GlobalBlackboard _globalblackboard, ref NavMeshAgent _navAgent, float _radius)
 {
     guardblackboard  = _guardblackboard;
     globalBlackboard = _globalblackboard;
     navAgent         = _navAgent;
     searchRadius     = _radius;
 }
        ///Replace the text of the statement found in brackets, with blackboard variables ToString and returns a Statement copy
        public IStatement BlackboardReplace(IBlackboard bb)
        {
            var copy = ParadoxNotion.Serialization.JSONSerializer.Clone <Statement>(this);

            copy.text = copy.text.ReplaceWithin('[', ']', (input) =>
            {
                object o = null;
                if (bb != null)     //referenced blackboard replace
                {
                    var v = bb.GetVariable(input, typeof(object));
                    if (v != null)
                    {
                        o = v.value;
                    }
                }

                if (input.Contains("/"))     //global blackboard replace
                {
                    var globalBB = GlobalBlackboard.Find(input.Split('/').First());
                    if (globalBB != null)
                    {
                        var v = globalBB.GetVariable(input.Split('/').Last(), typeof(object));
                        if (v != null)
                        {
                            o = v.value;
                        }
                    }
                }
                return(o != null ? o.ToString() : input);
            });

            return(copy);
        }
Esempio n. 3
0
 private void Start()
 {
     globalBlackboard = (GlobalBlackboard)blackboard.GetValue("globalBlackboard");
     maxAttackDamage  = (float)globalBlackboard.GetValue("maxAttackDamage");
     minAttackDamage  = (float)globalBlackboard.GetValue("minAttackDamage");
     maxFood          = (int)globalBlackboard.GetValue("maxFood");
 }
 protected override void Awake()
 {
     base.Awake();
     agent            = (NavMeshAgent)blackboard.GetValue("navMeshAgent");
     globalBlackboard = (GlobalBlackboard)blackboard.GetValue("globalBlackboard");
     anim             = (Animator)blackboard.GetValue("animator");
 }
Esempio n. 5
0
 public AlertedWander(ref GlobalBlackboard _globalblackboard, ref Guardblackboard _guardblackboard, ref NavMeshAgent _navAgent, float _searchRadius)
 {
     globalBlackboard = _globalblackboard;
     guardblackboard  = _guardblackboard;
     navAgent         = _navAgent;
     searchRadius     = _searchRadius;
 }
Esempio n. 6
0
 private void Start()
 {
     anim  = (Animator)blackboard.GetValue("animator");
     agent = (NavMeshAgent)blackboard.GetValue("navMeshAgent");
     eatAnimationLength = AnimatorUtilities.GetClipLength(anim, "Attack");
     globalBlackboard   = (GlobalBlackboard)blackboard.GetValue("globalBlackboard");
 }
 private void OnValidate()
 {
     player           = GameObject.FindGameObjectWithTag("Player");
     globalBlackboard = FindObjectOfType <GlobalBlackboard>();
     patrolLocations  = GameObject.FindGameObjectsWithTag(gameObject.name + " Waypoints");
     triedToConverse  = false;
 }
Esempio n. 8
0
 private void Awake()
 {
     detectionZone    = GetComponent <SphereCollider>();
     guardBlackboard  = GetComponent <Guardblackboard>();
     globalBlackboard = FindObjectOfType <GlobalBlackboard>();
     player           = GameObject.FindGameObjectWithTag("Player");
 }
 // Use this for initialization
 void Awake()
 {
     guardBlackboard  = GetComponent <GuardBlackboard>();
     globalBlackboard = FindObjectOfType <GlobalBlackboard>();
     agent            = GetComponent <NavMeshAgent>();
     behaviourTree    = InitializeBahaviourTree();
 }
 protected override void Awake()
 {
     base.Awake();
     agent            = (NavMeshAgent)blackboard.GetValue("navMeshAgent");
     globalBlackboard = (GlobalBlackboard)blackboard.GetValue("globalBlackboard");
     baseLocation     = (Vector3)globalBlackboard.GetValue("baseLocation");
 }
Esempio n. 11
0
 protected void Start()
 {
     anim  = (Animator)blackboard.GetValue("animator");
     agent = (NavMeshAgent)blackboard.GetValue("navMeshAgent");
     attackAnimationLength = AnimatorUtilities.GetClipLength(anim, "Attack");
     globalBlackboard      = (GlobalBlackboard)blackboard.GetValue("globalBlackboard");
     attackDamage          = (float)globalBlackboard.GetValue("attackDamage");
 }
Esempio n. 12
0
    private void Awake()
    {
        guardBlackboard  = GetComponent <GuardBlackboard>();
        globalBlackboard = GetComponent <GlobalBlackboard>();
        guardBlackboard.m_playerInSight = false;

        sphereCollider = GetComponent <SphereCollider>();
        player         = GameObject.FindGameObjectWithTag("Player");
    }
Esempio n. 13
0
    private void Awake()
    {
        guardBlackboard  = GetComponent <Guardblackboard>();
        globalBlackboard = FindObjectOfType <GlobalBlackboard>();
        navAgent         = GetComponent <NavMeshAgent>();

        // Initialise the tree
        aiRoot = InitializeBehaviourTree();
    }
Esempio n. 14
0
 // Start is called before the first frame update
 public void Start()
 {
     agent      = GetComponent <NavMeshAgent>();
     animator   = GetComponent <Animator>();
     blackboard = GetComponent <Blackboard>();
     state      = GetComponent <StateBehaviour>();
     global     = GameObject.Find("GlobalBlackboard").GetComponent <GlobalBlackboard>();
     player     = global.GetGameObjectVar("Player");
     vision     = transform.GetComponentInChildren <Vision>();
     //InvokeRepeating("Sniff",1f,1f);
     maxAwakeTime = awakeTime;
 }
Esempio n. 15
0
        ///Replace the text of the statement found in brackets, with blackboard variables ToString and returns a Statement copy
        public Statement BlackboardReplace(IBlackboard bb)
        {
            var copy = ParadoxNotion.Serialization.JSONSerializer.Clone <Statement>(this);
            var s    = text;
            var i    = 0;

            while ((i = s.IndexOf('[', i)) != -1)
            {
                var end    = s.Substring(i + 1).IndexOf(']');
                var input  = s.Substring(i + 1, end);                //what's in the brackets
                var output = s.Substring(i, end + 2);                //what should be replaced (includes brackets)

                object o = null;
                if (bb != null)                  //referenced blackboard replace
                {
                    var v = bb.GetVariable(input, typeof(object));
                    if (v != null)
                    {
                        o = v.value;
                    }
                }

                if (input.Contains("/"))                  //global blackboard replace
                {
                    var globalBB = GlobalBlackboard.Find(input.Split('/').First());
                    if (globalBB != null)
                    {
                        var v = globalBB.GetVariable(input.Split('/').Last(), typeof(object));
                        if (v != null)
                        {
                            o = v.value;
                        }
                    }
                }

                s = s.Replace(output, o != null? o.ToString() : output);

                i++;
            }

            copy.text = s;
            return(copy);
        }
        public override void OnInspectorGUI()
        {
            EditorGUILayout.PropertyField(identifierProp);
            var existing = GlobalBlackboard.Find(bb.name);

            if (existing != bb && existing != null && !EditorUtility.IsPersistent(bb))
            {
                EditorUtils.MarkLastFieldError("Another Global Blackboard has the same identifier name. Please rename either.");
            }
            EditorGUILayout.PropertyField(dontDestroyProp);

            BlackboardEditor.ShowVariables(bb);
            EditorUtils.EndOfInspector();
            serializedObject.ApplyModifiedProperties();
            if (Event.current.isMouse)
            {
                Repaint();
            }
        }
        //...
        static void ParameterDropDown(GUIContent content, BBParameter bbParam)
        {
            if (bbParam.varRef == null && !string.IsNullOrEmpty(bbParam.name))
            {
                bbParam.name        = EditorGUILayout.DelayedTextField(content, bbParam.name);
                GUI.backgroundColor = Color.white.WithAlpha(0.5f);
                if (bbParam.bb != null && GUILayout.Button(EditorUtils.GetTempContent(Icons.plusIcon, "Promote To Variable"), Styles.centerLabel, GUILayout.Width(18), GUILayout.Height(16)))
                {
                    var menu = new GenericMenu();
                    foreach (var bb in bbParam.bb.GetAllParents(true).Reverse())
                    {
                        menu.AddItem(new GUIContent($"Promote Variable in '{bb.identifier}' Blackboard"), false, () =>
                        {
                            UndoUtility.RecordObject(bb.unityContextObject, "Promote Variable");
                            bbParam.PromoteToVariable(bb);
                            UndoUtility.SetDirty(bb.unityContextObject);
                        });
                    }
                    menu.ShowAsContext();
                }
                GUI.backgroundColor = Color.white;
                return;
            }

            GUI.color = new Color(0.9f, 0.9f, 1f, 1f);
            EditorGUILayout.PrefixLabel(content);
            var rect = EditorGUILayout.GetControlRect(false);

            rect.xMin += 2; // O.o
            var cachedContentTextForNew = string.IsNullOrEmpty(content.text) ? string.Format("new{0}", bbParam.varType.Name) : content.text;
            var displayName             = bbParam.isNone ? "[NONE]" : bbParam.name;
            var pop = EditorGUI.DropdownButton(rect, EditorUtils.GetTempContent(displayName), FocusType.Passive);

            GUI.color = Color.white;
            if (pop)
            {
                var menu = new GenericMenu();

                menu.AddItem(new GUIContent("[NONE]"), false, () => { bbParam.name = string.Empty; });

                foreach (var globalBB in GlobalBlackboard.GetAll())
                {
                    var globalVars = globalBB.GetVariables(bbParam.varType);
                    if (globalVars.Count() == 0)
                    {
                        menu.AddDisabledItem(new GUIContent(globalBB.identifier + "/No Assignable Variables"));
                        continue;
                    }
                    foreach (var variable in globalVars)
                    {
                        menu.AddItem(new GUIContent(globalBB.identifier + "/" + variable.name), bbParam.targetVariableID == variable.ID, () => { bbParam.SetTargetVariable(globalBB, variable); });
                    }
                }

                if (bbParam.bb != null)
                {
                    foreach (var actualBB in bbParam.bb.GetAllParents(true).Reverse())
                    {
                        var variables = actualBB.variables.Values.Where(v => v.CanConvertTo(bbParam.varType));
                        if (variables.Count() == 0)
                        {
                            menu.AddDisabledItem(new GUIContent(actualBB.identifier + "/No Assignable Variables"));
                            continue;
                        }
                        foreach (var variable in variables)
                        {
                            menu.AddItem(new GUIContent(actualBB.identifier + "/" + variable.name), bbParam.targetVariableID == variable.ID, () => { bbParam.SetTargetVariable(actualBB, variable); });
                        }
                    }
                }

                menu.AddSeparator(string.Empty);

                if (bbParam.bb != null)
                {
                    foreach (var targetBB in bbParam.bb.GetAllParents(true).Reverse())
                    {
                        menu.AddItem(new GUIContent("(Create New)/In '" + targetBB.identifier + "' Blackboard"), false, () =>
                        {
                            UndoUtility.RecordObject(targetBB.unityContextObject, "New Variable");
                            if (targetBB.AddVariable(cachedContentTextForNew, bbParam.varType) != null)
                            {
                                bbParam.name = cachedContentTextForNew;
                            }
                            else
                            {
                                bbParam.name = null;
                            }
                            UndoUtility.SetDirty(targetBB.unityContextObject);
                        });
                    }
                }

                menu.AddItem(new GUIContent("(DynamicVar)"), false, () => { bbParam.name = "_"; });

                menu.DropDown(rect);
            }
        }
Esempio n. 18
0
 private void Start()
 {
     globalBlackboard       = (GlobalBlackboard)blackboard.GetValue("globalBlackboard");
     foodRequiredToBeStrong = (int)globalBlackboard.GetValue("maxFood");
 }
 private void Start()
 {
     globalBlackboard = (GlobalBlackboard)blackboard.GetValue("globalBlackboard");
 }
Esempio n. 20
0
 private void Awake()
 {
     blackboard           = GetComponentInParent <Blackboard>();
     globalBlackboard     = (GlobalBlackboard)blackboard.GetValue("globalBlackboard");
     gameGlobalBlackboard = GameGlobalBlackboard.Instance;
 }
Esempio n. 21
0
 void Start()
 {
     agent            = (NavMeshAgent)blackboard.GetValue("navMeshAgent");
     globalBlackboard = (GlobalBlackboard)blackboard.GetValue("globalBlackboard");
     anim             = (Animator)blackboard.GetValue("animator");
 }
Esempio n. 22
0
 public static void CreateGlobalBlackboard()
 {
     Selection.activeObject = GlobalBlackboard.Create();
 }
 void Start()
 {
     globalBlackboard     = (GlobalBlackboard)blackboard.GetValue("globalBlackboard");
     gameGlobalBlackboard = GameGlobalBlackboard.Instance;
 }
Esempio n. 24
0
 // Start is called before the first frame update
 void Awake()
 {
     globalBlackboard = FindObjectOfType <GlobalBlackboard>();
     player           = GameObject.FindGameObjectWithTag("Player");
 }
Esempio n. 25
0
 protected override void Awake()
 {
     base.Awake();
     globalBlackboard = (GlobalBlackboard)blackboard.GetValue("globalBlackboard");
 }
Esempio n. 26
0
 public void SetGlobalBlackboard(GlobalBlackboard globalBlackboard)
 {
     this.globalBlackboard = globalBlackboard;
 }
Esempio n. 27
0
 public IsFriendlyNearby(ref GuardBlackboard _guardBlackboard, ref GlobalBlackboard _globalBlackboard)
 {
     guardBlackboard  = _guardBlackboard;
     globalBlackboard = _globalBlackboard;
 }
Esempio n. 28
0
 private void Awake()
 {
     blackboard       = GetComponent <Blackboard>();
     globalBlackboard = (GlobalBlackboard)blackboard.GetValue("globalBlackboard");
     maxHealth        = (float)globalBlackboard.GetValue("maxHealth");
 }
 private void Start()
 {
     globalBlackboard = FindObjectOfType <GlobalBlackboard>();
     thisObject       = gameObject;
 }
Esempio n. 30
0
 private void Start()
 {
     baseManager      = (BaseManager)GameGlobalBlackboard.Instance.GetValue("baseManager");
     globalBlackboard = (GlobalBlackboard)blackboard.GetValue("globalBlackboard");
     baseLocation     = (Vector3)globalBlackboard.GetValue("baseLocation");
 }