Ein 'Item - erstellungs - Problem'

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

 

Blitzkrieg Bop

Betreff: Ein 'Item - erstellungs - Problem'

BeitragFr, Mai 21, 2004 12:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Hoi Leute !

Also, ich versuche euch mein Problem zu schildern:

Bei meinem SPiel schiesst man mit Raketen. Wennm an einen Gegner trifft, wird der Gegner gelöscht und er soll ein Item hinterlassen. Das klappt ganz gut, bei einem Gegner. Bei 2 Gegner sieht das ganz anders aus:
Schiesst man den ersten Gegner hab, der ein Item erstellt und man sammelt es nicht ein, sondern schiesst gleich den zweiten Gegner ab,wird das alte Item gelöscht und das neue erstellt.
Das möchte ich beheben, das die alten Items gelöscht werden, sondern liegen bleiben.
Zum Code: Die Items haben die gleiche Position wie die Raketen. Nicht die beste Lösung, aber naja. Ich geb euch mal den code, der zuinächst abfragt, ob eine Rakete mit nem Gegner kollidiert und dann ein Item erstellt.:


Code: [AUSKLAPPEN]

   Function gegner_raketen_kollision()
   For g.gegner = Each gegner
      For r.rakete = Each rakete
         If ImagesCollide(rakete,r\x,r\y,0,gegner,g\x,g\y,0)
            item_erstellen()
            Delete g.gegner
            Exit
         EndIf
      Next
   Next             
   End Function
   
   
   Function item_erstellen()
   i.item = New item
   For r.rakete = Each rakete
      For i.item = Each item
         i\x  = r\x
         i\y = r\y
         i\art = Rand(1,3)
      Next
   Next        
   End Function


Braucht ihr nochm ehr Code? Müsst ihr nur sagen.

MFG
~ Hey Ho Let's Go ~
 

OJay

BeitragFr, Mai 21, 2004 12:44
Antworten mit Zitat
Benutzer-Profile anzeigen
warum machst du jetzt nochmal einen thread dazu auf? Rolling Eyes

wenigstens hast du jetzt code, mit dem man was anfangen kann...

wieso gehst du nocheinmal alle raketen und alle items durch, wenn du ein item erstellst? das ist total unlogisch und totaler schwachfug...anscheinend hast du nicht die geringste ahnung davon. wer hat dir den code geschrieben?

übergebe die koordinaten der kollidierten rakete an deine item_erstellen funktion, und erstelle damit das neue item...da wird keine einzige for-schleife benötigt!
 

Edlothiol

BeitragFr, Mai 21, 2004 12:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
Function item_erstellen()
   i.item = New item
   For r.rakete = Each rakete
      For i.item = Each item
         i\x  = r\x
         i\y = r\y
         i\art = Rand(1,3)
      Next
   Next       
   End Function
Was soll denn das bringen?
Code: [AUSKLAPPEN]
Function item_erstellen(r.rakete)
   i.item = New item
   i\x = r\x
   i\y = r\y
   i\art = r\art
   End Function
Übrigens werden im alten Code die Items nicht gelöscht, sondern nur alle an die neue Stelle gesetzt, so wies aussieht.
 

Blitzkrieg Bop

BeitragFr, Mai 21, 2004 13:33
Antworten mit Zitat
Benutzer-Profile anzeigen
@ Ojay : Du bist echt nen Spinner. Der Code ist slebstgemacht und wozu ist das Forum da, wnen man nicht Fragen stellen soll/darf. Wenn man nichts zu sagen hat, einfach mal die Fresse halten.

@ Edlothiol : Danke für den Code, klappt super
Very Happy . Weil dieses in den Klammern: (r.rakete) , das war mir irgendwie neu. Also was heißt das wnen man nun zum Beispiiel schreibt:
Function item_erstellen(r.rakete) : heißt das, das der die bedingungen der r.rakete übernimmt, so das man zum beispiel koord's übertragen kann?
~ Hey Ho Let's Go ~
 

Edlothiol

BeitragFr, Mai 21, 2004 14:35
Antworten mit Zitat
Benutzer-Profile anzeigen
Argh. Du weißt nicht, was Parameter sind? Na dann kann ich dir auch nicht mehr helfen...
 

Blitzkrieg Bop

BeitragFr, Mai 21, 2004 14:40
Antworten mit Zitat
Benutzer-Profile anzeigen
klar schon. mir war es grad nur ein enig unklar, hab es mittlerweile gechekt 8)
~ Hey Ho Let's Go ~
 

HOT-BIT

Gast

BeitragFr, Mai 21, 2004 14:42
Antworten mit Zitat
Hi !

@Ojay:

Was erlaubst du dir da eigentlich ! ?

ROFL !

Toni

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group