Cześć.
Mam pytanie na temat teoretycznego sposobu rozwiązania problemu.
Piszę sobie prostą gierkę 2d w javie (ot tak żeby się pouczyć).
W jaki sposób rozwiązać problem w którym odwołanie się do konkretnej metody zależy od innych rzeczy? Np. Metoda "zrobKrokDoPrzodu" może być wywołana tylko wtedy kiedy postać: "stoi na nogach", "nie ma złamanej nogi" i np. "nie ma bagażu".
Okej, można zrobić 3 metody zwracające boolean i robić if if if ale to moim zdaniem bezsensu. Ostatnio znalazłem wzorzec projektowy "Stan" który dość dobrze takie drzewko ifów likwiduje... A co w sytuacji jeśli "IFy" następują po sobie np. sprawdzenie czy postać stoi na nogach może byc wykonane po sprawdzeniu czy nie śpi a stan czy śpi tylko wtedy kiedy wcześniej było wiadomo że np jest noc. Wówczas tworzy się takie cudo:
if(czyNoc){
if(!czySpi){
if(czyStoi){
}
}
}
Już nie mówiąc że mogą też wystąpić jakieś else.
Jak coś takiego skutecznie niwelować?
Pozdrawiam,
~eL