Schuss kollisson
Übersicht

Roma3htBetreff: Schuss kollisson |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi ...
Ich habe eine frage, undzwar hab ich ein laser den man abfeuern kann.. Leider fliegt er durch Wände..wie kann ich machen das er nicht durchfliegt ? Ich meine ich weis schon wie ich eine kollissions abfrage mache aber ich will nicht für jedes einzelne tile auf der map die abfrage machen.. Kann ich das nicht irgendwie mit dem frame meines tilesets verbinden ? also das wenn der laser das frame [...] trifft dann verschwindet er. ![]() |
||
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Mach deine Schüsse als Type
Code: [AUSKLAPPEN] Type shot
Field x Field y End Type Du machst ne For Next Schleife, rufst jede Koordinate deiner Tilemap auf, checkst ob sie Kollision hat, wenn jetzt ein Schuss inerhalb der Koordinaten des einzelnen Felds ist löscht du ihn. Delete s.shot mfg |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
Roma3ht |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ok danke..ich probier mal. Ich hab zwar mein schuss in dem typ aber wusste nicht wie ich das schneller mit der kolli abfrage machen kann.
E D I T: Kann ich irgendwie mit einer If Abfrage kuckenwelches frame aktiviert ist und dann was machen ? also so in etwa If Frame = 2 ... Endif Ist kein richtiger code aber in etwa so geht das ? wenn ja wie ? |
||
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zitat: ...kuckenwelches frame aktiviert ist...
Erläuter mir das nochmal blick ned ganz durch sry |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
Roma3ht |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Sorry..
> Na das die If Abfrage prüft welches Frame grad Aktiviert ist und wenn z.b. das frame 3 aktiviert ist dann macht es iwas. lso so etwa If Frame = 3 Then ... Endif ich hoffe jetz versteht man es besser. |
||
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ehm naja Oo
Pseudocode : Code: [AUSKLAPPEN] For x=1 to 20 For y=1 to 20 for each Schuss if kooridnaten im feld=map(x,y) and frame=3 delete Schuss endif next next |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
Roma3ht |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Danke^^ | ||
Roma3ht |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hab ne frage..bei deinem oberen code was meinst du mit Kordinaten im feld ? | ||
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Benutz bitte den Edit knopf, doppelposts ist von den Admins verhasst ![]() Wobei gx/gy für die aktulle Position mal die Grösse eines Tiles ist. Code: [AUSKLAPPEN] if l\laser_x<gx+10 and l\laser_x>gx-10 and l\layser_y<gy+10 and l\layer_y>gy-10
Hoffe ich erzähle keinen Scheiss einfach ausprobieren (chronischer Schlafmangel) ![]() mfg |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
Roma3ht |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ok das hab ich soweit..mir kommt aber ein neues simples problem.
Ich habe ne Function erstellt und wenn ich w drücke öffnet sie sich aber wie mach ich das das wenn ich s drücke sie sich schliest ? |
||
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Mensch ich kann ja nur raten was du meinst ![]() Code: [AUSKLAPPEN] While Not KeyHit(1) If KeyHit (17) meinefunktion() Print "Nicht in der Funktion!" Wend Function meinefunktion() Repeat Print "ich bin in der Funktion >:O 11!!" If KeyHit (31) Return Forever End Function mfg |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
Roma3ht |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich hab doch klar geschrieben oder ?
Ich hab die Function schon offen blos weis nicht wie ich sie schliese aber hab grad ne lösung gefunden. |
||
![]() |
ozzi789 |
![]() Antworten mit Zitat ![]() |
---|---|---|
das sie sich schliest.. also hab ich richtig angenommen das du die Funktion meinst, kannst mit Return ganz einfach ne Funktion verlassen ![]() |
||
0x2B || ! 0x2B
C# | C++13 | Java 7 | PHP 5 |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group