public void StrategieOpatrna(object sender, AutoInfo ai) { switch (ai.zmenaNaTrase) { case AktualniZmenaAuta.MostTrasa: (sender as Auto).aktualniRychlost = (sender as Auto).beznaRychlost; break; case AktualniZmenaAuta.TunelTrasa: (sender as Auto).aktualniRychlost = (sender as Auto).beznaRychlost; (sender as Auto).ZhasniSvetla(); break; case AktualniZmenaAuta.MostTunel: (sender as Auto).RozsvitSvetla(); break; case AktualniZmenaAuta.TunelMost: (sender as Auto).ZhasniSvetla(); break; case AktualniZmenaAuta.TrasaMost: (sender as Auto).SnizRychlost(10); break; case AktualniZmenaAuta.TrasaTunel: (sender as Auto).SnizRychlost(10); (sender as Auto).RozsvitSvetla(); break; case AktualniZmenaAuta.StartTrasa: (sender as Auto).aktualniRychlost = (sender as Auto).beznaRychlost; break; case AktualniZmenaAuta.KonecRegistrace: OdeberAuto(sender as Auto); break; case AktualniZmenaAuta.TrasaStop: break; } }
public void AktualizujStav(object sender, ElapsedEventArgs e) { if (stav == AktualniStavAuta.Stop) { return; } AutoInfo autoInfo = new AutoInfo() { aktualRychlost = aktualniRychlost, cestRychlost = beznaRychlost, poloha = Ujeto }; Ujeto += aktualniRychlost / 3.6 * 5.0; autoInfo.zmenaNaTrase = NajdiAktualniZmenu(minulyStav); Console.WriteLine(this); ZmenaStavu(this, autoInfo); }