// Update is called once per frame
    void Update()
    {
        switch (Stat)
        {
        case RefreshLaser.RefreshStat.Waiting:
        {
            TimeCountDown();
            break;
        }

        case RefreshLaser.RefreshStat.Refresh:
        {
            Refresh();
            Stat = RefreshLaser.RefreshStat.RefreshDone;
            break;
        }

        case RefreshLaser.RefreshStat.RefreshDone:
        {
            Countdown = RefreshCooldown + Random.Range((-1) * RefreshFloat, RefreshFloat);
            Stat      = RefreshLaser.RefreshStat.Waiting;
            break;
        }
        }
    }
 void TimeCountDown()
 {
     Countdown -= Time.deltaTime;
     if (Countdown <= 0)
     {
         Stat = RefreshLaser.RefreshStat.Refresh;
     }
 }
 // Use this for initialization
 void Start()
 {
     Stat      = RefreshLaser.RefreshStat.Waiting;
     Countdown = RefreshCooldown;
 }