Compare commits

..

1 Commits

Author SHA1 Message Date
fb914734ce Proof of concept implementation
Implemented based on what https://forum.totalfreedom.me/d/2882-town-hall-thingy-results says.
2021-10-03 08:26:22 -06:00
6 changed files with 80 additions and 9 deletions

View File

@ -11,23 +11,20 @@ These versions are currently actively supported by our team, and you should expe
| Version | Supported | Support End: | | Version | Supported | Support End: |
| ------------------- | ------------------ | ------------------------------ | | ------------------- | ------------------ | ------------------------------ |
| 2021.09 | :white_check_mark: | No Earlier than December 2021 | | 2021.05 | :white_check_mark: | No Earlier than August 2021 |
### Legacy Supported ### Legacy Supported
These versions are no longer under active development, however we will look to release critical secuirty patches where appropriate. These versions are no longer under active development, however we will look to release critical secuirty patches where appropriate.
| Version | Supported | Support End: | | Version | Supported | Support End: |
| ------------------- | ------------------ | ------------ | | ------------------- | ------------------ | ------------ |
| 2021.06 | :white_check_mark: | October 2021 | | 2021.04 | :white_check_mark: | July 2021 |
### No Longer Supported ### No Longer Supported
These versions are no longer supported at all. It is strongly advised to update if you are running any of these versions. These versions are no longer supported at all. It is strongly advised to update if you are running any of these versions.
| Version | Supported | Support Ended: | | Version | Supported | Support Ended: |
| ------------------- | ------------------ | ------------------- | | ------------------- | ------------------ | ------------------- |
| 2021.05 | :white_check_mark: | September 2021 |
| 2021.04 | :white_check_mark: | July 2021 |
| 2021.02 | :x: | 6 June 2021 | | 2021.02 | :x: | 6 June 2021 |
| 2020.11 | :x: | 3 May 2021 | | 2020.11 | :x: | 3 May 2021 |
| 6.0.x (Pre-Release) | :x: | December 2020 | | 6.0.x (Pre-Release) | :x: | December 2020 |

View File

@ -5,7 +5,7 @@
<groupId>me.totalfreedom</groupId> <groupId>me.totalfreedom</groupId>
<artifactId>TotalFreedomMod</artifactId> <artifactId>TotalFreedomMod</artifactId>
<version>2021.09-RC02</version> <version>2021.06</version>
<packaging>jar</packaging> <packaging>jar</packaging>
<properties> <properties>

View File

@ -0,0 +1,19 @@
package me.totalfreedom.totalfreedommod.command;
import me.totalfreedom.totalfreedommod.rank.Rank;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
@CommandPermissions(level = Rank.NON_OP, source = SourceType.ONLY_IN_GAME)
@CommandParameters(description = "Go to the Floatlands (not to be confused with the Flatlands).", usage = "/<command>", aliases = "void")
public class Command_floatlands extends FreedomCommand
{
@Override
public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole)
{
plugin.wm.floatlands.sendToWorld(playerSender);
return true;
}
}

View File

@ -40,6 +40,11 @@ public class CleanroomChunkGenerator extends ChunkGenerator
} }
public CleanroomChunkGenerator(String id) public CleanroomChunkGenerator(String id)
{
this(id, true);
}
public CleanroomChunkGenerator(String id, boolean generateBedrock)
{ {
if (id != null) if (id != null)
{ {
@ -48,7 +53,11 @@ public class CleanroomChunkGenerator extends ChunkGenerator
int y = 0; int y = 0;
materials = new Material[128]; // Default to 128, will be resized later if required materials = new Material[128]; // Default to 128, will be resized later if required
materials[y++] = Material.BEDROCK;
if (generateBedrock)
{
materials[y++] = Material.BEDROCK;
}
if (id.length() > 0) if (id.length() > 0)
{ {
@ -115,14 +124,24 @@ public class CleanroomChunkGenerator extends ChunkGenerator
e.printStackTrace(); e.printStackTrace();
materials = new Material[65]; materials = new Material[65];
materials[0] = Material.BEDROCK;
if (generateBedrock)
{
materials[0] = Material.BEDROCK;
}
Arrays.fill(materials, 1, 65, Material.STONE); Arrays.fill(materials, 1, 65, Material.STONE);
} }
} }
else else
{ {
materials = new Material[65]; materials = new Material[65];
materials[0] = Material.BEDROCK;
if (generateBedrock)
{
materials[0] = Material.BEDROCK;
}
Arrays.fill(materials, 1, 65, Material.STONE); Arrays.fill(materials, 1, 65, Material.STONE);
} }
} }

View File

@ -0,0 +1,33 @@
package me.totalfreedom.totalfreedommod.world;
import org.bukkit.*;
public class Floatlands extends CustomWorld
{
public Floatlands()
{
super("floatlands");
}
@Override
protected World generateWorld()
{
final WorldCreator worldCreator = new WorldCreator(getName());
worldCreator.generateStructures(false);
worldCreator.type(WorldType.NORMAL);
worldCreator.environment(World.Environment.NORMAL);
worldCreator.generator(new CleanroomChunkGenerator("", false));
final World world = Bukkit.getServer().createWorld(worldCreator);
assert world != null;
world.setSpawnFlags(false, false);
world.setSpawnLocation(0, 50, 0);
plugin.gr.commitGameRules();
return world;
}
}

View File

@ -20,12 +20,14 @@ public class WorldManager extends FreedomService
public Flatlands flatlands; public Flatlands flatlands;
public AdminWorld adminworld; public AdminWorld adminworld;
public MasterBuilderWorld masterBuilderWorld; public MasterBuilderWorld masterBuilderWorld;
public Floatlands floatlands;
public WorldManager() public WorldManager()
{ {
this.flatlands = new Flatlands(); this.flatlands = new Flatlands();
this.adminworld = new AdminWorld(); this.adminworld = new AdminWorld();
this.masterBuilderWorld = new MasterBuilderWorld(); this.masterBuilderWorld = new MasterBuilderWorld();
this.floatlands = new Floatlands();
} }
@Override @Override
@ -34,6 +36,7 @@ public class WorldManager extends FreedomService
flatlands.getWorld(); flatlands.getWorld();
adminworld.getWorld(); adminworld.getWorld();
masterBuilderWorld.getWorld(); masterBuilderWorld.getWorld();
floatlands.getWorld();
// Disable weather // Disable weather
if (ConfigEntry.DISABLE_WEATHER.getBoolean()) if (ConfigEntry.DISABLE_WEATHER.getBoolean())