![]() |
Spiel für Informatik Unterricht!!
Hallo!
Wir sollen in unserem Info Kurs ein kleines Textadventure programmieren. Habe nun heute damit angefangen habe allerdings nicht sehr viel ahnung von delphi und beim ersten kompilieren kamen direkt etliche fehler... so wie es aussieht scheint es nur an ein oder zwei stellen zu liegen vermute das das andere folgefehler sind, kann aber leider nichts finden... bitte um hilfe denke für jemanden der sich auskennt is das kein großes ding ;) danke schonmal!! Hier der Quelltext:
Code:
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls; type TForm1 = class(TForm) Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton; Memo1: TMemo; Image1: TImage; private { Private-Deklarationen } public { Public-Deklarationen } end; type TRaum=class Beschreibung:String; Bild:String; Norden, Osten, Sueden, Westen:TRaum; procedure setAusgaenge(norden,osten,sueden,westen:TRaum); end; var Form1:TForm1; room1,room2,room3,room4,room5,room6,room7,room8,room9,room10,room11,room12,room13,room14,room15,room16:TRaum; aktuellerRaum:TRaum; implementation {$R *.dfm} procedure TRaum.setAusgaenge(norden,osten,sueden,westen:TRaum); begin self.Norden:= norden; self.Osten:= osten; self.Sueden:= sueden; self.Westen:= westen; end; procedure TForm1.FormCreate(Sender:TObject); begin //---Räume erzeugen--- room1:=TRaum.Create; room2:=TRaum.Create; room3:= TRaum.Create; room4:= TRaum.Create; room5:= TRaum.Create; room6:= TRaum.Create; room7:= TRaum.Create; room8:= TRaum.Create; room9:= TRaum.Create; room10:= TRaum.Create; room11:= TRaum.Create; room12:= TRaum.Create; room13:= TRaum.Create; room14:= TRaum.Create; room15:= TRaum.Create; room16:= TRaum.Create; //---Eigenschaften der Räume--- room1.Beschreibung:=('room1'); room1.Bild:=('Bilder/room1.jpg'); room2.Beschreibung:= ('room2'); room2.Bild:= ('Bilder/room2.jpg'); room3.Beschreibung:= ('room3'); room3.Bild:= ('Bilder/room3.jpg'); room4.Beschreibung:= ('room4'); room4.Bild:= ('Bilder/room4.jpg'); room5.Beschreibung:= ('room5'); room5.Bild:= ('Bilder/room5.jpg'); room6.Beschreibung:= ('room6'); room6.Bild:= ('Bilder/room6.jpg'); room7.Beschreibung:= ('room7'); room7.Bild:= ('Bilder/room7.jpg'); room8.Beschreibung:= ('room8'); room8.Bild:= ('Bilder/room8.jpg'); room9.Beschreibung:= ('room9'); room9.Bild:= ('Bilder/room9.jpg'); room10.Beschreibung:= ('room10'); room10.Bild:= ('Bilder/room10.jpg'); room11.Beschreibung:= ('room11'); room11.Bild:= ('Bilder/room11.jpg'); room12.Beschreibung:= ('room12'); room12.Bild:= ('Bilder/room12.jpg'); room13.Beschreibung:= ('room13'); room13.Bild:= ('Bilder/room13.jpg'); room14.Beschreibung:= ('room14'); room14.Bild:= ('Bilder/room14.jpg'); room15.Beschreibung:= ('room15'); room15.Bild:= ('Bilder/room15.jpg'); room16.Beschreibung:= ('room16'); room16.Bild:= ('Bilder/room16.jpg'); //---Ausgänge setzen--- room1.setAusgaenge(nil,room2,room5,nil); room2.setAusgaenge(nil,room3,room6,room1); room3.setAusgaenge(nil,room4,room7,room2); room4.setAusgaenge(nil,nil,room8,room3); room5.setAusgaenge(room1,room6,room9,nil); room6.setAusgaenge(room2,room7,room10,room5); room7.setAusgaenge(room3,room8,room11,room6); room8.setAusgaenge(room4,nil,room12,room7); room9.setAusgaenge(room5,room10,room13,nil); room10.setAusgaenge(room6,room11,room14,room9); room11.setAusgaenge(room7,room12,room15,room10); room12.setAusgaenge(room8,nil,room16,room11); room13.setAusgaenge(room9,room14,nil,nil); room14.setAusgaenge(room10,room15,nil,room13); room15.setAusgaenge(room11,room16,nil,room14); room16.setAusgaenge(room12,nil,nil,room15); aktuellerRaum:=room1; end; //---Norden-Button--- procedure TForm1.Button1Click(Sender: TObject); begin if (aktuellerRaum.Norden <> nil) then begin aktuellerRaum:= aktuellerRaum.Norden; Image1.Picture.LoadFromFile(aktuellerRaum.Bild); Memo1.Lines.Add(aktuellerRaum.Beschreibung); end; end; //---Osten-Button--- procedure TForm1.Button2Click(Sender: TObject); begin if (aktuellerRaum.Osten <> nil) then begin aktuellerRaum:= aktuellerRaum.Osten; Image1.Picture.LoadFromFile(aktuellerRaum.Bild); Memo1.Lines.Add(aktuellerRaum.Beschreibung); end; end; //---Sueden-Button--- procedure TForm1.Button3Click(Sender: TObject); begin if (aktuellerRaum.Sueden <> nil) then begin aktuellerRaum:= aktuellerRaum.Sueden; Image1.Picture.LoadFromFile(aktuellerRaum.Bild); Memo1.Lines.Add(aktuellerRaum.Beschreibung) end; end; //---Westen-Button--- procedure TForm1.Button4Click(Sender: TObject); begin if (aktuellerRaum.Westen <> nil) then begin aktuellerRaum:= aktuellerRaum.Westen; Image1.Picture.LoadFromFile(aktuellerRaum.Bild); Memo1.Lines.Add(aktuellerRaum.Beschreibung); end; end; end. |
Re: Spiel für Informatik Unterricht!!
Und wo zeigt er Fehler an ?
|
Re: Spiel für Informatik Unterricht!!
Hier liegt der Fehler:
Zitat:
Delphi-Quellcode:
aja, und wegen dem
room1.Beschreibung := 'room1';
Delphi-Quellcode:
room1,room2,room3,room4,room5,room6,room7,room8,room9,room10,room11,room12,room13,room14,room15,room16:TRaum;
![]() greetz Mike |
Re: Spiel für Informatik Unterricht!!
danke für die schnelle Hilfe, hat jedoch leider nix gebracht... habe jetzt mal alle fehler markiert..
also bei TForm1 kommt undefinierter bezeichner 'FormCreate' dann bei Button1.Click, Image1, Memo1 kommt undefnierter bezeicher und operator oder semikolon fehlt... das setzt sich bei den weiteren buttons fort, habe nur den ersten markiert....
Code:
[edit=Admin]Code in PRE-Tags gesetzt. Mfg, Daniel[/edit]
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls; type TForm1 = class(TForm) Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton; Memo1: TMemo; Image1: TImage; private { Private-Deklarationen } public { Public-Deklarationen } end; type TRaum=class Beschreibung:String; Bild:String; Norden, Osten, Sueden, Westen:TRaum; procedure setAusgaenge(norden,osten,sueden,westen:TRaum); end; var Form1:TForm1; room1,room2,room3,room4,room5,room6,room7,room8,room9,room10,room11,room12,room13,room14,room15,room16:TRaum; aktuellerRaum:TRaum; implementation {$R *.dfm} procedure TRaum.setAusgaenge(norden,osten,sueden,westen:TRaum); begin self.Norden:= norden; self.Osten:= osten; self.Sueden:= sueden; self.Westen:= westen; end; [color=#ff0000] procedure TForm1.FormCreate(Sender:TObject); [/color] begin //---Räume erzeugen--- room1:=TRaum.Create; room2:=TRaum.Create; room3:= TRaum.Create; room4:= TRaum.Create; room5:= TRaum.Create; room6:= TRaum.Create; room7:= TRaum.Create; room8:= TRaum.Create; room9:= TRaum.Create; room10:= TRaum.Create; room11:= TRaum.Create; room12:= TRaum.Create; room13:= TRaum.Create; room14:= TRaum.Create; room15:= TRaum.Create; room16:= TRaum.Create; //---Eigenschaften der Räume--- room1.Beschreibung:=('room1'); room1.Bild:=('Bilder/room1.jpg'); room2.Beschreibung:= ('room2'); room2.Bild:= ('Bilder/room2.jpg'); room3.Beschreibung:= ('room3'); room3.Bild:= ('Bilder/room3.jpg'); room4.Beschreibung:= ('room4'); room4.Bild:= ('Bilder/room4.jpg'); room5.Beschreibung:= ('room5'); room5.Bild:= ('Bilder/room5.jpg'); room6.Beschreibung:= ('room6'); room6.Bild:= ('Bilder/room6.jpg'); room7.Beschreibung:= ('room7'); room7.Bild:= ('Bilder/room7.jpg'); room8.Beschreibung:= ('room8'); room8.Bild:= ('Bilder/room8.jpg'); room9.Beschreibung:= ('room9'); room9.Bild:= ('Bilder/room9.jpg'); room10.Beschreibung:= ('room10'); room10.Bild:= ('Bilder/room10.jpg'); room11.Beschreibung:= ('room11'); room11.Bild:= ('Bilder/room11.jpg'); room12.Beschreibung:= ('room12'); room12.Bild:= ('Bilder/room12.jpg'); room13.Beschreibung:= ('room13'); room13.Bild:= ('Bilder/room13.jpg'); room14.Beschreibung:= ('room14'); room14.Bild:= ('Bilder/room14.jpg'); room15.Beschreibung:= ('room15'); room15.Bild:= ('Bilder/room15.jpg'); room16.Beschreibung:= ('room16'); room16.Bild:= ('Bilder/room16.jpg'); //---Ausgänge setzen--- room1.setAusgaenge(nil,room2,room5,nil); room2.setAusgaenge(nil,room3,room6,room1); room3.setAusgaenge(nil,room4,room7,room2); room4.setAusgaenge(nil,nil,room8,room3); room5.setAusgaenge(room1,room6,room9,nil); room6.setAusgaenge(room2,room7,room10,room5); room7.setAusgaenge(room3,room8,room11,room6); room8.setAusgaenge(room4,nil,room12,room7); room9.setAusgaenge(room5,room10,room13,nil); room10.setAusgaenge(room6,room11,room14,room9); room11.setAusgaenge(room7,room12,room15,room10); room12.setAusgaenge(room8,nil,room16,room11); room13.setAusgaenge(room9,room14,nil,nil); room14.setAusgaenge(room10,room15,nil,room13); room15.setAusgaenge(room11,room16,nil,room14); room16.setAusgaenge(room12,nil,nil,room15); aktuellerRaum:=room1; end; //---Norden-Button--- [color=#ff0000]procedure TForm1.Button1Click(Sender: TObject);[/color] begin if (aktuellerRaum.Norden <> nil) then begin aktuellerRaum:= aktuellerRaum.Norden; [color=#ff0000]Image1.Picture.LoadFromFile(aktuellerRaum.Bild);[/color] [color=#ff0000]Memo1.Lines.Add(aktuellerRaum.Beschreibung);[/color] end; end; //---Osten-Button--- procedure TForm1.Button2Click(Sender: TObject); begin if (aktuellerRaum.Osten <> nil) then begin aktuellerRaum:= aktuellerRaum.Osten; Image1.Picture.LoadFromFile(aktuellerRaum.Bild); Memo1.Lines.Add(aktuellerRaum.Beschreibung); end; end; //---Sueden-Button--- procedure TForm1.Button3Click(Sender: TObject); begin if (aktuellerRaum.Sueden <> nil) then begin aktuellerRaum:= aktuellerRaum.Sueden; Image1.Picture.LoadFromFile(aktuellerRaum.Bild); Memo1.Lines.Add(aktuellerRaum.Beschreibung) end; end; //---Westen-Button--- procedure TForm1.Button4Click(Sender: TObject); begin if (aktuellerRaum.Westen <> nil) then begin aktuellerRaum:= aktuellerRaum.Westen; Image1.Picture.LoadFromFile(aktuellerRaum.Bild); Memo1.Lines.Add(aktuellerRaum.Beschreibung); end; end; end. |
Re: Spiel für Informatik Unterricht!!
Ja was hast du denn da gemacht :shock: ? Du hast bei dem Form-Typen die Prozeduren rausgeschmissen.
Und außerdem nehm einfach den delphi Highlighter, dann lässt es sich leichter lesen. |
Re: Spiel für Informatik Unterricht!!
Du musst die Proceduren mit TForm1 am Anfang natürlich auch deklarieren:
Delphi-Quellcode:
type TForm1 = class(TForm)
procedure FormCreate(Sender: TObject); |
Re: Spiel für Informatik Unterricht!!
ok danke!! der erste fehler ist weg aber habe immer noch den anderen ....
an den stellen wo ich fett markiert hab jetzt kommt bei TForm1 immer undefinierter bezeichner und bei Image1, Memo1 auch und außerdem noch operator oder semikolon fehlt.. [code] //---Norden-Button--- procedure TForm1.Button1Click(Sender: TObject); begin if (aktuellerRaum.Norden <> nil) then begin aktuellerRaum:= aktuellerRaum.Norden; Image1.Picture.LoadFromFile(aktuellerRaum.Bild); Memo1.Lines.Add(aktuellerRaum.Beschreibung); end; end; //---Osten-Button--- procedure TForm1.Button2Click(Sender: TObject); begin if (aktuellerRaum.Osten <> nil) then begin aktuellerRaum:= aktuellerRaum.Osten; Image1.Picture.LoadFromFile(aktuellerRaum.Bild); Memo1.Lines.Add(aktuellerRaum.Beschreibung); end; end; //---Sueden-Button--- procedure TForm1.Button3Click(Sender: TObject); begin if (aktuellerRaum.Sueden <> nil) then begin aktuellerRaum:= aktuellerRaum.Sueden; Image1.Picture.LoadFromFile(aktuellerRaum.Bild); Memo1.Lines.Add(aktuellerRaum.Beschreibung) end; end; //---Westen-Button--- procedure TForm1.Button4Click(Sender: TObject); begin if (aktuellerRaum.Westen <> nil) then begin aktuellerRaum:= aktuellerRaum.Westen; Image1.Picture.LoadFromFile(aktuellerRaum.Bild); Memo1.Lines.Add(aktuellerRaum.Beschreibung); end; end; |
Re: Spiel für Informatik Unterricht!!
Setz den Code doch mal bitte in [delphi] Tags. Und wenn du jeweils die Fehlermeldung kurz dazu schreiben würdest, wäre das auch ganz nützlich.
|
Re: Spiel für Informatik Unterricht!!
Delphi-Quellcode:
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls; type TForm1 = class(TForm) Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton; Memo1: TMemo; Image1: TImage; procedure Button1Click(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; type TRaum=class Beschreibung:String; Bild:String; Norden, Osten, Sueden, Westen:TRaum; procedure setAusgaenge(norden,osten,sueden,westen:TRaum); end; var Form1:TForm1; room1,room2,room3,room4,room5,room6,room7,room8,room9,room10,room11,room12,room13,room14,room15,room16:TRaum; aktuellerRaum:TRaum; implementation {$R *.dfm} procedure TRaum.setAusgaenge(norden,osten,sueden,westen:TRaum); begin self.Norden:= norden; self.Osten:= osten; self.Sueden:= sueden; self.Westen:= westen; end; procedure TForm1.FormCreate(Sender:TObject); begin //---Räume erzeugen--- room1:=TRaum.Create; room2:=TRaum.Create; room3:= TRaum.Create; room4:= TRaum.Create; room5:= TRaum.Create; room6:= TRaum.Create; room7:= TRaum.Create; room8:= TRaum.Create; room9:= TRaum.Create; room10:= TRaum.Create; room11:= TRaum.Create; room12:= TRaum.Create; room13:= TRaum.Create; room14:= TRaum.Create; room15:= TRaum.Create; room16:= TRaum.Create; //---Eigenschaften der Räume--- room1.Beschreibung:='room1'; room1.Bild:=('Bilder/room1.jpg'); room2.Beschreibung:='room2'; room2.Bild:= ('Bilder/room2.jpg'); room3.Beschreibung:='room3'; room3.Bild:= ('Bilder/room3.jpg'); room4.Beschreibung:='room4'; room4.Bild:= ('Bilder/room4.jpg'); room5.Beschreibung:='room5'; room5.Bild:= ('Bilder/room5.jpg'); room6.Beschreibung:='room6'; room6.Bild:= ('Bilder/room6.jpg'); room7.Beschreibung:='room7'; room7.Bild:= ('Bilder/room7.jpg'); room8.Beschreibung:='room8'; room8.Bild:= ('Bilder/room8.jpg'); room9.Beschreibung:='room9'; room9.Bild:= ('Bilder/room9.jpg'); room10.Beschreibung:='room10'; room10.Bild:= ('Bilder/room10.jpg'); room11.Beschreibung:='room11'; room11.Bild:= ('Bilder/room11.jpg'); room12.Beschreibung:='room12'; room12.Bild:= ('Bilder/room12.jpg'); room13.Beschreibung:='room13'; room13.Bild:= ('Bilder/room13.jpg'); room14.Beschreibung:='room14'; room14.Bild:= ('Bilder/room14.jpg'); room15.Beschreibung:='room15'; room15.Bild:= ('Bilder/room15.jpg'); room16.Beschreibung:='room16'; room16.Bild:= ('Bilder/room16.jpg'); //---Ausgänge setzen--- room1.setAusgaenge(nil,room2,room5,nil); room2.setAusgaenge(nil,room3,room6,room1); room3.setAusgaenge(nil,room4,room7,room2); room4.setAusgaenge(nil,nil,room8,room3); room5.setAusgaenge(room1,room6,room9,nil); room6.setAusgaenge(room2,room7,room10,room5); room7.setAusgaenge(room3,room8,room11,room6); room8.setAusgaenge(room4,nil,room12,room7); room9.setAusgaenge(room5,room10,room13,nil); room10.setAusgaenge(room6,room11,room14,room9); room11.setAusgaenge(room7,room12,room15,room10); room12.setAusgaenge(room8,nil,room16,room11); room13.setAusgaenge(room9,room14,nil,nil); room14.setAusgaenge(room10,room15,nil,room13); room15.setAusgaenge(room11,room16,nil,room14); room16.setAusgaenge(room12,nil,nil,room15); aktuellerRaum:=room1; end; //---Norden-Button--- procedure TForm1.Button1Click(Sender: TObject); <------- undefnierter Bezeicher 'Button1.Click' begin if (aktuellerRaum.Norden <> nil) then begin aktuellerRaum:= aktuellerRaum.Norden; Image1.Picture.LoadFromFile(aktuellerRaum.Bild); <------- undefnierter Bezeichner 'Image1' Memo1.Lines.Add(aktuellerRaum.Beschreibung); <------- undefnierter Bezeichner 'Memo1' end; end; //---Osten-Button--- procedure TForm1.Button2Click(Sender: TObject); begin if (aktuellerRaum.Osten <> nil) then begin aktuellerRaum:= aktuellerRaum.Osten; Image1.Picture.LoadFromFile(aktuellerRaum.Bild); Memo1.Lines.Add(aktuellerRaum.Beschreibung); end; end; //---Sueden-Button--- procedure TForm1.Button3Click(Sender: TObject); begin if (aktuellerRaum.Sueden <> nil) then begin aktuellerRaum:= aktuellerRaum.Sueden; Image1.Picture.LoadFromFile(aktuellerRaum.Bild); Memo1.Lines.Add(aktuellerRaum.Beschreibung); end; end; //---Westen-Button--- procedure TForm1.Button4Click(Sender: TObject); begin if (aktuellerRaum.Westen <> nil) then begin aktuellerRaum:= aktuellerRaum.Westen; Image1.Picture.LoadFromFile(aktuellerRaum.Bild); Memo1.Lines.Add(aktuellerRaum.Beschreibung); end; end; end. |
Re: Spiel für Informatik Unterricht!!
Seltsam...
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:48 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz