Jak rozwiązać system licytacji? Jaka struktura danych?

0

Witam.
Od kilku dni staram się uporać z napisaniem prostej licytacji w grze karcianej Badugi. Niestety co chwilę napotykam na jakieś błędy i zaczynam od nowa.
Ogólnie mój problem zaczyna się już w fazie projektowania struktury jak taka licytacja mała by wyglądać.

Zaczynam tak:
(Skupiam się na opisaniu samej licytacji)

  • tworzę klasę licytacja przechowuje ona podstawowe informacje: ilość graczy, ilość graczy botów, mała ciemna, duża ciemna itd. oczywiście ma też jedno najważniejsze pole ArrayList lub tablice (próbowałem obydwie opcje, żeby zobaczy na której łatwiej operować) zawierającą graczy.
  • klasa gracz, która zwiera informacje o kartach gracza, ilości kasy itd.
  • do tego jeszcze jakieś pomocnicze klasy do typów danych.

Problem zaczyna się w momencie licytacji gdyż jest bardzo wiele czynników wpływających na to jakie zagranie może wybrać gracz. Kod staje się tak zawiły, że po jakimś czasie sam nie jestem wstanie go zrozumieć. Chodzi mi np. o to, że jeśli pierwszy gracz zagra X to następny gracz może zagrać już tylko Y,Z ...

Przedstawię jeszcze zasady jakimi ma się rządzić gra:

user image

Proszę o pomoc w zakresie zaplanowania struktury takiej licytacji.
Dziękuję pozdrawiam.

0

Rozpisz sobie algorytm, jak to ma działać, jak to widzisz. Czyli np. pętla dla czterech licytacji, w niej czynności takie czy inne, potem warianty działań itd. Wyłonią Ci się wtedy konieczne elementy programu, i dopiero po tym projektuj strukturę programu/klas.

0

No robiłem własnie tak jak napisałeś wtedy wychodzi straszny bałagan. Bo metoda licytacja mam pełno pętli i ifów :( A gdy znajdę jakiś błąd to już nie jestem w stanie go wychwycić :(

0

fajne zadanko, ale nie znam pokera. lepiej napisz na jakie klasy z jakimi polami to podzieliłeś albo daj UML to moze ktoś ci coś podpowie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1