コード例 #1
0
 private float[] GetDirections()
 {
     float[] array = new float[0];
     if (dashDirection == DashDirection.PerpendicularToTarget)
     {
         float num = (m_aiActor.TargetRigidbody.GetUnitCenter(ColliderType.Ground) - m_aiActor.specRigidbody.UnitCenter).ToAngle();
         array = new float[] { num + 90f, num - 90f };
         BraveUtility.RandomizeArray(array, 0, -1);
     }
     else if (dashDirection == DashDirection.KindaTowardTarget)
     {
         float num2 = (m_aiActor.TargetRigidbody.GetUnitCenter(ColliderType.Ground) - m_aiActor.specRigidbody.UnitCenter).ToAngle();
         array = new float[] { num2, (num2 - quantizeDirection), (num2 + quantizeDirection) };
         BraveUtility.RandomizeArray(array, 1, -1);
     }
     else if (dashDirection == DashDirection.TowardTarget)
     {
         float num3 = (m_aiActor.TargetRigidbody.GetUnitCenter(ColliderType.Ground) - m_aiActor.specRigidbody.UnitCenter).ToAngle();
         array = new float[] { num3 };
     }
     else if (dashDirection == DashDirection.Random)
     {
         if (quantizeDirection <= 0f)
         {
             array = new float[16];
             for (int i = 0; i < array.Length; i++)
             {
                 array[i] = UnityEngine.Random.Range(0f, 360f);
             }
         }
         else
         {
             int num4 = Mathf.RoundToInt(360f / quantizeDirection);
             array = new float[num4];
             for (int j = 0; j < array.Length; j++)
             {
                 array[j] = (j * quantizeDirection);
             }
             BraveUtility.RandomizeArray(array, 0, -1);
         }
     }
     else if (dashDirection == DashDirection.Random)
     {
         if (quantizeDirection <= 0f)
         {
             array = new float[16];
             for (int k = 0; k < array.Length; k++)
             {
                 array[k] = UnityEngine.Random.Range(0f, 360f);
             }
         }
         else
         {
             int num5 = Mathf.RoundToInt(360f / quantizeDirection);
             array = new float[num5];
             for (int l = 0; l < array.Length; l++)
             {
                 array[l] = (l * quantizeDirection);
             }
             BraveUtility.RandomizeArray(array, 0, -1);
         }
     }
     if (quantizeDirection > 0f)
     {
         for (int m = 0; m < array.Length; m++)
         {
             array[m] = BraveMathCollege.QuantizeFloat(array[m], quantizeDirection);
         }
     }
     return(array);
 }