void PlacePart() { Vector3 snapArea = selectedCircuitPart.snapArea; if (selectedCircuitPart.m_gridSystem.CheckFreeSpace(snapArea) && money.Value - selectedCircuitPart.Cost >= 0) { money.Value -= selectedCircuitPart.Cost; CircuitPart placedCircuitPart = Instantiate(selectedCircuitPart.prefab, Vector3.zero, Quaternion.identity).GetComponent <CircuitPart> (); placedCircuitPart.visual.transform.position = snapArea; placedCircuitPart.snapArea = snapArea; placedCircuitPart.isPlaced = true; placedCircuitPart.target.gameObject.SetActive(false); placedCircuitPart.AddSelfToGridSystem(); } }