Unexpected symbol
Eu fiz o script todo certo mas esta dando um erro que não entendo como arrumar me ajudem ai galera
I made sure every script but is giving an error I do not understand how to fix help me there guys
using UnityEngine; using System.Collections;
public enum POSITION_PLAYER { LEFT, RIGHT, MIDDLE }
public class PlayerBehaviour : MonoBehaviour {
public Vector3 positionLeft;
public Vector3 positionRight;
public Vector3 positionMiddle;
public POSITION_PLAYER currentPosition = POSITION_PLAYER.MIDDLE;
private Vector3 positionToGo;
public float dumbToPosition;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
InputPlayer ();
transform.position = Vector3.Lerp (transform.position, positionToGo, Time.deltaTime * dumbToPosition);
}
public void changePosition(POSITION_PLAYER = nextPosition) {
if (nextPosition == POSITION_PLAYER.LEFT && currenPosition == POSITION_PLAYER.RIGHT){
currentPosition = POSITION_PLAYER.MIDDLE;
}
else if (nextPosition == POSITION_PLAYER.LEFT && currenPosition == POSITION_PLAYER.MIDDLE){
currentPosition = POSITION_PLAYER.LEFT;
}
else if (nextPosition == POSITION_PLAYER.RIGHT && currenPosition == POSITION_PLAYER.LEFT){
currentPosition = POSITION_PLAYER.MIDDLE;
}
else if (nextPosition == POSITION_PLAYER.RIGHT && currenPosition == POSITION_PLAYER.MIDDLE){
currentPosition = POSITION_PLAYER.RIGHT;
}
switch (currentPosition) {
case POSITION_PLAYER.LEFT; {
positionToGo = positionLeft;
break;
}
case POSITION_PLAYER.RIGHT; {
positionToGo = positionRight;
break;
}
case POSITION_PLAYER.MIDDLE; {
positionToGo = positionMiddle;
break;
}
}
}
public void InputPlayer(){ if(Input.GetAxis("Horizontal") > 0) { changePosition(POSITION_PLAYER.RIGHT); }else { changePosition(POSITION_PLAYER.LEFT); } }
}
Answer by EmHuynh · Mar 12, 2016 at 04:36 PM
Hey, @legomih.
Problem 1
Take a look at the function public void changePosition(POSITION_PLAYER = nextPosition)
. There is an equal sign before nextPosition
. To resolve it, just remove the equal sign. So the result is:
public void changePosition(POSITION_PLAYER nextPosition) // Removed equal sign.
.
Problem 2
The switch cases are invalid. There is not suppose to be a semicolon ( ;
). Also the curly braces ( {
& }
) are not needed.
switch (currentPosition)
{
case POSITION_PLAYER.LEFT: // Removed ; and { }.
positionToGo = positionLeft;
break;
case POSITION_PLAYER.RIGHT: // Removed ; and { }.
positionToGo = positionRight;
break;
case POSITION_PLAYER.MIDDLE: // Removed ; and { }.
positionToGo = positionMiddle;
break;
}
Your answer
Follow this Question
Related Questions
error CS1525: Unexpected symbol `offsetX' 1 Answer
error CS1525: Unexpected symbol `)', expecting `(' 1 Answer
Unexpected symbol `1' ?? 1 Answer
Error CS1519 help 1 Answer
C# unexpected symbol error 1 Answer