예제 #1
0
파일: Reloads.cs 프로젝트: epicelite/OpenRA
 public void Tick(Actor self)
 {
     if (--remainingTicks == 0)
     {
         remainingTicks = Info.Period;
         for (var i = 0; i < Info.Count; i++)
         {
             la.GiveAmmo();
         }
     }
 }
예제 #2
0
        public void Tick(Actor self)
        {
            if (!la.FullAmmo() && --remainingTicks == 0)
            {
                remainingTicks = Info.Period;

                for (var i = 0; i < Info.Count; i++)
                {
                    la.GiveAmmo();
                }

                previousAmmo = la.GetAmmoCount();
            }

            // Resets the tick counter if ammo was fired.
            if (Info.ResetOnFire && la.GetAmmoCount() < previousAmmo)
            {
                remainingTicks = Info.Period;
                previousAmmo   = la.GetAmmoCount();
            }
        }