Having trouble with my attack animation code

Hi

I recently got into Unity Development and wanted to start off with a small 2D game to learn the engine. In this game the character has some sprite animations and one of these is the attack animation. I created the others with the help of this Unity tutorial

So I then imported my attack animation and added some code to get it to work. It did not work when I pressed my input key ‘C’ Here is my code and I have changed to bold the parts in which I have attempted to add the attack animation code.

using UnityEngine;
using System.Collections;

public class PlayerController : MonoBehaviour {

	public float maxSpeed = 10f;
	bool facingRight = true;

	Animator anim;

	**public bool attack = false;**
	bool grounded = false;
	public Transform groundCheck;
	float groundRadius = 0.2f;
	public LayerMask isGround;
	public float jumpForce = 700f;

	void Start () {

		anim = GetComponent<Animator> ();
	
	}

	void FixedUpdate () {

		grounded = Physics2D.OverlapCircle (groundCheck.position, groundRadius, isGround);
		anim.SetBool ("Ground", grounded);


		anim.SetFloat ("vSpeed", GetComponent<Rigidbody2D>().velocity.y);

		float move = Input.GetAxis ("Horizontal");

		anim.SetFloat ("speed", Mathf.Abs (move));

		GetComponent<Rigidbody2D>().velocity = new Vector2(move * maxSpeed,  GetComponent<Rigidbody2D>().velocity.y);

		if (move > 0 && !facingRight)
			Flip ();
		else if (move < 0 && facingRight)
			Flip ();
}

	void Update(){


		if (grounded && Input.GetKeyDown (KeyCode.Space)) {
			anim.SetBool("Ground", false);
			GetComponent<Rigidbody2D>().AddForce(new Vector2(0,jumpForce));

		**if (grounded && Input.GetKeyDown(KeyCode.C)){**
				**anim.SetBool("Attack", true);**
				**attack = true;**
			}
		}
	}

	void Flip(){
		facingRight = !facingRight;
		Vector3 theScale = transform.localScale;
		theScale.x *= -1;
		transform.localScale = theScale;
	}

}

After this I then went into my ‘Animator’ tab and created a boolean parameter called ‘Attack’ and then transitions to all other animations from and to attack with the conditions of attack is false to change from attack to a different state and attack is true to change from a state to attack.

If you need any more info or images of any kind I can provide it.

Thank you very much!

edit: realized you cant bold code text so my attack animation code has ** on either side

Ok, you need move this block of code outside of line 47 if statement:

if (grounded && Input.GetKeyDown(KeyCode.C))
    {
     anim.SetBool("Attack", true);
     attack = true;
    }

So your code need to be something like that:

void Update()
{
  if (grounded && Input.GetKeyDown (KeyCode.Space))
  {
    anim.SetBool("Ground", false);
    GetComponent<Rigidbody2D>().AddForce(new Vector2(0,jumpForce));
  }
  if (grounded && Input.GetKeyDown(KeyCode.C))
  {
    anim.SetBool("Attack", true);
    attack = true;
  }
}