mirror of
https://github.com/VolmitSoftware/Iris.git
synced 2025-12-30 04:29:05 +00:00
Schema good
This commit is contained in:
@@ -1,23 +1,28 @@
|
||||
package com.volmit.iris.object;
|
||||
|
||||
import com.volmit.iris.util.Desc;
|
||||
import com.volmit.iris.util.DontObfuscate;
|
||||
|
||||
@Desc("Defines if an object is allowed to place in carvings, surfaces or both.")
|
||||
public enum CarvingMode
|
||||
{
|
||||
@Desc("Only place this object on surfaces (NOT under carvings)")
|
||||
@DontObfuscate
|
||||
SURFACE_ONLY,
|
||||
|
||||
@Desc("Only place this object under carvings (NOT on the surface)")
|
||||
@DontObfuscate
|
||||
CARVING_ONLY,
|
||||
|
||||
@Desc("This object can place anywhere")
|
||||
@DontObfuscate
|
||||
ANYWHERE;
|
||||
|
||||
|
||||
public boolean supportsCarving()
|
||||
{
|
||||
return this.equals(ANYWHERE) || this.equals(CARVING_ONLY);
|
||||
}
|
||||
|
||||
|
||||
public boolean supportsSurface()
|
||||
{
|
||||
return this.equals(ANYWHERE) || this.equals(SURFACE_ONLY);
|
||||
|
||||
@@ -1,15 +1,20 @@
|
||||
package com.volmit.iris.object;
|
||||
|
||||
import com.volmit.iris.util.Desc;
|
||||
import com.volmit.iris.util.DontObfuscate;
|
||||
|
||||
@Desc("Represents a location where decorations should go")
|
||||
public enum DecorationPart
|
||||
{
|
||||
@Desc("The default, decorate anywhere")
|
||||
@DontObfuscate
|
||||
NONE,
|
||||
|
||||
@Desc("Targets shore lines (typically for sugar cane)")
|
||||
@DontObfuscate
|
||||
SHORE_LINE,
|
||||
|
||||
@Desc("Target sea surfaces (typically for lilypads)")
|
||||
@DontObfuscate
|
||||
SEA_SURFACE
|
||||
}
|
||||
|
||||
@@ -1,15 +0,0 @@
|
||||
package com.volmit.iris.object;
|
||||
|
||||
import com.volmit.iris.util.DontObfuscate;
|
||||
|
||||
public enum Envelope
|
||||
{
|
||||
@DontObfuscate
|
||||
EVERYWHERE,
|
||||
|
||||
@DontObfuscate
|
||||
CELLS,
|
||||
|
||||
@DontObfuscate
|
||||
VEINS,
|
||||
}
|
||||
@@ -1,15 +1,20 @@
|
||||
package com.volmit.iris.object;
|
||||
|
||||
import com.volmit.iris.util.Desc;
|
||||
import com.volmit.iris.util.DontObfuscate;
|
||||
|
||||
@Desc("Represents a basic font style to apply to a font family")
|
||||
public enum FontStyle
|
||||
{
|
||||
@Desc("Plain old text")
|
||||
@DontObfuscate
|
||||
PLAIN,
|
||||
|
||||
@Desc("Italicized Text")
|
||||
@DontObfuscate
|
||||
ITALIC,
|
||||
|
||||
@Desc("Bold Text")
|
||||
@DontObfuscate
|
||||
BOLD,
|
||||
}
|
||||
|
||||
@@ -1,27 +1,36 @@
|
||||
package com.volmit.iris.object;
|
||||
|
||||
import com.volmit.iris.util.Desc;
|
||||
import com.volmit.iris.util.DontObfuscate;
|
||||
|
||||
@Desc("Represents a biome type")
|
||||
public enum InferredType
|
||||
{
|
||||
@Desc("Represents any shore biome type")
|
||||
@DontObfuscate
|
||||
SHORE,
|
||||
|
||||
@Desc("Represents any land biome type")
|
||||
@DontObfuscate
|
||||
LAND,
|
||||
|
||||
@Desc("Represents any sea biome type")
|
||||
@DontObfuscate
|
||||
SEA,
|
||||
|
||||
@Desc("Represents any cave biome type")
|
||||
@DontObfuscate
|
||||
CAVE,
|
||||
|
||||
@Desc("Represents any river biome type")
|
||||
@DontObfuscate
|
||||
RIVER,
|
||||
|
||||
@Desc("Represents any lake biome type")
|
||||
@DontObfuscate
|
||||
LAKE,
|
||||
|
||||
@Desc("Defers the type to whatever another biome type that already exists is.")
|
||||
@DontObfuscate
|
||||
DEFER;
|
||||
}
|
||||
|
||||
@@ -1,87 +1,116 @@
|
||||
package com.volmit.iris.object;
|
||||
|
||||
import com.volmit.iris.util.Desc;
|
||||
import com.volmit.iris.util.DontObfuscate;
|
||||
|
||||
@Desc("An interpolation method (or function) is simply a method of smoothing a position based on surrounding points on a grid. Bicubic for example is smoother, but has 4 times the checks than Bilinear for example. Try using BILINEAR_STARCAST_9 for beautiful results.")
|
||||
public enum InterpolationMethod
|
||||
{
|
||||
@Desc("No interpolation. Nearest Neighbor (bad for terrain, great for performance).")
|
||||
@DontObfuscate
|
||||
NONE,
|
||||
|
||||
@Desc("Uses 4 nearby points in a square to calculate a 2d slope. Very fast but creates square artifacts. See: https://en.wikipedia.org/wiki/Bilinear_interpolation")
|
||||
@DontObfuscate
|
||||
BILINEAR,
|
||||
|
||||
@Desc("Starcast is Iris's own creation. It uses raytrace checks to find a horizontal boundary nearby. 3 Checks in a circle. Typically starcast is used with another interpolation method. See BILINEAR_STARCAST_9 For example. Starcast is meant to 'break up' large, abrupt cliffs to make cheap interpolation smoother.")
|
||||
@DontObfuscate
|
||||
STARCAST_3,
|
||||
|
||||
@Desc("Starcast is Iris's own creation. It uses raytrace checks to find a horizontal boundary nearby. 6 Checks in a circle. Typically starcast is used with another interpolation method. See BILINEAR_STARCAST_9 For example. Starcast is meant to 'break up' large, abrupt cliffs to make cheap interpolation smoother.")
|
||||
@DontObfuscate
|
||||
STARCAST_6,
|
||||
|
||||
@Desc("Starcast is Iris's own creation. It uses raytrace checks to find a horizontal boundary nearby. 9 Checks in a circle. Typically starcast is used with another interpolation method. See BILINEAR_STARCAST_9 For example. Starcast is meant to 'break up' large, abrupt cliffs to make cheap interpolation smoother.")
|
||||
@DontObfuscate
|
||||
STARCAST_9,
|
||||
|
||||
@Desc("Starcast is Iris's own creation. It uses raytrace checks to find a horizontal boundary nearby. 12 Checks in a circle. Typically starcast is used with another interpolation method. See BILINEAR_STARCAST_9 For example. Starcast is meant to 'break up' large, abrupt cliffs to make cheap interpolation smoother.")
|
||||
@DontObfuscate
|
||||
STARCAST_12,
|
||||
|
||||
@Desc("Uses starcast to break up the abrupt sharp cliffs, then smooths the rest out with bilinear.")
|
||||
@DontObfuscate
|
||||
BILINEAR_STARCAST_3,
|
||||
|
||||
@Desc("Uses starcast to break up the abrupt sharp cliffs, then smooths the rest out with bilinear.")
|
||||
@DontObfuscate
|
||||
BILINEAR_STARCAST_6,
|
||||
|
||||
@Desc("Uses starcast to break up the abrupt sharp cliffs, then smooths the rest out with bilinear.")
|
||||
@DontObfuscate
|
||||
BILINEAR_STARCAST_9,
|
||||
|
||||
@Desc("Uses starcast to break up the abrupt sharp cliffs, then smooths the rest out with bilinear.")
|
||||
@DontObfuscate
|
||||
BILINEAR_STARCAST_12,
|
||||
|
||||
@Desc("Uses starcast to break up the abrupt sharp cliffs, then smooths the rest out with hermite.")
|
||||
@DontObfuscate
|
||||
HERMITE_STARCAST_3,
|
||||
|
||||
@Desc("Uses starcast to break up the abrupt sharp cliffs, then smooths the rest out with hermite.")
|
||||
@DontObfuscate
|
||||
HERMITE_STARCAST_6,
|
||||
|
||||
@Desc("Uses starcast to break up the abrupt sharp cliffs, then smooths the rest out with hermite.")
|
||||
@DontObfuscate
|
||||
HERMITE_STARCAST_9,
|
||||
|
||||
@Desc("Uses starcast to break up the abrupt sharp cliffs, then smooths the rest out with hermite.")
|
||||
@DontObfuscate
|
||||
HERMITE_STARCAST_12,
|
||||
|
||||
@Desc("Uses bilinear but on a bezier curve. See: https://en.wikipedia.org/wiki/Bezier_curve")
|
||||
@DontObfuscate
|
||||
BILINEAR_BEZIER,
|
||||
|
||||
@Desc("Uses Bilinear but with parametric curves alpha 2.")
|
||||
@DontObfuscate
|
||||
BILINEAR_PARAMETRIC_2,
|
||||
|
||||
@Desc("Uses Bilinear but with parametric curves alpha 4.")
|
||||
@DontObfuscate
|
||||
BILINEAR_PARAMETRIC_4,
|
||||
|
||||
@Desc("Uses Bilinear but with parametric curves alpha 1.5.")
|
||||
@DontObfuscate
|
||||
BILINEAR_PARAMETRIC_1_5,
|
||||
|
||||
@Desc("Bicubic noise creates 4, 4-point splines for a total of 16 checks. Bcubic can go higher than expected and lower than expected right before a large change in slope.")
|
||||
@DontObfuscate
|
||||
BICUBIC,
|
||||
|
||||
@Desc("Hermite is similar to bicubic, but faster and it can be tuned a little bit")
|
||||
@DontObfuscate
|
||||
HERMITE,
|
||||
|
||||
@Desc("Essentially bicubic with zero tension")
|
||||
@DontObfuscate
|
||||
CATMULL_ROM_SPLINE,
|
||||
|
||||
@Desc("Essentially bicubic with max tension")
|
||||
@DontObfuscate
|
||||
HERMITE_TENSE,
|
||||
|
||||
@Desc("Hermite is similar to bicubic, this variant reduces the dimple artifacts of bicubic")
|
||||
@DontObfuscate
|
||||
HERMITE_LOOSE,
|
||||
|
||||
@Desc("Hermite is similar to bicubic, this variant reduces the dimple artifacts of bicubic")
|
||||
@DontObfuscate
|
||||
HERMITE_LOOSE_HALF_POSITIVE_BIAS,
|
||||
|
||||
@Desc("Hermite is similar to bicubic, this variant reduces the dimple artifacts of bicubic")
|
||||
@DontObfuscate
|
||||
HERMITE_LOOSE_HALF_NEGATIVE_BIAS,
|
||||
|
||||
@Desc("Hermite is similar to bicubic, this variant reduces the dimple artifacts of bicubic")
|
||||
@DontObfuscate
|
||||
HERMITE_LOOSE_FULL_POSITIVE_BIAS,
|
||||
|
||||
@Desc("Hermite is similar to bicubic, this variant reduces the dimple artifacts of bicubic")
|
||||
@DontObfuscate
|
||||
HERMITE_LOOSE_FULL_NEGATIVE_BIAS,
|
||||
|
||||
|
||||
@@ -1,21 +1,28 @@
|
||||
package com.volmit.iris.object;
|
||||
|
||||
import com.volmit.iris.util.Desc;
|
||||
import com.volmit.iris.util.DontObfuscate;
|
||||
|
||||
@Desc("An inventory slot type is used to represent a type of slot for items to fit into in any given inventory.")
|
||||
public enum InventorySlotType
|
||||
{
|
||||
@Desc("Typically the one you want to go with. Storage represnents most slots in inventories.")
|
||||
@DontObfuscate
|
||||
STORAGE,
|
||||
|
||||
@Desc("Used for the fuel slot in Furnaces, Blast furnaces, smokers etc.")
|
||||
@DontObfuscate
|
||||
FUEL,
|
||||
|
||||
@Desc("Used for the cook slot in furnaces")
|
||||
@DontObfuscate
|
||||
FURNACE,
|
||||
|
||||
@Desc("Used for the cook slot in blast furnaces")
|
||||
@DontObfuscate
|
||||
BLAST_FURNACE,
|
||||
|
||||
@Desc("Used for the cook slot in smokers")
|
||||
@DontObfuscate
|
||||
SMOKER,
|
||||
}
|
||||
|
||||
@@ -23,7 +23,6 @@ import lombok.experimental.Accessors;
|
||||
@Data
|
||||
public class IrisCarveLayer
|
||||
{
|
||||
|
||||
@Required
|
||||
@DontObfuscate
|
||||
@Desc("The 4d slope this carve layer follows")
|
||||
|
||||
@@ -1,15 +1,20 @@
|
||||
package com.volmit.iris.object;
|
||||
|
||||
import com.volmit.iris.util.Desc;
|
||||
import com.volmit.iris.util.DontObfuscate;
|
||||
|
||||
@Desc("A loot mode is used to descrive what to do with the existing loot layers before adding this loot. Using ADD will simply add this table to the building list of tables (i.e. add dimension tables, region tables then biome tables). By using clear or replace, you remove the parent tables before and add just your tables.")
|
||||
public enum LootMode
|
||||
{
|
||||
@Desc("Add to the existing parent loot tables")
|
||||
@DontObfuscate
|
||||
ADD,
|
||||
|
||||
@Desc("Clear all loot tables then add this table")
|
||||
@DontObfuscate
|
||||
CLEAR,
|
||||
|
||||
@Desc("Replace all loot tables with this table (same as clear)")
|
||||
@DontObfuscate
|
||||
REPLACE;
|
||||
}
|
||||
|
||||
@@ -1,30 +1,40 @@
|
||||
package com.volmit.iris.object;
|
||||
|
||||
import com.volmit.iris.util.Desc;
|
||||
import com.volmit.iris.util.DontObfuscate;
|
||||
|
||||
@Desc("Object Place modes are useful for positioning objects just right. The default value is CENTER_HEIGHT.")
|
||||
public enum ObjectPlaceMode
|
||||
{
|
||||
@Desc("The default place mode. This mode picks a center point (where the center of the object will be) and takes the height. That height is used for the whole object.")
|
||||
@DontObfuscate
|
||||
CENTER_HEIGHT,
|
||||
|
||||
@Desc("Samples a lot of points where the object will cover (horizontally) and picks the highest height, that height is then used to place the object. This mode is useful for preventing any part of your object from being buried though it will float off of cliffs.")
|
||||
@DontObfuscate
|
||||
MAX_HEIGHT,
|
||||
|
||||
@Desc("Samples only 4 points where the object will cover (horizontally) and picks the highest height, that height is then used to place the object. This mode is useful for preventing any part of your object from being buried though it will float off of cliffs.\"")
|
||||
@DontObfuscate
|
||||
FAST_MAX_HEIGHT,
|
||||
|
||||
@Desc("Samples a lot of points where the object will cover (horizontally) and picks the lowest height, that height is then used to place the object. This mode is useful for preventing any part of your object from overhanging a cliff though it gets buried a lot")
|
||||
@DontObfuscate
|
||||
MIN_HEIGHT,
|
||||
|
||||
@Desc("Samples only 4 points where the object will cover (horizontally) and picks the lowest height, that height is then used to place the object. This mode is useful for preventing any part of your object from overhanging a cliff though it gets buried a lot")
|
||||
@DontObfuscate
|
||||
FAST_MIN_HEIGHT,
|
||||
|
||||
@Desc("Stilting is MAX_HEIGHT but it repeats the bottom most block of your object until it hits the surface. This is expensive because it has to first sample every height value for each x,z position of your object. Avoid using this unless its structures for performance reasons.")
|
||||
@DontObfuscate
|
||||
STILT,
|
||||
|
||||
@Desc("Just like stilting but very inaccurate. Useful for stilting a lot of objects without too much care on accuracy (you can use the over-stilt value to force stilts under ground further)")
|
||||
@DontObfuscate
|
||||
FAST_STILT,
|
||||
|
||||
@Desc("Samples the height of the terrain at every x,z position of your object and pushes it down to the surface. It's pretty much like a melt function over the terrain.")
|
||||
@DontObfuscate
|
||||
PAINT;
|
||||
}
|
||||
|
||||
@@ -1,15 +1,20 @@
|
||||
package com.volmit.iris.object;
|
||||
|
||||
import com.volmit.iris.util.Desc;
|
||||
import com.volmit.iris.util.DontObfuscate;
|
||||
|
||||
@Desc("A structure tile condition is for a specific wall if a tile is allowed to place if a wall exists.")
|
||||
public enum StructureTileCondition
|
||||
{
|
||||
@Desc("This face REQUIRES a wall for this tile to place here")
|
||||
@DontObfuscate
|
||||
REQUIRED,
|
||||
|
||||
@Desc("This face DOESNT CARE if a wall is here for this tile to place here")
|
||||
@DontObfuscate
|
||||
AGNOSTIC,
|
||||
|
||||
@Desc("This face CANNOT HAVE a wall for this tile to place here")
|
||||
@DontObfuscate
|
||||
NEVER;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user