Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- public class PlayerController : MonoBehaviour
- {
- // Configuration Parameters
- [Header("Player")]
- [SerializeField] float speed = 10f;
- [SerializeField] float jumpForce = 5f;
- [Header("Jump")]
- [SerializeField] float checkRadius = 0.2f;
- [SerializeField] LayerMask ground = default;
- // Local variables
- private float moveInput;
- private bool isGrounded;
- // Cashed References
- private Rigidbody2D rb;
- private SpriteRenderer spriteRenderer;
- private Animator animator;
- private Collider2D playerCollider;
- private void Start()
- {
- rb = GetComponent<Rigidbody2D>();
- spriteRenderer = gameObject.GetComponent<SpriteRenderer>();
- animator = gameObject.GetComponent<Animator>();
- playerCollider = gameObject.GetComponent<Collider2D>();
- }
- private void Update()
- {
- Attack();
- Jump();
- }
- private void Attack()
- {
- if (Input.GetKeyDown(KeyCode.Mouse0))
- {
- animator.SetTrigger("attack1");
- }
- }
- private void Jump()
- {
- isGrounded = Physics2D.OverlapCircle(playerCollider.bounds.min, checkRadius, ground);
- if (Input.GetKeyDown(KeyCode.Space) && isGrounded)
- {
- animator.SetTrigger("jump");
- rb.velocity = Vector2.up * jumpForce;
- }
- }
- private void FixedUpdate()
- {
- Move();
- }
- private void Move()
- {
- moveInput = Input.GetAxis("Horizontal");
- rb.velocity = new Vector2(moveInput * speed, rb.velocity.y);
- if (moveInput > 0f)
- {
- spriteRenderer.flipX = false;
- }
- else if (moveInput < 0f)
- {
- spriteRenderer.flipX = true;
- }
- if (moveInput != 0)
- {
- animator.SetBool("isWalking", true);
- }
- else
- {
- animator.SetBool("isWalking", false);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement