public void Knock(PlayerController.PlayerNumber playerNumber) { if (moduleClosed || !isOn) { return; } Vector3 residentPosition = resident.transform.position; GlobalController.instance.hud.GoodKnock(playerNumber); if (residentPosition.x >= endPointRight.x) { //RIGHT flat.PointFor(PlayerController.PlayerNumber.RIGHT); moduleClosed = true; turnOff(); GlobalController.instance.InstantStartNewFlat(); return; } else if (residentPosition.x <= endPointLeft.x) { //LEFT flat.PointFor(PlayerController.PlayerNumber.LEFT); moduleClosed = true; turnOff(); GlobalController.instance.InstantStartNewFlat(); return; } if (playerNumber == PlayerController.PlayerNumber.LEFT) { residentPosition.x -= stepSize; } else { residentPosition.x += stepSize; } resident.SetTargetPos(residentPosition); }