- Home /
How do I create runtime inputs?
Hi everyone, I'm making a maths game in unity which in essence displays an equation using the GUI and then the player must type in a number to progress.
I am using javascript but not too sure how I can have the player enter a number and have the game compare it to the right answer. I tried using GUI.TextField and I am able to enter a number, but I am not able to get the game to compare the answer.
This is my code so far, any help will be greatly appreciated!
Thanks in advance!
//system variables
public var guiSkin : GUISkin;
var solved : boolean = false;
var correct : boolean = false;
var wrong : boolean = false;
var gameOver : boolean = false;
var smallRandom1 : int;
var smallRandom2 : int;
var answer : int;
var inputAnswer = " ";
var randomOperator : int;
var displayOperator = " ";
function Start ()
{
// randomizing numbers and operator
smallRandom1 = Random.Range(0, 21);
smallRandom2 = Random.Range(0, 21);
randomOperator = Random.Range(0,4);
}
function Update ()
{
// displaying opposite operator
OnScreenOperator();
// perform calculation when enter is pressed
if(Input.GetKeyDown(KeyCode.Return))
{
print("pressed Enter");
Calculate();
}
}
// function for displaying opposite operators. eg + is displayed as -
function OnScreenOperator()
{
if(randomOperator == 0)
{
displayOperator = "-";
}
if (randomOperator == 1)
{
displayOperator = "+";
}
if (randomOperator == 2)
{
displayOperator = "/";
}
if (randomOperator == 3)
{
displayOperator = "x";
}
}
// numbers calculation
function Calculate()
{
if(randomOperator == 0) // addition
{
answer = smallRandom1 + smallRandom2;
print(answer);
}
if (randomOperator == 1) // subtraction
{
answer = smallRandom1 - smallRandom2;
print(answer);
}
if (randomOperator == 2) // multiplication
{
answer = smallRandom1 * smallRandom2;
print(answer);
}
if (randomOperator == 3) // division
{
answer = smallRandom1 / smallRandom2;
print(answer);
}
}
function OnGUI()
{
// storing chalk font
GUI.skin = guiSkin;
// drawing chalk font on screen
GUI.Label(Rect(Screen.width/4,Screen.height/2.5,1000,1000),
smallRandom1.ToString() + " " + displayOperator + " " + smallRandom2.ToString() + " = ?");
}
Comment
Your answer
Follow this Question
Related Questions
Detect GUI rotation degree 1 Answer
Unity Reload Bullets left 1 Answer
Add to number little by little so it ends at specific number. 1 Answer
What is the mathematical formula for GUI dragging ? 2 Answers
Calorie tracker 1 Answer