停止增量时间c#

时间:2016-07-22 04:40:00

标签: c# timedelta

我试图一次显示3次基于回合的游戏。 第一次是倒计时的总时间。 其他两个计时器显示每个玩家的倒计时时间。 我还从另一个类检查了一个布尔值,看它是哪个转弯(myplayerturn)

现在我可以有效地显示所有倒计时的总时间和玩家时间,但是当一个玩家时间正在运行时我想暂停其他玩家计时器。到目前为止,我的代码如下

public class countDown : MonoBehaviour {

public Text timerText;
public Text PlayerTime;
public Text OpponentTime;
public float myTimer = 3600;



// Use this for initialization
void Start () {
    timerText = GetComponent<Text>();
    PlayerTime = GetComponent<Text>();
    OpponentTime = GetComponent<Text>();

}

// Update is called once per frame
void Update () {

    if (GetComponent<differentclass>().myplayerturn)
    {
        //I'm gueussing this is where i need to pause OpponentTime;
        // and start PlayerTime
    } 
    else{
        // pause PlayerTime
        }

    int minutes = Mathf.FloorToInt(myTimer / 60F);
    int seconds = Mathf.FloorToInt(myTimer - minutes * 60);
    string rTime = string.Format("{0:00}:{1:00}", minutes, seconds);

    myTimer -= Time.deltaTime;
    timerText.text = rTime;
    PlayerTime.text = rTime;
    OpponentTime.text = rTime;


}

}

1 个答案:

答案 0 :(得分:0)

我会在一个小班级中存储分钟和秒钟,并给每个玩家一个班级,当它暂停时不要增加时间。 这看起来像这样:

public class PlayerTime {
    public int seconds = 0;
    public int minutes = 0;
    public float myTimer = 3600;
}

然后在更新内部我会使用person类变量。