using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class NewBehaviourScript : MonoBehaviour
{
public float moveSpeed;
public float jumpHeight;
public KeyCode Spacebar = KeyCode.Space;
public KeyCode L = KeyCode.A;
public KeyCode R = KeyCode.D;
public Transform groundCheck;
public float groundCheckRadius = 0.2f;
public LayerMask whatIsGround;
private Animator anim;
private bool grounded;
// Start is called before the first frame update
void Start()
{
anim=GetComponent<Animator>();
}
// Update is called once per frame
void Update()
{
// Jump
if (Input.GetKeyDown(Spacebar) && grounded)
{
Jump();
}
// Move left
if (Input.GetKey(L))
{
Debug.Log("Moving Left");
GetComponent<Rigidbody2D>().velocity = new Vector2(-moveSpeed, GetComponent<Rigidbody2D>().velocity.y);
if (GetComponent<SpriteRenderer>() != null)
{
GetComponent<SpriteRenderer>().flipX = true;
}
}
// Move right
if (Input.GetKey(R))
{
Debug.Log("Moving right");
GetComponent<Rigidbody2D>().velocity = new Vector2(moveSpeed, GetComponent<Rigidbody2D>().velocity.y);
if (GetComponent<SpriteRenderer>() != null)
{
GetComponent<SpriteRenderer>().flipX = false;
}
}
anim.SetFloat("Speed",Mathf.Abs(GetComponent<Rigidbody2D>().velocity.x));
anim.SetFloat("Height", GetComponent<Rigidbody2D>().velocity.y);
anim.SetBool("Grounded", grounded);
}
void Jump()
{
GetComponent<Rigidbody2D>().velocity = new Vector2(GetComponent<Rigidbody2D>().velocity.x, jumpHeight);
}
void FixedUpdate()
{
grounded = Physics2D.OverlapCircle(groundCheck.position, groundCheckRadius, whatIsGround);
}
}