AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Hilfe mit Textadventure

Ein Thema von MW28 · begonnen am 8. Jan 2015 · letzter Beitrag vom 9. Jan 2015
 
MW28

Registriert seit: 8. Jan 2015
5 Beiträge
 
#9

AW: Hilfe mit Textadventure

  Alt 9. Jan 2015, 12:51
Vielen Dank für die Hilfe. Ich hab den Code jetzt auf das hier verändert:
Delphi-Quellcode:
unit DelphiSpiel;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, URaum, ExtCtrls, StdCtrls, JPEG ;

type
  TForm1 = class(TForm)
    Memo1: TMemo;
    Edit1: TEdit;
    Button1: TButton;
    Image1: TImage;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    
  public

  end;

var
  Form1: TForm1;
  info_aktuellerRaum : string ;
  info_startRaum : string ;
  info_raum1 : string ;
  info_raum2 : string ;
  info_raum3 : string ;
  aktuellerRaum , startRaum , raum1 , raum2 , raum3 : TRaum ;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
image1.canvas.create ;

startRaum := TRaum.Create ;
raum1 := TRaum.Create ;
raum2 := TRaum.Create ;
raum3 := TRaum.Create ;
aktuellerRaum := TRaum.Create ;

startRaum.setAusgang(raum1,nil,nil,nil,'Dies ist der Start. Hier geht es nur in eine Richtung');
raum1.setAusgang(raum2,nil,raum3,nil,'dies ist raum1');
raum2.setAusgang(nil,raum1,nil,nil,'dies ist raum2');
raum3.setAusgang(nil,nil,nil,raum1,'dies ist raum3');
aktuellerRaum.setAusgang(nil,nil,nil,nil,'fehler');

info_startRaum := 'Dies ist der Start. Hier geht es nur in eine Richtung' ;
info_raum1 := 'dies ist raum1' ;
info_raum2 := 'dies ist raum2' ;
info_raum3 := 'dies ist raum3' ;
info_aktuellerRaum := 'fehler'  ;

aktuellerRaum := startRaum ;
info_aktuellerRaum := info_startRaum ;

Memo1.Clear ;
Memo1.Lines.add(aktuellerRaum.Finfo) ;
if aktuellerRaum.Fnorth <> nil then Memo1.Lines.add('---->Norden') ;
if aktuellerRaum.Fsouth <> nil then Memo1.Lines.add('---->Süden') ;
if aktuellerRaum.Feast <> nil then Memo1.Lines.add('---->Osten') ;
if aktuellerRaum.Fwest <> nil then Memo1.Lines.add('---->Westen') ;
if startRaum.Fnorth = nil then Memo1.Lines.add('attribute wurden nicht richtig festgelegt');


end;

procedure TForm1.Button1Click(Sender: TObject);
var eingabe : string;
begin
eingabe := edit1.Text ;
if (eingabe = 'Norden')and (aktuellerRaum.Fnorth <> nil) then aktuellerRaum := aktuellerRaum.Fnorth ;
if (eingabe = 'Süden')and (aktuellerRaum.Fsouth <> nil) then aktuellerRaum := aktuellerRaum.Fsouth ;
if (eingabe = 'Osten')and (aktuellerRaum.Feast <> nil) then aktuellerRaum := aktuellerRaum.Feast ;
if (eingabe = 'Westen')and (aktuellerRaum.Fwest <> nil) then aktuellerRaum := aktuellerRaum.Fwest ;

Memo1.clear ;
Memo1.Lines.add(aktuellerRaum.Finfo);

if aktuellerRaum.Fnorth <> nil then Memo1.Lines.add('---->Norden') ;
if aktuellerRaum.Fsouth <> nil then Memo1.Lines.add('---->Süden') ;
if aktuellerRaum.Feast <> nil then Memo1.Lines.add('---->Osten') ;
if aktuellerRaum.Fwest <> nil then Memo1.Lines.add('---->Westen') ;

end;

end.
Delphi-Quellcode:
unit URaum;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls, JPEG;

type
  TRaum = class
   Fnorth,Fsouth,Feast,Fwest : TRaum;
   Finfo : string;
   procedure setAusgang(Anorth,Asouth,Aeast,Awest: TRaum; Ainfo :string);
   Constructor Create;

   private

   public

end;

implementation
Constructor TRaum.Create;
begin

end;

procedure TRaum.setAusgang(Anorth,Asouth,Aeast,Awest : TRaum ; Ainfo :string) ;
begin
self.Fnorth := Anorth;
self.Fsouth := Asouth;
self.Feast := Aeast;
self.Fwest := Awest;
self.Finfo := Ainfo;
end;
end.
Funktioniert gut soweit. Ich komm vermutlich jetzt wieder alleine weiter. Nochmal vielen Dank.
  Mit Zitat antworten Zitat
 


Forumregeln

Es 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

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:08 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