示例#1
0
    public override NodeResult Execute()
    {
        KeyCheck();
        AITargeter s = source as AITargeter;
        float      t = times[s];

        if (Time.time > t)
        {
            Transform tr = Instantiate((Transform)bullet.GetValue(), s.transform.position, s.transform.rotation);
            tr.GetComponent <AITargeter>().OnSpawned(s.GetComponentInParent <TreeBehaviour>());
            //tr.GetComponent<AITargeter>().OnSpawned(s);
            t = Time.time + (float)rate.GetValue();
        }
        times[source as AITargeter] = t;
        return(NodeResult.Success);
    }
    public override NodeResult Execute()
    {
        KeyCheck();
        AITargeter s = source as AITargeter;
        float      t = times[s];

        if (Time.time > t)
        {
            Vector3[] pts = CircleMotion.GenerateCircleOfDirections(1, this.pts);
            for (int i = 0; i < this.pts; i++)
            {
                Transform b = Instantiate((Transform)bullet.GetValue(), s.transform.position, new Quaternion());
                b.up = pts[i];
            }
            t = Time.time + (float)rate.GetValue();
        }
        times[source as AITargeter] = t;
        return(NodeResult.Success);
    }