Prevent some rotations on some nodes when using the screwdriver
This commit is contained in:
parent
bfc4be1eea
commit
fe60a07e76
@ -1,6 +1,7 @@
|
||||
-- See https://github.com/kilbith/realchess for the main repository
|
||||
|
||||
local realchess = {}
|
||||
screwdriver = screwdriver or {}
|
||||
|
||||
local function index_to_xy(index)
|
||||
index = index - 1
|
||||
@ -599,6 +600,7 @@ minetest.register_node(":realchess:chessboard", {
|
||||
sounds = default.node_sound_wood_defaults(),
|
||||
node_box = {type = "fixed", fixed = {-0.5, -0.5, -0.5, 0.5, -0.4375, 0.5}},
|
||||
sunlight_propagates = true,
|
||||
on_rotate = screwdriver.rotate_simple,
|
||||
can_dig = realchess.dig,
|
||||
on_construct = realchess.init,
|
||||
on_receive_fields = realchess.fields,
|
||||
|
@ -1,4 +1,5 @@
|
||||
local enchanting = {}
|
||||
screwdriver = screwdriver or {}
|
||||
|
||||
function enchanting.tools_fs()
|
||||
return "size[9,8;]"..default.gui_slots..
|
||||
@ -94,6 +95,7 @@ xdecor.register("enchantment_table", {
|
||||
},
|
||||
groups = {cracky=1},
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
on_rotate = screwdriver.rotate_simple,
|
||||
can_dig = enchanting.dig,
|
||||
on_construct = enchanting.default_fs,
|
||||
on_receive_fields = enchanting.fields,
|
||||
|
@ -1,4 +1,5 @@
|
||||
local mailbox = {}
|
||||
screwdriver = screwdriver or {}
|
||||
local xbg = default.gui_bg..default.gui_bg_img..default.gui_slots
|
||||
|
||||
xdecor.register("mailbox", {
|
||||
@ -9,6 +10,7 @@ xdecor.register("mailbox", {
|
||||
"xdecor_mailbox.png", "xdecor_mailbox.png",
|
||||
},
|
||||
groups = {cracky=3},
|
||||
on_rotate = screwdriver.rotate_simple,
|
||||
after_place_node = function(pos, placer, _)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local owner = placer:get_player_name()
|
||||
|
16
nodes.lua
16
nodes.lua
@ -1,3 +1,5 @@
|
||||
screwdriver = screwdriver or {}
|
||||
|
||||
local function sit(pos, node, clicker)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local player = clicker:get_player_name()
|
||||
@ -67,7 +69,8 @@ xdecor.register("barrel", {
|
||||
infotext = "Barrel",
|
||||
tiles = {"xdecor_barrel_top.png", "xdecor_barrel_sides.png"},
|
||||
groups = {choppy=3, flammable=3},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
sounds = default.node_sound_wood_defaults(),
|
||||
on_rotate = screwdriver.rotate_simple
|
||||
})
|
||||
|
||||
xdecor.register("cabinet", {
|
||||
@ -76,6 +79,7 @@ xdecor.register("cabinet", {
|
||||
infotext = "Wood Cabinet",
|
||||
groups = {choppy=3, flammable=3},
|
||||
sounds = default.node_sound_wood_defaults(),
|
||||
on_rotate = screwdriver.rotate_simple,
|
||||
tiles = {
|
||||
"xdecor_cabinet_sides.png", "xdecor_cabinet_sides.png",
|
||||
"xdecor_cabinet_sides.png", "xdecor_cabinet_sides.png",
|
||||
@ -126,6 +130,7 @@ xdecor.register("candle", {
|
||||
xdecor.register("cauldron", {
|
||||
description = "Cauldron",
|
||||
groups = {cracky=2},
|
||||
on_rotate = screwdriver.rotate_simple,
|
||||
tiles = {
|
||||
{ name = "xdecor_cauldron_top_anim.png",
|
||||
animation = {type="vertical_frames", length=3.0} },
|
||||
@ -175,6 +180,7 @@ xdecor.register("chair", {
|
||||
tiles = {"xdecor_wood.png"},
|
||||
sounds = default.node_sound_wood_defaults(),
|
||||
groups = {choppy=3, flammable=3},
|
||||
on_rotate = screwdriver.rotate_simple,
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {{-0.3125, -0.5, 0.1875, -0.1875, 0.5, 0.3125},
|
||||
@ -326,7 +332,8 @@ xdecor.register("empty_shelf", {
|
||||
infotext = "Empty Shelf",
|
||||
tiles = {"default_wood.png", "default_wood.png^xdecor_empty_shelf.png"},
|
||||
groups = {choppy=3, flammable=3},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
sounds = default.node_sound_wood_defaults(),
|
||||
on_rotate = screwdriver.rotate_simple
|
||||
})
|
||||
|
||||
xdecor.register("enderchest", {
|
||||
@ -338,6 +345,7 @@ xdecor.register("enderchest", {
|
||||
},
|
||||
groups = {cracky=2},
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
on_rotate = screwdriver.rotate_simple,
|
||||
on_construct = function(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local xbg = default.gui_bg..default.gui_bg_img..default.gui_slots
|
||||
@ -482,6 +490,7 @@ xdecor.register("painting", {
|
||||
paramtype2 = "wallmounted",
|
||||
legacy_wallmounted = true,
|
||||
walkable = false,
|
||||
on_rotate = screwdriver.rotate_simple,
|
||||
wield_image = "xdecor_painting.png",
|
||||
selection_box = {type="wallmounted"},
|
||||
groups = {dig_immediate=3, flammable=3, attached_node=1}
|
||||
@ -508,6 +517,7 @@ xdecor.register("multishelf", {
|
||||
description = "Multi Shelf",
|
||||
inventory = {size=24},
|
||||
infotext = "Multi Shelf",
|
||||
on_rotate = screwdriver.rotate_simple,
|
||||
tiles = {"default_wood.png", "default_wood.png^xdecor_multishelf.png"},
|
||||
groups = {choppy=3, flammable=3},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
@ -533,6 +543,7 @@ xdecor.register("stonepath", {
|
||||
description = "Garden Stone Path",
|
||||
tiles = {"default_stone.png"},
|
||||
groups = {snappy=3},
|
||||
on_rotate = screwdriver.rotate_simple,
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
sunlight_propagates = true,
|
||||
node_box = {
|
||||
@ -585,6 +596,7 @@ xdecor.register("tv", {
|
||||
description = "Television",
|
||||
light_source = 11,
|
||||
groups = {snappy=3},
|
||||
on_rotate = screwdriver.rotate_simple,
|
||||
tiles = {
|
||||
"xdecor_television_left.png^[transformR270",
|
||||
"xdecor_television_left.png^[transformR90",
|
||||
|
Binary file not shown.
Before Width: | Height: | Size: 188 B After Width: | Height: | Size: 192 B |
@ -1,4 +1,5 @@
|
||||
local worktable = {}
|
||||
screwdriver = screwdriver or {}
|
||||
local xbg = default.gui_bg..default.gui_bg_img..default.gui_slots
|
||||
|
||||
local nodes = { -- Nodes allowed to be cut. Mod name = {node name}.
|
||||
@ -171,6 +172,7 @@ xdecor.register("worktable", {
|
||||
"xdecor_worktable_sides.png", "xdecor_worktable_sides.png",
|
||||
"xdecor_worktable_front.png", "xdecor_worktable_front.png"
|
||||
},
|
||||
on_rotate = screwdriver.rotate_simple,
|
||||
can_dig = worktable.dig,
|
||||
on_construct = worktable.construct,
|
||||
on_receive_fields = worktable.fields,
|
||||
|
@ -3,6 +3,7 @@
|
||||
-- Optimized by kilbith
|
||||
|
||||
local xwall = {}
|
||||
screwdriver = screwdriver or {}
|
||||
|
||||
xwall.get_candidate = {}
|
||||
local profiles = {
|
||||
@ -152,6 +153,7 @@ function xwall.register_wall(name, tiles, def)
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
groups = {cracky=3, stone=1, pane=1},
|
||||
sunlight_propagates = true,
|
||||
on_rotate = screwdriver.disallow,
|
||||
collision_box = {
|
||||
type = "fixed",
|
||||
fixed = {-.5, -.5, -.25, .5, 1, .25}
|
||||
|
Loading…
Reference in New Issue
Block a user