Advertisement
Guest User

PlayerMovement Script v3

a guest
Jun 9th, 2019
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.86 KB | None | 0 0
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4.  
  5. public class PlayerMovement : MonoBehaviour
  6. {
  7.     public CharacterController controller;
  8.     public Animator animator;
  9.     public CapsuleCollider2D basicAttackCollider;
  10.  
  11.     public string axisID, jumpID, crouchID, basicAttackID;
  12.  
  13.     public float runSpeed = 45f;
  14.  
  15.     float horizontalMove = 0f;
  16.     bool jump = false, crouch = false, basicAttack = false;
  17.  
  18.     private void Awake()
  19.     {
  20.         basicAttackCollider.gameObject.SetActive(false);
  21.     }
  22.  
  23.     private void Update()
  24.     {
  25.         horizontalMove = Input.GetAxisRaw(axisID) * runSpeed;
  26.  
  27.         animator.SetFloat("Speed", Mathf.Abs(horizontalMove));
  28.  
  29.         if (Input.GetButtonDown(jumpID))
  30.         {
  31.             jump = true;
  32.             animator.SetBool("IsJumping", true);
  33.         }
  34.  
  35.         if (Input.GetButton(crouchID))
  36.         {
  37.             crouch = true;
  38.         }
  39.         else if (Input.GetButtonUp(crouchID))
  40.         {
  41.             crouch = false;
  42.         }
  43.  
  44.         if (Input.GetButtonDown(basicAttackID) && !basicAttack && !animator.GetBool("IsJumping"))
  45.         {
  46.             basicAttack = true;
  47.             basicAttackCollider.gameObject.SetActive(true);
  48.             animator.SetBool("IsBasicAttacking", basicAttack);
  49.         }
  50.     }
  51.  
  52.     private void FixedUpdate()
  53.     {
  54.         controller.Move(horizontalMove * Time.fixedDeltaTime, crouch, jump);
  55.         jump = false;
  56.     }
  57.  
  58.     public void OnLanding()
  59.     {
  60.         animator.SetBool("IsJumping", false);
  61.     }
  62.  
  63.     public void OnCrouching(bool isCrouching)
  64.     {
  65.         animator.SetBool("IsCrouching", isCrouching);
  66.     }
  67.  
  68.     private void Event_BasicAttackDone()
  69.     {
  70.         basicAttack = false;
  71.         basicAttackCollider.gameObject.SetActive(false);
  72.         animator.SetBool("IsBasicAttacking", basicAttack);
  73.     }
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement