Jak dopisać wartość do zmiennych?

0

Np zrobie cos takiego:

begin
Randomize;
WylosowanaLiczba := Random(4);
if WylosowanaLiczba > 3 then
MessageBox(0, 'zaatakowałeś 4 szkieletów - przegrałes' 'przegrana', MB_OK);
if WylosowanaLiczba < 2 then
MessageBox(0, 'zaatakowales jednego szkieleta - wygrales', 'wygrana', MB_OK);

end.

I teraz mam pytanie: Jeśli wylosuje liczbe tak, bym wygrał, to jak dopisac, żeby messagebox po naciśnięciu na ok otworzyło drugą forme(form2.showmodal) próbowałem na rózne sposoby, ale nie wychodziło ;/ Mógłby ktoś mi dać przykład jak to zrobić.. Z góry dzięki :)

0

nie wiem czy dobrze zrozumiałem ...

if WylosowanaLiczba < 2 then
begin
    MessageBox(0, 'zaatakowales jednego szkieleta - wygrales', 'wygrana', MB_OK);
     form2.showmodal;
end;

jesli o to chodzi to temat nadaje sie do kasacji ... to są podstawy !!

ps: wylosowana liczba nigdy nie bedzie wieksza od 3, bo random(4) losuje liczbę z zakresu 0-3

0

nie wiem czy dobrze zrozumiałem ...

if WylosowanaLiczba < 2 then
begin
    MessageBox(0, 'zaatakowales jednego szkieleta - wygrales', 'wygrana', MB_OK);
     form2.showmodal;
end;

jesli o to chodzi to temat nadaje sie do kasacji ... to są podstawy !!

ps: wylosowana liczba nigdy nie bedzie wieksza od 3, bo random(4) losuje liczbę z zakresu 0-3

Co oznacza, że 1 warunek nigdy nie będzie spełniony, bo wylosowana liczba może być co najwyżej równa 3 :) . Można przetestować wartość zwróconą przez MessageBox, gdyż w kodzie przedmówcy forma Form2 będzie wyświetlona zawsze, niezależnie od tego, czy użytkownik kliknie OK, Anuluj czy Formatuj HDD :) (oczywiście, jeśli będzie więcej przycisków jak OK, ale zawsze można je dodać :) ).

begin
  if MessageBox(0, 'zaatakowales jednego szkieleta - wygrales', 'wygrana', MB_OK) = idOk then
    Form2.ShowModal;
end;

Oczywiście to nie ma sensu, jeśli będzie tylko 1 przycisk, gdyż w takim wypadku instrukcja warunkowa tylko marnuje czas i Twój, i procesora :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1