develop #35
7 changed files with 55 additions and 42 deletions
|
@ -36,7 +36,7 @@ minetest.register_craft({
|
||||||
minetest.register_craftitem("farming:cornstarch", {
|
minetest.register_craftitem("farming:cornstarch", {
|
||||||
description = S("Cornstarch"),
|
description = S("Cornstarch"),
|
||||||
inventory_image = "farming_cornstarch.png",
|
inventory_image = "farming_cornstarch.png",
|
||||||
groups = {food_cornstarch = 1, flammable = 2}
|
groups = {food_cornstarch = 1, food_gelatin = 1, food_flammable = 2}
|
||||||
})
|
})
|
||||||
|
|
||||||
minetest.register_craft({
|
minetest.register_craft({
|
||||||
|
|
|
@ -193,7 +193,7 @@ minetest.register_craft({
|
||||||
recipe = {
|
recipe = {
|
||||||
{"group:food_gelatin", "group:food_sugar", "group:food_gelatin"},
|
{"group:food_gelatin", "group:food_sugar", "group:food_gelatin"},
|
||||||
{"group:food_sugar", "group:food_rose_water", "group:food_sugar"},
|
{"group:food_sugar", "group:food_rose_water", "group:food_sugar"},
|
||||||
{"group:food_cornstarch", "group:food_sugar", "dye:pink"}
|
{"group:food_sugar", "dye:pink", "group:food_sugar"}
|
||||||
},
|
},
|
||||||
replacements = {
|
replacements = {
|
||||||
{"group:food_cornstarch", "farming:bowl"},
|
{"group:food_cornstarch", "farming:bowl"},
|
||||||
|
@ -555,7 +555,10 @@ minetest.register_craft({
|
||||||
"group:food_sugar", "group:food_milk", "farming:caramel",
|
"group:food_sugar", "group:food_milk", "farming:caramel",
|
||||||
"group:food_egg", "group:food_egg", "farming:vanilla_extract"
|
"group:food_egg", "group:food_egg", "farming:vanilla_extract"
|
||||||
},
|
},
|
||||||
replacements = {{"mobs:bucket_milk", "bucket:bucket_empty"}}
|
replacements = {
|
||||||
|
{"group:food_milk", "bucket:bucket_empty"},
|
||||||
|
{"farming:vanilla_extract", "vessels:glass_bottle"}
|
||||||
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
-- Vegan Cheese
|
-- Vegan Cheese
|
||||||
|
|
|
@ -29,7 +29,12 @@ mobs:register_mob("mob_horse:horse", {
|
||||||
speed_normal = 15,
|
speed_normal = 15,
|
||||||
speed_run = 30,
|
speed_run = 30,
|
||||||
stand_start = 25,
|
stand_start = 25,
|
||||||
stand_end = 75,
|
stand_end = 50, -- 75
|
||||||
|
stand2_start = 25,
|
||||||
|
stand2_end = 25,
|
||||||
|
stand3_start = 55,
|
||||||
|
stand3_end = 75,
|
||||||
|
stand3_loop = false,
|
||||||
walk_start = 75,
|
walk_start = 75,
|
||||||
walk_end = 100,
|
walk_end = 100,
|
||||||
run_start = 75,
|
run_start = 75,
|
||||||
|
|
|
@ -8,7 +8,7 @@ local use_cmi = minetest.global_exists("cmi")
|
||||||
|
|
||||||
mobs = {
|
mobs = {
|
||||||
mod = "redo",
|
mod = "redo",
|
||||||
version = "20210310",
|
version = "20210318",
|
||||||
intllib = S,
|
intllib = S,
|
||||||
invis = minetest.global_exists("invisibility") and invisibility or {}
|
invis = minetest.global_exists("invisibility") and invisibility or {}
|
||||||
}
|
}
|
||||||
|
@ -2697,34 +2697,17 @@ function mob_class:falling(pos)
|
||||||
-- sanity check
|
-- sanity check
|
||||||
if not v then return end
|
if not v then return end
|
||||||
|
|
||||||
local fall_speed = -10 -- gravity
|
local fall_speed = self.fall_speed
|
||||||
|
|
||||||
-- don't exceed mob fall speed
|
|
||||||
if v.y < self.fall_speed then
|
|
||||||
fall_speed = self.fall_speed
|
|
||||||
end
|
|
||||||
|
|
||||||
-- in water then use liquid viscosity for float/sink speed
|
-- in water then use liquid viscosity for float/sink speed
|
||||||
if (self.standing_in
|
if self.floats == 1 and self.standing_in
|
||||||
and minetest.registered_nodes[self.standing_in].groups.liquid)
|
and minetest.registered_nodes[self.standing_in].groups.liquid then
|
||||||
or (self.standing_on
|
|
||||||
and minetest.registered_nodes[self.standing_in].groups.liquid) then
|
|
||||||
|
|
||||||
local visc = min(
|
local visc = min(
|
||||||
minetest.registered_nodes[self.standing_in].liquid_viscosity, 7)
|
minetest.registered_nodes[self.standing_in].liquid_viscosity, 7) + 1
|
||||||
|
|
||||||
if self.floats == 1 then
|
self.object:set_velocity({x = v.x, y = 0.6, z = v.z})
|
||||||
|
fall_speed = -1.2 / visc
|
||||||
-- floating up
|
|
||||||
if visc > 0 then
|
|
||||||
fall_speed = max(1, v.y) / (visc + 1)
|
|
||||||
end
|
|
||||||
else
|
|
||||||
-- sinking down
|
|
||||||
if visc > 0 then
|
|
||||||
fall_speed = -(max(1, v.y) / (visc + 1))
|
|
||||||
end
|
|
||||||
end
|
|
||||||
else
|
else
|
||||||
|
|
||||||
-- fall damage onto solid ground
|
-- fall damage onto solid ground
|
||||||
|
|
|
@ -194,7 +194,7 @@ local nodes = {
|
||||||
description = S("Iron Glass"),
|
description = S("Iron Glass"),
|
||||||
drawtype = "glasslike_framed_optional",
|
drawtype = "glasslike_framed_optional",
|
||||||
tiles = {"default_glass.png^[colorize:#DEDEDE", "default_glass_detail.png^[colorize:#DEDEDE"},
|
tiles = {"default_glass.png^[colorize:#DEDEDE", "default_glass_detail.png^[colorize:#DEDEDE"},
|
||||||
use_texture_alpha = true,
|
use_texture_alpha = "clip",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
sunlight_propagates = true,
|
sunlight_propagates = true,
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
|
@ -205,7 +205,7 @@ local nodes = {
|
||||||
description = S("Coal Glass"),
|
description = S("Coal Glass"),
|
||||||
drawtype = "glasslike_framed_optional",
|
drawtype = "glasslike_framed_optional",
|
||||||
tiles = {"default_glass.png^[colorize:#828282", "default_glass_detail.png^[colorize:#828282"},
|
tiles = {"default_glass.png^[colorize:#828282", "default_glass_detail.png^[colorize:#828282"},
|
||||||
use_texture_alpha = true,
|
use_texture_alpha = "clip",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
sunlight_propagates = true,
|
sunlight_propagates = true,
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
|
@ -216,7 +216,7 @@ local nodes = {
|
||||||
description = S("Clean Glass"),
|
description = S("Clean Glass"),
|
||||||
drawtype = "glasslike_framed_optional",
|
drawtype = "glasslike_framed_optional",
|
||||||
tiles = {"moreblocks_clean_glass.png", "moreblocks_clean_glass_detail.png"},
|
tiles = {"moreblocks_clean_glass.png", "moreblocks_clean_glass_detail.png"},
|
||||||
use_texture_alpha = true,
|
use_texture_alpha = "clip",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
sunlight_propagates = true,
|
sunlight_propagates = true,
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
|
@ -316,7 +316,7 @@ local nodes = {
|
||||||
description = S("Trap Glass"),
|
description = S("Trap Glass"),
|
||||||
drawtype = "glasslike_framed_optional",
|
drawtype = "glasslike_framed_optional",
|
||||||
tiles = {"default_glass.png^moreblocks_trap_box_glass.png", "default_glass_detail.png"},
|
tiles = {"default_glass.png^moreblocks_trap_box_glass.png", "default_glass_detail.png"},
|
||||||
use_texture_alpha = true,
|
use_texture_alpha = "clip",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
sunlight_propagates = true,
|
sunlight_propagates = true,
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
|
@ -329,7 +329,7 @@ local nodes = {
|
||||||
description = S("Trap Obsidian Glass"),
|
description = S("Trap Obsidian Glass"),
|
||||||
drawtype = "glasslike_framed_optional",
|
drawtype = "glasslike_framed_optional",
|
||||||
tiles = {"default_obsidian_glass.png^moreblocks_trap_box_glass.png", "default_obsidian_glass_detail.png"},
|
tiles = {"default_obsidian_glass.png^moreblocks_trap_box_glass.png", "default_obsidian_glass_detail.png"},
|
||||||
use_texture_alpha = true,
|
use_texture_alpha = "clip",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
sunlight_propagates = true,
|
sunlight_propagates = true,
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
|
@ -353,7 +353,7 @@ local nodes = {
|
||||||
description = S("Trap Clean Glass"),
|
description = S("Trap Clean Glass"),
|
||||||
drawtype = "glasslike_framed_optional",
|
drawtype = "glasslike_framed_optional",
|
||||||
tiles = {"moreblocks_clean_glass.png^moreblocks_trap_box_glass.png", "moreblocks_clean_glass_detail.png"},
|
tiles = {"moreblocks_clean_glass.png^moreblocks_trap_box_glass.png", "moreblocks_clean_glass_detail.png"},
|
||||||
use_texture_alpha = true,
|
use_texture_alpha = "clip",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
sunlight_propagates = true,
|
sunlight_propagates = true,
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
|
@ -412,7 +412,7 @@ local nodes = {
|
||||||
description = S("Glow Glass"),
|
description = S("Glow Glass"),
|
||||||
drawtype = "glasslike_framed_optional",
|
drawtype = "glasslike_framed_optional",
|
||||||
tiles = {"default_glass.png^[colorize:#E9CD61", "default_glass_detail.png^[colorize:#E9CD61"},
|
tiles = {"default_glass.png^[colorize:#E9CD61", "default_glass_detail.png^[colorize:#E9CD61"},
|
||||||
use_texture_alpha = true,
|
use_texture_alpha = "clip",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
sunlight_propagates = true,
|
sunlight_propagates = true,
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
|
@ -424,7 +424,7 @@ local nodes = {
|
||||||
description = S("Clean Glow Glass"),
|
description = S("Clean Glow Glass"),
|
||||||
drawtype = "glasslike_framed_optional",
|
drawtype = "glasslike_framed_optional",
|
||||||
tiles = {"moreblocks_clean_glass.png^[colorize:#E9CD61", "moreblocks_clean_glass_detail.png^[colorize:#E9CD61"},
|
tiles = {"moreblocks_clean_glass.png^[colorize:#E9CD61", "moreblocks_clean_glass_detail.png^[colorize:#E9CD61"},
|
||||||
use_texture_alpha = true,
|
use_texture_alpha = "clip",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
sunlight_propagates = true,
|
sunlight_propagates = true,
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
|
@ -436,7 +436,7 @@ local nodes = {
|
||||||
description = S("Trap Glow Glass"),
|
description = S("Trap Glow Glass"),
|
||||||
drawtype = "glasslike_framed_optional",
|
drawtype = "glasslike_framed_optional",
|
||||||
tiles = {"default_glass.png^[colorize:#E9CD61^moreblocks_trap_box_glass.png", "default_glass_detail.png^[colorize:#E9CD61"},
|
tiles = {"default_glass.png^[colorize:#E9CD61^moreblocks_trap_box_glass.png", "default_glass_detail.png^[colorize:#E9CD61"},
|
||||||
use_texture_alpha = true,
|
use_texture_alpha = "clip",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
sunlight_propagates = true,
|
sunlight_propagates = true,
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
|
@ -450,7 +450,7 @@ local nodes = {
|
||||||
description = S("Trap Clean Glow Glass"),
|
description = S("Trap Clean Glow Glass"),
|
||||||
drawtype = "glasslike_framed_optional",
|
drawtype = "glasslike_framed_optional",
|
||||||
tiles = {"moreblocks_clean_glass.png^[colorize:#E9CD61^moreblocks_trap_box_glass.png", "moreblocks_clean_glass_detail.png^[colorize:#E9CD61"},
|
tiles = {"moreblocks_clean_glass.png^[colorize:#E9CD61^moreblocks_trap_box_glass.png", "moreblocks_clean_glass_detail.png^[colorize:#E9CD61"},
|
||||||
use_texture_alpha = true,
|
use_texture_alpha = "clip",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
sunlight_propagates = true,
|
sunlight_propagates = true,
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
|
@ -464,7 +464,7 @@ local nodes = {
|
||||||
description = S("Super Glow Glass"),
|
description = S("Super Glow Glass"),
|
||||||
drawtype = "glasslike_framed_optional",
|
drawtype = "glasslike_framed_optional",
|
||||||
tiles = {"default_glass.png^[colorize:#FFFF78", "default_glass_detail.png^[colorize:#FFFF78"},
|
tiles = {"default_glass.png^[colorize:#FFFF78", "default_glass_detail.png^[colorize:#FFFF78"},
|
||||||
use_texture_alpha = true,
|
use_texture_alpha = "clip",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
sunlight_propagates = true,
|
sunlight_propagates = true,
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
|
@ -476,7 +476,7 @@ local nodes = {
|
||||||
description = S("Clean Super Glow Glass"),
|
description = S("Clean Super Glow Glass"),
|
||||||
drawtype = "glasslike_framed_optional",
|
drawtype = "glasslike_framed_optional",
|
||||||
tiles = {"moreblocks_clean_glass.png^[colorize:#FFFF78", "moreblocks_clean_glass_detail.png^[colorize:#FFFF78"},
|
tiles = {"moreblocks_clean_glass.png^[colorize:#FFFF78", "moreblocks_clean_glass_detail.png^[colorize:#FFFF78"},
|
||||||
use_texture_alpha = true,
|
use_texture_alpha = "clip",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
sunlight_propagates = true,
|
sunlight_propagates = true,
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
|
@ -488,7 +488,7 @@ local nodes = {
|
||||||
description = S("Trap Super Glow Glass"),
|
description = S("Trap Super Glow Glass"),
|
||||||
drawtype = "glasslike_framed_optional",
|
drawtype = "glasslike_framed_optional",
|
||||||
tiles = {"default_glass.png^[colorize:#FFFF78^moreblocks_trap_box_glass.png", "default_glass_detail.png^[colorize:#FFFF78"},
|
tiles = {"default_glass.png^[colorize:#FFFF78^moreblocks_trap_box_glass.png", "default_glass_detail.png^[colorize:#FFFF78"},
|
||||||
use_texture_alpha = true,
|
use_texture_alpha = "clip",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
sunlight_propagates = true,
|
sunlight_propagates = true,
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
|
@ -502,7 +502,7 @@ local nodes = {
|
||||||
description = S("Trap Clean Super Glow Glass"),
|
description = S("Trap Clean Super Glow Glass"),
|
||||||
drawtype = "glasslike_framed_optional",
|
drawtype = "glasslike_framed_optional",
|
||||||
tiles = {"moreblocks_clean_glass.png^[colorize:#FFFF78^moreblocks_trap_box_glass.png", "moreblocks_clean_glass_detail.png^[colorize:#FFFF78"},
|
tiles = {"moreblocks_clean_glass.png^[colorize:#FFFF78^moreblocks_trap_box_glass.png", "moreblocks_clean_glass_detail.png^[colorize:#FFFF78"},
|
||||||
use_texture_alpha = true,
|
use_texture_alpha = "clip",
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
sunlight_propagates = true,
|
sunlight_propagates = true,
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
|
|
|
@ -3,6 +3,7 @@ ts_furniture = {}
|
||||||
-- If true, you can sit on chairs and benches, when right-click them.
|
-- 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.enable_sitting = minetest.settings:get_bool("ts_furniture.enable_sitting", true)
|
||||||
ts_furniture.globalstep = minetest.settings:get_bool("ts_furniture.globalstep", 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
|
-- Used for localization
|
||||||
local S = minetest.get_translator("ts_furniture")
|
local S = minetest.get_translator("ts_furniture")
|
||||||
|
@ -147,6 +148,26 @@ 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 = {
|
local ignore_groups = {
|
||||||
["wood"] = true,
|
["wood"] = true,
|
||||||
["stone"] = true
|
["stone"] = true
|
||||||
|
|
|
@ -1,2 +1,3 @@
|
||||||
ts_furniture.enable_sitting (Enable sitting) bool true
|
ts_furniture.enable_sitting (Enable sitting) bool true
|
||||||
ts_furniture.globalstep (Enable globalstep) bool true
|
ts_furniture.globalstep (Enable globalstep) bool true
|
||||||
|
ts_furniture.kneeling_bench (Enable kneeling benches) bool false
|
||||||
|
|
Loading…
Reference in a new issue