private bool IsDeviceOn() { if (LEDNodeGnd.GetComponent <LogicNode>().GetLogicState() == (int)LOGIC.LOW && LEDNodeVCC.GetComponent <LogicNode>().GetCollidingNode() != null) { Debug.Log("LED Is Operable"); return(true); } return(false); }
private void CheckIfSnapped() { //Check if all nodes with the chip is colliding with another logic node; if (LEDNodeGnd.GetComponent <LogicNode>().GetCollidingNode() == null || LEDNodeVCC.GetComponent <LogicNode>().GetCollidingNode() == null) { Debug.Log("LED Not Snapped"); SNAPPED = false; } else { Debug.Log("LED SNAPPED!"); LogicNode GndNode = LEDNodeGnd.GetComponent <LogicNode>(); GameObject CollidingNode = GndNode.GetCollidingNode(); Vector3 collidingNodePos = CollidingNode.transform.position; Vector3 offsetPosition = new Vector3(collidingNodePos.x + 1.2f, collidingNodePos.y - .165f, collidingNodePos.z); DeviceGameObject.transform.position = offsetPosition; SNAPPED = true; } }
public void ReactToLogic(GameObject LogicNode, int requestedState) { if (!SNAPPED) { Debug.Log("LED Is not snapped, cannot react to logic."); return; } LogicNode VCCLogic = LEDNodeVCC.GetComponent <LogicNode>(); LogicNode GNDLogic = LEDNodeGnd.GetComponent <LogicNode>(); LogicNode VCCCollidingNode = VCCLogic.GetCollidingNode().GetComponent <LogicNode>(); LogicNode GNDCollidingNode = GNDLogic.GetCollidingNode().GetComponent <LogicNode>(); SpriteRenderer LEDSpriteRen = this.gameObject.GetComponent <SpriteRenderer>(); if (GNDCollidingNode.GetLogicState() == (int)LOGIC.LOW && VCCCollidingNode.GetLogicState() == (int)LOGIC.HIGH) { LEDSpriteRen.sprite = LEDOn; LEDState = true; } else { LEDSpriteRen.sprite = LEDOff; LEDState = false; } }