From ac2a55b7291bbe618b5b5bfaeca7b6e4e102bc9d Mon Sep 17 00:00:00 2001 From: mckaygerhard Date: Sat, 17 Jun 2023 10:05:23 -0400 Subject: [PATCH] fireflies - included the reduced and external mantanied mod for older engines * the mt5 game already has a improved version of fireflies with timer nodes that hide the fireflies at day, but required a more upgraded engine version --- README.md | 2 + mods/fireflies/README.md | 27 +++ mods/fireflies/depends.txt | 2 + mods/fireflies/description.txt | 1 + mods/fireflies/init.lua | 173 ++++++++++++++++++ mods/fireflies/license.txt | 45 +++++ mods/fireflies/mod.conf | 2 + mods/fireflies/screenshot.png | Bin 0 -> 44514 bytes mods/fireflies/textures/fireflies_bottle.png | Bin 0 -> 161 bytes .../textures/fireflies_bottle_animated.png | Bin 0 -> 185 bytes mods/fireflies/textures/fireflies_bugnet.png | Bin 0 -> 186 bytes mods/fireflies/textures/fireflies_firefly.png | Bin 0 -> 114 bytes .../textures/fireflies_firefly_animated.png | Bin 0 -> 123 bytes 13 files changed, 252 insertions(+) create mode 100644 mods/fireflies/README.md create mode 100644 mods/fireflies/depends.txt create mode 100644 mods/fireflies/description.txt create mode 100644 mods/fireflies/init.lua create mode 100644 mods/fireflies/license.txt create mode 100644 mods/fireflies/mod.conf create mode 100644 mods/fireflies/screenshot.png create mode 100644 mods/fireflies/textures/fireflies_bottle.png create mode 100644 mods/fireflies/textures/fireflies_bottle_animated.png create mode 100644 mods/fireflies/textures/fireflies_bugnet.png create mode 100644 mods/fireflies/textures/fireflies_firefly.png create mode 100644 mods/fireflies/textures/fireflies_firefly_animated.png diff --git a/README.md b/README.md index 559c3eb..6112e8d 100644 --- a/README.md +++ b/README.md @@ -55,6 +55,8 @@ To download you can play this game with the following minetest engines: * 3d_armor and shields [mods/3d_armor](mods/3d_armor) https://codeberg.org/minenux/minetest-mod-3d_armor * player stuffs: * minenux bags as `backpacks` [mods/backpacks](mods/backpacks) +* Shara RedCat ezhh + * fireflies as `fireflies` [mods/fireflies](mods/fireflies) https://github.com/Ezhh/fireflies/blob/master/license.txt ## Licensing diff --git a/mods/fireflies/README.md b/mods/fireflies/README.md new file mode 100644 index 0000000..9cdf421 --- /dev/null +++ b/mods/fireflies/README.md @@ -0,0 +1,27 @@ +Fireflies +=== + +Adds fireflies which can be caught in a net and placed in bottles for lighting + +Intro +---- + +This is a simple Minetest mod by Shara RedCat that adds fireflies to the world on mapgen, which can then be caught in a net and placed in bottles to provide light. Note that they only appear on newly generated map. + +This mod was originally adapted from the Hidden Worlds subgame to work with Minetest Game, and has since been added to Minetest Game itself. This version (at https://github.com/Ezhh/fireflies) is now maintained independently from the main Minetest Game version for the purpose of possible expansions to the mod which may or may not also be added to Minetest Game at a later time. + +Thanks to shivajiva for helping work through the original idea and for assisting with the code, and to all those who helped test this mod so far. + +![](screenshot.png) + +Compatibility +---- + +Please note that the current stable version of Minetest (0.4.16) is unable to position the fireflies above groundlevel. The mod is otherwise fully functional and can be used; but requires the current dev version of Minetest for optimal firefly placement. + +License +---- + +Code for this mod is released under MIT (https://opensource.org/licenses/MIT). + +Please see license.txt for texture licenses. \ No newline at end of file diff --git a/mods/fireflies/depends.txt b/mods/fireflies/depends.txt new file mode 100644 index 0000000..e0585b4 --- /dev/null +++ b/mods/fireflies/depends.txt @@ -0,0 +1,2 @@ +default +vessels \ No newline at end of file diff --git a/mods/fireflies/description.txt b/mods/fireflies/description.txt new file mode 100644 index 0000000..a6e083e --- /dev/null +++ b/mods/fireflies/description.txt @@ -0,0 +1 @@ +Adds fireflies which can be caught in a net and placed in bottles for lighting. \ No newline at end of file diff --git a/mods/fireflies/init.lua b/mods/fireflies/init.lua new file mode 100644 index 0000000..df4f570 --- /dev/null +++ b/mods/fireflies/init.lua @@ -0,0 +1,173 @@ + +-- firefly +minetest.register_node("fireflies:firefly", { + description = "Firefly", + drawtype = "plantlike", + tiles = {{ + name = "fireflies_firefly_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 1.5 + }, + }}, + inventory_image = "fireflies_firefly.png", + wield_image = "fireflies_firefly.png", + waving = 1, + paramtype = "light", + sunlight_propagates = true, + buildable_to = true, + walkable = false, + groups = {catchable = 1}, + selection_box = { + type = "fixed", + fixed = {-0.1, -0.1, -0.1, 0.1, 0.1, 0.1}, + }, + light_source = 6, + floodable = true, + on_flood = function(pos, oldnode, newnode) + minetest.add_item(pos, "fireflies:firefly 1") + end +}) + + +-- bug net +minetest.register_tool("fireflies:bug_net", { + description = "Bug Net", + inventory_image = "fireflies_bugnet.png", + on_use = function(itemstack, player, pointed_thing) + if not pointed_thing or pointed_thing.type ~= "node" or + minetest.is_protected(pointed_thing.under, player:get_player_name()) then + return + end + local node_name = minetest.get_node(pointed_thing.under).name + local inv = player:get_inventory() + if minetest.get_item_group(node_name, "catchable") == 1 then + minetest.set_node(pointed_thing.under, {name = "air"}) + local stack = ItemStack(node_name.." 1") + local leftover = inv:add_item("main", stack) + if leftover:get_count() > 0 then + minetest.add_item(pointed_thing.under, node_name.." 1") + end + end + if not minetest.setting_getbool("creative_mode") then + itemstack:add_wear(256) + return itemstack + end + end +}) + +minetest.register_craft( { + output = "fireflies:bug_net", + recipe = { + {"farming:string", "farming:string", ""}, + {"farming:string", "farming:string", ""}, + {"default:stick", "", ""} + } +}) + + +-- firefly in a bottle +minetest.register_node("fireflies:firefly_bottle", { + description = "Firefly in a Bottle", + inventory_image = "fireflies_bottle.png", + wield_image = "fireflies_bottle.png", + tiles = {{ + name = "fireflies_bottle_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 1.5 + }, + }}, + drawtype = "plantlike", + paramtype = "light", + sunlight_propagates = true, + light_source = 9, + walkable = false, + groups = {snappy = 3, attached_node = 1}, + selection_box = { + type = "fixed", + fixed = {-0.25, -0.5, -0.25, 0.25, 0.3, 0.25} + }, + sounds = default.node_sound_glass_defaults(), + on_rightclick = function(pos, node, player, itemstack, pointed_thing) + local lower_pos = {x = pos.x, y = pos.y + 1, z = pos.z} + if minetest.is_protected(pos, player:get_player_name()) or + minetest.get_node(lower_pos).name ~= "air" then + return + end + + local upper_pos = {x = pos.x, y = pos.y + 2, z = pos.z} + local firefly_pos + + if not minetest.is_protected(upper_pos, player:get_player_name()) and + minetest.get_node(upper_pos).name == "air" then + firefly_pos = upper_pos + elseif not minetest.is_protected(lower_pos, player:get_player_name()) then + firefly_pos = lower_pos + end + + if firefly_pos then + minetest.set_node(pos, {name = "vessels:glass_bottle"}) + minetest.set_node(firefly_pos, {name = "fireflies:firefly"}) + end + end +}) + +minetest.register_craft( { + output = "fireflies:firefly_bottle", + recipe = { + {"", "", ""}, + {"", "fireflies:firefly", ""}, + {"", "vessels:glass_bottle", ""} + } +}) + + +-- register fireflies as decorations +minetest.register_decoration({ + deco_type = "simple", + place_on = { + "default:dirt_with_grass", + "default:dirt_with_coniferous_litter", + "default:dirt_with_rainforest_litter", + "default:dirt" + }, + place_offset_y = 2, + sidelen = 80, + fill_ratio = 0.002, + biomes = { + "deciduous_forest", + "coniferous_forest", + "rainforest", + "rainforest_swamp" + }, + y_min = -1, + y_max = 31000, + decoration = "fireflies:firefly", +}) + +minetest.register_decoration({ + deco_type = "simple", + place_on = { + "default:dirt_with_grass", + "default:dirt_with_coniferous_litter", + "default:dirt_with_rainforest_litter", + "default:dirt" + }, + place_offset_y = 3, + sidelen = 80, + fill_ratio = 0.002, + biomes = { + "deciduous_forest", + "coniferous_forest", + "rainforest", + "rainforest_swamp" + }, + y_min = -1, + y_max = 31000, + decoration = "fireflies:firefly", +}) diff --git a/mods/fireflies/license.txt b/mods/fireflies/license.txt new file mode 100644 index 0000000..ea64aad --- /dev/null +++ b/mods/fireflies/license.txt @@ -0,0 +1,45 @@ + +Code License: MIT (https://opensource.org/licenses/MIT) +By Shara RedCat + +--- + +The MIT License (MIT) + +Copyright (c) 2018 Shara RedCat + +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. + +--- + + +Textures +-------- + +Shara RedCat (CC BY-SA 3.0): + fireflies_firefly.png + fireflies_firefly_animated.png + fireflies_bugnet.png + fireflies_bottle.png + fireflies_bottle_animated.png + +fireflies_bugnet.png is modified from a texture by tenplus1 (CC0) + +fireflies_bottle.png and fireflies_bottle_animated.png are +modified from a texture by Vanessa Ezekowitz (CC BY-SA 3.0) \ No newline at end of file diff --git a/mods/fireflies/mod.conf b/mods/fireflies/mod.conf new file mode 100644 index 0000000..d4b4332 --- /dev/null +++ b/mods/fireflies/mod.conf @@ -0,0 +1,2 @@ +name = fireflies +depends = default, vessels \ No newline at end of file diff --git a/mods/fireflies/screenshot.png b/mods/fireflies/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..5f646b2c877f4c893ce0da4e21a5c0a8cec24695 GIT binary patch literal 44514 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 literal 0 HcmV?d00001 diff --git a/mods/fireflies/textures/fireflies_bottle.png b/mods/fireflies/textures/fireflies_bottle.png new file mode 100644 index 0000000000000000000000000000000000000000..a44761aa072df9a45c12218cbae520582fbd3dd9 GIT binary patch literal 161 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPE^4e$wZbuaL_a{bZPU1txSxHhpo zb@kR0|Np01raCeL6)=_r`2{mLJiCzw>2k%yIgNpw`j@ z9LWaG8ER~79a3s;8p;klDjZ1$28Se=d{%TxinKPeFzkKK9R0Skpa5tJgQu&X%Q~lo FCICs0G1LG6 literal 0 HcmV?d00001 diff --git a/mods/fireflies/textures/fireflies_bottle_animated.png b/mods/fireflies/textures/fireflies_bottle_animated.png new file mode 100644 index 0000000000000000000000000000000000000000..d395a3a1714ef6a321bff390fd924c281100c90f GIT binary patch literal 185 zcmeAS@N?(olHy`uVBq!ia0vp^0zjO=!VDyz{eM3hNC^e_gt)pF_-xvF=F0U)hfZ9Z zSf2X-f7*??Ym|AsXkC6BPJ1SU6;)DXTJboIb*-rFwuR z*}yr&jg75C%550~hqD8t3P+NG!9fYGo)uk^EmI^r*i&|~pAra=O?l_o;(tM*m|v$R g!u@djoG;7_|1JpJtGOp11+;*{)78&qol`;+06jN7ng9R* literal 0 HcmV?d00001 diff --git a/mods/fireflies/textures/fireflies_bugnet.png b/mods/fireflies/textures/fireflies_bugnet.png new file mode 100644 index 0000000000000000000000000000000000000000..350eccc61f29d0e7dfee0b21e514c62bca335d55 GIT binary patch literal 186 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPHV5AX?bbuaJ4$k|}P!*U_Jnt96(hfY3$3ye&6>($SP z?dNG}ao2M&yY0`g^Z17gX-`})T~xNYViCcjGfA;y;q36D`HxQB_F~NJe$Id4m1TNX g#MM``><_S;-{Ilv6}P*t2(*O3)78&qol`;+0M2PaJ^%m! literal 0 HcmV?d00001 diff --git a/mods/fireflies/textures/fireflies_firefly.png b/mods/fireflies/textures/fireflies_firefly.png new file mode 100644 index 0000000000000000000000000000000000000000..adea1b0dcd761d5014a72534cc37013a302f34f8 GIT binary patch literal 114 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!93?!50ihlx9JOMr-uI>ds|6eiOKg;?5Tc2jp z4_lx(V@Z%-FoVOh8)-m}h^LEV2*>s01O+AoYX;6^Y)Mm?7-YXQ9IYzc;0Kgv@O1Ta JS?83{1OPW%9`XPH literal 0 HcmV?d00001 diff --git a/mods/fireflies/textures/fireflies_firefly_animated.png b/mods/fireflies/textures/fireflies_firefly_animated.png new file mode 100644 index 0000000000000000000000000000000000000000..b12cc7c4f1131dcb21a7662213db37e947f54615 GIT binary patch literal 123 zcmeAS@N?(olHy`uVBq!ia0vp^0zllr#0(_se=}|bQak}ZA+GKPKL1}a+&|0t|68AC z(GOdoIAckWUoeBivm0qZj;yDPV~EE2