If Statement not working

Synopsis:
AmmoScript Takes 3 Ints:
FullAmmo = How Much Ammo you Have Total.
Ammo = Ammo In Magazine.
And MaxAmmo = Max Ammo for a Magazine.

When loading the script, it uses an if Statement saying “If isFire is true, Subtract from Ammo. else? Subtract from MaxAmmo.”

Script:

using UnityEngine;

using System.Collections;

public class AmmoScript : MonoBehaviour {

public int Ammo = 30;
public int MaxAmmo = 30;
public int FullAmmo = 90;
public bool isFire = true;

// Use this for initialization
void OnGUI () {
	GUI.Box (new Rect(0, Screen.height - 20, 100, 20), Ammo + " / " + FullAmmo);
}

// Update is called once per frame
void Update () {
	if(Input.GetButtonDown("Fire1"))
	{
		if(isFire == true)
		{
			Ammo -= 1;
		}
	}
	
	if(Ammo == 0)
	{
		isFire = false;	
	}
	
	if(Input.GetKeyDown(KeyCode.R))
	{
		if(isFire == false)
		{
			Ammo = MaxAmmo;
			FullAmmo -= MaxAmmo;
			isFire = true;
		}
		else
		{
		Ammo = MaxAmmo;
		isFire = true;
		FullAmmo -= Ammo;
		}
	}
}

}

if(isFire == false)
{
Ammo = MaxAmmo;
FullAmmo -= MaxAmmo;
isFire = true;
}
else
{
FullAmmo -= Ammo;
Ammo = MaxAmmo;
isFire = true;
}

try that