m4cho Napisano Kwiecień 29, 2013 Zgłoś Share Napisano Kwiecień 29, 2013 Witam! Mam problem ze zrobienie gry tekstowej. Opiera się ona na zagadkach i odpowiedziach na nich i wykrzacza się przy paru odpowiedziach. Zaczne od wstawienia kodu: program milionerzy; USES CRT; VAR imie : String; aaa : byte; zgoda,zgoda1,zgoda11,zgoda4,zgoda123,zgoda5,zgoda22: char; zagadka2,zagadka3,zagadka4,zagadka5,odp: String; BEGIN CLRSCR; WriteLn('Czesc. Podaj swoje imie: '); ReadLn(imie); WriteLn('...i wiek.'); ReadLn(aaa); WriteLn('Czesc ',aaa,'-letni ',imie,'!'); WriteLn('Mam pewna, zagadke dla Ciebie. Chcesz sprobować swoich sil? T/N'); ReadLn(zgoda); IF zgoda='N' THEN Begin WriteLn('Ok, dosyc Cie dzisiaj wymeczylem, koniec na dzisiaj. Nacisnij ENTER aby zakonczyc'); ReadLn; End; IF zgoda='T' then Begin WriteLn('Ok, co to jest: zolte i kopie?'); ReadLn(odp); IF odp='koparka' THEN Begin WriteLn('Dobrze! Grasz dalej? T/N'); ReadLn(zgoda11); IF zgoda11='N' THEN Begin WriteLn('Ok, nie chcesz grac, moze sprobujesz kiedy indziej. Tymczasem nacisnij ENTER aby zakonczyc gre.'); ReadLn; End; IF zgoda11='T' THEN Begin WriteLn('Co to jest: wisi na scianie i placze?'); ReadLn(zagadka3); IF zagadka3='nie wiem' THEN Begin WriteLn('Poprawna odpowiedź to "DUPA NIE ALPINISTA"'); ReadLn; End; IF zagadka3='dupa-nie-alpinista' THEN BEGIN WriteLn('Dobrze! Grasz dalej? T/N'); ReadLn; IF zgoda1='N' THEN Begin WriteLn('Ok, nie chcesz grac, moze sprobujesz kiedy indziej. Tymczasem nacisnij ENTER aby zakonczyc gre.'); ReadLn; End; IF zgoda1='T' THEN Begin WriteLn('Co to jest rozniczka?'); ReadLn(zagadka5); IF zagadka5='rozniczka' THEN BEGIN WriteLn('Dobrze! Grasz dalej? T/N'); ReadLn(zgoda123); IF zgoda123='N' THEN Begin WriteLn('Ok, nie chcesz grac, moze sprobujesz kiedy indziej.'); WriteLn('Tymczasem nacisnij ENTER aby zakonczyc gre.'); ReadLn; End; IF zgoda123='T' THEN Begin WriteLn('Brawo! Jeste bardzo blyskotliwy, zagadki nie byly najlatwiejsze...'); ReadLn; WriteLn('...a Ty podolale wszystkim!'); ReadLn; WriteLn('Nacisnij ENTER aby zakonczyc gre .'); ReadLn; End; End; IF zagadka5='nie wiem' THEN Begin WriteLn('WYNICZEK ODEJMOWANKA!!'); ReadLn; End; IF zagadka5='' THEN Begin WriteLn('WYNICZEK ODEJMOWANKA!!'); ReadLn; End; End; End; End; End; IF zagadka3='nie wiem' THEN Begin WriteLn('PRZEGRAŁEŚ!!'); ReadLn; End; IF odp='nie wiem' THEN BEGIN WriteLn('Zle! Nacisniej ENTER aby zakonczyc'); ReadLn; End; End; End; End; End. Pierwsze z czym mam problem to IF odp='nie wiem' THEN BEGIN WriteLn('Zle! Nacisniej ENTER aby zakonczyc'); ReadLn; Jest to odpowiedź na pierwsze pytanie. Po daniu takie odpowiedzi nic się nie dzieje, wyłącza się. Potem, przy 2 pytanie z tym co to jest, wisi na ścianie płacze. Żadna odpowiedź nic nie daje. Chciałbym aby jeszcze było można wpisywać duże i małe litery w pytaniach "T/N?". Tu chodzi o opcje UpCase, tak? Tylko nie wiem jak ją zastosować. Link do komentarza Udostępnij na innych stronach More sharing options...
babubabu Napisano Kwiecień 30, 2013 Zgłoś Share Napisano Kwiecień 30, 2013 To co napisałeś to jest porażka. Proponuję usunąć to wszystko w cholerę. Usiąść i pomyslec jak to ma działać. I napisać jeszcze raz od poczatku. Dwie porady: - Bez petli się nie obejdzie. - Wczytuj pytania z pliku. Link do komentarza Udostępnij na innych stronach More sharing options...
xevil21 Napisano Kwiecień 30, 2013 Zgłoś Share Napisano Kwiecień 30, 2013 Lepiej niech się kolega podstaw nauczy, zanim zacznie gry pisać. Słyszał kolega o "ELSE"? Funkcjach? Pętlach? Pozdrawiam! Link do komentarza Udostępnij na innych stronach More sharing options...
Polecane posty
Zarchiwizowany
Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.