In einem TYPE bewegen

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

Schoppy

Betreff: In einem TYPE bewegen

BeitragMi, Apr 27, 2005 17:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi, bin jetzt von DIMs aud TYPES umgestiegen und habe mal eine Frage:

Erst mal der Code:

Code: [AUSKLAPPEN]

Type Fahrzeuge
Field ID%
Filed Name$
Field Pos_x#
Field Pos_y#
Field Pos_z#
End Type

Type Gebaude
Field ID%
Filed Name$
Field Pos_x#
Field Pos_y#
Field Pos_z#
End Type


Das Spiel startet mit einem Gebäude.
Code: [AUSKLAPPEN]


Hauptbasis.Gebaude = New Gebaude
Hauptbasis\ID% = ;ID vom Mesh
Hauptbasis\Name$ = "Hauptbasis"
Hauptbasis\Pos_x# = 600
Hauptbasis\Pos_y# =  2
Hauptbasis\Pos_z# = 320


Wenn ich dieses Anklicke wird deren ID in die Variable Ausgewählte Einheiten Gespeichert.
Code: [AUSKLAPPEN]


For Hauptbasis.Gebaude = Each Gebaude
If Hauptbasis\ID% = Ausgewaehlte_Einheiten(1,0) Then
DrawImage Bagger, 316,593
...
...
;Jetzt ein Mesh laden, dieses erspare ich mir hier als Code
;und die daten in dem Type speichern

Bagger.Fahrzeuge = New Fahrzeuge
Bagger\ID% = ;ID vom Mesh
Bagger\Name$ = "Schaufelbagger"
Bagger\Pos_x# = 100
Bagger\Pos_y# =  2
Bagger\Pos_z# = 60


Next


Soweit so gut.
Wenn ich jetzt Das Image anklike erstellt er einen Bagger.
Mit diesem Bagger will ich jetzt ein 2tes Gebäude erstellen


Code: [AUSKLAPPEN]


For Bagger.Fahrzeuge = Each Fahrzeuge
If Bagger\ID% = Ausgewaehlte_Einheiten(1,0) Then
DrawImage neuesGebaude, 316,593
...
...
...
;Jetzt ein Mesh laden, dieses erspare ich mir hier als Code
;und die daten in dem Type speichern

Postamt.Gebaude = New Gebaude
Postamt\ID% = ;ID vom Mesh
Postamt\Name$ = "Postamt"
Postamt\Pos_x# = 300
Postamt\Pos_y# =  2
Postamt\Pos_z# = 500

Next


Funktioniert auch alles.
Sobald ich jetzt das Postamt anklicke, kann ich wieder nen Bagger erstellen, wie in der Hauptbasis.

Ich nehme mal an das liegt daran, das ich ja oben suche:
For Hauptbasis.Gebaude Each Gebaude

Bedeutet das das er den gesamten Type Gebaude durchsucht ?

Wie kann ich nur in:
Postamt.Gebaude
bleiben ?

Ich hoffe hier blickt einer durch und versteht mein Problem.
Vielleicht kann mir einer helfen

Danke

BladeRunner

Moderator

BeitragMi, Apr 27, 2005 17:24
Antworten mit Zitat
Benutzer-Profile anzeigen
Du darfst den Identifier nicht mit dem Inhalt des Types verwechseln. Wie du selbst schon festgestellt hast durchläuft die Gebäudeschleife alle erstellten Gebäude. Wenn du also etwas abhängig vom Typ tun willst, prüf innerhalb der Schleife auf den Gebäudetyp. (Du könntest ja zB auf den Namen testen, der ja eh schon als String drinne ist. Oder du führst ein weiteres Field gebtyp ein. 1= Rathaus ;2 = Kino, 3 = Postamt etc.

Bislang könntest du deine Types sogar noch zusamenfassen, da sie beide den selben Inhalt haben. Und dann per name oder typ-field unterscheiden obs Gebäude oder Fahrzeug ist Wink
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

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group