Bäume Spawnen auf Hühner

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

Raiden93

Betreff: Bäume Spawnen auf Hühner

BeitragDi, Feb 08, 2011 13:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Hey,
irgendwie Spawnen zufällig Bäume auf eine Hüner, dabei haben meine Hühner die tileset id 3.
Könnt mich jemand mal aufklären was ich falsch mache.
Code: [AUSKLAPPEN]
;Baum System
     For MapX=0 To 20
        For MapY=0 To 20
           ;Bäume Random Erstellen
           If Abfrage_Baum_Spawnen = True
                Abfrage_Baum_Spawnen = False
              If map(Rand(1,19),Rand(1,19)) = 1
               map(Rand(,19),Rand(1,19)) = 2
                 End If
         End If
      Next
   Next

Xeres

Moderator

BeitragDi, Feb 08, 2011 13:39
Antworten mit Zitat
Benutzer-Profile anzeigen
a) "If Abfrage_Baum_Spawnen = True " vor die Schleife - du willst nicht die Karte durchgehen, wenn du gar keine Bäume erstellen willst.
b) Rand generiert eine Zufallszahl. Jedes mal. Benutze Variablen um eine Zufallszahl mehrfach ein zu setzen.
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
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)

Raiden93

BeitragDi, Feb 08, 2011 13:49
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke Xeres meine Funktion schaut jetzt so aus:
Code: [AUSKLAPPEN]
;Baum System
     For MapX=0 To 20
        For MapY=0 To 20
           ;Bäume Random Erstellen
           If Abfrage_Baum_Spawnen = True
                Abfrage_Baum_Spawnen = False
              If map(BaumX,BaumY) = 1
               map(BaumX,BaumY) = 2
                 End If
         End If
      Next
   Next
   
   If MilliSecs()>=Baum_Timer+Baum_Zeit
      Baum_Timer = MilliSecs()
      Abfrage_Baum_Spawnen = True
      BaumX = Rand(1,19)
      BaumY = Rand(1,19)
   End If


Ich habe das Random einfach in den Timer gesetzt da es dort ja nur jede 2 Minuten Refresh wird.
Abfrage_Baum_Spawnen kann ich nicht vor der Schleife packen weil er sonst 10 oder mehr Bäume gleichzeitig Spawnt.Jetzt Funktioniert es aber vielen dank^^

Xeres

Moderator

BeitragDi, Feb 08, 2011 13:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Warum gehst du die doppelte Schleife überhaupt durch? MapX und MapY werden nie benutzt und auch nicht wirklich gebraucht, du generierst die Position ja zufällig... Du könntest das alles in den Timer-Block bauen.
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
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)

Raiden93

BeitragDi, Feb 08, 2011 14:16
Antworten mit Zitat
Benutzer-Profile anzeigen
stimmt werde ich sofort mal Testen.Ich denke mal das so auch weniger Leistung beansprucht wird.

EDIT:
FINISH
Code: [AUSKLAPPEN]
   ;Baum System
   If MilliSecs()>=Baum_Timer+Baum_Zeit
      Baum_Timer = MilliSecs()
      Abfrage_Baum_Spawnen = True
      BaumX = Rand(1,19)
      BaumY = Rand(1,19)
      
      ;Bäume Random Erstellen
      If Abfrage_Baum_Spawnen = True
         Abfrage_Baum_Spawnen = False
         If Not BaumX = SpielerX And BaumY = SpielerY
            If map(BaumX,BaumY) = 1
               map(BaumX,BaumY) = 2
            End If
         End If
      End If
      
   End If

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group