Skip to content

Game #1

Open
Open

Description

@maro512

Połączenie modelu z wyświetlaniem

Activity

  1. pzjp commented on Apr 23, 2017

    @pzjp
    Collaborator

    Jeśli chodzi o gracza-remis, to zrobiłbym go jakimś globalnym obiektem (finalnym). Wtedy można by go porównywać za pomocą == a nie sprawdzając nazwę. Poza tym obecna wersja getPossibleMoves się nie kompiluje (niezainicjowane possibilities)...

  2. cieplinski-tobiasz commented on Apr 24, 2017

    @cieplinski-tobiasz
    Collaborator

    może jednak lepiej w game zrobić zmienną boolean draw i ją zmieniać na true, gdy pojawi się remis? poprawię, nie miałem kompilatora pod ręką pisząc ten kod

  3. cieplinski-tobiasz commented on Apr 25, 2017

    @cieplinski-tobiasz
    Collaborator

    dobra, game skończone, powinno być ok. użyłem zmiennej boolean do remisu. jeśli uznacie że wszystko jest ok to możecie odhaczyć issue

  4. pzjp commented on Apr 26, 2017

    @pzjp
    Collaborator

    Problem jest z playerami. Nie można ich ani dodać z zewnątrz, ani nie są tworzeni w Game... Wygląda na to, że tworzysz tablicę Player wypełnioną dwoma nullami i nigdy nie zapisujesz tam prawdziwego obiektu ani nie dajesz nikomu możliwości tego zrobić. Można albo dodać metody setWhite/BlackPlayer albo zmodyfikować konstruktor. O ile Board jest wewnętrzną sprawą Game, to gracze chyba "przychodzą" z interfejsu.

  5. pzjp commented on Apr 30, 2017

    @pzjp
    Collaborator

    Do Game'a dodałbym metodę wyznaczającą środkowe współrzędne planszy w oparciu o metody getMaxX, getMinX, getMaxY i getMinY, albo niech opakuje te wartości w jakąś użyteczną strukturę ("prostokąt"?). Na razie można tego używać do umieszczania geometrycznego środka planszy na środku ekranu, a w przyszłości można użyć skrajnych współrzędnych, żeby nie dało się przesunąć ekranu poza planszę.
    Poza tym sprawdzanie remisu jest wykonywane tylko w metodzie whoWon (zmienna draw jest chyba zupełnie niepotrzebna, a w tej chwili nawet nie spełnia swojego zadania). Może makeMove powinna zwracać true gdy gra została rozstrzygnięta, albo dajmy jakąś metodę isFinished czy coś.

  6. maro512 commented on Apr 30, 2017

    @maro512
    OwnerAuthor

    metoda wyznaczająca środkowe współrzędne nie jest potrzebna, a ograniczać planszy chyba też nie będziemy. Najlepiej byłoby gdyby gracz mógł położyć pierwszą płytkę tam gdzie chce, ale jeśli tak się nie da to ustawimy na środku sztywny punkt i jak będzie możliwość przesuwania i powiększania planszy to sobie ustawi jak mu pasuje.

  7. pzjp commented on Apr 30, 2017

    @pzjp
    Collaborator

    W tej chwili można po prostu zachować globalne przesunięcie współrzędnych (nawet z dokładnością do piksela) powstające przy pierwszym kliknięciu. "Krawędzie planszy" (to tylko skrajne współrzędne dotychczas wyłożonych płytek) są chyba potrzebne, bo jak ktoś przesunie planszę tak, że nie będzie tam ani jednej płytki, to chyba nie będzie dobrze...

  8. pzjp commented on May 25, 2017

    @pzjp
    Collaborator

    Jak w Game jest teraz pole selected to lepiej go używać w metodzie makeMove, zamiast pobierać współrzędne w argumentach. Poza tym getCell to jedna linijka: board.getCell((int) pos.x, (int) pos.y);...

  9. cieplinski-tobiasz commented on May 29, 2017

    @cieplinski-tobiasz
    Collaborator

    zmieniłem na selected, getCell poprawie

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

No labels
No labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions