Witajcie
Jak po temacie wątku można się domyślić piszę aktualnie chińczyka w JavaScript ot tak po prostu żeby się czegoś nowego nauczyć. Napotkałem jednak mały problem przy opracowaniu systemu kolizji. Na początek napisałem krótki warunek, po którego spełnieniu powinien zmienić się kolor tła kwadratu
, który odpowiada za jedno pole na całej planszy. Poniżej załączam screen całej planszy z ponumerowanymi polami.
Problem pojawia się w miejscu, w którym czerwony pionek wchodzi na pole pionka zielonego. Powyższy screen jest sprzed wystąpienia problemu, natomiast screen poniżej obrazuje problem, który chciałbym rozwiązać.
Zatem czerwony pionek zachodzi pod
zielony zamiast nad
niego. Ta linijka kodu nie działa tak jak należy:
if(thirtyFiveSquare.classList.contains('redJumps'))
{
thirtyFiveSquare.classList.remove('greenJumps');
}
Klasa redJumps
zawiera jedynie zmianę koloru tła na kolor czerwony, natomiast greenJumps
zmienia kolor na zielony. Więc jeśli 35 kwadrat zawiera klasę redJumps (a zatem jeśli jest koloru czerwonego) to usuń z niego klasę greenJumps i zostaw klasę redJumps. Logicznie rzecz biorąc powinno zadziałać, ale nie działa dlatego proszę Was o pomoc. Dodam, że dopiero zacząłem pisać tę grę.
Cały kod wraz z grą:
https://jsfiddle.net/2dm1myh4/