Types auf Colision prüfen

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

ToeB

Betreff: Types auf Colision prüfen

BeitragSa, März 03, 2007 11:12
Antworten mit Zitat
Benutzer-Profile anzeigen
Wie mach ich das, das wenn ich z.b. 3 Type-Einträge habe, dass ich die untereinander auf Collision prüfe ?
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!

Rallimen

Sieger des 30-EUR-Wettbewerbs

BeitragSa, März 03, 2007 11:31
Antworten mit Zitat
Benutzer-Profile anzeigen
Die einfachste mit 2 For Next Schleifen.
Es spielt keine Rolle wie viele es sind.
Code: [AUSKLAPPEN]
For a1.TT = Each TT
    For a2.TT = Each TT
        If a1.TT <> a2.TT Then
        ;If Colli....a1.....a2 ..Then
        EndIf
    Next
Next
[BB2D | BB3D | BB+]

ToeB

BeitragSa, März 03, 2007 11:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Vil. hab ich ja komish erklärt, aber das meinte ich net...

Code: [AUSKLAPPEN]

Graphics 800,600,16,1

Global backGround = CreateImage(800,600)
SetBuffer ImageBuffer(backGround)
For i = 1 To 255
Color 0,0,i*5
Rect 1,i*20,800,20
Next

Color 255,255,255

SetBuffer BackBuffer()

AppTitle "Schneefall - Simulator"

SeedRnd MilliSecs()

Dim HideX(10)
Dim HideY(10)

For i = 1 To 10
HideX(i) = Rand(600)
HideY(i) = Rand(400)
Next

Type s
Field x#,y#,ox#,oy#
Field s
Field ri
Field gr
Field alt
Field fang
End Type

Global s.s

FlushKeys()

Repeat

DrawImage BackGround,1,1


s.s = New s
s\x = Rand(800)
s\s = Rand(1,2)
s\ri= Rand(-1,1)
s\gr = Rand(5,10)
s\y = (-s\gr)-5
s\alt = MilliSecs()
s\fang = False

For s.s = Each s
Color s\gr*100,s\gr*100,s\gr*100
Oval s\x,s\y,s\gr,s\gr
If s\alt <= MilliSecs() - 1500 Then
s\ri = Rand(-1,1)
s\alt = MilliSecs()
EndIf
s\y = s\y + s\gr/2
If s\y < 600-s\gr Then s\x = s\x - s\ri
If s\x < 0 Then s\x = 0
If s\x > 800-s\gr Then s\x = 800-s\gr
If s\y > 600-s\gr Then s\y = 600-s\gr
If s\gr = 10 Then
For i = 1 To 10
If RectsOverlap(s\x,s\y,s\gr,s\gr,HideX(i),HideY(i),50,20) Then s\y = s\oy:s\x = s\ox
Next
EndIf
If s\fang = True Then s\x = MouseX()+s\ox/10:s\y = MouseY()+s\oy/10
s\oy = s\y:s\ox = s\x
Next
If MouseHit(1) Then Delete Each s
For i = 1 To 10
Color 255,0,0:Rect HideX(i),HideY(i),50,20:Color 255,255,255
Next

Flip
Cls
Until KeyHit(1)
End




Und jetzt will ich prüfen, ob die eine schneeflocke die andere berührt...
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!

FreetimeCoder

BeitragSa, März 03, 2007 12:42
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja, das geht genauso Rolling Eyes

Nur dann mit RectOverlap oÄ
"Wir haben keine Chance, aber wir werden sie nutzen!"
Projekte:
Dexterity Ball (100%)
Aquatic Atmosfear (22 % ca 4700 Zeilen) eingefrohren mangels OOP Fähigkeiten von Blitz
(ehemals Uboot)
PC: Intel D 3 GHz | NVidiaGforce 6700 256 Mb | 1024 Mb DDR RAM 400 Mhz | 2x160 GB S-ATA

ToeB

BeitragSa, März 03, 2007 16:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Hä ? sry, das ich das nich verstehe, aba kann mia das mal einer erklären bitte ( bezogen auf meinen code )

Danke !

Very Happy
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!
 

Hendy

BeitragSo, März 04, 2007 16:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Du meinst wohl das die Flocken übereinanderliegen bleiben, oder??
Smile Very Happy Very HappyD

ToeB

BeitragMo, März 05, 2007 15:15
Antworten mit Zitat
Benutzer-Profile anzeigen
genau Very Happy ! Das wollt ich maken ! Nur weiß ich net wie Sad
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group