void GameStart() { hero.GameStart(); ptPlayer.GameStart(); isPlay = true; cam.isForceCam = true; cam.SetOriginFollowSpeed(); uiObj.SetActive(true); startSeAudio.Play(); }
//로프 점핑 루틴 IEnumerator RopeJumpingRoutine(float _power) { preSpdLv = speedLevel; SpeedUp(); float _dis = 0f; float _startPos = this.transform.position.x; if (preSpdLv == 0) { _dis = 10f; } else if (preSpdLv == 1) { _dis = 16f; } else if (preSpdLv == 2) { _dis = 21f; } float _xTarget = 0f; float _yTarget = this.transform.position.y + 1f; if (isLeft) { _xTarget = this.transform.position.x - _dis;// - new Vector2(_dis, 0); } else { _xTarget = this.transform.position.x + _dis; } ropeTarget = new Vector2(_xTarget, _yTarget); bool yFinish = false; hState = HeroState.RopeFlying; this.gameObject.GetComponent <Rigidbody2D>().gravityScale = 0; this.transform.localEulerAngles = new Vector3(0, 0, 0); movable = false; cam.SetOriginZoomSizeSpeed(); cam.SetFollowSpeed(8f);//cam.followSpeed = 8f; while (Mathf.Abs(this.transform.position.x - _startPos) < _dis) { if (hState != HeroState.RopeFlying && hState != HeroState.RopeAttack) { break; } float _totalSpeed = (_dis - Mathf.Abs(this.transform.position.x - _startPos)) * Time.deltaTime * 3f; if (_totalSpeed > 1.0f) { _totalSpeed = 0.7f; } this.transform.position = Vector2.MoveTowards(this.transform.position, new Vector2(_xTarget, this.transform.position.y), _totalSpeed); //Debug.Log(this.transform.position.x); if (yFinish) { this.gameObject.GetComponent <Rigidbody2D>().gravityScale = 5; } else { this.transform.position = Vector2.MoveTowards(this.transform.position, new Vector2(this.transform.position.x, _yTarget), (((_yTarget - this.transform.position.y)) * 10f) * Time.deltaTime); } if (!yFinish && _yTarget - this.transform.position.y <= 0.01f) { yFinish = true; } yield return(null); } SetRopeCam(false); cam.SetOriginFollowSpeed();//cam.followSpeed = cam.originFollowSpeed; movable = true; this.gameObject.GetComponent <Rigidbody2D>().gravityScale = 8; }