Ejemplo n.º 1
0
    public override void Initialize(AiClient client)
    {
        base.Initialize(client);
        mySeeker = (Seeker)MyClient;
        EventManager.Instance.AddListener <Events.UtilityAi.OnActionChanged>(
            e =>
        {
            if (!MyClient.Equals(Events.UtilityAi.OnActionChanged.Origin))
            {
                return;
            }

            if (Events.UtilityAi.OnActionChanged.Action.GetType() != typeof(Investigate))
            {
                investigatingSquare = default(Square);
                currentTarget       = Vector3.zero;
            }
            else
            {
                investigatingSquare = new Square
                {
                    HigherX = mySeeker.transform.position.x + radius,
                    LowerX  = mySeeker.transform.position.x - radius,
                    HigherZ = mySeeker.transform.position.z + radius,
                    LowerZ  = mySeeker.transform.position.z - radius
                }
            };

            MyClient.StartCoroutine(Timer());
        });
    }
Ejemplo n.º 2
0
 public override void Initialize(AiClient client)
 {
     score = 0;
     EventManager.Instance.AddListener <Events.UtilityAi.OnActionChanged>(e =>
     {
         if (MyClient.Equals(Events.UtilityAi.OnActionChanged.Origin) && Events.UtilityAi.OnActionChanged.Action.Name == resetAction)
         {
             ResetScore();
         }
     });
     base.Initialize(client);
 }