From 02e699890f4ab0a93662b58723e5b8469129293f Mon Sep 17 00:00:00 2001 From: FaceDeer Date: Wed, 7 Aug 2019 23:31:01 -0600 Subject: [PATCH] bring in the art assets from ClockGen's "better_caves_modpack" under CC BY 4.0,, code written from scratch. --- df_primordial_items/depends.txt | 1 + df_primordial_items/fungal_nodes.lua | 213 +++++++++ df_primordial_items/giant_fern.lua | 190 ++++++++ df_primordial_items/init.lua | 8 + df_primordial_items/intllib.lua | 45 ++ df_primordial_items/jungle_nodes.lua | 423 ++++++++++++++++++ df_primordial_items/license.txt | 24 + df_primordial_items/locale/template.pot | 154 +++++++ df_primordial_items/locale/update.bat | 6 + df_primordial_items/mod.conf | 3 + .../models/dfcaverns_fern_slant.obj | 74 +++ .../models/dfcaverns_fern_slant_2.obj | 74 +++ .../models/dfcaverns_fern_slant_full.obj | 74 +++ .../textures/dfcaverns_jungle_fern_01.png | Bin 0 -> 421 bytes .../textures/dfcaverns_jungle_fern_02.png | Bin 0 -> 241 bytes .../textures/dfcaverns_jungle_fern_03.png | Bin 0 -> 280 bytes .../textures/dfcaverns_jungle_fern_bark.png | Bin 0 -> 308 bytes .../dfcaverns_jungle_fern_leaves_01.png | Bin 0 -> 293 bytes .../textures/dfcaverns_jungle_fern_stem.png | Bin 0 -> 557 bytes .../textures/dfcaverns_jungle_flower_01.png | Bin 0 -> 361 bytes .../dfcaverns_jungle_glow_plant_01.png | Bin 0 -> 355 bytes .../dfcaverns_jungle_glow_plant_02.png | Bin 0 -> 332 bytes .../textures/dfcaverns_jungle_grass_01.png | Bin 0 -> 437 bytes .../textures/dfcaverns_jungle_grass_02.png | Bin 0 -> 529 bytes .../textures/dfcaverns_jungle_grass_03.png | Bin 0 -> 522 bytes .../textures/dfcaverns_jungle_ivy_01.png | Bin 0 -> 307 bytes .../textures/dfcaverns_jungle_leaves_01.png | Bin 0 -> 331 bytes .../textures/dfcaverns_jungle_leaves_02.png | Bin 0 -> 368 bytes .../textures/dfcaverns_jungle_mushroom_01.png | Bin 0 -> 275 bytes .../textures/dfcaverns_jungle_mushroom_02.png | Bin 0 -> 355 bytes .../dfcaverns_jungle_mushroom_stem.png | Bin 0 -> 601 bytes .../dfcaverns_jungle_mushroom_stem_02.png | Bin 0 -> 598 bytes .../dfcaverns_jungle_mushroom_top_01.png | Bin 0 -> 301 bytes .../dfcaverns_jungle_mushroom_top_02.png | Bin 0 -> 384 bytes .../dfcaverns_jungle_plant_grass_node_01.png | Bin 0 -> 398 bytes .../dfcaverns_jungle_plant_matter_01.png | Bin 0 -> 395 bytes ...dfcaverns_jungle_plant_packed_roots_01.png | Bin 0 -> 673 bytes .../textures/dfcaverns_jungle_root_01.png | Bin 0 -> 421 bytes .../textures/dfcaverns_jungle_root_02.png | Bin 0 -> 291 bytes .../textures/dfcaverns_jungle_thorns_01.png | Bin 0 -> 416 bytes .../textures/dfcaverns_jungle_wood_01.png | Bin 0 -> 390 bytes .../textures/dfcaverns_jungle_wood_02.png | Bin 0 -> 458 bytes .../textures/dfcaverns_jungle_wood_03.png | Bin 0 -> 614 bytes .../textures/dfcaverns_jungle_wood_04.png | Bin 0 -> 492 bytes .../textures/dfcaverns_mush_cap.png | Bin 0 -> 441 bytes .../textures/dfcaverns_mush_gills.png | Bin 0 -> 325 bytes .../textures/dfcaverns_mush_gills_glow.png | Bin 0 -> 417 bytes .../textures/dfcaverns_mush_glownode.png | Bin 0 -> 521 bytes .../textures/dfcaverns_mush_grass_01.png | Bin 0 -> 424 bytes .../textures/dfcaverns_mush_grass_02.png | Bin 0 -> 501 bytes .../textures/dfcaverns_mush_orb.png | Bin 0 -> 527 bytes .../textures/dfcaverns_mush_orb_vert.png | Bin 0 -> 286 bytes .../textures/dfcaverns_mush_pods.png | Bin 0 -> 338 bytes .../textures/dfcaverns_mush_shaft_side.png | Bin 0 -> 491 bytes .../textures/dfcaverns_mush_shaft_top.png | Bin 0 -> 775 bytes .../textures/dfcaverns_mush_soil.png | Bin 0 -> 504 bytes .../textures/dfcaverns_mush_stalk_side.png | Bin 0 -> 437 bytes .../textures/dfcaverns_mush_stalk_top.png | Bin 0 -> 518 bytes .../textures/dfcaverns_mush_stalks.png | Bin 0 -> 298 bytes df_primordial_items/textures/license.txt | 1 + 60 files changed, 1290 insertions(+) create mode 100644 df_primordial_items/depends.txt create mode 100644 df_primordial_items/fungal_nodes.lua create mode 100644 df_primordial_items/giant_fern.lua create mode 100644 df_primordial_items/init.lua create mode 100644 df_primordial_items/intllib.lua create mode 100644 df_primordial_items/jungle_nodes.lua create mode 100644 df_primordial_items/license.txt create mode 100644 df_primordial_items/locale/template.pot create mode 100644 df_primordial_items/locale/update.bat create mode 100644 df_primordial_items/mod.conf create mode 100644 df_primordial_items/models/dfcaverns_fern_slant.obj create mode 100644 df_primordial_items/models/dfcaverns_fern_slant_2.obj create mode 100644 df_primordial_items/models/dfcaverns_fern_slant_full.obj create mode 100644 df_primordial_items/textures/dfcaverns_jungle_fern_01.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_fern_02.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_fern_03.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_fern_bark.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_fern_leaves_01.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_fern_stem.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_flower_01.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_glow_plant_01.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_glow_plant_02.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_grass_01.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_grass_02.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_grass_03.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_ivy_01.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_leaves_01.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_leaves_02.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_mushroom_01.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_mushroom_02.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_mushroom_stem.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_mushroom_stem_02.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_mushroom_top_01.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_mushroom_top_02.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_plant_grass_node_01.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_plant_matter_01.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_plant_packed_roots_01.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_root_01.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_root_02.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_thorns_01.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_wood_01.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_wood_02.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_wood_03.png create mode 100644 df_primordial_items/textures/dfcaverns_jungle_wood_04.png create mode 100644 df_primordial_items/textures/dfcaverns_mush_cap.png create mode 100644 df_primordial_items/textures/dfcaverns_mush_gills.png create mode 100644 df_primordial_items/textures/dfcaverns_mush_gills_glow.png create mode 100644 df_primordial_items/textures/dfcaverns_mush_glownode.png create mode 100644 df_primordial_items/textures/dfcaverns_mush_grass_01.png create mode 100644 df_primordial_items/textures/dfcaverns_mush_grass_02.png create mode 100644 df_primordial_items/textures/dfcaverns_mush_orb.png create mode 100644 df_primordial_items/textures/dfcaverns_mush_orb_vert.png create mode 100644 df_primordial_items/textures/dfcaverns_mush_pods.png create mode 100644 df_primordial_items/textures/dfcaverns_mush_shaft_side.png create mode 100644 df_primordial_items/textures/dfcaverns_mush_shaft_top.png create mode 100644 df_primordial_items/textures/dfcaverns_mush_soil.png create mode 100644 df_primordial_items/textures/dfcaverns_mush_stalk_side.png create mode 100644 df_primordial_items/textures/dfcaverns_mush_stalk_top.png create mode 100644 df_primordial_items/textures/dfcaverns_mush_stalks.png create mode 100644 df_primordial_items/textures/license.txt diff --git a/df_primordial_items/depends.txt b/df_primordial_items/depends.txt new file mode 100644 index 0000000..331d858 --- /dev/null +++ b/df_primordial_items/depends.txt @@ -0,0 +1 @@ +default \ No newline at end of file diff --git a/df_primordial_items/fungal_nodes.lua b/df_primordial_items/fungal_nodes.lua new file mode 100644 index 0000000..6a657db --- /dev/null +++ b/df_primordial_items/fungal_nodes.lua @@ -0,0 +1,213 @@ +-- internationalization boilerplate +local MP = minetest.get_modpath(minetest.get_current_modname()) +local S, NS = dofile(MP.."/intllib.lua") + + +------------------------------------------------------------------------- +-- Giant mushroom + +minetest.register_node("df_primordial_items:mushroom_trunk", { + description = S("Primordial Mushroom Trunk"), + _doc_items_longdesc = df_primordial_items.doc.big_mushroom_desc, + _doc_items_usagehelp = df_primordial_items.doc.big_mushroom_usage, + tiles = {"dfcaverns_mush_shaft_top.png", "dfcaverns_mush_shaft_top.png", "dfcaverns_mush_shaft_side.png"}, + paramtype2 = "facedir", + is_ground_content = false, + groups = {tree = 1, choppy = 2, oddly_breakable_by_hand = 1, flammable = 2}, + sounds = default.node_sound_wood_defaults(), + on_place = minetest.rotate_node +}) + +minetest.register_node("df_primordial_items:mushroom_cap", { + description = S("Primordial Mushroom Cap"), + _doc_items_longdesc = df_primordial_items.doc.giant_mushroom_desc, + _doc_items_usagehelp = df_primordial_items.doc.giant_mushroom_usage, + tiles = {"dfcaverns_mush_cap.png"}, + paramtype2 = "facedir", + is_ground_content = false, + groups = {tree = 1, choppy = 2, oddly_breakable_by_hand = 1, flammable = 2}, + sounds = default.node_sound_wood_defaults(), + on_place = minetest.rotate_node +}) + +minetest.register_node("df_primordial_items:mushroom_gills", { + description = S("Primordial Mushroom Gills"), + _doc_items_longdesc = df_primordial_items.doc.gills_desc, + _doc_items_usagehelp = df_primordial_items.doc.gills_usage, + tiles = {"dfcaverns_mush_gills.png"}, + inventory_image = "dfcaverns_mush_gills.png", + wield_image = "dfcaverns_mush_gills.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + paramtype = "light", + drawtype = "plantlike", + walkable = false, + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, +}) + +minetest.register_node("df_primordial_items:mushroom_gills_glowing", { + description = S("Glowing Primordial Mushroom Gills"), + _doc_items_longdesc = df_primordial_items.doc.gills_desc, + _doc_items_usagehelp = df_primordial_items.doc.gills_usage, + tiles = {"dfcaverns_mush_gills_glow.png"}, + inventory_image = "dfcaverns_mush_gills_glow.png", + wield_image = "dfcaverns_mush_gills_glow.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + paramtype = "light", + drawtype = "plantlike", + walkable = false, + light_source = 6, + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, +}) + +--------------------------------------------------------------------------------------- +-- Glownode and stalk + +minetest.register_node("df_primordial_items:glownode", { + description = S("Primordial Fungal Lantern"), + _doc_items_longdesc = df_primordial_items.doc.glownode_desc, + _doc_items_usagehelp = df_primordial_items.doc.glownode_usage, + drawtype = "glasslike", + tiles = {"dfcaverns_mush_glownode.png"}, + paramtype = "light", + sunlight_propagates = true, + is_ground_content = false, + groups = {cracky = 3, oddly_breakable_by_hand = 3}, + sounds = default.node_sound_glass_defaults(), + light_source = default.LIGHT_MAX, +}) + +minetest.register_node("df_primordial_items:glownode_stalk", { + description = S("Primordial Fungal Lantern Stalk"), + _doc_items_longdesc = df_primordial_items.doc.glownode_stalk_desc, + _doc_items_usagehelp = df_primordial_items.doc.glownode_stalk_usage, + tiles = {"dfcaverns_mush_stalk_top.png", "dfcaverns_mush_stalk_top.png", "dfcaverns_mush_stalk_side.png"}, + paramtype2 = "facedir", + is_ground_content = false, + groups = {tree = 1, choppy = 2, oddly_breakable_by_hand = 1, flammable = 2}, + sounds = default.node_sound_wood_defaults(), + on_place = minetest.rotate_node +}) + +----------------------------------------------------------------------------------------------- +-- Plants + +-- Grass + +minetest.register_node("df_primordial_items:fungal_grass_1", { + description = S("Primordial Fungal Grass"), + _doc_items_longdesc = df_primordial_items.doc.fungal_grass_desc, + _doc_items_usagehelp = df_primordial_items.doc.fungal_grass_usage, + tiles = {"dfcaverns_mush_grass_01.png"}, + inventory_image = "dfcaverns_mush_grass_01.png", + wield_image = "dfcaverns_mush_grass_01.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + paramtype = "light", + drawtype = "plantlike", + walkable = false, + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, +}) + +minetest.register_node("df_primordial_items:fungal_grass_2", { + description = S("Primordial Jungle Grass"), + _doc_items_longdesc = df_primordial_items.doc.fungal_grass_desc, + _doc_items_usagehelp = df_primordial_items.doc.fungal_grass_usage, + tiles = {"dfcaverns_mush_grass_02.png"}, + inventory_image = "dfcaverns_mush_grass_02.png", + wield_image = "dfcaverns_mush_grass_02.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + paramtype = "light", + drawtype = "plantlike", + walkable = false, + place_param2 = 3, + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, +}) + +-- Glowing + +minetest.register_node("df_primordial_items:glow_orb", { + description = S("Primordial Fungal Orb"), + _doc_items_longdesc = df_primordial_items.doc.glow_orb_desc, + _doc_items_usagehelp = df_primordial_items.doc.glow_orb_usage, + tiles = {"dfcaverns_mush_orb.png"}, + inventory_image = "dfcaverns_mush_orb.png", + wield_image = "dfcaverns_mush_orb.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + paramtype = "light", + drawtype = "plantlike", + walkable = false, + light_source = 9, + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, +}) + +minetest.register_node("df_primordial_items:glow_orb_hanging", { + description = S("Primordial Fungal Orb"), + _doc_items_longdesc = df_primordial_items.doc.glow_orb_desc, + _doc_items_usagehelp = df_primordial_items.doc.glow_orb_usage, + tiles = {"dfcaverns_mush_orb_vert.png"}, + inventory_image = "dfcaverns_mush_orb_vert.png", + wield_image = "dfcaverns_mush_orb_vert.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + paramtype = "light", + drawtype = "plantlike", + walkable = false, + light_source = 6, + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, +}) + +minetest.register_node("df_primordial_items:glow_orb_stalks", { + description = S("Primordial Fungal Orb"), + _doc_items_longdesc = df_primordial_items.doc.glow_orb_desc, + _doc_items_usagehelp = df_primordial_items.doc.glow_orb_usage, + tiles = {"dfcaverns_mush_stalks.png"}, + inventory_image = "dfcaverns_mush_stalks.png", + wield_image = "dfcaverns_mush_stalks.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + paramtype = "light", + drawtype = "plantlike", + walkable = false, + light_source = 6, + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, +}) + +minetest.register_node("df_primordial_items:glow_pods", { + description = S("Primordial Fungal Pod"), + _doc_items_longdesc = df_primordial_items.doc.glow_pod_desc, + _doc_items_usagehelp = df_primordial_items.doc.glow_pod_usage, + tiles = {"dfcaverns_mush_pods.png"}, + inventory_image = "dfcaverns_mush_pods.png", + wield_image = "dfcaverns_mush_pods.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + paramtype = "light", + drawtype = "plantlike", + walkable = false, + light_source = 6, + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, +}) + +------------------------------------------------------------------------------------ +-- Dirt + +minetest.register_node("df_primordial_items:dirt_with_jungle_grass", { + description = S("Dirt With Primordial Mycelium"), + tiles = {"dfcaverns_mush_soil.png"}, + groups = {crumbly = 3, soil = 1, spreading_dirt_type = 1}, + drops = "default:dirt", + sounds = default.node_sound_dirt_defaults(), + light_source = 3, +}) diff --git a/df_primordial_items/giant_fern.lua b/df_primordial_items/giant_fern.lua new file mode 100644 index 0000000..3f42da5 --- /dev/null +++ b/df_primordial_items/giant_fern.lua @@ -0,0 +1,190 @@ +-- internationalization boilerplate +local MP = minetest.get_modpath(minetest.get_current_modname()) +local S, NS = dofile(MP.."/intllib.lua") + +minetest.register_node("df_primordial_items:giant_fern_tree", { + description = S("Giant Fern Stem"), + _doc_items_longdesc = df_primordial_items.doc.giant_fern_desc, + _doc_items_usagehelp = df_primordial_items.doc.giant_fern_usage, + tiles = {"dfcaverns_jungle_fern_stem.png","dfcaverns_jungle_fern_stem.png","dfcaverns_jungle_fern_bark.png",}, + groups = {tree=1, choppy=2, oddly_breakable_by_hand=1, flammable= 2}, + is_ground_content = false, + paramtype = "light", + paramtype2 = "facedir", + sounds = default.node_sound_wood_defaults(), + sunlight_propagates = true, + on_place = minetest.rotate_node, +}) + +minetest.register_node("df_primordial_items:giant_fern_tree_slant_bottom", { + description = S("Giant Fern Stem"), + _doc_items_longdesc = df_primordial_items.doc.giant_fern_desc, + _doc_items_usagehelp = df_primordial_items.doc.giant_fern_usage, + tiles = { + "dfcaverns_jungle_fern_stem.png", + "dfcaverns_jungle_fern_bark.png", + "dfcaverns_jungle_fern_stem.png", + "dfcaverns_jungle_fern_bark.png", + "dfcaverns_jungle_fern_bark.png", + "dfcaverns_jungle_fern_bark.png", + }, + paramtype2 = "facedir", + drawtype = "mesh", + mesh = "dfcaverns_fern_slant.obj", + paramtype = "light", + drop = "df_primordial_items:giant_fern_tree", + groups = {choppy = 2, tree = 1, oddly_breakable_by_hand=1, flammable = 2}, + sounds = default.node_sound_wood_defaults(), + on_place = minetest.rotate_node, + selection_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.625, 0.5, 0.0, 0.375}, + {-0.5, 0.0, -0.875, 0.5, 0.5, 0.125}, + }, + }, + collision_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.625, 0.5, 0.0, 0.375}, + {-0.5, 0.0, -0.875, 0.5, 0.5, 0.125}, + }, + }, +}) + +minetest.register_node("df_primordial_items:giant_fern_tree_slant_top", { + description = S("Giant Fern Stem"), + _doc_items_longdesc = df_primordial_items.doc.giant_fern_desc, + _doc_items_usagehelp = df_primordial_items.doc.giant_fern_usage, + tiles = { + "dfcaverns_jungle_fern_stem.png", + "dfcaverns_jungle_fern_bark.png", + "dfcaverns_jungle_fern_stem.png", + "dfcaverns_jungle_fern_bark.png", + "dfcaverns_jungle_fern_bark.png", + "dfcaverns_jungle_fern_bark.png", + }, + paramtype2 = "facedir", + drawtype = "mesh", + mesh = "dfcaverns_fern_slant_2.obj", + paramtype = "light", + drop = "df_primordial_items:giant_fern_tree", + groups = {choppy = 2, tree = 1, oddly_breakable_by_hand=1, flammable = 2}, + sounds = default.node_sound_wood_defaults(), + on_place = minetest.rotate_node, + selection_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.125, 0.5, 0.0, 0.875}, + {-0.5, 0.0, -0.375, 0.5, 0.5, 0.625}, + }, + }, + collision_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.125, 0.5, 0.0, 0.875}, + {-0.5, 0.0, -0.375, 0.5, 0.5, 0.625}, + }, + }, +}) + +minetest.register_node("df_primordial_items:giant_fern_tree_slant_full", { + description = S("Giant Fern Stem"), + _doc_items_longdesc = df_primordial_items.doc.giant_fern_desc, + _doc_items_usagehelp = df_primordial_items.doc.giant_fern_usage, + tiles = { + "dfcaverns_jungle_fern_stem.png", + "dfcaverns_jungle_fern_bark.png", + "dfcaverns_jungle_fern_bark.png", + "dfcaverns_jungle_fern_bark.png", + "dfcaverns_jungle_fern_bark.png", + "dfcaverns_jungle_fern_bark.png", + }, + paramtype2 = "facedir", + drawtype = "mesh", + mesh = "dfcaverns_fern_slant_full.obj", + paramtype = "light", + drop = "df_primordial_items:giant_fern_tree", + groups = {choppy = 2, tree = 1, oddly_breakable_by_hand=1, flammable = 2}, + sounds = default.node_sound_wood_defaults(), + on_place = minetest.rotate_node, + selection_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.75, 0.5, 0, 0.25}, + {-0.5, 0, -1.25, 0.5, 0.5, -0.25}, + }, + }, + collision_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.75, 0.5, 0, 0.25}, + {-0.5, 0, -1.25, 0.5, 0.5, -0.25}, + }, + }, +}) + +minetest.register_node("df_primordial_items:giant_fern_leaves", { + description = S("Giant Fern Leaves"), + _doc_items_longdesc = df_primordial_items.doc.giant_fern_desc, + _doc_items_usagehelp = df_primordial_items.doc.giant_fern_usage, + tiles = {"dfcaverns_jungle_fern_leaves_01.png"}, + visual_scale = 1.41, + inventory_image = "dfcaverns_jungle_fern_leaves_01.png", + wield_image = "dfcaverns_jungle_fern_leaves_01.png", + groups = {snappy = 3, leafdecay = 3, flammable = 2, leaves = 1}, + is_ground_content = false, + paramtype = "light", + drawtype = "plantlike", + walkable = false, + waving = 2, + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, + after_place_node = default.after_place_leaves, +}) + +------------------------------------------------------------------------------------ +-- Schematics + + +local n1 = { name = "air", prob = 0 } +local n2 = { name = "df_primordial_items:giant_fern_leaves", param2 = 1 } +local n3 = { name = "df_primordial_items:giant_fern_tree_slant_top" } +local n4 = { name = "df_primordial_items:giant_fern_tree_slant_full" } +local n5 = { name = "df_primordial_items:giant_fern_tree" } +local n6 = { name = "df_primordial_items:giant_fern_tree_slant_bottom" } + +local fern_6_nodes_tall = { + size = {y = 6, x = 5, z = 4}, + data = { + n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, + n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n2, n1, n1, n1, n1, n1, n1, + n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, + n2, n1, n2, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, + n1, n1, n1, n1, n1, n1, n1, n2, n2, n3, n2, n2, n1, n1, n4, n1, n1, + n1, n1, n1, n1, n1, n1, n1, n5, n1, n1, n1, n2, n5, n2, n1, n2, n2, + n6, n2, n2, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, + n1, + } +} + +local fern_9_nodes_tall = { + size = {y = 9, x = 5, z = 5}, + data = { + n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, + n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, + n1, n1, n1, n1, n1, n1, n1, n1, n2, n1, n1, n1, n1, n1, n1, n1, n1, + n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, + n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n2, n1, n2, n1, + n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, + n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, + n1, n2, n2, n3, n2, n2, n1, n1, n4, n1, n1, n1, n1, n1, n1, n1, n1, + n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, + n1, n1, n2, n2, n3, n2, n2, n2, n2, n6, n2, n2, n1, n1, n1, n1, n1, + n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n5, n1, n1, n1, n1, + n5, n1, n1, n1, n2, n5, n2, n1, n1, n2, n6, n2, n1, n1, n1, n1, n1, + n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, n1, + n1, n1, n1, n1, + } +} diff --git a/df_primordial_items/init.lua b/df_primordial_items/init.lua new file mode 100644 index 0000000..2418e0f --- /dev/null +++ b/df_primordial_items/init.lua @@ -0,0 +1,8 @@ +df_primordial_items = {} +df_primordial_items.doc = {} + +local MP = minetest.get_modpath(minetest.get_current_modname()) + +dofile(MP.."/jungle_nodes.lua") +dofile(MP.."/giant_fern.lua") +dofile(MP.."/fungal_nodes.lua") diff --git a/df_primordial_items/intllib.lua b/df_primordial_items/intllib.lua new file mode 100644 index 0000000..6669d72 --- /dev/null +++ b/df_primordial_items/intllib.lua @@ -0,0 +1,45 @@ + +-- Fallback functions for when `intllib` is not installed. +-- Code released under Unlicense . + +-- Get the latest version of this file at: +-- https://raw.githubusercontent.com/minetest-mods/intllib/master/lib/intllib.lua + +local function format(str, ...) + local args = { ... } + local function repl(escape, open, num, close) + if escape == "" then + local replacement = tostring(args[tonumber(num)]) + if open == "" then + replacement = replacement..close + end + return replacement + else + return "@"..open..num..close + end + end + return (str:gsub("(@?)@(%(?)(%d+)(%)?)", repl)) +end + +local gettext, ngettext +if minetest.get_modpath("intllib") then + if intllib.make_gettext_pair then + -- New method using gettext. + gettext, ngettext = intllib.make_gettext_pair() + else + -- Old method using text files. + gettext = intllib.Getter() + end +end + +-- Fill in missing functions. + +gettext = gettext or function(msgid, ...) + return format(msgid, ...) +end + +ngettext = ngettext or function(msgid, msgid_plural, n, ...) + return format(n==1 and msgid or msgid_plural, ...) +end + +return gettext, ngettext diff --git a/df_primordial_items/jungle_nodes.lua b/df_primordial_items/jungle_nodes.lua new file mode 100644 index 0000000..6195280 --- /dev/null +++ b/df_primordial_items/jungle_nodes.lua @@ -0,0 +1,423 @@ +-- internationalization boilerplate +local MP = minetest.get_modpath(minetest.get_current_modname()) +local S, NS = dofile(MP.."/intllib.lua") + + +----------------------------------------------------- +-- Ferns + +minetest.register_node("df_primordial_items:fern_1", { + description = S("Primordial Fern"), + _doc_items_longdesc = df_primordial_items.doc.fern_desc, + _doc_items_usagehelp = df_primordial_items.doc.fern_usage, + tiles = {"dfcaverns_jungle_fern_01.png"}, + inventory_image = "dfcaverns_jungle_fern_01.png", + wield_image = "dfcaverns_jungle_fern_01.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + visual_scale = 1.69, + paramtype = "light", + drawtype = "plantlike", + walkable = false, + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, +}) + +minetest.register_node("df_primordial_items:fern_2", { + description = S("Primordial Fern"), + _doc_items_longdesc = df_primordial_items.doc.fern_desc, + _doc_items_usagehelp = df_primordial_items.doc.fern_usage, + tiles = {"dfcaverns_jungle_fern_02.png"}, + inventory_image = "dfcaverns_jungle_fern_02.png", + wield_image = "dfcaverns_jungle_fern_02.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + paramtype = "light", + drawtype = "plantlike", + walkable = false, + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, +}) + +minetest.register_node("df_primordial_items:fern_3", { + description = S("Primordial Fern"), + _doc_items_longdesc = df_primordial_items.doc.fern_desc, + _doc_items_usagehelp = df_primordial_items.doc.fern_usage, + tiles = {"dfcaverns_jungle_fern_03.png"}, + inventory_image = "dfcaverns_jungle_fern_03.png", + wield_image = "dfcaverns_jungle_fern_03.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + paramtype = "light", + drawtype = "plantlike", + walkable = false, + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, +}) + +--------------------------------------------------------- +-- Glowing plants + +minetest.register_node("df_primordial_items:glow_plant_1", { + description = S("Primordial Flower"), + _doc_items_longdesc = df_primordial_items.doc.glow_plant_desc, + _doc_items_usagehelp = df_primordial_items.doc.glow_plant_usage, + tiles = {"dfcaverns_jungle_flower_01.png"}, + inventory_image = "dfcaverns_jungle_flower_01.png", + wield_image = "dfcaverns_jungle_flower_01.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + paramtype = "light", + drawtype = "plantlike", + walkable = false, + light_source = 6, + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, +}) + +minetest.register_node("df_primordial_items:glow_plant_2", { + description = S("Primordial Jungle Pod"), + _doc_items_longdesc = df_primordial_items.doc.glow_plant_desc, + _doc_items_usagehelp = df_primordial_items.doc.glow_plant_usage, + tiles = {"dfcaverns_jungle_glow_plant_01.png"}, + inventory_image = "dfcaverns_jungle_glow_plant_01.png", + wield_image = "dfcaverns_jungle_glow_plant_01.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + paramtype = "light", + drawtype = "plantlike", + walkable = false, + light_source = 6, + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, +}) + +minetest.register_node("df_primordial_items:glow_plant_3", { + description = S("Primordial Jungle Pod"), + _doc_items_longdesc = df_primordial_items.doc.glow_plant_desc, + _doc_items_usagehelp = df_primordial_items.doc.glow_plant_usage, + tiles = {"dfcaverns_jungle_glow_plant_02.png"}, + inventory_image = "dfcaverns_jungle_glow_plant_02.png", + wield_image = "dfcaverns_jungle_glow_plant_02.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + paramtype = "light", + drawtype = "plantlike", + walkable = false, + light_source = 6, + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, +}) + + +------------------------------------------------------------------- +-- Grass + +minetest.register_node("df_primordial_items:jungle_grass_1", { + description = S("Primordial Jungle Grass"), + _doc_items_longdesc = df_primordial_items.doc.grass_desc, + _doc_items_usagehelp = df_primordial_items.doc.grass_usage, + tiles = {"dfcaverns_jungle_grass_01.png"}, + inventory_image = "dfcaverns_jungle_grass_01.png", + wield_image = "dfcaverns_jungle_grass_01.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + paramtype = "light", + drawtype = "plantlike", + walkable = false, + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, +}) + +minetest.register_node("df_primordial_items:jungle_grass_2", { + description = S("Primordial Jungle Grass"), + _doc_items_longdesc = df_primordial_items.doc.grass_desc, + _doc_items_usagehelp = df_primordial_items.doc.grass_usage, + tiles = {"dfcaverns_jungle_grass_02.png"}, + inventory_image = "dfcaverns_jungle_grass_02.png", + wield_image = "dfcaverns_jungle_grass_02.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + paramtype = "light", + drawtype = "plantlike", + walkable = false, + place_param2 = 3, + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, +}) + +minetest.register_node("df_primordial_items:jungle_grass_3", { + description = S("Primordial Jungle Grass"), + _doc_items_longdesc = df_primordial_items.doc.grass_desc, + _doc_items_usagehelp = df_primordial_items.doc.grass_usage, + tiles = {"dfcaverns_jungle_grass_03.png"}, + inventory_image = "dfcaverns_jungle_grass_03.png", + wield_image = "dfcaverns_jungle_grass_03.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + paramtype = "light", + drawtype = "plantlike", + walkable = false, + place_param2 = 3, + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, +}) + + +----------------------------------------------------------------------------------------- +-- Ivy + +minetest.register_node("df_primordial_items:jungle_ivy", { + description = S("Primordial Jungle Ivy"), + _doc_items_longdesc = df_primordial_items.doc.ivy_desc, + _doc_items_usagehelp = df_primordial_items.doc.ivy_usage, + tiles = {"dfcaverns_jungle_ivy_01.png"}, + inventory_image = "dfcaverns_jungle_ivy_01.png", + wield_image = "dfcaverns_jungle_ivy_01.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + paramtype = "light", + paramtype2 = "wallmounted", + drawtype = "signlike", + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, + walkable = false, + climbable = true, + is_ground_content = false, + selection_box = { + type = "wallmounted", + }, +}) + +-------------------------------------------------------------------------------------------------- +-- Jungle tree + +-- Leaves +minetest.register_node("df_primordial_items:jungle_leaves", { + description = S("Primordial Jungle Tree Leaves"), + _doc_items_longdesc = df_primordial_items.doc.leaves_desc, + _doc_items_usagehelp = df_primordial_items.doc.leaves_usage, + drawtype = "plantlike", + walkable = false, + waving = 2, + tiles = {"dfcaverns_jungle_leaves_01.png"}, + inventory_image = "dfcaverns_jungle_leaves_01.png", + wield_image = "dfcaverns_jungle_leaves_01.png", + paramtype = "light", + is_ground_content = false, + groups = {snappy = 3, leafdecay = 3, flammable = 2, leaves = 1}, + sounds = default.node_sound_leaves_defaults(), + after_place_node = default.after_place_leaves, +}) + +minetest.register_node("df_primordial_items:jungle_leaves_glowing", { + description = S("Phosphorescent Primordial Jungle Tree Leaves"), + _doc_items_longdesc = df_primordial_items.doc.glowing_leaves_desc, + _doc_items_usagehelp = df_primordial_items.doc.glowing_leaves_usage, + drawtype = "plantlike", + walkable = false, + waving = 2, + tiles = {"dfcaverns_jungle_leaves_02.png"}, + inventory_image = "dfcaverns_jungle_leaves_02.png", + wield_image = "dfcaverns_jungle_leaves_02.png", + paramtype = "light", + is_ground_content = false, + light_source = 4, + groups = {snappy = 3, leafdecay = 3, flammable = 2, leaves = 1}, + sounds = default.node_sound_leaves_defaults(), + after_place_node = default.after_place_leaves, +}) + +-- Trunk + +minetest.register_node("df_primordial_items:jungle_tree", { + description = S("Primordial Jungle Tree"), + _doc_items_longdesc = df_primordial_items.doc.tree_desc, + _doc_items_usagehelp = df_primordial_items.doc.tree_usage, + tiles = {"dfcaverns_jungle_wood_02.png", "dfcaverns_jungle_wood_02.png", "dfcaverns_jungle_wood_01.png"}, + paramtype2 = "facedir", + is_ground_content = false, + groups = {tree = 1, choppy = 2, oddly_breakable_by_hand = 1, flammable = 2}, + sounds = default.node_sound_wood_defaults(), + on_place = minetest.rotate_node +}) + +minetest.register_node("df_primordial_items:jungle_tree_mossy", { + description = S("Mossy Primordial Jungle Tree"), + _doc_items_longdesc = df_primordial_items.doc.tree_desc, + _doc_items_usagehelp = df_primordial_items.doc.tree_usage, + tiles = {"dfcaverns_jungle_wood_02.png", "dfcaverns_jungle_wood_02.png", "dfcaverns_jungle_wood_03.png"}, + paramtype2 = "facedir", + is_ground_content = false, + groups = {tree = 1, choppy = 2, oddly_breakable_by_hand = 1, flammable = 2}, + sounds = default.node_sound_wood_defaults(), + on_place = minetest.rotate_node +}) + +minetest.register_node("df_primordial_items:jungle_tree_glowing", { + description = S("Phosphorescent Primordial Jungle Tree"), + _doc_items_longdesc = df_primordial_items.doc.tree_glowing_desc, + _doc_items_usagehelp = df_primordial_items.doc.tree_glowing_usage, + tiles = {"dfcaverns_jungle_wood_02.png", "dfcaverns_jungle_wood_02.png", "dfcaverns_jungle_wood_04.png"}, + paramtype2 = "facedir", + is_ground_content = false, + light_source = 4, + groups = {tree = 1, choppy = 2, oddly_breakable_by_hand = 1, flammable = 2}, + sounds = default.node_sound_wood_defaults(), + on_place = minetest.rotate_node +}) + +------------------------------------------------------------------------------------- +-- Small jungle mushrooms + +minetest.register_node("df_primordial_items:jungle_mushroom_1", { + description = S("Primordial Jungle Mushroom"), + _doc_items_longdesc = df_primordial_items.doc.small_mushroom_desc, + _doc_items_usagehelp = df_primordial_items.doc.small_mushroom_usage, + tiles = {"dfcaverns_jungle_mushroom_01.png"}, + inventory_image = "dfcaverns_jungle_mushroom_01.png", + wield_image = "dfcaverns_jungle_mushroom_01.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + paramtype = "light", + drawtype = "plantlike", + walkable = false, + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, +}) + +minetest.register_node("df_primordial_items:jungle_mushroom_2", { + description = S("Primordial Jungle Mushroom"), + _doc_items_longdesc = df_primordial_items.doc.small_mushroom_desc, + _doc_items_usagehelp = df_primordial_items.doc.small_mushroom_usage, + tiles = {"dfcaverns_jungle_mushroom_02.png"}, + inventory_image = "dfcaverns_jungle_mushroom_02.png", + wield_image = "dfcaverns_jungle_mushroom_02.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + paramtype = "light", + drawtype = "plantlike", + walkable = false, + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, +}) + +------------------------------------------------------------------------------------------ +-- Big jungle mushroom + +minetest.register_node("df_primordial_items:jungle_mushroom_trunk", { + description = S("Primordial Jungle Mushroom Trunk"), + _doc_items_longdesc = df_primordial_items.doc.big_mushroom_desc, + _doc_items_usagehelp = df_primordial_items.doc.big_mushroom_usage, + tiles = {"dfcaverns_jungle_mushroom_stem.png", "dfcaverns_jungle_mushroom_stem.png", "dfcaverns_jungle_mushroom_stem_02.png"}, + paramtype2 = "facedir", + is_ground_content = false, + groups = {tree = 1, choppy = 2, oddly_breakable_by_hand = 1, flammable = 2}, + sounds = default.node_sound_wood_defaults(), + on_place = minetest.rotate_node +}) + +minetest.register_node("df_primordial_items:jungle_mushroom_cap", { + description = S("Primordial Jungle Mushroom Cap"), + _doc_items_longdesc = df_primordial_items.doc.big_mushroom_desc, + _doc_items_usagehelp = df_primordial_items.doc.big_mushroom_usage, + tiles = {"dfcaverns_jungle_mushroom_top_01.png", "dfcaverns_jungle_mushroom_top_02.png", "dfcaverns_jungle_mushroom_top_01.png"}, + paramtype2 = "facedir", + is_ground_content = false, + groups = {tree = 1, choppy = 2, oddly_breakable_by_hand = 1, flammable = 2}, + sounds = default.node_sound_wood_defaults(), + on_place = minetest.rotate_node +}) + +---------------------------------------------------------------------------------------- +-- Dirt + +minetest.register_node("df_primordial_items:dirt_with_jungle_grass", { + description = S("Dirt With Primordial Jungle Grass"), + tiles = {"dfcaverns_jungle_plant_grass_node_01.png"}, + groups = {crumbly = 3, soil = 1, spreading_dirt_type = 1}, + drops = "default:dirt", + sounds = default.node_sound_dirt_defaults(), +}) +minetest.register_node("df_primordial_items:plant_matter", { + description = S("Primordial Plant Matter"), + _doc_items_longdesc = df_primordial_items.doc.plant_matter_desc, + _doc_items_usagehelp = df_primordial_items.doc.plant_matter_usage, + tiles = {"dfcaverns_jungle_plant_matter_01.png"}, + groups = {crumbly = 3, soil = 1}, + sounds = default.node_sound_dirt_defaults(), +}) +minetest.register_node("df_primordial_items:dirt", { + description = S("Packed Primordial Jungle Roots"), + _doc_items_longdesc = df_primordial_items.doc.packed_roots_desc, + _doc_items_usagehelp = df_primordial_items.doc.packed_roots_usage, + tiles = {"dfcaverns_jungle_plant_packed_roots_01.png"}, + paramtype2 = "facedir", + is_ground_content = false, + groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, wood = 1}, + sounds = default.node_sound_wood_defaults(), +}) + +---------------------------------------------------------------------------------------- +-- Roots + +minetest.register_node("df_primordial_items:jungle_roots_1", { + description = S("Primordial Jungle Roots"), + _doc_items_longdesc = df_primordial_items.doc.roots_desc, + _doc_items_usagehelp = df_primordial_items.doc.roots_usage, + tiles = {"dfcaverns_jungle_root_01.png"}, + inventory_image = "dfcaverns_jungle_root_01.png", + wield_image = "dfcaverns_jungle_root_01.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + paramtype = "light", + paramtype2 = "wallmounted", + drawtype = "signlike", + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, + walkable = false, + climbable = true, + is_ground_content = false, + selection_box = { + type = "wallmounted", + }, +}) + +minetest.register_node("df_primordial_items:jungle_roots_2", { + description = S("Primordial Jungle Root"), + _doc_items_longdesc = df_primordial_items.doc.roots_desc, + _doc_items_usagehelp = df_primordial_items.doc.roots_usage, + tiles = {"dfcaverns_jungle_root_02.png"}, + inventory_image = "dfcaverns_jungle_root_02.png", + wield_image = "dfcaverns_jungle_root_02.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + paramtype = "light", + drawtype = "plantlike", + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, + walkable = false, + climbable = true, +}) + +-------------------------------------------------------------------------------- +-- Thorns + +minetest.register_node("df_primordial_items:jungle_thorns", { + description = S("Primordial Jungle Thorns"), + _doc_items_longdesc = df_primordial_items.doc.thorn_desc, + _doc_items_usagehelp = df_primordial_items.doc.thorn_usage, + tiles = {"dfcaverns_jungle_thorns_01.png"}, + visual_scale = 1.41, + inventory_image = "dfcaverns_jungle_thorns_01.png", + wield_image = "dfcaverns_jungle_thorns_01.png", + groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1}, + paramtype = "light", + drawtype = "plantlike", + walkable = false, + place_param2 = 3, + sounds = default.node_sound_leaves_defaults(), + use_texture_alpha = true, + sunlight_propagates = true, + damage_per_second = 1, +}) \ No newline at end of file diff --git a/df_primordial_items/license.txt b/df_primordial_items/license.txt new file mode 100644 index 0000000..d1b3d1c --- /dev/null +++ b/df_primordial_items/license.txt @@ -0,0 +1,24 @@ +Sounds and textures are under various licenses, see the license.txt file in the /sounds and /textures directories for details. + +License for Code +---------------- + +Copyright (C) 2019 FaceDeer + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/df_primordial_items/locale/template.pot b/df_primordial_items/locale/template.pot new file mode 100644 index 0000000..9aa6ef7 --- /dev/null +++ b/df_primordial_items/locale/template.pot @@ -0,0 +1,154 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2019-08-07 23:25-0600\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=CHARSET\n" +"Content-Transfer-Encoding: 8bit\n" + +#: df_primordial_items\fungal_nodes.lua:10 +msgid "Primordial Mushroom Trunk" +msgstr "" + +#: df_primordial_items\fungal_nodes.lua:22 +msgid "Primordial Mushroom Cap" +msgstr "" + +#: df_primordial_items\fungal_nodes.lua:34 +msgid "Primordial Mushroom Gills" +msgstr "" + +#: df_primordial_items\fungal_nodes.lua:50 +msgid "Glowing Primordial Mushroom Gills" +msgstr "" + +#: df_primordial_items\fungal_nodes.lua:70 +msgid "Primordial Fungal Lantern" +msgstr "" + +#: df_primordial_items\fungal_nodes.lua:84 +msgid "Primordial Fungal Lantern Stalk" +msgstr "" + +#: df_primordial_items\fungal_nodes.lua:101 +msgid "Primordial Fungal Grass" +msgstr "" + +#: df_primordial_items\fungal_nodes.lua:117 +#: df_primordial_items\jungle_nodes.lua:117 +#: df_primordial_items\jungle_nodes.lua:133 +#: df_primordial_items\jungle_nodes.lua:150 +msgid "Primordial Jungle Grass" +msgstr "" + +#: df_primordial_items\fungal_nodes.lua:136 +#: df_primordial_items\fungal_nodes.lua:153 +#: df_primordial_items\fungal_nodes.lua:170 +msgid "Primordial Fungal Orb" +msgstr "" + +#: df_primordial_items\fungal_nodes.lua:187 +msgid "Primordial Fungal Pod" +msgstr "" + +#: df_primordial_items\fungal_nodes.lua:207 +msgid "Dirt With Primordial Mycelium" +msgstr "" + +#: df_primordial_items\giant_fern.lua:6 +#: df_primordial_items\giant_fern.lua:20 +#: df_primordial_items\giant_fern.lua:56 +#: df_primordial_items\giant_fern.lua:92 +msgid "Giant Fern Stem" +msgstr "" + +#: df_primordial_items\giant_fern.lua:128 +msgid "Giant Fern Leaves" +msgstr "" + +#: df_primordial_items\jungle_nodes.lua:10 +#: df_primordial_items\jungle_nodes.lua:27 +#: df_primordial_items\jungle_nodes.lua:43 +msgid "Primordial Fern" +msgstr "" + +#: df_primordial_items\jungle_nodes.lua:62 +msgid "Primordial Flower" +msgstr "" + +#: df_primordial_items\jungle_nodes.lua:79 +#: df_primordial_items\jungle_nodes.lua:96 +msgid "Primordial Jungle Pod" +msgstr "" + +#: df_primordial_items\jungle_nodes.lua:171 +msgid "Primordial Jungle Ivy" +msgstr "" + +#: df_primordial_items\jungle_nodes.lua:197 +msgid "Primordial Jungle Tree Leaves" +msgstr "" + +#: df_primordial_items\jungle_nodes.lua:214 +msgid "Phosphorescent Primordial Jungle Tree Leaves" +msgstr "" + +#: df_primordial_items\jungle_nodes.lua:234 +msgid "Primordial Jungle Tree" +msgstr "" + +#: df_primordial_items\jungle_nodes.lua:246 +msgid "Mossy Primordial Jungle Tree" +msgstr "" + +#: df_primordial_items\jungle_nodes.lua:258 +msgid "Phosphorescent Primordial Jungle Tree" +msgstr "" + +#: df_primordial_items\jungle_nodes.lua:274 +#: df_primordial_items\jungle_nodes.lua:290 +msgid "Primordial Jungle Mushroom" +msgstr "" + +#: df_primordial_items\jungle_nodes.lua:309 +msgid "Primordial Jungle Mushroom Trunk" +msgstr "" + +#: df_primordial_items\jungle_nodes.lua:321 +msgid "Primordial Jungle Mushroom Cap" +msgstr "" + +#: df_primordial_items\jungle_nodes.lua:336 +msgid "Dirt With Primordial Jungle Grass" +msgstr "" + +#: df_primordial_items\jungle_nodes.lua:343 +msgid "Primordial Plant Matter" +msgstr "" + +#: df_primordial_items\jungle_nodes.lua:351 +msgid "Packed Primordial Jungle Roots" +msgstr "" + +#: df_primordial_items\jungle_nodes.lua:365 +msgid "Primordial Jungle Roots" +msgstr "" + +#: df_primordial_items\jungle_nodes.lua:387 +msgid "Primordial Jungle Root" +msgstr "" + +#: df_primordial_items\jungle_nodes.lua:407 +msgid "Primordial Jungle Thorns" +msgstr "" diff --git a/df_primordial_items/locale/update.bat b/df_primordial_items/locale/update.bat new file mode 100644 index 0000000..48b25ab --- /dev/null +++ b/df_primordial_items/locale/update.bat @@ -0,0 +1,6 @@ +@echo off +setlocal ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION +cd .. +set LIST= +for /r %%X in (*.lua) do set LIST=!LIST! %%X +..\..\intllib\tools\xgettext.bat %LIST% \ No newline at end of file diff --git a/df_primordial_items/mod.conf b/df_primordial_items/mod.conf new file mode 100644 index 0000000..6fa12d2 --- /dev/null +++ b/df_primordial_items/mod.conf @@ -0,0 +1,3 @@ +name = df_primordial_items +description = A collection of flora found in the "primordial" cavern layer of DF Caverns +depends = default \ No newline at end of file diff --git a/df_primordial_items/models/dfcaverns_fern_slant.obj b/df_primordial_items/models/dfcaverns_fern_slant.obj new file mode 100644 index 0000000..c856ac9 --- /dev/null +++ b/df_primordial_items/models/dfcaverns_fern_slant.obj @@ -0,0 +1,74 @@ +# Blender v2.79 (sub 0) OBJ File: '' +# www.blender.org +g tunnel_tube_slant_2_Bottom_tunnel_tube_slant_Cube.002_Bottom +v 0.500000 -0.500000 -0.500000 +v 0.500000 -0.500000 0.500000 +v -0.500000 -0.500000 -0.500000 +v -0.500000 -0.500000 0.500000 +vt 1.000000 1.000000 +vt 1.000000 0.000000 +vt -0.000000 0.000000 +vt 0.000000 1.000000 +vn 0.0000 -1.0000 -0.0000 +s 1 +f 1/1/1 2/2/1 4/3/1 3/4/1 +g tunnel_tube_slant_5_Front_tunnel_tube_slant_Cube.002_Front +v 0.500000 -0.500000 0.500000 +v 0.500000 0.500000 0.000000 +v -0.500000 0.500000 0.000000 +v -0.500000 -0.500000 0.500000 +vt 1.000000 0.000000 +vt 1.000000 1.000000 +vt -0.000000 1.000000 +vt -0.000000 0.000000 +vn 0.0000 0.4472 0.8944 +s 1 +f 5/5/2 6/6/2 7/7/2 8/8/2 +g tunnel_tube_slant_1_Top_tunnel_tube_slant_Cube.002_Top +v 0.500000 0.500000 -1.000000 +v -0.500000 0.500000 -1.000000 +v 0.500000 0.500000 0.000000 +v -0.500000 0.500000 0.000000 +vt 1.000000 1.000000 +vt 0.000000 1.000000 +vt -0.000000 0.000000 +vt 1.000000 -0.000000 +vn 0.0000 1.0000 0.0000 +s 1 +f 9/9/3 10/10/3 12/11/3 11/12/3 +g tunnel_tube_slant_3_Left_tunnel_tube_slant_Cube.002_Left +v -0.500000 -0.500000 0.500000 +v -0.500000 0.500000 0.000000 +v -0.500000 0.500000 -1.000000 +v -0.500000 -0.500000 -0.500000 +vt -0.000000 0.000000 +vt 0.500000 1.000000 +vt 1.500000 1.000000 +vt 1.000000 0.000000 +vn -1.0000 0.0000 0.0000 +s 1 +f 13/13/4 14/14/4 15/15/4 16/16/4 +g tunnel_tube_slant_6_Back_tunnel_tube_slant_Cube.002_Back +v 0.500000 0.500000 -1.000000 +v 0.500000 -0.500000 -0.500000 +v -0.500000 -0.500000 -0.500000 +v -0.500000 0.500000 -1.000000 +vt 1.000000 1.000000 +vt 1.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 1.000000 +vn 0.0000 -0.4472 -0.8944 +s 1 +f 17/17/5 18/18/5 19/19/5 20/20/5 +g tunnel_tube_slant_4_Right_tunnel_tube_slant_Cube.002_Right +v 0.500000 -0.500000 -0.500000 +v 0.500000 0.500000 -1.000000 +v 0.500000 0.500000 0.000000 +v 0.500000 -0.500000 0.500000 +vt 1.000000 0.000000 +vt 1.500000 1.000000 +vt 0.500000 1.000000 +vt 0.000000 0.000000 +vn 1.0000 0.0000 0.0000 +s 1 +f 21/21/6 22/22/6 23/23/6 24/24/6 diff --git a/df_primordial_items/models/dfcaverns_fern_slant_2.obj b/df_primordial_items/models/dfcaverns_fern_slant_2.obj new file mode 100644 index 0000000..c736027 --- /dev/null +++ b/df_primordial_items/models/dfcaverns_fern_slant_2.obj @@ -0,0 +1,74 @@ +# Blender v2.79 (sub 0) OBJ File: '' +# www.blender.org +g tunnel_tube_slant_Cube.002_Bottom.001 +v 0.500000 -0.500000 -0.000000 +v 0.500000 -0.500000 1.000000 +v -0.500000 -0.500000 -0.000000 +v -0.500000 -0.500000 1.000000 +vt 1.000000 1.000000 +vt 1.000000 0.000000 +vt -0.000000 0.000000 +vt 0.000000 1.000000 +vn 0.0000 -1.0000 -0.0000 +s 1 +f 1/1/1 2/2/1 4/3/1 3/4/1 +g tunnel_tube_slant_Cube.002_Front.001 +v 0.500000 -0.500000 1.000000 +v 0.500000 0.500000 0.500000 +v -0.500000 0.500000 0.500000 +v -0.500000 -0.500000 1.000000 +vt 1.000000 0.000000 +vt 1.000000 1.000000 +vt 0.000000 1.000000 +vt -0.000000 0.000000 +vn 0.0000 0.4472 0.8944 +s 1 +f 5/5/2 6/6/2 7/7/2 8/8/2 +g tunnel_tube_slant_Cube.002_Top.001 +v 0.500000 0.500000 -0.500000 +v -0.500000 0.500000 -0.500000 +v 0.500000 0.500000 0.500000 +v -0.500000 0.500000 0.500000 +vt 1.000000 1.000000 +vt 0.000000 1.000000 +vt -0.000000 0.000000 +vt 1.000000 -0.000000 +vn 0.0000 1.0000 0.0000 +s 1 +f 9/9/3 10/10/3 12/11/3 11/12/3 +g tunnel_tube_slant_Cube.002_Left.001 +v -0.500000 -0.500000 1.000000 +v -0.500000 0.500000 0.500000 +v -0.500000 0.500000 -0.500000 +v -0.500000 -0.500000 -0.000000 +vt -0.500000 0.000000 +vt 0.000000 1.000000 +vt 1.000000 1.000000 +vt 0.500000 0.000000 +vn -1.0000 -0.0000 0.0000 +s 1 +f 13/13/4 14/14/4 15/15/4 16/16/4 +g tunnel_tube_slant_Cube.002_Back.001 +v 0.500000 0.500000 -0.500000 +v 0.500000 -0.500000 -0.000000 +v -0.500000 -0.500000 -0.000000 +v -0.500000 0.500000 -0.500000 +vt 1.000000 1.000000 +vt 1.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 1.000000 +vn 0.0000 -0.4472 -0.8944 +s 1 +f 17/17/5 18/18/5 19/19/5 20/20/5 +g tunnel_tube_slant_Cube.002_Right.001 +v 0.500000 -0.500000 -0.000000 +v 0.500000 0.500000 -0.500000 +v 0.500000 0.500000 0.500000 +v 0.500000 -0.500000 1.000000 +vt 0.500000 0.000000 +vt 1.000000 1.000000 +vt -0.000000 1.000000 +vt -0.500000 0.000000 +vn 1.0000 -0.0000 0.0000 +s 1 +f 21/21/6 22/22/6 23/23/6 24/24/6 diff --git a/df_primordial_items/models/dfcaverns_fern_slant_full.obj b/df_primordial_items/models/dfcaverns_fern_slant_full.obj new file mode 100644 index 0000000..b410d18 --- /dev/null +++ b/df_primordial_items/models/dfcaverns_fern_slant_full.obj @@ -0,0 +1,74 @@ +# Blender v2.79 (sub 0) OBJ File: '' +# www.blender.org +g tunnel_tube_slant_Cube.002_Bottom.002 +v 0.500000 -0.500000 -0.500000 +v 0.500000 -0.500000 0.500000 +v -0.500000 -0.500000 -0.500000 +v -0.500000 -0.500000 0.500000 +vt 1.000000 1.000000 +vt 1.000000 0.000000 +vt -0.000000 0.000000 +vt 0.000000 1.000000 +vn 0.0000 -1.0000 -0.0000 +s 1 +f 1/1/1 2/2/1 4/3/1 3/4/1 +g tunnel_tube_slant_Cube.002_Front.002 +v 0.500000 -0.500000 0.500000 +v 0.500000 0.500000 -0.500000 +v -0.500000 0.500000 -0.500000 +v -0.500000 -0.500000 0.500000 +vt 1.000000 0.000000 +vt 1.000000 1.000000 +vt -0.000000 1.000000 +vt -0.000000 0.000000 +vn 0.0000 0.7071 0.7071 +s 1 +f 5/5/2 6/6/2 7/7/2 8/8/2 +g tunnel_tube_slant_Cube.002_Top.002 +v 0.500000 0.500000 -1.500000 +v -0.500000 0.500000 -1.500000 +v 0.500000 0.500000 -0.500000 +v -0.500000 0.500000 -0.500000 +vt 1.000000 1.000000 +vt 0.000000 1.000000 +vt -0.000000 0.000000 +vt 1.000000 -0.000000 +vn 0.0000 1.0000 0.0000 +s 1 +f 9/9/3 10/10/3 12/11/3 11/12/3 +g tunnel_tube_slant_Cube.002_Left.002 +v -0.500000 -0.500000 0.500000 +v -0.500000 0.500000 -0.500000 +v -0.500000 0.500000 -1.500000 +v -0.500000 -0.500000 -0.500000 +vt -0.000000 0.000000 +vt 1.000000 1.000000 +vt 2.000000 1.000000 +vt 1.000000 0.000000 +vn -1.0000 0.0000 0.0000 +s 1 +f 13/13/4 14/14/4 15/15/4 16/16/4 +g tunnel_tube_slant_Cube.002_Back.002 +v 0.500000 0.500000 -1.500000 +v 0.500000 -0.500000 -0.500000 +v -0.500000 -0.500000 -0.500000 +v -0.500000 0.500000 -1.500000 +vt 1.000000 1.000000 +vt 1.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 1.000000 +vn 0.0000 -0.7071 -0.7071 +s 1 +f 17/17/5 18/18/5 19/19/5 20/20/5 +g tunnel_tube_slant_Cube.002_Right.002 +v 0.500000 -0.500000 -0.500000 +v 0.500000 0.500000 -1.500000 +v 0.500000 0.500000 -0.500000 +v 0.500000 -0.500000 0.500000 +vt 1.000000 0.000000 +vt 2.000000 1.000000 +vt 1.000000 1.000000 +vt 0.000000 0.000000 +vn 1.0000 -0.0000 0.0000 +s 1 +f 21/21/6 22/22/6 23/23/6 24/24/6 diff --git a/df_primordial_items/textures/dfcaverns_jungle_fern_01.png b/df_primordial_items/textures/dfcaverns_jungle_fern_01.png new file mode 100644 index 0000000000000000000000000000000000000000..bf07eecc5a1e2f25e494769d049728f74659cc7e GIT binary patch literal 421 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbMf$pD`aS0K%5tifik!)l<$qNB{L zF2^J%&Z?)%YN*bvBEx2?#jGmJZmrK@Z_Mdv%IOS5X3QG$Y-ZX_@)9gsip=WrY^K^Q z+DhD>)=Y9@EIKMIx+=`7GECAU%xbc%h8nC!8q8{PtR|XlCYnsLVoZvX%o=iR=Gx4P zQtXy`>{j|L8uIMc2JAM59JYoWc19fbM$Af591g}D4knxq#+(i&ELuvOPNvMt(k$A_ zT&@;e9#-6*RxCP7y#5Znflhp(Zv5fyg0Vi+uFqBmdWNwi$S;_|;n|HeAg9aI#WAEJ zZtdCDjfWf<91fO?mmj@*H+KJ*coAcjk^^QNY7S?Jy?pY^FL=Y!rCMSQb!N+18oF04 z30N`p#l*>M5_&V8iewBvmQ|Z<-N(3DI^O5tefzmVUlo(qDQwvL=nmgRfl0q>KTQl% zQr}qjj@MV7Uv>f)mw*gI^R^@G35D9}uV-y9Dtx)#k6{nPyEZPKwCPGRKvyw%y85}S Ib4q9e09ROQ+yDRo literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_jungle_fern_02.png b/df_primordial_items/textures/dfcaverns_jungle_fern_02.png new file mode 100644 index 0000000000000000000000000000000000000000..07fec7156d2617459eb35acad12cbcbe15337c7a GIT binary patch literal 241 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbK}NPtg>E0AV16lZc&VAK&|RN!Sa z5@$4$U{vL2a#mt;Q)YHkX4DsBl;dGk6<|~oU^J0rG?ipBmu9k%X0nuKvXN!7kz=w0 zB6&s)Ax3Rs21!mvJ<(aS+jKzYmIV0)GdMiEkp|>=d%8G=RKzVkZ7$ScAi#2P;?ZjU z|Nqq|3M_AFIJqlpdc5f7Yx%#u_*Zw&`y|x<>TzPA#2YyqEt?NB-a1`VHDlj&C1Ri0 gP0hR4d~e+OaGvr1gld-mKw}v^UHx3vIVCg!08x`ay8r+H literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_jungle_fern_03.png b/df_primordial_items/textures/dfcaverns_jungle_fern_03.png new file mode 100644 index 0000000000000000000000000000000000000000..d7c274116ca0b7b814d3b7a49d848966e0487cf1 GIT binary patch literal 280 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbK}W`IwKYePc=o1PG>CO^B82#1*% zhq*Y1B@jt)*-Ejf^Kn{BvKa`o>I!mNNwAxWaoI_+n~1U-i*ngZb2~_LJIQc6%klt` ziyXU|7^jUShp8C5p$Mz45Q_#ss|G)(r39OyFsHQykE`70(4U1sOBqXo{DK)Ap4~_T za$-GQ978JNa=TploE=3PDi(iQ`>yW4bJ@idomBS5|2d8PqR0QbP0l+XkKNAO9_ literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_jungle_fern_bark.png b/df_primordial_items/textures/dfcaverns_jungle_fern_bark.png new file mode 100644 index 0000000000000000000000000000000000000000..5041941889ac9f3d32990489be5161b4d2acd56f GIT binary patch literal 308 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbK}a)3{WE3-5Yo0>3(jyS85Agi(< ztBMetst}8U0Gql9n}!IxrYO6X7`wI@J5Yh50Eeywhn@tdfh4D)6pI`mi#$K4z9gH5 zD2pr~m$3|wg&c>TB$tsii!3jv}w0978JNOwXAzF+1`c zy^zmutkeF!{?w9=XjA_N{xmzY`fpp`xd`iJ+1B_+uQ{!8?C_^W!E(9WS+eEN6V#qY zKfbX!@a-Mhn*P?4K?Y~^ilP~Ywi{9XG4zZ$LI@ByBdF0#B_%4 zhwo3>AD!kuGF`qy-(DcTPGR34hnk;_KR$hC4K(3?Z1}~e0O&3TPgg&ebxsLQ0E<9a Am;e9( literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_jungle_fern_leaves_01.png b/df_primordial_items/textures/dfcaverns_jungle_fern_leaves_01.png new file mode 100644 index 0000000000000000000000000000000000000000..ccae9c704363154cd8ea91a5b399196683dd5993 GIT binary patch literal 293 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbL!Yk*IPE0F&G|39C;6u*%)zp;#f ziL8LBoFEXH$q8A=3t1`%n#l{A%kvpZ^Bc(sSttk?%kUdY3tK7j>PZS)D~i}CiP$J} zSX}^`!@yJ$Whieb^D zoyv!}?lbNZ74K|zTYc=UL(VNeR)#vc!o~J2mMZ2aAEbAF2Pu^>NNX$(0vCG`uPrjy}yz^`N19jZ iky`$>PtX?nx literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_jungle_fern_stem.png b/df_primordial_items/textures/dfcaverns_jungle_fern_stem.png new file mode 100644 index 0000000000000000000000000000000000000000..7612d5965ed7d160b583c007a670c16c38dff67a GIT binary patch literal 557 zcmV+|0@D47P)yLvut1Clm=W8U`j4M07+%bwvp;83iE_3Nsu)Za@Vj5<+o81RV_o9}fm7 z6b2|22rd{zdPzlgMn-o=KW#ulb3{dWM?`i;MuAU9c}GWqPDqDSNQzcTid9LBS4xjr zN|0Jhl3PJ@L_lvrM0ZC(aYICUN<@1~LUKeuY(GVPOhtZ7LUcq%ct=KhNk)82Mt)63 ze@#MkMMi>8MuSj7bw)>hOGkc7LU%_;gHT6>Qb>D9NPJ01giuI_QbBP-NQqTQid8{z zLrI5INr+TQiB&^&MMHH)NsU-aj#xu?M?-l@N|9Phky}fUT1$~yL2^S&l3YuZTuYQ) zOqXA>^!P;p007-dL_t(|UIhRHmcvkR^c6d`yR>cFxc^D^0T`3}X%Q$d(NU%}D7L~} z?IN{8sxAytLozAP-F6>a zuCyqF6uj8BKDeT9s@{=o0ZKZ^mN~Xvk>*_h!6C=Xf7Z$yN@sScpx`E3I(ZhBy5ZP^ zly;;pH)H$t*|Gg@t3F}jfDtISay-GkUw9KPgnaH v7`~jM@OVP9HYQe}RTk;QQ$dmXxiR`5YReWz(rZ_(00000NkvXXu0mjfmZH*S literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_jungle_flower_01.png b/df_primordial_items/textures/dfcaverns_jungle_flower_01.png new file mode 100644 index 0000000000000000000000000000000000000000..de31b86b16e6a5d252b88bc9876bb3a630233c3a GIT binary patch literal 361 zcmV-v0ha!WP)Rg7t3id7E8FboA>lQQEnGxPn=wstC2ZKTe} zSZ`$XQZ-|){0rF@OM)44D5mOTK?*&GJP0^^-lQNNlTRgwJb3{(i$Z34VA6=LX&@2~ zYJ|k$aeWFje2@1%Ge{CEmQ_1wi+4q00000NkvXX Hu0mjf?V^#1 literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_jungle_glow_plant_01.png b/df_primordial_items/textures/dfcaverns_jungle_glow_plant_01.png new file mode 100644 index 0000000000000000000000000000000000000000..3f2ca04c04a04c32030ad2ce1c2d5765d234da46 GIT binary patch literal 355 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbMf(g2?jS0L>iq3<>GDx(S;qbfV2 zIy;jpJCiyalQsvl5*w>B2dfSjs~$J29uK<~H>U;{ryeh#4xf;ofRMF_n5l?_y||>c zn7o~of{mn-owSmRteTayrmH-o5}QxFiO;;-ev2OZEq>s)_+jAk=cb;j*1npav#!_$ zX*-1Jy2l#1#~bT;DjT>fG0L*IgzLLbIN{WD$T?KcAVAg7P07eZIVi(2YUlr%b3S(h z9m-e|;F(o{q>Gi}3EE9iueCzTyT)?PkC|IHx=xD-Nml$F< vok5;!{_M%^;+?0}PMgTe~DWM4f`^#n2 literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_jungle_glow_plant_02.png b/df_primordial_items/textures/dfcaverns_jungle_glow_plant_02.png new file mode 100644 index 0000000000000000000000000000000000000000..9e924d7df65f6bddae90c2c0d0b436c9f1f49fcc GIT binary patch literal 332 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbMfw8!K}o_s>jW#!NsY^D`GAzW-20KFD_{!;x+TC&%E1yiyrzde&DzGp@EB%p_`JS zr;3q>vXPgnv5%^WkD95Ms+zN$nv0yKlf0z0n7oywyuFm7wUnxjv~{qSZJ3T-w60Un zA=e2fJZD|ec2&^!P||Z%((_f(_figA{yb{u|I+)h%^+u$1o;IsI6S+N2IQoBx;TbZ z#I5acjG zrQM$$lfvI0{@m~J$@*!P`p4he8jtrLG4a;ezR=}P1k1z&o^m2TPnF%ddByj%nMt3r Y&^*@1Tx%v90j*^4boFyt=akR{05Mf(-~a#s literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_jungle_grass_01.png b/df_primordial_items/textures/dfcaverns_jungle_grass_01.png new file mode 100644 index 0000000000000000000000000000000000000000..d54a824aec2e6db1c5c80942649cf056f99aa2ad GIT binary patch literal 437 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbMf^8lX^S0K%*$0K7Y&Zxr1sLIZ$ z&d#LH#-z=`ti;Bw%E2hh!mh>5p~uUi&&#RK&8flV9IEFMuJ015?;2(37H#MjXXGAh zZxk#t!55HKI-Ov z>gJ)E7C!10!J3u<8n(Wg;V9yq-__XV;`pL=&vnlEiP#z z&Z@)ZTPi66^eSUXkY6x^!?PP{Ku(RPi(^PdobQ3dji6B3aAjNW9ML2t8(c-$(c7p*ezf*VueMu&r_6f4@F~@h^J?+xG(Yd2$cg z;u`esC`qvVdBjoAusnL*4h!}Ps^u?v8cdF_Jj2P*`M*M4U_-fV=P{>~25%TgTe~DWM4f2##+} literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_jungle_grass_02.png b/df_primordial_items/textures/dfcaverns_jungle_grass_02.png new file mode 100644 index 0000000000000000000000000000000000000000..fc439ff72e6b340983289b9400dc60bef96bf611 GIT binary patch literal 529 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GXl47zZl343u#8*v#+ad|6Ac{?e2dnpBL zNd+58MN3H~b4eu!86_84Wd|8X1y?sEX;lXq zRTnumXE}8{SxqN-Z5IV?R|RbkC0!RqJ!eHdS0#NfWkXLDBQI4GA2oAtHOl}E%OFiF z9}TM@Eo*NL8-GokKrP!~ZQC#%yC7}55FNW{UHdRy#{eDYU|r`>J(qBOmq>lLFnzah z1GhLM_gEv3XhTLNHYQbe78MQ_EzY0}OSXgy9H8(j3GxeOaCmkj4ak}7>Eakt5yyI< zxeyez2l{gtZ_B;CZR>wN+dXz%wgOegtUmKUAOF03ruv5_X>oZA*7rNgE00{&wRl|B zo;>HkH`(77HVNW6n>L=iBvrk5Lr>^71EymJ3+p=`if%Y@V29%u#<{UkTP||HxZumr z<*T5)bc$L$%Mq2cX^)FI9iA-LlIZ-!+jMg0hwtH)b&3JmELx@ifBX_o%HQ$15$GNU MPgg&ebxsLQ0N)vgY5)KL literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_jungle_grass_03.png b/df_primordial_items/textures/dfcaverns_jungle_grass_03.png new file mode 100644 index 0000000000000000000000000000000000000000..537d3b5170c0f90d179c42264e7fa4b9fe4accc6 GIT binary patch literal 522 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GXl47)1hnLR^8||Ns9ps<5%@@h~d^ zNp5{FWgCA@=TJT82z_=fZbo@lR(&3JO)f@Nc1Cq}CRKJOHFhR-HYRNjMkO{D6%G~+ z4k0}OA!`v~GZ7JUVNnxdF&i;)OEFFjZXR7;9({g39X@_tK1NvZ#8otb#p&;eltM}A9c$h zO)D=AD<2JOZw*!*E}K9t+b|uwAZ@!49YzIKMnzWFC_}esL-%-Nk7z^RBvbzsv!D#i ze_h`X1H*->B*+gKPGytNS^#;AJzX3_D&levG&ddrau42pk`tYOdt2_;`^U`-4hz`x z-~Xq2W%vCShoH%Ojy(SL@UMEo%J^54@10m(pnBru<~fzsiZUyU`trIDeQew%Kl!e6 zvUh{@j%|zIy$OW(bnlF_unsB w2l-@__%AeWOkiw0Ey6uV?!w*Ui@8Mpdls>TtDe{-0koaL)78&qol`;+06pSP1^@s6 literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_jungle_leaves_01.png b/df_primordial_items/textures/dfcaverns_jungle_leaves_01.png new file mode 100644 index 0000000000000000000000000000000000000000..d5390301ee2b3d1c78dabf1da394fb728ad57f37 GIT binary patch literal 331 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbK}et=JiE0F&G|39;Z7_*H8laVl! zu`rXV2%{1gqXHMB5;vnVH?z4Yvz0hd0iy;lRDp>INR1*FvxO+5Di5=z7^5r)v$Z&* zJSU?HH=`O4qdG6MnJANqFrx+^qb47dp%9ai5TgnYi?g&ygagPe>?J{dKqv5M`$jit z3z>NVg<3pa978JNOwS!_zdmH&OB28RB8n%L$4)8puIyZU{dT(_1jZ+QT84}+(xpUXO@ GgeCy_!(Q2ZNg@NY>en!ONE+BZna~mm#l+!NZ#&DUHF#jv+an!7q@( z-HRb5gCW0|As%Q#3PW-lgR?6`P62~|5JPMtLvA6+%=B!K`3Wfu_Kpm09t;7&4Dm@I zOKY1LeEb>gofxw7Pny_q03F0$666PTAdj|hbc42#nHNx~+tbA{q$1Ar+|@*8M-kVJ z)j8_Tr!!g%zQ@PaJquNMIWK-jD14as2(ETzXVr se&vrF?$2(+(DeS0np5stcHe%o8_wVrj#%~LJkVJTp00i_>zopr0FAeOga7~l literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_jungle_mushroom_01.png b/df_primordial_items/textures/dfcaverns_jungle_mushroom_01.png new file mode 100644 index 0000000000000000000000000000000000000000..082886e725943a3bfea61a425e9ac13a6dd1f60f GIT binary patch literal 275 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbK}b%0NZE0Fdw({eM`@HEr%v($}p zHgz&o^EAibj)CscD53w`!G}ZJn*K#-2bktX|*H!kl&c@Rpq5u<)-B&#gt{G zJaM?p4z!-JB*-tA!Qt7BG$6;#)5S5QA}(3tNkjA8NT$xy$Bvviar)#@-p8K}47)ym z8sN zrR#03?PaDN?qKX{q#ovA6lksIXQ}IJsT*XY?`x?OW^Wv7XBh5i9OZ24ZldXJ22`x& zVWJser59+UA7*b9YH#FjqT!&YGNHM$ud$-HzG7laRZCf3e?!Hj=IXxs^4|LL*0TJn zy!6W4w5r^+hT@!(jKtc4%!1Uo{N&i;jKrqWysWs0;*6x~y!5iHl(OuU?1ado^u(6( zeD2B2`+zQHED7=pW^j0RBMrz&_H=O!sfbIK@HlYj)R}WfxStypf84-Pu-T|+ljDz? zKQd>UoDTKm^eD|y*tcTFjuw^4BJ9eOO?LO_giM~Zr)kk7qfINdR%N|9QNzaTtDBp$ ruW#MFeT|Au`6)R`S!sERoR1h7@>AGWt$rO23PJ`?S3j3^P6Y_YJFu` zeP&o^R!nYOQGjS#fM{ESX{c4e1%W|(?sntNz)Tv42TX`X#*pnz

