Delete Terrain.pde
This commit is contained in:
113
Terrain.pde
113
Terrain.pde
@@ -1,113 +0,0 @@
|
|||||||
class Terrain {
|
|
||||||
ArrayList < Block > blocks = new ArrayList<>();
|
|
||||||
ArrayList < Bird > birds = new ArrayList<>();
|
|
||||||
int terrainLength = 100;
|
|
||||||
int terrainWidth = 100;
|
|
||||||
int minTreeHeight = 20;
|
|
||||||
int maxTreeHeight = 70;
|
|
||||||
float noiseStep = 0.02;
|
|
||||||
int cubeWidth = 20;
|
|
||||||
int cubeLength = 20;
|
|
||||||
|
|
||||||
void generateTerrain() {
|
|
||||||
for (int i = 0; i < terrainWidth; i++) {
|
|
||||||
for (int j = 0; j < terrainLength; j++) {
|
|
||||||
Block block = new Block(i, j, noise(noiseStep * i, noiseStep * j), getRandomTreeColor(), int(random(minTreeHeight, maxTreeHeight)));
|
|
||||||
blocks.add(block);
|
|
||||||
if (random(0, 1) < 0.001) birds.add(new Bird(i * cubeWidth, j * cubeWidth, 1000));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void reloadTrees() {
|
|
||||||
for (int i = 0; i < blocks.size(); i++) {
|
|
||||||
Block block = blocks.get(i);
|
|
||||||
if ((noiseScale * block.h * cubeSize) > 170) {
|
|
||||||
if (int(random(0, 101)) < 1) {
|
|
||||||
block.isTree = true;
|
|
||||||
block.treeColor = getRandomTreeColor();
|
|
||||||
}
|
|
||||||
else block.isTree = false;
|
|
||||||
} else block.isTree = false;
|
|
||||||
|
|
||||||
if (!block.isTree && (noiseScale * block.h * cubeSize) > 170) {
|
|
||||||
if (int(random(0, 101)) < 1) {
|
|
||||||
block.isFlower = true;
|
|
||||||
block.treeColor = getRandomFlowerColor();
|
|
||||||
}
|
|
||||||
else block.isFlower = false;
|
|
||||||
}
|
|
||||||
else block.isFlower = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void drawTerrain() {
|
|
||||||
for (int i = 0; i < blocks.size(); i++) {
|
|
||||||
Block block = blocks.get(i);
|
|
||||||
float blockHeight = noiseScale * block.h * cubeSize;
|
|
||||||
|
|
||||||
if (blockHeight < 150) {
|
|
||||||
fill(0, 0, 255);
|
|
||||||
blockHeight = 150;
|
|
||||||
} else if (blockHeight > 150 && blockHeight < 170) {
|
|
||||||
fill(yellow);
|
|
||||||
} else if (blockHeight > 350) {
|
|
||||||
blockHeight *= 1.5;
|
|
||||||
fill(255, 255, 255);
|
|
||||||
} else {
|
|
||||||
fill(green);
|
|
||||||
}
|
|
||||||
|
|
||||||
float posX = block.x * cubeWidth;
|
|
||||||
float posY = block.y * cubeLength;
|
|
||||||
float posZ = blockHeight / 2.0;
|
|
||||||
|
|
||||||
float angleX = HALF_PI;
|
|
||||||
float angleY = 0;
|
|
||||||
|
|
||||||
pushMatrix();
|
|
||||||
|
|
||||||
rotateX(angleX);
|
|
||||||
rotateY(angleY);
|
|
||||||
translate(posX, posY, posZ);
|
|
||||||
box(cubeWidth, cubeLength, blockHeight);
|
|
||||||
|
|
||||||
if (block.isTree && blockHeight < 350) {
|
|
||||||
fill(222, 184, 135);
|
|
||||||
translate(0, 0, posZ + 50);
|
|
||||||
box(cubeWidth, cubeLength, 100);
|
|
||||||
translate(0, 0, 50);
|
|
||||||
fill(block.treeColor);
|
|
||||||
noStroke();
|
|
||||||
sphere(block.treeSize);
|
|
||||||
stroke(1);
|
|
||||||
} else if (block.isTree) {
|
|
||||||
fill(222, 184, 135);
|
|
||||||
translate(0, 0, posZ + 50);
|
|
||||||
box(cubeWidth, cubeLength, 100);
|
|
||||||
translate(0, 0, 50);
|
|
||||||
fill(0, 100, 0);
|
|
||||||
noStroke();
|
|
||||||
cylinder(50, 1, 100, 50);
|
|
||||||
stroke(1);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (block.isFlower && blockHeight < 350) {
|
|
||||||
fill(0, 200, 0);
|
|
||||||
translate(0, 0, posZ + 10);
|
|
||||||
box(5, 5 , 20);
|
|
||||||
translate(0, 0, 10);
|
|
||||||
fill(block.treeColor);
|
|
||||||
noStroke();
|
|
||||||
sphere(10);
|
|
||||||
stroke(1);
|
|
||||||
}
|
|
||||||
popMatrix();
|
|
||||||
}
|
|
||||||
for (int i = 0; i < birds.size(); i++) {
|
|
||||||
Bird bird = birds.get(i);
|
|
||||||
bird.drawBird();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user