コード例 #1
0
 public Tuple <Transform, Transform> GetSlot()
 {
     if (this._actionSlotTable.Count <= 0)
     {
         return(new Tuple <Transform, Transform>((Transform)null, (Transform)null));
     }
     AnimalActionPoint.AnimalActionSlot animalActionSlot = this._actionSlotTable[0];
     return(new Tuple <Transform, Transform>(animalActionSlot.Point, animalActionSlot.RecoveryPoint));
 }
コード例 #2
0
 public Tuple <Transform, Transform> GetSlot(ActionTypes type)
 {
     for (int index = 0; index < this._actionSlotTable.Count; ++index)
     {
         AnimalActionPoint.AnimalActionSlot animalActionSlot = this._actionSlotTable[index];
         if (animalActionSlot.AcceptionKey.Contains(type))
         {
             return(new Tuple <Transform, Transform>(animalActionSlot.Point, animalActionSlot.RecoveryPoint));
         }
     }
     return(new Tuple <Transform, Transform>((Transform)null, (Transform)null));
 }
コード例 #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;
                }
            }
        }