ffIRX{SThH|u=k8xd5wVaT(ose-|QnsFvwx5%7UQ)N8l4)2^b6-<*UsSrF zly+fMcVbm|VpYARmcOQ#z^9nNsF=a2nRsJX#H^dft)0iOp2)DDYFJLnvY^Yeq0F?R zdt+A3wW7|pqt3RZ)V-+IzN*;4tlGn_+{LeZWLMtCu;0kB;K;G!%d=})Pm33_<^TWy z-$_J4R2Ufr00VNw0B{)_Ju9_s+qT{RKcNE)c4S(9=6GS?CTRgsbocCZwI{2!o57j+ z(WVXQ)HmPL*_)!EQU8n}Sv;1PQ$o5H=6u-%cY=^O7D8eJyDSI}E^b%$IwB-U*!CeD zVt(IXd?e|xG&Ar@@oJ^ArOe98We1!p@w%bNUrI4=dyth3RE&R>7#V9J_`4*S3#0td zlk^8*9SRwB5`ND4^=R4!v(Z9a()f-^MQ0O;1_)bx!uoM}g))+Yy*55Kw%^-V{%f3X nJ`5KCMVh!l=sB5hnUM|uro$Pt!95vt00000NkvXXu0mjf==T^* literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_jungle_mushroom_stem_02.png b/df_primordial_items/textures/dfcaverns_jungle_mushroom_stem_02.png new file mode 100644 index 0000000000000000000000000000000000000000..771741edd513dea33b37b7db21b6f809c47ebdd7 GIT binary patch literal 598 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GXl47=r_RLR^hiW!z0QeJpiD9gLz} z%xdC%>Jof=vcjeo#mp{Gm{XpxtUi5JQ`V~HtTip!NnX~;Ue+nzHmN?gslK*pzIN%p z_L=_nSpg2&fsXkh&IO?^_IfIg2C8)levL`~jmiGaDFJP1LG9_mU74ZXSwIx#Y^2_s z6W*5--k%#WxgdHGip!Ht~)!g;q3h8ON&};*)(1QLwTR4i(^PdoawpXq@xTXtOtax&u`1!ye;?k zUHjQ}cSO%Dm?On@Evu&Pf_;enK3={XXRh*_P4c=C`6a*BRxWW%#Ux(NXAwnfItu?@ zKl16@xjReqi{cAcX1YJy%k5Uvac}2W`rhiqtx-O`n| zwIlIY#;PWu8wxyK978JNOwS!nWMLFwHn>?Wk(Tym|KS=VQIAQYSxeXYS50p{z9pY; zZQ#d%@JZo6)5L$@t}dKnv2MbgT|Xws&tCpvk~CA*weq*Aj}@LSv2Fj?wLV98UhM1r o_VSO$@Lx?2g87djv7c?`kF+_qK)V?{UHx3vIVCg!0N6BdrvLx| literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_jungle_mushroom_top_02.png b/df_primordial_items/textures/dfcaverns_jungle_mushroom_top_02.png new file mode 100644 index 0000000000000000000000000000000000000000..d3b081fb1ddeb427b44f379bcda07e0ad27db9f0 GIT binary patch literal 384 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbMfiU6MwR~uc0-4pY7PRQFkxp3c< z!ab7;c1_6N-j~~u?7gEucSnET{OY(xbqTvB=C5c@S>KVdu`6?HZ_fTHMJ;K*8#*)F zGW@%<1Gn|&Z0pPE$qm}xpF6Q2v?#(U)z@-qLsE09&ziQhwIGzft{sRn4oodNIIZ~5 z^pY86ku%DoW|l|Isf?+Lb6-#sR}$%57VWZoQo*LKtj*n7TY9p~qg_`vr>t&G-PV_T zXy)|SKsQhJba4!+h%-HRG||JP1-SxFgF1yAf z@z(0fH9g-hzGlwL%$a*>Q_|KmlVcY=Efx|hyZe97+55R|C-V8O{B~XIFEhL0&GO|R zvTv^7EemrhZx>lZN7+?2-w&6`imB)JSwj$ItL|aSW-5Gd*`Sk=2lg^?>@xZ$^jH)6zVC>FZ2i(IgpgNGGIyrm&#> zp2Lf6HthdAFL7G){P`a@lq~U^m9k7nLz2~E`Rg-Zl|RNWOR+P$cdh14`S#W`D{fa* zm*`!Y`fO*9>c5Yx9-~U3lhPL9 zm*&!RR1}iumC+T|b63%GSJn4W)%R32@KTe}6O}U%S2C007GoDy0J=)R$WOy8NSj@N zRjXm!N}$VUc)B=-RK%H{3r=!%6kt7Y**Qk~{I*AL>XUzZu3y0Q$-Hm#gSKaXBJa6f z>d=yGI^Sw`ZT-Bx$9CU*?S^;Hy-%Dy94i0h&yf_5L|@Hrn~Pube%WQn zyv&XN{=I5i)WWoL53cN8;Uy!ftyZilt9PF}D|+t4kICy7alE?!oc{(EbYA{ZhEUq4 TDu&rWH!^s-`njxgN@xNAB3N~) literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_jungle_plant_packed_roots_01.png b/df_primordial_items/textures/dfcaverns_jungle_plant_packed_roots_01.png new file mode 100644 index 0000000000000000000000000000000000000000..9636aad41234cf82a633fd85c2287c0255654c3b GIT binary patch literal 673 zcmWlWSx8i20EOq?`|tPu|6OM8%$?O4H%3b=Gz*eQQ))oOF-fGzLZXGVEJ0B!F`{~i z$g)L!Dq3h0Ekh#Il6naYd@+>BUaUX_9|R4uMmXnu&mZS%RpoBZ0?g%d@x-38>J*Lj z5+$|qJbkarB{fx5)Rc1~F(j#2(y&C4M4{wXkypbQNCZkDgSu5$Do21o+0CGvAs21&CRL$V`qe$dGFYEhGg4Cd7k z0a8H68ypd{s33~LK#osXOnESLpdfX?Vxp|1rtKiysdR(Qu7%8ohU2r_X5KW;uKcx~ zqnX8>CA$Wrxf7kvA(WIC=w2WitWkf-Xh-iW$33bGB@=$ zeOlc7F?{-L2fmZ_EK+y<`}BuD7yteC=MN+wFRv}F+N*2QnXxB*x2~*>y-N!nLoY5o XAI}(_z4rBW%G{MGuPl36dZ_C^CghO^ literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_jungle_root_01.png b/df_primordial_items/textures/dfcaverns_jungle_root_01.png new file mode 100644 index 0000000000000000000000000000000000000000..a56f0666e0e7832c6ed74ddf2c73649b4151d2c2 GIT binary patch literal 421 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbMf#sHrXS0MfW|9@#w9!X(taY0TQ zQ66~-eg#Q>Wf?(LSs^V&QEeqLQ2`D)aXxtoJ_#W%AzpSac4j3h0Re6{6&XPpFSK6VXx5fOe46HRGNMNwICUO91IMM-`|DFIy-aXl3YJyi)_P8L2+R(@_)Q*9YD zZCNXQ`SW)lUIsdvsU*k`=!vq)XDxudg`O^sAr*0|y{3~`92puG951~Zd+zSr|NOUC z&uVF4IPfp(cw5L{HiK|>qn@8HkEl$aJ83850`vNbq5eYJ40dwrr~H1UC^xuxOP(nF zb~C4O=9HtiR>&Q@yX?|#k^KrPvDXS&;uw{=A0&OOUc1H3=PuLqDEk$D@yQJLrhMp6 z-Nevvc(>8?2gUaoZY-Okz4N)|Be4KW(X{FhX`BnLvN3;HK8Mk$iu287?|3VqV;MYM L{an^LB{Ts5?6Y!q literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_jungle_root_02.png b/df_primordial_items/textures/dfcaverns_jungle_root_02.png new file mode 100644 index 0000000000000000000000000000000000000000..beab2468121b3080598a26a56eb561ce9bb92cb9 GIT binary patch literal 291 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbK}QGic~E0F&G|Gyj`yDTr83@@9Z z6u&$_yA%(rq5y}cD7TUThms(Nx(K(Cw1A0>pt=Z`vLL655T}|j7cVQ5EFYT)2aARX zw-_gjjySKb1h1Y1A3rM-Co`jh0Ed~JkiI0J0T2Prlfy@VSxk+xqUQtN8NHoq2YA*3phldD(&& zzZ*NtRK91QlU+M6V47QA$IqopC&xusD2ClgE_P_GQd7RQbfMR;9Tzv8mOSn><4;HH eZfWOV$HkwVXEyrqaStdM7(8A5T-G@yGywp4`A#YT literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_jungle_thorns_01.png b/df_primordial_items/textures/dfcaverns_jungle_thorns_01.png new file mode 100644 index 0000000000000000000000000000000000000000..243b1f63600bc426768945605a9f291cff91a434 GIT binary patch literal 416 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbMfoB*E?S0F7TBjf4mnVg(lUS6&! zB`U(ttsp5P%*U-PBc>uNuAv|$Cdex$z#}fiCn3Zq50c^%h1(7vkmTV&`IKl@R6=5ffCE1)9pGCMTgLFDWN3EGHqXr6{eXB(1G16LDif2GD)1B|&~5_cAaX%4XXL zq}F-5IEF|_vL0kjI&8qea&T(&+zW=qbC#U>^M8LSTPw4Z-)ezmdKI;Vst0IIcd A=l}o! literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_jungle_wood_01.png b/df_primordial_items/textures/dfcaverns_jungle_wood_01.png new file mode 100644 index 0000000000000000000000000000000000000000..38226f35ddbd319712a0370750ae219c530f0c4d GIT binary patch literal 390 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbMfiU6MwSAI5T1pzK;UUpeN4he2H zML{lQAs$s>9vuk*8D0)iPF6X7PI-P#aV|Cy4pt>WZY3dZNp3bN9(FYmUUeW6<zutJ`QCe zZbbnuQ#nz20WNKEegi2XVRjZnX(2;tVPOtdA$Ar?9(Gj`UNbpS3k9*ahpl!3-8|FN z#WAEJ&h*^T#G?*8tOu5-8XNysZrS+%Tv4aijDrirU;Ccg7rnpa*FJ`j*FF1w_r7uD zu4;U7lJd7z+lNa!ss(SgwOvu!LGJ84)oX6S0I_v4vZ-hg}>E2$gS3 zEEo`+bx*B=S+9dxuY+145DFCu1t$~@vxZ!>hg_a^P@{TNly6I&c2JXUN|bI(u7X*d zbWf#xRJDj*wuxT1ie9*iUwT+QKn!+ zNPTy*cJ7Quzkz`o+p!3rUq5Dw$^q(>qX>M=b!P-L=CRf-c{F6-QT217b z-$7h%qX5GuMgRZ+07*qoM6N<$f-xq* AZ~y=R literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_jungle_wood_03.png b/df_primordial_items/textures/dfcaverns_jungle_wood_03.png new file mode 100644 index 0000000000000000000000000000000000000000..f119bf09525aeb838cd063af9a4b4187f11ae817 GIT binary patch literal 614 zcmWlVTS!xJ9LInE|G95FyPTb!ZD;fBdXC$4&P%9K5r$U6G<8FvhbSXZWJ2^J31v!j zr-Z1d9OOeqkR^08qk1R_yAV>K^P!|gN|r&{L+Coe=llIWe4oDGQ!ULqc!O*J0KRc& zeVd-v|6&Qz)`>@K*Ygiq-7K1uPPFe4~TN`SvU(#2n=awDUqXa2;4?m6Zv8thdC+8~ed(<~XCs}8Or^?&8+T7Vp?p~oVG_NJD4-SSN&VCrWKhW}G**Y$6QV%{G z&2>(OuZS-zvnWe&xR> zomb|C{Y^8+YbTGabWGfRHFcpq`x@lm8%{gs5>4qlCoA#ffK^+*{ZX8G$z08*r}t$y z8^8S^wp4e!|2*niDYPEb*56Is{6r1=Iz(40zAILBBA?%Q)R*b}`gx>lp<|UEtGPTe uFnnIvY93S8-uLp`*ZUW0mQ2sv77O@Ew}0vH(C$@zG&D9e*WcQQ64Hj!LWa`9Ml!-i>bgpT+{UsZW^$tDc7c)` zziXuRX_PEd&@fjN;F8?@OJ>e3t>7Z9;9_lYer<69VGdT=h-%sFX`*3OVq9!`sXh8q zg8EWI22w)8E{Q71T`HwZGR|C z4=uaDPnxTHX4}u`yE`P}UM_z9#v@kq`LCBt3oiWm^Wpun#_iQRC+gJYE8Te=`22!U z|K1?0^Cs;4J43(ezxvyF=<#*+x9pxv)>(BR>*`HuR&-vr8DyTR` S=HCT6n8DN4&t;ucLK6V!!JRJv literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_mush_cap.png b/df_primordial_items/textures/dfcaverns_mush_cap.png new file mode 100644 index 0000000000000000000000000000000000000000..fcd27560e9b58986b12fb325bbe8dac90cc5da80 GIT binary patch literal 441 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbMft^l79S8;Jead9IF31fMAJ85YP zSy^j2d0Ragmnu>};UoVxaD2 ztnOu@>1(6y?_v-pDQWC!6zO9Y7iy6dWtWv~pPTHEm*G|>Cub`sZ_^(!u|IOsgvd!U zvR1Ov=8}?T;u6NvG8R35{W3wm@N{tusfg1($DG9KDB^msIxe{<|LC^fzxmp>o?!v1 z1?GB_o~k#!5Nw$tzpnetnw+@;Z}#N+%v8RAyEgJ`l3b7Kvs=60ry17=ZI`&YFE%3F zFmHxSp=or-`ZJO#AzK~lq>^}4YxcPdzdHTkTusHAw^u8_C>-3z9%EQD<iheY#T%C9P>~R&p%kFJ2&)ctSKW}^exzwMvPrm<`Z{21# gzh=p&E0zD5kKN(9zopr06^NBn*aa+ literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_mush_gills.png b/df_primordial_items/textures/dfcaverns_mush_gills.png new file mode 100644 index 0000000000000000000000000000000000000000..6201aff5287228e97f50d3818308f6333f5f07f8 GIT binary patch literal 325 zcmV-L0lNN)P)d#j38wl9;rUnYFC2 z#;vf&tFOhAn6;Lix2dhfsjS43m$a_3$e5nEl9;utuf~&^ww0T)@+VRFnLvxT9mC7Ib?jdM=@rHRKq{j{hF)hVE Xff)rf9o%J>00000NkvXXu0mjfcc7bL literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_mush_gills_glow.png b/df_primordial_items/textures/dfcaverns_mush_gills_glow.png new file mode 100644 index 0000000000000000000000000000000000000000..b2ebe5847dedc6f160ecb49bec72bb404152cc37 GIT binary patch literal 417 zcmV;S0bc%zP)u=v`;`lzq?wX*rUwE42N z`N_8V+{XLf$ot^V`?jh0xT5!>o%g+}`KG1!zr6Xur1-(L`og#R!=?Ddu=&Ki`o^aC z#LMz*t`1K z!}_bQ_^qJ$oSXNuvH6{#_pq?}p`G`xvG~iV`Oc{MO_6Qi00001bW%=J06^y0W&i*H zk4Z#9RCrzmzyp@WFcbjL`;xlf8r!zD|6R=y3W6LWTM{xyWCko~tmqgqXOHkjeXjaY zZ<`S&Q*H_B>31o!OOH2-ZXhTa28lbT3K5La(yKI)v1C-JlEls<4+~!SV~yt%KGAZ+ z0q=9RW?b@nuOjU~G2t4?h1}Sn;|lA2DM%c1hSwpXE!pHy{4`_#N+$_F?HeFu00000 LNkvXXu0mjf3Lfiq literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_mush_glownode.png b/df_primordial_items/textures/dfcaverns_mush_glownode.png new file mode 100644 index 0000000000000000000000000000000000000000..95488e0fb9d8cc004232a2e71dd08255e8d1a927 GIT binary patch literal 521 zcmV+k0`~ohP)MiKs>QIe$+NS|v$V^#wamA- z&A7SFy1LN1yU@VE)WX8m#KhOe$Joiq+Re`0&d%P{)Zx|D;@H^a*xBXT+U45X=7E8z z!^GB_o4TK$y~xPfrKZ8m%-qb)+_tyPpP;?b(cjV1;L_6Ifr6>5tj4UZ#=gJPzrWM2 zuE*Qk=Axp%$H&>Js>GI;x3{>?mzTJ?xzD<~&!VHht*ytcuE*2U;fji{fPtuifvLm8 z*4f$RhKH=EsKdm?*WKOcwzkb&*E|jY007-dL_t(|UNw(Zjs!srLsQty%rwkAi_CEU z^K8w6l#j?tY(KytrhC&g&czz3qBI;JNmm3IR*Z4dY}u zJd49GCLzG`#!vG3VlmH?U@ar)X680sR&`x1)15hZ2IXi)1Ach z`Jv2S9H#vV2hQ6v>pAM<&&#A}IB$wcWF3{0=`MY!>Q`a9H3usId2{n0>z`slQm5gE zD3-+Glt~y6q4&0X?FZhabw>&Mg;RCIcpp&#CoTju>J)*$5-Y$rKCc+~_f*yo00000 LNkvXXu0mjf2|pwX literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_mush_grass_01.png b/df_primordial_items/textures/dfcaverns_mush_grass_01.png new file mode 100644 index 0000000000000000000000000000000000000000..b2a84060b44716e72209eed389a9f3beca73d07a GIT binary patch literal 424 zcmV;Z0ayNsP)nz*t+TMoE-u zZnkQ0wMI#mQ&*!&OqXS8v2S&`(9q@X?e}nYy88P4{r&z&P!q-g000PdQchC<00064 z3JMBvgG~qk004|hL_t(|US-WSVgoS%0Ku^xkaTEf2s1P1|F6pRnR1);&+N?4VyEMD zLu(hGzluT=PS~29)4HQ?TRb59n&5>)Z3*2Tlne)zfDGigl^U-5@Q#rv+*3gc!c-I@ z2^`zwk-+K_o~(K00sAnNQSpIqqK-0000}EGPg0y}aJp-5vTSj- zdVjuqfx&EYw{3E{ZgjYCb-QqOx=&M|b9T3Lc)WIdyHHf2czn22S*S=&n__3KWNNZy zYOrN%vqDCbYH+ohoywh@$D^Xor=`(XTcm}F#8OwLQ&*!#N|$YJtZj0)S6ioAU#ePP ztX*TQJwT2=L61sJol8!cOi!9tTBoO`(X6V{uC3Lyx7@b1+0oJE)zjzJ)#%*X>%?+B z8vp77Z(>77Z>;22`m5r0Fp^WK~#8N1;7J##6SQ5(BEdao@8yS zwr!jDKT01E$HXT9X#H^X?&A*}H}tQ$;OiHBzp=zZ-3TaW(_T=ubqMZ}NZH;wtAJ2p z^?|wI668wEbeYabfWSnT*|rjJXX@#Z%}*WRRQ{D>kNGvQY!P|JCI?_wmfSwkcnvlV r6gY1Zt!E(cydq$42#Q?YD!>i@zy1%tf?;{H00000NkvXXu0mjfM|b8d literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_mush_orb.png b/df_primordial_items/textures/dfcaverns_mush_orb.png new file mode 100644 index 0000000000000000000000000000000000000000..f44413a20dec98fa8ac877a7f35e2d6b5cb5d2eb GIT binary patch literal 527 zcmV+q0`UEbP)#lPpqzv{}w>&(dN&dBZD+3;v; z%4TTG-rDnriOPtJ%4uxNxUk}DY|6W|2h?+b9T$d!02>#%g4d%$inH##Oic+$;!s*%f;%;#p}z+>deOM%*X0? zdCJYl>}6)l&dTi2%j?j~?9j~X(#-DC&F#|8?bFZf)X(nJ(CyXG@Yd1p!Mf*ZYRcZ* z^2NUCdVR^o!05rc=7NOE%*X44hRV9MMT&@Xk@|@BQcZ_7hM{o{w86r-zjk@H$glt5zS9aud)VU0h0*E93o>Ks%E& zJ5)>`H6RL8QAV~I&=)R=Z=xvYK3+h3r9%|RH@4$25DHm&!W=yvyo5k+;U67!5&+be Rh|~Z8002ovPDHLkV1hkKEG+;4 literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_mush_orb_vert.png b/df_primordial_items/textures/dfcaverns_mush_orb_vert.png new file mode 100644 index 0000000000000000000000000000000000000000..2f017b73f4c64f3305aa8208628183f20f300770 GIT binary patch literal 286 zcmV+(0pb3MP)gD1(9P!2&gO`UzSh(0*VXIT)$4?Y zy4>0B&CBJ^%jM3?=8}`ffP%MzgSd>0!H|;0y}H`T#^cJzUtP)d9e0=t^c37|Dw8ofYkq&w(EMUjE&v@ow(d{tlxC4&~B;HaH-jH zs(ygh|C+aGX~t=3$KQ3T;dQNmfYs=DuIYHMgM`hltLZIj00002bW%=J02vba zW%vL90B=b|K~xwS1;K>@!Y}{;u+YvK8}9DT|KE`S00000fHMFZNB|fHgxLu|((RLF z7l7hAt_UFjglCqs$_D@;ZClc!0N8DNbJDa2kQ}N#`Em--+#WAJ_a8vnl$fkb0Gkdh k060d70QL7BYeq4`9}>m|BGE-pSpWb407*qoM6N<$f_jCVT>t<8 literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_mush_shaft_side.png b/df_primordial_items/textures/dfcaverns_mush_shaft_side.png new file mode 100644 index 0000000000000000000000000000000000000000..8264c98611c991868500ef2bc9ed4ac7f95e6458 GIT binary patch literal 491 zcmV3ove2ojzOu8#va`mi ztG}ksJyAFzpk*twztQ^!_cy@%eS}7tE<7iy3??+ z!??H2xwg@>wZ@v8vaz$owzkX3$K0o-z^SFjudu?evBRmVz{$qjq^7&At-!6S%A+<4 zxc~qFp-DtRRCr!B&eMTKQ4|HRb#QGx+qOBj)qg4TwJS(~3}achF@?>OZkh{JQwA>} z-5JuRz1i*{_J^YZ z=X`N#S=aW>E$;3g9v%JZ`Q?>qLcYBth?wyK{WJXj(SFtN59HGa>w|R%Fpr*sDwaS>IzMZ7P zs}pp{K-*n75Ony^ox^nx((8y3d`d!?C)~ znWMgso4JmgxvsX%thLLJo4A{%z_-8Cv9!;So4Jvlx}~efwY|}^ywI$+%aNbGdWfr} zs>g6(%x{RB-o}|L0tH-6R$epCYw!6}+u*91nWeysn6`nBu$7~|ovFg{EeIC?009F@L_t(|UIhRHk_0iZlcBM; z?LFGIZQHhOJopOe;CB0NSzc~sZ(rd+-OwKpU3V@2T| za&JH9Fa_19M&=AECF)y*wn#@gRG+(hl zXpdwtlY}60u*vDR!jR$P)`U3#u_*SErUN_Bh~RWbdXSEzMu?r9!r8f(p{y!P`XX%l z^6DCHZtw27he!VtdVaCG?Qh`neYifqGT#dQ^ZVzf#eYuHF`Ux)kc9vM002ovPDHLk FV1mlZ!Xy9y literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_mush_soil.png b/df_primordial_items/textures/dfcaverns_mush_soil.png new file mode 100644 index 0000000000000000000000000000000000000000..84bee3192c1e07a359019bf954b221ee8a585d1f GIT binary patch literal 504 zcmV8c%I4?{)G)+4)PdhGAJ1tT`I#WP6Q$apdLqk}&8w-)t*Xkctktiq%CWH6y1Cv*HZGBmz(zACMmIE!inxu3ppA;S zy}RGNyx@+Fymx6utpET3qDe$SRCr!B&I1xdQ4mDYo)`Sswr$(Cwf}{rQkCgmz&#)# zgPe%O@B94(^b*=<-B1+e`SM^{T@crwl**LjA&#}e%#+@Lbk=Q0G7VJbyp#;tKA@31 z(4bbEsN$D=_B+JR8_Q)CeG!egGP1-1)Fe318v4!H9Zn%H5#7S;F}<%nwW6v*@ZV<- uxX&JNpFQ9{d%%76fcxwL_t^vPv*!z8h9MF{`M=5l0000oQEbalOPa=mwWzIb`Rd3wKmeZPKxz=VauiHgLGjm3R_zkPndb#}ggfWd%) zz<`0lf`h_wa=e9x!i9#zhKIv?d%uc{#fyx^b#}dYdA^8=#D9Rme0{)rd%lN=!-t5( zgoVR$bG(9s!G3?ggM`73kH&j^zp*}0M1E7K~#8N9gank15p&i{61qdQy7Qo{#Tn$R<80w5?a?q_jZB97%kQb z?Ivc8fG2NlQakwZ9uJ1kL6f1v*07Bk7P3jmdavDiJrl^tYVF>Ei-;5)c0rl#E;mAZW>`P_-Xf zJg}7!GA6X^Yul7&A)nx@l3U8u+QTVs{RwW*T*_Z}S5|ao?k#XMqSO6s1y#wT2klUX fr~l`Z;rI3r{2mWpL8kt500000NkvXXu0mjf;i%IT literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_mush_stalk_top.png b/df_primordial_items/textures/dfcaverns_mush_stalk_top.png new file mode 100644 index 0000000000000000000000000000000000000000..6e7123c2be1186b6e16dcbea6670dd5b1870cce4 GIT binary patch literal 518 zcmV+h0{Q)kP)gu!@uzl4RuoSe#qhQgek%6WRfot?^lf4YZ=!-$E)dV9W} zpUj`1%ZiJ{ii^c^bG)FS%Alake}KS^j>e&(&7q>qp`y)>kH&z3!GVIlfr7!Bn#rZ6 z&a11?tE|wiuF?R@=6@|NV4D z^fV`Vz?kpjY_>k)miiJHd-a|pQ906L>f^srS_Ra4! z50Gh73n7ei&V2n;ml#Eqnx-s=IF;Y@1}qn<>K{mwd#pqVu)1xVg7c@gwzkp$_+IW= z@1szj$BzcjxRbW7-7WVhrGxn^jvo!t+Hsyw3MF?KnCcrTg|JpCNvi~zbL%QkOJ_xB zi|z%hJ8OgzWJ2*Ng2OAYc=!k1zvpB(Mw~=iZ)+e*l2Zo!0WX^r8i%>2ZvX%Q07*qo IM6N<$f@Y`;_5c6? literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/dfcaverns_mush_stalks.png b/df_primordial_items/textures/dfcaverns_mush_stalks.png new file mode 100644 index 0000000000000000000000000000000000000000..7b4a228ca79079c60d66f7c6a64a5f73ad826639 GIT binary patch literal 298 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbK}T7XZ8D~L|tbp6Jg((?V;xjU+B zj}{i~&CT0cP`InH`DAAH*3$9=<&{8mFgi$&WWi{bO@? z7L&19icnd2%M_vA?yAwZ0;LUUse75_iX8XhR5aQV8_ p=k4q+1_Jx5;yc*5|FzV7VcVv{BJ@h_DJTpWJYD@<);T3K0RR@)e5(Ke literal 0 HcmV?d00001 diff --git a/df_primordial_items/textures/license.txt b/df_primordial_items/textures/license.txt new file mode 100644 index 0000000..5afdf7d --- /dev/null +++ b/df_primordial_items/textures/license.txt @@ -0,0 +1 @@ +All primordial item textures were created by ClockGen and licensed under the CC BY 4.0 \ No newline at end of file