I’m getting a: NullReferenceException: Object reference not set to an instance of an object
Boo.Lang.Runtime.RuntimeServices.CheckNumericPromotion (IConvertible convertible)
Boo.Lang.Runtime.RuntimeServices.CheckNumericPromotion (System.Object value)
Boo.Lang.Runtime.RuntimeServices.UnboxSingle (System.Object value)
MapGrid.Drill () (at Assets/Scripts/MapGrid.js:44)
MapGrid.Update () (at Assets/Scripts/MapGrid.js:39). And my script is not working. Can someone give me a hint what is wrong?
var prefab : GameObject;
var player : GameObject;
var gridX = 5;
var gridY = 5;
private var spacing = 1;
var UseSpawner : boolean = true;
var Spawn : GameObject;
var gridXRounded;
var SpawnX;
var SpawnY;
var block : GameObject;
function Start ()
{
grid2D = new GameObject[gridX,gridY];
for (var y = 0; y < gridY; y++){
for (var x = 0; x < gridX; x++){
var pos : Vector3 = Vector3(x,y,0) * spacing;
var newBlock : GameObject = Instantiate(prefab, pos, Quaternion.identity);
newBlock.name = "GridBlock" + x + "-" + y;
}
}
if(UseSpawner){
var SpawnX : int = Mathf.Round(gridX / 2 - 1);
var SpawnY : float = gridY + 0.5;
player.transform.localScale = Vector3(0.75, 0.75, 0.75);
Spawn.transform.position = Vector3(SpawnX, SpawnY, 0 );
player.transform.position = Vector3(SpawnX, SpawnY, 0);
}
}
function Update() {
if(Input.GetButton("Down")){
Drill();
}
}
function Drill(){
block = GameObject.Find("GridBlock" + Mathf.Round(player.transform.x) + "-" + Mathf.Round(player.transform.y - 1));
Destroy(block);
}