1 local S
= minetest
.get_translator("tsm_pyramids")
5 "ankh", "scarab", "cactus"
8 S("Sandstone with Eye Engraving"), S("Sandstone with Man Engraving"), S("Sandstone with Sun Engraving"),
9 S("Desert Sandstone with Ankh Engraving"), S("Desert Sandstone with Scarab Engraving"), S("Desert Sandstone with Cactus Engraving")
13 if minetest
.get_modpath("doc_items") then
14 decodesc
= doc
.sub
.items
.temp
.deco
18 local sandstone_img
, basenode
20 sandstone_img
= "default_desert_sandstone.png"
21 basenode
= "default:desert_sandstone"
23 sandstone_img
= "default_sandstone.png"
24 basenode
= "default:sandstone"
26 minetest
.register_node("tsm_pyramids:deco_stone"..i
, {
27 description
= desc
[i
],
28 _doc_items_longdesc
= decodesc
,
29 is_ground_content
= false,
30 tiles
= {sandstone_img
, sandstone_img
, sandstone_img
.."^tsm_pyramids_"..img
[i
]..".png"},
31 groups
= minetest
.registered_nodes
[basenode
].groups
,
32 sounds
= minetest
.registered_nodes
[basenode
].sounds
,
36 local trap_on_timer
= function(pos
, elapsed
)
37 local objs
= minetest
.get_objects_inside_radius(pos
, 2)
38 local n
= minetest
.get_node(pos
)
39 for i
, obj
in pairs(objs
) do
40 if obj
:is_player() then
42 if minetest
.registered_nodes
[n
.name
]._tsm_pyramids_crack
and minetest
.registered_nodes
[n
.name
]._tsm_pyramids_crack
< 2 then
43 if n
.name
== "tsm_pyramids:trap" then
44 minetest
.set_node(pos
, {name
="tsm_pyramids:trap_2"})
45 minetest
.check_for_falling(pos
)
46 elseif n
.name
== "tsm_pyramids:desert_trap" then
47 minetest
.set_node(pos
, {name
="tsm_pyramids:desert_trap_2"})
48 minetest
.check_for_falling(pos
)
58 minetest
.register_node("tsm_pyramids:trap", {
59 description
= S("Cracked Sandstone Brick"),
60 _doc_items_longdesc
= S("This brick is old, porous and unstable and is barely able to hold itself. One should be careful not to disturb it."),
61 tiles
= {"default_sandstone_brick.png^tsm_pyramids_crack.png"},
62 is_ground_content
= false,
63 groups
= {crumbly
=3,cracky
=3},
64 sounds
= default
.node_sound_stone_defaults(),
65 on_construct
= function(pos
)
66 minetest
.get_node_timer(pos
):start(0.1)
68 _tsm_pyramids_crack
= 1,
69 on_timer
= trap_on_timer
,
73 minetest
.register_node("tsm_pyramids:trap_2", {
74 description
= S("Falling Cracked Sandstone Brick"),
75 _doc_items_longdesc
= S("This old porous brick falls under its own weight."),
76 tiles
= {"default_sandstone_brick.png^tsm_pyramids_crack2.png"},
77 is_ground_content
= false,
78 groups
= {crumbly
=3,cracky
=3,falling_node
=1,not_in_creative_inventory
=1},
79 sounds
= default
.node_sound_stone_defaults(),
83 minetest
.register_node("tsm_pyramids:desert_trap", {
84 description
= S("Cracked Desert Sandstone Brick"),
85 _doc_items_longdesc
= S("This brick is old, porous and unstable and is barely able to hold itself. One should be careful not to disturb it."),
86 tiles
= {"default_desert_sandstone_brick.png^tsm_pyramids_crack.png"},
87 is_ground_content
= false,
88 groups
= {crumbly
=3,cracky
=3},
89 sounds
= default
.node_sound_stone_defaults(),
90 on_construct
= function(pos
)
91 minetest
.get_node_timer(pos
):start(0.1)
93 _tsm_pyramids_crack
= 1,
94 on_timer
= trap_on_timer
,
98 minetest
.register_node("tsm_pyramids:desert_trap_2", {
99 description
= S("Falling Cracked Desert Sandstone Brick"),
100 _doc_items_longdesc
= S("This old porous brick falls under its own weight."),
101 tiles
= {"default_desert_sandstone_brick.png^tsm_pyramids_crack2.png"},
102 is_ground_content
= false,
103 groups
= {crumbly
=3,cracky
=3,falling_node
=1,not_in_creative_inventory
=1},
104 sounds
= default
.node_sound_stone_defaults(),