Autor Beitrag
B3v3R
Hält's aus hier
Beiträge: 5



BeitragVerfasst: Sa 19.09.09 14:28 
ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
unit URaumMan;

interface

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

type
  TRaumMan = class(TObject)
   public
    Rooms : array of TRaum;

    FUNCTION start():Boolean;
    FUNCTION set_num(number:integer):Boolean;
    FUNCTION go_to(where:Char):Boolean;
    FUNCTION ret_desc():string;
    PROCEDURE free_all();
   private
    akt : Traum;
  END;


implementation


PROCEDURE TRaumMan.free_all();
VAR iter : INTEGER;
BEGIN
  iter := 0;
  while Rooms[iter]<>nil DO BEGIN Rooms[iter].Destroy(); inc(iter); END;
END;


//Raumwechsel durchführen und bestätigen
FUNCTION TRaumMan.go_to(where:Char):Boolean;
BEGIN
//  result:=false;
  IF where = 'n' then BEGIN
    IF akt.N <> nil then BEGIN
      akt:=akt.N;
      result:=true;
     END;
   END
  ELSE IF where = 'e' then BEGIN
    IF akt.E <> nil then BEGIN
      akt:=akt.E;
      result:=true;
     END;
   END
  ELSE IF where = 's' then BEGIN
    IF akt.S <> nil then BEGIN
      akt:=akt.S;
      result:=true;
     END;
   END
  ELSE IF where = 'w' then BEGIN
    IF akt.W <> nil then BEGIN
      akt:=akt.W;
      result:=true;
     END;
   END;

END;

FUNCTION TRaumMan.set_num(number:integer):boolean;
BEGIN
setlength(Rooms,number+1);
END;

FUNCTION TRaumMan.start():Boolean;
BEGIN
  akt:=Rooms[0];
END;



FUNCTION TRaumMan.ret_desc():string;
BEGIN
  result:akt.desc;
END;


end.


jup an markierter stelle tritt eine acces violation auf... hat da grob jemand eine ahnung, woran das liegen könnte?

das objekt "akt" ist vorhanden, und hat auch entsprechende eigenschaften ('desc') trotzdem kann ich nicht darauf zugreifen :/

danke im vorraus für eventuelle vorschläge^^
platzwart
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 1054
Erhaltene Danke: 78

Win 7, Ubuntu 9.10
Delphi 2007 Pro, C++, Qt
BeitragVerfasst: Sa 19.09.09 15:09 
entweder ist akt oder desc nicht vorhanden... muss da nicht eh ein ":=" anstatt einem ":" hin?

_________________
Wissenschaft schafft Wissenschaft, denn Wissenschaft ist Wissenschaft, die mit Wissen und Schaffen Wissen schafft. (myself)
B3v3R Threadstarter
Hält's aus hier
Beiträge: 5



BeitragVerfasst: Sa 19.09.09 15:16 
gnaaaaah -.-

das ':=' sollte es gewesen sein... ja -.-
und ich dachte soetwas sagt einem der compiler :/
naja danke trotzdem :)