fix imports

This commit is contained in:
dfsek 2021-06-24 00:19:18 -07:00
parent c0b55c3e4e
commit 4bac67b8d7
213 changed files with 510 additions and 571 deletions

View File

@ -105,7 +105,7 @@ ij_java_for_statement_wrap = off
ij_java_generate_final_locals = false ij_java_generate_final_locals = false
ij_java_generate_final_parameters = false ij_java_generate_final_parameters = false
ij_java_if_brace_force = never ij_java_if_brace_force = never
ij_java_imports_layout = *,|,javax.**,java.**,|,$* ij_java_imports_layout = *, |, javax.**, java.**, |, $*
ij_java_indent_case_from_switch = true ij_java_indent_case_from_switch = true
ij_java_insert_inner_class_imports = false ij_java_insert_inner_class_imports = false
ij_java_insert_override_annotation = true ij_java_insert_override_annotation = true
@ -137,7 +137,7 @@ ij_java_method_parameters_wrap = off
ij_java_modifier_list_wrap = false ij_java_modifier_list_wrap = false
ij_java_names_count_to_use_import_on_demand = 3 ij_java_names_count_to_use_import_on_demand = 3
ij_java_new_line_after_lparen_in_record_header = false ij_java_new_line_after_lparen_in_record_header = false
ij_java_packages_to_use_import_on_demand = java.awt.*,javax.swing.* ij_java_packages_to_use_import_on_demand = java.awt.*, javax.swing.*
ij_java_parameter_annotation_wrap = off ij_java_parameter_annotation_wrap = off
ij_java_parentheses_expression_new_line_after_left_paren = false ij_java_parentheses_expression_new_line_after_left_paren = false
ij_java_parentheses_expression_right_paren_on_new_line = false ij_java_parentheses_expression_right_paren_on_new_line = false
@ -246,7 +246,7 @@ ij_java_wrap_comments = false
ij_java_wrap_first_method_in_call_chain = false ij_java_wrap_first_method_in_call_chain = false
ij_java_wrap_long_lines = false ij_java_wrap_long_lines = false
[{*.gradle.kts,*.kt,*.kts,*.main.kts}] [{*.gradle.kts, *.kt, *.kts, *.main.kts}]
ij_kotlin_align_in_columns_case_branch = false ij_kotlin_align_in_columns_case_branch = false
ij_kotlin_align_multiline_binary_operation = false ij_kotlin_align_multiline_binary_operation = false
ij_kotlin_align_multiline_extends_list = false ij_kotlin_align_multiline_extends_list = false
@ -325,7 +325,7 @@ ij_kotlin_wrap_elvis_expressions = 1
ij_kotlin_wrap_expression_body_functions = 0 ij_kotlin_wrap_expression_body_functions = 0
ij_kotlin_wrap_first_method_in_call_chain = false ij_kotlin_wrap_first_method_in_call_chain = false
[{*.har,*.jsb2,*.jsb3,*.json,.babelrc,.eslintrc,.stylelintrc,bowerrc,jest.config}] [{*.har, *.jsb2, *.jsb3, *.json, .babelrc, .eslintrc, .stylelintrc, bowerrc, jest.config}]
indent_size = 2 indent_size = 2
ij_json_keep_blank_lines_in_code = 0 ij_json_keep_blank_lines_in_code = 0
ij_json_keep_indents_on_empty_lines = false ij_json_keep_indents_on_empty_lines = false
@ -338,7 +338,7 @@ ij_json_spaces_within_braces = false
ij_json_spaces_within_brackets = false ij_json_spaces_within_brackets = false
ij_json_wrap_long_lines = false ij_json_wrap_long_lines = false
[{*.yaml,*.yml}] [{*.yaml, *.yml}]
indent_size = 2 indent_size = 2
ij_yaml_keep_indents_on_empty_lines = true ij_yaml_keep_indents_on_empty_lines = true
ij_yaml_keep_line_breaks = true ij_yaml_keep_line_breaks = true

View File

@ -8,4 +8,5 @@ assignees: ""
--- ---
## Describe the issue ## Describe the issue
<!-- Please describe the issue as clearly and as concisely as possible, without missing any details. --> <!-- Please describe the issue as clearly and as concisely as possible, without missing any details. -->

View File

@ -1,11 +1,11 @@
blank_issues_enabled: false blank_issues_enabled: false
contact_links: contact_links:
- name: Which Issue Template do I Choose? - name: Which Issue Template do I Choose?
url: https://github.com/PolyhedralDev/Terra/wiki/How-To-Choose-An-Issue-Template url: https://github.com/PolyhedralDev/Terra/wiki/How-To-Choose-An-Issue-Template
about: Click this if you don't know which issue template to select. This will help you make sure you choose the right one and provide enough information for us to help you. about: Click this if you don't know which issue template to select. This will help you make sure you choose the right one and provide enough information for us to help you.
- name: Terra Wiki - name: Terra Wiki
url: https://github.com/PolyhedralDev/Terra/wiki url: https://github.com/PolyhedralDev/Terra/wiki
about: Documentation for all things Terra. about: Documentation for all things Terra.
- name: Join the Support Discord - name: Join the Support Discord
url: https://discord.dfsek.com url: https://discord.dfsek.com
about: If you have a basic support question, join the Discord instead. about: If you have a basic support question, join the Discord instead.

View File

@ -21,7 +21,7 @@ jobs:
java-version: 1.8 java-version: 1.8
- name: Build Terra - name: Build Terra
run: gradle shadowJar run: gradle shadowJar
- name: Upload artifacts - name: Upload artifacts
uses: actions/upload-artifact@v2 uses: actions/upload-artifact@v2
@ -34,7 +34,7 @@ jobs:
with: with:
repo_token: ${{ secrets.GITHUB_TOKEN }} repo_token: ${{ secrets.GITHUB_TOKEN }}
prerelease: false prerelease: false
files: | files: |
build/libs/Terra-*.jar build/libs/Terra-*.jar
LICENSE LICENSE

View File

