按下按钮倒计时

时间:2015-05-04 10:32:53

标签: button unity3d count

如何通过按下鼠标左键在此脚本中添加倒计时?每次点击计数减去1. 10,9,8,7,6,5,4,3,2,1,0例如?这个目前在这个脚本中不起作用,我不明白这个问题。



#pragma strict
 
 var myTrigger : GameObject;
 var myObject : GameObject;
 var countAmmo : int = 10 ;
 
 private var score : int = 10;
 var guiScore : GUIText;
 
 function Start ()
 {
 
 guiScore.text = "Score: 10"; 
 
 }
     
     
     
     function Update()
      {
 
       if(Input.GetButtonDown("Fire1"))  
 
          countAmmo = countAmmo -1;
          score = countAmmo -1;        
         
           if(countAmmo == 0)
           if(score == -1)
         
                   
          {         
             myObject.SetActive(false);    
          }
          
          else
          
          {
           
           guiScore.text = "Score: -1";
           
         
          
             myObject.SetActive(true);
          } 
      
   
      
      
      }
 




3 个答案:

答案 0 :(得分:0)

我不确切地知道这是什么语言或者你想要实现的语境,但是看看你的代码似乎只是你的if-clauses中的一些括号问题。试试吧,不能保证它能正常运作。

#pragma strict

var myTrigger : GameObject;
var myObject : GameObject;
var countAmmo : int = 10 ;

private var score : int = 10;
var guiScore : GUIText;

function Start ()
{
    guiScore.text = "Score: 10"; 
}

function Update()
{
        if(Input.GetButtonDown("Fire1"))  
        {
            countAmmo = countAmmo -1;
            score = countAmmo -1;  
            guiScore.text = "Score: " + score.ToString();

           if(countAmmo <= 0)
           {
               if(score == -1)
               {
                   myObject.SetActive(false);   
               } else {
                   guiScore.text = "Score: -1";
               }

              myObject.SetActive(true);
           }  
        }
}

答案 1 :(得分:0)

这一行:

guiScore.text = "Score: -1";

应该是:

guiScore.text = "Score:" + score;

答案 2 :(得分:0)

#pragma strict

 var myTrigger : GameObject;
 var myObject : GameObject;
 var countAmmo : int = 10 ;

 private var score : int = 10;
 var guiScore : GUIText;

 function Start ()
 {

 guiScore.text = "Score: " + score.toString();

 }

     function Update()
      {

       if(Input.GetButtonDown("Fire1"))  

          countAmmo--;
          score = countAmmo - 1;        

       if(countAmmo == 0)
       {
          if(score == -1)      
          {         
             myObject.SetActive(false);  
          }
          else
          {
           guiScore.text = "Score: " + score.ToString();
           myObject.SetActive(true);
          } 
      }
  }