TotalFreedomMod/src/main/java/me/totalfreedom/totalfreedommod/world/CustomWorld.java

53 lines
1.1 KiB
Java
Raw Normal View History

package me.totalfreedom.totalfreedommod.world;
2013-08-22 00:07:14 +00:00
import lombok.Getter;
import me.totalfreedom.totalfreedommod.TotalFreedomMod;
import me.totalfreedom.totalfreedommod.util.FLog;
import net.pravian.aero.component.PluginComponent;
2013-08-22 00:07:14 +00:00
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.bukkit.entity.Player;
public abstract class CustomWorld extends PluginComponent<TotalFreedomMod>
2013-08-22 00:07:14 +00:00
{
@Getter
private final String name;
//
2013-08-22 00:07:14 +00:00
private World world;
public CustomWorld(String name)
2013-08-22 00:07:14 +00:00
{
this.name = name;
2013-08-22 00:07:14 +00:00
}
public final World getWorld()
2013-08-22 00:07:14 +00:00
{
if (world == null || !Bukkit.getWorlds().contains(world))
{
world = generateWorld();
}
if (world == null)
{
FLog.warning("Could not load world: " + name);
2013-08-22 00:07:14 +00:00
}
return world;
}
public void sendToWorld(Player player)
{
try
{
player.teleport(getWorld().getSpawnLocation());
}
catch (Exception ex)
{
player.sendMessage(ex.getMessage());
}
}
protected abstract World generateWorld();
2013-08-22 00:07:14 +00:00
}