예제 #1
0
 public void LocateNavMesh()
 {
     if (((IReadOnlyList <Transform>) this._navMeshTarget).IsNullOrEmpty <Transform>())
     {
         return;
     }
     using (List <Transform> .Enumerator enumerator = this._navMeshTarget.GetEnumerator())
     {
         while (enumerator.MoveNext())
         {
             AnimalPoint.RelocationOnNavMesh(enumerator.Current, this._checkNavMeshDistance);
         }
     }
 }
예제 #2
0
 public void LocateCollider()
 {
     if (((IReadOnlyList <Transform>) this._colliderTarget).IsNullOrEmpty <Transform>())
     {
         return;
     }
     using (List <Transform> .Enumerator enumerator = this._colliderTarget.GetEnumerator())
     {
         while (enumerator.MoveNext())
         {
             AnimalPoint.RelocationOnCollider(enumerator.Current, this._raycastUpOffset, this._checkLayer);
         }
     }
 }
예제 #3
0
        public override void LocateGround()
        {
            base.LocateGround();
            foreach (AnimalActionPoint.AnimalActionSlot animalActionSlot in this._actionSlotTable)
            {
                if (Object.op_Inequality((Object)animalActionSlot.Point, (Object)animalActionSlot.RecoveryPoint))
                {
                    Point.LocateGround(animalActionSlot.RecoveryPoint);
                }
            }
            float num = 15f;

            switch (this.LocateType)
            {
            case LocateTypes.Collider:
                AnimalPoint.RelocationOnCollider(((Component)this).get_transform(), num);
                using (AnimalActionPoint.AnimalActionSlotTable.Enumerator enumerator = this._actionSlotTable.GetEnumerator())
                {
                    while (enumerator.MoveNext())
                    {
                        AnimalActionPoint.AnimalActionSlot current = enumerator.Current;
                        if (Object.op_Inequality((Object)current.Point, (Object)current.RecoveryPoint))
                        {
                            AnimalPoint.RelocationOnCollider(current.RecoveryPoint, num);
                        }
                    }
                    break;
                }

            case LocateTypes.NavMesh:
                AnimalPoint.RelocationOnNavMesh(((Component)this).get_transform(), num);
                using (AnimalActionPoint.AnimalActionSlotTable.Enumerator enumerator = this._actionSlotTable.GetEnumerator())
                {
                    while (enumerator.MoveNext())
                    {
                        AnimalActionPoint.AnimalActionSlot current = enumerator.Current;
                        if (Object.op_Inequality((Object)current.Point, (Object)current.RecoveryPoint))
                        {
                            AnimalPoint.RelocationOnNavMesh(current.RecoveryPoint, num);
                        }
                    }
                    break;
                }
            }
        }
예제 #4
0
 private void LocateOnNavMesh()
 {
     AnimalPoint.RelocationOnNavMesh(((Component)this).get_transform(), 10f);
 }
예제 #5
0
 private void LocateOnCollider()
 {
     AnimalPoint.RelocationOnCollider(((Component)this).get_transform(), 3f, !Singleton <Resources> .IsInstance() ? LayerMask.op_Implicit(LayerMask.NameToLayer("MapArea")) : Singleton <Resources> .Instance.DefinePack.MapDefines.MapLayer);
 }