public bool HandleReload()
    {
        reload_timer -= Time.deltaTime;
        arc_timer    -= Time.deltaTime;

        if (Chambers.Length > 0)
        {
            Chambers[CurrentChamber].RotateCylinder((60 * ((ChamberCount * 6) / WeaponConfiguration.TimeToReload)) * Time.deltaTime);
        }

        if (arc_timer <= 0)
        {
            arc_timer = WeaponConfiguration.TimeToReload / (ChamberCount * 6);

            if (Chambers.Length > 0)
            {
                Chambers[CurrentChamber].ReturnBullet();
                CurrentChamber = (++CurrentChamber) % ChamberCount;
            }
        }

        if (reload_timer <= 0)
        {
            foreach (Reloader Chamber in Chambers)
            {
                if (Chambers.Length > 0)
                {
                    Chamber.RotateCylinder();
                    Chamber.ReturnBullet(true);
                }
            }

            WeaponConfiguration.Ammuniton = WeaponConfiguration.MagazineSize;
            return(true);
        }

        return(false);
    }