Skocz do zawartości

odpowiedzi z klawiatury


Luvac

Rekomendowane odpowiedzi

Witam, tworze grę edukacyjną na licencjata i mam problem. Program ma losować liczby i pytać użytkownika o wynik mnożenia tych liczb. Po wpisaniu przez niego odpowiedzi w wyskakującym okienku, program powinien sprawdzić czy wynik jest prawidłowy i wyświetlić odpowiedni komunikat. Niestety nie wiem jak sie za to zabrać i nie moge nigdzie znaleźć żadnej pomocnej instrukcji. Wybaczcie, jeśli pytam o banały, ale jestem mocno zielony. Z góry dziękuje.

Odnośnik do komentarza
Udostępnij na innych stronach

tak proste ze az balem sie ze czy dobrze rozumiem :)

 

stworz wedlud tego schematu v eventu na przyklad klik mouse na button_mnozenia

1, losuj A, B (irandom_range() )

2, pokaz przyklad A*B= ?. do c umiesc winik (c=get_integer("Pomnoz: "+string( A ) +" * "+string( B )+" = ?",""); )

3, porownasz jesli A*B==c (if)

4, wedlug wyniku 4 wysvietl komunikat

 

kliknieciem na button_mnozenia masz jeden przyklad.

nastempne dalszy.

prostym sposobem mozesz zapisowac wyniky i dawac stopnie

jeszli nieznasz jakies commendy to na F1 jest help

 

chyba o to chiales nie?

Odnośnik do komentarza
Udostępnij na innych stronach

wyciagniecie cyfr ze string a nastepnie uzycie real(string) to dwulinijkowa proscizna wiec mozna porownywac string z realem z ta poprawka.

 

1, losuj A, B (irandom_range() )

Nie uzywaj samego irandom_range() bo wyniki beda podobne/te same.

 

Uzywaj

randomize()

przed kazdym losowaniem, bez wzgledu na typ

NA PRZYKLAD:

GML
randomize();

l1=irandom_range(1,25);

randomize();

l2=random(15);

randomize();

l3=irandom(10);

 

Skoro jestes nowy masz tu rodzaje losowan:

 

random(MAX); <== losuje liczbe od 0 do MNIEJSZEJ OD max. (np 0.2, 2.512, 3.14)

irandom(MAX); <== losuje liczbe od 0 do mniejszej od max, KTORA JEST CALKOWITA(np 1 5 7)

random_range(min,max) <== losuje liczbe w przedziale od min do max.

irandom_range(min,max) <== losuje liczbe calkowita w przedziale od min do max

 

mozesz tez skorzystac z predefiniowanych opcji uzywajac choose(arg0,arg1,...arg7)

np. choose(1,3,7,6,6.66) ale nie moze byc ich wiecej niz 8.

 

EDIT: Moglby ktos dodac GMS'owe funkcje do bazy danych? A moze to bedzie wraz z nowa wersja strony ktora ma wyjsc tydzien po Half Life 3?

Odnośnik do komentarza
Udostępnij na innych stronach

  • Filar Społeczności

ok, już wstawiam wersję poprawioną (zapomniałem użyć funkcji real): https://gmclan.org/up7193_12_precz_z_lewactwem.html

Nie ma co tłumaczyć, kolega wyżej wszystko poogarniał. Co prawda moja wersja jej nieoptymalna i dziurawa (zamiast irandom robię round(random)), ale chyba w pełni działająca.

Odnośnik do komentarza
Udostępnij na innych stronach

Tu bardziej chodzi o walor edukacyjny niż o piękną grafikę. W zasadzie to sam jeszcze nie wiem czy to przejdzie u promotora.

Mam jeszcze jedno pytanie zielonego, co by nie zakładać juz nowego tematu bo to pewnie prościzna.

 

Chciałbym umieścić w show_message oprócz tekstu('Poprawna odpowiedź to:) także wynik z mnożenia A*B (które to liczby są losowane). Nie wiem czy to możliwe, jeśli tak to prosił bym o instrukcje.

Z góry dziękuję.

Odnośnik do komentarza
Udostępnij na innych stronach

show_message(string)

to znaczy, ze mozesz zrobic wszystko co zechces s string za pomocy komendy string_...

GM help ci poda wszystkie mozliwosci.

 

do dobrego programu naucznego to jest podstawowa rzecz.

 

co do promotora to chyba za proste, ale zawse mozna zrobic duzo lepszy, ale nieznam sie na znaczeniu samego programu v twym przypadku.

jesli to tylko 1/10 ilustracyjna czesc to moze spoko.

 

jak bym cos takiego dal u nas na informatice to chyba by ze smiechu pekli ;)

Odnośnik do komentarza
Udostępnij na innych stronach

Ogolnie koncepcja jest taka, że musze wpleść w gre element nauki tabliczki mnożenia. Obmyslilem cos takiego, ze dzieciak bedzie sobie jezdzil samochodzikiem, zbieral gwiazdki i uciekal przed duszkami. Co jakis czas pokarze sie jakis znaczek, po ktorego zebraniu dostanie dzialanie z tabliczki mnozenia. Jak dobrze odpowie to +10 punktow. Ogolnie chodzi, zeby sie bawil i uczyl jednoczesnie (bo jak wiemy nauka tabliczki mnozenia to nudna pamieciowa). Tylko aktualnie obmyslam jakie kryterium do zmiany plansz dac, ustawilem zmiane roomu na okreslona ilosc punktow, ale jak zlapie wiecej na raz to score nie bedzie rownac sie temu co ustawilem i sie room nie zmieni :/ Wiem, ze to są "zielone" problemy, ale bawie sie tym programem od tygodnia i dupa ze mnie, a nie programista. Niestety obrona juz we wrzesniu :0

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ę...