diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockModels.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockModels.kt index 0919c9a83..a6b3eb704 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockModels.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockModels.kt @@ -10,12 +10,20 @@ fun addBlockModels(provider: MatteryBlockModelProvider) { resourceCubeAll(MBlocks.DEEPSLATE_TRITANIUM_ORE) resourceCubeAll(MBlocks.TRITANIUM_INGOT_BLOCK) + cable("crude_energy_cable", "block/power_cable_0") + cable("regular_energy_cable", "block/power_cable_1") + cable("advanced_energy_cable", "block/power_cable_2") + cable("superconductor_energy_cable", "block/power_cable_3") + cable("storage_cable", "block/storage_cable") + colored(MBlocks.COBBLESTONE_GENERATOR, listOf("0", "particle")) - colored(MBlocks.ESSENCE_STORAGE, listOf("0", "particle")) colored(MBlocks.ITEM_MONITOR, listOf("0", "particle")) colored(MBlocks.MATTER_RECONSTRUCTOR, listOf("0", "particle")) colored(MBlocks.ENERGY_SERVO, listOf("0", "particle")) + colored("essence_storage", "_empty", listOf("0")) + colored("essence_storage", "_filled", listOf("0")) + colored("matter_capacitor_bank", listOf("1", "particle"), "mattercapacitorbank_frame") colored("battery_bank", listOf("0", "particle"), "batterybank_frame") diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockStates.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockStates.kt index e9de264e2..68846f7b9 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockStates.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/blocks/BlockStates.kt @@ -8,6 +8,7 @@ import ru.dbotthepony.mc.otm.block.decorative.CargoCrateBlock import ru.dbotthepony.mc.otm.block.entity.WorkerState import ru.dbotthepony.mc.otm.block.matter.MatterBottlerBlock import ru.dbotthepony.mc.otm.block.tech.AndroidChargerBlock +import ru.dbotthepony.mc.otm.block.tech.EssenceStorageBlock import ru.dbotthepony.mc.otm.core.math.BlockRotationFreedom import ru.dbotthepony.mc.otm.core.math.xRotationBlockstateNorth import ru.dbotthepony.mc.otm.core.math.xRotationBlockstateSouth @@ -112,7 +113,22 @@ fun addBlockStates(provider: MatteryBlockStateProvider) { provider.block(MBlocks.MATTER_RECONSTRUCTOR.values) provider.block(MBlocks.ENERGY_SERVO.values) provider.block(MBlocks.COBBLESTONE_GENERATOR.values) - provider.block(MBlocks.ESSENCE_STORAGE.values) + + provider.exec { + for (block in MBlocks.ESSENCE_STORAGE.values) { + provider.getVariantBuilder(block).forAllStates { + return@forAllStates arrayOf( + ConfiguredModel.builder() + .modelFile(provider.models().getExistingFile( + modLocation("${block.registryName!!.path}_${if (it.getValue( + EssenceStorageBlock.FILLED)) "filled" else "empty"}") + )) + .rotationY(it.getValue(BlockRotationFreedom.HORIZONTAL.property).front.yRotationBlockstateNorth()) + .buildLast() + ) + } + } + } provider.exec { for (crate in MRegistry.CARGO_CRATES.allBlocks.values) { @@ -191,5 +207,49 @@ fun addBlockStates(provider: MatteryBlockStateProvider) { part().modelFile(provider.models().getExistingFile(modLocation("storage_cable_core"))) .addModel().end() } + + with(provider.getMultipartBuilder(MBlocks.MATTER_CABLE)) { + for (dir in BlockRotationFreedom.DIRECTIONAL.possibleValues) { + part().modelFile(provider.models().getExistingFile(modLocation("matter_cable_connection"))) + .rotationX(dir.front.xRotationBlockstateSouth()) + .rotationY(dir.front.yRotationBlockstateSouth()) + .addModel() + .condition(CableBlock.MAPPING_CONNECTION_PROP[dir.front]!!, true) + .end() + } + + part().modelFile(provider.models().getExistingFile(modLocation("matter_cable_core"))) + .addModel().end() + } + + with(provider.getMultipartBuilder(MBlocks.STORAGE_CABLE)) { + for (dir in BlockRotationFreedom.DIRECTIONAL.possibleValues) { + part().modelFile(provider.models().getExistingFile(modLocation("storage_cable_connection"))) + .rotationX(dir.front.xRotationBlockstateSouth()) + .rotationY(dir.front.yRotationBlockstateSouth()) + .addModel() + .condition(CableBlock.MAPPING_CONNECTION_PROP[dir.front]!!, true) + .end() + } + + part().modelFile(provider.models().getExistingFile(modLocation("storage_cable_core"))) + .addModel().end() + } + + for (block in MBlocks.ENERGY_CABLES) { + with(provider.getMultipartBuilder(block.value)) { + for (dir in BlockRotationFreedom.DIRECTIONAL.possibleValues) { + part().modelFile(provider.models().getExistingFile(modLocation("${block.value.registryName!!.path}_connection"))) + .rotationX(dir.front.xRotationBlockstateSouth()) + .rotationY(dir.front.yRotationBlockstateSouth()) + .addModel() + .condition(CableBlock.MAPPING_CONNECTION_PROP[dir.front]!!, true) + .end() + } + + part().modelFile(provider.models().getExistingFile(modLocation("${block.value.registryName!!.path}_core"))) + .addModel().end() + } + } } } diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/items/ItemModels.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/items/ItemModels.kt index d3de3d6dc..daadb672c 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/items/ItemModels.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/items/ItemModels.kt @@ -172,10 +172,8 @@ fun addItemModels(provider: MatteryItemModelProvider) { provider.coloredWithBaseBlock(MItems.MATTER_SCANNER, "matter_scanner", "_idle") provider.coloredWithBaseBlock(MItems.MATTER_REPLICATOR, "matter_replicator", "_idle") provider.coloredWithBaseBlock(MItems.DRIVE_VIEWER, "drive_viewer", "_idle") - provider.block(MItems.MATTER_CABLE, "matter_cable_core") provider.coloredWithBaseBlock(MItems.MATTER_DECOMPOSER, "matter_decomposer", "_idle") provider.coloredWithBaseBlock(MItems.ENERGY_SERVO, "energy_servo") - provider.coloredWithBaseBlock(MItems.ESSENCE_STORAGE, "essence_storage") provider.coloredWithBaseBlock(MItems.MATTER_RECONSTRUCTOR, "matter_reconstructor") provider.coloredWithBaseBlock(MItems.POWERED_BLAST_FURNACE, "powered_blast_furnace", "_idle") @@ -188,10 +186,23 @@ fun addItemModels(provider: MatteryItemModelProvider) { provider.coloredWithBaseBlock(MItems.MATTER_RECYCLER, "matter_recycler", "_idle") provider.coloredWithBaseBlock(MItems.COBBLESTONE_GENERATOR, "cobblestone_generator") + provider.exec { + provider.withExistingParent("essence_storage", modLocation("block/essence_storage_empty")) + .override() + .predicate(modLocation("is_filled"), 1f) + .model(provider.withExistingParent("essence_storage_filled", modLocation("block/essence_storage_filled"))) + .end() + } + for (dye in DyeColor.entries) { provider.exec { provider.withExistingParent("android_charger_${dye.name.lowercase()}", modLocation("item/android_charger")).texture("0", modLocation("block/android_charger/${dye.name.lowercase()}")) provider.withExistingParent("matter_panel_${dye.name.lowercase()}", modLocation("item/matter_panel")).texture("texture", modLocation("block/matter_panel/${dye.name.lowercase()}")) + provider.withExistingParent("essence_storage_${dye.name.lowercase()}", modLocation("block/essence_storage_${dye.name.lowercase()}_empty")) + .override() + .predicate(modLocation("is_filled"), 1f) + .model(provider.withExistingParent("essence_storage_${dye.name.lowercase()}_filled", modLocation("block/essence_storage_${dye.name.lowercase()}_filled"))) + .end() } } diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/English.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/English.kt index c86a0526d..2140cb5ed 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/English.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/English.kt @@ -608,8 +608,8 @@ private fun items(provider: MatteryLanguageProvider) { add(MItems.ESSENCE_CAPSULE, "Essence Capsule") add(MItems.ESSENCE_DRIVE, "Essence Memory Holotape") add(MItems.ESSENCE_SERVO, "Essence Servo") - add(MItems.ESSENCE_SERVO, "desc", "Allows to 'pump' essence involving fleshy humanoids") - add(MItems.ESSENCE_SERVO, "desc2", "Can be used standalone, or as tool inside Essence Servo") + add(MItems.ESSENCE_SERVO, "desc", "Allows to absorb nearby experience orbs directly into essence storage") + add(MItems.ESSENCE_SERVO, "desc2", "Can be used as a tool to pump essence manually") add(MItems.NUTRIENT_PASTE, "Nutrient Paste") diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/Russian.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/Russian.kt index 579fac976..b975b1b16 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/Russian.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/lang/Russian.kt @@ -612,8 +612,8 @@ private fun items(provider: MatteryLanguageProvider) { add(MItems.ESSENCE_CAPSULE, "Капсула эссенции") add(MItems.ESSENCE_DRIVE, "Голодиск воспоминаний андроида") add(MItems.ESSENCE_SERVO, "Помпа эссенции") - add(MItems.ESSENCE_SERVO, "desc", "Позволяет 'перекачивать' эссенцию гуманоидов из плоти") - add(MItems.ESSENCE_SERVO, "desc2", "Может быть использовано напрямую, или как инструмент внутри хранилища эссенции") + add(MItems.ESSENCE_SERVO, "desc", "Позволяет всасывать близлежащие сферы опыта напрямую в хранилище эссенции") + add(MItems.ESSENCE_SERVO, "desc2", "Может использоваться как инструмент для ручной перекачки эссенции") add(MItems.NUTRIENT_PASTE, "Питательная паста") diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/models/MatteryModelProvider.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/models/MatteryModelProvider.kt index 6384439fb..63ec5c1f1 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/models/MatteryModelProvider.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/models/MatteryModelProvider.kt @@ -142,4 +142,17 @@ class MatteryBlockModelProvider(event: GatherDataEvent) : BlockModelProvider(eve colored(modelName, state, textureKeys.associateWith { modelName }) } } + + fun cable(modelName: String, textureName: String) { + exec { + withExistingParent("block/${modelName}_core", modLocation("block/base_cable_core")) + .texture("0", textureName) + + withExistingParent("block/${modelName}_connection", modLocation("block/base_cable_connection")) + .texture("0", textureName) + + withExistingParent("item/${modelName}", modLocation("item/base_cable")) + .texture("0", textureName) + } + } } diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/block/entity/decorative/PainterBlockEntity.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/block/entity/decorative/PainterBlockEntity.kt index 7a65e1450..048239721 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/block/entity/decorative/PainterBlockEntity.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/block/entity/decorative/PainterBlockEntity.kt @@ -67,7 +67,7 @@ class PainterBlockEntity(blockPos: BlockPos, blockState: BlockState) : MatteryDe override fun fill(resource: FluidStack, action: IFluidHandler.FluidAction): Int { if (resource.isEmpty || resource.fluid != Fluids.WATER || waterStored() >= MAX_WATER_STORAGE) return 0 - val diff = (waterStored() + resource.amount).coerceAtMost(MAX_WATER_STORAGE) - waterStored() + val diff = ((waterStored().toLong() + resource.amount.toLong()).coerceAtMost(MAX_WATER_STORAGE.toLong()) - waterStored().toLong()).toInt() if (action.simulate() || diff == 0) return diff dyeStored[null] = waterStored() + diff return diff diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/block/entity/tech/EssenceStorageBlockEntity.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/block/entity/tech/EssenceStorageBlockEntity.kt index 58a1d287c..80c28c98e 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/block/entity/tech/EssenceStorageBlockEntity.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/block/entity/tech/EssenceStorageBlockEntity.kt @@ -1,20 +1,31 @@ package ru.dbotthepony.mc.otm.block.entity.tech import net.minecraft.core.BlockPos +import net.minecraft.server.level.ServerLevel +import net.minecraft.sounds.SoundEvents +import net.minecraft.sounds.SoundSource +import net.minecraft.world.entity.ExperienceOrb import net.minecraft.world.entity.player.Inventory import net.minecraft.world.entity.player.Player import net.minecraft.world.inventory.AbstractContainerMenu import net.minecraft.world.item.ItemStack import net.minecraft.world.item.enchantment.Enchantments +import net.minecraft.world.level.block.Block import net.minecraft.world.level.block.state.BlockState import net.minecraftforge.fluids.FluidStack import net.minecraftforge.fluids.capability.IFluidHandler import ru.dbotthepony.mc.otm.block.entity.ExperienceStorage.Companion.XP_TO_LIQUID_RATIO import ru.dbotthepony.mc.otm.block.entity.MatteryDeviceBlockEntity +import ru.dbotthepony.mc.otm.block.tech.EssenceStorageBlock import ru.dbotthepony.mc.otm.capability.item.CombinedItemHandler +import ru.dbotthepony.mc.otm.config.MachinesConfig import ru.dbotthepony.mc.otm.container.HandlerFilter import ru.dbotthepony.mc.otm.container.MatteryContainer +import ru.dbotthepony.mc.otm.core.getEntitiesInEllipsoid +import ru.dbotthepony.mc.otm.core.math.Vector +import ru.dbotthepony.mc.otm.core.util.countingLazy import ru.dbotthepony.mc.otm.item.EssenceCapsuleItem +import ru.dbotthepony.mc.otm.item.EssenceServoItem import ru.dbotthepony.mc.otm.menu.tech.EssenceStorageMenu import ru.dbotthepony.mc.otm.registry.MBlockEntities import ru.dbotthepony.mc.otm.registry.MFluids @@ -119,6 +130,14 @@ class EssenceStorageBlockEntity(blockPos: BlockPos, blockState: BlockState) : Ma return FluidStack(MFluids.LIQUID_XP, actualDrain) } + private val hasFillState by countingLazy(blockStateChangesCounter) { + this.blockState.hasProperty(EssenceStorageBlock.FILLED) + } + + private val isFilledState by countingLazy(blockStateChangesCounter) { + hasFillState && this.blockState.getValue(EssenceStorageBlock.FILLED) + } + override fun tick() { super.tick() @@ -146,6 +165,45 @@ class EssenceStorageBlockEntity(blockPos: BlockPos, blockState: BlockState) : Ma repairStack.damageValue -= repairPoints } } + + val servo = servoContainer[0] + + if (!servo.isEmpty && servo.item is EssenceServoItem && level is ServerLevel) { + val entities = level!!.getEntitiesInEllipsoid( + blockPos.center, + Vector( + MachinesConfig.EssenceStorage.RADIUS_HORIZONTAL, + MachinesConfig.EssenceStorage.RADIUS_VERTICAL, + MachinesConfig.EssenceStorage.RADIUS_HORIZONTAL + ) + ) { it is ExperienceOrb } + + for ((ent, _) in entities) { + ent as ExperienceOrb + + for (i in 1 .. ent.count) { + experienceStored += ent.value + ent.count-- + + level!!.playSound(null, ent.x, ent.y, ent.z, + SoundEvents.EXPERIENCE_ORB_PICKUP, SoundSource.BLOCKS, + 0.1F, 0.5F + level!!.random.nextFloat() * 0.25F + ) + } + + if (ent.count <= 0) { + ent.discard() + } + } + } + } + + if (hasFillState) { + val filled = experienceStored > 0 + + if (isFilledState != filled) { + level?.setBlock(blockPos, blockState.setValue(EssenceStorageBlock.FILLED, filled), Block.UPDATE_CLIENTS) + } } } } diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/block/tech/EssenceStorageBlock.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/block/tech/EssenceStorageBlock.kt index c87982755..1628451d7 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/block/tech/EssenceStorageBlock.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/block/tech/EssenceStorageBlock.kt @@ -9,11 +9,14 @@ import net.minecraft.world.entity.player.Player import net.minecraft.world.item.DyeColor import net.minecraft.world.level.BlockGetter import net.minecraft.world.level.Level +import net.minecraft.world.level.block.Block import net.minecraft.world.level.block.EntityBlock import net.minecraft.world.level.block.entity.BlockEntity import net.minecraft.world.level.block.entity.BlockEntityTicker import net.minecraft.world.level.block.entity.BlockEntityType import net.minecraft.world.level.block.state.BlockState +import net.minecraft.world.level.block.state.StateDefinition +import net.minecraft.world.level.block.state.properties.BooleanProperty import net.minecraft.world.level.material.MapColor import net.minecraft.world.level.material.PushReaction import net.minecraft.world.phys.BlockHitResult @@ -44,6 +47,8 @@ class EssenceStorageBlock(val color: DyeColor?) : RotatableMatteryBlock(Properti acceptor(TranslatableComponent("otm.gui.experience_levels", getLevelFromXp(l.asLong)).withStyle(ChatFormatting.GRAY)) } } + + registerDefaultState(getStateDefinition().any().setValue(FILLED, false)) } override fun newBlockEntity(pPos: BlockPos, pState: BlockState): BlockEntity { @@ -67,6 +72,11 @@ class EssenceStorageBlock(val color: DyeColor?) : RotatableMatteryBlock(Properti return super.use(blockState, level, blockPos, ply, hand, blockHitResult) } + override fun createBlockStateDefinition(builder: StateDefinition.Builder) { + super.createBlockStateDefinition(builder) + builder.add(FILLED) + } + private val shapes = getShapeForEachState(rotationProperty) { BlockShapes.ESSENCE_STORAGE.rotateFromNorth(it[rotationProperty]).computeShape() } @Suppress("override_deprecation") @@ -78,4 +88,8 @@ class EssenceStorageBlock(val color: DyeColor?) : RotatableMatteryBlock(Properti ): VoxelShape { return shapes[state]!! } + + companion object { + val FILLED = BooleanProperty.create("filled") + } } diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/config/MachinesConfig.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/config/MachinesConfig.kt index cc3358134..5eff8cfc2 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/config/MachinesConfig.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/config/MachinesConfig.kt @@ -219,7 +219,21 @@ object MachinesConfig : AbstractConfig("machines") { } } + object EssenceStorage { + init { + builder.push(MNames.ESSENCE_STORAGE) + } + + val RADIUS_HORIZONTAL: Double by builder.defineInRange("RADIUS_HORIZONTAL", 5.0, 0.0, Double.MAX_VALUE / 4.0) + val RADIUS_VERTICAL: Double by builder.defineInRange("RADIUS_VERTICAL", 2.0, 0.0, Double.MAX_VALUE / 4.0) + + init { + builder.pop() + } + } + init { Upgrades + EssenceStorage } } diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MRegistry.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MRegistry.kt index 5d5214fe2..755ec3efe 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MRegistry.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MRegistry.kt @@ -8,10 +8,12 @@ import net.minecraft.client.renderer.item.ItemProperties import net.minecraft.core.BlockPos import net.minecraft.core.cauldron.CauldronInteraction import net.minecraft.core.registries.Registries +import net.minecraft.nbt.CompoundTag import net.minecraft.resources.ResourceLocation import net.minecraft.world.entity.EntityType import net.minecraft.world.entity.ai.village.poi.PoiType import net.minecraft.world.entity.ai.village.poi.PoiTypes +import net.minecraft.world.item.BlockItem import net.minecraft.world.item.DyeColor import net.minecraft.world.item.DyeableArmorItem import net.minecraft.world.item.Item @@ -389,6 +391,18 @@ object MRegistry : IBlockItemRegistryAcceptor { } } } + + for (item in MItems.ESSENCE_STORAGE.values) { + ItemProperties.register(item, ResourceLocation(OverdriveThatMatters.MOD_ID, "is_filled")) { stack, _, _, _ -> + val tag = (stack.tag?.get(BlockItem.BLOCK_ENTITY_TAG) as? CompoundTag)?: return@register 0f + + if (tag.contains("experienceStored") && tag.getLong("experienceStored") > 0.0) { + 1f + } else { + 0f + } + } + } } } diff --git a/src/main/resources/META-INF/accesstransformer.cfg b/src/main/resources/META-INF/accesstransformer.cfg index 86504a276..319bbf3a4 100644 --- a/src/main/resources/META-INF/accesstransformer.cfg +++ b/src/main/resources/META-INF/accesstransformer.cfg @@ -163,6 +163,8 @@ public net.minecraft.world.entity.boss.wither.WitherBoss f_31432_ # TARGETING_CO public-f net.minecraft.world.entity.boss.wither.WitherBoss f_31431_ # LIVING_ENTITY_SELECTOR public net.minecraft.world.entity.ai.targeting.TargetingConditions f_26879_ # selector +public net.minecraft.world.entity.ExperienceOrb f_147072_ # count + public net.minecraft.advancements.critereon.InventoryChangeTrigger$TriggerInstance f_43179_ public net.minecraft.advancements.critereon.InventoryChangeTrigger$TriggerInstance f_43178_ public net.minecraft.advancements.critereon.InventoryChangeTrigger$TriggerInstance f_43177_ diff --git a/src/main/resources/assets/overdrive_that_matters/blockstates/advanced_energy_cable.json b/src/main/resources/assets/overdrive_that_matters/blockstates/advanced_energy_cable.json deleted file mode 100644 index ae8a815be..000000000 --- a/src/main/resources/assets/overdrive_that_matters/blockstates/advanced_energy_cable.json +++ /dev/null @@ -1,74 +0,0 @@ -{ - "multipart": [ - { - "apply": { - "model": "overdrive_that_matters:block/storage_cable_core" - } - }, - - { - "when": { - "connect_south": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection" - } - }, - - { - "when": { - "connect_west": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "y": 90 - } - }, - - { - "when": { - "connect_north": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "y": 180 - } - }, - - { - "when": { - "connect_east": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "y": 270 - } - }, - - { - "when": { - "connect_up": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "x": 90 - } - }, - - { - "when": { - "connect_down": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "x": 270 - } - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/overdrive_that_matters/blockstates/crude_energy_cable.json b/src/main/resources/assets/overdrive_that_matters/blockstates/crude_energy_cable.json deleted file mode 100644 index ae8a815be..000000000 --- a/src/main/resources/assets/overdrive_that_matters/blockstates/crude_energy_cable.json +++ /dev/null @@ -1,74 +0,0 @@ -{ - "multipart": [ - { - "apply": { - "model": "overdrive_that_matters:block/storage_cable_core" - } - }, - - { - "when": { - "connect_south": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection" - } - }, - - { - "when": { - "connect_west": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "y": 90 - } - }, - - { - "when": { - "connect_north": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "y": 180 - } - }, - - { - "when": { - "connect_east": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "y": 270 - } - }, - - { - "when": { - "connect_up": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "x": 90 - } - }, - - { - "when": { - "connect_down": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "x": 270 - } - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/overdrive_that_matters/blockstates/matter_cable.json b/src/main/resources/assets/overdrive_that_matters/blockstates/matter_cable.json deleted file mode 100644 index e751d40ea..000000000 --- a/src/main/resources/assets/overdrive_that_matters/blockstates/matter_cable.json +++ /dev/null @@ -1,74 +0,0 @@ -{ - "multipart": [ - { - "apply": { - "model": "overdrive_that_matters:block/matter_cable_core" - } - }, - - { - "when": { - "connect_south": true - }, - - "apply": { - "model": "overdrive_that_matters:block/matter_cable_connection" - } - }, - - { - "when": { - "connect_west": true - }, - - "apply": { - "model": "overdrive_that_matters:block/matter_cable_connection", - "y": 90 - } - }, - - { - "when": { - "connect_north": true - }, - - "apply": { - "model": "overdrive_that_matters:block/matter_cable_connection", - "y": 180 - } - }, - - { - "when": { - "connect_east": true - }, - - "apply": { - "model": "overdrive_that_matters:block/matter_cable_connection", - "y": 270 - } - }, - - { - "when": { - "connect_up": true - }, - - "apply": { - "model": "overdrive_that_matters:block/matter_cable_connection", - "x": 90 - } - }, - - { - "when": { - "connect_down": true - }, - - "apply": { - "model": "overdrive_that_matters:block/matter_cable_connection", - "x": 270 - } - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/overdrive_that_matters/blockstates/regular_energy_cable.json b/src/main/resources/assets/overdrive_that_matters/blockstates/regular_energy_cable.json deleted file mode 100644 index ae8a815be..000000000 --- a/src/main/resources/assets/overdrive_that_matters/blockstates/regular_energy_cable.json +++ /dev/null @@ -1,74 +0,0 @@ -{ - "multipart": [ - { - "apply": { - "model": "overdrive_that_matters:block/storage_cable_core" - } - }, - - { - "when": { - "connect_south": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection" - } - }, - - { - "when": { - "connect_west": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "y": 90 - } - }, - - { - "when": { - "connect_north": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "y": 180 - } - }, - - { - "when": { - "connect_east": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "y": 270 - } - }, - - { - "when": { - "connect_up": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "x": 90 - } - }, - - { - "when": { - "connect_down": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "x": 270 - } - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/overdrive_that_matters/blockstates/storage_cable.json b/src/main/resources/assets/overdrive_that_matters/blockstates/storage_cable.json deleted file mode 100644 index ae8a815be..000000000 --- a/src/main/resources/assets/overdrive_that_matters/blockstates/storage_cable.json +++ /dev/null @@ -1,74 +0,0 @@ -{ - "multipart": [ - { - "apply": { - "model": "overdrive_that_matters:block/storage_cable_core" - } - }, - - { - "when": { - "connect_south": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection" - } - }, - - { - "when": { - "connect_west": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "y": 90 - } - }, - - { - "when": { - "connect_north": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "y": 180 - } - }, - - { - "when": { - "connect_east": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "y": 270 - } - }, - - { - "when": { - "connect_up": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "x": 90 - } - }, - - { - "when": { - "connect_down": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "x": 270 - } - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/overdrive_that_matters/blockstates/superconductor_energy_cable.json b/src/main/resources/assets/overdrive_that_matters/blockstates/superconductor_energy_cable.json deleted file mode 100644 index ae8a815be..000000000 --- a/src/main/resources/assets/overdrive_that_matters/blockstates/superconductor_energy_cable.json +++ /dev/null @@ -1,74 +0,0 @@ -{ - "multipart": [ - { - "apply": { - "model": "overdrive_that_matters:block/storage_cable_core" - } - }, - - { - "when": { - "connect_south": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection" - } - }, - - { - "when": { - "connect_west": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "y": 90 - } - }, - - { - "when": { - "connect_north": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "y": 180 - } - }, - - { - "when": { - "connect_east": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "y": 270 - } - }, - - { - "when": { - "connect_up": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "x": 90 - } - }, - - { - "when": { - "connect_down": true - }, - - "apply": { - "model": "overdrive_that_matters:block/storage_cable_connection", - "x": 270 - } - } - ] -} \ No newline at end of file diff --git a/src/main/resources/assets/overdrive_that_matters/models/block/base_cable_connection.json b/src/main/resources/assets/overdrive_that_matters/models/block/base_cable_connection.json new file mode 100644 index 000000000..c774f91ee --- /dev/null +++ b/src/main/resources/assets/overdrive_that_matters/models/block/base_cable_connection.json @@ -0,0 +1,19 @@ +{ + "parent": "block/block", + "texture_size": [16, 16], + "textures": { + "particle": "#0" + }, + "elements": [ + { + "from": [ 5, 5, 11 ], + "to": [ 11, 11, 16 ], + "faces": { + "down": {"uv": [6, 0, 11, 6],"rotation": 90, "texture": "#0" }, + "up": {"uv": [6, 0, 11, 6],"rotation": 90, "texture": "#0" }, + "west": {"uv": [6, 0, 11, 6], "texture": "#0" }, + "east": {"uv": [6, 0, 11, 6], "texture": "#0" } + } + } + ] +} diff --git a/src/main/resources/assets/overdrive_that_matters/models/block/base_cable_core.json b/src/main/resources/assets/overdrive_that_matters/models/block/base_cable_core.json new file mode 100644 index 000000000..353685030 --- /dev/null +++ b/src/main/resources/assets/overdrive_that_matters/models/block/base_cable_core.json @@ -0,0 +1,21 @@ +{ + "parent": "block/block", + "texture_size": [16, 16], + "textures": { + "particle": "#0" + }, + "elements": [ + { + "from": [ 5, 5, 5 ], + "to": [ 11, 11, 11 ], + "faces": { + "down": {"uv": [0, 0, 6, 6], "texture": "#0" }, + "up": {"uv": [0, 0, 6, 6], "texture": "#0" }, + "north": {"uv": [0, 0, 6, 6], "texture": "#0" }, + "south": {"uv": [0, 0, 6, 6], "texture": "#0" }, + "west": {"uv": [0, 0, 6, 6], "texture": "#0" }, + "east": {"uv": [0, 0, 6, 6], "texture": "#0" } + } + } + ] +} diff --git a/src/main/resources/assets/overdrive_that_matters/models/block/essence_storage_empty.json b/src/main/resources/assets/overdrive_that_matters/models/block/essence_storage_empty.json new file mode 100644 index 000000000..edbee1f08 --- /dev/null +++ b/src/main/resources/assets/overdrive_that_matters/models/block/essence_storage_empty.json @@ -0,0 +1,124 @@ +{ + "parent": "block/block", + "credit": "Made with Blockbench", + "render_type": "cutout", + "texture_size": [32, 64], + "textures": { + "0": "overdrive_that_matters:block/essence_storage", + "particle": "#0" + }, + "elements": [ + { + "name": "body", + "from": [0, 0, 0], + "to": [16, 2, 16], + "faces": { + "north": {"uv": [0, 4, 8, 4.5], "texture": "#0"}, + "east": {"uv": [0, 4, 8, 4.5], "texture": "#0"}, + "south": {"uv": [0, 4, 8, 4.5], "texture": "#0"}, + "west": {"uv": [0, 4, 8, 4.5], "texture": "#0"}, + "up": {"uv": [0, 0, 8, 4], "texture": "#0"}, + "down": {"uv": [0, 0, 8, 4], "texture": "#0"} + } + }, + { + "name": "body", + "from": [0, 3, 0], + "to": [16, 5, 16], + "faces": { + "north": {"uv": [8, 7.25, 16, 7.75], "texture": "#0"}, + "east": {"uv": [8, 7.25, 16, 7.75], "texture": "#0"}, + "south": {"uv": [8, 7.25, 16, 7.75], "texture": "#0"}, + "west": {"uv": [8, 7.25, 16, 7.75], "texture": "#0"}, + "up": {"uv": [0, 7.25, 8, 11.25], "rotation": 180, "texture": "#0"}, + "down": {"uv": [0, 0, 8, 4], "texture": "#0"} + } + }, + { + "name": "body", + "from": [9, 5, 0], + "to": [16, 16, 14], + "faces": { + "north": {"uv": [12, 0, 15.5, 2.75], "texture": "#0"}, + "east": {"uv": [9, 7.75, 16, 10.5], "texture": "#0"}, + "south": {"uv": [11, 4.5, 14.5, 7.25], "texture": "#0"}, + "west": {"uv": [0, 4.5, 7, 7.25], "texture": "#0"}, + "up": {"uv": [0, 7.75, 3.5, 11.25], "rotation": 180, "texture": "#0"} + } + }, + { + "name": "body", + "from": [0, 10, 14], + "to": [16, 16, 16], + "faces": { + "east": {"uv": [8, 7.75, 9, 9.25], "texture": "#0"}, + "south": {"uv": [0, 11.25, 8, 12.75], "texture": "#0"}, + "west": {"uv": [14.5, 4.5, 15.5, 6], "texture": "#0"}, + "up": {"uv": [0, 7.25, 8, 7.75], "rotation": 180, "texture": "#0"}, + "down": {"uv": [0, 7.25, 8, 7.75], "texture": "#0"} + } + }, + { + "name": "body", + "from": [0, 5, 9], + "to": [9, 16, 14], + "faces": { + "north": {"uv": [7, 4.5, 11.5, 7.25], "texture": "#0"}, + "south": {"uv": [5, 4.5, 9.5, 7.25], "texture": "#0"}, + "west": {"uv": [12, 4.5, 14.5, 7.25], "texture": "#0"}, + "up": {"uv": [3.5, 7.75, 8, 9], "rotation": 180, "texture": "#0"} + } + }, + { + "name": "body", + "from": [1, 2, 1], + "to": [15, 3, 15], + "faces": { + "north": {"uv": [0.5, 4.25, 7.5, 4.5], "texture": "#0"}, + "east": {"uv": [0.5, 4.25, 7.5, 4.5], "texture": "#0"}, + "south": {"uv": [0.5, 4.25, 7.5, 4.5], "texture": "#0"}, + "west": {"uv": [0.5, 4.25, 7.5, 4.5], "texture": "#0"} + } + }, + { + "name": "body", + "from": [1, 5, 14], + "to": [15, 10, 15], + "faces": { + "east": {"uv": [15.5, 10.5, 16, 11.75], "texture": "#0"}, + "south": {"uv": [8.5, 10.5, 15.5, 11.75], "texture": "#0"}, + "west": {"uv": [8, 10.5, 8.5, 11.75], "texture": "#0"} + } + }, + { + "name": "bottle", + "from": [1, 13, 1], + "to": [9, 15, 9], + "faces": { + "north": {"uv": [8, 2, 12, 2.5], "texture": "#0"}, + "west": {"uv": [8, 2, 12, 2.5], "texture": "#0"}, + "up": {"uv": [8, 0, 12, 2], "texture": "#0"}, + "down": {"uv": [8, 0, 12, 2], "texture": "#0"} + } + }, + { + "name": "bottle", + "from": [1, 5, 1], + "to": [9, 6, 9], + "faces": { + "north": {"uv": [8, 4.25, 12, 4.5], "texture": "#0"}, + "west": {"uv": [8, 4.25, 12, 4.5], "texture": "#0"}, + "up": {"uv": [8, 0, 12, 2], "texture": "#0"} + } + }, + { + "name": "bottle", + "from": [1, 6, 1], + "to": [9, 13, 9], + "faces": { + "north": {"uv": [8, 2.5, 12, 4.25], "texture": "#0"}, + "west": {"uv": [8, 2.5, 12, 4.25], "texture": "#0"} + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/overdrive_that_matters/models/block/essence_storage.json b/src/main/resources/assets/overdrive_that_matters/models/block/essence_storage_filled.json similarity index 76% rename from src/main/resources/assets/overdrive_that_matters/models/block/essence_storage.json rename to src/main/resources/assets/overdrive_that_matters/models/block/essence_storage_filled.json index b8cd1d055..f9420d560 100644 --- a/src/main/resources/assets/overdrive_that_matters/models/block/essence_storage.json +++ b/src/main/resources/assets/overdrive_that_matters/models/block/essence_storage_filled.json @@ -1,10 +1,12 @@ { + "parent": "block/block", "credit": "Made with Blockbench", "render_type": "cutout", "texture_size": [32, 64], "textures": { "0": "overdrive_that_matters:block/essence_storage", - "particle": "overdrive_that_matters:block/essence_storage" + "1": "overdrive_that_matters:block/liquid_xp_still", + "particle": "#0" }, "elements": [ { @@ -92,15 +94,15 @@ { "name": "experience", "from": [1.5, 5, 1.5], - "to": [8.5, 11, 8.5], + "to": [8.5, 13, 8.5], "faces": { - "north": {"uv": [8, 14.5, 11.5, 16], "texture": "#0"}, - "east": {"uv": [12.5, 12, 16, 13.5], "texture": "#0"}, - "south": {"uv": [9, 12, 12.5, 13.5], "texture": "#0"}, - "west": {"uv": [11.5, 14.5, 15, 16], "texture": "#0"}, - "up": {"uv": [9.5, 12.5, 13, 14.25], "texture": "#0"} + "north": {"uv": [7.5, 3, 14.5, 11], "texture": "#1"}, + "west": {"uv": [1.5, 3, 8.5, 11], "texture": "#1"} }, - "forge_data": { "block_light": 15, "sky_light": 15 } + "forge_data": { + "block_light": 15, + "sky_light": 15 + } }, { "name": "bottle", @@ -132,36 +134,5 @@ "west": {"uv": [8, 2.5, 12, 4.25], "texture": "#0"} } } - ], - "display": { - "thirdperson_righthand": { - "rotation": [75, 45, 0], - "translation": [0, 2.5, 0], - "scale": [0.375, 0.375, 0.375] - }, - "thirdperson_lefthand": { - "rotation": [75, 45, 0], - "translation": [0, 2.5, 0], - "scale": [0.375, 0.375, 0.375] - }, - "firstperson_righthand": { - "rotation": [0, 45, 0], - "scale": [0.4, 0.4, 0.4] - }, - "firstperson_lefthand": { - "rotation": [0, 225, 0], - "scale": [0.4, 0.4, 0.4] - }, - "ground": { - "translation": [0, 3, 0], - "scale": [0.25, 0.25, 0.25] - }, - "gui": { - "rotation": [30, 225, 0], - "scale": [0.625, 0.625, 0.625] - }, - "fixed": { - "scale": [0.5, 0.5, 0.5] - } - } + ] } \ No newline at end of file diff --git a/src/main/resources/assets/overdrive_that_matters/models/block/storage_cable_connection.json b/src/main/resources/assets/overdrive_that_matters/models/block/storage_cable_connection.json deleted file mode 100644 index 21034ce5a..000000000 --- a/src/main/resources/assets/overdrive_that_matters/models/block/storage_cable_connection.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "parent": "block/block", - "texture_size": [16, 16], - "textures": { - "connection": "overdrive_that_matters:block/storage_cable", - "particle": "overdrive_that_matters:block/storage_cable" - }, - "elements": [ - { - "from": [ 5, 5, 11 ], - "to": [ 11, 11, 16 ], - "faces": { - "down": {"uv": [6, 0, 11, 6],"rotation": 90, "texture": "#connection" }, - "up": {"uv": [6, 0, 11, 6],"rotation": 90, "texture": "#connection" }, - "west": {"uv": [6, 0, 11, 6], "texture": "#connection" }, - "east": {"uv": [6, 0, 11, 6], "texture": "#connection" } - } - } - ] -} diff --git a/src/main/resources/assets/overdrive_that_matters/models/block/storage_cable_core.json b/src/main/resources/assets/overdrive_that_matters/models/block/storage_cable_core.json deleted file mode 100644 index 82ce8a212..000000000 --- a/src/main/resources/assets/overdrive_that_matters/models/block/storage_cable_core.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "parent": "block/block", - "texture_size": [16, 16], - "textures": { - "core": "overdrive_that_matters:block/storage_cable", - "particle": "overdrive_that_matters:block/storage_cable" - }, - "elements": [ - { - "from": [ 5, 5, 5 ], - "to": [ 11, 11, 11 ], - "faces": { - "down": {"uv": [0, 0, 6, 6], "texture": "#core" }, - "up": {"uv": [0, 0, 6, 6], "texture": "#core" }, - "north": {"uv": [0, 0, 6, 6], "texture": "#core" }, - "south": {"uv": [0, 0, 6, 6], "texture": "#core" }, - "west": {"uv": [0, 0, 6, 6], "texture": "#core" }, - "east": {"uv": [0, 0, 6, 6], "texture": "#core" } - } - } - ] -} diff --git a/src/main/resources/assets/overdrive_that_matters/models/item/base_cable.json b/src/main/resources/assets/overdrive_that_matters/models/item/base_cable.json new file mode 100644 index 000000000..80b3fb46b --- /dev/null +++ b/src/main/resources/assets/overdrive_that_matters/models/item/base_cable.json @@ -0,0 +1,49 @@ +{ + "parent": "block/block", + "texture_size": [16, 16], + "textures": { + "particle": "#0" + }, + "elements": [ + { + "from": [5, 5, 5], + "to": [11, 11, 11], + "faces": { + "north": {"uv": [0, 0, 6, 6], "texture": "#0"}, + "south": {"uv": [0, 0, 6, 6], "texture": "#0"}, + "up": {"uv": [0, 0, 6, 6], "rotation": 180, "texture": "#0"}, + "down": {"uv": [0, 0, 6, 6], "rotation": 180, "texture": "#0"} + } + }, + { + "from": [0, 5, 5], + "to": [5, 11, 11], + "faces": { + "north": {"uv": [6, 0, 11, 6], "texture": "#0"}, + "south": {"uv": [6, 6, 11, 0], "rotation": 180, "texture": "#0"}, + "west": {"uv": [0, 0, 6, 6], "texture": "#0"}, + "up": {"uv": [6, 0, 11, 6], "rotation": 180, "texture": "#0"}, + "down": {"uv": [6, 0, 11, 6], "rotation": 180, "texture": "#0"} + } + }, + { + "from": [11, 5, 5], + "to": [16, 11, 11], + "faces": { + "north": {"uv": [11, 0, 16, 6], "texture": "#0"}, + "east": {"uv": [0, 0, 6, 6], "texture": "#0"}, + "south": {"uv": [11, 6, 16, 0], "rotation": 180, "texture": "#0"}, + "up": {"uv": [11, 0, 16, 6], "rotation": 180, "texture": "#0"}, + "down": {"uv": [11, 0, 16, 6], "rotation": 180, "texture": "#0"} + } + } + ], + "gui_light": "front", + "display": { + "gui": { + "rotation": [0, 0, 0], + "translation": [0, 0, 0], + "scale": [1, 1, 1] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/overdrive_that_matters/models/item/matter_cable.json b/src/main/resources/assets/overdrive_that_matters/models/item/matter_cable.json new file mode 100644 index 000000000..530e26553 --- /dev/null +++ b/src/main/resources/assets/overdrive_that_matters/models/item/matter_cable.json @@ -0,0 +1,50 @@ +{ + "parent": "block/block", + "texture_size": [16, 16], + "textures": { + "0": "overdrive_that_matters:block/matter_cable", + "particle": "#0" + }, + "elements": [ + { + "from": [6, 6, 6], + "to": [10, 10, 10], + "faces": { + "north": {"uv": [0, 0, 4, 4], "texture": "#0"}, + "south": {"uv": [0, 0, 4, 4], "texture": "#0"}, + "up": {"uv": [0, 0, 4, 4], "texture": "#0"}, + "down": {"uv": [0, 0, 4, 4], "texture": "#0"} + } + }, + { + "from": [0, 6, 6], + "to": [6, 10, 10], + "faces": { + "north": {"uv": [4, 0, 10, 4], "texture": "#0"}, + "south": {"uv": [10, 0, 4, 4], "texture": "#0"}, + "west": {"uv": [0, 0, 4, 4], "texture": "#0"}, + "up": {"uv": [10, 0, 4, 4], "texture": "#0"}, + "down": {"uv": [10, 0, 4, 4], "texture": "#0"} + } + }, + { + "from": [10, 6, 6], + "to": [16, 10, 10], + "faces": { + "north": {"uv": [10, 0, 16, 4], "texture": "#0"}, + "east": {"uv": [0, 0, 4, 4], "texture": "#0"}, + "south": {"uv": [16, 0, 10, 4], "texture": "#0"}, + "up": {"uv": [16, 0, 10, 4], "texture": "#0"}, + "down": {"uv": [16, 0, 10, 4], "texture": "#0"} + } + } + ], + "gui_light": "front", + "display": { + "gui": { + "rotation": [0, 0, 0], + "translation": [0, 0, 0], + "scale": [1, 1, 1] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/overdrive_that_matters/models/item/storage_cable.json b/src/main/resources/assets/overdrive_that_matters/models/item/storage_cable.json deleted file mode 100644 index e0355ccb3..000000000 --- a/src/main/resources/assets/overdrive_that_matters/models/item/storage_cable.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "parent": "block/block", - "texture_size": [16, 16], - "textures": { - "core": "overdrive_that_matters:block/storage_cable", - "particle": "overdrive_that_matters:block/storage_cable" - }, - "elements": [ - { - "from": [ 6, 6, 6 ], - "to": [ 10, 10, 10 ], - "faces": { - "down": {"uv": [0, 0, 4, 4], "texture": "#core" }, - "up": {"uv": [0, 0, 4, 4], "texture": "#core" }, - "north": {"uv": [0, 0, 4, 4], "texture": "#core" }, - "south": {"uv": [0, 0, 4, 4], "texture": "#core" }, - "west": {"uv": [0, 0, 4, 4], "texture": "#core" }, - "east": {"uv": [0, 0, 4, 4], "texture": "#core" } - } - } - ] -}