Search in sources :

Example 16 with Config

use of org.terasology.config.Config in project Terasology by MovingBlocks.

the class StateHeadlessSetup method createGameManifest.

public GameManifest createGameManifest() {
    GameManifest gameManifest = new GameManifest();
    Config config = context.get(Config.class);
    ModuleManager moduleManager = context.get(ModuleManager.class);
    for (Name moduleName : config.getDefaultModSelection().listModules()) {
        Module module = moduleManager.getRegistry().getLatestModuleVersion(moduleName);
        if (module != null) {
            gameManifest.addModule(module.getId(), module.getVersion());
        }
    }
    WorldGenerationConfig worldGenConfig = config.getWorldGeneration();
    // If no valid default world generator set then try to find one - no option to pick one manually in headless
    if (!worldGenConfig.getDefaultGenerator().isValid()) {
        // find the first gameplay module that is available, it should have a preferred world gen
        for (Name moduleName : config.getDefaultModSelection().listModules()) {
            Module module = moduleManager.getRegistry().getLatestModuleVersion(moduleName);
            if (StandardModuleExtension.isGameplayModule(module)) {
                SimpleUri defaultWorldGenerator = StandardModuleExtension.getDefaultWorldGenerator(module);
                worldGenConfig.setDefaultGenerator(defaultWorldGenerator);
                break;
            }
        }
    }
    SimpleUri worldGeneratorUri = worldGenConfig.getDefaultGenerator();
    gameManifest.setTitle(worldGenConfig.getWorldTitle());
    gameManifest.setSeed(worldGenConfig.getDefaultSeed());
    WorldInfo worldInfo = new WorldInfo(TerasologyConstants.MAIN_WORLD, gameManifest.getSeed(), (long) (WorldTime.DAY_LENGTH * 0.025f), worldGeneratorUri);
    gameManifest.addWorld(worldInfo);
    return gameManifest;
}
Also used : GameManifest(org.terasology.game.GameManifest) Config(org.terasology.config.Config) WorldGenerationConfig(org.terasology.config.WorldGenerationConfig) SimpleUri(org.terasology.engine.SimpleUri) WorldInfo(org.terasology.world.internal.WorldInfo) ModuleManager(org.terasology.engine.module.ModuleManager) Module(org.terasology.module.Module) WorldGenerationConfig(org.terasology.config.WorldGenerationConfig) Name(org.terasology.naming.Name)

Example 17 with Config

use of org.terasology.config.Config in project Terasology by MovingBlocks.

the class ClientConnectionHandler method sendJoin.

private void sendJoin(ChannelHandlerContext channelHandlerContext) {
    Config config = CoreRegistry.get(Config.class);
    NetData.JoinMessage.Builder bldr = NetData.JoinMessage.newBuilder();
    NetData.Color.Builder clrbldr = NetData.Color.newBuilder();
    bldr.setName(config.getPlayer().getName());
    bldr.setViewDistanceLevel(config.getRendering().getViewDistance().getIndex());
    bldr.setColor(clrbldr.setRgba(config.getPlayer().getColor().rgba()).build());
    channelHandlerContext.getChannel().write(NetData.NetMessage.newBuilder().setJoin(bldr).build());
}
Also used : Config(org.terasology.config.Config)

Example 18 with Config

use of org.terasology.config.Config in project Terasology by MovingBlocks.

the class IntMathTest method setUpClass.

@BeforeClass
public static void setUpClass() throws Exception {
    Config config = new Config(new MockContext());
    CoreRegistry.setContext(new ContextImpl());
    CoreRegistry.put(Config.class, config);
}
Also used : MockContext(org.terasology.context.internal.MockContext) Config(org.terasology.config.Config) ContextImpl(org.terasology.context.internal.ContextImpl) BeforeClass(org.junit.BeforeClass)

Example 19 with Config

use of org.terasology.config.Config in project Terasology by MovingBlocks.

the class HeadlessEnvironment method setupConfig.

@Override
protected void setupConfig() {
    Config config = new Config(context);
    config.loadDefaults();
    context.put(Config.class, config);
}
Also used : Config(org.terasology.config.Config)

Aggregations

Config (org.terasology.config.Config)19 TelemetryConfig (org.terasology.config.TelemetryConfig)4 ContextImpl (org.terasology.context.internal.ContextImpl)4 SimpleUri (org.terasology.engine.SimpleUri)4 MockContext (org.terasology.context.internal.MockContext)3 ModuleManager (org.terasology.engine.module.ModuleManager)3 Map (java.util.Map)2 BeforeClass (org.junit.BeforeClass)2 Component (org.terasology.entitySystem.Component)2 Name (org.terasology.naming.Name)2 BlockManager (org.terasology.world.block.BlockManager)2 LoggerContext (ch.qos.logback.classic.LoggerContext)1 Lists (com.google.common.collect.Lists)1 MalformedURLException (java.net.MalformedURLException)1 URL (java.net.URL)1 ByteBuffer (java.nio.ByteBuffer)1 FileSystem (java.nio.file.FileSystem)1 List (java.util.List)1 Objects (java.util.Objects)1 Callable (java.util.concurrent.Callable)1