public override void StartEvent() { base.StartEvent(); PC = GameObject.FindGameObjectWithTag("PCEvent"); Message(10, description, MessageSystem.ObjectToFollow.Headset, MessageSystem.Window.W800H400); MonitorRenderer = PC.transform.Find("Monitor").gameObject.GetComponent <MeshRenderer>(); TextMeshProMonitor = PC.transform.Find("Monitor/Canvas").gameObject.GetComponentInChildren <TextMeshProUGUI>(); color = MonitorRenderer.material.color; MonitorRenderer.material.color = Color.red; Buttons = Instantiate(ButtonsPrefab); // aSource = Buttons.transform.GetChild(Buttons.transform.childCount - 1).GetComponent<AudioSource>(); Buttons.SetActive(true); GenerateSequence(Lvl); _time = Time.time; seqBufforPtr = 0; stat = SeqStatus.waitingForInteraction; progress = 0; TextMeshProMonitor.text = "Press any key"; }
public override void CallInUpdate() { //base.CallInUpdate(); if ((stat == SeqStatus.NotShown && _time + Start_time <= Time.time) || (stat == SeqStatus.Showing && _time + deltaTime <= Time.time)) { if (stat == SeqStatus.NotShown) { stat = SeqStatus.Showing; canPlayerIteract(); _time = Time.time; } else if (stat == SeqStatus.Showing) { if (seqBufforPtr < sequen.Length) { TextMeshProMonitor.text = "Watch"; ShowPressing(sequen[seqBufforPtr]); seqBufforPtr++; _time = Time.time; } else { stat = SeqStatus.Shown; canPlayerIteract(true); TextMeshProMonitor.text = "Repeat"; _time = Time.time; } } } if (needToCheck) { if (stat == SeqStatus.waitingForInteraction) { seqPlayerSequence = ""; stat = SeqStatus.NotShown; seqBufforPtr = 0; } else { if (seqPlayerSequence.Equals(sequen)) { GameController.Instance.Particles.CreateParticle(Particles.NaszeParticle.ThreeHundredPoints, new Vector3(Buttons.transform.position.x, Buttons.transform.position.y + 0.5f, Buttons.transform.position.z)); AddPoints(300); CompleteEvent(); } else { if (!(sequen[seqPlayerSequence.Length - 1].Equals(seqPlayerSequence[seqPlayerSequence.Length - 1]))) { TextMeshProMonitor.text = "Wait"; GameController.Instance.Particles.CreateParticle(Particles.NaszeParticle.Small_Wrong, new Vector3(Buttons.transform.position.x, Buttons.transform.position.y + 0.5f, Buttons.transform.position.z)); seqPlayerSequence = ""; stat = SeqStatus.NotShown; canPlayerIteract(); seqBufforPtr = 0; progress = 0; } else { GameController.Instance.Particles.CreateParticle(Particles.NaszeParticle.Small_Good_Correct_Ok, new Vector3(Buttons.transform.position.x, Buttons.transform.position.y + 0.5f, Buttons.transform.position.z)); progress += 100 / sequen.Length; } } } needToCheck = false; } }