Beispiel #1
0
    public void Destroy()
    {
        if (isNPC/* && !isTemplate*/)
        {
            Destroy(gameObject);
        }
        else if (!isNPC)
        {
            tank.position = new Vector3(120, 20, 0);
            tank.SendMessage("SetLevel", 1);
            tank.SendMessage("SetIsTemplate", true);

            ArgsPointer<int> pointer = new ArgsPointer<int>();
            tank.SendMessage("GetLives", pointer);

            if (pointer.Args[0] <= 0)
            {
                StartCoroutine(FinishGameAfter(3));
            }
            else
            {
                this.DoAfter(1.5f, () =>
                {
                    tank.SendMessage("ResetPosition");
                    tank.GetComponent<Animator>().SetBool("hit", false);
                    isTemplate = false;
                    alreadyShot = 0;
                    SendMessage("SetShield", 6);
                });
            }
        }
    }
Beispiel #2
0
    public void Destroy()
    {
        if (isNPC /* && !isTemplate*/)
        {
            Destroy(gameObject);
        }
        else if (!isNPC)
        {
            tank.position = new Vector3(120, 20, 0);
            tank.SendMessage("SetLevel", 1);
            tank.SendMessage("SetIsTemplate", true);

            ArgsPointer <int> pointer = new ArgsPointer <int>();
            tank.SendMessage("GetLives", pointer);

            if (pointer.Args[0] <= 0)
            {
                StartCoroutine(FinishGameAfter(3));
            }
            else
            {
                this.DoAfter(1.5f, () =>
                {
                    tank.SendMessage("ResetPosition");
                    tank.GetComponent <Animator>().SetBool("hit", false);
                    isTemplate  = false;
                    alreadyShot = 0;
                    SendMessage("SetShield", 6);
                });
            }
        }
    }
Beispiel #3
0
    void Update()
    {
        int tankCount = generatedEnemyFolder.GetComponentsInChildren <Transform>().Length;

        ArgsPointer <bool> pointer = new ArgsPointer <bool>();

        eagle.SendMessage("GetMultiplayer", pointer);

        // 4 tanks and 1 folder also counts, (if multiplayer, 6 tanks can be on screen)
        if (next < 20 && (tankCount < 5 && !pointer[0] || tankCount < 7 && pointer[0]))
        {
            anim.SetBool("spawn", true);
        }
        else if (next >= 20 && tankCount <= 1)
        {
            eagle.SendMessage("LoadMap", true);
        }
    }
Beispiel #4
0
 // message receiver (getter) from "EnemySpawn"
 public void GetMultiplayer(ArgsPointer <bool> pointer)
 {
     pointer.Args = new bool[] { multiplayer };
 }
Beispiel #5
0
 // message receiver from "BulletTankDestroy"
 public void GetLives(ArgsPointer<int> pointer)
 {
     pointer.Args = new int[] { lives };
 }
Beispiel #6
0
 // message receiver from "BulletTankDestroy"
 public void GetLives(ArgsPointer <int> pointer)
 {
     pointer.Args = new int[] { lives };
 }
Beispiel #7
0
    void Update()
    {
        int tankCount = generatedEnemyFolder.GetComponentsInChildren<Transform>().Length;

        ArgsPointer<bool> pointer = new ArgsPointer<bool>();
        eagle.SendMessage("GetMultiplayer", pointer);

        // 4 tanks and 1 folder also counts, (if multiplayer, 6 tanks can be on screen)
        if (next < 20 && (tankCount < 5 && !pointer[0] || tankCount < 7 && pointer[0]))
        {
            anim.SetBool("spawn", true);
        }
        else if (next >= 20 && tankCount <= 1)
        {
            eagle.SendMessage("LoadMap", true);
        }
    }
Beispiel #8
0
 // message receiver (getter) from "EnemySpawn"
 public void GetMultiplayer(ArgsPointer<bool> pointer)
 {
     pointer.Args = new bool[] { multiplayer };
 }