-Modified mountain (may need more changes later)

-Added full controller support for all abillities that will be in the game
(grapple is currently set to x)
This commit is contained in:
Evan Nydahl
2021-12-01 15:38:24 -06:00
parent 02410a642f
commit 20db245902
20 changed files with 434 additions and 606 deletions

View File

@@ -34,7 +34,8 @@ public class dGrapplingHook : NetworkBehaviour
{
//if (!IsLocalPlayer) { return; }
if (Input.GetKeyDown(KeyCode.E)) //If grapple button is hit
//if E or left face gamepad button is pressed is slightly pressed
if (Input.GetKeyDown(KeyCode.E) || Input.GetKeyDown(KeyCode.JoystickButton2)) //If grapple button is hit
{
if (!isGrappled) //If we are not grappling
{
@@ -60,7 +61,8 @@ public class dGrapplingHook : NetworkBehaviour
{
Debug.DrawRay(gameObject.transform.position, (hookPoint.transform.position - gameObject.transform.position)); //Visual of line
if (Input.GetKey(KeyCode.LeftShift)) //Extend hook
//if left shift or left bumper held down
if (Input.GetKey(KeyCode.LeftShift) || Input.GetKey(KeyCode.JoystickButton4)) //Extend hook
{
ropeLength += climbRate * Time.deltaTime;
if (ropeLength > maxGrappleDistance)
@@ -69,7 +71,7 @@ public class dGrapplingHook : NetworkBehaviour
}
//Debug.Log(ropeLength.ToString());
}
if (Input.GetKey(KeyCode.RightShift)) // Retract Hook
if (Input.GetKey(KeyCode.RightShift) || Input.GetKey(KeyCode.JoystickButton5)) // Retract Hook
{
ropeLength -= climbRate * Time.deltaTime;
if (ropeLength < 5)

View File

@@ -30,7 +30,8 @@ public class dKickController : NetworkBehaviour
void Kick(){
//Note: when we merge this into PlayerMovement, we may want to change isgrounded to our
//custom is grounded
if (Input.GetKeyDown(KeyCode.F) && isKicking == false && characterController.isGrounded == false)
//If F is pressed or gamepad right trigger is pulled
if ((Input.GetKeyDown(KeyCode.F) || Input.GetAxis("Kick") != 0) && isKicking == false && characterController.isGrounded == false)
{
Debug.Log("dive");
// if kicking in air, kick until grounded (maybe add some foward momentum if needeD)
@@ -39,13 +40,14 @@ public class dKickController : NetworkBehaviour
leg.SetActive(true);
}
//otherwise do ground kick for .3 seconds
else if (Input.GetKeyDown(KeyCode.F) && isKicking == false){
else if ((Input.GetKeyDown(KeyCode.F) || Input.GetAxis("Kick") != 0) && isKicking == false){
Debug.Log("kick");
StartCoroutine(Kicking(.3f));
}
//once dive kick touches ground, set back to normal state
if(characterController.isGrounded == true && isDiveKicking == true){
if (characterController.isGrounded == true && isDiveKicking == true)
{
isDiveKicking = false;
isKicking = false;
leg.SetActive(false);

View File

@@ -258,7 +258,7 @@ public class dPlayerMovement : NetworkBehaviour
//Jump Function
private void Jump()
{
//If space is pressed apply an upwards force to the player
//If space/south gamepad button is pressed apply an upwards force to the player
if (Input.GetAxis("Jump") != 0 && !jumpPressed && curJumpNum + 1 < pStats.JumpNum && !isSliding)
{
AddImpact(transform.up, pStats.JumpPow);
@@ -273,7 +273,7 @@ public class dPlayerMovement : NetworkBehaviour
curJumpNum = 0;
}
//If space isn't being pressed then jump is false
//If space/south face gamepad button isn't being pressed then jump is false
if (Input.GetAxis("Jump") == 0) jumpPressed = false;
}
@@ -304,16 +304,30 @@ public class dPlayerMovement : NetworkBehaviour
//Camera and Player Rotation
private void Rotation()
{
Vector3 lastCamPos = new Vector3(0,0,0);
Vector3 rotOffset = transform.localEulerAngles;
if(moveController.enabled){
transform.parent.Rotate(Vector3.up * sensitivity * Time.deltaTime * Input.GetAxis("Mouse X"));
//if input is received from Mouse X
if (Input.GetAxis("Mouse X") != 0)
{
transform.parent.Rotate(Vector3.up * sensitivity * Time.deltaTime * Input.GetAxis("Mouse X"));
}
//if input is received from right analog stick (horizontal)
else if (Input.GetAxis("HorizontalCam") != 0)
{
transform.parent.Rotate(Vector3.up * sensitivity * Time.deltaTime * Input.GetAxis("HorizontalCam"));
}
camRotation.x -= Input.GetAxis("Mouse Y") * sensitivity * Time.deltaTime;
camRotation.x = Mathf.Clamp(camRotation.x, minAngle, maxAngle);
cam.transform.localEulerAngles = camRotation;
//if input is if input is received from Mouse Y
if (Input.GetAxis("Mouse Y") != 0)
{
camRotation.x -= Input.GetAxis("Mouse Y") * sensitivity * Time.deltaTime;
camRotation.x = Mathf.Clamp(camRotation.x, minAngle, maxAngle);
cam.transform.localEulerAngles = camRotation;
}
//if input is received from right analog stick (vertical)
else if (Input.GetAxis("VerticalTurn") != 0)
{
camRotation.x -= Input.GetAxis("VerticalTurn") * sensitivity * Time.deltaTime;
camRotation.x = Mathf.Clamp(camRotation.x, minAngle, maxAngle);
cam.transform.localEulerAngles = camRotation;
}
}
@@ -431,7 +445,8 @@ public class dPlayerMovement : NetworkBehaviour
//Slide Function
private void Slide(){
if (Input.GetKey(KeyCode.Q)){
//if the q button or the east face button on gamepad is held down
if (Input.GetKey(KeyCode.JoystickButton1) || Input.GetKey(KeyCode.Q)) {
qDown = true;
if (isSliding == false){
originalTraction = pStats.Traction;