verwendung von Typen

Übersicht BlitzBasic FAQ und Tutorials

Neue Antwort erstellen

 

2paul

Betreff: verwendung von Typen

BeitragSo, Aug 15, 2004 17:41
Antworten mit Zitat
Benutzer-Profile anzeigen
ich sag das hier einfach mal so. weil ich denke, dass sich viele um das thema drücken,
da es auf der ersten blick aufwendiger und ungewohnt ist.

typen sind in grösseren projekten absolut notwenig.
ein typ ist eine liste von objekten der gleichen art.
nehmen wir monster...
ein monster hat viele variablen, es hat nen namen, ne nummer, ne kraft, ne geschwindigkeit, usw...
solche variablen-arten sollten immer in typen zusammengefasst werden.

ein weiterer vorteil ist der variablen-name,
ich kann ihn in verschiedenen typen gleich benennen.
monster, spieler, kugel alle haben eine geschwindigkeit,
also is bei mir geschwindigkeit -> "geschw", fertig

machen wir mal nen beispiel :

schüsse :

wir unterscheiden 3 stufen:
deklaration, entstehung, flug

deklaration
###########

Code: [AUSKLAPPEN]
Type schuss

das wichtigste ist ja im prinzip das handle,
das, was alle geometischen informationen in sich trägt.
wir unterscheiden keine sichtbare und unsichtbare schüsse
wir nehmen einen unsichtbaren, also ein einfaches pivot-handle,
bei sichtbaren bräuchte man ein sprite-handle.

Code: [AUSKLAPPEN]
Field piv


so was gibts denn noch alles ???

Code: [AUSKLAPPEN]
Field schaden
Field geschw
Field radius

belassen wir es mal dabei

Code: [AUSKLAPPEN]
End Type


entstehung
##########

irgendwann ballert dann ja mal einer im spiel, sagen wir spielerA

Code: [AUSKLAPPEN]
s.schuss = New schuss


das wichtigste natürlich, das pivot-handle,

Code: [AUSKLAPPEN]
s\piv = CreatePivot()


wenn es so gemacht wird, entsteht es bei 0,0,0.
also machen wir es besser so

Code: [AUSKLAPPEN]
s\piv = CreatePivot(spielerA_piv)


dann ist der schuss gleich an der richtigen stelle und hat die richtige ausrichtung
dann geb ich dem schuss noch alle anderen werte mit auf dem weg

Code: [AUSKLAPPEN]
s\schaden = 10
s\geschw = 100
s\radius = 5

und das war´s, im prinzip schon

flug
####

so jetzt werden ja viele schüsse zu gleichen zeit abgegen, manche sind noch der luft, usw...
also ein wahres schussdurcheinader in unserem level, alle haben verschiedene werte
und position und ausrichtung...wie krieg ich die bloss alle bewegt ???

lass einfach die komplette liste durchsuchen und bewege alle in z-richtung,
z is immer nach vorne, oder man hat sich irgendwo verhauen Smile

Code: [AUSKLAPPEN]
For s.schuss = Each schuss
 MoveEntity s\piv,0,0,s\geschw
Next

finish

Nochmal alle Codes zusammen:
Code: [AUSKLAPPEN]
;deklaration
Type schuss
 Field piv
 Field schaden
 Field geschw
 Field radius
End Type

;erstellung
s.schuss = New schuss
 s\piv = CreatePivot(spielerA_piv)
 s\schaden = 10
 s\geschw = 100
 s\radius = 5

;abarbeitung
For s.schuss = Each schuss
 MoveEntity s\piv,0,0,s\geschw
Next

Lord_Vader

BeitragSo, Aug 15, 2004 18:58
Antworten mit Zitat
Benutzer-Profile anzeigen
Typen? Und was is mit Tussies? ^^

Es heisst Types. Ok aber trotzdem gut Smile
 

denial

BeitragSo, Aug 15, 2004 20:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Naja an Ausdrucksart und der Darstellung könnte man noch ein wenig feilen Wink
Ohne den UBB-Code-Tag wirkts n bissel unübersichtlich.

Mr.Keks

BeitragSo, Aug 15, 2004 21:28
Antworten mit Zitat
Benutzer-Profile anzeigen
habe mal codetags eingefügt.

übrigens:
http://www.blitzbase.de/tutorials/shadow_1.htm
bzw http://www.blitzbase.de/tutorials/shadow_2.htm

...
(und leute, benutzt types... die sind sooooo cool! außerdem werdet ihr in bmax damit noch mal dreimal so viel anstellen können... mindestens Smile)
MrKeks.net

Neue Antwort erstellen


Übersicht BlitzBasic FAQ und Tutorials

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group