Skocz do zawartości

Krzyżówka


Arekadiusz

Rekomendowane odpowiedzi

Chciałbym zrobic mechanizm krzyżówki.

To znaczy:Gdy ktoś wciśnie strzałkę w góre w dół w prawo lub w lewo to inna kratka np. czerwona będzie się przesuwała po zwykłych kratkach(takie oznaczenie) i na tej zwykłej która będzie zaznaczona na czerwono żeby się dało pisac.

I jeszcze chciałbym np. gdy ktoś wpisze coś w pierwszej kratce,aby automatycznie kratka czerwona przesuwała sie aż do ostatniej w rzędzie.

 

Czy jest to możliwe?

 

 

 

Z góry dziękuje za wszystkie odpowiedzi.

Odnośnik do komentarza
Udostępnij na innych stronach

zadałeś pytanie czy jest to możliwe, Tiger odpowiedział na Twoje pytanie. ale watpie czy chodziło ci o taka odpowiedź. zadaj bardziej konkretne pytanie, bo to w stylu: czy jest to możliwe ... no odpowiedz moze byc tak lub nie. wiec na pewno chciałeś uzyskać odpowiedź na pytanie jak to zrobić? czyżbym sie nie mylił?

Tiger, jesli sadzisz że tak, to mógłbyś wyjaśnić w jaki sposób Twoim zdaniem to jest możliwe.

wiem ze to nie na temat zbytnio ale musiałem coś dodac od siebie

pozdro

Odnośnik do komentarza
Udostępnij na innych stronach

A chociażby:

GML
//Create

w = 10;

h = 10;

//deklarujesz se tablice char[0-9, 0-9] = ""

cx = 0;

cy = 0;

 

//Step

if(keyboard_check_pressed(vk_right))

{

cx += 1;

}

//tutaj inne kierunki

if(cx > w-1){ cx=w-1; }

if(cy > h-1){ cy=h-1; } //zabezpieczneie przed wyjechaniem kursorem poza krzyzowke

if(cx < 0){ cx=0; }

if(cy < 0){ cy=0; }

 

if(keyboard_string != "") //jesli mamy nowy znak

{

char[cx, cy] = string_char_at(keyboard_string, 0); //ustawiamy znak do zaznaczonego pola

keyboard_string = "";

}

 

//Draw

//malujesz sobie jakas siatke, nawet sprite (tlo krzyzowki)

xx = 0;

yy = 0;

repeat(w*h)

{

draw_text(xx*20, yy*20, char[xx, yy]); //malujemy znak

//przesuwamy sie w petli

if(xx >= w-1)

{

xx = 0;

yy += 1;

}

}

 

//malujemy kwadracik (zaznaczenie)

draw_rectangle(cx*20, cy*20, cx*20+20, cy*20+20, 1);

 

Ed: Weźcie dodajcie do regulaminu punkt, że odpowiadanie na posty w Pytaniach Początkujących jednym słowem jest karane.

Każdy dobrze wie, że pisząc "czy się da" autor tematu ma na myśli "jak", a już nie pierwszy raz widzę sytuację, jak ktoś nabija sobie posty w taki sposób...

Odnośnik do komentarza
Udostępnij na innych stronach

Dzięki bardzo.Już wiem gdzie zrobiłem błąd.

Mam jeszcze pytanie:

Jak zrobić sprawdzanie tego co zostało wpisane w rządku.

Np. Jeśli ktoś wpisze gra,a poprawnie powinno być gry to,aby wyświetlił się komunikat źle i zmazały się wszystkie literki w tym rządku,a jeśli wpisze dobrze to nie pokaże się żaden komunikat.

Odnośnik do komentarza
Udostępnij na innych stronach

Wyjaśnij dokładniej. Chcesz sprawdzić, czy gdzieś w którymś rzędzie wystąpiło słowo "gra"?

GML
rzadek = 0;

repeat(h-1)

{

znak = 0;

tekstrzadku = "";

repeat(w-1)

{

tekstwrzadku += char[znak, rzadek];

if(char[znak, rzadek] == "") //Jesli to pole jest puste, to traktuje to jako spacje

{

tekstwrzadku += "";

}

znak += 1;

}

 

//teraz w zmiennej tekstwrzadku mamy caly tekst w jendym rzedzie.

if(string_count("gra", tekstwrzadku)) //jesli gdzies w tym rzadku wystapilo slowo gra

{

...

}

 

rzadek += 1;

}

Odnośnik do komentarza
Udostępnij na innych stronach

nie

po prostu wpisze na przykład w rządek pierwszy wyraz GRA i jeśli to będzie poprawna odpowiedź nie stanie się nic.

A jeżeli będzie zła odpowiedź całe słowo w danym rządku się wymarze i wyświetli się komunikat źle

chcem aby było tak jak w prawdziwej krzyżówce

Odnośnik do komentarza
Udostępnij na innych stronach

to działaj na zmiennych ...

Mówisz że chcesz żeby było jak w prawdziwej krzyżowce a robisz na odwrót.

 

Nie rób komunikatu przy źle wpisanym słowie bo to będzie bez sensu.

 

Jeśli ktoś rozwiąże jedno słowo, i będzie chciał wpisać drugie przecinające jedną z liter tego pierwszego i nie będzie mu pasować będzie wiedział że popełnił błąd.

 

 

Takie moje zdanie... a zrobisz jak uważasz ... Jeśli już chcesz sprawdzanie czy to aby obliczyć punkty czy coś, zrób to na koniec kiedy wszystkie kratki będą zajęte, sprawdzaj czy zgadza się. Znaczy każ programowi sprawdzać czy się zgadza a algorytmem.

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...