Compare commits
No commits in common. "21bbb75b5ab7c7bd111ff457d1a0ad7a339c68a7" and "bc1276b5eb20939ec25757046eb18ddce9820eb9" have entirely different histories.
21bbb75b5a
...
bc1276b5eb
3
depends.txt
Executable file
3
depends.txt
Executable file
@ -0,0 +1,3 @@
|
||||
default
|
||||
moretrees?
|
||||
ethereal?
|
1
description.txt
Executable file
1
description.txt
Executable file
@ -0,0 +1 @@
|
||||
Adds basic furniture (Chairs, Tables, Small Tables, Tiny Tables, Benches).
|
114
init.lua
114
init.lua
@ -3,26 +3,9 @@ ts_furniture = {}
|
||||
-- If true, you can sit on chairs and benches, when right-click them.
|
||||
ts_furniture.enable_sitting = minetest.settings:get_bool("ts_furniture.enable_sitting", true)
|
||||
ts_furniture.globalstep = minetest.settings:get_bool("ts_furniture.globalstep", true)
|
||||
ts_furniture.kneeling_bench = minetest.settings:get_bool("ts_furniture.kneeling_bench", false)
|
||||
|
||||
-- Used for localization
|
||||
local S = minetest.get_translator("ts_furniture")
|
||||
local has_player_monoids = minetest.get_modpath("player_monoids")
|
||||
|
||||
-- Get texture by node name
|
||||
local T = function (node_name)
|
||||
local def = minetest.registered_nodes[node_name]
|
||||
if not (def and def.tiles) then
|
||||
return ""
|
||||
end
|
||||
local tile = def.tiles[5] or def.tiles[4] or def.tiles[3] or def.tiles[2] or def.tiles[1]
|
||||
if type(tile) == "string" then
|
||||
return tile
|
||||
elseif type(tile) == "table" and tile.name then
|
||||
return tile.name
|
||||
end
|
||||
return ""
|
||||
end
|
||||
|
||||
-- The following code is from "Get Comfortable [cozy]" (by everamzah; published under WTFPL)
|
||||
-- Thomas S. modified it, so that it can be used in this mod
|
||||
@ -30,19 +13,13 @@ if ts_furniture.enable_sitting then
|
||||
ts_furniture.sit = function(pos, _, player)
|
||||
local name = player:get_player_name()
|
||||
if not player_api.player_attached[name] then
|
||||
if vector.length(player:get_velocity()) > 0.5 then
|
||||
if vector.length(player:get_player_velocity()) > 0 then
|
||||
minetest.chat_send_player(player:get_player_name(), 'You can only sit down when you are not moving.')
|
||||
return
|
||||
end
|
||||
player:move_to(pos)
|
||||
player:set_eye_offset({x = 0, y = -7, z = 2}, {x = 0, y = 0, z = 0})
|
||||
if has_player_monoids then
|
||||
player_monoids.speed:add_change(player, 0, "ts_furniture:sit")
|
||||
player_monoids.jump:add_change(player, 0, "ts_furniture:sit")
|
||||
player_monoids.gravity:add_change(player, 0, "ts_furniture:sit")
|
||||
else
|
||||
player:set_physics_override({speed = 0, jump = 0, gravity = 0})
|
||||
end
|
||||
player:set_physics_override(0, 0, 0)
|
||||
player_api.player_attached[name] = true
|
||||
minetest.after(0.1, function()
|
||||
if player then
|
||||
@ -63,13 +40,7 @@ if ts_furniture.enable_sitting then
|
||||
|
||||
ts_furniture.stand = function(player, name)
|
||||
player:set_eye_offset({x = 0, y = 0, z = 0}, {x = 0, y = 0, z = 0})
|
||||
if has_player_monoids then
|
||||
player_monoids.speed:del_change(player, "ts_furniture:sit")
|
||||
player_monoids.jump:del_change(player, "ts_furniture:sit")
|
||||
player_monoids.gravity:del_change(player, "ts_furniture:sit")
|
||||
else
|
||||
player:set_physics_override({speed = 1, jump = 1, gravity = 1})
|
||||
end
|
||||
player:set_physics_override(1, 1, 1)
|
||||
player_api.player_attached[name] = false
|
||||
player_api.set_animation(player, "stand", 30)
|
||||
end
|
||||
@ -84,7 +55,7 @@ if ts_furniture.enable_sitting then
|
||||
local ctrl = player:get_player_control()
|
||||
if default.player_attached[name] and not player:get_attach() and
|
||||
(ctrl.up or ctrl.down or ctrl.left or ctrl.right or ctrl.jump) then
|
||||
ts_furniture.up(nil, nil, player)
|
||||
ts_furniture.up(_, _, player)
|
||||
end
|
||||
end
|
||||
end)
|
||||
@ -176,37 +147,12 @@ local furnitures = {
|
||||
}
|
||||
}
|
||||
|
||||
if ts_furniture.kneeling_bench then
|
||||
furnitures.kneeling_bench = {
|
||||
description = "Kneeling Bench",
|
||||
nodebox = {
|
||||
{ -0.5, -0.5, 0.4, 0.5, 0.5, 0.5 },
|
||||
{ -0.4, -0.5, -0.2, -0.3, -0.3, 0.5 },
|
||||
{ 0.3, -0.5, -0.2, 0.4, -0.3, 0.5 },
|
||||
{ -0.5, -0.3, -0.2, 0.5, -0.2, 0.2},
|
||||
{ -0.5, 0.4, 0.15, 0.5, 0.5, 0.55},
|
||||
},
|
||||
craft = function(recipe)
|
||||
local bench_name = "ts_furniture:" .. recipe:gsub(":", "_") .. "_bench"
|
||||
return {
|
||||
{ recipe, "" },
|
||||
{ recipe, bench_name }
|
||||
}
|
||||
end
|
||||
}
|
||||
end
|
||||
|
||||
local ignore_groups = {
|
||||
["wood"] = true,
|
||||
["stone"] = true,
|
||||
["tree"] = true
|
||||
["stone"] = true
|
||||
}
|
||||
|
||||
function ts_furniture.register_furniture(recipe, description, tiles)
|
||||
if not tiles then
|
||||
tiles = T(recipe)
|
||||
end
|
||||
|
||||
local recipe_def = minetest.registered_items[recipe]
|
||||
if not recipe_def then
|
||||
return
|
||||
@ -250,34 +196,34 @@ function ts_furniture.register_furniture(recipe, description, tiles)
|
||||
end
|
||||
end
|
||||
|
||||
ts_furniture.register_furniture("default:aspen_wood", "Aspen")
|
||||
ts_furniture.register_furniture("default:pine_wood", "Pine")
|
||||
ts_furniture.register_furniture("default:acacia_wood", "Acacia")
|
||||
ts_furniture.register_furniture("default:wood", "Wooden")
|
||||
ts_furniture.register_furniture("default:junglewood", "Jungle Wood")
|
||||
ts_furniture.register_furniture("default:aspen_wood", "Aspen", "default_aspen_wood.png")
|
||||
ts_furniture.register_furniture("default:pine_wood", "Pine", "default_pine_wood.png")
|
||||
ts_furniture.register_furniture("default:acacia_wood", "Acacia", "default_acacia_wood.png")
|
||||
ts_furniture.register_furniture("default:wood", "Wooden", "default_wood.png")
|
||||
ts_furniture.register_furniture("default:junglewood", "Jungle Wood", "default_junglewood.png")
|
||||
|
||||
if (minetest.get_modpath("moretrees")) then
|
||||
ts_furniture.register_furniture("moretrees:apple_tree_planks", "Apple Tree")
|
||||
ts_furniture.register_furniture("moretrees:beech_planks", "Beech")
|
||||
ts_furniture.register_furniture("moretrees:birch_planks", "Birch")
|
||||
ts_furniture.register_furniture("moretrees:fir_planks", "Fir")
|
||||
ts_furniture.register_furniture("moretrees:oak_planks", "Oak")
|
||||
ts_furniture.register_furniture("moretrees:palm_planks", "Palm")
|
||||
ts_furniture.register_furniture("moretrees:rubber_tree_planks", "Rubber Tree")
|
||||
ts_furniture.register_furniture("moretrees:sequoia_planks", "Sequoia")
|
||||
ts_furniture.register_furniture("moretrees:spruce_planks", "Spruce")
|
||||
ts_furniture.register_furniture("moretrees:willow_planks", "Willow")
|
||||
ts_furniture.register_furniture("moretrees:apple_tree_planks", "Apple Tree", "moretrees_apple_tree_wood.png")
|
||||
ts_furniture.register_furniture("moretrees:beech_planks", "Beech", "moretrees_beech_wood.png")
|
||||
ts_furniture.register_furniture("moretrees:birch_planks", "Birch", "moretrees_birch_wood.png")
|
||||
ts_furniture.register_furniture("moretrees:fir_planks", "Fir", "moretrees_fir_wood.png")
|
||||
ts_furniture.register_furniture("moretrees:oak_planks", "Oak", "moretrees_oak_wood.png")
|
||||
ts_furniture.register_furniture("moretrees:palm_planks", "Palm", "moretrees_palm_wood.png")
|
||||
ts_furniture.register_furniture("moretrees:rubber_tree_planks", "Rubber Tree", "moretrees_rubber_tree_wood.png")
|
||||
ts_furniture.register_furniture("moretrees:sequoia_planks", "Sequoia", "moretrees_sequoia_wood.png")
|
||||
ts_furniture.register_furniture("moretrees:spruce_planks", "Spruce", "moretrees_spruce_wood.png")
|
||||
ts_furniture.register_furniture("moretrees:willow_planks", "Willow", "moretrees_willow_wood.png")
|
||||
end
|
||||
|
||||
if minetest.get_modpath("ethereal") then
|
||||
ts_furniture.register_furniture("ethereal:banana_wood", "Banana")
|
||||
ts_furniture.register_furniture("ethereal:birch_wood", "Birch")
|
||||
ts_furniture.register_furniture("ethereal:frost_wood", "Frost")
|
||||
ts_furniture.register_furniture("ethereal:mushroom_trunk", "Mushroom")
|
||||
ts_furniture.register_furniture("ethereal:palm_wood", "Palm")
|
||||
ts_furniture.register_furniture("ethereal:redwood_wood", "Redwood")
|
||||
ts_furniture.register_furniture("ethereal:sakura_wood", "Sakura")
|
||||
ts_furniture.register_furniture("ethereal:scorched_tree", "Scorched")
|
||||
ts_furniture.register_furniture("ethereal:willow_wood", "Willow")
|
||||
ts_furniture.register_furniture("ethereal:yellow_wood", "Healing Tree")
|
||||
ts_furniture.register_furniture("ethereal:banana_wood", "Banana", "banana_wood.png")
|
||||
ts_furniture.register_furniture("ethereal:birch_wood", "Birch", "moretrees_birch_wood.png")
|
||||
ts_furniture.register_furniture("ethereal:frost_wood", "Frost", "frost_wood.png")
|
||||
ts_furniture.register_furniture("ethereal:mushroom_trunk", "Mushroom", "mushroom_trunk.png")
|
||||
ts_furniture.register_furniture("ethereal:palm_wood", "Palm", "moretrees_palm_wood.png")
|
||||
ts_furniture.register_furniture("ethereal:redwood_wood", "Redwood", "redwood_wood.png")
|
||||
ts_furniture.register_furniture("ethereal:sakura_wood", "Sakura", "ethereal_sakura_wood.png")
|
||||
ts_furniture.register_furniture("ethereal:scorched_tree", "Scorched", "scorched_tree.png")
|
||||
ts_furniture.register_furniture("ethereal:willow_wood", "Willow", "willow_wood.png")
|
||||
ts_furniture.register_furniture("ethereal:yellow_wood", "Healing Tree", "yellow_wood.png")
|
||||
end
|
||||
|
@ -1,116 +0,0 @@
|
||||
# textdomain:ts_furniture
|
||||
Aspen Small Table=Petite table en bois de tremble
|
||||
Aspen Tiny Table=Table basse en bois de tremble
|
||||
Aspen Bench=Banc en bois de tremble
|
||||
Aspen Table=Table en bois de tremble
|
||||
Aspen Chair=Chaise en bois de tremble
|
||||
Pine Small Table=Petite table en bois de pin
|
||||
Pine Tiny Table=Table basse en bois de pin
|
||||
Pine Bench=Banc en bois de pin
|
||||
Pine Table=Table en bois de pin
|
||||
Pine Chair=Chaise en bois de pin
|
||||
Acacia Small Table=Petite table en bois d'acacia
|
||||
Acacia Tiny Table=Petite table en bois d'acacia
|
||||
Acacia Bench=Banc en bois d'acacia
|
||||
Acacia Table=Table en bois d'acacia
|
||||
Acacia Chair=Chaise en bois d'acacia
|
||||
Wooden Small Table=Petite table en bois
|
||||
Wooden Tiny Table=Table basse en bois
|
||||
Wooden Bench=Banc en bois
|
||||
Wooden Table=Table en bois
|
||||
Wooden Chair=Chaise en bois
|
||||
Jungle Wood Small Table=Petite table en bois de la jungle
|
||||
Jungle Wood Tiny Table=Table basse en bois de la jungle
|
||||
Jungle Wood Bench=Banc en bois de la jungle
|
||||
Jungle Wood Table=Table en bois de la jungle
|
||||
Jungle Wood Chair=Chaise en bois de la jungle
|
||||
Apple Tree Small Table=Petite table en bois de pommier
|
||||
Apple Tree Tiny Table=Table basse en bois de pommier
|
||||
Apple Tree Bench=Banc en bois de pommier
|
||||
Apple Tree Table=Table en bois de pommier
|
||||
Apple Tree Chair=Chaise en bois de pommier
|
||||
Beech Small Table=Petite table en bois de hêtre
|
||||
Beech Tiny Table=Table basse en bois de hêtre
|
||||
Beech Bench=Banc en bois de hêtre
|
||||
Beech Table=Table en bois de hêtre
|
||||
Beech Chair=Chaise en bois de hêtre
|
||||
Birch Small Table=Petite table en bois de bouleau
|
||||
Birch Tiny Table=Table basse en bois de bouleau
|
||||
Birch Bench=Banc en bois de bouleau
|
||||
Birch Table=Table en bois de bouleau
|
||||
Birch Chair=Chaise en bois de bouleau
|
||||
Fir Small Table=Petite table en bois de sapin
|
||||
Fir Tiny Table=Table basse en bois de sapin
|
||||
Fir Bench=Banc en bois de sapin
|
||||
Fir Table=Table en bois de sapin
|
||||
Fir Chair=Chaise en bois de sapin
|
||||
Oak Small Table=Petite table en bois de chêne
|
||||
Oak Tiny Table=Table basse en bois de chêne
|
||||
Oak Bench=Banc en bois de chêne
|
||||
Oak Table=Table en bois de chêne
|
||||
Oak Chair=Chaise en bois de chêne
|
||||
Palm Small Table=Petite table en bois de palmier
|
||||
Palm Tiny Table=Table basse en bois de palmier
|
||||
Palm Bench=Banc en bois de palmier
|
||||
Palm Table=Table en bois de palmier
|
||||
Palm Chair=Chaise en bois de palmier
|
||||
Rubber Tree Small Table=Petite table en bois d'arbre à caoutchouc
|
||||
Rubber Tree Tiny Table=Table basse en bois d'arbre à caoutchouc
|
||||
Rubber Tree Bench=Banc en bois d'arbre à caoutchouc
|
||||
Rubber Tree Table=Table en bois d'arbre à caoutchouc
|
||||
Rubber Tree Chair=Chaise en bois d'arbre à caoutchouc
|
||||
Sequoia Small Table=Petite table en bois de sequoia
|
||||
Sequoia Tiny Table=Table basse en bois de sequoia
|
||||
Sequoia Bench=Banc en bois de sequoia
|
||||
Sequoia Table=Table en bois de sequoia
|
||||
Sequoia Chair=Chaise en bois de sequoia
|
||||
Spruce Small Table=Petite table en bois d'épicéa
|
||||
Spruce Tiny Table=Table basse en bois d'épicéa
|
||||
Spruce Bench=Banc en bois d'épicéa
|
||||
Spruce Table=Table en bois d'épicéa
|
||||
Spruce Chair=Chaise en bois d'épicéa
|
||||
Willow Small Table=Petite table en bois de saule
|
||||
Willow Tiny Table=Table basse en bois de saule
|
||||
Willow Bench=Banc en bois de saule
|
||||
Willow Table=Table en bois de saule
|
||||
Willow Chair=Chaise en bois de saule
|
||||
Banana Small Table=Petite table en bois de bananier
|
||||
Banana Tiny Table=Table basse en bois de bananier
|
||||
Banana Bench=Banc en bois de bananier
|
||||
Banana Table=Table en bois de bananier
|
||||
Banana Chair=Chaise en bois de bananier
|
||||
Frost Small Table=Petite table en bois de givrier
|
||||
Frost Tiny Table=Table basse en bois de givrier
|
||||
Frost Bench=Banc en bois de givrier
|
||||
Frost Table=Table en bois de givrier
|
||||
Frost Chair=Chaise en bois de givrier
|
||||
Mushroom Small Table=Petite table en champignon
|
||||
Mushroom Tiny Table=Table basse en champignon
|
||||
Mushroom Bench=Banc en champignon
|
||||
Mushroom Table=Table en champignon
|
||||
Mushroom Chair=Chaise en champignon
|
||||
Palm Small Table=Petite table en bois de palmier
|
||||
Palm Tiny Table=Table basse en bois de palmier
|
||||
Palm Bench=Banc en bois de palmier
|
||||
Palm Table=Table en bois de palmier
|
||||
Palm Chair=Chaise en bois de palmier
|
||||
Redwood Small Table=Petite table en bois de séquoia
|
||||
Redwood Tiny Table=Table basse en bois de séquoia
|
||||
Redwood Bench=Banc en bois de séquoia
|
||||
Redwood Table=Table en bois de séquoia
|
||||
Redwood Chair=Chaise en bois de séquoia
|
||||
Sakura Small Table=Petite table en bois de cerisier du Japon
|
||||
Sakura Tiny Table=Table basse en bois de cerisier du Japon
|
||||
Sakura Bench=Banc en bois de cerisier du Japon
|
||||
Sakura Table=Table en bois de cerisier du Japon
|
||||
Sakura Chair=Chaise en bois de cerisier du Japon
|
||||
Scorched Small Table=Petite table en bois brûlé
|
||||
Scorched Tiny Table=Table basse en bois brûlé
|
||||
Scorched Bench=Banc en bois brûlé
|
||||
Scorched Table=Table en bois brûlé
|
||||
Scorched Chair=Chaise en bois brûlé
|
||||
Healing Tree Small Table=Petite table en bois de soignantier
|
||||
Healing Tree Tiny Table=Table basse en bois de soignantier
|
||||
Healing Tree Bench=Banc en bois de soignantier
|
||||
Healing Tree Table=Table en bois de soignantier
|
||||
Healing Tree Chair=Chaise en bois de soignantier
|
2
mod.conf
2
mod.conf
@ -1,4 +1,4 @@
|
||||
name = ts_furniture
|
||||
depends = default
|
||||
optional_depends = moretrees, ethereal, player_monoids
|
||||
optional_depends = moretrees, ethereal
|
||||
description = Adds basic furniture (Chairs, Tables, Small Tables, Tiny Tables, Benches).
|
||||
|
@ -1,3 +1,2 @@
|
||||
ts_furniture.enable_sitting (Enable sitting) bool true
|
||||
ts_furniture.globalstep (Enable globalstep) bool true
|
||||
ts_furniture.kneeling_bench (Enable kneeling benches) bool false
|
||||
|
Loading…
x
Reference in New Issue
Block a user