public bool UsunPrzedmiotZEkwipunku(Przedmiot przedmiot) { if (Ekwipunek.Find(przedmiotWEkwipunku => { return(przedmiotWEkwipunku.Id == przedmiot.Id); }) == null) { return(false); } Ekwipunek.Remove(przedmiot); return(true); }
public bool DodajPrzedmiotDoEkwipunku(Przedmiot przedmiot) { //nie dodawac tg samego przedmiotu dwa razy if (Ekwipunek.Find(przedmiotWEkwipunku => { return(przedmiotWEkwipunku.Id == przedmiot.Id); }) != null) { return(false); // ToDo przerobic na rzucanie wyjatkow } if (Udzwig < Obciazenie + przedmiot.Waga) { return(false); } Ekwipunek.Add(przedmiot); return(true); }
public void Zaloz(CzescCiala czescCiala, Przedmiot przedmiot) { if (przedmiot == null) { throw new Exception("Musisz podac przedmiot"); } if (Ekwipunek.Find(x => x.Id == przedmiot.Id) == null)// nie ma tg predmiotu w ekwipunku { throw new Exception("Nie ma tego przedmiotu w ekwipunku"); } if ((int)Klasa.Typ != (int)przedmiot.OgraniczeniaKlasowe && przedmiot.OgraniczeniaKlasowe != KtoMozeNosic.Wszyscy) { throw new Exception("Ta postac nie moze nosic tego przedmiotu"); } NieodpowiednieMiejsceExeption nieOdpowiednieMiejsce = new NieodpowiednieMiejsceExeption("To nie jest odpowiednie miejsce na ten przedmiot"); ZajeteMiejsceExeption zajeteMiejsce = new ZajeteMiejsceExeption("To miejsce jet juz zajete"); switch (czescCiala) { case CzescCiala.Glowa: if (NakrycieGlowy != null) { throw zajeteMiejsce; } if (przedmiot.Typ != TypPrzedmiotu.NakrycieGlowy) { throw nieOdpowiednieMiejsce; } NakrycieGlowy = przedmiot; break; case CzescCiala.LewaReka: if (LewaReka != null) { throw zajeteMiejsce; } if (przedmiot.Typ != TypPrzedmiotu.Bron) { throw nieOdpowiednieMiejsce; } LewaReka = przedmiot; break; case CzescCiala.PrawaReka: if (PrawaReka != null) { throw zajeteMiejsce; } if (przedmiot.Typ != TypPrzedmiotu.Bron) { throw nieOdpowiednieMiejsce; } PrawaReka = przedmiot; break; case CzescCiala.Tulow: if (Stroj != null) { throw zajeteMiejsce; } if (przedmiot.Typ != TypPrzedmiotu.Stroj) { throw nieOdpowiednieMiejsce; } Stroj = przedmiot; break; case CzescCiala.Stopy: if (Buty != null) { throw zajeteMiejsce; } if (przedmiot.Typ != TypPrzedmiotu.Buty) { throw nieOdpowiednieMiejsce; } Buty = przedmiot; break; default: break; } }