Example #1
0
 /// <summary>
 /// Feltolti a raktár Búza részét
 /// </summary>
 private void RaktarBuzaFeltoltes()
 {
     foreach (NyersanyagMezo nyersanyag_mezo in this.nyersanyagMezok)
     {
         if (nyersanyag_mezo.Kapacitas.ContainsKey(Tipusok.Tarolhatok.Buza))
         {
             Tipusok.Tarolhatok buzatarolhato = Tipusok.Tarolhatok.Buza;
             int mennyit;
             int tarolo_maradekhely = this.tarolo.Kapacitas[buzatarolhato][1] - this.tarolo.Kapacitas[buzatarolhato][0];
             // ha a mezőben több a teremtl anyag, mint amekkkora a maradék hely, akkor csak maradekhelynyit kér le
             if (nyersanyag_mezo.Kapacitas[buzatarolhato][0] > tarolo_maradekhely)
             {
                 mennyit = tarolo_maradekhely;
             }
             // ellenkező esetben az egészet, amit tárol
             else
             {
                 mennyit = nyersanyag_mezo.Kapacitas[buzatarolhato][0];
             }
             if (mennyit > 0)
             {
                 /// nem csodrulhat túl, mert annyit teszünk bele amennyit még elbír
                 nyersanyag_mezo.Kivesz(buzatarolhato, mennyit);
                 this.tarolo.Betesz(buzatarolhato, mennyit);
             }
         }
     }
 }
Example #2
0
 /// <summary>
 /// Visszaadja, hogy egy tárolhatóból van-e a táróbólban mennyiseg
 /// </summary>
 /// <param name="tarolhato">A tárolható típusa</param>
 /// <param name="mennyiseg">A mennyiseg</param>
 /// <returns></returns>
 public bool VanEleg(Tipusok.Tarolhatok tarolhato, int mennyiseg)
 {
     if (tarolhato != Tipusok.Tarolhatok.Lakos)
     {
         return(this.tarolo.Kapacitas[tarolhato][0] > mennyiseg);
     }
     else
     {
         return(this.foEpulet.Lista.Count > mennyiseg);
     }
 }
Example #3
0
        /// <summary>
        /// A Kapacitás tároló részéhez [0] hozzáad mennyit-nyit
        /// Ha így nagyobb akkor teletölti, majd dob egy TaroloTulCsordultException-t
        /// </summary>
        /// <param name="tarolhato">A tárolható típusa, amelyik rekeszbe szeretnék tenni a mennyit</param>
        /// <param name="mennyit">A mennyiség, amennyit be szeretnénk tenni a rekeszbe</param>
        public void Betesz(Tipusok.Tarolhatok tarolhato, int mennyit)
        {
            if (!Kapacitas.ContainsKey(tarolhato))
            {
                throw new NemTartalmazTarolhatotException();
            }
            int tarolo_maradekhely = Kapacitas[tarolhato][1] - Kapacitas[tarolhato][0];

            if (mennyit > tarolo_maradekhely)
            {
                Kapacitas[tarolhato][0] += tarolo_maradekhely;
                throw new TaroloTulCsordultException();
            }
            Kapacitas[tarolhato][0] += mennyit;
        }
Example #4
0
 /// <summary>
 /// Visszaadja, hogy van-e búzamező, ahol a kapacitástárolt rekesze nulla
 /// </summary>
 /// <returns>Visszaadja, hogy van-e búzamező, ahol a kapacitástárolt rekesze nulla</returns>
 private bool VanBeNemTakaritottBuzaMezo()
 {
     foreach (NyersanyagMezo item in this.nyersanyagMezok)
     {
         if (item.Kapacitas.ContainsKey(Tipusok.Tarolhatok.Buza))
         {
             Tipusok.Tarolhatok buzatarolhato = Tipusok.Tarolhatok.Buza;
             if (item.Kapacitas[buzatarolhato][0] > 0)
             {
                 return(true);
             }
         }
     }
     return(false);
 }
Example #5
0
 /// <summary>
 /// Megtolti a kapacitást a maxkapacitásnyival
 /// </summary>
 /// <param name="tarolhato">A tárolható típusa,a mit termel</param>
 public void Termel(Tipusok.Tarolhatok tarolhato)
 {
     Kapacitas[tarolhato][0] = Kapacitas[tarolhato][1];
     Logger.Log(MezoTipus + "Mező termelt");
 }
Example #6
0
 /// <summary>
 /// Visszaadja mmenyit-nyit a Tárolhato-ból
 /// </summary>
 /// <param name="tarolhato">A típus, amiből lekérjük a mennyiséget</param>
 /// <param name="mennyit">A mennyiség, hogy mennyit szeretne kivenni a tárolóból</param>
 /// <returns>Visszaad mennyit-nyit, ha van belőle mennyit-nyi a kapacitásban, ellenkező esetben dob egy NincsElégTarolhatoException-t</returns>
 public void Kivesz(Tipusok.Tarolhatok tarolhato, int mennyit)
 {
     if (!Kapacitas.TryGetValue(tarolhato, out int[] tarolt_mennyiseg))