diff --git a/src/main/java/com/cricketcraft/chisel/api/carving/ICarvingGroup.java b/src/main/java/com/cricketcraft/chisel/api/carving/ICarvingGroup.java
index 287929c8..928aa869 100644
--- a/src/main/java/com/cricketcraft/chisel/api/carving/ICarvingGroup.java
+++ b/src/main/java/com/cricketcraft/chisel/api/carving/ICarvingGroup.java
@@ -2,6 +2,14 @@ package com.cricketcraft.chisel.api.carving;
import java.util.List;
+/**
+ * Represents a group of chiselable blocks.
+ *
+ * This is an object that contains a collection of {@link ICarvingVariation} objects, and keeps them sorted. You may sort them in any way (or not at all), and {@link ICarvingVariation#getOrder()} will
+ * likely be of use to do so.
+ *
+ * It also defines what sound and oredict name the group as a whole has.
+ */
public interface ICarvingGroup {
/**
diff --git a/src/main/java/com/cricketcraft/chisel/api/carving/ICarvingVariation.java b/src/main/java/com/cricketcraft/chisel/api/carving/ICarvingVariation.java
index bab294e5..02825674 100644
--- a/src/main/java/com/cricketcraft/chisel/api/carving/ICarvingVariation.java
+++ b/src/main/java/com/cricketcraft/chisel/api/carving/ICarvingVariation.java
@@ -5,11 +5,8 @@ import net.minecraft.item.Item;
/**
* Represents a variation of a chiselable block.
- *
- * Do note that while this interface extends {@link Comparable}, a default implementation of {@link Comparable#compareTo(Object)} is provided in
- * {@link CarvingUtils#compare(ICarvingVariation, ICarvingVariation)}
*/
-public interface ICarvingVariation extends Comparable {
+public interface ICarvingVariation {
/**
* The base block of this variation.
@@ -33,10 +30,9 @@ public interface ICarvingVariation extends Comparable {
int getItemMeta();
/**
- * The "order" of this variation. Represents its position in the list of variations.
+ * The "order" of this variation. Represents its position in the list of variations held by a group.
*
* @return An integer to represent the position of this variation in the list of all variations in the group
*/
int getOrder();
-
}
diff --git a/src/main/java/com/cricketcraft/chisel/carving/CarvingGroup.java b/src/main/java/com/cricketcraft/chisel/carving/CarvingGroup.java
index 5f4ecf3f..08e64389 100644
--- a/src/main/java/com/cricketcraft/chisel/carving/CarvingGroup.java
+++ b/src/main/java/com/cricketcraft/chisel/carving/CarvingGroup.java
@@ -1,8 +1,10 @@
package com.cricketcraft.chisel.carving;
import java.util.Collections;
+import java.util.Comparator;
import java.util.List;
+import com.cricketcraft.chisel.api.carving.CarvingUtils;
import com.cricketcraft.chisel.api.carving.ICarvingGroup;
import com.cricketcraft.chisel.api.carving.ICarvingVariation;
import com.google.common.collect.ImmutableList;
@@ -27,7 +29,13 @@ public class CarvingGroup implements ICarvingGroup {
@Override
public void addVariation(ICarvingVariation variation) {
variations.add(variation);
- Collections.sort(variations);
+ Collections.sort(variations, new Comparator() {
+
+ @Override
+ public int compare(ICarvingVariation o1, ICarvingVariation o2) {
+ return CarvingUtils.compare(o1, o2);
+ }
+ });
}
@Override
diff --git a/src/main/java/com/cricketcraft/chisel/carving/CarvingVariation.java b/src/main/java/com/cricketcraft/chisel/carving/CarvingVariation.java
index 7d63f1fb..f3e8d3dd 100644
--- a/src/main/java/com/cricketcraft/chisel/carving/CarvingVariation.java
+++ b/src/main/java/com/cricketcraft/chisel/carving/CarvingVariation.java
@@ -1,9 +1,7 @@
package com.cricketcraft.chisel.carving;
import net.minecraft.block.Block;
-import net.minecraft.item.ItemStack;
-import com.cricketcraft.chisel.api.carving.CarvingUtils;
import com.cricketcraft.chisel.api.carving.ICarvingVariation;
public class CarvingVariation implements ICarvingVariation {
@@ -39,9 +37,4 @@ public class CarvingVariation implements ICarvingVariation {
public int getOrder() {
return order;
}
-
- @Override
- public int compareTo(ICarvingVariation o) {
- return CarvingUtils.compare(this, o);
- }
}
diff --git a/src/main/java/com/cricketcraft/chisel/carving/GroupList.java b/src/main/java/com/cricketcraft/chisel/carving/GroupList.java
index d57c8f8c..a33db007 100644
--- a/src/main/java/com/cricketcraft/chisel/carving/GroupList.java
+++ b/src/main/java/com/cricketcraft/chisel/carving/GroupList.java
@@ -6,7 +6,6 @@ import java.util.Iterator;
import java.util.Set;
import net.minecraft.block.Block;
-import net.minecraft.item.ItemStack;
import org.apache.commons.lang3.tuple.Pair;
@@ -49,11 +48,6 @@ public class GroupList implements Set {
data = Pair.of(block, blockMeta);
}
- @Override
- public int compareTo(ICarvingVariation o) {
- return 0;
- }
-
@Override
public Block getBlock() {
return data.getLeft();