Einzelnen Beitrag anzeigen

Sfaizst

Registriert seit: 16. Jun 2008
33 Beiträge
 
#101

AW: Ein Spiel mit Delphi programmieren

  Alt 20. Jun 2010, 11:51
Damit das auch mit der ImageList funktioniert würde ich das mal so machen: (Mach ich grad deine Hausaufgaben!?)
(hab das jetz im Notepad schnell hingeklatscht, Funktion also nicht getested, deine Image3-12 hab ich einfach mal rausgeschmissen (waren ja sowieso nich auf der Form)....)

Delphi-Quellcode:

...

procedure TForm1.Create( Sender : TObject );
  begin
    Randomize; // <-- Randomize wird im Oncreate aufgerufen...
  end;

procedure TForm1.EndeBtnClick( Sender : TObject );
  begin
    close;
  end;

procedure TForm1.TButtonClick( Sender : TObject );
  var
    einsatz, guthaben, wurf1, wurf2, augensumme : byte;
  begin
  {  Image1.Visible := false;    <-- Brauch ich nich....
    Image2.Visible := false;       }


    einsatz := strtoint( EinsatzCbB.text );
    wurf1 := random( 6 ) + 1;
    wurf2 := random( 6 ) + 1;
    augensumme := wurf1 + wurf2;

    case augensumme of
      2 .. 6 :
        begin
          ErgebnisPanel.Caption := 'Einsatz verloren';
          faktor := 0;
        end;

      7, 8, 9 :
        begin
          ErgebnisPanel.Caption := 'Einsatz zurück';
          faktor := 1;
        end;

      10 :
        {=} begin // Das = muss weg!
          ErgebnisPanel.Caption := 'Einsatz verdoppelt '; // Ein ' fehlte
          faktor := 2;
        end;

      11 :
        {=} begin // Das = muss weg!
          ErgebnisPanel.Caption := 'Einsatz verdreifacht';
          faktor := 3;
        end;

      12 :
        {=} begin
          ErgebnisPanel.Caption := 'Einsatz vervierfacht';
          faktor := 4;
        end;

    else
      ErgebnisPanel.Caption := 'Würfel auf Kippe ';
    end; // Das fehlte hier

    ImageList1.GetBitmap(Wurf1,Image1.Picture.Bitmap); //<-- Wenn Bitmaps in der Liste sind...
    ImageList1.GetBitmap(Wurf2,Image2.Picture.Bitmap); //<-- Natürlich auch für das 2. Image
    //Ich denke mal, größe der Images und der Imagelist wurde bereits im Objektinspektor eingestellt....

    Ergebnis2Panel.Caption := inttostr( faktor * einsatz );
  end;
Viel Glück weiterhin