diff --git a/CHANGELOG.md b/CHANGELOG.md index fa49022..9ca2b23 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,9 +2,20 @@ ## [Dec 2nd - STILL UNDER DEVELOPMENT] So far unnamed update +Game Changes: + - Pickaxes are now able to dig nodes with `crumbly` group (Grass, Dirt, Sand, etc.) quickly - Added setting `explosion_damage` which is true by default +- Add back the Rubies that were removed a while ago! +- Fix dye recipes +- Forgot Oil existed in this game, add a new texture to it. +- Added Acid and Oil buckets +- Added "Hand Strength" item to emulate the strength of the hand of survival mode in creative mode. +- Added Reinforced Glass +Code Changes: + +- Reorganize `pyutest_crafts` mod ## [Dec 1st] Unnamed Minor Update diff --git a/TODO.md b/TODO.md index dacecd5..63c2477 100644 --- a/TODO.md +++ b/TODO.md @@ -10,6 +10,6 @@ Those transports include: - Horses - Railways and Minecarts -## Electricity Improvement Update +## Electricity Update Pt. 2 Self-explanatory, this update would improve the electricity system. Currently it is badly made and even has the ability to freeze the entire server, or if in a singleplayer world your entire desktop. diff --git a/mods/CORE/pyutest/init.lua b/mods/CORE/pyutest/init.lua index 0714436..07586ab 100644 --- a/mods/CORE/pyutest/init.lua +++ b/mods/CORE/pyutest/init.lua @@ -34,6 +34,36 @@ PyuTest.DEFAULT_EFFECTS = { fog_color = "#00000000" } +PyuTest.COLORS = { + white = { "White", nil }, + black = { "Black", { r = 32, g = 32, b = 32 } }, + brown = { "Brown", "#9F8170" }, + + red = { "Red", "red" }, + orange = { "Orange", "orange" }, + yellow = { "Yellow", "yellow" }, + green = { "Green", "green" }, + blue = { "Blue", "blue" }, + purple = { "Purple", "purple" }, + pink = { "Pink", "pink" }, + + lime = { "Lime", "#64C044" }, + cyan = { "Cyan", "cyan" }, + magenta = { "Magenta", "magenta" }, + chartreuse = { "Chartreuse", "#7FFF00" }, + ultramarine = { "Ultramarine", "#120A8F" }, + violet = { "Violet", "#8000FF" }, + rose = { "Rose", "#FF0080" }, + chestnut = { "Chestnut", "#954535" }, + turquoise = { "Turquoise", "#40E0D0" }, + teal = { "Teal", "#008080" }, + mauve = { "Mauve", "#E0B0FF" }, + mint = { "Mint", "#3EB489" }, + ecru = { "Ecru", "#C2B280" }, + khaki = { "Khaki", "khaki" }, + indigo = { "Indigo", "#4000FF" }, +} + PyuTest.WORLD_GRAVITY = core.settings:get("movement_gravity") PyuTest.get_schematic_path = function(name) diff --git a/mods/ITEMS/pyutest_blocks/basic.lua b/mods/ITEMS/pyutest_blocks/basic.lua index a0016dd..3b1b796 100644 --- a/mods/ITEMS/pyutest_blocks/basic.lua +++ b/mods/ITEMS/pyutest_blocks/basic.lua @@ -70,6 +70,16 @@ PyuTest.make_building_blocks("pyutest_blocks:cobblestone", "Cobblestone", { "pyu _pyutest_blast_resistance = 3 }) +PyuTest.make_building_blocks("pyutest_blocks:cobbled_darkstone", "Cobbled Darkstone", { "pyutest-cobbled-darkstone.png" }, nil, { + ground = 1, + stone = 1, + cobble = 1, + cracky = PyuTest.BLOCK_NORMAL, +}, { + is_ground_content = true, + _pyutest_blast_resistance = 3 +}) + PyuTest.make_building_blocks("pyutest_blocks:darkstone", "Darkstone", { "pyutest-darkstone.png" }, nil, { ground = 1, stone = 1, diff --git a/mods/ITEMS/pyutest_blocks/special.lua b/mods/ITEMS/pyutest_blocks/special.lua index 63f8c0e..a0375b5 100644 --- a/mods/ITEMS/pyutest_blocks/special.lua +++ b/mods/ITEMS/pyutest_blocks/special.lua @@ -42,13 +42,21 @@ PyuTest.make_node("pyutest_blocks:torch", "Torch", { }) PyuTest.make_node("pyutest_blocks:glass", "Glass", { - cracky = PyuTest.BLOCK_FAST + oddly_breakable_by_hand = PyuTest.BLOCK_FAST }, { "pyutest-glass.png", "pyutest-glass-overlay.png" }, { drawtype = "glasslike_framed", paramtype = "light", sunlight_propagates = true, }) +PyuTest.make_node("pyutest_blocks:reinforced_glass", "Reinforced Glass", { + cracky = PyuTest.BLOCK_NORMAL +}, { "pyutest-glass.png", "pyutest-glass-overlay-reinforced.png" }, { + drawtype = "glasslike_framed", + paramtype = "light", + sunlight_propagates = true, +}) + -- FIXME: This has been in the game for months, implement it already! PyuTest.make_node("pyutest_blocks:trapdoor", "Trapdoor", { choppy = PyuTest.BLOCK_NORMAL, diff --git a/mods/ITEMS/pyutest_buckets/init.lua b/mods/ITEMS/pyutest_buckets/init.lua index 9cb0f36..a85f057 100644 --- a/mods/ITEMS/pyutest_buckets/init.lua +++ b/mods/ITEMS/pyutest_buckets/init.lua @@ -35,7 +35,8 @@ core.register_craft({ }) PyuTest.make_liquid_bucket = function(name, desc, source, color) - local texture = string.format("pyutest-bucket.png^(pyutest-bucket-overlay.png^[colorize:%s)", color) + local colorspec = core.colorspec_to_colorstring(color) + local texture = string.format("pyutest-bucket.png^(pyutest-bucket-overlay.png^[colorize:%s)", colorspec) PyuTest.make_node(name, desc, { bucket = 1 @@ -58,5 +59,7 @@ PyuTest.make_liquid_bucket = function(name, desc, source, color) }) end -PyuTest.make_liquid_bucket("pyutest_buckets:water_bucket", "Water Bucket", "pyutest_blocks:water_source", "blue") -PyuTest.make_liquid_bucket("pyutest_buckets:lava_bucket", "Lava Bucket", "pyutest_blocks:lava_source", "orange") +PyuTest.make_liquid_bucket("pyutest_buckets:water_bucket", "Bucket of Water", "pyutest_blocks:water_source", "blue") +PyuTest.make_liquid_bucket("pyutest_buckets:lava_bucket", "Bucket of Lava", "pyutest_blocks:lava_source", "orange") +PyuTest.make_liquid_bucket("pyutest_buckets:acid_bucket", "Bucket of Acid", "pyutest_blocks:liquid_acid_source", "#6c7232") +PyuTest.make_liquid_bucket("pyutest_buckets:oil_bucket", "Bucket of Oil", "pyutest_blocks:oil_source", PyuTest.COLORS.black[2]) diff --git a/mods/ITEMS/pyutest_crafts/blocks.lua b/mods/ITEMS/pyutest_crafts/blocks.lua new file mode 100644 index 0000000..16a4be5 --- /dev/null +++ b/mods/ITEMS/pyutest_crafts/blocks.lua @@ -0,0 +1,118 @@ +core.register_craft({ + output = "pyutest_blocks:crate", + recipe = { + { "group:wooden_planks", "group:wooden_planks", "group:wooden_planks" }, + { "group:wooden_planks", "", "group:wooden_planks" }, + { "group:wooden_planks", "group:wooden_planks", "group:wooden_planks" } + } +}) + +core.register_craft({ + output = "pyutest_blocks:brick_block 4", + recipe = { + { "pyutest_tools:brick", "pyutest_tools:brick" }, + { "pyutest_tools:brick", "pyutest_tools:brick" } + } +}) + +core.register_craft({ + output = "pyutest_furnace:furnace", + recipe = { + { "group:cobble", "group:cobble", "group:cobble" }, + { "group:cobble", "", "group:cobble" }, + { "group:cobble", "group:cobble", "group:cobble" } + } +}) + +core.register_craft({ + output = "pyutest_blocks:workbench", + recipe = { + { "group:wooden_planks", "group:wooden_planks" }, + { "group:wooden_planks", "group:wooden_planks" }, + } +}) + +core.register_craft({ + output = "pyutest_blocks:slime_block", + type = "shapeless", + recipe = { + "pyutest_blocks:clay_block", + "pyutest_blocks:swampy_grass_block" + } +}) + +core.register_craft({ + output = "pyutest_blocks:clay_block 4", + recipe = { + { "pyutest_tools:clay", "pyutest_tools:clay" }, + { "pyutest_tools:clay", "pyutest_tools:clay" } + } +}) + +core.register_craft({ + output = "pyutest_blocks:bone_block 4", + recipe = { + { "pyutest_tools:bone", "pyutest_tools:bone" }, + { "pyutest_tools:bone", "pyutest_tools:bone" } + } +}) + +core.register_craft({ + output = "pyutest_blocks:contagious_acid 3", + recipe = { + "pyutest_blocks:mushroom_block", + "pyutest_blocks:mushroom_stem_block", + "pyutest_blocks:dirt_block", + "pyutest_blocks:swampy_grass_block" + }, + type = "shapeless" +}) + +core.register_craft({ + output = "pyutest_blocks:light 4", + recipe = { + { "pyutest_blocks:torch", "pyutest_blocks:torch" }, + { "pyutest_blocks:torch", "pyutest_blocks:torch" } + } +}) + +core.register_craft({ + output = "pyutest_blocks:tnt 4", + recipe = { + { "pyutest_blocks:sand_block", "pyutest_tools:gunpowder" }, + { "pyutest_tools:gunpowder", "pyutest_blocks:sand_block" } + } +}) + +core.register_craft({ + output = "pyutest_blocks:tnt 4", + recipe = { + { "pyutest_tools:gunpowder", "pyutest_blocks:sand_block" }, + { "pyutest_blocks:sand_block", "pyutest_tools:gunpowder" } + } +}) + +core.register_craft({ + output = "pyutest_blocks:torch 4", + recipe = { + { "pyutest_ores:coal_lump" }, + { "pyutest_tools:stick" } + } +}) + +core.register_craft({ + output = "pyutest_blocks:ladder 16", + recipe = { + { "pyutest_tools:stick", "", "pyutest_tools:stick" }, + { "pyutest_tools:stick", "pyutest_tools:stick", "pyutest_tools:stick" }, + { "pyutest_tools:stick", "", "pyutest_tools:stick" } + } +}) + +core.register_craft({ + output = "pyutest_blocks:haybale_block", + recipe = { + { "pyutest_tools:wheat", "pyutest_tools:wheat" }, + { "pyutest_tools:wheat", "pyutest_tools:wheat" } + } +}) diff --git a/mods/ITEMS/pyutest_crafts/cooking.lua b/mods/ITEMS/pyutest_crafts/cooking.lua new file mode 100644 index 0000000..f7f8284 --- /dev/null +++ b/mods/ITEMS/pyutest_crafts/cooking.lua @@ -0,0 +1,23 @@ +core.register_craft({ + type = "cooking", + output = "pyutest_blocks:glass", + recipe = "pyutest_blocks:sand_block" +}) + +core.register_craft({ + type = "cooking", + output = "pyutest_blocks:brick", + recipe = "pyutest_tools:clay", +}) + +core.register_craft({ + type = "cooking", + output = "pyutest_blocks:stone_block", + recipe = "pyutest_blocks:cobblestone_block", +}) + +core.register_craft({ + type = "cooking", + output = "pyutest_blocks:darkstone_block", + recipe = "pyutest_blocks:cobbled_darkstone_block", +}) diff --git a/mods/ITEMS/pyutest_crafts/etc.lua b/mods/ITEMS/pyutest_crafts/etc.lua new file mode 100644 index 0000000..3b2868c --- /dev/null +++ b/mods/ITEMS/pyutest_crafts/etc.lua @@ -0,0 +1,50 @@ +core.register_craft({ + output = "pyutest_tools:stick 4", + recipe = { + { "group:wooden_planks" }, + { "group:wooden_planks" } + } +}) + +core.register_craft({ + output = "pyutest_tools:coin", + recipe = { + { "pyutest_ores:gold_ingot", "pyutest_ores:gold_ingot", "pyutest_ores:gold_ingot" }, + { "pyutest_ores:gold_ingot", "pyutest_ores:gold_ingot", "pyutest_ores:gold_ingot" }, + { "pyutest_ores:gold_ingot", "pyutest_ores:gold_ingot", "pyutest_ores:gold_ingot" } + } +}) + +core.register_craft({ + output = "pyutest_ores:gold_ingot 9", + recipe = { + { "pyutest_tools:coin" } + } +}) + +core.register_craft({ + output = "pyutest_tools:wheat 4", + recipe = { + "pyutest_blocks:haybale_block" + }, + type = "shapeless" +}) + +core.register_craft({ + output = "pyutest_tools:paper 3", + recipe = { + "pyutest_flowers:sugarcane", + "pyutest_flowers:sugarcane", + "pyutest_flowers:sugarcane", + }, + type = "shapeless", +}) + +core.register_craft({ + output = "pyutest_fireworks:firework 3", + recipe = { + "pyutest_tools:gunpowder", + "pyutest_tools:paper", + }, + type = "shapeless" +}) diff --git a/mods/ITEMS/pyutest_crafts/food.lua b/mods/ITEMS/pyutest_crafts/food.lua new file mode 100644 index 0000000..3114c15 --- /dev/null +++ b/mods/ITEMS/pyutest_crafts/food.lua @@ -0,0 +1,25 @@ +core.register_craft({ + output = "pyutest_tools:bread 3", + recipe = { + "pyutest_tools:wheat", + "pyutest_tools:wheat", + "pyutest_tools:wheat" + }, + type = "shapeless" +}) + +core.register_craft({ + output = "pyutest_tools:sugar 3", + type = "shapeless", + recipe = { + "pyutest_flowers:sugarcane" + } +}) + +core.register_craft({ + output = "pyutest_tools:sliced_potato 2", + recipe = { + "pyutest_tools:potato" + }, + type = "shapeless" +}) diff --git a/mods/ITEMS/pyutest_crafts/init.lua b/mods/ITEMS/pyutest_crafts/init.lua index 9251a8e..f5ef59f 100644 --- a/mods/ITEMS/pyutest_crafts/init.lua +++ b/mods/ITEMS/pyutest_crafts/init.lua @@ -1,349 +1,7 @@ -core.register_craft({ - output = "pyutest_tools:wooden_pickaxe 1", - recipe = { - { "group:wooden_planks", "group:wooden_planks", "group:wooden_planks" }, - { "", "pyutest_tools:stick", "" }, - { "", "pyutest_tools:stick", "" } - } -}) +local modpath = core.get_modpath(core.get_current_modname()) -core.register_craft({ - output = "pyutest_tools:wooden_axe 1", - recipe = { - { "group:wooden_planks", "group:wooden_planks", "" }, - { "group:wooden_planks", "pyutest_tools:stick", "" }, - { "", "pyutest_tools:stick", "" } - } -}) - -core.register_craft({ - output = "pyutest_tools:wooden_sword 1", - recipe = { - { "", "group:wooden_planks", "" }, - { "", "group:wooden_planks", "" }, - { "", "pyutest_tools:stick", "" } - } -}) - -core.register_craft({ - output = "pyutest_tools:stone_pickaxe", - recipe = { - { "group:cobble", "group:cobble", "group:cobble" }, - { "", "pyutest_tools:stick", "" }, - { "", "pyutest_tools:stick", "" } - } -}) - -core.register_craft({ - output = "pyutest_tools:stone_axe", - recipe = { - { "group:cobble", "group:cobble", "" }, - { "group:cobble", "pyutest_tools:stick", "" }, - { "", "pyutest_tools:stick", "" } - } -}) - -core.register_craft({ - output = "pyutest_tools:stone_sword", - recipe = { - { "", "group:cobble", "" }, - { "", "group:cobble", "" }, - { "", "pyutest_tools:stick", "" } - } -}) - -core.register_craft({ - output = "pyutest_tools:iron_pickaxe", - recipe = { - { "pyutest_ores:iron_ingot", "pyutest_ores:iron_ingot", "pyutest_ores:iron_ingot" }, - { "", "pyutest_tools:stick", "" }, - { "", "pyutest_tools:stick", "" } - } -}) - -core.register_craft({ - output = "pyutest_tools:iron_axe", - recipe = { - { "pyutest_ores:iron_ingot", "pyutest_ores:iron_ingot", "" }, - { "pyutest_ores:iron_ingot", "pyutest_tools:stick", "" }, - { "", "pyutest_tools:stick", "" } - } -}) - -core.register_craft({ - output = "pyutest_tools:iron_sword", - recipe = { - { "pyutest_ores:iron_ingot" }, - { "pyutest_ores:iron_ingot" }, - { "pyutest_tools:stick" } - } -}) - -core.register_craft({ - output = "pyutest_farming:hoe", - recipe = { - { "pyutest_ores:iron_ingot", "pyutest_ores:iron_ingot", "" }, - { "", "pyutest_tools:stick", "" }, - { "", "pyutest_tools:stick", "" } - } -}) - -core.register_craft({ - output = "pyutest_tools:shears", - recipe = { - "pyutest_ores:iron_ingot", - "pyutest_ores:iron_ingot" - }, - type = "shapeless" -}) - -core.register_craft({ - output = "pyutest_tools:diamond_pickaxe", - recipe = { - { "pyutest_ores:diamond_shard", "pyutest_ores:diamond_shard", "pyutest_ores:diamond_shard" }, - { "", "pyutest_tools:stick", "" }, - { "", "pyutest_tools:stick", "" } - } -}) - -core.register_craft({ - output = "pyutest_tools:diamond_axe", - recipe = { - { "pyutest_ores:diamond_shard", "pyutest_ores:diamond_shard", "" }, - { "pyutest_ores:diamond_shard", "pyutest_tools:stick", "" }, - { "", "pyutest_tools:stick", "" } - } -}) - -core.register_craft({ - output = "pyutest_tools:diamond_sword", - recipe = { - { "pyutest_ores:diamond_shard" }, - { "pyutest_ores:diamond_shard" }, - { "pyutest_tools:stick" } - } -}) - -core.register_craft({ - output = "pyutest_tools:flint_and_steel", - recipe = { - "pyutest_tools:flint", "pyutest_ores:iron_ingot" - }, - type = "shapeless" -}) - --- not tools -core.register_craft({ - output = "pyutest_blocks:crate", - recipe = { - { "group:wooden_planks", "group:wooden_planks", "group:wooden_planks" }, - { "group:wooden_planks", "", "group:wooden_planks" }, - { "group:wooden_planks", "group:wooden_planks", "group:wooden_planks" } - } -}) - -core.register_craft({ - output = "pyutest_blocks:brick_block 4", - recipe = { - { "pyutest_tools:brick", "pyutest_tools:brick" }, - { "pyutest_tools:brick", "pyutest_tools:brick" } - } -}) - -core.register_craft({ - output = "pyutest_furnace:furnace", - recipe = { - { "group:cobble", "group:cobble", "group:cobble" }, - { "group:cobble", "", "group:cobble" }, - { "group:cobble", "group:cobble", "group:cobble" } - } -}) - -core.register_craft({ - output = "pyutest_blocks:workbench", - recipe = { - { "group:wooden_planks", "group:wooden_planks" }, - { "group:wooden_planks", "group:wooden_planks" }, - } -}) - -core.register_craft({ - output = "pyutest_blocks:slime_block", - type = "shapeless", - recipe = { - "pyutest_blocks:clay_block", - "pyutest_blocks:swampy_grass_block" - } -}) - -core.register_craft({ - output = "pyutest_tools:sugar 3", - type = "shapeless", - recipe = { - "pyutest_flowers:sugarcane" - } -}) - -core.register_craft({ - output = "pyutest_blocks:clay_block 4", - recipe = { - { "pyutest_tools:clay", "pyutest_tools:clay" }, - { "pyutest_tools:clay", "pyutest_tools:clay" } - } -}) - -core.register_craft({ - output = "pyutest_blocks:bone_block 4", - recipe = { - { "pyutest_tools:bone", "pyutest_tools:bone" }, - { "pyutest_tools:bone", "pyutest_tools:bone" } - } -}) - -core.register_craft({ - output = "pyutest_tools:stick 4", - recipe = { - { "group:wooden_planks" }, - { "group:wooden_planks" } - } -}) - -core.register_craft({ - output = "pyutest_tools:coin", - recipe = { - { "pyutest_ores:gold_ingot", "pyutest_ores:gold_ingot", "pyutest_ores:gold_ingot" }, - { "pyutest_ores:gold_ingot", "pyutest_ores:gold_ingot", "pyutest_ores:gold_ingot" }, - { "pyutest_ores:gold_ingot", "pyutest_ores:gold_ingot", "pyutest_ores:gold_ingot" } - } -}) - -core.register_craft({ - output = "pyutest_ores:gold_ingot 9", - recipe = { - { "pyutest_tools:coin" } - } -}) - --- this recipe makes no sense, but who cares? -core.register_craft({ - output = "pyutest_blocks:contagious_acid 3", - recipe = { - "pyutest_blocks:mushroom_block", - "pyutest_blocks:mushroom_stem_block", - "pyutest_blocks:dirt_block", - "pyutest_blocks:swampy_grass_block" - }, - type = "shapeless" -}) - -core.register_craft({ - output = "pyutest_blocks:light 4", - recipe = { - { "pyutest_blocks:torch", "pyutest_blocks:torch" }, - { "pyutest_blocks:torch", "pyutest_blocks:torch" } - } -}) - -core.register_craft({ - output = "pyutest_blocks:tnt 4", - recipe = { - { "pyutest_blocks:sand_block", "pyutest_tools:gunpowder" }, - { "pyutest_tools:gunpowder", "pyutest_blocks:sand_block" } - } -}) - -core.register_craft({ - output = "pyutest_blocks:tnt 4", - recipe = { - { "pyutest_tools:gunpowder", "pyutest_blocks:sand_block" }, - { "pyutest_blocks:sand_block", "pyutest_tools:gunpowder" } - } -}) - -core.register_craft({ - output = "pyutest_blocks:torch 4", - recipe = { - { "pyutest_ores:coal_lump" }, - { "pyutest_tools:stick" } - } -}) - -core.register_craft({ - output = "pyutest_blocks:ladder 16", - recipe = { - { "pyutest_tools:stick", "", "pyutest_tools:stick" }, - { "pyutest_tools:stick", "pyutest_tools:stick", "pyutest_tools:stick" }, - { "pyutest_tools:stick", "", "pyutest_tools:stick" } - } -}) - -core.register_craft({ - output = "pyutest_tools:wheat 4", - recipe = { - "pyutest_blocks:haybale_block" - }, - type = "shapeless" -}) - -core.register_craft({ - output = "pyutest_blocks:haybale_block", - recipe = { - { "pyutest_tools:wheat", "pyutest_tools:wheat" }, - { "pyutest_tools:wheat", "pyutest_tools:wheat" } - } -}) - -core.register_craft({ - output = "pyutest_tools:bread 3", - recipe = { - "pyutest_tools:wheat", - "pyutest_tools:wheat", - "pyutest_tools:wheat" - }, - type = "shapeless" -}) - -core.register_craft({ - output = "pyutest_tools:paper 3", - recipe = { - "pyutest_flowers:sugarcane", - "pyutest_flowers:sugarcane", - "pyutest_flowers:sugarcane", - }, - type = "shapeless", -}) - -core.register_craft({ - output = "pyutest_fireworks:firework 3", - recipe = { - "pyutest_tools:gunpowder", - "pyutest_tools:paper", - }, - type = "shapeless" -}) - -core.register_craft({ - output = "pyutest_tools:sliced_potato 2", - recipe = { - "pyutest_tools:potato" - }, - type = "shapeless" -}) - -core.register_craft({ - type = "cooking", - output = "pyutest_blocks:glass", - recipe = "pyutest_blocks:sand_block" -}) - -core.register_craft({ - type = "cooking", - output = "pyutest_blocks:brick", - recipe = "pyutest_tools:clay", -}) - -core.register_craft({ - type = "cooking", - output = "pyutest_blocks:stone_block", - recipe = "pyutest_blocks:cobblestone_block", -}) +dofile(modpath .. "/tools.lua") +dofile(modpath .. "/blocks.lua") +dofile(modpath .. "/cooking.lua") +dofile(modpath .. "/etc.lua") +dofile(modpath .. "/food.lua") diff --git a/mods/ITEMS/pyutest_crafts/tools.lua b/mods/ITEMS/pyutest_crafts/tools.lua new file mode 100644 index 0000000..44444e1 --- /dev/null +++ b/mods/ITEMS/pyutest_crafts/tools.lua @@ -0,0 +1,133 @@ +core.register_craft({ + output = "pyutest_tools:wooden_pickaxe 1", + recipe = { + { "group:wooden_planks", "group:wooden_planks", "group:wooden_planks" }, + { "", "pyutest_tools:stick", "" }, + { "", "pyutest_tools:stick", "" } + } +}) + +core.register_craft({ + output = "pyutest_tools:wooden_axe 1", + recipe = { + { "group:wooden_planks", "group:wooden_planks", "" }, + { "group:wooden_planks", "pyutest_tools:stick", "" }, + { "", "pyutest_tools:stick", "" } + } +}) + +core.register_craft({ + output = "pyutest_tools:wooden_sword 1", + recipe = { + { "", "group:wooden_planks", "" }, + { "", "group:wooden_planks", "" }, + { "", "pyutest_tools:stick", "" } + } +}) + +core.register_craft({ + output = "pyutest_tools:stone_pickaxe", + recipe = { + { "group:cobble", "group:cobble", "group:cobble" }, + { "", "pyutest_tools:stick", "" }, + { "", "pyutest_tools:stick", "" } + } +}) + +core.register_craft({ + output = "pyutest_tools:stone_axe", + recipe = { + { "group:cobble", "group:cobble", "" }, + { "group:cobble", "pyutest_tools:stick", "" }, + { "", "pyutest_tools:stick", "" } + } +}) + +core.register_craft({ + output = "pyutest_tools:stone_sword", + recipe = { + { "", "group:cobble", "" }, + { "", "group:cobble", "" }, + { "", "pyutest_tools:stick", "" } + } +}) + +core.register_craft({ + output = "pyutest_tools:iron_pickaxe", + recipe = { + { "pyutest_ores:iron_ingot", "pyutest_ores:iron_ingot", "pyutest_ores:iron_ingot" }, + { "", "pyutest_tools:stick", "" }, + { "", "pyutest_tools:stick", "" } + } +}) + +core.register_craft({ + output = "pyutest_tools:iron_axe", + recipe = { + { "pyutest_ores:iron_ingot", "pyutest_ores:iron_ingot", "" }, + { "pyutest_ores:iron_ingot", "pyutest_tools:stick", "" }, + { "", "pyutest_tools:stick", "" } + } +}) + +core.register_craft({ + output = "pyutest_tools:iron_sword", + recipe = { + { "pyutest_ores:iron_ingot" }, + { "pyutest_ores:iron_ingot" }, + { "pyutest_tools:stick" } + } +}) + +core.register_craft({ + output = "pyutest_farming:hoe", + recipe = { + { "pyutest_ores:iron_ingot", "pyutest_ores:iron_ingot", "" }, + { "", "pyutest_tools:stick", "" }, + { "", "pyutest_tools:stick", "" } + } +}) + +core.register_craft({ + output = "pyutest_tools:shears", + recipe = { + "pyutest_ores:iron_ingot", + "pyutest_ores:iron_ingot" + }, + type = "shapeless" +}) + +core.register_craft({ + output = "pyutest_tools:diamond_pickaxe", + recipe = { + { "pyutest_ores:diamond_shard", "pyutest_ores:diamond_shard", "pyutest_ores:diamond_shard" }, + { "", "pyutest_tools:stick", "" }, + { "", "pyutest_tools:stick", "" } + } +}) + +core.register_craft({ + output = "pyutest_tools:diamond_axe", + recipe = { + { "pyutest_ores:diamond_shard", "pyutest_ores:diamond_shard", "" }, + { "pyutest_ores:diamond_shard", "pyutest_tools:stick", "" }, + { "", "pyutest_tools:stick", "" } + } +}) + +core.register_craft({ + output = "pyutest_tools:diamond_sword", + recipe = { + { "pyutest_ores:diamond_shard" }, + { "pyutest_ores:diamond_shard" }, + { "pyutest_tools:stick" } + } +}) + +core.register_craft({ + output = "pyutest_tools:flint_and_steel", + recipe = { + "pyutest_tools:flint", "pyutest_ores:iron_ingot" + }, + type = "shapeless" +}) diff --git a/mods/ITEMS/pyutest_electricity/init.lua b/mods/ITEMS/pyutest_electricity/init.lua index f68458b..a6ef051 100644 --- a/mods/ITEMS/pyutest_electricity/init.lua +++ b/mods/ITEMS/pyutest_electricity/init.lua @@ -78,9 +78,9 @@ PyuTest.make_electricity_device = function(id, desc, groups, tiles, craftitem, o core.register_craft({ output = id, recipe = { - { "pyutest_blocks:stone_block", "pyutest_blocks:stone_block", "pyutest_blocks:stone_block" }, - { "pyutest_blocks:stone_block", craftitem, "pyutest_blocks:stone_block" }, - { "pyutest_blocks:stone_block", "pyutest_blocks:stone_block", "pyutest_blocks:stone_block" } + { "group:cobble", "group:cobble", "group:cobble" }, + { "group:cobble", craftitem, "group:cobble" }, + { "group:cobble", "group:cobble", "group:cobble" } }, }) end @@ -106,9 +106,9 @@ core.register_craft({ core.register_craft({ output = "pyutest_electricity:button", recipe = { - { "pyutest_blocks:stone_block", "pyutest_blocks:stone_block", "pyutest_blocks:stone_block" }, - { "pyutest_blocks:stone_block", "pyutest_ores:copper_ingot", "pyutest_blocks:stone_block" }, - { "pyutest_blocks:stone_block", "pyutest_blocks:stone_block", "pyutest_blocks:stone_block" } + { "group:cobble", "group:cobble", "group:cobble" }, + { "group:cobble", "pyutest_ores:copper_ingot", "group:cobble" }, + { "group:cobble", "group:cobble", "group:cobble" } }, }) diff --git a/mods/ITEMS/pyutest_flowers/init.lua b/mods/ITEMS/pyutest_flowers/init.lua index fccf545..ee51581 100644 --- a/mods/ITEMS/pyutest_flowers/init.lua +++ b/mods/ITEMS/pyutest_flowers/init.lua @@ -33,16 +33,16 @@ PyuTest.make_flower = function(name, desc, texture, dye, add_to_registry, drawty end end -PyuTest.make_flower("pyutest_flowers:rose", "Rose", "pyutest-flower.png", "pyutest_flowers:red_dye", true) -PyuTest.make_flower("pyutest_flowers:dandelion", "Dandelion", "pyutest-flower2.png", "pyutest_flowers:yellow_dye", true) -PyuTest.make_flower("pyutest_flowers:blue_daisy", "Blue Daisy", "pyutest-flower3.png", "pyutest_flowers:blue_dye", true) -PyuTest.make_flower("pyutest_flowers:lavender", "Lavender", "pyutest-flower4.png", "pyutest_flowers:purple_dye", true) +PyuTest.make_flower("pyutest_flowers:rose", "Rose", "pyutest-flower.png", "pyutest_wool:red_dye", true) +PyuTest.make_flower("pyutest_flowers:dandelion", "Dandelion", "pyutest-flower2.png", "pyutest_wool:yellow_dye", true) +PyuTest.make_flower("pyutest_flowers:blue_daisy", "Blue Daisy", "pyutest-flower3.png", "pyutest_wool:cyan_dye", true) +PyuTest.make_flower("pyutest_flowers:lavender", "Lavender", "pyutest-flower4.png", "pyutest_wool:purple_dye", true) -PyuTest.make_flower("pyutest_flowers:deadbush", "Deadbush", "pyutest-deadbush.png", "pyutest_flowers:brown_dye") -PyuTest.make_flower("pyutest_flowers:maybell", "Maybell", "pyutest-maybell.png", "pyutest_flowers:white_dye", true) +PyuTest.make_flower("pyutest_flowers:deadbush", "Deadbush", "pyutest-deadbush.png", "pyutest_wool:brown_dye") +PyuTest.make_flower("pyutest_flowers:maybell", "Maybell", "pyutest-maybell.png", "pyutest_wool:white_dye", true) PyuTest.make_flower("pyutest_flowers:orange_tulip", "Orange Tulip", "pyutest-orange-tulip.png", "pyutest_flowers:orange_dye", true) -PyuTest.make_flower("pyutest_flowers:black_rose", "Black Rose", "pyutest-black-rose.png", "pyutest_flowers:black_dye", +PyuTest.make_flower("pyutest_flowers:black_rose", "Black Rose", "pyutest-black-rose.png", "pyutest_wool:black_dye", false) PyuTest.make_node("pyutest_flowers:vines", "Vines", { @@ -97,7 +97,7 @@ PyuTest.make_node("pyutest_flowers:sugarcane", "Sugarcane", { floodable = true, }) -PyuTest.make_flower("pyutest_flowers:kelp", "Kelp", "pyutest-kelp.png", "pyutest_flowers:green_dye", false, +PyuTest.make_flower("pyutest_flowers:kelp", "Kelp", "pyutest-kelp.png", "pyutest_wool:green_dye", false, "plantlike_rooted", { paramtype2 = "leveled", place_param2 = 16, @@ -117,7 +117,7 @@ PyuTest.make_flower("pyutest_flowers:kelp", "Kelp", "pyutest-kelp.png", "pyutest PyuTest.make_flower("pyutest_flowers:small_mushroom", "Small Mushroom", "pyutest-mushroom-small.png", - "pyutest_flowers:red_dye", false, nil, { + "pyutest_wool:red_dye", false, nil, { groups = { oddly_breakable_by_hand = PyuTest.BLOCK_FAST, flammable = 1, diff --git a/mods/ITEMS/pyutest_overrides/init.lua b/mods/ITEMS/pyutest_overrides/init.lua index 34aa558..28eebb9 100644 --- a/mods/ITEMS/pyutest_overrides/init.lua +++ b/mods/ITEMS/pyutest_overrides/init.lua @@ -6,6 +6,10 @@ core.override_item("pyutest_blocks:stone_block", { drop = "pyutest_blocks:cobblestone_block" }) +core.override_item("pyutest_blocks:darkstone_block", { + drop = "pyutest_blocks:cobbled_darkstone_block" +}) + core.override_item("pyutest_blocks:bone_block", { paramtype2 = "facedir", on_place = core.rotate_node diff --git a/mods/ITEMS/pyutest_tools/tools.lua b/mods/ITEMS/pyutest_tools/tools.lua index 2d88bfb..b27ea8f 100644 --- a/mods/ITEMS/pyutest_tools/tools.lua +++ b/mods/ITEMS/pyutest_tools/tools.lua @@ -1,3 +1,10 @@ +PyuTest.make_tool("pyutest_tools:hand", "Hand Strength", { + +}, "pyutest-hand.png", { + stack_max = 1, + tool_capabilities = PyuTest.HAND_TOOL_CAPS +}) + PyuTest.make_tool("pyutest_tools:shears", "Shears", { shears = 1 }, "pyutest-shears.png", { diff --git a/mods/ITEMS/pyutest_wool/init.lua b/mods/ITEMS/pyutest_wool/init.lua index 6bb2b3e..dacafd3 100644 --- a/mods/ITEMS/pyutest_wool/init.lua +++ b/mods/ITEMS/pyutest_wool/init.lua @@ -89,36 +89,6 @@ core.register_craft({ type = "shapeless" }) -PyuTest.COLORS = { - white = { "White", nil }, - black = { "Black", { r = 32, g = 32, b = 32 } }, - brown = { "Brown", "#9F8170" }, - - red = { "Red", "red" }, - orange = { "Orange", "orange" }, - yellow = { "Yellow", "yellow" }, - green = { "Green", "green" }, - blue = { "Blue", "blue" }, - purple = { "Purple", "purple" }, - pink = { "Pink", "pink" }, - - lime = { "Lime", "#64C044" }, - cyan = { "Cyan", "cyan" }, - magenta = { "Magenta", "magenta" }, - chartreuse = { "Chartreuse", "#7FFF00" }, - ultramarine = { "Ultramarine", "#120A8F" }, - violet = { "Violet", "#8000FF" }, - rose = { "Rose", "#FF0080" }, - chestnut = { "Chestnut", "#954535" }, - turquoise = { "Turquoise", "#40E0D0" }, - teal = { "Teal", "#008080" }, - mauve = { "Mauve", "#E0B0FF" }, - mint = { "Mint", "#3EB489" }, - ecru = { "Ecru", "#C2B280" }, - khaki = { "Khaki", "khaki" }, - indigo = { "Indigo", "#4000FF" }, -} - for k, v in pairs(PyuTest.COLORS) do PyuTest.make_colored_blocks("pyutest_wool:" .. k, v[1], v[2]) end @@ -126,9 +96,10 @@ end for k, v in pairs(PyuTest.COLORS) do if v[2] ~= nil then local id = "pyutest_wool:" .. k .. "_stained_glass" + local id2 = "pyutest_wool:" .. k .. "_stained_reinforced_glass" PyuTest.make_node(id, v[1] .. " Stained Glass", { - cracky = PyuTest.BLOCK_FAST, + oddly_breakable_by_hand = PyuTest.BLOCK_FAST, glass = 1, colored = 1 }, { "pyutest-glass.png", "pyutest-glass-overlay.png" }, { @@ -138,6 +109,17 @@ for k, v in pairs(PyuTest.COLORS) do sunlight_propagates = true }) + PyuTest.make_node(id2, v[1] .. " Stained Reinforced Glass", { + cracky = PyuTest.BLOCK_NORMAL, + glass = 1, + colored = 1 + }, { "pyutest-glass.png", "pyutest-glass-overlay-reinforced.png" }, { + drawtype = "glasslike_framed", + color = v[2], + paramtype = "light", + sunlight_propagates = true + }) + core.register_craft({ output = id, recipe = { @@ -146,6 +128,15 @@ for k, v in pairs(PyuTest.COLORS) do }, type = "shapeless" }) + + core.register_craft({ + output = id2, + recipe = { + "pyutest_blocks:reinforced_glass", + "pyutest_wool:" .. k .. "_dye" + }, + type = "shapeless" + }) end end diff --git a/mods/PLAYER/pyutest_player/init.lua b/mods/PLAYER/pyutest_player/init.lua index 64a1674..b885140 100644 --- a/mods/PLAYER/pyutest_player/init.lua +++ b/mods/PLAYER/pyutest_player/init.lua @@ -54,79 +54,83 @@ core.register_globalstep(function () end end) +PyuTest.HAND_TOOL_CAPS = PyuTest.tool_caps({ + uses = 0, + attck_uses = 0, + damage_groups = { fleshy = 2 }, + + groupcaps = { + oddly_breakable_by_hand = { + times = { + [PyuTest.BLOCK_FAST] = 0.35, + [PyuTest.BLOCK_NORMAL] = 0.50, + [PyuTest.BLOCK_SLOW] = 0.65, + } + }, + snappy = { + times = { + [PyuTest.BLOCK_FAST] = 0.55, + [PyuTest.BLOCK_NORMAL] = 0.70, + [PyuTest.BLOCK_SLOW] = 0.70 + } + }, + crumbly = { + times = { + [PyuTest.BLOCK_FAST] = 0.75, + [PyuTest.BLOCK_NORMAL] = 0.80, + [PyuTest.BLOCK_SLOW] = 0.90 + } + }, + choppy = { + times = { + [PyuTest.BLOCK_FAST] = 1.2, + [PyuTest.BLOCK_NORMAL] = 2.3, + [PyuTest.BLOCK_SLOW] = 2.9, + } + }, + cracky = { + times = { + [PyuTest.BLOCK_FAST] = 6, + [PyuTest.BLOCK_NORMAL] = 10, + [PyuTest.BLOCK_SLOW] = 45, + } + }, + wooly = { + times = { + [PyuTest.BLOCK_FAST] = 0.55, + [PyuTest.BLOCK_NORMAL] = 0.70, + [PyuTest.BLOCK_SLOW] = 0.70 + } + }, + } +}) + if core.is_creative_enabled("") then + local caps = PyuTest.tool_caps({ + uses = 0, + time = 0.25, + + groupcaps = { + crumbly = {}, + choppy = {}, + cracky = {}, + snappy = {}, + wooly = {}, + oddly_breakable_by_hand = {} + }, + + attack_uses = 0, + damage_groups = { fleshy = 10000 } + }) + core.override_item("", { range = 9, - tool_capabilities = PyuTest.tool_caps({ - uses = 0, - time = 0.25, - - groupcaps = { - crumbly = {}, - choppy = {}, - cracky = {}, - snappy = {}, - wooly = {}, - oddly_breakable_by_hand = {} - }, - - attack_uses = 0, - damage_groups = { fleshy = 10000 } - }) + tool_capabilities = caps }) else core.override_item("", { range = 5, - tool_capabilities = PyuTest.tool_caps({ - uses = 0, - attck_uses = 0, - damage_groups = { fleshy = 2 }, - - groupcaps = { - oddly_breakable_by_hand = { - times = { - [PyuTest.BLOCK_FAST] = 0.35, - [PyuTest.BLOCK_NORMAL] = 0.50, - [PyuTest.BLOCK_SLOW] = 0.65, - } - }, - snappy = { - times = { - [PyuTest.BLOCK_FAST] = 0.55, - [PyuTest.BLOCK_NORMAL] = 0.70, - [PyuTest.BLOCK_SLOW] = 0.70 - } - }, - crumbly = { - times = { - [PyuTest.BLOCK_FAST] = 0.75, - [PyuTest.BLOCK_NORMAL] = 0.80, - [PyuTest.BLOCK_SLOW] = 0.90 - } - }, - choppy = { - times = { - [PyuTest.BLOCK_FAST] = 1.2, - [PyuTest.BLOCK_NORMAL] = 2.3, - [PyuTest.BLOCK_SLOW] = 2.9, - } - }, - cracky = { - times = { - [PyuTest.BLOCK_FAST] = 6, - [PyuTest.BLOCK_NORMAL] = 10, - [PyuTest.BLOCK_SLOW] = 45, - } - }, - wooly = { - times = { - [PyuTest.BLOCK_FAST] = 0.55, - [PyuTest.BLOCK_NORMAL] = 0.70, - [PyuTest.BLOCK_SLOW] = 0.70 - } - }, - } - }) + tool_capabilities = PyuTest.HAND_TOOL_CAPS }) end diff --git a/mods/WORLD/pyutest_ores/init.lua b/mods/WORLD/pyutest_ores/init.lua index 374e483..ba81047 100644 --- a/mods/WORLD/pyutest_ores/init.lua +++ b/mods/WORLD/pyutest_ores/init.lua @@ -225,6 +225,26 @@ PyuTest.make_ore_and_item("pyutest_ores:gold", "Gold", "ingot", "Ingot", { block_shiny = true, }) +PyuTest.make_ore_and_item("pyutest_ores:ruby", "Ruby", "shard", "Shard", { + ore_options = { + scarcity = 15.5 * 15.5 * 15.5, + y_max = -35, + wherein = PyuTest.ORE_STONES, + + ore_strength = PyuTest.BLOCK_NORMAL, + ore_color = "red", + }, + + item_texture = "pyutest-shard.png", + item_conf = { + color = "red" + }, + + block_tiles = { "pyutest-metal.png" }, + block_color = "red", + block_shiny = true, +}) + PyuTest.make_ore_and_item("pyutest_ores:diamond", "Diamond", "shard", "Shard", { ore_options = { scarcity = 16.7 * 16.7 * 16.7, diff --git a/textures/pyutest-cobbled-darkstone.png b/textures/pyutest-cobbled-darkstone.png new file mode 100644 index 0000000..e5f0413 Binary files /dev/null and b/textures/pyutest-cobbled-darkstone.png differ diff --git a/textures/pyutest-glass-overlay-reinforced.png b/textures/pyutest-glass-overlay-reinforced.png new file mode 100644 index 0000000..1ee19bb Binary files /dev/null and b/textures/pyutest-glass-overlay-reinforced.png differ diff --git a/textures/pyutest-oil.png b/textures/pyutest-oil.png index a09ccb7..0b67faa 100644 Binary files a/textures/pyutest-oil.png and b/textures/pyutest-oil.png differ