コード例 #1
0
    void Update()
    {
        if (rightCdTime > 0)
        {
            rightCdTime -= Time.deltaTime;
        }
        else
        {
            bool hasZombie = search.IsZombieInRange(grow.row, 0, range);
            if (hasZombie)
            {
                RightShoot();
                rightCdTime = cd;
            }
        }

        if (leftCdTime > 0)
        {
            leftCdTime -= Time.deltaTime;
        }
        else
        {
            bool hasZombie = search.IsZombieInRange(grow.row, -range, 0);
            if (hasZombie)
            {
                LeftShoot();
                leftCdTime = cd;
            }
        }
    }
コード例 #2
0
ファイル: LawnMower.cs プロジェクト: duge03705022/PVZ_Demo
    void Update()
    {
        if (startUp)
        {
            transform.Translate(Time.deltaTime * speed, 0, 0);

            object[] zombies = search.SearchZombiesInRange(row, 0, range);
            foreach (GameObject zombie in zombies)
            {
                zombie.GetComponent <ZombieHealthy>().Damage(10000);
            }

            if (transform.position.x > (StageMap.GRID_RIGHT + 0.4f))
            {
                Destroy(gameObject);
            }
        }
        else
        {
            if (search.IsZombieInRange(row, 0, range))
            {
                startUp = true;
                AudioManager.GetInstance().PlaySound(sound);
            }
        }
    }
コード例 #3
0
    void Update()
    {
        bool hasZombie = search.IsZombieInRange(scaredRange);

        if (hasZombie && !isCrying)
        {
            if (IsInvoking("Recover"))
            {
                CancelInvoke("Recover");
            }
            else
            {
                isCrying      = true;
                shoot.enabled = false;
                animator.SetBool("isCrying", true);
            }
        }
        else if (!hasZombie && isCrying)
        {
            if (!IsInvoking("Recover"))
            {
                Invoke("Recover", recoverTime);
            }
        }
    }
コード例 #4
0
ファイル: Threepeater.cs プロジェクト: duge03705022/PVZ_Demo
 void Update()
 {
     if (cdTime > 0)
     {
         cdTime -= Time.deltaTime;
     }
     else
     {
         bool hasZombie = search.IsZombieInRange(grow.row, 0, range);
         if (grow.row - 1 >= 0)
         {
             hasZombie = hasZombie || search.IsZombieInRange(grow.row - 1, 0, range);
         }
         if (grow.row + 1 < StageMap.ROW_MAX)
         {
             hasZombie = hasZombie || search.IsZombieInRange(grow.row + 1, 0, range);
         }
         if (hasZombie)
         {
             Shoot();
             cdTime = cd;
         }
     }
 }
コード例 #5
0
 void Update()
 {
     if (cdTime > 0)
     {
         cdTime -= Time.deltaTime;
     }
     else
     {
         bool hasZombie = search.IsZombieInRange(grow.row, 0, range);
         if (hasZombie)
         {
             StartCoroutine(Shoot());
             cdTime = cd;
         }
     }
 }
コード例 #6
0
 void Update()
 {
     if (cdTime > 0)
     {
         cdTime -= Time.deltaTime;
     }
     else
     {
         bool hasZombie = search.IsZombieInRange(range);
         if (hasZombie)
         {
             Shoot();
             cdTime = cd;
         }
     }
 }
コード例 #7
0
 void Update()
 {
     if (cdTime > 0)
     {
         cdTime -= Time.deltaTime;
     }
     else
     {
         if (!isReady)
         {
             isReady = true;
             animator.SetTrigger("ready");
         }
         bool hasZombie = search.IsZombieInRange(grow.row, 0, eatRange);
         if (hasZombie)
         {
             animator.SetTrigger("eat");
             cdTime = cd;
             Invoke("ChompSound", 0.6f);
         }
     }
 }