IEnumerator EndProcess() { SignalManager <StopMoveSignal> .Instance.SendSignal(new StopMoveSignal(true)); int player = PlayerGroup.GetEntitiesArray()[0]; int end_trigger = EndGameTriggerGroup.GetEntitiesArray()[0]; FPSCmp fpsCmp = Storage.GetComponent <FPSCmp>(player); EndGameTriggerCmp triggerCmp = Storage.GetComponent <EndGameTriggerCmp>(end_trigger); fpsCmp.controller.enabled = false; triggerCmp.GameNameAnim.Play(); while (triggerCmp.GameNameAnim.isPlaying) { yield return(null); } triggerCmp.endGamePanelAnim.Play(); while (triggerCmp.endGamePanelAnim.isPlaying) { yield return(null); } Debug.Log("End"); yield return(null); }
void Jump(int entity) { FPSCmp fPSCmp = Storage.GetComponent <FPSCmp>(entity); CharacterController controller = fPSCmp.controller; if (controller.isGrounded && Input.GetKey(KeyCode.Space)) { fPSCmp.gravityData.current_vertical_velicity = fPSCmp.jump_force / 1000; } }
void MidlleCloneTriggerEnter(int ent) { if (Storage.GetComponent <PlayerCmp>(ent) != null) { FPSCmp Player = Storage.GetComponent <FPSCmp>(ent); Player.controller.enabled = false; Player.transform.position += new Vector3(56, 0, 0); Player.controller.enabled = true; } }
void ScreenDarkening() { //Debug.Log("ScreenDarkening"); EndCorridorDataCmp endData = Storage.GetComponent <EndCorridorDataCmp>(EndCorridorGroup.GetEntitiesArray()[0]); for (int i = 0; i < endData.meshRenderers.Count; i++) { endData.meshRenderers[i].enabled = true; } //endData.EndCorridor.SetActive(true); int player = PlayerGroup.GetEntitiesArray()[0]; FPSCmp fpsCmp = Storage.GetComponent <FPSCmp>(player); fpsCmp.controller.enabled = false; fpsCmp.transform.position = endData.SpawnPoint.transform.position; fpsCmp.controller.enabled = true; }
void Move(int entity) { FPSCmp fPSCmp = Storage.GetComponent <FPSCmp>(entity); MoveControls moveControls = fPSCmp.moveControls; float force = fPSCmp.move_force * Time.fixedDeltaTime * 100; Vector3 forceVector = Vector3.zero; if (Input.GetKey(moveControls.Forvard) || Input.GetKey(moveControls.Backward) && Input.GetKey(moveControls.Left) || Input.GetKey(moveControls.Rigt)) { force /= (float)Math.Sqrt(2); } if (Input.GetKey(moveControls.Forvard)) { forceVector.x = force; } else if (Input.GetKey(moveControls.Backward)) { forceVector.x = -force; } if (Input.GetKey(moveControls.Left)) { forceVector.z = force; } else if (Input.GetKey(moveControls.Rigt)) { forceVector.z = -force; } forceVector /= 1000; fPSCmp.is_moving = forceVector.magnitude > 0.01f; fPSCmp.controller.Move(fPSCmp.transform.TransformDirection(forceVector)); }
void Gravity(int entity) { FPSCmp fPSCmp = Storage.GetComponent <FPSCmp>(entity); CharacterController controller = fPSCmp.controller; fPSCmp.gravityData.current_vertical_velicity -= fPSCmp.gravityData.gravity * Time.fixedDeltaTime * 0.1f; if (Math.Abs(fPSCmp.gravityData.current_vertical_velicity) > 0.6f) { fPSCmp.gravityData.current_vertical_velicity = Math.Sign(fPSCmp.gravityData.current_vertical_velicity) * 0.6f; } if (fPSCmp.controller.isGrounded) { fPSCmp.gravityData.current_vertical_velicity = 0; } else { controller.Move(new Vector3(0, fPSCmp.gravityData.current_vertical_velicity, 0)); } }