So I’m not very experienced and I’ve been working on a game where you have to tap at the right time to get points. In this gamemode, if you don’t tap when the timer hits 0, or if you tap at the wrong time, you lose. When you lose, a text asks you if you would like to try again. Like this:
It works correctly when you tap at the wrong time, but if you don’t tap when the timer hits 0, the text changes to the wrong value. Like this:
The font size is supposed to change, but the text is supposed to say “Try Again?”
I’m sure it’s a simple fix, but I can’t figure it out. Here’s my code(js):
#pragma strict
var taptext : UI.Text;
var tapnumber : float;
var roundtapnumber : int;
var isStarted : boolean = false;
var wasClicked : boolean;
var score : int;
var scoretext : UI.Text;
var highscore : int;
var highscoretext : UI.Text;
function Start () {
taptext.fontSize = 50;
taptext.text = "Start";
}
function Update () {
highscore = PlayerPrefs.GetInt("cantmisshs");
scoretext.text = "Score: " + score;
highscoretext.text = "High Score: " + highscore;
if(isStarted == true) {
roundtapnumber = Mathf.Round(tapnumber);
if(tapnumber <= 0) {
if(wasClicked == false) {
gameOver();
} else if(wasClicked == true) {
wasClicked = false;
}
tapnumber = 10;
} else if(tapnumber > 0) {
tapnumber -= Time.deltaTime * 4;
}
if(roundtapnumber >= 10) {
taptext.text = "" + roundtapnumber;
} else if(roundtapnumber < 10) {
taptext.text = "0" + roundtapnumber;
}
}
}
function isClicked () {
if(isStarted == false) {
isStarted = true;
taptext.fontSize = 80;
tapnumber = 10;
} else if(isStarted == true) {
if(roundtapnumber == 0) {
wasClicked = true;
score += 1;
if(score > highscore) {
PlayerPrefs.SetInt("cantmisshs", score);
}
} else {
gameOver();
}
}
}
function gameOver() {
isStarted = false;
score = 0;
taptext.text = "Try Again?";
taptext.fontSize = 25;
}
I’m usually not very good at explaining problems like this, so if you have any questions about what I’m trying to do, feel free to ask. Thanks in advance for any help