Advertisement
Guest User

Untitled

a guest
Jun 28th, 2016
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.86 KB | None | 0 0
  1. /////
  2. ////
  3. ///
  4. //
  5. /
  6. // CODE CENTRAL.
  7.  
  8. using UnityEngine;
  9. using System.Collections;
  10.  
  11. public class gameEngine : MonoBehaviour {
  12.  
  13.     float reload = 0.0F;
  14.     float speed = 0.25F;
  15.     WaveType nextWave;
  16.  
  17.     public GameObject Prefab;
  18.  
  19.     public enum WaveType
  20.     {
  21.         Solo,
  22.         Duo,
  23.         Rave,
  24.     }
  25.  
  26.     // Use this for initialization
  27.     void Start () {
  28.         reload = 0.0F;
  29.     }
  30.    
  31.     // Update is called once per frame
  32.     void Update () {
  33.         foreach (var go in GameObject.FindGameObjectsWithTag("Enemy"))
  34.         {
  35.             go.transform.Translate(new Vector3(0, -(speed/6)));
  36.         }
  37.  
  38.         if (reload < Time.time)
  39.         {
  40.             if (speed < 1F)
  41.                 speed += 0.01F;
  42.             reload = Time.time + Random.Range(0.05F, 1.25F - (speed >= 0.4F ? 0.6F : speed));
  43.             // create new pixels
  44.             if (reload >= 0.05 && reload <= 0.5)
  45.             {
  46.                 nextWave = WaveType.Solo;
  47.             }
  48.             else if (reload >= 0.5 && reload <= 1)
  49.             {
  50.                 nextWave = WaveType.Duo;
  51.             }
  52.             else
  53.             {
  54.                 var raveChance = Random.Range(1, 50);
  55.                 nextWave = raveChance >= 40 ? WaveType.Rave : WaveType.Duo;
  56.             }
  57.  
  58.             switch(nextWave)
  59.             {
  60.                 case WaveType.Solo:
  61.                     {
  62.                         var randomSide = Random.Range(1, 3);
  63.                         var obj = Instantiate(Prefab);
  64.                         var side = randomSide == 1 ? -0.3F : 0.3F;
  65.                         obj.transform.position = new Vector3(side, 10F);
  66.                         obj.tag = "Enemy";
  67.                         reload = 0.1F;
  68.                         break;
  69.                     }
  70.                 case WaveType.Duo:
  71.                     {
  72.                         var randomSide = Random.Range(1, 3);
  73.                         for (int i = 0; i < 2; i++)
  74.                         {
  75.                             var obj = Instantiate(Prefab);
  76.                             var side = randomSide == 1 ? -0.3F : 0.3F;
  77.                             obj.transform.position = new Vector3(side, 10F + i*0.3F);
  78.                             obj.tag = "Enemy";
  79.                         }
  80.                         break;
  81.                     }
  82.                 case WaveType.Rave:
  83.                     {
  84.                         var randomSide = Random.Range(1, 3);
  85.                         var side = randomSide == 1 ? -0.3F : 0.3F;
  86.                         for (int i = 0; i < 8; i++)
  87.                         {
  88.                             var obj = Instantiate(Prefab);
  89.                             obj.transform.position = new Vector3(side, 10F + i * 0.26F);
  90.                             obj.tag = "Enemy";
  91.                         }
  92.                         break;
  93.                     }
  94.             }
  95.         }
  96.     }
  97. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement