예제 #1
0
 void OnTriggerStay(Collider other)
 {
     if (other.gameObject.tag == "GoodOpen") //碰撞到牆壁
     {
         _isTriggerButton = true;
         var button = other.transform.parent.GetComponent <Button>();
         if (!button.IsInteractable() || _idClicked)
         {
             return;
         }
         //累積移動時間大於_movedTriggerTime,就移動玩家座標
         if (_clickTimer > _clickTriggerTime)
         {
             _processBar.setProcessPer(0);
             other.transform.parent.GetComponent <processBar>().setProcessPer(0);
             _idClicked = true;
             //觸發點擊UI
             button.onClick.Invoke();
         }
         else
         {
             //累積移動時間增加
             _clickTimer += Time.deltaTime;
             _processBar.setProcessPer(_clickTimer / _clickTriggerTime * 100);
             other.transform.parent.GetComponent <processBar>().setProcessPer(_clickTimer / _clickTriggerTime * 100);
         }
     }
 }
예제 #2
0
    public void IsHit(int damage)
    {
        Life -= damage * 10;

        if (Life == 0)
        {
            PlayerDead();
        }
        if (Life < 0)
        {
            Life = 0;
        }
        _processBar.setProcessPer(Life);
    }