Пример #1
0
    public override void StartBehaviour(Agent _agent)
    {
        agent = _agent;
        cat   = agent.GetComponent <CatTree>();

        if (cat.seenDog == null)
        {
            Failed();
            return;
        }

        if (cat.seeDog.tag == "Player")
        {
            currentLeaf = Scratch;
        }
        else
        {
            if (cat.seenDog.GetComponent <DogTree>().dogSize >= tooBigDogSize)
            {
                currentLeaf = CatRunAway;
            }
            else
            {
                currentLeaf = Scratch;
            }
        }

        if (currentLeaf != null)
        {
            currentLeaf.StartBehaviour(agent);
        }
    }
Пример #2
0
    public override void StartBehaviour(Agent _agent)
    {
        agent     = _agent;
        cat       = agent.GetComponent <CatTree>();
        AStarUnit = agent.GetComponent <Unit>();

        if (cat.heardCat != null)
        {
            if (Vector3.Distance(transform.position, cat.heardCat.transform.position) >= 3)
            {
                AStarUnit.target  = cat.heardCat.transform;
                AStarUnit.enabled = true;
                Continue();
            }
            else
            {
                transform.LookAt(cat.heardCat.transform);
                AStarUnit.enabled = false;
                AStarUnit.target  = null;
                catHealpCat.StartBehaviour(agent);
            }
        }
        else
        {
            Failed();
            return;
        }
    }
Пример #3
0
    public override void StartBehaviour(Agent _agent)
    {
        agent = _agent;
        cat   = agent.GetComponent <CatTree>();

        //behaviour
    }
Пример #4
0
    public override void StartBehaviour(Agent _agent)
    {
        agent = _agent;
        cat   = agent.GetComponent <CatTree>();

        //Debug.Log("purrrrr");
        Succeed();
    }
Пример #5
0
    public override void StartBehaviour(Agent _agent)
    {
        agent = _agent;
        cat   = agent.GetComponent <CatTree>();

        if (cat.seenDog != null)
        {
            transform.LookAt(cat.seenDog.transform);
            StartCoroutine(DoDamage());
        }
    }
Пример #6
0
    public override void StartBehaviour(Agent _agent)
    {
        agent     = _agent;
        cat       = agent.GetComponent <CatTree>();
        AStarUnit = agent.GetComponent <Unit>();

        AStarUnit.target  = retreatPoint;
        AStarUnit.enabled = true;
        if (AStarUnit.routeFinished)
        {
            Succeed();
        }
        else
        {
            Continue();
        }
    }
Пример #7
0
    public override void StartBehaviour(Agent _agent)
    {
        agent = _agent;
        cat   = agent.GetComponent <CatTree>();

        if (cat.heardCat != null)
        {
            cat.heardCat.health += healingLick;
            if (cat.heardCat.health >= cat.heardCat.initHealth / 10)
            {
                cat.heardCat.askingForHealp = false;
                Succeed();
            }
        }
        else
        {
            Failed();
        }
    }
Пример #8
0
    public override void StartBehaviour(Agent _agent)
    {
        agent = _agent;
        cat   = agent.GetComponent <CatTree>();



        //Debug.Log("asking for healp");
        if (cat.health <= cat.initHealth / 10)
        {
            cat.askingForHealp = true;
            MiauwForHealp();
            Continue();
        }
        else
        {
            cat.askingForHealp = false;
            ThankOthers();
            runAway.StartBehaviour(agent);
        }
    }
Пример #9
0
        private void AddPanel(OptionsPanel panel)
        {
            String optionCategory = panel.CategoryPath;
            String displayName    = panel.DisplayName;

            String[][] lpaths = GetPaths(optionCategory);
            String[]   paths  = lpaths[0];
            String[]   labs   = lpaths[1];

            TreeNode pnode = null;
            TreeNode nnode = null;

            if (paths.Length > 1)
            {
                TreeNode[] search = CatTree.Nodes.Find(paths[0], false);

                if (search != null && search.Length > 0)
                {
                    pnode = search[0];
                }
                else
                {
                    CatTree.Nodes.Add(paths[0], labs[0], paths[0], paths[0]);
                    pnode = CatTree.Nodes[CatTree.Nodes.Count - 1];
                }

                int i   = 1;
                int sub = paths.Length - 1;
                for (; i < sub; i++)
                {
                    search = pnode.Nodes.Find(paths[i], false);

                    if (search != null && search.Length > 0)
                    {
                        pnode = search[0];
                    }
                    else
                    {
                        pnode.Nodes.Add(paths[i], labs[i], String.Join("\\", paths, 0, i + 1), String.Join("\\", paths, 0, i + 1));
                        pnode = pnode.Nodes[pnode.Nodes.Count - 1];
                    }
                }

                if (i < sub)
                {
                    pnode = null;
                }
            }

            if (pnode != null)
            {
                nnode                  = new TreeNode(displayName);
                nnode.Name             = optionCategory;
                nnode.ImageKey         = String.Join("\\", paths);
                nnode.SelectedImageKey = String.Join("\\", paths);
                pnode.Nodes.Add(nnode);

                if (panel != null)
                {
                    panel.OptionsChanged += new EventHandler(panel_OptionsChanged);
                    panel.Dock            = DockStyle.Fill;
                    panel.PanelAdded(this);

                    EnableDescrControl(panel);
                }
            }
            else if (paths.Length == 1)
            {
                nnode      = new TreeNode(displayName);
                nnode.Name = optionCategory;
                CatTree.Nodes.Add(nnode);

                if (panel != null)
                {
                    panel.OptionsChanged += new EventHandler(panel_OptionsChanged);
                    panel.Dock            = DockStyle.Fill;
                    panel.PanelAdded(this);

                    EnableDescrControl(panel);
                }
            }

            CatTree.ExpandAll();
        }