public virtual void Die() { Destroy(gameObject); if (Game.Items.ContainsKey(itemID)) { GameObject item = Instantiate(Resources.Load <GameObject>($"Items/{Game.Items[itemID]}_Item")); item.transform.position = transform.position; MovementMeshNode n = GetComponent <MovementMeshNode>(); GlobalMovementMesh.Instance.RemoveNode(n); n.RecalculateNeighbours(); } }
public bool PlaceBlock(int itemID, Vector3 position) { if (GetBlockAtPosition(position)) { return(false); } GameObject block = Resources.Load($"Blocks/{Game.Items[itemID]}") as GameObject; block.transform.position = position; GameObject blockInstance = Instantiate(block); blockInstance.transform.parent = transform; MovementMeshNode movementMeshNode = blockInstance.GetComponent <MovementMeshNode>(); if (movementMeshNode) { movementMeshNode.RecalculateNeighbours(); } return(true); }