|
Registriert seit: 16. Dez 2010 15 Beiträge |
#1
Hallo erstmal
![]() Ich wusste nicht genau, unter welchem Bereich ich mein Problem posten soll, daher schon mal im voraus eine Entschuldigung von mir, falls das hier der falsche Ort dafür sein sollte. Ich sollte für den Unterricht ein Textadventure erstellen. Das Problem dabei ist jetzt ,dass ich das noch nie gemacht habe und jetzt anhand der vom Lehrer gegebenen Infos versucht habe, eins auf die Beine zu stellen. Ich bin nun soweit ich das beurteilen kann durch, allerdings bekomme ich ständig eine Fehlermeldung sobald ich das Programm starten will . Ich habe schon gesucht und gesucht, aber ich finde den Fehler einfach nicht bzw ich weiß auch nicht, ob vielleicht etwas fehlt und das ganze deswegen nicht läuft. Es wäre wirklich nett, wenn mir jemand sagen könnte, wo mein Fehler liegt, damit ich ihn beheben kann ( Abgabe ist nämlich leider schon in ein paar Tagen und ich möchte nur ungern etwas abgeben,was nicht funktioniert ). Hier mein "Text" ( Ich hoffe, er ist nicht zu lang :/ ): __________________________________________________ ___________________________
Delphi-Quellcode:
__________________________________________________ __
unit Schulprojektbearbeitet;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls, jpeg; type TRaum = class Beschreibung : string; FotoReferenz : String; Gegenstand : String; Norden, Sueden, Westen, Osten : TRaum; Button2: TButton; Button3: TButton; Button4: TButton; Button5: TButton; procedure setAusgaenge (norden, sueden, westen, osten, hoch, runter : TRaum); end; TRucksack = Class Item : Array [1..5] of String; procedure hinzufuegen (S:String); function ausgeben : String; Function voll: boolean; end; TForm2 = class(TForm) Edit1: TEdit; Button1: TButton; Memo1: TMemo; Image1: TImage; procedure Button1Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button5Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Button3Click(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form2: TForm2; aktuellerRaum: TRaum; Garten, Flur, Fluroben, Flur2, Flur3, Maggiesraum, Lisasraum, Bartszimmer, Elternschlafzimmer, Badezimmer, Badezimmer2, Kueche, TVRoom, Esszimmer, Wohnzimmer, Eingang : TRaum; Norden, Sueden, Westen, Osten: TRaum; Rucksack: TRucksack; implementation begin {$R *.dfm} procedure TRucksack.hinzufuegen ( S:String); var i : integer ; begin i := 1; while (i <= 5) do begin if (self.item[i]=S) then break else if self.item[i]= " then begin self.item[i] = s; break end; inc(i); end; end; function TRucksack.ausgeben : string; var i: integer; begin result := " ; i:=1; while (i <=5) do begin if(self.item[i] = ") then break else result := result + self.item[i] + ','; inc(i); end; end; function TRucksack.voll : boolean; var i, j : integer ; begin result := false; j:= 0; for i := 1 to 5 do if (self.item[i]<> ") then inc(j); if(j=5) then result := true; end; procedure TForm2.Button2Click(Sender: TObject); begin Raumwechsel('Norden'); end; procedure TForm2.FormCreate(Sender: TObject); begin Rucksack:=TRucksack.create memo1.lines.add('Herzlich Willkommen in der Welt der Simpsons'); Garten := TRaum.Create; Eingang := TRaum.Create; Flur := TRaum.Create; Fluroben := TRaum.Create; Kueche := TRaum.Create; TVRoom := TRaum.Create; Wohnzimmer := TRaum.Create; Esszimmer := TRaum.Create; Flur2 := TRaum.create; Flur3 := TRaum.Create; Maggiesraum := TRaum.Create; Lisasraum := TRaum.Create; Bartszimmer :=TRaum.Create; Badezimmer := TRaum.Create; Badezimmer2 := TRaum.create; Elternschlafzimmer :=TRaum.Create; Garten.Beschreibung :=('Nun stehen Sie vor dem Haus der Simpsons.Treten Sie doch ein'); Eingang.Beschreibung :=('Wie Sie sehen werden Sie bereits erwartet'); Flur.Beschreibung :=('Sie stehen nun im Flur.Wohin wollen Sie als nächstes?'); Fluroben.Beschreibung :=('Sie haben den ersten Stock des Hauses betreten'); Kueche.Beschreibung :=('Haben Sie Hunger? Dann sind Sie hier genau richtig, denn Sie sind in der Küche gelandet'); Esszimmer.Beschreibung :=('Sie haben das Esszimmer betreten'); Wohnzimmer.Beschreibung := ('Sie befinden sich nun im gemütlichstem Zimmer des Hauses , dem Wohnzimmer'); TVRoom.Beschreibung :=('Erkennen Sie dieses Zimmer vielleicht wieder? Es ist wohl das bekannteste der Simpsonsfamilie'); Fluroben.Beschreibung :=('Nun stehen Sie im ersten Stock. Wohin soll es nun gehen?'); Flur2.Beschreibung :=('Nun stehen sie weiter Rechts im Flur und haben die Wahl zwischen dem Badezimmer und dem Elternschlafzimmer'); Flur3.Beschreibung :=('Sie haben sich dazu entschieden, weiter links in den Flur hinein zu gehen und haben nun die Wahl zwischen Barts Zimmer und dem zweiten Badezimmer') Bartszimmer.Beschreibung := ('Hier herrscht das Chaos.Sind Sie sicher ,dass sie hier hin wollten?'); Lisaszimmer.Beschreibung :=('Lust auf eine Runde Saxophon? Lisas Zimmer ist perfekt dafür!'); Elternschlafzimmer.Beschreibung := ('Hier im Elternschlafzimmer haben Sie ja eigentlich nichts zu suchen , aber wir drücken mal ein Auge zu'); Badezimmer.Beschreibung := ('Nach langem Suchen haben sie endlich das erste der zwei Badezimmer gefunden'); Badezimmer2.Beschreibung := ('Toilette frei, hier kommt das zweite Badezimmer'); Maggieszimmer.Beschreibung := ('Achtung, ein freilaufendes Baby, herumliegende Schnuller und Legowurfattacken gehören hier zur Standarteinrichtung'); Garten.setAusgaenge(Eingang, nil, nil, nil, nil, nil); Eingang.setAusgaenge(Flur, Garten, nil, nil, nil, nil); Flur.setAusgaenge(Kueche, Eingang, Wohnzimmer, Esszimmer ,Fluroben ,nil); Wohnzimmer.setAusgaenge(TVRoom, nil, nil, Flur, nil, nil); TVRoom.setAusgaenge(nil, Wohnzimmer, nil, Kueche, nil, nil); Kueche.setAusgaenge nil, Esszimmer, TVRoom, nil, nil, nil); Esszimmer.setAusgaenge(Kueche, nil, Flur, nil, nil, nil); Fluroben.setAusgaenge( Maggiesraum, Lisasraum, Flur2, Flur3, nil, Flur); Flur2.setAusgaenge(Badezimmer, Elternschlafzimmer, Fluroben, nil, nil, nil); Flur3.setAusgaenge(Badezimmer2, Bartszimmer, nil, Fluroben, nil, nil); Flur.Gegenstand:= ' '; Fluroben.Gegenstand:= ' '; Flur2.Gegenstand:= ' '; Flur3.Gegenstand:= ' '; Maggiesraum.Gegenstand:= 'blauer Schnuller'; Lisasraum.Gegenstand:= 'Saxophon'; Bartszimmer.Gegenstand:= 'Krusty-der-Clown-Aufziehpuppe'; Elternschlafzimmer.Gegenstand:= ' '; Badezimmer.Gegenstand := ' '; Badezimmer2.Gegenstand := ' '; Garten.Gegenstand := ' '; Eingang.Gegenstand := ' '; Kueche.Gegenstand := ' Mit rosa Glassur überzogener Donut'; TVRoom.Gegenstand := 'Duffbierdose'; Esszimmer.Gegenstand := ' '; Kueche.Gegenstand := ' '; Wohnzimmer. Gegenstand := ' '; aktuellerRaum := Garten ; Garten.Fotoreferenz := 'Bilder/Klassenraum.jpg'; Eingang.Fotoreferenz := 'Bilder/Eingang.jpg'; Flur.Fotoreferenz := 'Bilder/Flur.jpg'; Kueche.Fotoreferenz := 'Bilder/Kueche.jpg'; Esszimmer.Fotoreferenz := 'Bilder/Esszimmer.jpg'; TVRoom.Fotoreferenz := 'Bilder/TVRoom.jpg'; Wohnzimmer.Fotoreferenz := 'Bilder/Wohnzimmer.jpg'; Maggiesraum.Fotoreferenz := 'Bilder/Maggiesraum.jpg'; Lisasraum.Fotoreferenz := 'Bilder/Lisasraum.jpg'; Elternschlafzimmer.Fotoreferenz := 'Bilder/Elternschlafzimmer.jpg'; Badezimmer.Fotoreferenz := 'Bilder/Badezimmer1.jpg' Bartszimmer.Fotoreferenz := 'Bilder/Bartszimmer.jpg'; Badezimmer2.Fotoreferenz :='Bilder/Badezimmer2.jpg'; Image1.Picture.LoadFromFile(aktueller.Raum.Fotorefetenz); end; procedure TRaum.setAusgaenge (norden, sueden, westen, osten : TRaum); begin self.Norden := norden; self.Sueden := sueden; self.westen := westen; self.osten := osten; end; procedure TForm2.Raumwechsel (Eingabe:String); begin Memo1.clear; Rucksack.hinzufuegen(aktuellerRaum.Gegenstand); Eingabe := Edit1.text; if (Eingabe = 'Norden') and (aktuellerRaum.Norden <> nil) then aktuellerRaum := aktuellerRaum.Norden; if (Eingabe = 'Sueden') and (aktuellerRaum.Sueden <> nil) then aktuellerRaum := aktuellerRaum.Sueden; if (Eingabe = 'Westen') and (aktuellerRaum.Westen <> nil) then aktuellerRaum := aktuellerRaum.Westen; if (Eingabe = 'Osten') and (aktuellerRaum.Osten <> nil) then aktuellerRaum := aktuellerRaum.Osten; Memo1.Lines.add(aktuellerRaum.Beschreibung); Memo1.Lines.add(' '); Memo1.linesadd('Im Rucksack enthalten:' + Rucksack.ausgeben); if Rucksack.voll then Memo1.lines.add('Glückwunsch, Sie haben alle Gegenstände gefunden'); Memo1.lines.add(' '); Memo1.Lines.add('Wählen Sie die gewünchte Richtung in die Sie gehen möchten'); if aktuellerRaum.Norden <> nil then memo1.lines.add('--> Norden'); if aktuellerRaum.Sueden <> nil then memo1.Lines.add('--> Sueden'); if aktuellerRaum.Westen <> nil then memo1.Lines.add('--> Westen'); if aktuellerRaum.Osten <> nil then memo1.lines.add ('--> Osten'); end; procedure TForm2.Button3Click(Sender: TObject); begin Raumwechsel('Osten'); end; procedure TForm2.Button4Click(Sender: TObject); begin Raumwechsel('Westen'); end; procedure TForm2.Button5Click(Sender: TObject); begin Raumwechsel('Sueden'); end; procedure TForm2.Button1Click(Sender: TObject); var Eingabe : String; begin aktuellerRaum := Garten; memo1.clear; Eingabe := Edit1.text; if (Eingabe = 'Norden') and (aktuellerRaum.Norden <> nil) then aktuellerRaum := aktuellerRaum.Norden; if (Eingabe = 'Sueden') and (aktuellerRaum.Sueden <> nil) then aktuellerRaum := aktuellerRaum.Sueden; if (Eingabe = 'Westen') and (aktuellerRaum.Westen <> nil) then aktuellerRaum := aktuellerRaum.Westen; if (Eingabe = 'Osten') and (aktuellerRaum.Osten <> nil) then aktuellerRaum := aktuellerRaum.Osten; Memo1.Lines.add(aktuellerRaum.Beschreibung); if aktuellerRaum.Norden <> nil then memo1.lines.add('--> Norden'); if aktuellerRaum.Sueden <> nil then memo1.Lines.add('--> Sueden'); if aktuellerRaum.Westen <> nil then memo1.Lines.add('--> Westen'); if aktuellerRaum.Osten <> nil then memo1.lines.add ('--> Osten'); Memo1.Lines.add(aktuellerRaum.Beschreibung); end; end. Wenn Ihr irgendwelche Fehler findet, bitte bitte sagt Bescheid ! Danke Schön schon einmal im Voraus (: Geändert von Gragas (21. Dez 2010 um 00:52 Uhr) |
![]() |
Ansicht |
![]() |
![]() |
![]() |
ForumregelnEs ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.
BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus. Trackbacks are an
Pingbacks are an
Refbacks are aus
|
|
Nützliche Links |
Heutige Beiträge |
Sitemap |
Suchen |
Code-Library |
Wer ist online |
Alle Foren als gelesen markieren |
Gehe zu... |
LinkBack |
![]() |
![]() |