@ -7,40 +7,47 @@ to your specifications, with no knowledge of Java required.
* Paper+ servers (Paper, Tuinity, Purpur, etc): [SpigotMC](https://www.spigotmc.org/resources/85151/) * Paper+ servers (Paper, Tuinity, Purpur, etc): [SpigotMC](https://www.spigotmc.org/resources/85151/)
* Fabric: [Modrinth](https://modrinth.com/mod/terra) / [CurseForge](https://www.curseforge.com/minecraft/mc-mods/terra-world-generator) * Fabric: [Modrinth](https://modrinth.com/mod/terra) / [CurseForge](https://www.curseforge.com/minecraft/mc-mods/terra-world-generator)
* Forge **(ALPHA - NOT PRODUCTION-READY)**: [Modrinth](https://modrinth.com/mod/terra) / [CurseForge](https://www.curseforge.com/minecraft/mc-mods/terra-world-generator) * Forge **(ALPHA - NOT PRODUCTION-READY)**: [Modrinth](https://modrinth.com/mod/terra)
/ [CurseForge](https://www.curseforge.com/minecraft/mc-mods/terra-world-generator)
## Building and Running Terra ## Building and Running Terra
To build, simply run `./gradlew build` (`gradlew.bat build` on Windows). This will build all platforms, and To build, simply run `./gradlew build` (`gradlew.bat build` on Windows). This will build all platforms, and produce JARs
produce JARs in `platforms/<platform>/build/libs` in `platforms/<platform>/build/libs`
### Production JARs: ### Production JARs:
* Bukkit: `Terra-<version>-shaded.jar` * Bukkit: `Terra-<version>-shaded.jar`
* Fabric: `Terra-<version>-shaded-mapped.jar` * Fabric: `Terra-<version>-shaded-mapped.jar`
* Forge: `Terra-<version>-shaded.jar` * Forge: `Terra-<version>-shaded.jar`
### Building a Specific Platform ### Building a Specific Platform
To build a specific platform, run `gradlew :platforms:<platform>:build`. To build a specific platform, run `gradlew :platforms:<platform>:build`.
JARs are produced in `platforms/<platform>/build/libs`. JARs are produced in `platforms/<platform>/build/libs`.
### Running Minecraft in the IDE ### Running Minecraft in the IDE
To run Minecraft with Terra in the IDE (for testing) use the following tasks: To run Minecraft with Terra in the IDE (for testing) use the following tasks:
* Bukkit * Bukkit
* `installPaper` - Install a [Paper](https://github.com/PaperMC/Paper) test server. (Only needs to be run once). * `installPaper` - Install a [Paper](https://github.com/PaperMC/Paper) test server. (Only needs to be run once).
* `installPurpur` - Install a [Purpur](https://github.com/pl3xgaming/Purpur) test server. (Only needs to be run once). * `installPurpur` - Install a [Purpur](https://github.com/pl3xgaming/Purpur) test server. (Only needs to be run once).
* `runPaper` - Run the Paper test server with Terra (`installPaper` must have been run previously). * `runPaper` - Run the Paper test server with Terra (`installPaper` must have been run previously).
* `runPurpur` - Run the Purpur test server with Terra (`installPurpur` must have been run previously). * `runPurpur` - Run the Purpur test server with Terra (`installPurpur` must have been run previously).
* Fabric * Fabric
* `runClient` - Run a Minecraft Fabric client with Terra installed. * `runClient` - Run a Minecraft Fabric client with Terra installed.
* `runServer` - Run a Minecraft Fabric server with Terra installed. * `runServer` - Run a Minecraft Fabric server with Terra installed.
* Forge * Forge
* `runClient` - Run a Minecraft Forge client with Terra installed. * `runClient` - Run a Minecraft Forge client with Terra installed.
* `runServer` - Run a Minecraft Forge server with Terra installed. * `runServer` - Run a Minecraft Forge server with Terra installed.
## Contributing ## Contributing
Contributions are welcome! If you want to see a feature in Terra, please, open an issue, or implement it yourself and
submit a PR! Contributions are welcome! If you want to see a feature in Terra, please, open an issue, or implement it yourself and submit a PR!
Join the discord [here](https://discord.gg/PXUEbbF) if you would like to talk more about the project! Join the discord [here](https://discord.gg/PXUEbbF) if you would like to talk more about the project!
## Beta ## Beta
Terra is still in beta! While it is stable, it is not feature-complete. There is a lot to be added! Terra is still in beta! While it is stable, it is not feature-complete. There is a lot to be added!

View File

@ -1,9 +1,6 @@
package com.dfsek.terra package com.dfsek.terra
import org.gradle.api.Project import org.gradle.api.Project
import org.gradle.api.tasks.testing.Test
import org.gradle.kotlin.dsl.apply
import org.gradle.kotlin.dsl.withType
import java.io.ByteArrayOutputStream import java.io.ByteArrayOutputStream
fun Project.configureCommon() { fun Project.configureCommon() {

View File

@ -4,9 +4,10 @@ import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
import org.gradle.api.DefaultTask import org.gradle.api.DefaultTask
import org.gradle.api.Project import org.gradle.api.Project
import org.gradle.api.plugins.BasePluginConvention import org.gradle.api.plugins.BasePluginConvention
import org.gradle.api.tasks.bundling.Jar import org.gradle.kotlin.dsl.apply
import org.gradle.api.tasks.javadoc.Javadoc import org.gradle.kotlin.dsl.get
import org.gradle.kotlin.dsl.* import org.gradle.kotlin.dsl.getPlugin
import org.gradle.kotlin.dsl.named
import java.io.File import java.io.File
import java.net.URL import java.net.URL

View File

@ -1,8 +1,8 @@
package com.dfsek.terra.api.block; package com.dfsek.terra.api.block;
import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.api.Handle; import com.dfsek.terra.api.Handle;
import com.dfsek.terra.api.block.state.BlockState; import com.dfsek.terra.api.block.state.BlockState;
import com.dfsek.terra.api.vector.Location;
public interface Block extends Handle { public interface Block extends Handle {
void setBlockData(BlockData data, boolean physics); void setBlockData(BlockData data, boolean physics);

View File

@ -1,6 +1,5 @@
package com.dfsek.terra.api.block; package com.dfsek.terra.api.block;
import com.dfsek.terra.api.vector.Vector3;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
public enum BlockFace { public enum BlockFace {

View File

@ -4,6 +4,8 @@ import com.dfsek.terra.api.block.BlockData;
public interface AnaloguePowerable extends BlockData { public interface AnaloguePowerable extends BlockData {
int getMaximumPower(); int getMaximumPower();
int getPower(); int getPower();
void setPower(int power); void setPower(int power);
} }

View File

@ -7,8 +7,11 @@ import java.util.Set;
public interface RedstoneWire extends BlockData, AnaloguePowerable { public interface RedstoneWire extends BlockData, AnaloguePowerable {
Set<BlockFace> getAllowedFaces(); Set<BlockFace> getAllowedFaces();
Connection getFace(BlockFace face); Connection getFace(BlockFace face);
void setFace(BlockFace face, Connection connection); void setFace(BlockFace face, Connection connection);
enum Connection { enum Connection {
NONE, SIDE, UP NONE, SIDE, UP
} }

View File

@ -5,8 +5,11 @@ import com.dfsek.terra.api.block.BlockFace;
public interface Wall extends BlockData, Waterlogged { public interface Wall extends BlockData, Waterlogged {
boolean isUp(); boolean isUp();
void setHeight(BlockFace face, Height height); void setHeight(BlockFace face, Height height);
Height getHeight(BlockFace face); Height getHeight(BlockFace face);
void setUp(boolean up); void setUp(boolean up);
enum Height { enum Height {

View File

@ -1,13 +1,11 @@
package com.dfsek.terra.api.config; package com.dfsek.terra.api.config;
import com.dfsek.terra.api.registry.Registry; import com.dfsek.terra.api.registry.Registry;
import com.dfsek.terra.api.util.ProbabilityCollection;
import com.dfsek.terra.api.world.TerraWorld; import com.dfsek.terra.api.world.TerraWorld;
import com.dfsek.terra.api.world.biome.generation.BiomeProvider; import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
import com.dfsek.terra.api.world.generator.SamplerCache; import com.dfsek.terra.api.world.generator.SamplerCache;
import java.util.Map; import java.util.Map;
import java.util.Set;
public interface WorldConfig { public interface WorldConfig {
@SuppressWarnings("unchecked") @SuppressWarnings("unchecked")

View File

@ -1,6 +1,5 @@
package com.dfsek.terra.api.entity; package com.dfsek.terra.api.entity;
import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.api.Handle; import com.dfsek.terra.api.Handle;
import com.dfsek.terra.api.vector.Vector3; import com.dfsek.terra.api.vector.Vector3;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;

View File

@ -31,6 +31,7 @@ public @interface Priority {
* Low Priority. * Low Priority.
*/ */
int LOW = -1; int LOW = -1;
/** /**
* @return Priority of this event. Events are executed from lowest to highest priorities. * @return Priority of this event. Events are executed from lowest to highest priorities.
*/ */

View File

@ -1,10 +1,8 @@
package com.dfsek.terra.api.event.events.world.generation; package com.dfsek.terra.api.event.events.world.generation;
import com.dfsek.terra.api.config.ConfigPack; import com.dfsek.terra.api.config.ConfigPack;
import com.dfsek.terra.api.event.events.PackEvent;
import com.dfsek.terra.api.entity.Entity; import com.dfsek.terra.api.entity.Entity;
import com.dfsek.terra.api.vector.Location; import com.dfsek.terra.api.event.events.PackEvent;
import com.dfsek.terra.api.vector.Vector3;
/** /**
* Called when an entity is spawned. * Called when an entity is spawned.

View File

@ -1,11 +1,11 @@
package com.dfsek.terra.api.event.events.world.generation; package com.dfsek.terra.api.event.events.world.generation;
import com.dfsek.terra.api.block.Block;
import com.dfsek.terra.api.block.state.Container;
import com.dfsek.terra.api.config.ConfigPack; import com.dfsek.terra.api.config.ConfigPack;
import com.dfsek.terra.api.event.events.AbstractCancellable; import com.dfsek.terra.api.event.events.AbstractCancellable;
import com.dfsek.terra.api.event.events.Cancellable; import com.dfsek.terra.api.event.events.Cancellable;
import com.dfsek.terra.api.event.events.PackEvent; import com.dfsek.terra.api.event.events.PackEvent;
import com.dfsek.terra.api.block.Block;
import com.dfsek.terra.api.block.state.Container;
import com.dfsek.terra.api.structure.LootTable; import com.dfsek.terra.api.structure.LootTable;
import com.dfsek.terra.api.structure.Structure; import com.dfsek.terra.api.structure.Structure;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
@ -53,6 +53,7 @@ public class LootPopulateEvent extends AbstractCancellable implements PackEvent,
/** /**
* Get the loot table to be populated. * Get the loot table to be populated.
*
* @return Loot table. * @return Loot table.
*/ */
public LootTable getTable() { public LootTable getTable() {

View File

@ -8,6 +8,8 @@ import java.util.logging.Logger;
public interface Message { public interface Message {
void log(Logger logger, Level level, String... args); void log(Logger logger, Level level, String... args);
void send(CommandSender sender, String... args); void send(CommandSender sender, String... args);
boolean isEmpty(); boolean isEmpty();
} }

View File

@ -16,7 +16,7 @@ public class JarUtil {
public static void copyResourcesToDirectory(JarFile fromJar, String sourceDir, String destDir) throws IOException { public static void copyResourcesToDirectory(JarFile fromJar, String sourceDir, String destDir) throws IOException {
for(Enumeration<JarEntry> entries = fromJar.entries(); entries.hasMoreElements(); ) { for(Enumeration<JarEntry> entries = fromJar.entries(); entries.hasMoreElements(); ) {
JarEntry entry = entries.nextElement(); JarEntry entry = entries.nextElement();
if(entry.getName().startsWith(sourceDir + "/") && ! entry.isDirectory()) { if(entry.getName().startsWith(sourceDir + "/") && !entry.isDirectory()) {
File dest = new File(destDir + File.separator + entry.getName().substring(sourceDir.length() + 1)); File dest = new File(destDir + File.separator + entry.getName().substring(sourceDir.length() + 1));
if(dest.exists()) continue; if(dest.exists()) continue;
File parent = dest.getParentFile(); File parent = dest.getParentFile();

View File

@ -4,7 +4,6 @@ import com.dfsek.terra.api.world.generator.Sampler;
import net.jafama.FastMath; import net.jafama.FastMath;
import java.util.List; import java.util.List;
import java.util.Random;
/** /**
* Utility class for mathematical functions. * Utility class for mathematical functions.

View File

@ -1,6 +1,6 @@
package com.dfsek.terra.api.util.mutable; package com.dfsek.terra.api.util.mutable;
public interface MutablePrimitive<T> extends Comparable<T>{ public interface MutablePrimitive<T> extends Comparable<T> {
T get(); T get();
void set(T value); void set(T value);

View File

@ -1,8 +1,8 @@
package com.dfsek.terra.api.world; package com.dfsek.terra.api.world;
import com.dfsek.terra.api.block.Block;
import com.dfsek.terra.api.util.Range; import com.dfsek.terra.api.util.Range;
import com.dfsek.terra.api.vector.Location; import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.api.block.Block;
import java.util.List; import java.util.List;

View File

@ -1,10 +1,10 @@
package com.dfsek.terra.api.world; package com.dfsek.terra.api.world;
import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.api.Handle; import com.dfsek.terra.api.Handle;
import com.dfsek.terra.api.block.Block; import com.dfsek.terra.api.block.Block;
import com.dfsek.terra.api.entity.Entity; import com.dfsek.terra.api.entity.Entity;
import com.dfsek.terra.api.entity.EntityType; import com.dfsek.terra.api.entity.EntityType;
import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.api.world.generator.ChunkGenerator; import com.dfsek.terra.api.world.generator.ChunkGenerator;
import com.dfsek.terra.api.world.generator.GeneratorWrapper; import com.dfsek.terra.api.world.generator.GeneratorWrapper;
import com.dfsek.terra.api.world.generator.TerraChunkGenerator; import com.dfsek.terra.api.world.generator.TerraChunkGenerator;

View File

@ -1,7 +1,6 @@
package com.dfsek.terra.api.world.biome.generation.pipeline; package com.dfsek.terra.api.world.biome.generation.pipeline;
import com.dfsek.terra.api.world.biome.TerraBiome; import com.dfsek.terra.api.world.biome.TerraBiome;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeHolder;
public interface BiomeMutator { public interface BiomeMutator {
TerraBiome mutate(ViewPoint viewPoint, double x, double z); TerraBiome mutate(ViewPoint viewPoint, double x, double z);

View File

@ -1,7 +1,5 @@
package com.dfsek.terra.api.world.biome.generation.pipeline; package com.dfsek.terra.api.world.biome.generation.pipeline;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeHolder;
public interface Stage { public interface Stage {
boolean isExpansion(); boolean isExpansion();

View File

@ -17,10 +17,10 @@ import com.dfsek.terra.api.command.exception.InvalidArgumentsException;
import com.dfsek.terra.api.command.exception.MalformedCommandException; import com.dfsek.terra.api.command.exception.MalformedCommandException;
import com.dfsek.terra.api.command.exception.SwitchFormatException; import com.dfsek.terra.api.command.exception.SwitchFormatException;
import com.dfsek.terra.api.command.tab.TabCompleter; import com.dfsek.terra.api.command.tab.TabCompleter;
import com.dfsek.terra.api.inject.InjectorImpl;
import com.dfsek.terra.api.injection.exception.InjectionException;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.entity.Player; import com.dfsek.terra.api.entity.Player;
import com.dfsek.terra.api.inject.InjectorImpl;
import com.dfsek.terra.api.injection.exception.InjectionException;
import com.dfsek.terra.api.util.ReflectionUtil; import com.dfsek.terra.api.util.ReflectionUtil;
import net.jafama.FastMath; import net.jafama.FastMath;

View File

@ -1,10 +1,10 @@
package com.dfsek.terra.api.math; package com.dfsek.terra.api.math;
import com.dfsek.terra.api.util.FastRandom;
import com.dfsek.terra.api.util.GlueList;
import com.dfsek.terra.api.util.PopulationUtil; import com.dfsek.terra.api.util.PopulationUtil;
import com.dfsek.terra.api.vector.Vector3; import com.dfsek.terra.api.vector.Vector3;
import com.dfsek.terra.vector.Vector3Impl; import com.dfsek.terra.vector.Vector3Impl;
import com.dfsek.terra.api.util.FastRandom;
import com.dfsek.terra.api.util.GlueList;
import java.util.List; import java.util.List;
import java.util.Random; import java.util.Random;

View File

@ -4,7 +4,6 @@ import com.dfsek.terra.api.noise.NoiseSampler;
import com.dfsek.terra.api.util.hash.HashMapDoubleDouble; import com.dfsek.terra.api.util.hash.HashMapDoubleDouble;
public class NoiseFunction2 implements NoiseFunction { public class NoiseFunction2 implements NoiseFunction {
private final NoiseSampler gen; private final NoiseSampler gen;
private final Cache cache = new Cache(); private final Cache cache = new Cache();

View File

@ -346,7 +346,7 @@ public class Parser {
Token token = tokens.get(); Token token = tokens.get();
if(token.getType().equals(Token.Type.BLOCK_END)) break; // Stop parsing at block end. if(token.getType().equals(Token.Type.BLOCK_END)) break; // Stop parsing at block end.
Item<?> parsedItem = parseItem(tokens, parsedVariables, loop); Item<?> parsedItem = parseItem(tokens, parsedVariables, loop);
if (parsedItem != Function.NULL) { if(parsedItem != Function.NULL) {
parsedItems.add(parsedItem); parsedItems.add(parsedItem);
} }
if(tokens.hasNext() && !token.isLoopLike()) ParserUtil.checkType(tokens.consume(), Token.Type.STATEMENT_END); if(tokens.hasNext() && !token.isLoopLike()) ParserUtil.checkType(tokens.consume(), Token.Type.STATEMENT_END);

View File

@ -1,12 +1,12 @@
package com.dfsek.terra.api.structures.script; package com.dfsek.terra.api.structures.script;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.profiler.ProfileFrame;
import com.dfsek.terra.api.registry.Registry;
import com.dfsek.terra.api.structure.LootTable; import com.dfsek.terra.api.structure.LootTable;
import com.dfsek.terra.api.structure.Structure; import com.dfsek.terra.api.structure.Structure;
import com.dfsek.terra.api.vector.Location; import com.dfsek.terra.api.structure.buffer.Buffer;
import com.dfsek.terra.vector.LocationImpl; import com.dfsek.terra.api.structure.rotation.Rotation;
import com.dfsek.terra.api.world.Chunk;
import com.dfsek.terra.api.registry.Registry;
import com.dfsek.terra.api.structures.parser.Parser; import com.dfsek.terra.api.structures.parser.Parser;
import com.dfsek.terra.api.structures.parser.exceptions.ParseException; import com.dfsek.terra.api.structures.parser.exceptions.ParseException;
import com.dfsek.terra.api.structures.parser.lang.Block; import com.dfsek.terra.api.structures.parser.lang.Block;
@ -30,11 +30,10 @@ import com.dfsek.terra.api.structures.script.builders.UnaryBooleanFunctionBuilde
import com.dfsek.terra.api.structures.script.builders.UnaryNumberFunctionBuilder; import com.dfsek.terra.api.structures.script.builders.UnaryNumberFunctionBuilder;
import com.dfsek.terra.api.structures.script.builders.UnaryStringFunctionBuilder; import com.dfsek.terra.api.structures.script.builders.UnaryStringFunctionBuilder;
import com.dfsek.terra.api.structures.script.builders.ZeroArgFunctionBuilder; import com.dfsek.terra.api.structures.script.builders.ZeroArgFunctionBuilder;
import com.dfsek.terra.api.structure.rotation.Rotation;
import com.dfsek.terra.api.structure.buffer.Buffer;
import com.dfsek.terra.api.structures.structure.buffer.DirectBuffer; import com.dfsek.terra.api.structures.structure.buffer.DirectBuffer;
import com.dfsek.terra.api.structures.structure.buffer.StructureBuffer; import com.dfsek.terra.api.structures.structure.buffer.StructureBuffer;
import com.dfsek.terra.api.profiler.ProfileFrame; import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.api.world.Chunk;
import com.google.common.cache.Cache; import com.google.common.cache.Cache;
import com.google.common.cache.CacheBuilder; import com.google.common.cache.CacheBuilder;
import net.jafama.FastMath; import net.jafama.FastMath;

View File

@ -1,8 +1,8 @@
package com.dfsek.terra.api.structures.script; package com.dfsek.terra.api.structures.script;
import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments;
import com.dfsek.terra.api.structure.rotation.Rotation;
import com.dfsek.terra.api.structure.buffer.Buffer; import com.dfsek.terra.api.structure.buffer.Buffer;
import com.dfsek.terra.api.structure.rotation.Rotation;
import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments;
import java.util.Random; import java.util.Random;

View File

@ -1,18 +1,18 @@
package com.dfsek.terra.api.structures.script.functions; package com.dfsek.terra.api.structures.script.functions;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.vector.Vector3Impl;
import com.dfsek.terra.api.block.BlockData; import com.dfsek.terra.api.block.BlockData;
import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments; import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments;
import com.dfsek.terra.api.structures.parser.lang.Returnable; import com.dfsek.terra.api.structures.parser.lang.Returnable;
import com.dfsek.terra.api.structures.parser.lang.functions.Function; import com.dfsek.terra.api.structures.parser.lang.functions.Function;
import com.dfsek.terra.api.structures.parser.lang.variables.Variable; import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
import com.dfsek.terra.api.structures.script.TerraImplementationArguments; import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
import com.dfsek.terra.api.util.RotationUtil;
import com.dfsek.terra.api.structures.structure.buffer.items.BufferedBlock; import com.dfsek.terra.api.structures.structure.buffer.items.BufferedBlock;
import com.dfsek.terra.api.structures.tokenizer.Position; import com.dfsek.terra.api.structures.tokenizer.Position;
import com.dfsek.terra.api.util.RotationUtil;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.vector.Vector3Impl;
import net.jafama.FastMath; import net.jafama.FastMath;
import java.util.Map; import java.util.Map;

View File

@ -1,18 +1,18 @@
package com.dfsek.terra.api.structures.script.functions; package com.dfsek.terra.api.structures.script.functions;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.vector.Vector3Impl;
import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments; import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments;
import com.dfsek.terra.api.structures.parser.lang.Returnable; import com.dfsek.terra.api.structures.parser.lang.Returnable;
import com.dfsek.terra.api.structures.parser.lang.functions.Function; import com.dfsek.terra.api.structures.parser.lang.functions.Function;
import com.dfsek.terra.api.structures.parser.lang.variables.Variable; import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
import com.dfsek.terra.api.structures.script.TerraImplementationArguments; import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
import com.dfsek.terra.api.util.RotationUtil;
import com.dfsek.terra.api.structures.tokenizer.Position; import com.dfsek.terra.api.structures.tokenizer.Position;
import com.dfsek.terra.api.util.RotationUtil;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.api.world.biome.UserDefinedBiome; import com.dfsek.terra.api.world.biome.UserDefinedBiome;
import com.dfsek.terra.api.world.biome.generation.BiomeProvider; import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.vector.Vector3Impl;
import net.jafama.FastMath; import net.jafama.FastMath;
import java.util.Map; import java.util.Map;

View File

@ -1,15 +1,15 @@
package com.dfsek.terra.api.structures.script.functions; package com.dfsek.terra.api.structures.script.functions;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.vector.Vector3Impl;
import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments; import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments;
import com.dfsek.terra.api.structures.parser.lang.Returnable; import com.dfsek.terra.api.structures.parser.lang.Returnable;
import com.dfsek.terra.api.structures.parser.lang.functions.Function; import com.dfsek.terra.api.structures.parser.lang.functions.Function;
import com.dfsek.terra.api.structures.parser.lang.variables.Variable; import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
import com.dfsek.terra.api.structures.script.TerraImplementationArguments; import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
import com.dfsek.terra.api.util.RotationUtil;
import com.dfsek.terra.api.structures.tokenizer.Position; import com.dfsek.terra.api.structures.tokenizer.Position;
import com.dfsek.terra.api.util.RotationUtil;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.vector.Vector3Impl;
import net.jafama.FastMath; import net.jafama.FastMath;
import java.util.Map; import java.util.Map;

View File

@ -1,24 +1,23 @@
package com.dfsek.terra.api.structures.script.functions; package com.dfsek.terra.api.structures.script.functions;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.api.world.generator.SamplerCache;
import com.dfsek.terra.vector.LocationImpl;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.api.world.TerraWorld;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.vector.Vector3Impl;
import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments; import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments;
import com.dfsek.terra.api.structures.parser.lang.Returnable; import com.dfsek.terra.api.structures.parser.lang.Returnable;
import com.dfsek.terra.api.structures.parser.lang.functions.Function; import com.dfsek.terra.api.structures.parser.lang.functions.Function;
import com.dfsek.terra.api.structures.parser.lang.variables.Variable; import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
import com.dfsek.terra.api.structures.script.TerraImplementationArguments; import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
import com.dfsek.terra.api.util.RotationUtil;
import com.dfsek.terra.api.structures.tokenizer.Position; import com.dfsek.terra.api.structures.tokenizer.Position;
import com.dfsek.terra.api.util.RotationUtil;
import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.api.world.TerraWorld;
import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.world.biome.UserDefinedBiome; import com.dfsek.terra.api.world.biome.UserDefinedBiome;
import com.dfsek.terra.api.world.biome.generation.BiomeProvider; import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
import com.dfsek.terra.api.world.generator.SamplerCache;
import com.dfsek.terra.config.templates.BiomeTemplate; import com.dfsek.terra.config.templates.BiomeTemplate;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.vector.Vector3Impl;
import net.jafama.FastMath; import net.jafama.FastMath;
import java.util.Map; import java.util.Map;

View File

@ -1,9 +1,6 @@
package com.dfsek.terra.api.structures.script.functions; package com.dfsek.terra.api.structures.script.functions;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.vector.Vector3Impl;
import com.dfsek.terra.api.entity.EntityType; import com.dfsek.terra.api.entity.EntityType;
import com.dfsek.terra.api.structures.parser.exceptions.ParseException; import com.dfsek.terra.api.structures.parser.exceptions.ParseException;
import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments; import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments;
@ -12,9 +9,12 @@ import com.dfsek.terra.api.structures.parser.lang.constants.ConstantExpression;
import com.dfsek.terra.api.structures.parser.lang.functions.Function; import com.dfsek.terra.api.structures.parser.lang.functions.Function;
import com.dfsek.terra.api.structures.parser.lang.variables.Variable; import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
import com.dfsek.terra.api.structures.script.TerraImplementationArguments; import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
import com.dfsek.terra.api.util.RotationUtil;
import com.dfsek.terra.api.structures.structure.buffer.items.BufferedEntity; import com.dfsek.terra.api.structures.structure.buffer.items.BufferedEntity;
import com.dfsek.terra.api.structures.tokenizer.Position; import com.dfsek.terra.api.structures.tokenizer.Position;
import com.dfsek.terra.api.util.RotationUtil;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.vector.Vector3Impl;
import java.util.Map; import java.util.Map;

View File

@ -1,15 +1,15 @@
package com.dfsek.terra.api.structures.script.functions; package com.dfsek.terra.api.structures.script.functions;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.vector.Vector3Impl;
import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments; import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments;
import com.dfsek.terra.api.structures.parser.lang.Returnable; import com.dfsek.terra.api.structures.parser.lang.Returnable;
import com.dfsek.terra.api.structures.parser.lang.functions.Function; import com.dfsek.terra.api.structures.parser.lang.functions.Function;
import com.dfsek.terra.api.structures.parser.lang.variables.Variable; import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
import com.dfsek.terra.api.structures.script.TerraImplementationArguments; import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
import com.dfsek.terra.api.util.RotationUtil;
import com.dfsek.terra.api.structures.tokenizer.Position; import com.dfsek.terra.api.structures.tokenizer.Position;
import com.dfsek.terra.api.util.RotationUtil;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.vector.Vector3Impl;
import net.jafama.FastMath; import net.jafama.FastMath;
import java.util.Map; import java.util.Map;

View File

@ -1,21 +1,20 @@
package com.dfsek.terra.api.structures.script.functions; package com.dfsek.terra.api.structures.script.functions;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.structure.LootTable;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.vector.Vector3Impl;
import com.dfsek.terra.api.registry.Registry; import com.dfsek.terra.api.registry.Registry;
import com.dfsek.terra.api.structures.loot.LootTableImpl; import com.dfsek.terra.api.structure.LootTable;
import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments; import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments;
import com.dfsek.terra.api.structures.parser.lang.Returnable; import com.dfsek.terra.api.structures.parser.lang.Returnable;
import com.dfsek.terra.api.structures.parser.lang.functions.Function; import com.dfsek.terra.api.structures.parser.lang.functions.Function;
import com.dfsek.terra.api.structures.parser.lang.variables.Variable; import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
import com.dfsek.terra.api.structures.script.StructureScript; import com.dfsek.terra.api.structures.script.StructureScript;
import com.dfsek.terra.api.structures.script.TerraImplementationArguments; import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
import com.dfsek.terra.api.util.RotationUtil;
import com.dfsek.terra.api.structures.structure.buffer.items.BufferedLootApplication; import com.dfsek.terra.api.structures.structure.buffer.items.BufferedLootApplication;
import com.dfsek.terra.api.structures.tokenizer.Position; import com.dfsek.terra.api.structures.tokenizer.Position;
import com.dfsek.terra.api.util.RotationUtil;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.vector.Vector3Impl;
import net.jafama.FastMath; import net.jafama.FastMath;
import java.util.Map; import java.util.Map;

View File

@ -1,9 +1,6 @@
package com.dfsek.terra.api.structures.script.functions; package com.dfsek.terra.api.structures.script.functions;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.vector.Vector3Impl;
import com.dfsek.terra.api.block.BlockData; import com.dfsek.terra.api.block.BlockData;
import com.dfsek.terra.api.structures.parser.exceptions.ParseException; import com.dfsek.terra.api.structures.parser.exceptions.ParseException;
import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments; import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments;
@ -12,9 +9,12 @@ import com.dfsek.terra.api.structures.parser.lang.constants.ConstantExpression;
import com.dfsek.terra.api.structures.parser.lang.functions.Function; import com.dfsek.terra.api.structures.parser.lang.functions.Function;
import com.dfsek.terra.api.structures.parser.lang.variables.Variable; import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
import com.dfsek.terra.api.structures.script.TerraImplementationArguments; import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
import com.dfsek.terra.api.util.RotationUtil;
import com.dfsek.terra.api.structures.structure.buffer.items.BufferedPulledBlock; import com.dfsek.terra.api.structures.structure.buffer.items.BufferedPulledBlock;
import com.dfsek.terra.api.structures.tokenizer.Position; import com.dfsek.terra.api.structures.tokenizer.Position;
import com.dfsek.terra.api.util.RotationUtil;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.vector.Vector3Impl;
import net.jafama.FastMath; import net.jafama.FastMath;
import java.util.Map; import java.util.Map;

View File

@ -1,15 +1,15 @@
package com.dfsek.terra.api.structures.script.functions; package com.dfsek.terra.api.structures.script.functions;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.vector.Vector3Impl;
import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments; import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments;
import com.dfsek.terra.api.structures.parser.lang.Returnable; import com.dfsek.terra.api.structures.parser.lang.Returnable;
import com.dfsek.terra.api.structures.parser.lang.functions.Function; import com.dfsek.terra.api.structures.parser.lang.functions.Function;
import com.dfsek.terra.api.structures.parser.lang.variables.Variable; import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
import com.dfsek.terra.api.structures.script.TerraImplementationArguments; import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
import com.dfsek.terra.api.util.RotationUtil;
import com.dfsek.terra.api.structures.tokenizer.Position; import com.dfsek.terra.api.structures.tokenizer.Position;
import com.dfsek.terra.api.util.RotationUtil;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.vector.Vector3Impl;
import net.jafama.FastMath; import net.jafama.FastMath;
import java.util.Map; import java.util.Map;

View File

@ -1,17 +1,17 @@
package com.dfsek.terra.api.structures.script.functions; package com.dfsek.terra.api.structures.script.functions;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.vector.Vector3Impl;
import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments; import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments;
import com.dfsek.terra.api.structures.parser.lang.Returnable; import com.dfsek.terra.api.structures.parser.lang.Returnable;
import com.dfsek.terra.api.structures.parser.lang.functions.Function; import com.dfsek.terra.api.structures.parser.lang.functions.Function;
import com.dfsek.terra.api.structures.parser.lang.variables.Variable; import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
import com.dfsek.terra.api.structures.script.TerraImplementationArguments; import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
import com.dfsek.terra.api.util.RotationUtil;
import com.dfsek.terra.api.structures.structure.buffer.items.BufferedStateManipulator; import com.dfsek.terra.api.structures.structure.buffer.items.BufferedStateManipulator;
import com.dfsek.terra.api.structures.tokenizer.Position; import com.dfsek.terra.api.structures.tokenizer.Position;
import com.dfsek.terra.api.util.RotationUtil;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.vector.Vector3Impl;
import net.jafama.FastMath; import net.jafama.FastMath;
import java.util.Map; import java.util.Map;

View File

@ -1,21 +1,21 @@
package com.dfsek.terra.api.structures.script.functions; package com.dfsek.terra.api.structures.script.functions;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.structure.Structure;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.api.vector.Vector3;
import com.dfsek.terra.vector.Vector3Impl;
import com.dfsek.terra.api.registry.Registry; import com.dfsek.terra.api.registry.Registry;
import com.dfsek.terra.api.structure.Structure;
import com.dfsek.terra.api.structure.rotation.Rotation;
import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments; import com.dfsek.terra.api.structures.parser.lang.ImplementationArguments;
import com.dfsek.terra.api.structures.parser.lang.Returnable; import com.dfsek.terra.api.structures.parser.lang.Returnable;
import com.dfsek.terra.api.structures.parser.lang.functions.Function; import com.dfsek.terra.api.structures.parser.lang.functions.Function;
import com.dfsek.terra.api.structures.parser.lang.variables.Variable; import com.dfsek.terra.api.structures.parser.lang.variables.Variable;
import com.dfsek.terra.api.structures.script.TerraImplementationArguments; import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
import com.dfsek.terra.api.structure.rotation.Rotation;
import com.dfsek.terra.api.util.RotationUtil;
import com.dfsek.terra.api.structures.structure.buffer.IntermediateBuffer; import com.dfsek.terra.api.structures.structure.buffer.IntermediateBuffer;
import com.dfsek.terra.api.structures.tokenizer.Position; import com.dfsek.terra.api.structures.tokenizer.Position;
import com.dfsek.terra.api.util.RotationUtil;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.api.vector.Vector3;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.vector.Vector3Impl;
import net.jafama.FastMath; import net.jafama.FastMath;
import java.util.List; import java.util.List;

View File

@ -1,9 +1,8 @@
package com.dfsek.terra.api.structures.structure.buffer; package com.dfsek.terra.api.structures.structure.buffer;
import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.vector.LocationImpl;
import com.dfsek.terra.api.structure.buffer.BufferedItem; import com.dfsek.terra.api.structure.buffer.BufferedItem;
import com.dfsek.terra.api.util.GlueList; import com.dfsek.terra.api.util.GlueList;
import com.dfsek.terra.api.vector.Location;
import java.util.List; import java.util.List;

View File

@ -1,9 +1,8 @@
package com.dfsek.terra.api.structures.structure.buffer; package com.dfsek.terra.api.structures.structure.buffer;
import com.dfsek.terra.api.structure.buffer.Buffer; import com.dfsek.terra.api.structure.buffer.Buffer;
import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.vector.LocationImpl;
import com.dfsek.terra.api.structure.buffer.BufferedItem; import com.dfsek.terra.api.structure.buffer.BufferedItem;
import com.dfsek.terra.api.vector.Location;
import java.util.LinkedHashMap; import java.util.LinkedHashMap;
import java.util.Map; import java.util.Map;

View File

@ -1,10 +1,9 @@
package com.dfsek.terra.api.structures.structure.buffer; package com.dfsek.terra.api.structures.structure.buffer;
import com.dfsek.terra.api.structure.buffer.Buffer; import com.dfsek.terra.api.structure.buffer.Buffer;
import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.vector.LocationImpl;
import com.dfsek.terra.api.vector.Vector3;
import com.dfsek.terra.api.structure.buffer.BufferedItem; import com.dfsek.terra.api.structure.buffer.BufferedItem;
import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.api.vector.Vector3;
public class IntermediateBuffer implements Buffer { public class IntermediateBuffer implements Buffer {
private final Buffer original; private final Buffer original;

View File

@ -1,10 +1,9 @@
package com.dfsek.terra.api.structures.structure.buffer; package com.dfsek.terra.api.structures.structure.buffer;
import com.dfsek.terra.api.structure.buffer.Buffer; import com.dfsek.terra.api.structure.buffer.Buffer;
import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.vector.LocationImpl;
import com.dfsek.terra.api.world.Chunk;
import com.dfsek.terra.api.structure.buffer.BufferedItem; import com.dfsek.terra.api.structure.buffer.BufferedItem;
import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.api.world.Chunk;
import net.jafama.FastMath; import net.jafama.FastMath;
import java.util.LinkedHashMap; import java.util.LinkedHashMap;

View File

@ -1,12 +1,11 @@
package com.dfsek.terra.api.structures.structure.buffer.items; package com.dfsek.terra.api.structures.structure.buffer.items;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.structure.buffer.BufferedItem;
import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.vector.LocationImpl;
import com.dfsek.terra.api.block.Block; import com.dfsek.terra.api.block.Block;
import com.dfsek.terra.api.block.BlockData; import com.dfsek.terra.api.block.BlockData;
import com.dfsek.terra.api.block.data.Waterlogged; import com.dfsek.terra.api.block.data.Waterlogged;
import com.dfsek.terra.api.structure.buffer.BufferedItem;
import com.dfsek.terra.api.vector.Location;
public class BufferedBlock implements BufferedItem { public class BufferedBlock implements BufferedItem {
private final BlockData data; private final BlockData data;

View File

@ -1,11 +1,11 @@
package com.dfsek.terra.api.structures.structure.buffer.items; package com.dfsek.terra.api.structures.structure.buffer.items;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.entity.Entity;
import com.dfsek.terra.api.entity.EntityType;
import com.dfsek.terra.api.event.events.world.generation.EntitySpawnEvent; import com.dfsek.terra.api.event.events.world.generation.EntitySpawnEvent;
import com.dfsek.terra.api.structure.buffer.BufferedItem; import com.dfsek.terra.api.structure.buffer.BufferedItem;
import com.dfsek.terra.api.vector.Location; import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.api.entity.Entity;
import com.dfsek.terra.api.entity.EntityType;
public class BufferedEntity implements BufferedItem { public class BufferedEntity implements BufferedItem {

View File

@ -1,17 +1,15 @@
package com.dfsek.terra.api.structures.structure.buffer.items; package com.dfsek.terra.api.structures.structure.buffer.items;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.event.events.world.generation.LootPopulateEvent;
import com.dfsek.terra.api.structure.LootTable;
import com.dfsek.terra.api.structure.buffer.BufferedItem;
import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.vector.LocationImpl;
import com.dfsek.terra.api.block.Block; import com.dfsek.terra.api.block.Block;
import com.dfsek.terra.api.block.state.BlockState; import com.dfsek.terra.api.block.state.BlockState;
import com.dfsek.terra.api.block.state.Container; import com.dfsek.terra.api.block.state.Container;
import com.dfsek.terra.api.structures.loot.LootTableImpl; import com.dfsek.terra.api.event.events.world.generation.LootPopulateEvent;
import com.dfsek.terra.api.structure.LootTable;
import com.dfsek.terra.api.structure.buffer.BufferedItem;
import com.dfsek.terra.api.structures.script.StructureScript; import com.dfsek.terra.api.structures.script.StructureScript;
import com.dfsek.terra.api.util.FastRandom; import com.dfsek.terra.api.util.FastRandom;
import com.dfsek.terra.api.vector.Location;
public class BufferedLootApplication implements BufferedItem { public class BufferedLootApplication implements BufferedItem {
private final LootTable table; private final LootTable table;

View File

@ -1,11 +1,10 @@
package com.dfsek.terra.api.structures.structure.buffer.items; package com.dfsek.terra.api.structures.structure.buffer.items;
import com.dfsek.terra.api.structure.buffer.BufferedItem;
import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.vector.LocationImpl;
import com.dfsek.terra.api.block.Block; import com.dfsek.terra.api.block.Block;
import com.dfsek.terra.api.block.BlockData; import com.dfsek.terra.api.block.BlockData;
import com.dfsek.terra.api.block.BlockFace; import com.dfsek.terra.api.block.BlockFace;
import com.dfsek.terra.api.structure.buffer.BufferedItem;
import com.dfsek.terra.api.vector.Location;
public class BufferedPulledBlock implements BufferedItem { public class BufferedPulledBlock implements BufferedItem {
private final BlockData data; private final BlockData data;

View File

@ -1,10 +1,9 @@
package com.dfsek.terra.api.structures.structure.buffer.items; package com.dfsek.terra.api.structures.structure.buffer.items;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.block.state.BlockState;
import com.dfsek.terra.api.structure.buffer.BufferedItem; import com.dfsek.terra.api.structure.buffer.BufferedItem;
import com.dfsek.terra.api.vector.Location; import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.vector.LocationImpl;
import com.dfsek.terra.api.block.state.BlockState;
public class BufferedStateManipulator implements BufferedItem { public class BufferedStateManipulator implements BufferedItem {
private final TerraPlugin main; private final TerraPlugin main;

View File

@ -65,18 +65,17 @@ import static net.jafama.FastMath.*;
* Remove O(n*m)<br> * Remove O(n*m)<br>
* Search O(m)<br> * Search O(m)<br>
* Access O(m) * Access O(m)
* * <p>
* version v1.0 * version v1.0
* * <p>
* Date: 03.11.2015 * Date: 03.11.2015
* *
* * @param <T> the type of elements held in this collection
* @author Ertuğrul Çetin ~ ertu.ctn@gmail.com * @author Ertuğrul Çetin ~ ertu.ctn@gmail.com
* @see Collection * @see Collection
* @see List * @see List
* @see LinkedList * @see LinkedList
* @see ArrayList * @see ArrayList
* @param <T> the type of elements held in this collection
*/ */
@SuppressWarnings({"ManualMinMaxCalculation", "ConstantConditions", "ManualArrayToCollectionCopy"}) @SuppressWarnings({"ManualMinMaxCalculation", "ConstantConditions", "ManualArrayToCollectionCopy"})
public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable, Serializable { public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable, Serializable {
@ -119,7 +118,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
int len = arr.length; int len = arr.length;
if (len != 0) { if(len != 0) {
Node<T> initNode = new Node<>(null, null, 0, len); Node<T> initNode = new Node<>(null, null, 0, len);
@ -146,7 +145,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
Node<T> l = last; Node<T> l = last;
if (l.isAddable()) { if(l.isAddable()) {
l.add(element); l.add(element);
} else { } else {
Node<T> newNode = new Node<>(l, null, size); Node<T> newNode = new Node<>(l, null, size);
@ -169,7 +168,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
Node<T> node = getNodeForAdd(index); Node<T> node = getNodeForAdd(index);
if (node == null) { if(node == null) {
Node<T> l = last; Node<T> l = last;
@ -183,7 +182,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
} }
//if it is last and has extra space for element... //if it is last and has extra space for element...
if (node == last && node.elementData.length - node.elementDataPointer > 0) { if(node == last && node.elementData.length - node.elementDataPointer > 0) {
int nodeArrIndex = index - node.startingIndex; int nodeArrIndex = index - node.startingIndex;
@ -191,7 +190,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
node.elementData[nodeArrIndex] = element; node.elementData[nodeArrIndex] = element;
if (nodeArrIndex > 0) { if(nodeArrIndex > 0) {
System.arraycopy(node.elementData, 0, node.elementData, 0, nodeArrIndex); System.arraycopy(node.elementData, 0, node.elementData, 0, nodeArrIndex);
} }
@ -207,7 +206,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
newElementData[nodeArrIndex] = element; newElementData[nodeArrIndex] = element;
if (nodeArrIndex > 0) { if(nodeArrIndex > 0) {
System.arraycopy(node.elementData, 0, newElementData, 0, nodeArrIndex); System.arraycopy(node.elementData, 0, newElementData, 0, nodeArrIndex);
} }
@ -224,14 +223,14 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
private void rangeCheckForAdd(int index) { private void rangeCheckForAdd(int index) {
if (index > size || index < 0) { if(index > size || index < 0) {
throw new ArrayIndexOutOfBoundsException(index); throw new ArrayIndexOutOfBoundsException(index);
} }
} }
private void updateNodesAfterAdd(Node<T> nodeFrom) { private void updateNodesAfterAdd(Node<T> nodeFrom) {
for (Node<T> node = nodeFrom.next; node != null; node = node.next) { for(Node<T> node = nodeFrom.next; node != null; node = node.next) {
node.startingIndex++; node.startingIndex++;
node.endingIndex++; node.endingIndex++;
@ -252,9 +251,9 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
return false; return false;
} }
if (size == 0) { if(size == 0) {
if (initialCapacity >= len) { if(initialCapacity >= len) {
System.arraycopy(collection, 0, last.elementData, 0, len); System.arraycopy(collection, 0, last.elementData, 0, len);
} else { } else {
last.elementData = Arrays.copyOf((T[]) collection, len); last.elementData = Arrays.copyOf((T[]) collection, len);
@ -274,7 +273,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
int remainedStorage = elementDataLen - elementSize; int remainedStorage = elementDataLen - elementSize;
if (remainedStorage == 0) { if(remainedStorage == 0) {
Node<T> l = last; Node<T> l = last;
@ -296,7 +295,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
return true; return true;
} }
if (len <= remainedStorage) { if(len <= remainedStorage) {
System.arraycopy(collection, 0, last.elementData, elementSize, len); System.arraycopy(collection, 0, last.elementData, elementSize, len);
@ -308,7 +307,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
return true; return true;
} }
if (len > remainedStorage) { if(len > remainedStorage) {
System.arraycopy(collection, 0, last.elementData, elementSize, remainedStorage); System.arraycopy(collection, 0, last.elementData, elementSize, remainedStorage);
@ -371,11 +370,11 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
int index = 0; int index = 0;
if (o == null) { if(o == null) {
for (Node<T> node = first; node != null; node = node.next) { for(Node<T> node = first; node != null; node = node.next) {
for (int i = 0; i < node.elementDataPointer; i++) { for(int i = 0; i < node.elementDataPointer; i++) {
if (node.elementData[i] == null) { if(node.elementData[i] == null) {
return index; return index;
} }
index++; index++;
@ -383,9 +382,9 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
} }
} else { } else {
for (Node<T> node = first; node != null; node = node.next) { for(Node<T> node = first; node != null; node = node.next) {
for (int i = 0; i < node.elementDataPointer; i++) { for(int i = 0; i < node.elementDataPointer; i++) {
if (o.equals(node.elementData[i])) { if(o.equals(node.elementData[i])) {
return index; return index;
} }
index++; index++;
@ -401,10 +400,10 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
int index = size - 1; int index = size - 1;
if (o == null) { if(o == null) {
for (Node<T> node = last; node != null; node = node.pre) { for(Node<T> node = last; node != null; node = node.pre) {
for (int i = node.elementDataPointer - 1; i >= 0; i--) { for(int i = node.elementDataPointer - 1; i >= 0; i--) {
if (node.elementData[i] == null) { if(node.elementData[i] == null) {
return index; return index;
} }
index--; index--;
@ -412,9 +411,9 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
} }
} else { } else {
for (Node<T> node = last; node != null; node = node.pre) { for(Node<T> node = last; node != null; node = node.pre) {
for (int i = node.elementDataPointer - 1; i >= 0; i--) { for(int i = node.elementDataPointer - 1; i >= 0; i--) {
if (o.equals(node.elementData[i])) { if(o.equals(node.elementData[i])) {
return index; return index;
} }
index--; index--;
@ -437,7 +436,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
Node<T> node; Node<T> node;
if (size == 2 && first != last) { if(size == 2 && first != last) {
Node<T> newNode = new Node<>(null, null, 0, 2); Node<T> newNode = new Node<>(null, null, 0, 2);
newNode.add(first.elementData[0]); newNode.add(first.elementData[0]);
@ -458,11 +457,11 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
int numMoved = elementSize - nodeArrIndex - 1; int numMoved = elementSize - nodeArrIndex - 1;
if (numMoved > 0) { if(numMoved > 0) {
System.arraycopy(node.elementData, nodeArrIndex + 1, node.elementData, nodeArrIndex, numMoved); System.arraycopy(node.elementData, nodeArrIndex + 1, node.elementData, nodeArrIndex, numMoved);
} }
if (first == last || node == last) { if(first == last || node == last) {
node.elementData[elementSize - 1] = null; node.elementData[elementSize - 1] = null;
} else { } else {
node.elementData = Arrays.copyOf(node.elementData, elementSize - 1); node.elementData = Arrays.copyOf(node.elementData, elementSize - 1);
@ -473,19 +472,19 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
updateNodesAfterRemove(node); updateNodesAfterRemove(node);
if (node.elementDataPointer == 0 && first != last) { if(node.elementDataPointer == 0 && first != last) {
Node<T> next = node.next; Node<T> next = node.next;
Node<T> prev = node.pre; Node<T> prev = node.pre;
if (prev == null) { if(prev == null) {
first = next; first = next;
} else { } else {
prev.next = next; prev.next = next;
node.pre = null; node.pre = null;
} }
if (next == null) { if(next == null) {
last = prev; last = prev;
} else { } else {
next.pre = prev; next.pre = prev;
@ -513,7 +512,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
boolean isModified = false; boolean isModified = false;
for (Object o : arr) { for(Object o : arr) {
isModified |= remove(o); isModified |= remove(o);
} }
@ -534,9 +533,9 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
Object[] elements = toArray(); Object[] elements = toArray();
for (Object element : elements) { for(Object element : elements) {
if (!c.contains(element)) { if(!c.contains(element)) {
isModified |= remove(element); isModified |= remove(element);
} }
} }
@ -549,7 +548,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
int index = indexOf(o); int index = indexOf(o);
if (index != -1) { if(index != -1) {
remove(index); remove(index);
return true; return true;
} else { } else {
@ -559,7 +558,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
private void updateNodesAfterRemove(Node<T> fromNode) { private void updateNodesAfterRemove(Node<T> fromNode) {
for (Node<T> node = fromNode.next; node != null; node = node.next) { for(Node<T> node = fromNode.next; node != null; node = node.next) {
node.startingIndex = (--node.startingIndex < 0) ? 0 : node.startingIndex; node.startingIndex = (--node.startingIndex < 0) ? 0 : node.startingIndex;
node.endingIndex = (--node.endingIndex < 0) ? 0 : node.endingIndex; node.endingIndex = (--node.endingIndex < 0) ? 0 : node.endingIndex;
@ -578,34 +577,34 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
int lastMinDistance = min(abs(index - lastStartingIndex), abs(index - lastEndingIndex)); int lastMinDistance = min(abs(index - lastStartingIndex), abs(index - lastEndingIndex));
if (firstMinDistance <= lastMinDistance) { if(firstMinDistance <= lastMinDistance) {
Node<T> node = first; Node<T> node = first;
do { do {
if (node.startingIndex <= index && index <= node.endingIndex) { if(node.startingIndex <= index && index <= node.endingIndex) {
return node; return node;
} }
node = node.next; node = node.next;
} while (true); } while(true);
} else { } else {
Node<T> node = last; Node<T> node = last;
do { do {
if (node.startingIndex <= index && index <= node.endingIndex) { if(node.startingIndex <= index && index <= node.endingIndex) {
return node; return node;
} }
node = node.pre; node = node.pre;
} while (true); } while(true);
} }
} }
private Node<T> getNodeForAdd(int index) { private Node<T> getNodeForAdd(int index) {
if (index == size && !(last.startingIndex <= index && index <= last.endingIndex)) { if(index == size && !(last.startingIndex <= index && index <= last.endingIndex)) {
return null; return null;
} }
@ -614,7 +613,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
private void rangeCheck(int index) { private void rangeCheck(int index) {
if (index >= size || index < 0) { if(index >= size || index < 0) {
throw new ArrayIndexOutOfBoundsException(index); throw new ArrayIndexOutOfBoundsException(index);
} }
} }
@ -622,7 +621,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
@Override @Override
public void clear() { public void clear() {
for (Node<T> node = first; node != null; ) { for(Node<T> node = first; node != null; ) {
Node<T> next = node.next; Node<T> next = node.next;
@ -653,9 +652,9 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
int pointer = last.elementDataPointer; int pointer = last.elementDataPointer;
int arrLen = last.elementData.length; int arrLen = last.elementData.length;
if (pointer < arrLen && arrLen > 2) { if(pointer < arrLen && arrLen > 2) {
if (pointer < 2) { if(pointer < 2) {
last.elementData = Arrays.copyOf(last.elementData, 2); last.elementData = Arrays.copyOf(last.elementData, 2);
last.endingIndex -= arrLen - 2; last.endingIndex -= arrLen - 2;
} else { } else {
@ -676,11 +675,11 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
Object[] objects = new Object[size]; Object[] objects = new Object[size];
int i = 0; int i = 0;
for (Node<T> node = first; node != null; node = node.next) { for(Node<T> node = first; node != null; node = node.next) {
int len = node.elementDataPointer; int len = node.elementDataPointer;
if (len > 0) { if(len > 0) {
System.arraycopy(node.elementData, 0, objects, i, len); System.arraycopy(node.elementData, 0, objects, i, len);
} }
@ -842,15 +841,15 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
int temp = j - 1; int temp = j - 1;
if (temp < 0) { if(temp < 0) {
throw new NoSuchElementException(); throw new NoSuchElementException();
} }
if (temp >= last.endingIndex + 1) { if(temp >= last.endingIndex + 1) {
throw new ConcurrentModificationException(); throw new ConcurrentModificationException();
} }
if (j == size) { if(j == size) {
node = last; node = last;
@ -860,7 +859,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
} }
int index = j - node.startingIndex; int index = j - node.startingIndex;
if (index == 0) { if(index == 0) {
node = node.pre; node = node.pre;
@ -871,7 +870,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
T val = node.elementData[--i]; T val = node.elementData[--i];
if (i < 0) { if(i < 0) {
node = node.pre; node = node.pre;
i = (node != null) ? node.elementDataPointer : 0; i = (node != null) ? node.elementDataPointer : 0;
} }
@ -896,7 +895,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
@Override @Override
public void set(T t) { public void set(T t) {
if (lastReturn < 0) { if(lastReturn < 0) {
throw new IllegalStateException(); throw new IllegalStateException();
} }
@ -904,7 +903,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
try { try {
com.dfsek.terra.api.util.GlueList.this.set(lastReturn, t); com.dfsek.terra.api.util.GlueList.this.set(lastReturn, t);
} catch (IndexOutOfBoundsException e) { } catch(IndexOutOfBoundsException e) {
throw new ConcurrentModificationException(); throw new ConcurrentModificationException();
} }
} }
@ -927,7 +926,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
elementDataPointer = (node != null) ? node.elementDataPointer : 0; elementDataPointer = (node != null) ? node.elementDataPointer : 0;
expectedModCount = modCount; expectedModCount = modCount;
} catch (IndexOutOfBoundsException e) { } catch(IndexOutOfBoundsException e) {
throw new ConcurrentModificationException(); throw new ConcurrentModificationException();
} }
} }
@ -941,13 +940,13 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
s.writeInt(size); s.writeInt(size);
for (Node<T> node = first; node != null; node = node.next) { for(Node<T> node = first; node != null; node = node.next) {
for (int i = 0; i < node.elementDataPointer; i++) { for(int i = 0; i < node.elementDataPointer; i++) {
s.writeObject(node.elementData[i]); s.writeObject(node.elementData[i]);
} }
} }
if (modCount != expectedModCount) { if(modCount != expectedModCount) {
throw new ConcurrentModificationException(); throw new ConcurrentModificationException();
} }
} }
@ -962,7 +961,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
int size = s.readInt(); int size = s.readInt();
for (int i = 0; i < size; i++) { for(int i = 0; i < size; i++) {
last.add((T) s.readObject()); last.add((T) s.readObject());
} }
} }

View File

@ -1,18 +1,17 @@
package com.dfsek.terra.api.util; package com.dfsek.terra.api.util;
import com.dfsek.terra.api.util.MathUtil;
import com.dfsek.terra.api.world.generator.Palette; import com.dfsek.terra.api.world.generator.Palette;
import com.dfsek.terra.api.world.generator.Sampler;
import com.dfsek.terra.api.world.palette.slant.SlantHolder; import com.dfsek.terra.api.world.palette.slant.SlantHolder;
import com.dfsek.terra.config.templates.BiomeTemplate; import com.dfsek.terra.config.templates.BiomeTemplate;
import com.dfsek.terra.api.world.generator.Sampler;
public final class PaletteUtil { public final class PaletteUtil {
public static Palette getPalette(int x, int y, int z, BiomeTemplate c, Sampler sampler) { public static Palette getPalette(int x, int y, int z, BiomeTemplate c, Sampler sampler) {
SlantHolder slant = c.getSlant(); SlantHolder slant = c.getSlant();
if (slant != null) { if(slant != null) {
double slope = MathUtil.derivative(sampler, x, y, z); double slope = MathUtil.derivative(sampler, x, y, z);
if (slope > slant.getMinSlope()) { if(slope > slant.getMinSlope()) {
return slant.getPalette(slope).getPalette(y); return slant.getPalette(slope).getPalette(y);
} }
} }

View File

@ -1,7 +1,5 @@
package com.dfsek.terra.api.util; package com.dfsek.terra.api.util;
import com.dfsek.terra.api.structure.rotation.Rotation;
import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.api.block.Axis; import com.dfsek.terra.api.block.Axis;
import com.dfsek.terra.api.block.BlockData; import com.dfsek.terra.api.block.BlockData;
import com.dfsek.terra.api.block.BlockFace; import com.dfsek.terra.api.block.BlockFace;
@ -12,6 +10,8 @@ import com.dfsek.terra.api.block.data.Rail;
import com.dfsek.terra.api.block.data.RedstoneWire; import com.dfsek.terra.api.block.data.RedstoneWire;
import com.dfsek.terra.api.block.data.Rotatable; import com.dfsek.terra.api.block.data.Rotatable;
import com.dfsek.terra.api.block.data.Wall; import com.dfsek.terra.api.block.data.Wall;
import com.dfsek.terra.api.structure.rotation.Rotation;
import com.dfsek.terra.api.vector.Vector2;
import com.google.common.collect.Sets; import com.google.common.collect.Sets;
import net.jafama.FastMath; import net.jafama.FastMath;

View File

@ -1,7 +1,7 @@
package com.dfsek.terra.api.util.collections; package com.dfsek.terra.api.util.collections;
import com.dfsek.terra.api.util.MathUtil;
import com.dfsek.terra.api.noise.NoiseSampler; import com.dfsek.terra.api.noise.NoiseSampler;
import com.dfsek.terra.api.util.MathUtil;
import com.dfsek.terra.api.util.ProbabilityCollection; import com.dfsek.terra.api.util.ProbabilityCollection;
import com.dfsek.terra.api.util.mutable.MutableInteger; import com.dfsek.terra.api.util.mutable.MutableInteger;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;

View File

@ -2,7 +2,6 @@ package com.dfsek.terra.api.world.biome;
import com.dfsek.terra.api.util.ProbabilityCollection; import com.dfsek.terra.api.util.ProbabilityCollection;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
import com.dfsek.terra.config.templates.BiomeTemplate; import com.dfsek.terra.config.templates.BiomeTemplate;
import com.dfsek.terra.world.generation.WorldGenerator; import com.dfsek.terra.world.generation.WorldGenerator;

View File

@ -2,8 +2,8 @@ package com.dfsek.terra.api.world.biome.pipeline;
import com.dfsek.terra.api.vector.Vector2; import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.api.world.biome.TerraBiome; import com.dfsek.terra.api.world.biome.TerraBiome;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeHolder;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeExpander; import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeExpander;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeHolder;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeMutator; import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeMutator;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeSource; import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeSource;

View File

@ -1,11 +1,11 @@
package com.dfsek.terra.api.world.biome.pipeline; package com.dfsek.terra.api.world.biome.pipeline;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeHolder;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.api.util.GlueList; import com.dfsek.terra.api.util.GlueList;
import com.dfsek.terra.api.util.seeded.StageSeeded; import com.dfsek.terra.api.util.seeded.StageSeeded;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeHolder;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeSource; import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeSource;
import com.dfsek.terra.api.world.biome.generation.pipeline.Stage; import com.dfsek.terra.api.world.biome.generation.pipeline.Stage;
import com.dfsek.terra.vector.Vector2Impl;
import java.util.List; import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;

View File

@ -1,7 +1,7 @@
package com.dfsek.terra.api.world.biome.pipeline.expand; package com.dfsek.terra.api.world.biome.pipeline.expand;
import com.dfsek.terra.api.util.MathUtil;
import com.dfsek.terra.api.noise.NoiseSampler; import com.dfsek.terra.api.noise.NoiseSampler;
import com.dfsek.terra.api.util.MathUtil;
import com.dfsek.terra.api.world.biome.TerraBiome; import com.dfsek.terra.api.world.biome.TerraBiome;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeExpander; import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeExpander;

View File

@ -2,7 +2,6 @@ package com.dfsek.terra.api.world.biome.pipeline.mutator;
import com.dfsek.terra.api.noise.NoiseSampler; import com.dfsek.terra.api.noise.NoiseSampler;
import com.dfsek.terra.api.util.ProbabilityCollection; import com.dfsek.terra.api.util.ProbabilityCollection;
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
import com.dfsek.terra.api.world.biome.TerraBiome; import com.dfsek.terra.api.world.biome.TerraBiome;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeMutator; import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeMutator;

View File

@ -2,7 +2,6 @@ package com.dfsek.terra.api.world.biome.pipeline.mutator;
import com.dfsek.terra.api.noise.NoiseSampler; import com.dfsek.terra.api.noise.NoiseSampler;
import com.dfsek.terra.api.util.ProbabilityCollection; import com.dfsek.terra.api.util.ProbabilityCollection;
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
import com.dfsek.terra.api.world.biome.TerraBiome; import com.dfsek.terra.api.world.biome.TerraBiome;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeMutator; import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeMutator;

View File

@ -2,7 +2,6 @@ package com.dfsek.terra.api.world.biome.pipeline.mutator;
import com.dfsek.terra.api.noise.NoiseSampler; import com.dfsek.terra.api.noise.NoiseSampler;
import com.dfsek.terra.api.util.ProbabilityCollection; import com.dfsek.terra.api.util.ProbabilityCollection;
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
import com.dfsek.terra.api.world.biome.TerraBiome; import com.dfsek.terra.api.world.biome.TerraBiome;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeMutator; import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeMutator;

View File

@ -2,7 +2,6 @@ package com.dfsek.terra.api.world.biome.pipeline.mutator;
import com.dfsek.terra.api.noise.NoiseSampler; import com.dfsek.terra.api.noise.NoiseSampler;
import com.dfsek.terra.api.util.ProbabilityCollection; import com.dfsek.terra.api.util.ProbabilityCollection;
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
import com.dfsek.terra.api.world.biome.TerraBiome; import com.dfsek.terra.api.world.biome.TerraBiome;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeMutator; import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeMutator;

View File

@ -1,7 +1,7 @@
package com.dfsek.terra.api.world.biome.pipeline.mutator; package com.dfsek.terra.api.world.biome.pipeline.mutator;
import com.dfsek.terra.api.util.MathUtil;
import com.dfsek.terra.api.noise.NoiseSampler; import com.dfsek.terra.api.noise.NoiseSampler;
import com.dfsek.terra.api.util.MathUtil;
import com.dfsek.terra.api.world.biome.TerraBiome; import com.dfsek.terra.api.world.biome.TerraBiome;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeMutator; import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeMutator;

View File

@ -2,7 +2,6 @@ package com.dfsek.terra.api.world.biome.pipeline.source;
import com.dfsek.terra.api.noise.NoiseSampler; import com.dfsek.terra.api.noise.NoiseSampler;
import com.dfsek.terra.api.util.ProbabilityCollection; import com.dfsek.terra.api.util.ProbabilityCollection;
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
import com.dfsek.terra.api.world.biome.TerraBiome; import com.dfsek.terra.api.world.biome.TerraBiome;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeSource; import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeSource;

View File

@ -1,8 +1,8 @@
package com.dfsek.terra.api.world.biome.pipeline.stages; package com.dfsek.terra.api.world.biome.pipeline.stages;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeExpander;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeHolder; import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeHolder;
import com.dfsek.terra.api.world.biome.generation.pipeline.Stage; import com.dfsek.terra.api.world.biome.generation.pipeline.Stage;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeExpander;
public class ExpanderStage implements Stage { public class ExpanderStage implements Stage {
private final BiomeExpander expander; private final BiomeExpander expander;

View File

@ -1,8 +1,8 @@
package com.dfsek.terra.api.world.biome.pipeline.stages; package com.dfsek.terra.api.world.biome.pipeline.stages;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeHolder; import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeHolder;
import com.dfsek.terra.api.world.biome.generation.pipeline.Stage;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeMutator; import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeMutator;
import com.dfsek.terra.api.world.biome.generation.pipeline.Stage;
public class MutatorStage implements Stage { public class MutatorStage implements Stage {
private final BiomeMutator mutator; private final BiomeMutator mutator;

View File

@ -3,11 +3,11 @@ package com.dfsek.terra.api.world.biome.provider;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.noise.NoiseSampler; import com.dfsek.terra.api.noise.NoiseSampler;
import com.dfsek.terra.api.vector.Vector2; import com.dfsek.terra.api.vector.Vector2;
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
import com.dfsek.terra.vector.Vector2Impl;
import com.dfsek.terra.api.world.biome.TerraBiome; import com.dfsek.terra.api.world.biome.TerraBiome;
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeHolder; import com.dfsek.terra.api.world.biome.generation.pipeline.BiomeHolder;
import com.dfsek.terra.api.world.biome.pipeline.BiomePipelineImpl; import com.dfsek.terra.api.world.biome.pipeline.BiomePipelineImpl;
import com.dfsek.terra.vector.Vector2Impl;
import com.google.common.cache.CacheBuilder; import com.google.common.cache.CacheBuilder;
import com.google.common.cache.CacheLoader; import com.google.common.cache.CacheLoader;
import com.google.common.cache.LoadingCache; import com.google.common.cache.LoadingCache;

View File

@ -1,8 +1,8 @@
package com.dfsek.terra.api.world.carving; package com.dfsek.terra.api.world.carving;
import com.dfsek.terra.api.vector.Vector3; import com.dfsek.terra.api.vector.Vector3;
import com.dfsek.terra.vector.Vector3Impl;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import com.dfsek.terra.vector.Vector3Impl;
import net.jafama.FastMath; import net.jafama.FastMath;
import java.util.Random; import java.util.Random;

View File

@ -2,7 +2,6 @@ package com.dfsek.terra.api.world.locate;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.vector.Location; import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.vector.LocationImpl;
import com.dfsek.terra.api.vector.Vector3; import com.dfsek.terra.api.vector.Vector3;
import com.dfsek.terra.api.world.biome.TerraBiome; import com.dfsek.terra.api.world.biome.TerraBiome;
import com.dfsek.terra.api.world.biome.generation.BiomeProvider; import com.dfsek.terra.api.world.biome.generation.BiomeProvider;

View File

@ -2,11 +2,10 @@ package com.dfsek.terra.api.world.locate;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.vector.Location; import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.vector.LocationImpl;
import com.dfsek.terra.api.vector.Vector3; import com.dfsek.terra.api.vector.Vector3;
import com.dfsek.terra.vector.Vector3Impl;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.world.biome.generation.BiomeProvider; import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
import com.dfsek.terra.vector.Vector3Impl;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import java.util.function.Consumer; import java.util.function.Consumer;

View File

@ -1,12 +1,11 @@
package com.dfsek.terra.api.world.locate; package com.dfsek.terra.api.world.locate;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.util.PopulationUtil;
import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.vector.LocationImpl;
import com.dfsek.terra.api.vector.Vector3;
import com.dfsek.terra.api.structure.rotation.Rotation; import com.dfsek.terra.api.structure.rotation.Rotation;
import com.dfsek.terra.api.util.FastRandom; import com.dfsek.terra.api.util.FastRandom;
import com.dfsek.terra.api.util.PopulationUtil;
import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.api.vector.Vector3;
import com.dfsek.terra.api.world.biome.UserDefinedBiome; import com.dfsek.terra.api.world.biome.UserDefinedBiome;
import com.dfsek.terra.api.world.biome.generation.BiomeProvider; import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
import com.dfsek.terra.world.population.items.TerraStructure; import com.dfsek.terra.world.population.items.TerraStructure;

View File

@ -1,7 +1,7 @@
package com.dfsek.terra.api.world.palette; package com.dfsek.terra.api.world.palette;
import com.dfsek.terra.api.noise.NoiseSampler;
import com.dfsek.terra.api.block.BlockData; import com.dfsek.terra.api.block.BlockData;
import com.dfsek.terra.api.noise.NoiseSampler;
import java.util.List; import java.util.List;

View File

@ -1,10 +1,9 @@
package com.dfsek.terra.api.world.palette; package com.dfsek.terra.api.world.palette;
import com.dfsek.terra.api.noise.NoiseSampler;
import com.dfsek.terra.api.block.BlockData; import com.dfsek.terra.api.block.BlockData;
import com.dfsek.terra.api.noise.NoiseSampler;
import com.dfsek.terra.api.util.GlueList; import com.dfsek.terra.api.util.GlueList;
import com.dfsek.terra.api.util.ProbabilityCollection; import com.dfsek.terra.api.util.ProbabilityCollection;
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
import com.dfsek.terra.api.world.generator.Palette; import com.dfsek.terra.api.world.generator.Palette;
import java.util.List; import java.util.List;

View File

@ -1,9 +1,8 @@
package com.dfsek.terra.api.world.palette.holder; package com.dfsek.terra.api.world.palette.holder;
import com.dfsek.terra.api.noise.NoiseSampler;
import com.dfsek.terra.api.block.BlockData; import com.dfsek.terra.api.block.BlockData;
import com.dfsek.terra.api.noise.NoiseSampler;
import com.dfsek.terra.api.util.ProbabilityCollection; import com.dfsek.terra.api.util.ProbabilityCollection;
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
public class PaletteLayerHolder { public class PaletteLayerHolder {

View File

@ -1,16 +1,16 @@
package com.dfsek.terra.carving; package com.dfsek.terra.carving;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.util.MathUtil;
import com.dfsek.terra.api.util.PopulationUtil;
import com.dfsek.terra.vector.Vector3Impl;
import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.util.FastRandom; import com.dfsek.terra.api.util.FastRandom;
import com.dfsek.terra.api.util.GlueList; import com.dfsek.terra.api.util.GlueList;
import com.dfsek.terra.api.util.MathUtil;
import com.dfsek.terra.api.util.PopulationUtil;
import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.world.biome.TerraBiome; import com.dfsek.terra.api.world.biome.TerraBiome;
import com.dfsek.terra.api.world.biome.UserDefinedBiome; import com.dfsek.terra.api.world.biome.UserDefinedBiome;
import com.dfsek.terra.api.world.biome.generation.BiomeProvider; import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
import com.dfsek.terra.api.world.carving.Worm; import com.dfsek.terra.api.world.carving.Worm;
import com.dfsek.terra.vector.Vector3Impl;
import com.google.common.cache.CacheBuilder; import com.google.common.cache.CacheBuilder;
import com.google.common.cache.CacheLoader; import com.google.common.cache.CacheLoader;
import com.google.common.cache.LoadingCache; import com.google.common.cache.LoadingCache;

View File

@ -4,7 +4,6 @@ import com.dfsek.terra.api.block.BlockData;
import com.dfsek.terra.api.block.BlockType; import com.dfsek.terra.api.block.BlockType;
import com.dfsek.terra.api.util.ProbabilityCollection; import com.dfsek.terra.api.util.ProbabilityCollection;
import com.dfsek.terra.api.util.collections.MaterialSet; import com.dfsek.terra.api.util.collections.MaterialSet;
import com.dfsek.terra.api.util.collections.ProbabilityCollectionImpl;
import net.jafama.FastMath; import net.jafama.FastMath;
import java.util.Map; import java.util.Map;

View File

@ -5,22 +5,22 @@ import com.dfsek.paralithic.eval.parser.Parser;
import com.dfsek.paralithic.eval.parser.Scope; import com.dfsek.paralithic.eval.parser.Scope;
import com.dfsek.paralithic.eval.tokenizer.ParseException; import com.dfsek.paralithic.eval.tokenizer.ParseException;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.math.range.ConstantRange;
import com.dfsek.terra.api.math.paralithic.defined.UserDefinedFunction; import com.dfsek.terra.api.math.paralithic.defined.UserDefinedFunction;
import com.dfsek.terra.api.math.paralithic.noise.NoiseFunction2; import com.dfsek.terra.api.math.paralithic.noise.NoiseFunction2;
import com.dfsek.terra.api.math.paralithic.noise.NoiseFunction3; import com.dfsek.terra.api.math.paralithic.noise.NoiseFunction3;
import com.dfsek.terra.api.util.Range; import com.dfsek.terra.api.math.range.ConstantRange;
import com.dfsek.terra.api.vector.Vector3;
import com.dfsek.terra.vector.Vector3Impl;
import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.util.FastRandom; import com.dfsek.terra.api.util.FastRandom;
import com.dfsek.terra.api.util.Range;
import com.dfsek.terra.api.util.seeded.NoiseSeeded; import com.dfsek.terra.api.util.seeded.NoiseSeeded;
import com.dfsek.terra.api.vector.Vector3;
import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.world.biome.UserDefinedBiome; import com.dfsek.terra.api.world.biome.UserDefinedBiome;
import com.dfsek.terra.api.world.carving.Carver; import com.dfsek.terra.api.world.carving.Carver;
import com.dfsek.terra.api.world.carving.Worm; import com.dfsek.terra.api.world.carving.Worm;
import com.dfsek.terra.config.loaders.config.function.FunctionTemplate; import com.dfsek.terra.config.loaders.config.function.FunctionTemplate;
import com.dfsek.terra.config.templates.BiomeTemplate; import com.dfsek.terra.config.templates.BiomeTemplate;
import com.dfsek.terra.config.templates.CarverTemplate; import com.dfsek.terra.config.templates.CarverTemplate;
import com.dfsek.terra.vector.Vector3Impl;
import net.jafama.FastMath; import net.jafama.FastMath;
import java.util.List; import java.util.List;

View File

@ -3,8 +3,8 @@ package com.dfsek.terra.commands;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.command.CommandTemplate; import com.dfsek.terra.api.command.CommandTemplate;
import com.dfsek.terra.api.command.annotation.Command; import com.dfsek.terra.api.command.annotation.Command;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.injection.annotations.Inject;
@Command( @Command(
usage = "/terra addons" usage = "/terra addons"

View File

@ -6,9 +6,9 @@ import com.dfsek.terra.api.command.annotation.Command;
import com.dfsek.terra.api.command.annotation.type.DebugCommand; import com.dfsek.terra.api.command.annotation.type.DebugCommand;
import com.dfsek.terra.api.command.annotation.type.PlayerCommand; import com.dfsek.terra.api.command.annotation.type.PlayerCommand;
import com.dfsek.terra.api.command.annotation.type.WorldCommand; import com.dfsek.terra.api.command.annotation.type.WorldCommand;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.entity.Player; import com.dfsek.terra.api.entity.Player;
import com.dfsek.terra.api.injection.annotations.Inject;
@WorldCommand @WorldCommand
@DebugCommand @DebugCommand

View File

@ -4,11 +4,10 @@ import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.command.CommandTemplate; import com.dfsek.terra.api.command.CommandTemplate;
import com.dfsek.terra.api.command.annotation.Command; import com.dfsek.terra.api.command.annotation.Command;
import com.dfsek.terra.api.config.ConfigPack; import com.dfsek.terra.api.config.ConfigPack;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.registry.CheckedRegistry; import com.dfsek.terra.api.registry.CheckedRegistry;
import com.dfsek.terra.config.lang.LangUtil; import com.dfsek.terra.config.lang.LangUtil;
import com.dfsek.terra.config.pack.ConfigPackTemplate;
@Command( @Command(
usage = "/terra packs" usage = "/terra packs"

View File

@ -3,8 +3,8 @@ package com.dfsek.terra.commands;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.command.CommandTemplate; import com.dfsek.terra.api.command.CommandTemplate;
import com.dfsek.terra.api.command.annotation.Command; import com.dfsek.terra.api.command.annotation.Command;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.config.lang.LangUtil; import com.dfsek.terra.config.lang.LangUtil;
@Command( @Command(

View File

@ -3,8 +3,8 @@ package com.dfsek.terra.commands;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.command.CommandTemplate; import com.dfsek.terra.api.command.CommandTemplate;
import com.dfsek.terra.api.command.annotation.Command; import com.dfsek.terra.api.command.annotation.Command;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.config.lang.LangUtil; import com.dfsek.terra.config.lang.LangUtil;
@Command( @Command(

View File

@ -6,9 +6,9 @@ import com.dfsek.terra.api.command.annotation.Command;
import com.dfsek.terra.api.command.annotation.Subcommand; import com.dfsek.terra.api.command.annotation.Subcommand;
import com.dfsek.terra.api.command.annotation.type.PlayerCommand; import com.dfsek.terra.api.command.annotation.type.PlayerCommand;
import com.dfsek.terra.api.command.annotation.type.WorldCommand; import com.dfsek.terra.api.command.annotation.type.WorldCommand;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.entity.Player; import com.dfsek.terra.api.entity.Player;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.world.biome.UserDefinedBiome; import com.dfsek.terra.api.world.biome.UserDefinedBiome;
import com.dfsek.terra.api.world.biome.generation.BiomeProvider; import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
import com.dfsek.terra.config.lang.LangUtil; import com.dfsek.terra.config.lang.LangUtil;

View File

@ -10,16 +10,15 @@ import com.dfsek.terra.api.command.annotation.inject.SwitchTarget;
import com.dfsek.terra.api.command.annotation.type.PlayerCommand; import com.dfsek.terra.api.command.annotation.type.PlayerCommand;
import com.dfsek.terra.api.command.annotation.type.WorldCommand; import com.dfsek.terra.api.command.annotation.type.WorldCommand;
import com.dfsek.terra.api.command.arg.IntegerArgumentParser; import com.dfsek.terra.api.command.arg.IntegerArgumentParser;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.vector.LocationImpl;
import com.dfsek.terra.vector.Vector3Impl;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.entity.Player; import com.dfsek.terra.api.entity.Player;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.world.biome.TerraBiome; import com.dfsek.terra.api.world.biome.TerraBiome;
import com.dfsek.terra.api.world.locate.AsyncBiomeFinder; import com.dfsek.terra.api.world.locate.AsyncBiomeFinder;
import com.dfsek.terra.commands.biome.arg.BiomeArgumentParser; import com.dfsek.terra.commands.biome.arg.BiomeArgumentParser;
import com.dfsek.terra.commands.biome.tab.BiomeTabCompleter; import com.dfsek.terra.commands.biome.tab.BiomeTabCompleter;
import com.dfsek.terra.config.lang.LangUtil; import com.dfsek.terra.config.lang.LangUtil;
import com.dfsek.terra.vector.Vector3Impl;
import java.util.Locale; import java.util.Locale;

View File

@ -2,9 +2,9 @@ package com.dfsek.terra.commands.biome.arg;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.command.arg.ArgumentParser; import com.dfsek.terra.api.command.arg.ArgumentParser;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.entity.Player; import com.dfsek.terra.api.entity.Player;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.world.biome.TerraBiome; import com.dfsek.terra.api.world.biome.TerraBiome;
public class BiomeArgumentParser implements ArgumentParser<TerraBiome> { public class BiomeArgumentParser implements ArgumentParser<TerraBiome> {

View File

@ -2,9 +2,9 @@ package com.dfsek.terra.commands.biome.tab;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.command.tab.TabCompleter; import com.dfsek.terra.api.command.tab.TabCompleter;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.entity.Player; import com.dfsek.terra.api.entity.Player;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.world.biome.TerraBiome; import com.dfsek.terra.api.world.biome.TerraBiome;
import java.util.List; import java.util.List;

View File

@ -4,8 +4,8 @@ import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.command.CommandTemplate; import com.dfsek.terra.api.command.CommandTemplate;
import com.dfsek.terra.api.command.annotation.Command; import com.dfsek.terra.api.command.annotation.Command;
import com.dfsek.terra.api.command.annotation.type.DebugCommand; import com.dfsek.terra.api.command.annotation.type.DebugCommand;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.injection.annotations.Inject;
@Command @Command
@DebugCommand @DebugCommand

View File

@ -4,8 +4,8 @@ import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.command.CommandTemplate; import com.dfsek.terra.api.command.CommandTemplate;
import com.dfsek.terra.api.command.annotation.Command; import com.dfsek.terra.api.command.annotation.Command;
import com.dfsek.terra.api.command.annotation.type.DebugCommand; import com.dfsek.terra.api.command.annotation.type.DebugCommand;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.injection.annotations.Inject;
@Command @Command
@DebugCommand @DebugCommand

View File

@ -4,8 +4,8 @@ import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.command.CommandTemplate; import com.dfsek.terra.api.command.CommandTemplate;
import com.dfsek.terra.api.command.annotation.Command; import com.dfsek.terra.api.command.annotation.Command;
import com.dfsek.terra.api.command.annotation.type.DebugCommand; import com.dfsek.terra.api.command.annotation.type.DebugCommand;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.injection.annotations.Inject;
@Command @Command
@DebugCommand @DebugCommand

View File

@ -4,8 +4,8 @@ import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.command.CommandTemplate; import com.dfsek.terra.api.command.CommandTemplate;
import com.dfsek.terra.api.command.annotation.Command; import com.dfsek.terra.api.command.annotation.Command;
import com.dfsek.terra.api.command.annotation.type.DebugCommand; import com.dfsek.terra.api.command.annotation.type.DebugCommand;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.injection.annotations.Inject;
@Command @Command
@DebugCommand @DebugCommand

View File

@ -6,19 +6,18 @@ import com.dfsek.terra.api.command.annotation.Command;
import com.dfsek.terra.api.command.annotation.type.DebugCommand; import com.dfsek.terra.api.command.annotation.type.DebugCommand;
import com.dfsek.terra.api.command.annotation.type.PlayerCommand; import com.dfsek.terra.api.command.annotation.type.PlayerCommand;
import com.dfsek.terra.api.command.annotation.type.WorldCommand; import com.dfsek.terra.api.command.annotation.type.WorldCommand;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.api.vector.Vector3;
import com.dfsek.terra.vector.LocationImpl;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.entity.Player; import com.dfsek.terra.api.entity.Player;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.structure.rotation.Rotation;
import com.dfsek.terra.api.structures.parser.lang.constants.NumericConstant; import com.dfsek.terra.api.structures.parser.lang.constants.NumericConstant;
import com.dfsek.terra.api.structures.script.TerraImplementationArguments; import com.dfsek.terra.api.structures.script.TerraImplementationArguments;
import com.dfsek.terra.api.structures.script.functions.CheckFunction; import com.dfsek.terra.api.structures.script.functions.CheckFunction;
import com.dfsek.terra.api.structure.rotation.Rotation;
import com.dfsek.terra.api.structures.structure.buffer.StructureBuffer; import com.dfsek.terra.api.structures.structure.buffer.StructureBuffer;
import com.dfsek.terra.api.structures.tokenizer.Position; import com.dfsek.terra.api.structures.tokenizer.Position;
import com.dfsek.terra.api.util.FastRandom; import com.dfsek.terra.api.util.FastRandom;
import com.dfsek.terra.api.vector.Vector3;
import com.dfsek.terra.vector.LocationImpl;
import java.util.HashMap; import java.util.HashMap;

View File

@ -1,6 +1,10 @@
package com.dfsek.terra.commands.structure; package com.dfsek.terra.commands.structure;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.block.Block;
import com.dfsek.terra.api.block.BlockData;
import com.dfsek.terra.api.block.state.BlockState;
import com.dfsek.terra.api.block.state.Sign;
import com.dfsek.terra.api.command.CommandTemplate; import com.dfsek.terra.api.command.CommandTemplate;
import com.dfsek.terra.api.command.annotation.Argument; import com.dfsek.terra.api.command.annotation.Argument;
import com.dfsek.terra.api.command.annotation.Command; import com.dfsek.terra.api.command.annotation.Command;
@ -8,16 +12,12 @@ import com.dfsek.terra.api.command.annotation.inject.ArgumentTarget;
import com.dfsek.terra.api.command.annotation.type.DebugCommand; import com.dfsek.terra.api.command.annotation.type.DebugCommand;
import com.dfsek.terra.api.command.annotation.type.PlayerCommand; import com.dfsek.terra.api.command.annotation.type.PlayerCommand;
import com.dfsek.terra.api.command.annotation.type.WorldCommand; import com.dfsek.terra.api.command.annotation.type.WorldCommand;
import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.entity.Player;
import com.dfsek.terra.api.injection.annotations.Inject; import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.util.generic.pair.Pair;
import com.dfsek.terra.api.vector.Location; import com.dfsek.terra.api.vector.Location;
import com.dfsek.terra.vector.LocationImpl; import com.dfsek.terra.vector.LocationImpl;
import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.block.Block;
import com.dfsek.terra.api.block.BlockData;
import com.dfsek.terra.api.block.state.BlockState;
import com.dfsek.terra.api.block.state.Sign;
import com.dfsek.terra.api.entity.Player;
import com.dfsek.terra.api.util.generic.pair.Pair;
import java.io.BufferedWriter; import java.io.BufferedWriter;
import java.io.File; import java.io.File;

View File

@ -11,9 +11,9 @@ import com.dfsek.terra.api.command.annotation.type.DebugCommand;
import com.dfsek.terra.api.command.annotation.type.PlayerCommand; import com.dfsek.terra.api.command.annotation.type.PlayerCommand;
import com.dfsek.terra.api.command.annotation.type.WorldCommand; import com.dfsek.terra.api.command.annotation.type.WorldCommand;
import com.dfsek.terra.api.command.arg.IntegerArgumentParser; import com.dfsek.terra.api.command.arg.IntegerArgumentParser;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.entity.Player; import com.dfsek.terra.api.entity.Player;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.structure.Structure; import com.dfsek.terra.api.structure.Structure;
import com.dfsek.terra.api.structure.rotation.Rotation; import com.dfsek.terra.api.structure.rotation.Rotation;
import com.dfsek.terra.api.util.FastRandom; import com.dfsek.terra.api.util.FastRandom;

View File

@ -10,15 +10,14 @@ import com.dfsek.terra.api.command.annotation.inject.SwitchTarget;
import com.dfsek.terra.api.command.annotation.type.PlayerCommand; import com.dfsek.terra.api.command.annotation.type.PlayerCommand;
import com.dfsek.terra.api.command.annotation.type.WorldCommand; import com.dfsek.terra.api.command.annotation.type.WorldCommand;
import com.dfsek.terra.api.command.arg.IntegerArgumentParser; import com.dfsek.terra.api.command.arg.IntegerArgumentParser;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.vector.LocationImpl;
import com.dfsek.terra.vector.Vector3Impl;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.entity.Player; import com.dfsek.terra.api.entity.Player;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.world.locate.AsyncStructureFinder; import com.dfsek.terra.api.world.locate.AsyncStructureFinder;
import com.dfsek.terra.commands.structure.argument.StructureArgumentParser; import com.dfsek.terra.commands.structure.argument.StructureArgumentParser;
import com.dfsek.terra.commands.structure.completer.StructureCompleter; import com.dfsek.terra.commands.structure.completer.StructureCompleter;
import com.dfsek.terra.config.lang.LangUtil; import com.dfsek.terra.config.lang.LangUtil;
import com.dfsek.terra.vector.Vector3Impl;
import com.dfsek.terra.world.population.items.TerraStructure; import com.dfsek.terra.world.population.items.TerraStructure;
import java.util.Locale; import java.util.Locale;

View File

@ -2,9 +2,9 @@ package com.dfsek.terra.commands.structure.argument;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.command.arg.ArgumentParser; import com.dfsek.terra.api.command.arg.ArgumentParser;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.entity.Player; import com.dfsek.terra.api.entity.Player;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.structure.Structure; import com.dfsek.terra.api.structure.Structure;
import com.dfsek.terra.api.structures.script.StructureScript; import com.dfsek.terra.api.structures.script.StructureScript;

View File

@ -2,9 +2,9 @@ package com.dfsek.terra.commands.structure.argument;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.command.arg.ArgumentParser; import com.dfsek.terra.api.command.arg.ArgumentParser;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.entity.Player; import com.dfsek.terra.api.entity.Player;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.world.population.items.TerraStructure; import com.dfsek.terra.world.population.items.TerraStructure;
public class StructureArgumentParser implements ArgumentParser<TerraStructure> { public class StructureArgumentParser implements ArgumentParser<TerraStructure> {

View File

@ -2,9 +2,9 @@ package com.dfsek.terra.commands.structure.completer;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.command.tab.TabCompleter; import com.dfsek.terra.api.command.tab.TabCompleter;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.entity.Player; import com.dfsek.terra.api.entity.Player;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.structure.Structure; import com.dfsek.terra.api.structure.Structure;
import com.dfsek.terra.api.structures.script.StructureScript; import com.dfsek.terra.api.structures.script.StructureScript;

View File

@ -2,9 +2,9 @@ package com.dfsek.terra.commands.structure.completer;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.command.tab.TabCompleter; import com.dfsek.terra.api.command.tab.TabCompleter;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.entity.Player; import com.dfsek.terra.api.entity.Player;
import com.dfsek.terra.api.injection.annotations.Inject;
import com.dfsek.terra.world.population.items.TerraStructure; import com.dfsek.terra.world.population.items.TerraStructure;
import java.util.ArrayList; import java.util.ArrayList;

View File

@ -5,9 +5,9 @@ import com.dfsek.tectonic.annotations.Value;
import com.dfsek.tectonic.config.ConfigTemplate; import com.dfsek.tectonic.config.ConfigTemplate;
import com.dfsek.tectonic.exception.ConfigException; import com.dfsek.tectonic.exception.ConfigException;
import com.dfsek.tectonic.loading.ConfigLoader; import com.dfsek.tectonic.loading.ConfigLoader;
import com.dfsek.terra.api.Logger;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.util.JarUtil; import com.dfsek.terra.api.util.JarUtil;
import com.dfsek.terra.api.Logger;
import java.io.File; import java.io.File;
import java.io.FileInputStream; import java.io.FileInputStream;

Some files were not shown because too many files have changed in this diff Show More