Cannot implicitly convert type `bool' to `float'

using UnityEngine;
using System.Collections;

public class CharController : MonoBehaviour 
	public float maxSpeed = 10f;
	bool facingRight = true;

	bool grounded = false;
	public Transform groundCheck;
	float groundRadius = 0.2f;
	public LayerMask whatIsGround;
	public float jumpForce = 700f;

	void Start ()

	void FixedUpdate ()
		grounded = Physics2D.OverlapCircle(groundCheck.position, groundRadius, whatIsGround);

		float move = Input.GetMouseButtonDown(0);

		rigidbody2D.velocity = new Vector2 (move * maxSpeed, rigidbody2D.velocity.y);

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


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

	void Update () 
		if(grounded && Input.GetKeyDown(KeyCode.Space))
			rigidbody2D.AddForce(new Vector2(0, jumpForce));

I keep getting this error:
Assets/Scripts/CharController.cs(22,23): error CS0029: Cannot implicitly convert type bool' to float’

As robertbu said, The ‘GetMouseButtonDown’ method only returns a boolean value (true/false) and you’re trying to store that in a float (number with decimal component) which doesn’t really make sense.

Either change float to bool so that you’re matching the return value with the variable type, or call a different method that returns a float.

Input.GetMouseButtonDown(0) tells you whether the mouse button was first pressed in this frame or not. It does not indicate where the mouse is pressed, if you want to check that, you need to look at Input.mousePosition

If you want to flip every time the mouse is pressed, you need to use the following code:

if (Input.GetMouseButtonDown(0)) {

I think error is

float move = Input.GetMouseButtonDown(0);

Have a look at this Unity - Scripting API: Input.GetMouseButtonDown .

Input.GetMouseButtonDown(0) returns bool.