Verschachtelte Types?

Übersicht BlitzBasic Allgemein

Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.

derAtomkeks

ehemals "Sethus"

Betreff: Verschachtelte Types?

BeitragMo, Okt 09, 2006 7:45
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi @ all, ich hab ein Problem, da mein Rechner viele Programme nicht mehr ausführt musste ich meinen Leveleditor selbst programmieren.
Ich hab schon viel geschafft, aber jetzt möchte ich außer normalen modellen, die man sehen kann auch noch Trigger und Touch Fields usw. machen. Das wollte ich mit verschachtelten Types, etwa so machen:

Code: [AUSKLAPPEN]

Type Trigger
   Field Delay1, Trigger1$
   Field Delay2, Trigger2$
   Field Delay3, Trigger3$
   Field Delay4, Trigger4$
   Field Delay5, Trigger5$
   Field Delay6, Trigger6$
   Field Delay7, Trigger7$
   Field Delay8, Trigger8$
   Field Delay9, Trigger9$
   Field Delay10, Trigger10$
End Type

Type Model
   Field x,y,z
   Field Model
   Field typ
   Field name$
   Field tr.Trigger
   Field ACTIVE
End Type
...
Model.Model = New Model
Model\Model = CopyEntity(M)
Model\x = pX
Model\y = pY
Model\z = pZ
PositionEntity Model\Model,Model\x,Model\y,Model\z
Model\tr.Trigger = New Trigger


Aber dann will ich etwas davon ausgeben:

Code: [AUSKLAPPEN]

If mtyp = 2
Print
Print "1: " + Model\tr\Trigger1$
Print "Q: " + Model\tr\Delay1
Print "2: " + Model\tr\Trigger2$
Print "W: " + Model\tr\Delay2
Print "3: " + Model\tr\Trigger3$
...


Aber da kommt beim Print ein Fehler raus: Variable must be a Type!
Was habe ich falsch gemacht?

Rone

BeitragMo, Okt 09, 2006 8:24
Antworten mit Zitat
Benutzer-Profile anzeigen
moin,
du hast den trigger nicht instantiiert ... probier mal:
Code: [AUSKLAPPEN]

Model.Model = New Model
Model\tr = New Trigger

...dann gehts.
mfg

derAtomkeks

ehemals "Sethus"

BeitragMo, Okt 09, 2006 8:26
Antworten mit Zitat
Benutzer-Profile anzeigen
hab ich doch da gemacht: in der letzten zeile des ersten Code Blocks. Model\tr.trigger = new trigger Wink

derAtomkeks

ehemals "Sethus"

BeitragMo, Okt 09, 2006 8:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habs jetzt auch so versucht wie du es geschrieben hast, hat aber auch nicht funktioniert. Ich muss vielleicht auch dazu sagen dass der erste und der zweite Codeblock verschiedene Dateien sind.

derAtomkeks

ehemals "Sethus"

BeitragMo, Okt 09, 2006 9:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Drücke ich mich falsch aus, oder weis keiner mehr was darüber oder muss ich einfach mehr Geduld haben?

BladeRunner

Moderator

BeitragMo, Okt 09, 2006 9:35
Antworten mit Zitat
Benutzer-Profile anzeigen
~GESCHLOSSEN~


Triplepost (und letzterzeit gab ich im Forum mehrfach bekannt dass dies NICHT gewünscht ist), und noch dazu von einer rechten Ungeduld (sprich: der letzte Post war dermassen unnötig).
Bitte nutz in Zukunft den Editbutton.
Schau Dir an welche Codezeile er markiert, und geh die einzelnen Bestandteile durch ob sie deklariert sind.
Alternativ fass mal alles in einer Datei zusammen und schau ob es dann läuft.

EDIT: ab davon läuft dein code bei mir ohne Probleme.
Was ich als kritisch einstufen würde ist die Tatsache dass Du ein field in deinem Type wie den Type selber nennst, das riecht nach Verwechslung.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group