public override ControllState handleInput(BThirdPerson controller, CharacterStats stats) { Vector3 mousePoint = Vector3.zero; stats.healthRegenerationRate = 0f; stats.enduranceRegenerationRate = 0f; if(controller.stateTime < 0.1){ controller.controller.slotRightHand.GetComponent<OWeapon>().enable(); shot = false; Vector2 inputVector = new Vector2(Input.GetAxis("Horizontal"),Input.GetAxis("Vertical")); Vector3 inputVectorTransformed = new Vector3(inputVector.x,0,-inputVector.y); Vector3 lookTarget = controller.position + (ControllerCamera.hingeUp.transform.rotation*inputVectorTransformed); controller.turn(lookTarget); } if(Input.GetButtonDown("attack") && stats.reduceEndurance(7) && !shot){ shot = true; } if(controller.stateTime > 0.22f){ if(shot){ return ControllerKnight._KnightATTACKB; } else{ controller.controller.slotRightHand.GetComponent<OWeapon>().disable(); return ControllerKnight._KnightIDLE; } } return this; }
public override ControllState handleInput(BThirdPerson controller, CharacterStats stats) { controller.controller.BAudioPlayer.Loop("idle_breath_b"); stats.healthRegenerationRate = -0.2f; stats.enduranceRegenerationRate = 40f; if(stats.healthFactor <= 0){ return ControllerKnight._KnightDIE; } else if(Input.GetButtonDown("attack") && stats.reduceEndurance(35) && controller.stateTime > 0.2f){ return ControllerKnight._KnightATTACK; } else if(Mathf.Abs(Input.GetAxis("Horizontal")) > 0.5f || Mathf.Abs(Input.GetAxis("Vertical")) > 0.5f){ return ControllerKnight._KnightRUN; } if(controller.isStill){ return ControllerKnight._KnightIDLE; } return this; }
public override ControllState handleInput(BThirdPerson controller, CharacterStats stats) { Vector2 inputVector = new Vector2(Input.GetAxis("Horizontal"),Input.GetAxis("Vertical")); Vector3 inputVectorTransformed = new Vector3(inputVector.x,0,-inputVector.y); Vector3 lookTarget = controller.position + (ControllerCamera.hingeUp.transform.rotation*inputVectorTransformed); Debug.Log(inputVector.sqrMagnitude); controller.controller.BAudioPlayer.Loop("run_breath_a"); stats.healthRegenerationRate = -0.1f; stats.enduranceRegenerationRate = 5f; if(Input.GetButtonDown("attack") && stats.reduceEndurance(35)){ return ControllerKnight._KnightATTACK; } if(stats.healthFactor <= 0){ return ControllerKnight._KnightDIE; } if(inputVector.sqrMagnitude < 0.5f && controller.stateTime > 0.2f){ return ControllerKnight._KnightSLIDE; } controller.run(0.07f); controller.turn(lookTarget); return ControllerKnight._KnightRUN; return this; }
public override ControllState handleInput(BThirdPerson controller, CharacterStats stats) { Shader.SetGlobalFloat("_map_fade", Mathf.Clamp01(controller.stateTime * 5)); Shader.SetGlobalFloat("trailDust", Mathf.Clamp01(1 - controller.stateTime * 2.5f)); stats.healthRegenerationRate = 5f; stats.enduranceRegenerationRate = 50f; controller.controller.BAudioPlayer.Loop("idle_breath_b"); if(stats.healthFactor <= 0){ return ControllerKnight._KnightDIE; } else if(Input.GetButtonDown("attack") && stats.reduceEndurance(35) && controller.stateTime > 0.2f){ return ControllerKnight._KnightATTACK; } else if(Input.GetButtonDown("open_map") && controller.stateTime > 0.7f){ } else if(Mathf.Abs(Input.GetAxis("Horizontal")) > 0 || Mathf.Abs(Input.GetAxis("Vertical")) > 0){ return ControllerKnight._KnightRUN; } return this; }