protected InteractiveItem Interact() { CurrentItem?.Interact(transform); if (CurrentItem is FizzleBox && carryingObject) { carriedObject(carryingObject); } if (CurrentItem is FizzleBox && !carryingObject) { releasedObject(carryingObject); } FizzleButton currentItem = CurrentItem as FizzleButton; if (currentItem != null) { pressedButton(currentItem); } return(CurrentItem); }