diff --git a/.gitignore b/.gitignore index de181d31a..02f4da6a8 100644 --- a/.gitignore +++ b/.gitignore @@ -5,4 +5,7 @@ *.blend3 /.idea/ *.xcf -.Rproj.user \ No newline at end of file +.Rproj.user + +# Windows Thumbnail Cache +Thumbs.db diff --git a/mods/CORE/mcl_sounds/init.lua b/mods/CORE/mcl_sounds/init.lua index 30157060c..52974aab7 100644 --- a/mods/CORE/mcl_sounds/init.lua +++ b/mods/CORE/mcl_sounds/init.lua @@ -187,6 +187,15 @@ function mcl_sounds.node_sound_lava_defaults(table) return table end +function mcl_sounds.node_sound_decorated_pot_defaults(table) + table = table or {} + -- TODO: Footstep and dug sounds + table.place = table.place or + {name = "archaeology_decorated_pot_place", gain = 1.0} + mcl_sounds.node_sound_defaults(table) + return table +end + -- Player death sound minetest.register_on_dieplayer(function(player) -- TODO: Add separate death sound diff --git a/mods/CORE/mcl_sounds/sounds/archaeology_decorated_pot_place.1.ogg b/mods/CORE/mcl_sounds/sounds/archaeology_decorated_pot_place.1.ogg new file mode 100755 index 000000000..3bed3469f Binary files /dev/null and b/mods/CORE/mcl_sounds/sounds/archaeology_decorated_pot_place.1.ogg differ diff --git a/mods/CORE/mcl_sounds/sounds/archaeology_decorated_pot_place.2.ogg b/mods/CORE/mcl_sounds/sounds/archaeology_decorated_pot_place.2.ogg new file mode 100755 index 000000000..ef623ee07 Binary files /dev/null and b/mods/CORE/mcl_sounds/sounds/archaeology_decorated_pot_place.2.ogg differ diff --git a/mods/CORE/mcl_sounds/sounds/archaeology_decorated_pot_place.3.ogg b/mods/CORE/mcl_sounds/sounds/archaeology_decorated_pot_place.3.ogg new file mode 100755 index 000000000..4a49d8851 Binary files /dev/null and b/mods/CORE/mcl_sounds/sounds/archaeology_decorated_pot_place.3.ogg differ diff --git a/mods/ITEMS/mcl_archaeology/README.md b/mods/ITEMS/mcl_archaeology/README.md new file mode 100644 index 000000000..818a312e6 --- /dev/null +++ b/mods/ITEMS/mcl_archaeology/README.md @@ -0,0 +1,11 @@ +# MineClone2 Archaeology [mcl_archaeology] + +Adds 1.20 archaeology mechanic(s) (brush, suspicious blocks, pottery sherds, decorated pots, trail ruins) + +## Credits + +* rudzik8 (all code and textures except for what is mentioned below) +* XSSheep (for the textures I've used as a base for my own ones) +* Ex (advice, also `mcl_archaeology_decorated_pot_base.png`, `mcl_archaeology_decorated_pot_side.png` and derevatives) +* chmodsayshello (advice, consultation and some MC showcase) +* Nicu (advice) diff --git a/mods/ITEMS/mcl_archaeology/init.lua b/mods/ITEMS/mcl_archaeology/init.lua new file mode 100644 index 000000000..81517606e --- /dev/null +++ b/mods/ITEMS/mcl_archaeology/init.lua @@ -0,0 +1,31 @@ +local mp = minetest.get_modpath(minetest.get_current_modname()) + +local S = minetest.get_translator(mp) + +mcl_archaeology = {} +mcl_archaeology.pottery_sherds = { + -- name, description + {"angler", S("Angler Pottery Sherd")}, + {"archer", S("Archer Pottery Sherd")}, + {"arms_up", S("Arms Up Pottery Sherd")}, + {"blade", S("Blade Pottery Sherd")}, + {"brewer", S("Brewer Pottery Sherd")}, + {"burn", S("Burn Pottery Sherd")}, + {"danger", S("Danger Pottery Sherd")}, + {"explorer", S("Explorer Pottery Sherd")}, + {"friend", S("Friend Pottery Sherd")}, + {"heart", S("Heart Pottery Sherd")}, + {"heartbreak", S("Heartbreak Pottery Sherd")}, + {"howl", S("Howl Pottery Sherd")}, + {"miner", S("Miner Pottery Sherd")}, + {"mourner", S("Mourner Pottery Sherd")}, + {"plenty", S("Plenty Pottery Sherd")}, + {"prize", S("Prize Pottery Sherd")}, + {"sheaf", S("Sheaf Pottery Sherd")}, + {"shelter", S("Shelter Pottery Sherd")}, + {"skull", S("Skull Pottery Sherd")}, + {"snort", S("Snort Pottery Sherd")} +} + +dofile(mp.."/items.lua") +dofile(mp.."/nodes.lua") diff --git a/mods/ITEMS/mcl_archaeology/items.lua b/mods/ITEMS/mcl_archaeology/items.lua new file mode 100644 index 000000000..42d87ef28 --- /dev/null +++ b/mods/ITEMS/mcl_archaeology/items.lua @@ -0,0 +1,33 @@ +local S = minetest.get_translator(minetest.get_current_modname()) + +for _, row in ipairs(mcl_archaeology.pottery_sherds) do + -- assign variable = row[x] + local name = row[1] + local desc = row[2] -- short for "description" + + -- register + minetest.register_craftitem("mcl_archaeology:"..name.."_pottery_sherd", { + description = desc, + _doc_items_longdesc = S("A pottery sherd is used to craft Decorated Pots."), + inventory_image = "mcl_archaeology_pottery_sherd_"..name..".png", + groups = { craftitem = 1, pottery_sherd = 1, pottery = 1 } + }) +end + +minetest.register_craftitem("mcl_archaeology:brush", { + description = S("Brush"), + _doc_items_longdesc = S("A brush can be used to excavate suspicious blocks."), + _tt_help = S("Excavates suspicious blocks"), + inventory_image = "mcl_archaeology_brush.png", + stack_max = 1, + groups = {tool=1}, +}) + +minetest.register_craft({ + output = "mcl_archaeology:brush", + recipe = { + {"mcl_mobitems:feather"}, + {"mcl_copper:copper_ingot"}, + {"mcl_core:stick"} + } +}) diff --git a/mods/ITEMS/mcl_archaeology/mod.conf b/mods/ITEMS/mcl_archaeology/mod.conf new file mode 100644 index 000000000..56cbc1d19 --- /dev/null +++ b/mods/ITEMS/mcl_archaeology/mod.conf @@ -0,0 +1,4 @@ +name = mcl_archaeology +title = MineClone2 Archaeology +description = Adds 1.20 archaeology mechanic(s) (brush, suspicious blocks, pottery sherds, decorated pots, trail ruins) into the MineClone 2 game +depends = mcl_core diff --git a/mods/ITEMS/mcl_archaeology/nodes.lua b/mods/ITEMS/mcl_archaeology/nodes.lua new file mode 100644 index 000000000..f8227a0fe --- /dev/null +++ b/mods/ITEMS/mcl_archaeology/nodes.lua @@ -0,0 +1,56 @@ +local S = minetest.get_translator(minetest.get_current_modname()) + +minetest.register_node("mcl_archaeology:suspicious_sand", { + description = S("Suspicious Sand"), + tiles = {"mcl_archaeology_suspicious_sand.png"}, + groups = { handy = 1, shovely = 1, falling_node = 1, + dig_by_piston = 1, dig_immediate_piston = 1 }, + sounds = mcl_sounds.node_sound_sand_defaults(), + _mcl_blast_resistance = 0.5, + _mcl_hardness = 0.5, +}) + +minetest.register_node("mcl_archaeology:suspicious_gravel", { + description = S("Suspicious Gravel"), + tiles = {"mcl_archaeology_suspicious_gravel.png"}, + groups = { handy = 1, shovely = 1, falling_node = 1, + dig_by_piston = 1, dig_immediate_piston = 1 }, + sounds = mcl_sounds.node_sound_gravel_defaults(), + _mcl_blast_resistance = 0.6, + _mcl_hardness = 0.6, +}) + +minetest.register_node("mcl_archaeology:decorated_pot", { + description = S("Decorated Pot"), + tiles = { + "mcl_archaeology_decorated_pot_top.png", + "mcl_archaeology_decorated_pot_bottom.png", + "mcl_archaeology_decorated_pot_side.png", + "mcl_archaeology_decorated_pot_side.png", + "mcl_archaeology_decorated_pot_side.png", + "mcl_archaeology_decorated_pot_side.png" + }, + drawtype = "nodebox", + paramtype = "light", + node_box = { + type = "fixed", + fixed = { + {-0.4375, -0.5, -0.4375, 0.4375, 0.5, 0.4375}, -- base + {-0.1875, 0.5, -0.1875, 0.1875, 0.5625, 0.1875}, -- neck (bottom part) + {-0.25, 0.5625, -0.25, 0.25, 0.6875, 0.25}, -- neck (top part) + } + }, + --drops = {}, + groups = { handy = 1 }, + _mcl_silk_touch_drop = true -- TODO: different sound when breaking with silk touch +}) + +-- normal, non-pattern recipe +minetest.register_craft({ + output = "mcl_archaeology:decorated_pot", + recipe = { + {"", "group:pottery", ""}, + {"group:pottery", "", "group:pottery"}, + {"", "group:pottery", ""}, + } +}) diff --git a/mods/ITEMS/mcl_core/craftitems.lua b/mods/ITEMS/mcl_core/craftitems.lua index 32a5f7cbc..5bbf047e2 100644 --- a/mods/ITEMS/mcl_core/craftitems.lua +++ b/mods/ITEMS/mcl_core/craftitems.lua @@ -114,7 +114,7 @@ minetest.register_craftitem("mcl_core:brick", { _doc_items_longdesc = S("Bricks are used to craft brick blocks."), inventory_image = "default_clay_brick.png", stack_max = 64, - groups = { craftitem=1 }, + groups = { craftitem=1, pottery=1 }, }) minetest.register_craftitem("mcl_core:flint", { diff --git a/textures/mcl_archaeology_brush.png b/textures/mcl_archaeology_brush.png new file mode 100644 index 000000000..fa0cbf1f3 Binary files /dev/null and b/textures/mcl_archaeology_brush.png differ diff --git a/textures/mcl_archaeology_decorated_pot_base.png b/textures/mcl_archaeology_decorated_pot_base.png new file mode 100644 index 000000000..e6c10daa8 Binary files /dev/null and b/textures/mcl_archaeology_decorated_pot_base.png differ diff --git a/textures/mcl_archaeology_decorated_pot_bottom.png b/textures/mcl_archaeology_decorated_pot_bottom.png new file mode 100644 index 000000000..5c22ca178 Binary files /dev/null and b/textures/mcl_archaeology_decorated_pot_bottom.png differ diff --git a/textures/mcl_archaeology_decorated_pot_side.png b/textures/mcl_archaeology_decorated_pot_side.png new file mode 100644 index 000000000..93b78dde5 Binary files /dev/null and b/textures/mcl_archaeology_decorated_pot_side.png differ diff --git a/textures/mcl_archaeology_decorated_pot_top.png b/textures/mcl_archaeology_decorated_pot_top.png new file mode 100644 index 000000000..b15aa0624 Binary files /dev/null and b/textures/mcl_archaeology_decorated_pot_top.png differ diff --git a/textures/mcl_archaeology_pottery_sherd_angler.png b/textures/mcl_archaeology_pottery_sherd_angler.png new file mode 100755 index 000000000..fcc42ec1c Binary files /dev/null and b/textures/mcl_archaeology_pottery_sherd_angler.png differ diff --git a/textures/mcl_archaeology_pottery_sherd_archer.png b/textures/mcl_archaeology_pottery_sherd_archer.png new file mode 100755 index 000000000..ceefb1b81 Binary files /dev/null and b/textures/mcl_archaeology_pottery_sherd_archer.png differ diff --git a/textures/mcl_archaeology_pottery_sherd_arms_up.png b/textures/mcl_archaeology_pottery_sherd_arms_up.png new file mode 100755 index 000000000..10cca1146 Binary files /dev/null and b/textures/mcl_archaeology_pottery_sherd_arms_up.png differ diff --git a/textures/mcl_archaeology_pottery_sherd_blade.png b/textures/mcl_archaeology_pottery_sherd_blade.png new file mode 100755 index 000000000..4e7e59268 Binary files /dev/null and b/textures/mcl_archaeology_pottery_sherd_blade.png differ diff --git a/textures/mcl_archaeology_pottery_sherd_brewer.png b/textures/mcl_archaeology_pottery_sherd_brewer.png new file mode 100755 index 000000000..c88cd8fff Binary files /dev/null and b/textures/mcl_archaeology_pottery_sherd_brewer.png differ diff --git a/textures/mcl_archaeology_pottery_sherd_burn.png b/textures/mcl_archaeology_pottery_sherd_burn.png new file mode 100755 index 000000000..9febd9d6b Binary files /dev/null and b/textures/mcl_archaeology_pottery_sherd_burn.png differ diff --git a/textures/mcl_archaeology_pottery_sherd_danger.png b/textures/mcl_archaeology_pottery_sherd_danger.png new file mode 100755 index 000000000..bb0a4eeab Binary files /dev/null and b/textures/mcl_archaeology_pottery_sherd_danger.png differ diff --git a/textures/mcl_archaeology_pottery_sherd_explorer.png b/textures/mcl_archaeology_pottery_sherd_explorer.png new file mode 100755 index 000000000..7a8aa4ab6 Binary files /dev/null and b/textures/mcl_archaeology_pottery_sherd_explorer.png differ diff --git a/textures/mcl_archaeology_pottery_sherd_friend.png b/textures/mcl_archaeology_pottery_sherd_friend.png new file mode 100755 index 000000000..0dba0a6af Binary files /dev/null and b/textures/mcl_archaeology_pottery_sherd_friend.png differ diff --git a/textures/mcl_archaeology_pottery_sherd_heart.png b/textures/mcl_archaeology_pottery_sherd_heart.png new file mode 100755 index 000000000..0c7c4cef8 Binary files /dev/null and b/textures/mcl_archaeology_pottery_sherd_heart.png differ diff --git a/textures/mcl_archaeology_pottery_sherd_heartbreak.png b/textures/mcl_archaeology_pottery_sherd_heartbreak.png new file mode 100755 index 000000000..5ca58e2ec Binary files /dev/null and b/textures/mcl_archaeology_pottery_sherd_heartbreak.png differ diff --git a/textures/mcl_archaeology_pottery_sherd_howl.png b/textures/mcl_archaeology_pottery_sherd_howl.png new file mode 100755 index 000000000..efb5c9e10 Binary files /dev/null and b/textures/mcl_archaeology_pottery_sherd_howl.png differ diff --git a/textures/mcl_archaeology_pottery_sherd_miner.png b/textures/mcl_archaeology_pottery_sherd_miner.png new file mode 100755 index 000000000..28326613c Binary files /dev/null and b/textures/mcl_archaeology_pottery_sherd_miner.png differ diff --git a/textures/mcl_archaeology_pottery_sherd_mourner.png b/textures/mcl_archaeology_pottery_sherd_mourner.png new file mode 100755 index 000000000..9cf82ca2a Binary files /dev/null and b/textures/mcl_archaeology_pottery_sherd_mourner.png differ diff --git a/textures/mcl_archaeology_pottery_sherd_plenty.png b/textures/mcl_archaeology_pottery_sherd_plenty.png new file mode 100755 index 000000000..45d7f4e2c Binary files /dev/null and b/textures/mcl_archaeology_pottery_sherd_plenty.png differ diff --git a/textures/mcl_archaeology_pottery_sherd_prize.png b/textures/mcl_archaeology_pottery_sherd_prize.png new file mode 100755 index 000000000..55ca4a150 Binary files /dev/null and b/textures/mcl_archaeology_pottery_sherd_prize.png differ diff --git a/textures/mcl_archaeology_pottery_sherd_sheaf.png b/textures/mcl_archaeology_pottery_sherd_sheaf.png new file mode 100755 index 000000000..ba21c965c Binary files /dev/null and b/textures/mcl_archaeology_pottery_sherd_sheaf.png differ diff --git a/textures/mcl_archaeology_pottery_sherd_shelter.png b/textures/mcl_archaeology_pottery_sherd_shelter.png new file mode 100755 index 000000000..ae01d1199 Binary files /dev/null and b/textures/mcl_archaeology_pottery_sherd_shelter.png differ diff --git a/textures/mcl_archaeology_pottery_sherd_skull.png b/textures/mcl_archaeology_pottery_sherd_skull.png new file mode 100755 index 000000000..106b2dbec Binary files /dev/null and b/textures/mcl_archaeology_pottery_sherd_skull.png differ diff --git a/textures/mcl_archaeology_pottery_sherd_snort.png b/textures/mcl_archaeology_pottery_sherd_snort.png new file mode 100755 index 000000000..445fef7da Binary files /dev/null and b/textures/mcl_archaeology_pottery_sherd_snort.png differ diff --git a/textures/mcl_archaeology_suspicious_gravel.png b/textures/mcl_archaeology_suspicious_gravel.png new file mode 100644 index 000000000..179747a66 Binary files /dev/null and b/textures/mcl_archaeology_suspicious_gravel.png differ diff --git a/textures/mcl_archaeology_suspicious_sand.png b/textures/mcl_archaeology_suspicious_sand.png new file mode 100644 index 000000000..10c1fdb55 Binary files /dev/null and b/textures/mcl_archaeology_suspicious_sand.png differ