public override void krok(Svet svet) { TypEntity[,] mapa = mapaViditelnosti(svet); Smer chteny_smer = Smer.Stuj; try { chteny_smer = chovani.pohyb(mapa, pozice); } catch (Exception e) { Console.WriteLine($"Hrac {znak} provedl neplatnou operaci: {e.ToString()}"); Thread.Sleep(1500); } Pozice nova_pozice = pozice.prictiSmer(chteny_smer); // zkontroluj, ze timto smerem muze houbar jit if (svet.entitaNaPozici(nova_pozice) == null) { pozice = nova_pozice; } // seber houbu else if (svet.entitaNaPozici(nova_pozice).typ == TypEntity.Houba) { Console.WriteLine($"Vyborne, hrac {znak} sebral houbu!"); Thread.Sleep(1500); svet.entity.Remove(svet.entitaNaPozici(nova_pozice)); pozice = nova_pozice; ++pocet_hub; } }
public override void krok(Svet svet) { // vyber nahodnou pristi pozici Smer s = (Smer)rnd.Next(6); Pozice nova_pozice = pozice.prictiSmer(s); if (svet.entitaNaPozici(nova_pozice) == null) { pozice = nova_pozice; } // sezer cloveka else if (svet.entitaNaPozici(nova_pozice).typ == TypEntity.Houbar) { Entita hrac = svet.entitaNaPozici(nova_pozice); Console.WriteLine($"Ale ne! Vlk si dal hrace {hrac.znak} ke svacine!"); Thread.Sleep(1500); svet.entity.Remove(hrac); pozice = nova_pozice; } }