void Update() { // Hammer if ( Input.GetKeyDown(KeyCode.E) ){ if ( hammerState == HammerStates.Rest ){ hammerState = HammerStates.Cocked; } } // Trigger if ( Input.GetKeyDown(KeyCode.F) && hammerState == HammerStates.Cocked ){ if ( triggerState == TriggerStates.Reset ){ triggerState = TriggerStates.Pulled; } else { triggerState = TriggerStates.Reset; } } // Handle Bullet Chamber Status for( int i=0; i<chambers.Count; i++ ){ if ( chambers[i] == ChamberStates.Empty ){ liveBullets[i].SetActive(false); spentBullets[i].SetActive(false); } if ( chambers[i] == ChamberStates.LoadedLive ){ liveBullets[i].SetActive(true); spentBullets[i].SetActive(false); } if ( chambers[i] == ChamberStates.LoadedSpent ){ liveBullets[i].SetActive(false); spentBullets[i].SetActive(true); } } // if you died if ( dead ){ locked = true; Camera.main.backgroundColor = Color.red; cylinderState = CylinderStates.Open; // show the restart button guiManager.objectivesPanel.SetActive(false); guiManager.restartButton.SetActive(true); guiManager.victoryButton.SetActive(false); } else { if ( !openPlay ){ if ( triggerPulls >= triggerPulls_objective ){ locked = true; Camera.main.backgroundColor = Color.green; cylinderState = CylinderStates.Open; // show the restart button guiManager.objectivesPanel.SetActive(false); guiManager.restartButton.SetActive(false); guiManager.victoryButton.SetActive(true); } } } musicManager.src.pitch = Mathf.Lerp(musicManager.src.pitch, 1f+liveBulletsInCylinder*0.1f, Time.deltaTime*0.25f); }
public void OrientationChanged() { DeviceOrientation DO = om.current; CylinderStates old = cylinderState; if (DO != DeviceOrientation.Unknown && DO != DeviceOrientation.FaceDown && DO != DeviceOrientation.FaceUp && !dead ){ if ( DO.ToString().Contains("Portrait") ){ cylinderState = CylinderStates.Open; } else { cylinderState = CylinderStates.Closed; } } // on cylinder State change spin the barrel if ( cylinderState != old ){ rc.audioManager.PlayClip(rc.audioManager.cylinder_close); if (Random.value > 0.5f){ _.touchManager.spinCounterClockwise = true; _.touchManager.spinClockwise = false; } else { _.touchManager.spinCounterClockwise = false; _.touchManager.spinClockwise = true; } // reset the hammer on cylinder change hammerState = HammerStates.Rest; } }
void Start() { // register the chambers and bullets for ( int i=0; i < 8; i++ ){ chambers.Add(new ChamberStates()); Transform chamber = GameObject.Find("Chamber"+i).transform; GameObject tempLive = chamber.FindChild("LiveBullet").gameObject; liveBullets.Add(tempLive); GameObject tempSpent = chamber.FindChild("SpentBullet").gameObject; spentBullets.Add(tempSpent); } om = gameObject.GetComponent<OrientationManager>(); if ( !isTutorial ){ if ( !openPlay ){ guiManager.displayLevelModal(); } else { //begin(); } } else { // tutorial step 0 // ROTATION string descriptiontext = "Rotate Your Device Open and Close the Revolver Cylinder"; string buttonText = "CHECK IT OUT!"; Sprite img = Resources.LoadAll<Sprite>("Art/Source/rss_tutorial")[0];; ModalLayouts layout = ModalLayouts.TwoColumnModal; guiManager.customModal( descriptiontext, buttonText, img, layout ); } hammerState = HammerStates.Rest; }