Wie soll ich das anstellen???

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

 

Mr Hopp

Betreff: Wie soll ich das anstellen???

BeitragSa, Sep 16, 2006 22:02
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi! Very Happy

Ich progge eigentlich schon recht lange und bin in Sachen 2D erfahren, ABER iwi hab ich ne Denksperre....

Es geht mir darum, dass ich ein Schienennetz in der GTA-Perspektive habe (also von oben drauf gucken). Nun habe ich überlegt, das ganze in ein Dim-Feld zu packen. Allerdings hat das den Nachteil, dass ich nur eine einzige Information speichern kann (Also RPG-mäßig nur die Art des Objektes^^) Nun ist aber eine Weiche breiter als eine normale Schiene. Wie kann der Zug nun erkennen, ob er sich an einer Weiche befindet, und wohin diese führt, und wo lang er fahren muss? Confused

Ich hoffe, mir kann jemand weiterhelfen, danke schonmal

Schranz0r

BeitragSa, Sep 16, 2006 22:11
Antworten mit Zitat
Benutzer-Profile anzeigen
Hmm

im Dim würde ich es mal so versuchen:

Jeder weiche einen Wert zuweisen:

z.B so.: WeicheRechts = 1 usw

dann prüfen ob Zug auf Feld 1 ist dann schauen wie die weiche steht:

Grade = False
Rechts = True


dann wenn rechts ist den Zug sagen nach X fahren

das ist jetzt mal so meine überlegung Very Happy
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!HAUPTSACH et kost VIEL!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

PSY

BeitragSa, Sep 16, 2006 22:19
Antworten mit Zitat
Benutzer-Profile anzeigen
hoi,

das schienennetz (d.h. der level an sich) lässt sich ja problemlos in ein dimfeld packen.
dimfelder können übrigens auch mehr als 3 dimensionen haben...davon rate ich aber ab, ausser in einzelfällen, da bei mehr als 3 dimensionen die übersichtlichkeit den bach runter geht und ausserdem fressen grosse dims mehr ram als es den anschein hat.
ein dimfeld mit 3 dimensionen und jeweils 50 indizes (dim(49,49,49)), wo jeweils ne integerzahl gespeichert wird, frisst gleich mal 50*50*50*4byte=500.000 byte = fast nen halbes MB ^^

was du benutzen könntest, wären z.b. types (siehe onlinehilfe)

oder du machst es so (wir gehn mal davon aus dass der level in nen 2dimensionalen dimfeld abgelegt ist und die weichen auch)

Code: [AUSKLAPPEN]
if level(x,y)=weiche and x=zug_x and y=zug_y
  if weiche(x,y) = links then zugfaehrtlinks() else zugfaehrtrechts()
endif


oder du machst es über collisionen...d.h. sobald das zugimage auf nen weichenimage trifft, überlegst du dir welche schiene er denn nun nehmen soll...

es gibt sicher noch viele andere möglichkeiten...vielleicht hast du ja nun den richtigen denkanstoss Smile


l8er,
psy
 

Mr Hopp

BeitragSa, Sep 16, 2006 22:58
Antworten mit Zitat
Benutzer-Profile anzeigen
mhh.........ich denke, ich hab ne Idee Idea

Danke an euch beide Smile

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group