Added custom anvil recipe api & builder.

Fixed Conflict not being registered.
Build conflict on the builder instance instead of the ConflictAPI class.
This commit is contained in:
alexcrea 2024-07-09 13:56:19 +02:00
parent bcd8b6ae6e
commit a40d2c6530
No known key found for this signature in database
GPG key ID: 43FD265DB0DBF91F
6 changed files with 386 additions and 82 deletions

View file

@ -170,7 +170,7 @@ class EnchantmentSquaredDependency(private val enchantmentSquaredPlugin: Plugin)
conflict.addEnchantment(enchantment1).addEnchantment(enchantment2)
conflict.setMaxBeforeConflict(1);
conflict.setMaxBeforeConflict(1)
conflict.registerIfAbsent()
}

View file

@ -74,25 +74,30 @@ class AnvilCustomRecipe(
}
fun saveToFile(){
fun saveToFile(writeFile: Boolean, doBackup: Boolean){
val fileConfig = ConfigHolder.CUSTOM_RECIPE_HOLDER.config
fileConfig.set("$name.$EXACT_COUNT_CONFIG", exactCount)
fileConfig["$name.$EXACT_COUNT_CONFIG"] = exactCount
//fileConfig.set("$name.$EXACT_LEFT_CONFIG", exactLeft)
//fileConfig.set("$name.$EXACT_RIGHT_CONFIG", exactRight)
fileConfig.set("$name.$XP_COST_CONFIG", xpCostPerCraft)
fileConfig["$name.$XP_COST_CONFIG"] = xpCostPerCraft
fileConfig.set("$name.$LEFT_ITEM_CONFIG", leftItem)
fileConfig.set("$name.$RIGHT_ITEM_CONFIG", rightItem)
fileConfig.set("$name.$RESULT_ITEM_CONFIG", resultItem)
fileConfig["$name.$LEFT_ITEM_CONFIG"] = leftItem
fileConfig["$name.$RIGHT_ITEM_CONFIG"] = rightItem
fileConfig["$name.$RESULT_ITEM_CONFIG"] = resultItem
if (GuiSharedConstant.TEMPORARY_DO_SAVE_TO_DISK_EVERY_CHANGE) {
ConfigHolder.CUSTOM_RECIPE_HOLDER.saveToDisk(GuiSharedConstant.TEMPORARY_DO_BACKUP_EVERY_SAVE)
if (writeFile) {
ConfigHolder.CUSTOM_RECIPE_HOLDER.saveToDisk(doBackup)
}
}
@Deprecated("Should use saveToFile(Boolean, Boolean) instead") //TODO determine when an where to save/do backup and remove use of variable like TEMPORARY_DO_SAVE_TO_DISK_EVERY_CHANGE
fun saveToFile(){
saveToFile(GuiSharedConstant.TEMPORARY_DO_SAVE_TO_DISK_EVERY_CHANGE, GuiSharedConstant.TEMPORARY_DO_BACKUP_EVERY_SAVE)
}
fun updateFromFile(){
this.exactCount = ConfigHolder.CUSTOM_RECIPE_HOLDER.config.getBoolean(
"$name.$EXACT_COUNT_CONFIG",