Mehrere Type Kisten Kollidieren lassen
Übersicht

![]() |
Raiden93Betreff: Mehrere Type Kisten Kollidieren lassen |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hey,
ich habe gerade ein kleinen Test gemacht und würde gerne wissen wie es möglich ist Types untereinander auf Koordinaten zu testen? Mein Code sieht wie folgt aus: Code: [AUSKLAPPEN] ;Kisten Gravity For Kiste = Each KisteTyp If (Kiste\y <= 499 -50) Or (Kiste\y <>= Kiste = Each KisteTyp) Kiste\y = Kiste\y *Kiste\Geschwindigkeit End If Next Die 499-50 ist der Boden und (Kiste\y <>= Kiste = Each KisteTyp) funktioniert ja so nicht. |
||
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Gab es die Frage mittlerweile noch nicht oft genug...?
Eine Möglichkeit: BlitzBasic: [AUSKLAPPEN] Local k1.TKiste, k2.TKiste |
||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
![]() |
Raiden93 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich habe jetzt mal Extra ein kleines Test programm gecodet weil ich es gerade nicht wirklich verstehe.Wie würde man hier Prüfen können ob eine Kiste mit der anderen gerade Kollidiert?
Code: [AUSKLAPPEN] AppTitle "Test"
Graphics 800,600,32,2 SetBuffer BackBuffer () Global FPSTimer = CreateTimer (60) Type KistenTyp Field X#, Y# End Type Global Kiste.KistenTyp Repeat Cls Boden_Zeichnen () Kiste_Erstellen () Kisten_Zeichnen () Gravity () Flip (0) WaitTimer (FPSTimer) Until KeyHit (1) ;Kiste Erstellen Function Kiste_Erstellen () If MouseHit (1) Kiste= New KistenTyp Kiste\X = MouseX () Kiste\Y = MouseY () End If End Function ;Kiste Zeichnen Function Kisten_Zeichnen () For Kiste = Each KistenTyp Color 200,100,0 Rect Kiste\X,Kiste\Y,20,20,0 Next End Function ;Boden Zeichnen Function Boden_Zeichnen () Color 255,255,255 Line 0,500,800,500 End Function ;Gravity/Schwerkraft Function Gravity () For Kiste = Each KistenTyp If Kiste\Y < 499-20 ;[Boden-KistenGroße] Kiste\Y = Kiste\Y +3 End If Next End Function |
||
![]() |
Moep |
![]() Antworten mit Zitat ![]() |
---|---|---|
Für jede Kiste die du überprüft , gehst du jede andere Kiste durch, die nicht gleich der zu prüfenden Kiste ist und vergleichst die Koordinaten.
Das genannten Beispiel mit der verschachtelten Vor-Schleife ist die Umsetzung davon. mfg |
||
Hardstyle Schleichwerbung:
http://www.youtube.com/user/Hackepeter42 Achtung: Suchtgefahr! moep123.ohost.de |
Hangman |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
und für die kollission hilfreich: https://www.blitzforum.de/help/RectsOverlap | ||
Ich habe Berthold gebrochen. |
![]() |
Moep |
![]() Antworten mit Zitat ![]() |
---|---|---|
Moep hat Folgendes geschrieben: Für jede Kiste die du überprüft , gehst du jede andere Kiste durch, die nicht gleich der zu prüfenden Kiste ist und vergleichst die Koordinaten.
Das genannten Beispiel mit der verschachtelten For-Schleife ist die Umsetzung davon. mfg Edit : "Vor"-Schleife, wie peinlich, naja, war ja früh morgen ![]() |
||
Hardstyle Schleichwerbung:
http://www.youtube.com/user/Hackepeter42 Achtung: Suchtgefahr! moep123.ohost.de |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group