Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Prosta gra "kulki", algorytm sprawdzania ilości kulek w rzędach
Koperfild
post
Post #1





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 4.08.2005

Ostrzeżenie: (0%)
-----


Witam,
zabrałem się parę dni temu za próbę wymyślenia struktury gry, powszechnie nazywanej "kulki". Nie będe jej opisywał, bo wydaje mi się że każdy ją zna (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
I zatrzymałem się na problemie którego nie mogę sam rozwiązać. Mianowicie jak powinno przebiegać sprawdzanie czy w poziomie, pionie, lub ukosie nie ustawiły się akurat 4 kulki tego samego koloru? Myślałem o nieskończonej pętli, która będzie sprawdzała wszystkie pola obok przestawionej kulki, i jeżeli nie natrafi na taką samą to przerywa się instrukcją break;, jednak nie jest to zbyt dobre rozwiązanie, bo przecież może być sytuacja gdy wstawiamy kulkę w środek gotowego już rzędu i wtedy z żadnej strony nie będzie po 4.

Ten post edytował Koperfild 4.07.2008, 21:46:38
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
maryaan
post
Post #2





Grupa: Zarejestrowani
Postów: 380
Pomógł: 2
Dołączył: 5.01.2007

Ostrzeżenie: (0%)
-----


algorytm nie bedzie trudny, mozna np tak:
przeszukujesz komorki wierszami z gory na dol, od lewej prawej
jesli kolumna nie jest pusta sprawdzasz rekurencyjnie
- sasiadujace pola w prawo
- sasiadujace pola na ukos (prawy dolny rog)
- sasiadujace pola na ukos (lewy dolny rog) //dopisane
- sasiadujace pola w dol od kulki
jesli ktores z tych sprawdzen da wynik >= 4 to kasujesz dany rzad, nie wiem jak w kulkach ma sie sprawa "podwojnych" rzedow, ktory zostanie skasowany jesli postawiona kulka tworzy jednoczesnie rzad pionowy i poziomy, ale to juz kosmetyka

stan planszy musisz sprawdzic po kazdej zmianie na niej a nie tylko po przestwieniu kulki (kulki dolaczane z automatu tez moga spowodowac ulozenie rzedu czterch takich samych)

a ten, w jaki sposob chcesz zorganizowac komunikacje z serwerem?

Ten post edytował maryaan 24.02.2007, 11:26:24
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 12.10.2025 - 00:06