Question by
james9201 · Jun 10, 2016 at 11:42 PM ·
errornewbienewparsing errorunexpected-symbol
Parsing error and unexpected symbol
I have the following code with 2 errors. A parsing error at 80,1 and a unexpected symbol '}' at 68,25. any help is much appreciated :)
using UnityEngine.SceneManagement;
using UnityEngine;
using System.Collections;
public class SlimeController : MonoBehaviour {
public float moveSpeed;
private Rigidbody2D myRigidBody;
private bool moving;
public float timeBetweenMoves;
private float timeBetweenMoveCounter;
public float timeToMove;
private float timeToMoveCounter;
private Vector3 moveDirection;
public float waitToReload;
private bool reloading;
// Use this for initialization
void Start () {
myRigidBody = GetComponent<Rigidbody2D> ();
//timeBetweenMoveCounter = timeBetweenMoves;
//timeToMoveCounter = timeToMove;
timeBetweenMoveCounter = Random.Range (timeBetweenMoves * 0.50f, timeBetweenMoves * 2f);
timeToMoveCounter = Random.Range (timeToMove * 0.01f, timeToMove * 100f);
}
// Update is called once per frame
void Update () {
if (moving)
{
timeToMoveCounter -= Time.deltaTime;
myRigidBody.velocity = moveDirection;
if (timeToMoveCounter < 0f)
{
moving = false;
//timeBetweenMoveCounter = timeBetweenMoves;
timeBetweenMoveCounter = Random.Range (timeBetweenMoves * 0.50f, timeBetweenMoves * 2f);
}
} else {
timeBetweenMoveCounter -= Time.deltaTime;
myRigidBody.velocity = Vector2.zero;
if (timeBetweenMoveCounter < 0f)
{
moving = true;
//timeToMoveCounter = timeToMove;
timeToMoveCounter = Random.Range (timeToMove * 0.50f, timeToMove * 2f);
moveDirection = new Vector3 (Random.Range (-1f, 1f) * moveSpeed, Random.Range (-1f, 1f) * moveSpeed, 0f);
}
}
if(reloading = true)
{
waitToReload -= Time.deltaTime;
if(waitToReload < 0)
{
SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex);
thePlayer.SetActive(true)
}
}
void OnCollisionEnter2D(Collision2D other)
{
if (other.gameObject == "Player") {
//Destroy (other.gameobject));
other.gameObject.SetActive (false);
reloading = true;
}
}
}
Comment
Best Answer
Answer by btmedia14 · Jun 11, 2016 at 04:06 AM
1) Looks like a missing close parenthesis } at line 69 is needed to match the if(reloading = true)
from line 61.
2) The if(reloading = true)
is incorrect and should be an equality check, i.e. == not =. But since the reloading variable is a bool, better to replace with if(reloading)
3) Also, missing a semicolon to terminate statement at line 68: thePlayer.SetActive(true);