I think you left this back at black mesa
This commit is contained in:
parent
e8e640ce80
commit
de226db294
12 changed files with 277 additions and 8 deletions
1
Art/Models/Crowbar/crowbar.bbmodel
Normal file
1
Art/Models/Crowbar/crowbar.bbmodel
Normal file
|
@ -0,0 +1 @@
|
|||
{"meta":{"format_version":"4.5","model_format":"java_block","box_uv":false},"name":"crowbar","parent":"","ambientocclusion":true,"front_gui_light":false,"visible_box":[1,1,0],"variable_placeholders":"","variable_placeholder_buttons":[],"unhandled_root_fields":{},"resolution":{"width":16,"height":16},"elements":[{"name":"Shaft","box_uv":false,"rescale":false,"locked":false,"render_order":"default","allow_mirror_modeling":true,"from":[7.5,2,7.5],"to":[8.5,15,8.475],"autouv":0,"color":3,"origin":[0,0,0],"faces":{"north":{"uv":[0,0,1,13],"texture":0},"east":{"uv":[1,0,2,13],"texture":0},"south":{"uv":[2,0,3,13],"texture":0},"west":{"uv":[3,0,4,13],"texture":0},"up":{"uv":[8,6,7,5],"texture":0},"down":{"uv":[7,7,6,8],"texture":0}},"type":"cube","uuid":"3525d03c-96d5-6fcd-fcc2-761e2d81a078"},{"name":"BottomTip","box_uv":false,"rescale":false,"locked":false,"render_order":"default","allow_mirror_modeling":true,"from":[7.525,4.6999999999999975,6.174999999999999],"to":[8.475,5.499999999999998,8.075],"autouv":0,"color":6,"rotation":[22.5,0,0],"origin":[0,0,0],"faces":{"north":{"uv":[7,6,8,7],"texture":0},"east":{"uv":[4,0,6,1],"texture":0},"south":{"uv":[7,7,8,8],"texture":0},"west":{"uv":[4,1,6,2],"texture":0},"up":{"uv":[5,4,4,2],"texture":0},"down":{"uv":[5,4,4,6],"texture":0}},"type":"cube","uuid":"4b5d084d-d5cc-9607-1834-e62f52881156"},{"name":"TipShaft","box_uv":false,"rescale":false,"locked":false,"render_order":"default","allow_mirror_modeling":true,"from":[7.525,16.37499999999999,-0.125],"to":[8.475,17.1,2.0999999999999996],"autouv":0,"color":6,"rotation":[22.5,0,0],"origin":[0,0,0],"faces":{"north":{"uv":[8,0,9,1],"texture":0},"east":{"uv":[5,2,7,3],"texture":0},"south":{"uv":[8,1,9,2],"texture":0},"west":{"uv":[5,3,7,4],"texture":0},"up":{"uv":[6,6,5,4],"texture":0},"down":{"uv":[7,0,6,2],"texture":0}},"type":"cube","uuid":"5b1e06f0-33f8-3d27-6a42-5867c728d633"},{"name":"TipMiddle","box_uv":false,"rescale":false,"locked":false,"render_order":"default","allow_mirror_modeling":true,"from":[7.525,15.124999999999986,4.799999999999995],"to":[8.475,15.824999999999998,6.424999999999997],"autouv":0,"color":6,"origin":[0,0,0],"faces":{"north":{"uv":[8,4,9,5],"texture":0},"east":{"uv":[4,6,6,7],"texture":0},"south":{"uv":[8,5,9,6],"texture":0},"west":{"uv":[6,4,8,5],"texture":0},"up":{"uv":[7,7,6,5],"texture":0},"down":{"uv":[8,0,7,2],"texture":0}},"type":"cube","uuid":"eb6f95d0-39f2-a4df-ec02-9c2f526a1c8f"},{"name":"TipEnd","box_uv":false,"rescale":false,"locked":false,"render_order":"default","allow_mirror_modeling":true,"from":[7.550000000000001,7.099999999999991,12.94999999999998],"to":[8.45,7.800000000000004,14.57499999999998],"autouv":0,"color":6,"rotation":[-45,0,0],"origin":[0,0,0],"faces":{"north":{"uv":[6,8,7,9],"texture":0},"east":{"uv":[7,2,9,3],"texture":0},"south":{"uv":[8,6,9,7],"texture":0},"west":{"uv":[7,3,9,4],"texture":0},"up":{"uv":[5,9,4,7],"texture":0},"down":{"uv":[6,7,5,9],"texture":0}},"type":"cube","uuid":"356a047c-3af5-2542-9363-795d6042ff9c"}],"outliner":["3525d03c-96d5-6fcd-fcc2-761e2d81a078","4b5d084d-d5cc-9607-1834-e62f52881156","5b1e06f0-33f8-3d27-6a42-5867c728d633","eb6f95d0-39f2-a4df-ec02-9c2f526a1c8f","356a047c-3af5-2542-9363-795d6042ff9c"],"textures":[{"path":"/home/limepot/Dev/Modding/Minecraft/Quilt/BlockLife/Art/Models/Crowbar/crowbar.png","name":"crowbar.png","folder":"","namespace":"","id":"0","width":16,"height":16,"uv_width":16,"uv_height":16,"particle":true,"layers_enabled":false,"sync_to_project":"","render_mode":"default","render_sides":"auto","frame_time":1,"frame_order_type":"loop","frame_order":"","frame_interpolate":false,"visible":true,"internal":true,"saved":true,"uuid":"7095216f-ef74-deb5-3322-dc48f2c78eb1","relative_path":"../crowbar.png","source":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARzQklUCAgICHwIZIgAAACwSURBVDhPY4ze8+X/C52ZDFu/PmX4s1KEwT+JnQEEBCqfg2mO6AaGpS48jGAOFsCIbgBMTfztd2Dm0pp/DBzKfcQbcMAvmqFfZA2KXXslikkzwGHTUhQDeKqqiDcA5PTE4lwGmCHpZnmkhQHMAJgTXDgnkhYGsFgofBPCsPyFMMNcxTrSDAAF4vzeyUTFAEgRRjTCDCAU/zAvYhiAL8SJSkhD0ABcmYRYcZxJlG4GAACF7acRp0m+2wAAAABJRU5ErkJggg=="}]}
|
77
Art/Models/Crowbar/crowbar.json
Normal file
77
Art/Models/Crowbar/crowbar.json
Normal file
|
@ -0,0 +1,77 @@
|
|||
{
|
||||
"credit": "Made with Blockbench",
|
||||
"textures": {
|
||||
"0": "crowbar",
|
||||
"particle": "crowbar"
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
"name": "Shaft",
|
||||
"from": [7.5, 2, 7.5],
|
||||
"to": [8.5, 15, 8.475],
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 13], "texture": "#0"},
|
||||
"east": {"uv": [1, 0, 2, 13], "texture": "#0"},
|
||||
"south": {"uv": [2, 0, 3, 13], "texture": "#0"},
|
||||
"west": {"uv": [3, 0, 4, 13], "texture": "#0"},
|
||||
"up": {"uv": [8, 6, 7, 5], "texture": "#0"},
|
||||
"down": {"uv": [7, 7, 6, 8], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "BottomTip",
|
||||
"from": [7.525, 4.7, 6.175],
|
||||
"to": [8.475, 5.5, 8.075],
|
||||
"rotation": {"angle": 22.5, "axis": "x", "origin": [0, 0, 0]},
|
||||
"faces": {
|
||||
"north": {"uv": [7, 6, 8, 7], "texture": "#0"},
|
||||
"east": {"uv": [4, 0, 6, 1], "texture": "#0"},
|
||||
"south": {"uv": [7, 7, 8, 8], "texture": "#0"},
|
||||
"west": {"uv": [4, 1, 6, 2], "texture": "#0"},
|
||||
"up": {"uv": [5, 4, 4, 2], "texture": "#0"},
|
||||
"down": {"uv": [5, 4, 4, 6], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "TipShaft",
|
||||
"from": [7.525, 16.375, -0.125],
|
||||
"to": [8.475, 17.1, 2.1],
|
||||
"rotation": {"angle": 22.5, "axis": "x", "origin": [0, 0, 0]},
|
||||
"faces": {
|
||||
"north": {"uv": [8, 0, 9, 1], "texture": "#0"},
|
||||
"east": {"uv": [5, 2, 7, 3], "texture": "#0"},
|
||||
"south": {"uv": [8, 1, 9, 2], "texture": "#0"},
|
||||
"west": {"uv": [5, 3, 7, 4], "texture": "#0"},
|
||||
"up": {"uv": [6, 6, 5, 4], "texture": "#0"},
|
||||
"down": {"uv": [7, 0, 6, 2], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "TipMiddle",
|
||||
"from": [7.525, 15.125, 4.8],
|
||||
"to": [8.475, 15.825, 6.425],
|
||||
"faces": {
|
||||
"north": {"uv": [8, 4, 9, 5], "texture": "#0"},
|
||||
"east": {"uv": [4, 6, 6, 7], "texture": "#0"},
|
||||
"south": {"uv": [8, 5, 9, 6], "texture": "#0"},
|
||||
"west": {"uv": [6, 4, 8, 5], "texture": "#0"},
|
||||
"up": {"uv": [7, 7, 6, 5], "texture": "#0"},
|
||||
"down": {"uv": [8, 0, 7, 2], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "TipEnd",
|
||||
"from": [7.55, 7.1, 12.95],
|
||||
"to": [8.45, 7.8, 14.575],
|
||||
"rotation": {"angle": -45, "axis": "x", "origin": [0, 0, 0]},
|
||||
"faces": {
|
||||
"north": {"uv": [6, 8, 7, 9], "texture": "#0"},
|
||||
"east": {"uv": [7, 2, 9, 3], "texture": "#0"},
|
||||
"south": {"uv": [8, 6, 9, 7], "texture": "#0"},
|
||||
"west": {"uv": [7, 3, 9, 4], "texture": "#0"},
|
||||
"up": {"uv": [5, 9, 4, 7], "texture": "#0"},
|
||||
"down": {"uv": [6, 7, 5, 9], "texture": "#0"}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
BIN
Art/Models/Crowbar/crowbar.png
Normal file
BIN
Art/Models/Crowbar/crowbar.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 286 B |
|
@ -4,5 +4,5 @@ kotlin.incremental=true
|
|||
kotlin.code.style=official
|
||||
|
||||
group=xyz.limepot
|
||||
version=1.0.0
|
||||
version=0.1.0
|
||||
archives_base_name=block-life
|
||||
|
|
|
@ -2,10 +2,10 @@
|
|||
kotlin = "1.8.22"
|
||||
|
||||
minecraft = "1.20.1"
|
||||
qfapi = "7.0.3+0.83.1-1.20.1"
|
||||
qfapi = "7.4.0+0.90.0-1.20.1"
|
||||
qkl = "2.1.0+kt.1.8.22+flk.1.9.4"
|
||||
loader = "0.19.1"
|
||||
mappings = "1.20.1+build.1"
|
||||
loader = "0.22.1-beta.1"
|
||||
mappings = "1.20.1+build.9"
|
||||
loom = "1.2.3"
|
||||
|
||||
[libraries]
|
||||
|
|
12
src/main/java/xyz/limepot/block_life/item/CrowbarItem.java
Normal file
12
src/main/java/xyz/limepot/block_life/item/CrowbarItem.java
Normal file
|
@ -0,0 +1,12 @@
|
|||
package xyz.limepot.block_life.item;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.item.MiningToolItem;
|
||||
import net.minecraft.item.ToolMaterial;
|
||||
import net.minecraft.registry.tag.TagKey;
|
||||
|
||||
public class CrowbarItem extends MiningToolItem {
|
||||
public CrowbarItem(float toolBaseDamage, float attackSpeed, ToolMaterial material, TagKey<Block> effectiveBlocks, Settings settings) {
|
||||
super(toolBaseDamage, attackSpeed, material, effectiveBlocks, settings);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,74 @@
|
|||
package xyz.limepot.block_life.item;
|
||||
|
||||
import net.minecraft.item.Items;
|
||||
import net.minecraft.item.ToolMaterial;
|
||||
import net.minecraft.recipe.Ingredient;
|
||||
import net.minecraft.util.Lazy;
|
||||
|
||||
import java.util.function.Supplier;
|
||||
|
||||
public enum ModToolMaterials implements ToolMaterial {
|
||||
/*
|
||||
WOOD(0, 59, 2.0F, 0.0F, 15, () -> {
|
||||
return Ingredient.ofTag(ItemTags.PLANKS);
|
||||
}),
|
||||
STONE(1, 131, 4.0F, 1.0F, 5, () -> {
|
||||
return Ingredient.ofTag(ItemTags.STONE_TOOL_MATERIALS);
|
||||
}),
|
||||
IRON(2, 250, 6.0F, 2.0F, 14, () -> {
|
||||
return Ingredient.ofItems(Items.IRON_INGOT);
|
||||
}),
|
||||
DIAMOND(3, 1561, 8.0F, 3.0F, 10, () -> {
|
||||
return Ingredient.ofItems(Items.DIAMOND);
|
||||
}),
|
||||
GOLD(0, 32, 12.0F, 0.0F, 22, () -> {
|
||||
return Ingredient.ofItems(Items.GOLD_INGOT);
|
||||
}),
|
||||
NETHERITE(4, 2031, 9.0F, 4.0F, 15, () -> {
|
||||
return Ingredient.ofItems(Items.NETHERITE_INGOT);
|
||||
});
|
||||
*/
|
||||
IRON(2, 250, 6.0F, 2.0F, 14, () -> {
|
||||
return Ingredient.ofItems(Items.IRON_INGOT);
|
||||
});
|
||||
|
||||
private final int miningLevel;
|
||||
private final int itemDurability;
|
||||
private final float miningSpeed;
|
||||
private final float attackDamage;
|
||||
private final int enchantability;
|
||||
private final Lazy<Ingredient> repairIngredient;
|
||||
|
||||
ModToolMaterials(int miningLevel, int itemDurability, float miningSpeed, float attackDamage, int enchantability, Supplier repairIngredient) {
|
||||
this.miningLevel = miningLevel;
|
||||
this.itemDurability = itemDurability;
|
||||
this.miningSpeed = miningSpeed;
|
||||
this.attackDamage = attackDamage;
|
||||
this.enchantability = enchantability;
|
||||
this.repairIngredient = new Lazy(repairIngredient);
|
||||
}
|
||||
|
||||
public int getDurability() {
|
||||
return this.itemDurability;
|
||||
}
|
||||
|
||||
public float getMiningSpeedMultiplier() {
|
||||
return this.miningSpeed;
|
||||
}
|
||||
|
||||
public float getAttackDamage() {
|
||||
return this.attackDamage;
|
||||
}
|
||||
|
||||
public int getMiningLevel() {
|
||||
return this.miningLevel;
|
||||
}
|
||||
|
||||
public int getEnchantability() {
|
||||
return this.enchantability;
|
||||
}
|
||||
|
||||
public Ingredient getRepairIngredient() {
|
||||
return this.repairIngredient.get();
|
||||
}
|
||||
}
|
|
@ -4,11 +4,15 @@ import org.quiltmc.loader.api.ModContainer
|
|||
import org.quiltmc.qsl.base.api.entrypoint.ModInitializer
|
||||
import org.slf4j.Logger
|
||||
import org.slf4j.LoggerFactory
|
||||
import xyz.limepot.block_life.item.ModItems
|
||||
|
||||
object ExampleMod : ModInitializer {
|
||||
object BlockLife : ModInitializer {
|
||||
val MOD_ID = "block_life"
|
||||
val LOGGER: Logger = LoggerFactory.getLogger("Block-Life")
|
||||
|
||||
override fun onInitialize(mod: ModContainer) {
|
||||
LOGGER.info("Howdy Quilt Kotlin world from {}!", mod.metadata()?.name())
|
||||
|
||||
ModItems()
|
||||
}
|
||||
}
|
||||
|
|
24
src/main/kotlin/xyz/limepot/block_life/item/ModItems.kt
Normal file
24
src/main/kotlin/xyz/limepot/block_life/item/ModItems.kt
Normal file
|
@ -0,0 +1,24 @@
|
|||
package xyz.limepot.block_life.item
|
||||
|
||||
import net.minecraft.item.Item
|
||||
import net.minecraft.registry.Registries
|
||||
import net.minecraft.registry.Registry
|
||||
import net.minecraft.registry.tag.BlockTags
|
||||
import net.minecraft.util.Identifier
|
||||
import org.quiltmc.qsl.item.setting.api.QuiltItemSettings
|
||||
import xyz.limepot.block_life.BlockLife
|
||||
|
||||
class ModItems {
|
||||
init {
|
||||
val CROWBAR: Item = registerItem(
|
||||
"crowbar",
|
||||
CrowbarItem(3.0F, -0.5F, ModToolMaterials.IRON, BlockTags.AXE_MINEABLE /*TODO: Setup our own custom mineable list*/, QuiltItemSettings())
|
||||
)
|
||||
}
|
||||
|
||||
//registry template
|
||||
private fun registerItem(name: String, item: Item): Item {
|
||||
return Registry.register<Item, Item>(Registries.ITEM, Identifier(BlockLife.MOD_ID, name), item)
|
||||
BlockLife.LOGGER.debug("Registering " + name)
|
||||
}
|
||||
}
|
|
@ -0,0 +1,77 @@
|
|||
{
|
||||
"credit": "Made with Blockbench",
|
||||
"textures": {
|
||||
"0": "block_life:item/crowbar",
|
||||
"particle": "block_life:item/crowbar"
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
"name": "Shaft",
|
||||
"from": [7.5, 2, 7.5],
|
||||
"to": [8.5, 15, 8.475],
|
||||
"faces": {
|
||||
"north": {"uv": [0, 0, 1, 13], "texture": "#0"},
|
||||
"east": {"uv": [1, 0, 2, 13], "texture": "#0"},
|
||||
"south": {"uv": [2, 0, 3, 13], "texture": "#0"},
|
||||
"west": {"uv": [3, 0, 4, 13], "texture": "#0"},
|
||||
"up": {"uv": [8, 6, 7, 5], "texture": "#0"},
|
||||
"down": {"uv": [7, 7, 6, 8], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "BottomTip",
|
||||
"from": [7.525, 4.7, 6.175],
|
||||
"to": [8.475, 5.5, 8.075],
|
||||
"rotation": {"angle": 22.5, "axis": "x", "origin": [0, 0, 0]},
|
||||
"faces": {
|
||||
"north": {"uv": [7, 6, 8, 7], "texture": "#0"},
|
||||
"east": {"uv": [4, 0, 6, 1], "texture": "#0"},
|
||||
"south": {"uv": [7, 7, 8, 8], "texture": "#0"},
|
||||
"west": {"uv": [4, 1, 6, 2], "texture": "#0"},
|
||||
"up": {"uv": [5, 4, 4, 2], "texture": "#0"},
|
||||
"down": {"uv": [5, 4, 4, 6], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "TipShaft",
|
||||
"from": [7.525, 16.375, -0.125],
|
||||
"to": [8.475, 17.1, 2.1],
|
||||
"rotation": {"angle": 22.5, "axis": "x", "origin": [0, 0, 0]},
|
||||
"faces": {
|
||||
"north": {"uv": [8, 0, 9, 1], "texture": "#0"},
|
||||
"east": {"uv": [5, 2, 7, 3], "texture": "#0"},
|
||||
"south": {"uv": [8, 1, 9, 2], "texture": "#0"},
|
||||
"west": {"uv": [5, 3, 7, 4], "texture": "#0"},
|
||||
"up": {"uv": [6, 6, 5, 4], "texture": "#0"},
|
||||
"down": {"uv": [7, 0, 6, 2], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "TipMiddle",
|
||||
"from": [7.525, 15.125, 4.8],
|
||||
"to": [8.475, 15.825, 6.425],
|
||||
"faces": {
|
||||
"north": {"uv": [8, 4, 9, 5], "texture": "#0"},
|
||||
"east": {"uv": [4, 6, 6, 7], "texture": "#0"},
|
||||
"south": {"uv": [8, 5, 9, 6], "texture": "#0"},
|
||||
"west": {"uv": [6, 4, 8, 5], "texture": "#0"},
|
||||
"up": {"uv": [7, 7, 6, 5], "texture": "#0"},
|
||||
"down": {"uv": [8, 0, 7, 2], "texture": "#0"}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "TipEnd",
|
||||
"from": [7.55, 7.1, 12.95],
|
||||
"to": [8.45, 7.8, 14.575],
|
||||
"rotation": {"angle": -45, "axis": "x", "origin": [0, 0, 0]},
|
||||
"faces": {
|
||||
"north": {"uv": [6, 8, 7, 9], "texture": "#0"},
|
||||
"east": {"uv": [7, 2, 9, 3], "texture": "#0"},
|
||||
"south": {"uv": [8, 6, 9, 7], "texture": "#0"},
|
||||
"west": {"uv": [7, 3, 9, 4], "texture": "#0"},
|
||||
"up": {"uv": [5, 9, 4, 7], "texture": "#0"},
|
||||
"down": {"uv": [6, 7, 5, 9], "texture": "#0"}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
BIN
src/main/resources/assets/block_life/textures/item/crowbar.png
Normal file
BIN
src/main/resources/assets/block_life/textures/item/crowbar.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 286 B |
|
@ -21,7 +21,7 @@
|
|||
"entrypoints": {
|
||||
"init": {
|
||||
"adapter": "kotlin",
|
||||
"value": "xyz.limepot.block_life.BLockLife"
|
||||
"value": "xyz.limepot.block_life.BlockLife"
|
||||
}
|
||||
},
|
||||
"depends": [
|
||||
|
@ -31,7 +31,7 @@
|
|||
},
|
||||
{
|
||||
"id": "quilted_fabric_api",
|
||||
"versions": ">=7.0.2"
|
||||
"versions": ">=7.4.0"
|
||||
},
|
||||
{
|
||||
"id": "qkl",
|
||||
|
@ -39,7 +39,7 @@
|
|||
},
|
||||
{
|
||||
"id": "minecraft",
|
||||
"versions": ">=1.20"
|
||||
"versions": ">=1.20.1"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
|
Loading…
Reference in a new issue