private void cloneAndSet(String group, Object value) { Component comp = worldConfig.getProperties().get(group); Component clone = compLib.copy(comp); fieldMetadata.setValue(clone, value); // notify the world generator about the new component worldConfig.setProperty(label, clone); } }
@Override public T get() { Component comp = worldConfig.getProperties().get(label); return fieldMetadata.getValue(comp); }
@Override public T get() { Component comp = worldConfig.getProperties().get(label); return fieldMetadata.getValue(comp); }
private void cloneAndSet(String group, Object value) { Component comp = worldConfig.getProperties().get(group); Component clone = compLib.copy(comp); fieldMetadata.setValue(clone, value); // notify the world generator about the new component worldConfig.setProperty(label, clone); } }
private void resetEnvironment() { CoreRegistry.setContext(context); if (environment != null) { EnvironmentSwitchHandler environmentSwitchHandler = context.get(EnvironmentSwitchHandler.class); environmentSwitchHandler.handleSwitchBackFromPreviewEnvironment(subContext); environment.close(); environment = null; } previewGen.close(); WorldConfigurator worldConfig = worldGenerator.getConfigurator(); Map<String, Component> params = worldConfig.getProperties(); if (params != null) { config.setModuleConfigs(worldGenerator.getUri(), params); } }
private void configureProperties() { PropertyLayout propLayout = find("properties", PropertyLayout.class); propLayout.setOrdering(PropertyOrdering.byLabel()); propLayout.clear(); WorldConfigurator worldConfig = worldGenerator.getConfigurator(); Map<String, Component> params = worldConfig.getProperties(); for (String key : params.keySet()) { Class<? extends Component> clazz = params.get(key).getClass(); Component comp = config.getModuleConfig(worldGenerator.getUri(), key, clazz); if (comp != null) { worldConfig.setProperty(key, comp); // use the data from the config instead of defaults } } ComponentLibrary compLib = subContext.get(ComponentLibrary.class); for (String label : params.keySet()) { PropertyProvider provider = new PropertyProvider() { @Override protected <T> Binding<T> createTextBinding(Object target, FieldMetadata<Object, T> fieldMetadata) { return new WorldConfigBinding<>(worldConfig, label, compLib, fieldMetadata); } @Override protected Binding<Float> createFloatBinding(Object target, FieldMetadata<Object, ?> fieldMetadata) { return new WorldConfigNumberBinding(worldConfig, label, compLib, fieldMetadata); } }; Component target = params.get(label); List<Property<?, ?>> properties = provider.createProperties(target); propLayout.addProperties(label, properties); } }
Map<String, Component> params = worldConfigurator.getProperties(); for (Map.Entry<String, Component> entry : params.entrySet()) { Class<? extends Component> clazz = entry.getValue().getClass(); Component comp = worldEntity.getComponent(clazz); if (comp != null) { worldConfigurator.setProperty(entry.getKey(), comp); Map<String, Component> params = worldConfigurator.getProperties(); for (Map.Entry<String, Component> entry : params.entrySet()) { Class<? extends Component> clazz = entry.getValue().getClass(); if (comp != null) { worldEntity.addComponent(comp); worldConfigurator.setProperty(entry.getKey(), comp); } else { worldEntity.addComponent(entry.getValue());
Map<String, Component> params = worldConfig.getProperties(); if (comp != null) { worldConfig.setProperty(key, comp);