Flat world
This commit is contained in:
19
flat_world/README.MD
Normal file
19
flat_world/README.MD
Normal file
@@ -0,0 +1,19 @@
|
||||
# Flat world
|
||||
|
||||
Плоский мир
|
||||
|
||||
## Spring bean
|
||||
|
||||
```xml
|
||||
<bean id="flatWorld" class="mc.world.flat.FlatWorld">
|
||||
<property name="spawn">
|
||||
<bean class="mc.core.Location">
|
||||
<constructor-arg index="0" type="double" value="8"/>
|
||||
<constructor-arg index="1" type="double" value="6"/>
|
||||
<constructor-arg index="2" type="double" value="8"/>
|
||||
</bean>
|
||||
</property>
|
||||
</bean>
|
||||
```
|
||||
|
||||
`spawn` - точка спавна
|
||||
7
flat_world/build.gradle
Normal file
7
flat_world/build.gradle
Normal file
@@ -0,0 +1,7 @@
|
||||
group 'mc'
|
||||
version '1.0-SNAPSHOT'
|
||||
|
||||
dependencies {
|
||||
/* Core */
|
||||
compile_excludeCopy project(':core')
|
||||
}
|
||||
28
flat_world/src/main/java/mc/world/flat/FlatWorld.java
Normal file
28
flat_world/src/main/java/mc/world/flat/FlatWorld.java
Normal file
@@ -0,0 +1,28 @@
|
||||
/*
|
||||
* DmitriyMX <dimon550@gmail.com>
|
||||
* 2018-04-28
|
||||
*/
|
||||
package mc.world.flat;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import mc.core.Location;
|
||||
import mc.core.world.Chunk;
|
||||
import mc.core.world.World;
|
||||
|
||||
public class FlatWorld implements World {
|
||||
@Getter
|
||||
@Setter
|
||||
private Location spawn = new Location(0, 6, 0);
|
||||
private Chunk chunk = new SimpleChunk();
|
||||
|
||||
@Override
|
||||
public Chunk getChunk(int x, int z) {
|
||||
return chunk;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setChunk(int x, int z, Chunk chunk) {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
}
|
||||
127
flat_world/src/main/java/mc/world/flat/SimpleChunk.java
Normal file
127
flat_world/src/main/java/mc/world/flat/SimpleChunk.java
Normal file
@@ -0,0 +1,127 @@
|
||||
/*
|
||||
* DmitriyMX <dimon550@gmail.com>
|
||||
* 2018-04-28
|
||||
*/
|
||||
package mc.world.flat;
|
||||
|
||||
import mc.core.world.Chunk;
|
||||
|
||||
import java.util.Arrays;
|
||||
|
||||
public class SimpleChunk implements Chunk {
|
||||
private int[] blocktype = new int[4096];
|
||||
private int[] blockmeta = new int[2048];
|
||||
private int[] blocklight = new int[2048];
|
||||
private int[] skylight = new int[2048];
|
||||
private int[] addition = new int[2048];
|
||||
private int[] biometype = new int[256];
|
||||
|
||||
SimpleChunk() {
|
||||
Arrays.fill(blocktype, 0, 256, 7);
|
||||
Arrays.fill(blocktype, 256, 768, 3);
|
||||
Arrays.fill(blocktype, 768, 1024, 2);
|
||||
Arrays.fill(blocktype, 1024, 4096, 0);
|
||||
|
||||
Arrays.fill(blockmeta, 0);
|
||||
|
||||
Arrays.fill(blocklight, 0);
|
||||
|
||||
Arrays.fill(skylight, 0, 512, 0);
|
||||
Arrays.fill(skylight, 512, 2048, -1);
|
||||
|
||||
Arrays.fill(addition, 0, 256, 1);
|
||||
Arrays.fill(addition, 256, 2048, 0);
|
||||
|
||||
Arrays.fill(biometype, 0);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBlockType(int x, int y, int z) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int[] getBlockTypeAsArray() {
|
||||
return blocktype;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setBlockType(int x, int y, int z, int type) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBlockMetadata(int x, int y, int z) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int[] getBlockMetadataAsArray() {
|
||||
return blockmeta;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setBlockMetadata(int x, int y, int z, int metadata) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBlockLight(int x, int y, int z) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int[] getBlockLightAsArray() {
|
||||
return blocklight;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setBlockLight(int x, int y, int z, int lightLevel) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getSkyLight(int x, int y, int z) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int[] getSkyLightAsArray() {
|
||||
return skylight;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setSkyLight(int x, int y, int z, int lightLevel) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getAddition(int x, int y, int z) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int[] getAdditionAsArray() {
|
||||
return addition;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setAddition(int x, int y, int z, int value) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBiome(int x, int y, int z) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int[] getBiomeAsArray() {
|
||||
return biometype;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setBiome(int x, int y, int z, int value) {
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user