Gegner Problem?

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

bruce85

Betreff: Gegner Problem?

BeitragSo, Sep 17, 2006 19:19
Antworten mit Zitat
Benutzer-Profile anzeigen
hallo,
also ich habe ein Spielfeld(16,16) und möchte die gegners als zufall in Spielfeld=1 positionieren, ich weiss nicht ob ich das richtig gemacht habe:

Code: [AUSKLAPPEN]
For F_x=0 To 16
  For F_y=0 To 16
    If Spielfeld(F_x,F_y) = 1 Then
      For i=0 To 4
        g.gegner = New gegner
        g\gegner_x = F_x*32
        g\gegner_y = F_y*32
      Next
    EndIf
  Next
Next


so funktioniert das nicht, wisst ihr wie ich das machen könnte, das 5 gegner immer wo anders Positioniert werden?
Ich danke euch schonmal Wink

Gruss Andreas
 

timmeTheOnly

BeitragSo, Sep 17, 2006 19:22
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja

Code: [AUSKLAPPEN]

For F_x=0 To 16
  For F_y=0 To 16
    If Spielfeld(F_x,F_y) = 1 Then
      For i=0 To 4
        g.gegner = New gegner
        g\gegner_x = rand(0,16)*32
        g\gegner_y = rand(0,16)*32
      Next
    EndIf
  Next
Next
 

bruce85

BeitragSo, Sep 17, 2006 19:25
Antworten mit Zitat
Benutzer-Profile anzeigen
danke dir,
aber es geht auch net, es kommt zwar kein fehler, aber man sieht die gegners garnicht.
wieso?

Gruss Andreas
 

timmeTheOnly

BeitragSo, Sep 17, 2006 19:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Zeichnest du sie überhaupt, wenn ja, gib mir mal den Code wo gezeichnet wird.

MfG
T-Master
 

bruce85

BeitragSo, Sep 17, 2006 19:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
For g.gegner = Each gegner
  DrawImage gegner,g\gegner_x,g\gegner_y
Next


ich hab den rest wo die gegners bewegt werden entfernt, da es ein bissel übersichtlicher war Very Happy

Gruss Andreas
 

bruce85

BeitragSo, Sep 17, 2006 19:37
Antworten mit Zitat
Benutzer-Profile anzeigen
jetzt gehts, ich hatte es an der falschen position stehen, aber es werden mehr als 5 gegners erzeugt, wieso eingentlich?

edit:
so müsste ich das machen:
Code: [AUSKLAPPEN]
For F_x=0 To 16
  For F_y=0 To 16
    If Spielfeld(F_x,F_y) = 1 Then
      For i=0 To 4
        g.gegner = New gegner
        g\gegner_x = F_x*32+100
        g\gegner_y = F_y*32+100
      Next
    EndIf
  Next
Next


aber es wird überall wo im Spielfeld eine eins ist, ein Gegner gezeichnet, obwohl nur 5 sein dürfen, ist der code überhaupt Richtig?
  • Zuletzt bearbeitet von bruce85 am So, Sep 17, 2006 19:40, insgesamt einmal bearbeitet

Holzchopf

Meisterpacker

BeitragSo, Sep 17, 2006 19:39
Antworten mit Zitat
Benutzer-Profile anzeigen
Weil du pro "1" auf deiner 16x16 Map je 5 Gegner erstellst.
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BYBinaryBorn - Yogurt ♫ (31.10.2018)
Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm
 

bruce85

BeitragSo, Sep 17, 2006 19:40
Antworten mit Zitat
Benutzer-Profile anzeigen
wie mache ich das denn jetzt?
 

bruce85

BeitragSo, Sep 17, 2006 21:40
Antworten mit Zitat
Benutzer-Profile anzeigen
hab ihr keine idee wie ich das machen kann?
 

Dreamora

BeitragMo, Sep 18, 2006 0:12
Antworten mit Zitat
Benutzer-Profile anzeigen
Wir wissen schon wie.
Aber überleg du selbst mal anstatt gleich wieder zu fragen.

Dein aktueller code schaut nach einer 1, wenn er eine findet, erzeugt er an dieser Position 5 Gegner!!!

Was daran ist also falsch? Überleg mal wo oder ob du überhaupt zählst, wieviele Gegner du erzeugst.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.
 

bruce85

BeitragMo, Sep 18, 2006 18:57
Antworten mit Zitat
Benutzer-Profile anzeigen
ja sry, ich komm aber grad net drauf wie ich das machen muss.
ich muss doch erst Alle Felder Durchgehen um zu Prüfen was Data=1 ist, aber wie mache ich das es als Random 5 Gegner irgendwo im Spielfeld Positioniert wird?

Gruss Andreas

Holzchopf

Meisterpacker

BeitragMo, Sep 18, 2006 20:09
Antworten mit Zitat
Benutzer-Profile anzeigen
Du kannst auch
1. einen Gegner erstellen
2. prüfen, ob dieser auf nem =1 Feld ist
wenn nicht, lösche Gegner und gehe wieder zu 1.
wenn ja, erstelle nächsten Gegner
3. das ganze so oft machen, bis du deine fünf Gegner hast.

Hoffe das war ausführlich genug =)

MfG
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BYBinaryBorn - Yogurt ♫ (31.10.2018)
Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm
 

Dreamora

BeitragMo, Sep 18, 2006 23:08
Antworten mit Zitat
Benutzer-Profile anzeigen
bruce85 hat Folgendes geschrieben:
ja sry, ich komm aber grad net drauf wie ich das machen muss.
ich muss doch erst Alle Felder Durchgehen um zu Prüfen was Data=1 ist, aber wie mache ich das es als Random 5 Gegner irgendwo im Spielfeld Positioniert wird?

Gruss Andreas


wie gesagt, du musst irgendwo zählen, wieviele Gegner du schon erzeugt hast.

Und wenn du Random willst, dann brauchst du garnicht alle Felder durchzugehen, sondern solange Zufallspositionen erzeugen, bis deine Zählervariable dir sagt, dass du ausreichend Gegner erzeugt hast.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

garret

BeitragDi, Sep 19, 2006 11:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Holzchopf hat Folgendes geschrieben:

1. einen Gegner erstellen
2. prüfen, ob dieser auf nem =1 Feld ist
wenn nicht, lösche Gegner und gehe wieder zu 1.
wenn ja, erstelle nächsten Gegner
3. das ganze so oft machen, bis du deine fünf Gegner hast.


Besser wäre es, erst zu überprüfen ob das Feld frei ist und dann den Gegner zu erstellen. So muss man ihn nicht erst erstellen um ihn danach wieder zu löschen.


MfG garret
>>nec aspera terrent<< (Auch Widerwärtigkeiten schrecken nicht)

Holzchopf

Meisterpacker

BeitragDi, Sep 19, 2006 16:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Das weiss ich auch, mir war es einfach zu umständlich zu schreiben "position vom Gegner erzeugen" ... "prüfen" ... "erstellen" blah blah.
Laughing
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BYBinaryBorn - Yogurt ♫ (31.10.2018)
Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group