Added configurable animal and monster ticks per spawn setting.

This commit is contained in:
EvilSeph
2012-02-10 10:23:52 -05:00
parent c38fcb360a
commit 63b9ed9ab4
4 changed files with 44 additions and 1 deletions

View File

@@ -357,6 +357,14 @@ public final class CraftServer implements Server {
return this.configuration.getInt("settings.ping-packet-limit", 100);
}
public int getTicksPerAnimalSpawns() {
return this.configuration.getInt("ticks-per.animal-spawns");
}
public int getTicksPerMonsterSpawns() {
return this.configuration.getInt("ticks-per.monster-spawns");
}
public PluginManager getPluginManager() {
return pluginManager;
}
@@ -410,6 +418,17 @@ public final class CraftServer implements Server {
for (WorldServer world : console.worlds) {
world.difficulty = difficulty;
world.setSpawnFlags(monsters, animals);
if (this.getTicksPerAnimalSpawns() < 0) {
world.ticksPerAnimalSpawns = 400;
} else {
world.ticksPerAnimalSpawns = this.getTicksPerAnimalSpawns();
}
if (this.getTicksPerMonsterSpawns() < 0) {
world.ticksPerMonsterSpawns = 1;
} else {
world.ticksPerMonsterSpawns = this.getTicksPerMonsterSpawns();
}
}
pluginManager.clearPlugins();

View File

@@ -982,4 +982,20 @@ public class CraftWorld implements World {
public boolean canGenerateStructures() {
return world.getWorldData().o();
}
public long getTicksPerAnimalSpawns() {
return world.ticksPerAnimalSpawns;
}
public void setTicksPerAnimalSpawns(int ticksPerAnimalSpawns) {
world.ticksPerAnimalSpawns = ticksPerAnimalSpawns;
}
public long getTicksPerMonsterSpawns() {
return world.ticksPerMonsterSpawns;
}
public void setTicksPerMonsterSpawns(int ticksPerMonsterSpawns) {
world.ticksPerMonsterSpawns = ticksPerMonsterSpawns;
}
}