Exemple #1
0
        //nastavy nove cinnosti mravcov na zaklade ich pozicie a strategie
        public static void NastavenieNovychCinnostiMravcov(Mravenisko mravenisko, Halda <Udalost> halda, int cas)
        {
            Udalost udalost = new Udalost(cas + 1, (int)TypyUdalosti.nastavenieNasledujucichCinnostiMravcov,
                                          TypyUdalosti.nastavenieNasledujucichCinnostiMravcov);

            halda.VlozPrvok(udalost, udalost.ZistiCasNastania(), udalost.ZistiPriorita());

            for (int i = 0; i < mravenisko.ZistiRozmerMraveniska(); i++)
            {
                for (int j = 0; j < mravenisko.ZistiRozmerMraveniska(); j++)
                {
                    foreach (PohybujuceSaObjekty pohybObjekt in mravenisko.VratObjektPohybujuceSaNaDanychSuradniciach(new Suradnice(i, j)))
                    {
                        Mravec mravec = pohybObjekt as Mravec;
                        NastavenieCinnostiMravcov.NastavenieCinnostiMravca(halda, cas, mravec, mravenisko);
                    }
                }
            }

            SpravaMraveniskaMravcov.InicializaciaMraveniska(mravenisko);
            SpravaMraveniskaMravcov.NajdiStojacichMravcov(mravenisko);
        }