Question by
Mafflouki · Jan 29, 2019 at 12:45 PM ·
c#scripting problemscript error
i need help with my board manager coding ASAP
i keep getting this error code
Assets/Scripts/BoardManager.cs(71,15): error CS1525: Unexpected symbol `Vector3'
Coding:
using UnityEngine;
using System;
using System.Collections.Generic;
using Random = UnityEngine.Random;
public class BoardManager : MonoBehaviour
{
[Serializable]
public class Count
{
public int minimum;
public int maximum;
public Count (int min, int max)
{
minimum = min;
maximum = max;
}
}
public int columns = 8;
public int rows = 8;
public Count wallCount = new Count (5,9);
public Count foodCount = new Count (1,5);
public GameObject exit;
public GameObject[] floorTiles;
public GameObject[] wallTiles;
public GameObject[] foodTiles;
public GameObject[] enemyTiles;
public GameObject[] outerWallTiles;
private Transform boardHolder;
private List <Vector3> gridPositions = new List <Vector3> ();
void InitialiseList()
{
gridPositions.Clear();
for (int x = 1; x < columns - 1; x++)
{
for (int y = 1; y < rows - 1; y++)
{
gridPositions.Add(new Vector3(x,y,0f));
}
}
}
void BoardSetup ()
{
boardHolder = new GameObject ("Board").transform;
for (int x = -1; x < columns + 1; x++)
{
for (int y = -1; y < rows + 1; y++)
{
GameObject toInstantiate = floorTiles[Random.Range (0, floorTiles.Length)];
if (x == -1 || x == columns || y == -1 || y == rows)
toInstantiate = outerWallTiles[Random.Range (0, outerWallTiles.Length)];
GameObject instance = Instantiate(toInstantiate, new Vector3 (x,y,0f), Quaternion.identity) as GameObject;
instance.transform.SetParent(boardHolder);
}
}
}
Vector3 RandomPosition()
{
int randomIndex = Random.Range (0, gridPositions.Count)
Vector3 randomPosition = gridPosition [randomIndex];
gridPositions.RemoveAt (randomIndex);
return randomPosition;
}
void LayoutObjectAtRandom(GameObject[] tileArray, int minimum, int maximum)
{
int objectCount = Random.Range (minimum, maximim + 1);
for (int i = 0; i < objectCount; i++)
{
Vector3 randomPositions = RandomPosition();
GameObject tileChoice = tileArray[Random.Range (0, tileArray.Length)];
Instantiate (tileChoice, RandomPosition(), Quaternion.identity);
}
}
public void SetupScene (int level)
{
BoardSetup ();
InitialiseList ();
LayoutObjectAtRandom (wallTiles, wallCount.minimum, wallCount.maximum);
LayoutObjectAtRandom (foodTiles, foodCount.minimum, foodCount.maximum);
int enemyCount = (int)Mathf.Log (level, 2f);
LayoutObjectAtRandom (enemyTiles, enemyCount, enemyCount);
Instantiate (exit, new Vector3 (columns - 1, rows - 1, 0f), Quaternion.identity);
}
}
Comment
int objectCount = Random.Range ($$anonymous$$imum, maximim + 1);
*should be maximum
Come on man!
Read the error code.... If says something is unexpected is because there should be something in that place.... like a ;
Best Answer
Answer by NoseKills · Mar 03, 2016 at 07:06 AM
A missing semicolon at the end of the line before it
int randomIndex = Random.Range (0, gridPositions.Count)