Advertisement
Guest User

Player Controller Script

a guest
Jan 24th, 2020
275
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.06 KB | None | 0 0
  1. using System;
  2. using System.Collections;
  3. using System.Collections.Generic;
  4. using UnityEngine;
  5.  
  6. public class PlayerController : MonoBehaviour
  7. {
  8.     // Configuration Parameters
  9.     [Header("Player")]
  10.     [SerializeField] float speed = 10f;
  11.     [SerializeField] float jumpForce = 5f;
  12.  
  13.     [Header("Jump")]
  14.     [SerializeField] float checkRadius = 0.2f;
  15.     [SerializeField] LayerMask ground = default;
  16.  
  17.     // Local variables
  18.     private float moveInput;
  19.     private bool isGrounded;
  20.  
  21.     // Cashed References
  22.     private Rigidbody2D rb;
  23.     private SpriteRenderer spriteRenderer;
  24.     private Animator animator;
  25.     private Collider2D playerCollider;
  26.  
  27.     private void Start()
  28.     {
  29.         rb = GetComponent<Rigidbody2D>();
  30.         spriteRenderer = gameObject.GetComponent<SpriteRenderer>();
  31.         animator = gameObject.GetComponent<Animator>();
  32.         playerCollider = gameObject.GetComponent<Collider2D>();
  33.     }
  34.  
  35.  
  36.     private void Update()
  37.     {
  38.         Attack();
  39.         Jump();
  40.     }
  41.  
  42.     private void Attack()
  43.     {
  44.         if (Input.GetKeyDown(KeyCode.Mouse0))
  45.         {
  46.             animator.SetTrigger("attack1");
  47.         }
  48.     }
  49.  
  50.  
  51.     private void Jump()
  52.     {
  53.         isGrounded = Physics2D.OverlapCircle(playerCollider.bounds.min, checkRadius, ground);
  54.         if (Input.GetKeyDown(KeyCode.Space) && isGrounded)
  55.         {
  56.             animator.SetTrigger("jump");
  57.             rb.velocity = Vector2.up * jumpForce;
  58.         }
  59.     }
  60.  
  61.  
  62.     private void FixedUpdate()
  63.     {
  64.         Move();
  65.     }
  66.  
  67.  
  68.     private void Move()
  69.     {
  70.         moveInput = Input.GetAxis("Horizontal");
  71.         rb.velocity = new Vector2(moveInput * speed, rb.velocity.y);
  72.  
  73.         if (moveInput > 0f)
  74.         {
  75.             spriteRenderer.flipX = false;
  76.         }
  77.         else if (moveInput < 0f)
  78.         {
  79.             spriteRenderer.flipX = true;
  80.         }
  81.  
  82.         if (moveInput != 0)
  83.         {
  84.             animator.SetBool("isWalking", true);
  85.         }
  86.         else
  87.         {
  88.             animator.SetBool("isWalking", false);
  89.         }
  90.     }
  91. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement