Пример #1
0
        void SetSpawnRandomObjectsV2DataWithName(SpawnRandomObjectsV2Data data, string uniqueName)
        {
            if (data.gameObject == null)
            {
                Dev.Log("Warning: " + uniqueName + "'s prefab is null!");
                return;
            }

            Dev.Log("Added: " + uniqueName + " data to spawnRandomObjectsV2Data!");
            spawnRandomObjectsV2Data.Add(uniqueName, data);
        }
Пример #2
0
        protected virtual IEnumerator Blow()
        {
            if (audioSnapshot != null)
            {
                audioSnapshot.TransitionTo(1f);
            }

            PlayOneShot(audioClips["Hornet_Fight_Death_01"]);
            PlayOneShot(audioClips["boss_explode_clean"]);

            GameObject objectToDestroy = GameObject.Find(objectToDestroyName);

            if (objectToDestroy != null)
            {
                Destroy(objectToDestroy);
            }
            else
            {
                Dev.LogWarning(objectToDestroy + " is null! Cannot destroy!");
            }

            SpawnRandomObjectsV2Data data0 = spawnRandomObjectsV2Data["ControlBlowSpawnRandomObjectsV2"];

            DoSpawnRandomObjectsV2(body, data0);

            SpawnRandomObjectsV2Data data1 = spawnRandomObjectsV2Data["ControlBlowSpawnRandomObjectsV21"];

            DoSpawnRandomObjectsV2(body, data1);

            GameObject.Instantiate <GameObject>(gameObjects["White Wave"], transform.position, Quaternion.identity);

            DoCameraEffect("AverageShake");

            nextState = Launch;
            yield break;
        }
Пример #3
0
 //Taken from Playmaker's SpawnRandomObjectsV2.cs FSM Action
 static protected void DoSpawnRandomObjectsV2(Rigidbody2D body, SpawnRandomObjectsV2Data data)
 {
     try
     {
         float      vectorX        = 0f;
         float      vectorY        = 0f;
         bool       originAdjusted = false;
         GameObject value          = data.gameObject;
         if (value != null)
         {
             Vector3 a    = Vector3.zero;
             Vector3 zero = Vector3.zero;
             if (data.spawnPoint != null)
             {
                 a = data.spawnPoint.transform.position;
                 if (data.position.HasValue)
                 {
                     a += data.position.Value;
                 }
             }
             else if (data.position.HasValue)
             {
                 a = data.position.Value;
             }
             int num = UnityEngine.Random.Range(data.spawnMin.Value, data.spawnMax.Value + 1);
             for (int i = 1; i <= num; i++)
             {
                 GameObject gameObject = UnityEngine.Object.Instantiate <GameObject>(value, a, Quaternion.Euler(zero));
                 float      x          = gameObject.transform.position.x;
                 float      y          = gameObject.transform.position.y;
                 float      z          = gameObject.transform.position.z;
                 if (data.originVariationX != null && data.originVariationX.HasValue)
                 {
                     x = gameObject.transform.position.x + UnityEngine.Random.Range(-data.originVariationX.Value, data.originVariationX.Value);
                     originAdjusted = true;
                 }
                 if (data.originVariationY != null && data.originVariationY.HasValue)
                 {
                     y = gameObject.transform.position.y + UnityEngine.Random.Range(-data.originVariationY.Value, data.originVariationY.Value);
                     originAdjusted = true;
                 }
                 if (originAdjusted)
                 {
                     gameObject.transform.position = new Vector3(x, y, z);
                 }
                 float num2 = UnityEngine.Random.Range(data.speedMin.Value, data.speedMax.Value);
                 float num3 = UnityEngine.Random.Range(data.angleMin.Value, data.angleMax.Value);
                 vectorX = num2 * Mathf.Cos(num3 * 0.0174532924f);
                 vectorY = num2 * Mathf.Sin(num3 * 0.0174532924f);
                 Vector2 velocity;
                 velocity.x    = vectorX;
                 velocity.y    = vectorY;
                 body.velocity = velocity;
             }
         }
     }
     catch (Exception e)
     {
         Dev.Log("Exception: " + e.Source + " " + e.Message + " " + e.StackTrace);
     }
 }