Aktywne Wpisy

JakDorobic_com +30
Niedzielne #rozdajo gdzieś między rosołem a schabowym! ( ͡° ͜ʖ ͡°)
Do zdobycia jest karta podarunkowa Allegro o wartości 100 zł!
A zasady
Do zdobycia jest karta podarunkowa Allegro o wartości 100 zł!
A zasady
źródło: Rozdajo JakDorobic (3)
Pobierz
Anonim5 +2
Ile może stać samochód bez odpalania silnika? U mnie już stoi 3 tygodnie z rozładowanym akumulator i zastanawiam się czy silnik się nie popsuje od tak długiego nieużywania. Za 1-2 tygodnie mam zamiar naładować akumulator i odpalić silnik.
#motoryzacja #pytanie #pytaniedoeksperta #mechanikasamochodowa #mechanika
#motoryzacja #pytanie #pytaniedoeksperta #mechanikasamochodowa #mechanika





Jak zapowiadałem w tym wpisie, wpadłem na pomysł stworzenia szachów ze spersonalizowanymi ruchami. Na początek ruchy gońca i królowej będą się odbijać od ścian. Od razu zabrałem się do roboty i mam już pierwsze efekty pracy.
Wszytko robię sam od zera, silnik szachów, programowanie ruchów. Udało mi się do tej pory zaprogramować ruchy pionków i gońca. Wrzucam screen jak w tej chwili to wygląda.
Cały kod źródłowy udostępniam. Jeśli macie czas i ochotę, jestem otwarty na sugestie dotyczące struktury i zastosowanych algorytmów programu. Robię to bez wcześniejszego zaprojektowania więc rozwiązanie nie jest idealne i nie spełnia wielu norm dobrego programowania. Jak macie uwagi, zapraszam do dyskusji a nawet mogę dać dostęp developera, żeby wspólnie nad tym pracować.
Link do źródła: https://github.com/marios160/diagonalchess
źródło: comment_1642617270GEVJMXHQx0BUGDmi5orUse.jpg
Pobierzja bym na start podpatrzył jakieś projekty i poodgapial rozwiązania
Tu np. https://github.com/marios160/diagonalchess/blob/main/Pieces/PawnWhite.cs
Robisz jakieś if-owanie a wg mnie figura powinna tylko mówić tylko jak się porusza a tu już zawierasz logikę
https://github.com/marios160/diagonalchess/blob/main/Pieces/Bishop.cs
Przecież każda figura będzie musiała spojrzeć czy nie wychodzi z planszy, więc zduplikujesz kod
Figury wiedzą tylko o sobie i co potrafią robić
Plansza wie tylko co i gdzie na niej leży
"Arbiter" wie o planszy i o figurach i wie jakie ruchy są prawidłowe
Tak na pierwszy rzut oka to strasznie mnie bolą konstrukcje "if (warunek) return true; else return false;". Przecież można napisać "return warunek", np.:
public bool IsOccupied(int row, int col)
{
if (ChessBoard.Pieces.Where(p => p.Row == row && p.Column == col && p.Type != ChessPieceTypes.Dot).Count()
"Na a1 da radę pójść?" Nie.
"Na a2 da radę pójść?"
@EmcePomidor2: a jak byś zapisał ruch, tzn. Jak wygląda jej ruch?
Nie znam C# ale zrobiłbym kolekcje ruchów
Problem z zapisaniem ruchu jest taki że w tej wersji szachów goniec się odbija od ściany i to może być trochę problem.
Spróbuję trochę to pozmieniać jak mówisz i zobaczymy co z tego wyjdzie. Ale lista ruchów to w sumie bardzo dobry pomysł.
i osobny namespace View/ czy jak to tam nazwiesz i tam można nasrać i tam tez są figury dokładnie tak jak teraz masz ale pytają się Logic/ o wszystko
i żadnych liczb typu "7" nie ma tam być. to "Arbiter" niech patrzy czy potencjalny ruch jest poza planszą
tu będzie jakaś matematyka ale sam się na to pisałeś ( ͡° ͜ʖ ͡°) w
Move
{
piece: ChesssPiece,
Ruch skoczka łatwo zapisać np. +2, - 1, ale ruch gońca który odbija się od ścian? Bo jak by się nie odbijał to 1,1;2,2 i tak do 7,