- Home /
Parsign error?
using UnityEngine; using System.Collections;
public class Spawn : MonoBehaviour {
//Variables Start___________________________________
//Used to determine if the palyer needs to spawn into //the game.
private bool justConnectedToServer = false;
//Used to determine which team the player is on.
public bool amIOnTheRedTeam = false;
public bool amIOnTheBlueTeam = false;
//Used to define the JoinTeamWindow.
private Rect joinTeamRect;
private Rect respawnRect;
private string joinTeamWindowTitle = "Scegli il Gruppo";
private string respawnWindowTitle = "Aspetta per respawnare";
private string respawn = "Aspetta per respawnare";
private int joinTeamWindowWidth = 330;
private int joinTeamWindowHeight = 100;
private int joinTeamLeftIndent;
private int joinTeamTopIndent;
private int respawnLeftIndent;
private int respawnTopIndent;
private int buttonHeight = 40;
public string playerName;
private GameObject multiplayerManager;
private MultiplayerScript multiScript;
public int waitTime = 5;
//The Player prefabs are connected to these in the //inspector
public Transform redTeamPlayer;
public Transform blueTeamPlayer;
private int redTeamGroup = 0;
private int blueTeamGroup = 1;
//Used to capture spawn points.
private GameObject[] redSpawnPoints;
private GameObject[] blueSpawnPoints;
//Used in determining whether the player is destroyed.
public bool iAmDestroyed = false;
//Used in determining if the player has spawned for the //first time.
public bool firstSpawn = false;
//This is used in allowing the player to select a team again //if the match has restarted.
public bool matchRestart = false;
//Variables End_
// Use this for initialization void Start () { // PlayerDatabase dataScript = gameManager.GetComponent();
}
// Update is called once per frame void Update () {
}
void OnConnectedToServer () { justConnectedToServer = true;
}
void JoinTeamWindow (int windowID) {
//Only show these two buttons when the player has just connected to //the server or if the match has restarted. They allow the player //choose a team and spawn into the game.
if(justConnectedToServer == true || matchRestart == true)
{
//If the player clicks on the Join Red Team button then
//assign them to the red team and spawn them into the game.
if(GUILayout.Button("Entra nel gruppo rosso", GUILayout.Height(buttonHeight)))
{
amIOnTheRedTeam = true;
justConnectedToServer = false;
matchRestart = false;
iAmDestroyed = false;
SpawnRedTeamPlayer();
firstSpawn = true;
}
//If the player clicks on the Join Blue Team button then
//assign them to the blue team and spawn them into the game.
if(GUILayout.Button("Entra nel gruppo blu", GUILayout.Height(buttonHeight)))
{
amIOnTheBlueTeam = true;
justConnectedToServer = false;
matchRestart = false;
iAmDestroyed = false;
SpawnBlueTeamPlayer();
firstSpawn = true;
}
}
}
void respawnWindow (int windowID) { if(iAmDestroyed == true && amIOnTheBlueTeam == true) { StartCoroutine(RespawnBlue()); }
if(iAmDestroyed == true && amIOnTheRedTeam == true)
{
StartCoroutine(RespawnRed());
}
}
void OnGUI() { //If the player has just connected to the server then draw the //Join Team window.
if(justConnectedToServer == true || matchRestart == true
&& Network.isClient)
{
Screen.lockCursor = false;
joinTeamLeftIndent = Screen.width / 2 - joinTeamWindowWidth / 2;
joinTeamTopIndent = Screen.height / 2 - joinTeamWindowHeight / 2;
joinTeamRect = new Rect(joinTeamLeftIndent, joinTeamTopIndent,
joinTeamWindowWidth, joinTeamWindowHeight);
joinTeamRect = GUILayout.Window(0, joinTeamRect, JoinTeamWindow,
joinTeamWindowTitle);
}
if(iAmDestroyed == true)
{
joinTeamLeftIndent = Screen.width / 2 - joinTeamWindowWidth / 2;
joinTeamTopIndent = Screen.height / 2 - joinTeamWindowHeight / 2;
joinTeamRect = new Rect(joinTeamLeftIndent, joinTeamTopIndent,
joinTeamWindowWidth, joinTeamWindowHeight);
joinTeamRect = GUILayout.Window(0, joinTeamRect, respawnWindow,
joinTeamWindowTitle);
GUILayout.Box("Aspetta per respawnare");
}
}
void SpawnRedTeamPlayer () { //Find all red spawn points and place a reference to them in the array //redSpawnPoints.
iAmDestroyed = false;
redSpawnPoints = GameObject.FindGameObjectsWithTag("SpawnRossoGruppo");
//Randomly select one of those spawn points.
GameObject randomRedSpawn = redSpawnPoints[Random.Range(0, redSpawnPoints.Length)];
//Instantiate the player at the randomly selected spawn point.
Network.Instantiate(redTeamPlayer, randomRedSpawn.transform.position,
randomRedSpawn.transform.rotation, redTeamGroup);
if(firstSpawn != true)
{
playerName = "GiocatoreRosso";
}
//Access the PlayerDatabase and supply it with the team that this player
//has joined.
GameObject gameManager = GameObject.Find("GameManager");
PlayerDatabase dataScript = gameManager.GetComponent();
dataScript.joinedTeam = true;
dataScript.playerTeam = "red";
iAmDestroyed = false;
}
void SpawnBlueTeamPlayer () { //Find all blue spawn points and place a reference to them in the array //blueSpawnPoints.
blueSpawnPoints = GameObject.FindGameObjectsWithTag("SpawnBluGruppo");
//Randomly select one of those spawn points.
GameObject randomBlueSpawn = blueSpawnPoints[Random.Range(0, blueSpawnPoints.Length)];
//Instantiate the player at the randomly selected spawn point.
Network.Instantiate(blueTeamPlayer, randomBlueSpawn.transform.position,
randomBlueSpawn.transform.rotation, blueTeamGroup);
if(firstSpawn != true)
{
playerName = "PlayerBlue";
}
//Access the PlayerDatabase and supply it with the team that this player
//has joined.
GameObject gameManager = GameObject.Find("GameManager");
PlayerDatabase dataScript = gameManager.GetComponent();
dataScript.joinedTeam = true;
dataScript.playerTeam = "blue";
iAmDestroyed = false;
}
IEnumerator RespawnBlue () { yield return new WaitForSeconds (waitTime);
iAmDestroyed = false;
SpawnBlueTeamPlayer();
}
IEnumerator RespawnRed () { yield return new WaitForSeconds (waitTime);
iAmDestroyed = false;
SpawnRedTeamPlayer();
}
Unity say me that the last parsign is wrong, why?
This question needs some rework. You're (probably) posting a lot more code than is core to the problem, and the code is unreadable because it isn't formatted properly.
No. If only the last part is relevant, then edit your question to only contain that.
Answer by Dimling · Jul 24, 2013 at 12:02 PM
you are missing one of those: } at the bottom, I think.
//skipped all the code above this section.....
IEnumerator RespawnRed () {
yield return new WaitForSeconds (waitTime);
iAmDestroyed = false;
SpawnRedTeamPlayer();
}
}
$$anonymous$$ake sure your filename is the same as your class name and then indent your script properly so you can read it more easily and it's much easier to spot errors. This error is usually brackets error somewhere in your code. One to much or little somewhere.
Your answer
Follow this Question
Related Questions
A node in a childnode? 1 Answer
Situational GUI / GUI on mouse over? 4 Answers
help unity3d javascript 1 Answer
Creating a 3D simulator 1 Answer
3rd Person Control for Android? 0 Answers