public void OnFinishLine() { m_moveSpeed = 0; m_animator.SetTrigger("Fall"); DustParticle1.Stop(); DustParticle2.Stop(); foreach (People item in CollectedPeoples) { item.m_animator.SetTrigger("Fall"); item.CloseDust(); } foreach (GameObject item in RopeParents) { item.SetActive(false); } }
IEnumerator ScaleSpeed(float start, float end, float time) { float lastTime = Time.realtimeSinceStartup; float timer = 0.0f; while (timer < time) { m_moveSpeed = Mathf.Lerp(start, end, timer / time); timer += (Time.realtimeSinceStartup - lastTime); lastTime = Time.realtimeSinceStartup; yield return(null); } m_moveSpeed = end; if (m_moveSpeed <= DefaultMoveSpeed / 4) { GameManager.Instance.BullAnimator.SetTrigger("Walk"); } if (m_moveSpeed <= DefaultMoveSpeed / 2 || currentPeopleCount == NeededPeopleCount) { foreach (GameObject item in RopeParents) { item.SetActive(false); } GameManager.Instance.BullAnimator.SetTrigger("Die"); m_animator.SetTrigger("Cheer1"); DustParticle1.Stop(); DustParticle2.Stop(); foreach (People item in CollectedPeoples) { item.CloseDust(); randm = Random.Range(1, 3); item.m_animator.SetTrigger("Cheer" + randm); } StartCoroutine(GameManager.Instance.WaitAndGameWin()); } }
void Update() { if (!GameManager.Instance.isGameStarted || GameManager.Instance.isGameOver) { return; } if (!DustParticle1.isPlaying) { DustParticle1.Play(); DustParticle2.Play(); } roseParticleTimer += Time.deltaTime; if (roseParticleTimer >= RPTimerRand) { roseParticleTimer = 0; RPTimerRand = Random.Range(3, 6); foreach (ParticleSystem item in RoseParticles) { item.Play(); SoundManager.Instance.playSound(SoundManager.GameSounds.Pop); } } World.transform.position += Vector3.forward * m_moveSpeed * Time.deltaTime; GameManager.Instance.UpdateLevelStateImage(); #if UNITY_EDITOR if (Input.GetMouseButton(0)) { if (GameManager.Instance.currentLevel == 1 && GameManager.Instance.tutorialCanvas.activeSelf) { GameManager.Instance.tutorialCanvas.SetActive(false); GameManager.Instance.tutorialCanvas2.SetActive(true); Destroy(GameManager.Instance.tutorialCanvas2, 3); } translation = new Vector3(0, Input.GetAxis("Mouse X"), 0) * Time.deltaTime * Xspeed; transform.Rotate(-translation); transform.localEulerAngles = new Vector3(0, Mathf.Clamp(transform.localEulerAngles.y, 90 - limit, 90 + limit), 0); translation2 = new Vector3(0, Input.GetAxis("Mouse X"), 0) * Time.deltaTime * (Xspeed / 2); SpawnPointRotater.transform.Rotate(-translation2); SpawnPointRotater.transform.localEulerAngles = new Vector3(0, Mathf.Clamp(SpawnPointRotater.transform.localEulerAngles.y, 90 - limit, 90 + limit), 0); } #elif UNITY_IOS || UNITY_ANDROID if (Input.touchCount > 0) { if (GameManager.Instance.currentLevel == 1 && GameManager.Instance.tutorialCanvas.activeSelf) { GameManager.Instance.tutorialCanvas.SetActive(false); GameManager.Instance.tutorialCanvas2.SetActive(true); Destroy(GameManager.Instance.tutorialCanvas2, 3); } touch = Input.GetTouch(0); if (touch.phase == TouchPhase.Moved) { isMovementReleased = false; transform.localEulerAngles = new Vector3(0, Mathf.Clamp(transform.localEulerAngles.y + touch.deltaPosition.x * 0.05f * Time.deltaTime * -Xspeed, 90 - limit, 90 + limit), 0); SpawnPointRotater.transform.localEulerAngles = new Vector3(0, Mathf.Clamp(SpawnPointRotater.transform.localEulerAngles.y + touch.deltaPosition.x * 0.05f * Time.deltaTime * (-Xspeed / 2), 90 - limit, 90 + limit), 0); } else if (touch.phase == TouchPhase.Ended) { isMovementReleased = true; } else if (touch.phase == TouchPhase.Began) { //save began touch 2d point firstPressPos = new Vector2(Input.mousePosition.x, Input.mousePosition.y); } } #endif }