So i get this problem, Heres my code
var speed : float = 50.0;
var move : int = 0;
var currentPlayer : int = 1;
var players: int = 2;
var playerOne : Transform;
var playerTwo : Transform;
var playerOnePoints : int = 0;
var playerTwoPoints : int = 0;
var finalScore : int = 0;
var questionAmount : float = 1.0;
var questions : Array;
var currentQuestion : int = 0;
var questionCheck : int = 0;
var n : int = 0;
var questionAllUsed : boolean = false;
var winnerBanner : boolean = false;
var lastQuestionDone : boolean = false;
var keepGoing : boolean = true;
var numOfQuestions : int = 0;
var correctA : boolean = false;
var delay : float = 3.0;
var done : float = 0.0;
var waypoints1 : Array;
var waypoints2 : Array;
var customSkin : GUISkin;
var questionBoard : Texture2D;
var spawn1 : Transform;
var waypointOne1 : Transform;
var waypointOne2 : Transform;
var waypointOne3 : Transform;
var waypointOne4 : Transform;
var waypointOne5 : Transform;
var waypointOne6 : Transform;
var waypointOne7 : Transform;
var waypointOne8 : Transform;
var waypointOne9 : Transform;
var waypointOne10 : Transform;
var waypointOne11 : Transform;
var waypointOne12 : Transform;
var waypointOne13 : Transform;
var waypointOne14 : Transform;
var waypointOne15 : Transform;
var seperation : boolean = false;
var spawn2 : Transform;
var waypointTwo1 : Transform;
var waypointTwo2 : Transform;
var waypointTwo3 : Transform;
var waypointTwo4 : Transform;
var waypointTwo5 : Transform;
var waypointTwo6 : Transform;
var waypointTwo7 : Transform;
var waypointTwo8 : Transform;
var waypointTwo9 : Transform;
var waypointTwo10 : Transform;
var waypointTwo11 : Transform;
var waypointTwo12 : Transform;
var waypointTwo13 : Transform;
var waypointTwo14 : Transform;
var waypointTwo15 : Transform;
function Start () {
currentQuestion = parseInt(Random.Range(0,3));
questions = [
["question1","answer11","answer12","answer13","answer14","1","0"],
["question2","answer21","answer22","answer23","answer24","2","0"],
["question3","answer31","answer32","answer33","answer34","3","0"],
["question4","answer41","answer42","answer43","answer44","3","0"],
["question5","answer51","answer52","answer53","answer54","3","0"]
];
numOfQuestions = questions.length;
Debug.Log(numOfQuestions);
//waypoints for player 1
waypoints1 = [
[spawn1.position.x,spawn1.position.y,"0"],
[waypointOne1.position.x,waypointOne1.position.y,"1"],
[waypointOne2.position.x,waypointOne2.position.y,"2"],
[waypointOne3.position.x,waypointOne3.position.y,"3"],
[waypointOne4.position.x,waypointOne4.position.y,"4"],
[waypointOne5.position.x,waypointOne5.position.y,"5"],
[waypointOne6.position.x,waypointOne6.position.y,"6"],
[waypointOne7.position.x,waypointOne7.position.y,"7"],
[waypointOne8.position.x,waypointOne8.position.y,"8"],
[waypointOne9.position.x,waypointOne9.position.y,"9"],
[waypointOne10.position.x,waypointOne10.position.y,"10"],
[waypointOne11.position.x,waypointOne11.position.y,"11"],
[waypointOne12.position.x,waypointOne12.position.y,"12"],
[waypointOne13.position.x,waypointOne13.position.y,"13"],
[waypointOne14.position.x,waypointOne14.position.y,"14"],
[waypointOne15.position.x,waypointOne15.position.y,"15"]
];
//waypoints for player 2
waypoints2 = [
[spawn2.position.x,spawn2.position.y,"0"],
[waypointTwo1.position.x,waypointTwo1.position.y,"1"],
[waypointTwo2.position.x,waypointTwo2.position.y,"2"],
[waypointTwo3.position.x,waypointTwo3.position.y,"3"],
[waypointTwo4.position.x,waypointTwo4.position.y,"4"],
[waypointTwo5.position.x,waypointTwo5.position.y,"5"],
[waypointTwo6.position.x,waypointTwo6.position.y,"6"],
[waypointTwo7.position.x,waypointTwo7.position.y,"7"],
[waypointTwo8.position.x,waypointTwo8.position.y,"8"],
[waypointTwo9.position.x,waypointTwo9.position.y,"9"],
[waypointTwo10.position.x,waypointTwo10.position.y,"10"],
[waypointTwo11.position.x,waypointTwo11.position.y,"11"],
[waypointTwo12.position.x,waypointTwo12.position.y,"12"],
[waypointTwo13.position.x,waypointTwo13.position.y,"13"],
[waypointTwo14.position.x,waypointTwo14.position.y,"14"],
[waypointTwo15.position.x,waypointTwo15.position.y,"15"]
];
playerOne.transform.position.x = spawn1.position.x;
playerOne.transform.position.y = spawn1.position.y;
playerTwo.transform.position.x = spawn2.position.x;
playerTwo.transform.position.y = spawn2.position.y;
}
// buttons and questions
function OnGUI () {
GUI.skin = customSkin;
// Make a background box
GUI.Label (Rect (25,500,4000,20),"Player Turn: " + currentPlayer);
GUI.Label (Rect (25,50,4000,20),"Player 1 Score " + playerOnePoints);
GUI.Label (Rect (25,100,4000,20),"Player 2 Score " + playerTwoPoints);
GUI.Label (Rect (Screen.width - (Screen.width/2)-200,Screen.height - (Screen.height/2)-350,700,550),questionBoard);
GUI.Label (Rect (Screen.width - (Screen.width/2)+10,Screen.height - (Screen.height/2)-250,700,550),questions[currentQuestion][0]);
GUI.Box (Rect (Screen.width - (Screen.width/2)-60,Screen.height - (Screen.height/2)-55,300,40), questions[currentQuestion][1]);
GUI.Box (Rect (Screen.width - (Screen.width/2)-60,Screen.height - (Screen.height/2)+10,300,40), questions[currentQuestion][2]);
GUI.Box (Rect (Screen.width - (Screen.width/2)-60,Screen.height - (Screen.height/2)+80,300,40), questions[currentQuestion][3]);
//GUI.Label (Rect (85,240,4000,20), questions[currentQuestion][4]);
if( winnerBanner && lastQuestionDone )
{
GUI.Label (Rect (155,150,4000,20),"End of game " + currentPlayer + " Congratulations with ");
}
// correct choice
if(correctA)
{
GUI.Label (Rect (500,500,4000,20),"CORRECT!");
}
// Make the first button. If it is pressed, Application.Loadlevel (1) will be executed
if (GUI.Button (Rect (Screen.width - (Screen.width/2)-72,Screen.height - (Screen.height/2)-60,60,40), "[ ]")) {
questions[currentQuestion][6] = "1";
if(questionAllUsed)
{
lastQuestionDone = true;
}
if(questions[currentQuestion][5] == "1"){
move = 1;
Debug.Log("A1");
if(currentPlayer == 1)
{
playerOnePoints++;
playerOne.transform.position.x = waypoints1[playerOnePoints][1];
playerOne.transform.position.y = waypoints1[playerOnePoints][2];
}
if(currentPlayer == 2)
{
playerTwoPoints++;
playerTwo.transform.position.x = waypoints2[playerTwoPoints][1];
playerTwo.transform.position.y = waypoints2[playerTwoPoints][2];
}
}
else
{move = 2;}
}
// Make the second button.
if (GUI.Button (Rect (Screen.width - (Screen.width/2)-72,Screen.height - (Screen.height/2),60,40), "[ ]")) {
questions[currentQuestion][6] = "1";
if(questionAllUsed)
{
lastQuestionDone = true;
}
if(questions[currentQuestion][5] == "2"){
move = 1;
Debug.Log("A2");
if(currentPlayer == 1)
{
playerOnePoints++;
playerOne.transform.Translate(Vector3.forward * Time.deltaTime * speed);
}
if(currentPlayer == 2)
{
playerTwoPoints++;
playerTwo.transform.Translate(Vector3.forward * Time.deltaTime * speed);
}
}
else{move = 2;}
}
// Make the second button.
if (GUI.Button (Rect (Screen.width - (Screen.width/2)-72,Screen.height - (Screen.height/2)+72,60,40),"[ ]")) {
questions[currentQuestion][6] = "1";
if(questionAllUsed)
{
lastQuestionDone = true;
}
if(questions[currentQuestion][5] == "3"){
move = 1;
Debug.Log("A3");
if(currentPlayer == 1)
{
correctA = true;
playerOnePoints++;
playerOne.transform.Translate(Vector3.forward * Time.deltaTime * speed);
correctA = false;
}
if(currentPlayer == 2)
{
correct = true;
playerTwoPoints++;
playerTwo.transform.Translate(Vector3.forward * Time.deltaTime * speed);
correct = false;
}
}
else{move = 2;}
}
if( lastQuestionDone )
{
if(playerOnePoints > playerTwoPoints)
{
winnerBanner = true;
finalScore = playerTwoPoints;
}
if(playerTwoPoints > playerOnePoints)
{
winnerBanner = true;
finalScore = playerTwoPoints;
}
if(playerOnePoints == playerTwoPoints)
{
winnerBanner = true;
finalScore = playerTwoPoints;
}
}
else
{
GUI.Label (Rect (25,500,4000,20),"Player Turn: " + currentPlayer);
GUI.Label (Rect (25,100,4000,20),"Player 2 Score " + playerTwoPoints);
GUI.Label (Rect (25,50,4000,20),"Player 1 Score " + playerOnePoints);
questionCheck = 0;
while(questions[currentQuestion][6] == "1")
{
currentQuestion = parseInt(Random.Range(0,numOfQuestions-1));
if(questionCheck > numOfQuestions*2)
{
keepGoing = true;
for(n = 0; n < numOfQuestions && keepGoing; n++)
{ Debug.Log(n + "NNNNNNNN");
if( questions[n][6] == "0")
{
currentQuestion = n;
n = numOfQuestions;
keepGoing=false;
}
}
if(n > numOfQuestions)
{
questionAllUsed = true;
}
}
questionCheck++;
}
}
}
function Update()
{
// currentPlayer 1
if (lastQuestionDone == false)
{
if( currentPlayer == 1 )
{
if(move != 0)
{
currentPlayer = 2;
move = 0;
}
}
//currentPlayer 2
if( currentPlayer == 2 )
{
if(move != 0)
{
currentPlayer = 1;
move = 0;
}
}
}
else
{
}
}
Whole error:
InvalidCastException: Cannot cast from source type to destination type.
Boo.Lang.Runtime.RuntimeServices.CheckNumericPromotion (IConvertible convertible)
Boo.Lang.Runtime.RuntimeServices.CheckNumericPromotion (System.Object value)
Boo.Lang.Runtime.RuntimeServices.UnboxSingle (System.Object value)
Movementtest1.OnGUI () (at Assets/My assest/scripts/Movementtest1.js:161)
So tell me whats wrong, everythime the player gets a question right, They move up one space. YES I KNOW MY CODE IS NOT GOOD! I am just trying to get this done for a presentation, hard-coding if i have too!