예제 #1
0
 void Spawn()
 {
     if (posEmpty[0] == null)
     {
         GameObject instance = Instantiate(Resources.Load("ClusterUnit", typeof(GameObject))) as GameObject;
         instance.transform.position = new Vector2(this.transform.position.x, this.transform.position.y);
         ClusterUnit e = instance.GetComponent <ClusterUnit>();
         e.speed   = this.speed;
         e.cluster = this;
         GivePosition(e);
     }
 }
예제 #2
0
 void GivePosition(ClusterUnit Unit)
 {
     for (var i = 1; i < 7; i++)
     {
         if (posEmpty[i] == null)
         {
             posEmpty[0] = null;
             posEmpty[i] = Unit;
             Unit.pos    = i;
             return;
         }
     }
     posEmpty[0] = Unit;
     Unit.pos    = 0;
 }
예제 #3
0
 void SwitchAllPositions()
 {
     posEmpty = new Enemy[7] {
         posEmpty[0], posEmpty[6], posEmpty[1], posEmpty[2], posEmpty[3], posEmpty[4], posEmpty[5]
     };
     for (var i = 0; i < 7; i++)
     {
         if (posEmpty[i] != null)
         {
             ClusterUnit e = posEmpty[i].GetComponent <ClusterUnit>();
             e.pos = i;
         }
     }
     switchTime = realSwitchTime;
 }
예제 #4
0
 public void CheckIfDead(ClusterUnit unit)
 {
     posEmpty[unit.pos] = null;
     if (posEmpty[0] != null)
     {
         ClusterUnit e = posEmpty[0].GetComponent <ClusterUnit>();
         GivePosition(e);
     }
     for (var i = 0; i < 7; i++)
     {
         if (posEmpty[i] != null)
         {
             return;
         }
     }
     for (int i = 0; i < 7; i++)
     {
         Game.AddParticle("LightningParticle", transform.position.x + Random.Range(-0.5f, .5f), transform.position.y + Random.Range(-.5f, .5f));
     }
     Destroy(this.gameObject);
 }
예제 #5
0
    // Use this for initialization
    void Start()
    {
        Animator anim = transform.FindChild("Wing1").GetComponent <Animator>();

        anim.speed = Random.Range(0.8f, 1.2f);
        anim       = transform.FindChild("Wing2").GetComponent <Animator>();
        anim.speed = Random.Range(0.8f, 1.2f);
        anim       = transform.FindChild("Wing3").GetComponent <Animator>();
        anim.speed = Random.Range(0.8f, 1.2f);
        pos        = new Vector2[7];
        posEmpty   = new Enemy[7];
        spawnTime  = realSpawnTime;
        switchTime = realSwitchTime;
        for (int i = 0; i < 7; i++)
        {
            GameObject instance = Instantiate(Resources.Load("ClusterUnit", typeof(GameObject))) as GameObject;
            instance.transform.position = new Vector2(this.transform.position.x, this.transform.position.y);
            ClusterUnit e = instance.GetComponent <ClusterUnit>();
            e.speed   = this.speed;
            e.cluster = this;
            GivePosition(e);
        }
    }