Hi Leute,
ich programmiere gerade mein eigenes Minecraft. Ich bin gerade beim Karten generieren. Ich habe schon 4 Schichten programmiert. Die erste aus Bedrock die zweite aus zufälligen Steinen und Wahrscheinlichkeiten (Diamanten findet man selten - Stein findet man oft). Jetzt bin ich an der ,,Oberwelt" und da bekomme ich probleme. Ich habe ein paar Schichten übersprungen, weil ich weiß, dass die
[schaurige Musik wird eingeblendet] ,,Oberwelt" ein Problem wird. Es soll ja nicht einfach eine gerade Dirt-Schicht sein. Ich möchte gerne ein paar Erhöhungen haben. Also habe ich mit Zufällen gearbeitet:
Normale Wahrscheinlichkeit für ein Block an der ,,Oberwelt": random(10)
Wenn die Zufallszahl 1 ist wird der Block generiert.
Wenn schonmal ein Block erstellt wurde ist die Wahrscheinlichket 2
So. Da ich aber per procedure arbeite und über zwei for-Schleifen wirkt dieser Effekt nur in eine Richtung.
for-Schleifen:
Delphi-Quellcode:
for x := 0 to 18 do
begin
for z := 0 to 18 do
begin
//Block erstellen
...
Wie kann ich schnell Prüfen, ob sich ein Block neben dem eventuell Block befindet???