public void HeadToBlinkEffect() { if (carState != CARSTATE.BIG_JUMP) { if (carState != CARSTATE.READY) { StartCoroutine(BlinkEffect()); } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } else if (carState != CARSTATE.BIG_JUMP_READY) { if (carState != CARSTATE.READY) { StartCoroutine(BlinkEffect()); } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } }
IEnumerator Jump_To_Run() { yield return(new WaitForSeconds(0.1f)); GetComponent <Rigidbody>().constraints = RigidbodyConstraints.None; carState = CARSTATE.RUN; }
IEnumerator ToBlink() { tracker.target = tracker.orignal_target; ai.m_Target = tracker.orignal_target; yield return(new WaitForSeconds(1.5f)); if (carState != CARSTATE.BIG_JUMP) { if (carState != CARSTATE.READY) { StartCoroutine(BlinkEffect()); } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } else if (carState != CARSTATE.BIG_JUMP_READY) { if (carState != CARSTATE.READY) { StartCoroutine(BlinkEffect()); } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } }
public IEnumerator BlinkEffect() { tracker.target = tracker.orignal_target; ai.m_Target = tracker.orignal_target; if (carState != CARSTATE.READY && CollCheck.GAMEGAME_ENDEND == false) { Debug.Log("여기여기"); if (carState != CARSTATE.BIG_JUMP) { if (Recovery_Fix == true) { Recovery_Fix = false; int count = 0; HP = MaxHp; while (count < 3) { childBody.SetActive(false); yield return(new WaitForSeconds(0.15f)); childBody.SetActive(true); yield return(new WaitForSeconds(0.15f)); count++; } respawnCar(); } } else if (carState != CARSTATE.BIG_JUMP_READY) { if (Recovery_Fix == true) { Recovery_Fix = false; int count = 0; HP = MaxHp; while (count < 3) { childBody.SetActive(false); yield return(new WaitForSeconds(0.15f)); childBody.SetActive(true); yield return(new WaitForSeconds(0.15f)); count++; } respawnCar(); } } } else if (carState == CARSTATE.READY && CollCheck.GAMEGAME_ENDEND == true) { carState = CARSTATE.READY; } }
private void MoveToPool() { // move it back to the pool. // Get the original position transform.position = m_ObjectPool.PoolPostition(gameObject); // Reset the Rotation m_CarDirection = OBJECTDIRECTION.MOVING_RIGHT; RotateCar(); // change the state to idel m_CarState = CARSTATE.IDEL; }
void respawnCar() { if (carState != CARSTATE.BIG_JUMP_READY) { transform.position = respawn.position + new Vector3(0.0f, -1.0f, -3.0f); transform.rotation = respawn.rotation; reverseTime = 0; car_body.GetComponent <BoxCollider>().material = Bounce; Recovery_Fix = true; GetComponent <Rigidbody>().constraints = RigidbodyConstraints.None; carState = CARSTATE.RUN; } }
// Update is called once per frame void Update() { if (m_CarState == CARSTATE.SPAWNING) { // add the int value of direction of travel to m_speed if (m_CarDirection == OBJECTDIRECTION.MOVING_LEFT && m_Speed > 0) { m_Speed = -1 * m_Speed; } else if (m_CarDirection == OBJECTDIRECTION.MOVING_DOWN && m_Speed > 0) { m_Speed = -1 * m_Speed; } else if (m_CarDirection == OBJECTDIRECTION.MOVING_UP && m_Speed < 0) { m_Speed = -1 * m_Speed; } else if (m_CarDirection == OBJECTDIRECTION.MOVING_RIGHT && m_Speed < 0) { m_Speed = -1 * m_Speed; } RotateCar(); m_CarState = CARSTATE.MOVING; if (gameObject.GetComponent <AutoPilot>() != null) { gameObject.GetComponent <AutoPilot>().SetSpeedLimit(m_Speed); } else { Debug.LogWarning("AutoPilot script not attatched to " + gameObject.name); } } else if (m_CarState == CARSTATE.MOVING) { //move the object MoveObject(m_Speed); } else if (m_CarState == CARSTATE.DESPAWNING) { // move it back to the pool. m_Speed = 0; MoveToPool(); } }
void BackForce_Fixer() { if (carState != CARSTATE.BIG_JUMP_READY) { if (BackForce_Fix > 6) { car.AccelControl = false; BackForce_Fix = 0; isBackForcing = false; carState = CARSTATE.RUN; } if (carState != CARSTATE.BIG_JUMP_READY && car.CurrentSpeed > 5.0f) { car.AccelControl = false; BackForce_Fix = 0; isBackForcing = false; carState = CARSTATE.RUN; } } }
void Reverse() { if (HP == 0) { HP = -1; car_body.GetComponent <BoxCollider>().material = null; gameObject.transform.position = gameObject.transform.position + new Vector3(0.0f, 2.0f, 0.0f); GetComponent <Rigidbody>().velocity = new Vector3(0, 0, 0); GetComponent <Transform>().localRotation = Quaternion.Euler(0.0f, 270.0f, -180.0f); GameObject H_Particle = Instantiate(HP_Zero_Effect) as GameObject; H_Particle.transform.localPosition = new Vector3(0.5f, -0.5f, 0.5f); H_Particle.transform.localRotation = Quaternion.Euler(0.0f, 0.0f, 0.0f); H_Particle.transform.parent = gameObject.transform; Destroy(H_Particle, 6.0f); if (carState != CARSTATE.READY) { carState = CARSTATE.RECOVERY; } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } if (isJumper == true) { Debug.Log("빅점프중리커버리3"); } RigidbodyConstraints_FreezeAll(); } }
IEnumerator ToBlink() { tracker.target = tracker.orignal_target; ai.m_Target = tracker.orignal_target; yield return new WaitForSeconds(1.5f); if (carState != CARSTATE.BIG_JUMP) { if (carState != CARSTATE.READY) { StartCoroutine(BlinkEffect()); } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } else if (carState != CARSTATE.BIG_JUMP_READY) { if (carState != CARSTATE.READY) { StartCoroutine(BlinkEffect()); } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } }
void endStunning() { isStunning = false; carState = CARSTATE.RUN; }
IEnumerator Jump_To_Run() { yield return new WaitForSeconds(0.1f); GetComponent<Rigidbody>().constraints = RigidbodyConstraints.None; carState = CARSTATE.RUN; }
void Update() { BackForce_Fixer(); Climbing(); HP_Timer = HP_Timer + Time.deltaTime; // if (isRanking_3th == true) { gameObject.GetComponent <Transform>().FindChild("3sT_Effect").gameObject.SetActive(true); } else if (isRanking_3th == false) { gameObject.GetComponent <Transform>().FindChild("3sT_Effect").gameObject.SetActive(false); } if (isRanking_4th == true) { gameObject.GetComponent <Transform>().FindChild("4sT_Effect").gameObject.SetActive(true); } else if (isRanking_4th == false) { gameObject.GetComponent <Transform>().FindChild("4sT_Effect").gameObject.SetActive(false); } // if (tracker.speed == 0 && carState == CARSTATE.BACKFORCE) { isBackForcing = false; if (carState != CARSTATE.BIG_JUMP) { if (carState != CARSTATE.READY) { StartCoroutine(BlinkEffect()); } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } else if (carState != CARSTATE.BIG_JUMP_READY) { if (carState != CARSTATE.READY) { StartCoroutine(BlinkEffect()); } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } } if (car.CurrentSpeed == 0 && carState == CARSTATE.BACKFORCE) { isBackForcing = false; if (carState != CARSTATE.READY) { StartCoroutine(ToBlink()); } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } if (HP_Timer > 1.0) { HP += Sec_Heal; HP_Timer = 0; } if (HP >= MaxHp) { HP = MaxHp; } if (HP == 0) { Reverse(); if (carState != CARSTATE.READY) { StartCoroutine(ToBlink()); } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } if (isBackForcing == true) { BackForce_Fix = BackForce_Fix + Time.deltaTime; } if (isbigJumpReady) { BigJump_Count = BigJump_Count + Time.deltaTime; } if (BigJump_Count > 2.5f) { isbigJumpReady = false; BigJump_Count = 0; isBigJump = true; carState = CARSTATE.BIG_JUMP; GetComponent <AudioSource>().clip = bigJumpClip; GetComponent <AudioSource>().Play(); } if (isBigJump) { carState = CARSTATE.BIG_JUMP; } if (carState == CARSTATE.CLIMBING) { Climbing_Count = Climbing_Count + Time.deltaTime; } if (Climbing_Count > 7) { Climbing_Count = 0; } if ((tracker.speed < 0.5 && carState == CARSTATE.RUN) || (tracker.speed < 0.5 && carState == CARSTATE.DETOUR) || (tracker.speed < 0.5 && carState == CARSTATE.WATER) || (tracker.speed < 0.5 && carState == CARSTATE.BIG_JUMP) || (tracker.speed < 0.5 && carState == CARSTATE.WATER_Sixty) || (tracker.speed < 0.5 && carState != CARSTATE.BACKFORCE) || (tracker.speed < 0.5 && carState != CARSTATE.BIG_JUMP_READY) || (tracker.speed < 0.5 && carState != CARSTATE.BIG_JUMP)) { if (carState != CARSTATE.BIG_JUMP && carState != CARSTATE.BIG_JUMP_READY) { if (carState != CARSTATE.BIG_JUMP) { if (carState != CARSTATE.READY) { carState = CARSTATE.RECOVERY; } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } else if (carState != CARSTATE.BIG_JUMP_READY) { if (carState != CARSTATE.READY) { carState = CARSTATE.RECOVERY; } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } } } if ((car.CurrentSpeed <= 0.1 && carState == CARSTATE.RUN) || (car.CurrentSpeed <= 0.1 && carState == CARSTATE.DETOUR) || (car.CurrentSpeed <= 0.1 && carState == CARSTATE.WATER) || (car.CurrentSpeed <= 0.1 && carState != CARSTATE.BIG_JUMP) || (car.CurrentSpeed <= 0.1 && carState != CARSTATE.BIG_JUMP_READY) || (car.CurrentSpeed <= 0.1 && carState == CARSTATE.WATER_Sixty)) { if (carState != CARSTATE.RECOVERY) { isBackForcing = true; if (BackForce_Fix >= 3.0 && carState != CARSTATE.RECOVERY) { if (carState != CARSTATE.RECOVERY) { if (carState != CARSTATE.BIG_JUMP || carState != CARSTATE.BIG_JUMP_READY) { GetComponent <Rigidbody>().constraints = RigidbodyConstraints.None; carState = CARSTATE.BACKFORCE; } } } } } if (carState == CARSTATE.RECOVERY) { reverseTime = reverseTime + Time.deltaTime; } if (reverseTime >= 3.0f) { boolRecovery = true; } switch (carState) { case CARSTATE.REVERSE: break; case CARSTATE.READY: car.m_Topspeed = 0; GetComponent <Rigidbody>().constraints = RigidbodyConstraints.FreezeAll; break; case CARSTATE.RUN: if (carState != CARSTATE.RECOVERY) { boolRecovery = false; isClimbingRotate = false; car.m_Topspeed = maxSpeed; reverseTime = 0; Climbing_Count = 0; } break; case CARSTATE.WATER: car.m_Topspeed = maxSpeed / 2; break; case CARSTATE.WATER_Sixty: car.m_Topspeed = maxSpeed * 0.4f; break; case CARSTATE.CLIMBING: CanClimbing = true; GetComponent <Rigidbody>().AddForce(transform.TransformVector(0.0f, 0.5f, 1.0f) * 10000); GetComponent <Rigidbody>().constraints = RigidbodyConstraints.FreezeRotation | RigidbodyConstraints.FreezePositionX | RigidbodyConstraints.FreezePositionZ; if (Climbing_Count > 7) { carState = CARSTATE.RECOVERY; Climbing_Count = 0; } break; case CARSTATE.RECOVERY: if (CollCheck.Game_End == false) { if (carState != CARSTATE.READY) { tracker.target = tracker.orignal_target; ai.m_Target = tracker.orignal_target; if (carState != CARSTATE.BIG_JUMP || carState != CARSTATE.BIG_JUMP_READY) { if (boolRecovery) { boolRecovery = false; if (carState != CARSTATE.BIG_JUMP) { if (carState != CARSTATE.READY) { StartCoroutine(BlinkEffect()); } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } else if (carState != CARSTATE.BIG_JUMP_READY) { if (carState != CARSTATE.READY) { StartCoroutine(BlinkEffect()); } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } } } else if (carState == CARSTATE.BIG_JUMP) { carState = CARSTATE.BIG_JUMP; } else if (carState == CARSTATE.BIG_JUMP_READY) { carState = CARSTATE.BIG_JUMP_READY; } } } else if (CollCheck.Game_End == true) { carState = CARSTATE.READY; } break; case CARSTATE.STUN: if (!isStunning) { StartCoroutine(Stunning()); } break; case CARSTATE.DETOUR: break; case CARSTATE.BACKFORCE: if (carState != CARSTATE.BIG_JUMP) { if (carState != CARSTATE.READY) { StartCoroutine(BlinkEffect()); } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } else if (carState != CARSTATE.BIG_JUMP_READY) { if (carState != CARSTATE.READY) { StartCoroutine(BlinkEffect()); } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } // car.AccelControl = true; break; case CARSTATE.BIG_JUMP_READY: reverseTime = 0; isbigJumpReady = true; car.GetComponent <Transform>().localRotation = Big_Jump_Target.GetComponent <Transform>().rotation; GetComponent <Rigidbody>().constraints = RigidbodyConstraints.FreezeAll; GetComponent <Rigidbody>().velocity = new Vector3(0, 0, 0); GameObject BJR_Particle1 = Instantiate(Big_Jumping_Ready_Effect1) as GameObject; BJR_Particle1.transform.position = gameObject.transform.position; Destroy(BJR_Particle1, 0.5f); GameObject BJR_Particle2 = Instantiate(Big_Jumping_Ready_Effect2) as GameObject; BJR_Particle2.transform.position = gameObject.transform.position; Destroy(BJR_Particle2, 0.5f); break; case CARSTATE.BIG_JUMP: //reverseTime = 0; GameObject BJ_Particle = Instantiate(Big_Jumping_Effect) as GameObject; BJ_Particle.transform.position = gameObject.transform.position; BJ_Particle.transform.parent = gameObject.transform; Destroy(BJ_Particle, 1.0f); car.m_Topspeed = maxSpeed; if (isBigJump) { BIG_Jump(); AddForceCount++; if (AddForceCount > 20) { isBigJump = false; AddForceCount = 0; //reverseTime = 0; } } break; case CARSTATE.SMALL_JUMP: GetComponent <Rigidbody>().velocity = new Vector3(0, 0, 0); carState = CARSTATE.RUN; break; case CARSTATE.JUMP: GetComponent <Rigidbody>().velocity = new Vector3(0, 0, 0); GameObject J_Particle = Instantiate(Jumping_Effect) as GameObject; J_Particle.transform.position = gameObject.transform.position; Destroy(J_Particle, 0.5f); GetComponent <Rigidbody>().constraints = RigidbodyConstraints.FreezeRotationX | RigidbodyConstraints.FreezeRotationZ; //GetComponent<Rigidbody>().constraints = ; StartCoroutine(Jump_To_Run()); break; } }
public IEnumerator BlinkEffect() { tracker.target = tracker.orignal_target; ai.m_Target = tracker.orignal_target; if (carState != CARSTATE.READY && CollCheck.GAMEGAME_ENDEND == false) { Debug.Log("여기여기"); if (carState != CARSTATE.BIG_JUMP) { if (Recovery_Fix == true) { Recovery_Fix = false; int count = 0; HP = MaxHp; while (count < 3) { childBody.SetActive(false); yield return new WaitForSeconds(0.15f); childBody.SetActive(true); yield return new WaitForSeconds(0.15f); count++; } respawnCar(); } } else if (carState != CARSTATE.BIG_JUMP_READY) { if (Recovery_Fix == true) { Recovery_Fix = false; int count = 0; HP = MaxHp; while (count < 3) { childBody.SetActive(false); yield return new WaitForSeconds(0.15f); childBody.SetActive(true); yield return new WaitForSeconds(0.15f); count++; } respawnCar(); } } } else if (carState == CARSTATE.READY && CollCheck.GAMEGAME_ENDEND == true) { carState = CARSTATE.READY; } }
void respawnCar() { if (carState != CARSTATE.BIG_JUMP_READY) { transform.position = respawn.position + new Vector3(0.0f, -1.0f, -3.0f); transform.rotation = respawn.rotation; reverseTime = 0; car_body.GetComponent<BoxCollider>().material = Bounce; Recovery_Fix = true; GetComponent<Rigidbody>().constraints = RigidbodyConstraints.None; carState = CARSTATE.RUN; } }
void Reverse() { if (HP == 0) { HP = -1; car_body.GetComponent<BoxCollider>().material = null; gameObject.transform.position = gameObject.transform.position + new Vector3(0.0f, 2.0f, 0.0f); GetComponent<Rigidbody>().velocity = new Vector3(0, 0, 0); GetComponent<Transform>().localRotation = Quaternion.Euler(0.0f, 270.0f, -180.0f); GameObject H_Particle = Instantiate(HP_Zero_Effect) as GameObject; H_Particle.transform.localPosition = new Vector3(0.5f, -0.5f, 0.5f) ; H_Particle.transform.localRotation = Quaternion.Euler(0.0f, 0.0f, 0.0f); H_Particle.transform.parent = gameObject.transform; Destroy(H_Particle, 6.0f); if (carState != CARSTATE.READY) { carState = CARSTATE.RECOVERY; } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } if (isJumper == true) { Debug.Log("빅점프중리커버리3"); } RigidbodyConstraints_FreezeAll(); } }
void Update() { BackForce_Fixer(); Climbing(); HP_Timer = HP_Timer + Time.deltaTime; // if (isRanking_3th == true) { gameObject.GetComponent<Transform>().FindChild("3sT_Effect").gameObject.SetActive(true); } else if (isRanking_3th == false) { gameObject.GetComponent<Transform>().FindChild("3sT_Effect").gameObject.SetActive(false); } if (isRanking_4th == true) { gameObject.GetComponent<Transform>().FindChild("4sT_Effect").gameObject.SetActive(true); } else if (isRanking_4th == false) { gameObject.GetComponent<Transform>().FindChild("4sT_Effect").gameObject.SetActive(false); } // if (tracker.speed == 0 && carState == CARSTATE.BACKFORCE) { isBackForcing = false; if (carState != CARSTATE.BIG_JUMP) { if (carState != CARSTATE.READY) { StartCoroutine(BlinkEffect()); } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } else if (carState != CARSTATE.BIG_JUMP_READY) { if (carState != CARSTATE.READY) { StartCoroutine(BlinkEffect()); } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } } if (car.CurrentSpeed == 0 && carState == CARSTATE.BACKFORCE) { isBackForcing = false; if (carState != CARSTATE.READY) { StartCoroutine(ToBlink()); } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } if (HP_Timer > 1.0) { HP += Sec_Heal; HP_Timer = 0; } if (HP >= MaxHp) { HP = MaxHp; } if (HP == 0) { Reverse(); if (carState != CARSTATE.READY) { StartCoroutine(ToBlink()); } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } if (isBackForcing == true) { BackForce_Fix = BackForce_Fix + Time.deltaTime; } if (isbigJumpReady) { BigJump_Count = BigJump_Count + Time.deltaTime; } if (BigJump_Count > 2.5f) { isbigJumpReady = false; BigJump_Count = 0; isBigJump = true; carState = CARSTATE.BIG_JUMP; GetComponent<AudioSource>().clip = bigJumpClip; GetComponent<AudioSource>().Play(); } if (isBigJump) { carState = CARSTATE.BIG_JUMP; } if (carState == CARSTATE.CLIMBING) { Climbing_Count = Climbing_Count + Time.deltaTime; } if (Climbing_Count > 7) { Climbing_Count = 0; } if ((tracker.speed < 0.5 && carState == CARSTATE.RUN) || (tracker.speed < 0.5 && carState == CARSTATE.DETOUR) || (tracker.speed < 0.5 && carState == CARSTATE.WATER) || (tracker.speed < 0.5 && carState == CARSTATE.BIG_JUMP) || (tracker.speed < 0.5 && carState == CARSTATE.WATER_Sixty) || (tracker.speed < 0.5 && carState != CARSTATE.BACKFORCE) || (tracker.speed < 0.5 && carState != CARSTATE.BIG_JUMP_READY) || (tracker.speed < 0.5 && carState != CARSTATE.BIG_JUMP)) { if (carState != CARSTATE.BIG_JUMP && carState != CARSTATE.BIG_JUMP_READY) { if (carState != CARSTATE.BIG_JUMP) { if (carState != CARSTATE.READY) { carState = CARSTATE.RECOVERY; } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } else if (carState != CARSTATE.BIG_JUMP_READY) { if (carState != CARSTATE.READY) { carState = CARSTATE.RECOVERY; } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } } } if ((car.CurrentSpeed <= 0.1 && carState == CARSTATE.RUN) || (car.CurrentSpeed <= 0.1 && carState == CARSTATE.DETOUR) || (car.CurrentSpeed <= 0.1 && carState == CARSTATE.WATER) || (car.CurrentSpeed <= 0.1 && carState != CARSTATE.BIG_JUMP) || (car.CurrentSpeed <= 0.1 && carState != CARSTATE.BIG_JUMP_READY) || (car.CurrentSpeed <= 0.1 && carState == CARSTATE.WATER_Sixty)) { if (carState != CARSTATE.RECOVERY) { isBackForcing = true; if (BackForce_Fix >= 3.0 && carState != CARSTATE.RECOVERY) { if (carState != CARSTATE.RECOVERY) { if (carState != CARSTATE.BIG_JUMP || carState != CARSTATE.BIG_JUMP_READY) { GetComponent<Rigidbody>().constraints = RigidbodyConstraints.None; carState = CARSTATE.BACKFORCE; } } } } } if (carState == CARSTATE.RECOVERY) { reverseTime = reverseTime + Time.deltaTime; } if (reverseTime >= 3.0f) { boolRecovery = true; } switch (carState) { case CARSTATE.REVERSE: break; case CARSTATE.READY: car.m_Topspeed = 0; GetComponent<Rigidbody>().constraints = RigidbodyConstraints.FreezeAll; break; case CARSTATE.RUN: if (carState != CARSTATE.RECOVERY) { boolRecovery = false; isClimbingRotate = false; car.m_Topspeed = maxSpeed; reverseTime = 0; Climbing_Count = 0; } break; case CARSTATE.WATER: car.m_Topspeed = maxSpeed / 2; break; case CARSTATE.WATER_Sixty: car.m_Topspeed = maxSpeed * 0.4f; break; case CARSTATE.CLIMBING: CanClimbing = true; GetComponent<Rigidbody>().AddForce(transform.TransformVector(0.0f, 0.5f, 1.0f) * 10000); GetComponent<Rigidbody>().constraints = RigidbodyConstraints.FreezeRotation | RigidbodyConstraints.FreezePositionX | RigidbodyConstraints.FreezePositionZ; if (Climbing_Count > 7) { carState = CARSTATE.RECOVERY; Climbing_Count = 0; } break; case CARSTATE.RECOVERY: if (CollCheck.Game_End == false) { if (carState != CARSTATE.READY) { tracker.target = tracker.orignal_target; ai.m_Target = tracker.orignal_target; if (carState != CARSTATE.BIG_JUMP || carState != CARSTATE.BIG_JUMP_READY) { if (boolRecovery) { boolRecovery = false; if (carState != CARSTATE.BIG_JUMP) { if (carState != CARSTATE.READY) { StartCoroutine(BlinkEffect()); } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } else if (carState != CARSTATE.BIG_JUMP_READY) { if (carState != CARSTATE.READY) { StartCoroutine(BlinkEffect()); } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } } } else if (carState == CARSTATE.BIG_JUMP) { carState = CARSTATE.BIG_JUMP; } else if (carState == CARSTATE.BIG_JUMP_READY) { carState = CARSTATE.BIG_JUMP_READY; } } } else if (CollCheck.Game_End == true) { carState = CARSTATE.READY; } break; case CARSTATE.STUN: if (!isStunning) { StartCoroutine(Stunning()); } break; case CARSTATE.DETOUR: break; case CARSTATE.BACKFORCE: if (carState != CARSTATE.BIG_JUMP) { if (carState != CARSTATE.READY) { StartCoroutine(BlinkEffect()); } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } else if (carState != CARSTATE.BIG_JUMP_READY) { if (carState != CARSTATE.READY) { StartCoroutine(BlinkEffect()); } else if (carState == CARSTATE.READY) { carState = CARSTATE.READY; } } // car.AccelControl = true; break; case CARSTATE.BIG_JUMP_READY: reverseTime = 0; isbigJumpReady = true; car.GetComponent<Transform>().localRotation = Big_Jump_Target.GetComponent<Transform>().rotation; GetComponent<Rigidbody>().constraints = RigidbodyConstraints.FreezeAll; GetComponent<Rigidbody>().velocity = new Vector3(0, 0, 0); GameObject BJR_Particle1 = Instantiate(Big_Jumping_Ready_Effect1) as GameObject; BJR_Particle1.transform.position = gameObject.transform.position; Destroy(BJR_Particle1, 0.5f); GameObject BJR_Particle2 = Instantiate(Big_Jumping_Ready_Effect2) as GameObject; BJR_Particle2.transform.position = gameObject.transform.position; Destroy(BJR_Particle2, 0.5f); break; case CARSTATE.BIG_JUMP: //reverseTime = 0; GameObject BJ_Particle = Instantiate(Big_Jumping_Effect) as GameObject; BJ_Particle.transform.position = gameObject.transform.position; BJ_Particle.transform.parent = gameObject.transform; Destroy(BJ_Particle, 1.0f); car.m_Topspeed = maxSpeed; if (isBigJump) { BIG_Jump(); AddForceCount++; if(AddForceCount>20) { isBigJump = false; AddForceCount = 0; //reverseTime = 0; } } break; case CARSTATE.SMALL_JUMP: GetComponent<Rigidbody>().velocity = new Vector3(0, 0, 0); carState = CARSTATE.RUN; break; case CARSTATE.JUMP: GetComponent<Rigidbody>().velocity = new Vector3(0, 0, 0); GameObject J_Particle = Instantiate(Jumping_Effect) as GameObject; J_Particle.transform.position = gameObject.transform.position; Destroy(J_Particle, 0.5f); GetComponent<Rigidbody>().constraints = RigidbodyConstraints.FreezeRotationX | RigidbodyConstraints.FreezeRotationZ; //GetComponent<Rigidbody>().constraints = ; StartCoroutine(Jump_To_Run()); break; } }
internal void SetState(CARSTATE state) { m_CarState = state; }