Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • Illuna-Minetest/minetest_game
  • ClaudiusMinimus/minetest_game
  • xthediamondlegox/minetest_game
  • Elvas/minetest_game
4 results
Show changes
Commits on Source (124)
Showing
with 165 additions and 92 deletions
[submodule "mods/boats"]
path = mods/boats
url = https://git.tchncs.de/Illuna-Minetest/boats.git
[submodule "mods/illuna"] [submodule "mods/illuna"]
path = mods/illuna path = mods/illuna
url = https://git.tchncs.de/Illuna-Minetest/illuna.git url = https://git.tchncs.de/Illuna-Minetest/illuna.git
...@@ -16,9 +13,6 @@ ...@@ -16,9 +13,6 @@
[submodule "mods/mobs_animal"] [submodule "mods/mobs_animal"]
path = mods/mobs_animal path = mods/mobs_animal
url = https://git.tchncs.de/Illuna-Minetest/mobs_animal.git url = https://git.tchncs.de/Illuna-Minetest/mobs_animal.git
[submodule "mods/farming"]
path = mods/farming
url = https://git.tchncs.de/Illuna-Minetest/farming.git
[submodule "mods/worldedit"] [submodule "mods/worldedit"]
path = mods/worldedit path = mods/worldedit
url = https://github.com/Uberi/Minetest-WorldEdit url = https://github.com/Uberi/Minetest-WorldEdit
...@@ -65,6 +59,18 @@ ...@@ -65,6 +59,18 @@
[submodule "mods/pkarcs"] [submodule "mods/pkarcs"]
path = mods/pkarcs path = mods/pkarcs
url = https://git.tchncs.de/Illuna-Minetest/pkarcs url = https://git.tchncs.de/Illuna-Minetest/pkarcs
[submodule "mods/farming"]
path = mods/farming
url = https://git.tchncs.de/Illuna-Minetest/farming
[submodule "mods/boats"]
path = mods/boats
url = https://git.tchncs.de/Illuna-Minetest/boats
[submodule "mods/technic_chests"]
path = mods/technic_chests
url = https://git.tchncs.de/Illuna-Minetest/technic_chests
[submodule "mods/columnia"] [submodule "mods/columnia"]
path = mods/columnia path = mods/columnia
url = https://git.tchncs.de/Illuna-Minetest/columnia url = https://git.tchncs.de/Illuna-Minetest/columnia
[submodule "mods/coloured_nametag"]
path = mods/coloured_nametag
url = https://github.com/Amaz1/coloured_nametag
unused_args = false
allow_defined_top = true
read_globals = {
"DIR_DELIM",
"minetest", "core",
"dump",
"vector", "nodeupdate",
"VoxelManip", "VoxelArea",
"PseudoRandom", "ItemStack",
}
-- Overwrites minetest.handle_node_drops
files["mods/creative/init.lua"].globals = { "minetest" }
-- Don't report on legacy definitions of globals.
files["mods/default/legacy.lua"].global = false
language: generic
branches:
only:
- master
sudo: required
before_install:
- sudo apt-get update
- sudo apt-get install -y luarocks
- sudo luarocks install luacheck
script: luacheck --no-color ./mods
...@@ -62,6 +62,11 @@ Beds API ...@@ -62,6 +62,11 @@ Beds API
} }
} }
Creative API
------------
A global string called `creative.formspec_add` was added which allows mods to add additional formspec elements onto the default creative inventory formspec to be drawn after each update.
Doors API Doors API
--------- ---------
...@@ -245,6 +250,18 @@ Give Initial Stuff API ...@@ -245,6 +250,18 @@ Give Initial Stuff API
^ str is a comma separated list of initial stuff ^ str is a comma separated list of initial stuff
^ Adds items to the list of items to be given ^ Adds items to the list of items to be given
Nyancat API
-----------
`nyancat.place(pos, facedir, length)`
^ Place a cat at `pos` facing `facedir` with tail length `length`
Only accepts facedir 0-3, if facedir > 3 then it will be interpreted as facedir = 0
`nyancat.generate(minp, maxp, seed)`
^ Called by `minetest.register_on_generated`. To disable nyancat generation,
you can redefine nyancat.generate() to be an empty function
TNT API TNT API
---------- ----------
...@@ -331,7 +348,7 @@ To use it, add the `on_screwdriver` function to the node definition. ...@@ -331,7 +348,7 @@ To use it, add the `on_screwdriver` function to the node definition.
* `new_param2` the new value of param2 that would have been set if on_rotate wasn't there * `new_param2` the new value of param2 that would have been set if on_rotate wasn't there
* return value: false to disallow rotation, nil to keep default behaviour, true to allow * return value: false to disallow rotation, nil to keep default behaviour, true to allow
it but to indicate that changed have already been made (so the screwdriver will wear out) it but to indicate that changed have already been made (so the screwdriver will wear out)
* use `on_rotate = screwdriver.disallow` to always disallow rotation * use `on_rotate = false` to always disallow rotation
* use `on_rotate = screwdriver.rotate_simple` to allow only face rotation * use `on_rotate = screwdriver.rotate_simple` to allow only face rotation
......
...@@ -5,6 +5,12 @@ ...@@ -5,6 +5,12 @@
# Whether creative mode (fast digging of all blocks, unlimited resources) should be enabled # Whether creative mode (fast digging of all blocks, unlimited resources) should be enabled
#creative_mode = false #creative_mode = false
# Sets the behaviour of the inventory items when a player dies.
# "bones": Store all items inside a bone node but drop items if inside protected area
# "drop": Drop all items on the ground
# "keep": Player keeps all items
#bones_mode = "bones"
# The time in seconds after which the bones of a dead player can be looted by everyone # The time in seconds after which the bones of a dead player can be looted by everyone
# 0 to disable # 0 to disable
#share_bones_time = 1200 #share_bones_time = 1200
...@@ -14,9 +20,9 @@ ...@@ -14,9 +20,9 @@
# 0 to disable. By default it is "share_bones_time" divide by four. # 0 to disable. By default it is "share_bones_time" divide by four.
#share_bones_time_early = 300 #share_bones_time_early = 300
# Whether standard fire should be disabled ('basic flame' nodes will disappear) # Whether fire should be enabled. If disabled, 'basic flame' nodes will disappear.
# 'permanent flame' nodes will remain with either setting # 'permanent flame' nodes will remain with either setting.
#disable_fire = false #enable_fire = true
# Whether the stuff in initial_stuff should be given to new players # Whether the stuff in initial_stuff should be given to new players
#give_initial_stuff = false #give_initial_stuff = false
......
...@@ -70,7 +70,7 @@ local function lay_down(player, pos, bed_pos, state, skip) ...@@ -70,7 +70,7 @@ local function lay_down(player, pos, bed_pos, state, skip)
-- physics, eye_offset, etc -- physics, eye_offset, etc
player:set_eye_offset({x = 0, y = 0, z = 0}, {x = 0, y = 0, z = 0}) player:set_eye_offset({x = 0, y = 0, z = 0}, {x = 0, y = 0, z = 0})
player:set_look_yaw(math.random(1, 180) / 100) player:set_look_horizontal(math.random(1, 180) / 100)
default.player_attached[name] = false default.player_attached[name] = false
player:set_physics_override(1, 1, 1) player:set_physics_override(1, 1, 1)
hud_flags.wielditem = true hud_flags.wielditem = true
...@@ -85,7 +85,7 @@ local function lay_down(player, pos, bed_pos, state, skip) ...@@ -85,7 +85,7 @@ local function lay_down(player, pos, bed_pos, state, skip)
-- physics, eye_offset, etc -- physics, eye_offset, etc
player:set_eye_offset({x = 0, y = -13, z = 0}, {x = 0, y = 0, z = 0}) player:set_eye_offset({x = 0, y = -13, z = 0}, {x = 0, y = 0, z = 0})
local yaw, param2 = get_look_yaw(bed_pos) local yaw, param2 = get_look_yaw(bed_pos)
player:set_look_yaw(yaw) player:set_look_horizontal(yaw)
local dir = minetest.facedir_to_dir(param2) local dir = minetest.facedir_to_dir(param2)
local p = {x = bed_pos.x + dir.x / 2, y = bed_pos.y, z = bed_pos.z + dir.z / 2} local p = {x = bed_pos.x + dir.x / 2, y = bed_pos.y, z = bed_pos.z + dir.z / 2}
player:set_physics_override(0, 0, 0) player:set_physics_override(0, 0, 0)
......
...@@ -14,4 +14,4 @@ http://creativecommons.org/licenses/by-sa/3.0/ ...@@ -14,4 +14,4 @@ http://creativecommons.org/licenses/by-sa/3.0/
Authors of media files Authors of media files
---------------------- ----------------------
Bad_Command_ All textures: paramat
-- Minetest 0.4 mod: bones -- Minetest 0.4 mod: bones
-- See README.txt for licensing and other information. -- See README.txt for licensing and other information.
bones = {}
local function is_owner(pos, name) local function is_owner(pos, name)
local owner = minetest.get_meta(pos):get_string("owner") local owner = minetest.get_meta(pos):get_string("owner")
...@@ -11,7 +9,7 @@ local function is_owner(pos, name) ...@@ -11,7 +9,7 @@ local function is_owner(pos, name)
return false return false
end end
bones.bones_formspec = local bones_formspec =
"size[8,9]" .. "size[8,9]" ..
default.gui_bg .. default.gui_bg ..
default.gui_bg_img .. default.gui_bg_img ..
...@@ -29,7 +27,7 @@ local share_bones_time_early = tonumber(minetest.setting_get("share_bones_time_e ...@@ -29,7 +27,7 @@ local share_bones_time_early = tonumber(minetest.setting_get("share_bones_time_e
minetest.register_node("bones:bones", { minetest.register_node("bones:bones", {
description = "Bones", description = "Bones",
tiles = { tiles = {
"bones_top.png", "bones_top.png^[transform2",
"bones_bottom.png", "bones_bottom.png",
"bones_side.png", "bones_side.png",
"bones_side.png", "bones_side.png",
...@@ -37,12 +35,9 @@ minetest.register_node("bones:bones", { ...@@ -37,12 +35,9 @@ minetest.register_node("bones:bones", {
"bones_front.png" "bones_front.png"
}, },
paramtype2 = "facedir", paramtype2 = "facedir",
groups = {dig_immediate=2}, groups = {dig_immediate = 2},
sounds = default.node_sound_dirt_defaults({ sounds = default.node_sound_gravel_defaults(),
footstep = {name="default_gravel_footstep", gain=0.5},
dug = {name="default_gravel_footstep", gain=1.0},
}),
can_dig = function(pos, player) can_dig = function(pos, player)
local inv = minetest.get_meta(pos):get_inventory() local inv = minetest.get_meta(pos):get_inventory()
local name = "" local name = ""
...@@ -51,46 +46,46 @@ minetest.register_node("bones:bones", { ...@@ -51,46 +46,46 @@ minetest.register_node("bones:bones", {
end end
return is_owner(pos, name) and inv:is_empty("main") return is_owner(pos, name) and inv:is_empty("main")
end, end,
allow_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player) allow_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
if is_owner(pos, player:get_player_name()) then if is_owner(pos, player:get_player_name()) then
return count return count
end end
return 0 return 0
end, end,
allow_metadata_inventory_put = function(pos, listname, index, stack, player) allow_metadata_inventory_put = function(pos, listname, index, stack, player)
return 0 return 0
end, end,
allow_metadata_inventory_take = function(pos, listname, index, stack, player) allow_metadata_inventory_take = function(pos, listname, index, stack, player)
if is_owner(pos, player:get_player_name()) then if is_owner(pos, player:get_player_name()) then
return stack:get_count() return stack:get_count()
end end
return 0 return 0
end, end,
on_metadata_inventory_take = function(pos, listname, index, stack, player) on_metadata_inventory_take = function(pos, listname, index, stack, player)
local meta = minetest.get_meta(pos) local meta = minetest.get_meta(pos)
if meta:get_inventory():is_empty("main") then if meta:get_inventory():is_empty("main") then
minetest.remove_node(pos) minetest.remove_node(pos)
end end
end, end,
on_punch = function(pos, node, player) on_punch = function(pos, node, player)
if(not is_owner(pos, player:get_player_name())) then if not is_owner(pos, player:get_player_name()) then
return return
end end
if(minetest.get_meta(pos):get_string("infotext") == "") then if minetest.get_meta(pos):get_string("infotext") == "" then
return return
end end
local inv = minetest.get_meta(pos):get_inventory() local inv = minetest.get_meta(pos):get_inventory()
local player_inv = player:get_inventory() local player_inv = player:get_inventory()
local has_space = true local has_space = true
for i=1,inv:get_size("main") do for i = 1, inv:get_size("main") do
local stk = inv:get_stack("main", i) local stk = inv:get_stack("main", i)
if player_inv:room_for_item("main", stk) then if player_inv:room_for_item("main", stk) then
inv:set_stack("main", i, nil) inv:set_stack("main", i, nil)
...@@ -100,7 +95,7 @@ minetest.register_node("bones:bones", { ...@@ -100,7 +95,7 @@ minetest.register_node("bones:bones", {
break break
end end
end end
-- remove bones if player emptied them -- remove bones if player emptied them
if has_space then if has_space then
if player_inv:room_for_item("main", {name = "bones:bones"}) then if player_inv:room_for_item("main", {name = "bones:bones"}) then
...@@ -111,12 +106,12 @@ minetest.register_node("bones:bones", { ...@@ -111,12 +106,12 @@ minetest.register_node("bones:bones", {
minetest.remove_node(pos) minetest.remove_node(pos)
end end
end, end,
on_timer = function(pos, elapsed) on_timer = function(pos, elapsed)
local meta = minetest.get_meta(pos) local meta = minetest.get_meta(pos)
local time = meta:get_int("time") + elapsed local time = meta:get_int("time") + elapsed
if time >= share_bones_time then if time >= share_bones_time then
meta:set_string("infotext", meta:get_string("owner").."'s old bones") meta:set_string("infotext", meta:get_string("owner") .. "'s old bones")
meta:set_string("owner", "") meta:set_string("owner", "")
else else
meta:set_int("time", time) meta:set_int("time", time)
...@@ -131,13 +126,9 @@ local function may_replace(pos, player) ...@@ -131,13 +126,9 @@ local function may_replace(pos, player)
local node_name = minetest.get_node(pos).name local node_name = minetest.get_node(pos).name
local node_definition = minetest.registered_nodes[node_name] local node_definition = minetest.registered_nodes[node_name]
-- if the node is unknown, we let the protection mod decide -- if the node is unknown, we return false
-- this is consistent with when a player could dig or not dig it
-- unknown decoration would often be removed
-- while unknown building materials in use would usually be left
if not node_definition then if not node_definition then
-- only replace nodes that are not protected return false
return not minetest.is_protected(pos, player:get_player_name())
end end
-- allow replacing air and liquids -- allow replacing air and liquids
...@@ -157,73 +148,94 @@ local function may_replace(pos, player) ...@@ -157,73 +148,94 @@ local function may_replace(pos, player)
return node_definition.buildable_to and not minetest.is_protected(pos, player:get_player_name()) return node_definition.buildable_to and not minetest.is_protected(pos, player:get_player_name())
end end
local drop = function(pos, itemstack)
local obj = minetest.add_item(pos, itemstack:take_item(itemstack:get_count()))
if obj then
obj:setvelocity({
x = math.random(-10, 10) / 9,
y = 5,
z = math.random(-10, 10) / 9,
})
end
end
minetest.register_on_dieplayer(function(player) minetest.register_on_dieplayer(function(player)
if minetest.setting_getbool("creative_mode") then
local bones_mode = minetest.setting_get("bones_mode") or "bones"
if bones_mode ~= "bones" and bones_mode ~= "drop" and bones_mode ~= "keep" then
bones_mode = "bones"
end
-- return if keep inventory set or in creative mode
if bones_mode == "keep" or minetest.setting_getbool("creative_mode") then
return return
end end
local player_inv = player:get_inventory() local player_inv = player:get_inventory()
if player_inv:is_empty("main") and if player_inv:is_empty("main") and
player_inv:is_empty("craft") then player_inv:is_empty("craft") then
return return
end end
local pos = player:getpos() local pos = vector.round(player:getpos())
pos.x = math.floor(pos.x+0.5)
pos.y = math.floor(pos.y+0.5)
pos.z = math.floor(pos.z+0.5)
local param2 = minetest.dir_to_facedir(player:get_look_dir())
local player_name = player:get_player_name() local player_name = player:get_player_name()
if (not may_replace(pos, player)) then -- check if it's possible to place bones, if not go 1 higher
if (may_replace({x=pos.x, y=pos.y+1, z=pos.z}, player)) then if bones_mode == "bones" and not may_replace(pos, player) then
-- drop one node above if there's space pos.y = pos.y + 1
-- this should solve most cases of protection related deaths in which players dig straight down end
-- yet keeps the bones reachable
pos.y = pos.y+1 -- still cannot place bones? change mode to 'drop'
else if bones_mode == "bones" and not may_replace(pos, player) then
-- drop items instead of delete bones_mode = "drop"
for i=1,player_inv:get_size("main") do end
minetest.add_item(pos, player_inv:get_stack("main", i))
end if bones_mode == "drop" then
for i=1,player_inv:get_size("craft") do
minetest.add_item(pos, player_inv:get_stack("craft", i)) -- drop inventory items
end for i = 1, player_inv:get_size("main") do
-- empty lists main and craft drop(pos, player_inv:get_stack("main", i))
player_inv:set_list("main", {})
player_inv:set_list("craft", {})
return
end end
player_inv:set_list("main", {})
-- drop crafting grid items
for i = 1, player_inv:get_size("craft") do
drop(pos, player_inv:get_stack("craft", i))
end
player_inv:set_list("craft", {})
drop(pos, ItemStack("bones:bones"))
return
end end
minetest.set_node(pos, {name="bones:bones", param2=param2})
minetest.chat_send_player(player_name, "Your stuff is waiting for you at "..minetest.pos_to_string(pos).. ". Go and grab it! ;-)") local param2 = minetest.dir_to_facedir(player:get_look_dir())
minetest.log("action", player_name.." left their bones at "..minetest.pos_to_string(pos)) minetest.set_node(pos, {name = "bones:bones", param2 = param2})
minetest.chat_send_player(player_name, "Your stuff is waiting for you at "..minetest.pos_to_string(pos).. ". Go and grab it! ;-)")
minetest.log("action", player_name.." left their bones at "..minetest.pos_to_string(pos))
local meta = minetest.get_meta(pos) local meta = minetest.get_meta(pos)
local inv = meta:get_inventory() local inv = meta:get_inventory()
inv:set_size("main", 8*4) inv:set_size("main", 8 * 4)
inv:set_list("main", player_inv:get_list("main")) inv:set_list("main", player_inv:get_list("main"))
for i=1,player_inv:get_size("craft") do for i = 1, player_inv:get_size("craft") do
local stack = player_inv:get_stack("craft", i) local stack = player_inv:get_stack("craft", i)
if inv:room_for_item("main", stack) then if inv:room_for_item("main", stack) then
inv:add_item("main", stack) inv:add_item("main", stack)
else else
--drop if no space left --drop if no space left
minetest.add_item(pos, stack) drop(pos, stack)
end end
end end
player_inv:set_list("main", {}) player_inv:set_list("main", {})
player_inv:set_list("craft", {}) player_inv:set_list("craft", {})
meta:set_string("formspec", bones.bones_formspec) meta:set_string("formspec", bones_formspec)
meta:set_string("owner", player_name) meta:set_string("owner", player_name)
if share_bones_time ~= 0 then if share_bones_time ~= 0 then
meta:set_string("infotext", player_name.."'s fresh bones") meta:set_string("infotext", player_name .. "'s fresh bones")
if share_bones_time_early == 0 or not minetest.is_protected(pos, player_name) then if share_bones_time_early == 0 or not minetest.is_protected(pos, player_name) then
meta:set_int("time", 0) meta:set_int("time", 0)
......
mods/bones/textures/bones_bottom.png

181 B | W: 0px | H: 0px

mods/bones/textures/bones_bottom.png

740 B | W: 0px | H: 0px

mods/bones/textures/bones_bottom.png
mods/bones/textures/bones_bottom.png
mods/bones/textures/bones_bottom.png
mods/bones/textures/bones_bottom.png
  • 2-up
  • Swipe
  • Onion skin
mods/bones/textures/bones_front.png

183 B | W: 0px | H: 0px

mods/bones/textures/bones_front.png

656 B | W: 0px | H: 0px

mods/bones/textures/bones_front.png
mods/bones/textures/bones_front.png
mods/bones/textures/bones_front.png
mods/bones/textures/bones_front.png
  • 2-up
  • Swipe
  • Onion skin
mods/bones/textures/bones_rear.png

187 B | W: 0px | H: 0px

mods/bones/textures/bones_rear.png

637 B | W: 0px | H: 0px

mods/bones/textures/bones_rear.png
mods/bones/textures/bones_rear.png
mods/bones/textures/bones_rear.png
mods/bones/textures/bones_rear.png
  • 2-up
  • Swipe
  • Onion skin
mods/bones/textures/bones_side.png

188 B | W: 0px | H: 0px

mods/bones/textures/bones_side.png

700 B | W: 0px | H: 0px

mods/bones/textures/bones_side.png
mods/bones/textures/bones_side.png
mods/bones/textures/bones_side.png
mods/bones/textures/bones_side.png
  • 2-up
  • Swipe
  • Onion skin
mods/bones/textures/bones_top.png

182 B | W: 0px | H: 0px

mods/bones/textures/bones_top.png

662 B | W: 0px | H: 0px

mods/bones/textures/bones_top.png
mods/bones/textures/bones_top.png
mods/bones/textures/bones_top.png
mods/bones/textures/bones_top.png
  • 2-up
  • Swipe
  • Onion skin
Subproject commit 819daa52f1c8e1621489a5f8d73ad9a29e6efa4e Subproject commit 5013537e24f526fbae97a6693a08d6eff7f8cd9b
...@@ -141,7 +141,7 @@ minetest.register_craftitem("bucket:bucket_empty", { ...@@ -141,7 +141,7 @@ minetest.register_craftitem("bucket:bucket_empty", {
else else
local pos = user:getpos() local pos = user:getpos()
pos.y = math.floor(pos.y + 0.5) pos.y = math.floor(pos.y + 0.5)
core.add_item(pos, liquiddef.itemname) minetest.add_item(pos, liquiddef.itemname)
end end
-- set to return empty buckets minus 1 -- set to return empty buckets minus 1
......
Subproject commit c50a4ca893e5383d75ff274533327a5faf20b1b7
Subproject commit c3a57b9e17bdca5679366fab1518d19d01fd433f Subproject commit 7a5384239d0e86b126cd873c5585061fb8926add
...@@ -125,7 +125,7 @@ creative.set_creative_formspec = function(player, start_i) ...@@ -125,7 +125,7 @@ creative.set_creative_formspec = function(player, start_i)
tooltip[creative_clear;Reset] tooltip[creative_clear;Reset]
listring[current_player;main] listring[current_player;main]
]] .. ]] ..
"field[0.3,3.5;2.2,1;creative_filter;;" .. inv.filter .. "]" .. "field[0.3,3.5;2.2,1;creative_filter;;" .. minetest.formspec_escape(inv.filter) .. ";false]" ..
"listring[detached:creative_" .. player_name .. ";main]" .. "listring[detached:creative_" .. player_name .. ";main]" ..
"tabheader[0,0;creative_tabs;Crafting,All,Nodes,Tools,Items;" .. tostring(inv.tab_id) .. ";true;false]" .. "tabheader[0,0;creative_tabs;Crafting,All,Nodes,Tools,Items;" .. tostring(inv.tab_id) .. ";true;false]" ..
"list[detached:creative_" .. player_name .. ";main;0,0;8,3;" .. tostring(start_i) .. "]" .. "list[detached:creative_" .. player_name .. ";main;0,0;8,3;" .. tostring(start_i) .. "]" ..
...@@ -192,7 +192,8 @@ minetest.register_on_player_receive_fields(function(player, formname, fields) ...@@ -192,7 +192,8 @@ minetest.register_on_player_receive_fields(function(player, formname, fields)
inv.filter = "" inv.filter = ""
creative.update_creative_inventory(player_name) creative.update_creative_inventory(player_name)
creative.set_creative_formspec(player, 0) creative.set_creative_formspec(player, 0)
elseif fields.creative_search then elseif fields.creative_search or
fields.key_enter_field == "creative_filter" then
player_inventory[player_name].start_i = 1 player_inventory[player_name].start_i = 1
inv.filter = fields.creative_filter:lower() inv.filter = fields.creative_filter:lower()
creative.update_creative_inventory(player_name) creative.update_creative_inventory(player_name)
......
Subproject commit 272e10fc3d59e1f5dc05ebc2ec1bd2b46f8d725b Subproject commit 3d7d76d4b4becaa00bb658769fa6dde4e2eafe96
...@@ -51,13 +51,11 @@ RealBadAngel's animated water (WTFPL): ...@@ -51,13 +51,11 @@ RealBadAngel's animated water (WTFPL):
default_water_flowing_animated.png default_water_flowing_animated.png
VanessaE (WTFPL): VanessaE (WTFPL):
default_nc_back.png
default_nc_front.png
default_nc_rb.png
default_nc_side.png
default_desert_sand.png default_desert_sand.png
default_desert_stone.png default_desert_stone.png
default_sand.png default_sand.png
default_mese_crystal.png
default_mese_crystal_fragment.png
Calinou (CC BY-SA): Calinou (CC BY-SA):
default_brick.png default_brick.png
...@@ -125,6 +123,7 @@ paramat (CC BY-SA 3.0): ...@@ -125,6 +123,7 @@ paramat (CC BY-SA 3.0):
default_grass.png default_grass.png
default_grass_side.png default_grass_side.png
default_snow_side.png default_snow_side.png
default_mese_block.png
brunob.santos (CC BY-SA 4.0): brunob.santos (CC BY-SA 4.0):
default_desert_cobble.png default_desert_cobble.png
......