fireflies - sync with oiginal and add support for ethereal
* sync with fireflies of upstream original mod and from minenux * Add vessels group to firefly vessel * Detect creative mode and creative privilegies, using creative mod * Detect ethereal mod and provide more biomes of place
This commit is contained in:
parent
ea2069d30e
commit
ee13c9f46a
@ -1,27 +1,69 @@
|
||||
Fireflies
|
||||
===
|
||||
minetest mod Fireflies
|
||||
======================
|
||||
|
||||
Adds fireflies which can be caught in a net and placed in bottles for lighting
|
||||
|
||||
Intro
|
||||
----
|
||||
Information
|
||||
-----------
|
||||
|
||||
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.
|
||||
This mod was originally adapted from original but with featured ethereal more biomes, that was 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
|
||||
----
|
||||
## Techinal info
|
||||
-------------
|
||||
|
||||
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
|
||||
----
|
||||
#### nodes
|
||||
|
||||
| node name | Description | Aditional info |
|
||||
| ------------------------ | ------------------- | ---------------------------------------- |
|
||||
| fireflies:firefly | Firefly | is not a mob, really a node |
|
||||
| fireflies:bug_net | Bug net | tool type, to catch fireflies |
|
||||
| fireflies:firefly_bottle | Firefly in a Bottle | When you catch a firefly with the bottle |
|
||||
|
||||
#### Crafts
|
||||
|
||||
`fireflies:firefly_bottle`
|
||||
|
||||
```
|
||||
{"fireflies:firefly"},
|
||||
{"vessels:glass_bottle"}
|
||||
```
|
||||
|
||||
`fireflies:bug_net`
|
||||
|
||||
```
|
||||
{"farming:string", "farming:string"},
|
||||
{"farming:string", "farming:string"},
|
||||
```
|
||||
|
||||
## License
|
||||
-------
|
||||
|
||||
Code for this mod is released under MIT (https://opensource.org/licenses/MIT).
|
||||
|
||||
Please see license.txt for texture licenses.
|
||||
#### Authors of source code
|
||||
|
||||
Shara RedCat (MIT)
|
||||
|
||||
#### Authors of media (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)
|
||||
|
||||
check [license.txt](license.txt)
|
||||
|
@ -1,6 +1,9 @@
|
||||
-- firefly/init.lua
|
||||
|
||||
-- support to more biomes if ethereal is detected
|
||||
local m_eth = minetest.get_modpath("ethereal")
|
||||
-- detecting cretive engine over creative privilegies
|
||||
local m_cre = minetest.get_modpath("creative")
|
||||
|
||||
-- firefly
|
||||
minetest.register_node("fireflies:firefly", {
|
||||
@ -40,7 +43,7 @@ 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
|
||||
if not pointed_thing or pointed_thing.type ~= "node" or
|
||||
minetest.is_protected(pointed_thing.under, player:get_player_name()) then
|
||||
return
|
||||
end
|
||||
@ -52,11 +55,13 @@ minetest.register_tool("fireflies:bug_net", {
|
||||
local leftover = inv:add_item("main", stack)
|
||||
if leftover:get_count() > 0 then
|
||||
minetest.add_item(pointed_thing.under, node_name.." 1")
|
||||
end
|
||||
end
|
||||
end
|
||||
if not minetest.setting_getbool("creative_mode") then
|
||||
itemstack:add_wear(256)
|
||||
return itemstack
|
||||
if not m_cre then
|
||||
if creative.is_enabled_for(player:get_player_name())) then
|
||||
itemstack:add_wear(256)
|
||||
return itemstack
|
||||
end
|
||||
end
|
||||
end
|
||||
})
|
||||
@ -90,7 +95,7 @@ minetest.register_node("fireflies:firefly_bottle", {
|
||||
sunlight_propagates = true,
|
||||
light_source = 9,
|
||||
walkable = false,
|
||||
groups = {snappy = 3, attached_node = 1},
|
||||
groups = {vessel = 1, dig_immediate = 3, snappy = 3, attached_node = 1},
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-0.25, -0.5, -0.25, 0.25, 0.3, 0.25}
|
||||
@ -129,32 +134,11 @@ minetest.register_craft( {
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
-- 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",
|
||||
})
|
||||
local biomes_allowed = {}
|
||||
local places_allowed = {}
|
||||
|
||||
if m_eth then
|
||||
local biomes_allowed = {
|
||||
biomes_allowed = {
|
||||
"deciduous_forest",
|
||||
"coniferous_forest",
|
||||
"rainforest",
|
||||
@ -162,30 +146,87 @@ if m_eth then
|
||||
"grassland",
|
||||
"junglee",
|
||||
"junglee_ocean",
|
||||
"bamboo",
|
||||
"mountain"
|
||||
"bamboo"
|
||||
}
|
||||
places_allowed = {
|
||||
"default:dirt_with_grass",
|
||||
"default:dirt_with_coniferous_litter",
|
||||
"default:dirt_with_rainforest_litter",
|
||||
"default:dirt",
|
||||
"default:dirt_with_grass",
|
||||
"ethereal:junglee_dirt",
|
||||
"default:sand",
|
||||
"ethereal:bamboo_dirt"
|
||||
}
|
||||
else
|
||||
local biomes_Allowed = {
|
||||
biomes_allowed = {
|
||||
"deciduous_forest",
|
||||
"coniferous_forest",
|
||||
"rainforest",
|
||||
"rainforest_swamp"
|
||||
}
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {
|
||||
places_allowed = {
|
||||
"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 = biomes_allowed,
|
||||
y_min = -1,
|
||||
y_max = 31000,
|
||||
decoration = "fireflies:firefly",
|
||||
})
|
||||
}
|
||||
end
|
||||
|
||||
-- register fireflies as decorations
|
||||
|
||||
if minetest.get_mapgen_setting("mg_name") == "v6" then
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "fireflies:firefly_low",
|
||||
deco_type = "simple",
|
||||
place_on = "default:dirt_with_grass",
|
||||
place_offset_y = 2,
|
||||
sidelen = 80,
|
||||
fill_ratio = 0.0002,
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
decoration = "fireflies:hidden_firefly",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "fireflies:firefly_high",
|
||||
deco_type = "simple",
|
||||
place_on = "default:dirt_with_grass",
|
||||
place_offset_y = 3,
|
||||
sidelen = 80,
|
||||
fill_ratio = 0.0002,
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
decoration = "fireflies:hidden_firefly",
|
||||
})
|
||||
|
||||
else
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "fireflies:firefly_low",
|
||||
deco_type = "simple",
|
||||
place_on = places_allowed,
|
||||
place_offset_y = 2,
|
||||
sidelen = 80,
|
||||
fill_ratio = 0.002,
|
||||
biomes = biomes_allowed,
|
||||
y_max = 31000,
|
||||
y_min = -1,
|
||||
decoration = "fireflies:firefly",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "fireflies:firefly_high",
|
||||
deco_type = "simple",
|
||||
place_on = places_allowed,
|
||||
place_offset_y = 3,
|
||||
sidelen = 80,
|
||||
fill_ratio = 0.002,
|
||||
biomes = biomes_allowed,
|
||||
y_max = 31000,
|
||||
y_min = -1,
|
||||
decoration = "fireflies:firefly",
|
||||
})
|
||||
|
||||
end
|
||||
|
@ -1,3 +1,4 @@
|
||||
name = fireflies
|
||||
description = Adds fireflies which can be caught in a net and placed in bottles for lighting.
|
||||
depends = default, vessels
|
||||
optional_depends = ethereal
|
||||
optional_depends = ethereal
|
||||
|
Loading…
x
Reference in New Issue
Block a user