Browse Source

Initial commit

pull/2/merge
D00Med 4 years ago
parent
commit
bdec3641bd
100 changed files with 1373 additions and 0 deletions
  1. +2
    -0
      depends.txt
  2. +250
    -0
      doors.lua
  3. +515
    -0
      init.lua
  4. +45
    -0
      license.txt
  5. +540
    -0
      nodeboxes.lua
  6. +21
    -0
      panes.lua
  7. BIN
      screenshot.png
  8. BIN
      textures/scifi_nodes_black.png
  9. BIN
      textures/scifi_nodes_black_detail.png
  10. BIN
      textures/scifi_nodes_black_light.png
  11. BIN
      textures/scifi_nodes_black_light2.png
  12. BIN
      textures/scifi_nodes_black_lights.png
  13. BIN
      textures/scifi_nodes_black_mesh.png
  14. BIN
      textures/scifi_nodes_black_screen.png
  15. BIN
      textures/scifi_nodes_blackoct.png
  16. BIN
      textures/scifi_nodes_blackpipe.png
  17. BIN
      textures/scifi_nodes_blacktile.png
  18. BIN
      textures/scifi_nodes_blacktile2.png
  19. BIN
      textures/scifi_nodes_blackvent.png
  20. BIN
      textures/scifi_nodes_blue.png
  21. BIN
      textures/scifi_nodes_blue_metal_light.png
  22. BIN
      textures/scifi_nodes_blue_metal_stripes.png
  23. BIN
      textures/scifi_nodes_blue_metal_stripes2.png
  24. BIN
      textures/scifi_nodes_blue_square.png
  25. BIN
      textures/scifi_nodes_bluebars.png
  26. BIN
      textures/scifi_nodes_bluemetal.png
  27. BIN
      textures/scifi_nodes_bluetile.png
  28. BIN
      textures/scifi_nodes_box.png
  29. BIN
      textures/scifi_nodes_box_top.png
  30. BIN
      textures/scifi_nodes_capsule.png
  31. BIN
      textures/scifi_nodes_capsule2.png
  32. BIN
      textures/scifi_nodes_capsule3.png
  33. BIN
      textures/scifi_nodes_crate.png
  34. BIN
      textures/scifi_nodes_crateside.png
  35. BIN
      textures/scifi_nodes_dent.png
  36. BIN
      textures/scifi_nodes_disc.png
  37. BIN
      textures/scifi_nodes_discs.png
  38. BIN
      textures/scifi_nodes_doomlight.png
  39. BIN
      textures/scifi_nodes_doompane.png
  40. BIN
      textures/scifi_nodes_doomwall1.png
  41. BIN
      textures/scifi_nodes_doomwall2.png
  42. BIN
      textures/scifi_nodes_doomwall3.png
  43. BIN
      textures/scifi_nodes_doomwall4.png
  44. BIN
      textures/scifi_nodes_door2a_bottom.png
  45. BIN
      textures/scifi_nodes_door2a_bottom0.png
  46. BIN
      textures/scifi_nodes_door2a_edge.png
  47. BIN
      textures/scifi_nodes_door2a_inv.png
  48. BIN
      textures/scifi_nodes_door2a_top.png
  49. BIN
      textures/scifi_nodes_door2a_topo.png
  50. BIN
      textures/scifi_nodes_door3a_bottom.png
  51. BIN
      textures/scifi_nodes_door3a_bottom0.png
  52. BIN
      textures/scifi_nodes_door3a_edge.png
  53. BIN
      textures/scifi_nodes_door3a_inv.png
  54. BIN
      textures/scifi_nodes_door3a_top.png
  55. BIN
      textures/scifi_nodes_door3a_topo.png
  56. BIN
      textures/scifi_nodes_engine.png
  57. BIN
      textures/scifi_nodes_fan.png
  58. BIN
      textures/scifi_nodes_glass.png
  59. BIN
      textures/scifi_nodes_glscrn.png
  60. BIN
      textures/scifi_nodes_green.png
  61. BIN
      textures/scifi_nodes_green2.png
  62. BIN
      textures/scifi_nodes_green_square.png
  63. BIN
      textures/scifi_nodes_greenbar.png
  64. BIN
      textures/scifi_nodes_greenlight.png
  65. BIN
      textures/scifi_nodes_greenlights.png
  66. BIN
      textures/scifi_nodes_greenlights2.png
  67. BIN
      textures/scifi_nodes_greenmetal.png
  68. BIN
      textures/scifi_nodes_greenmetal2.png
  69. BIN
      textures/scifi_nodes_greenpipe2_top.png
  70. BIN
      textures/scifi_nodes_greenpipe_front.png
  71. BIN
      textures/scifi_nodes_greenpipe_top.png
  72. BIN
      textures/scifi_nodes_greentile.png
  73. BIN
      textures/scifi_nodes_greentubes.png
  74. BIN
      textures/scifi_nodes_grey.png
  75. BIN
      textures/scifi_nodes_grey_square.png
  76. BIN
      textures/scifi_nodes_greybars.png
  77. BIN
      textures/scifi_nodes_greybolts.png
  78. BIN
      textures/scifi_nodes_greydots.png
  79. BIN
      textures/scifi_nodes_greygreenbar.png
  80. BIN
      textures/scifi_nodes_greytile.png
  81. BIN
      textures/scifi_nodes_holes.png
  82. BIN
      textures/scifi_nodes_keyboard.png
  83. BIN
      textures/scifi_nodes_lapkey.png
  84. BIN
      textures/scifi_nodes_laptop.png
  85. BIN
      textures/scifi_nodes_light.png
  86. BIN
      textures/scifi_nodes_lightband.png
  87. BIN
      textures/scifi_nodes_lightbox.png
  88. BIN
      textures/scifi_nodes_lightstripe.png
  89. BIN
      textures/scifi_nodes_lighttop.png
  90. BIN
      textures/scifi_nodes_liquid.png
  91. BIN
      textures/scifi_nodes_mesh.png
  92. BIN
      textures/scifi_nodes_mesh2.png
  93. BIN
      textures/scifi_nodes_monitor.png
  94. BIN
      textures/scifi_nodes_octofloor.png
  95. BIN
      textures/scifi_nodes_octofloor2.png
  96. BIN
      textures/scifi_nodes_orange.png
  97. BIN
      textures/scifi_nodes_orange2.png
  98. BIN
      textures/scifi_nodes_pc.png
  99. BIN
      textures/scifi_nodes_pipe.png
  100. BIN
      textures/scifi_nodes_pipen.png

+ 2
- 0
depends.txt View File

@@ -0,0 +1,2 @@
default
xpanes?

+ 250
- 0
doors.lua View File

@@ -0,0 +1,250 @@
-- mydoors mod by don
-- DO WHAT YOU WANT TO PUBLIC LICENSE
-- or abbreviated DWYWPL

-- December 2nd 2015
-- License Copyright (C) 2015 Michael Tomaino (PlatinumArts@gmail.com)
-- www.sandboxgamemaker.com/DWYWPL/

-- DO WHAT YOU WANT TO PUBLIC LICENSE
-- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

-- 1. You are allowed to do whatever you want to with what content is using this license.
-- 2. This content is provided 'as-is', without any express or implied warranty. In no event
-- will the authors be held liable for any damages arising from the use of this content.


local doors = {
{"scifi_nodes:door2a","scifi_nodes:door2b","scifi_nodes:door2c","scifi_nodes:door2d","2","black"},
{"scifi_nodes:door3a","scifi_nodes:door3b","scifi_nodes:door3c","scifi_nodes:door3d","3","white"},}

for i in ipairs (doors) do
local doora = doors[i][1]
local doorb = doors[i][2]
local doorc = doors[i][3]
local doord = doors[i][4]
local num = doors[i][5]
local des = doors[i][6]

function onplace(itemstack, placer, pointed_thing)
local pos1 = pointed_thing.above
local pos2 = {x=pos1.x, y=pos1.y, z=pos1.z}
pos2.y = pos2.y+1
if
not minetest.registered_nodes[minetest.get_node(pos1).name].buildable_to or
not minetest.registered_nodes[minetest.get_node(pos2).name].buildable_to or
not placer or
not placer:is_player() then
return
end
local pt = pointed_thing.above
local pt2 = {x=pt.x, y=pt.y, z=pt.z}
pt2.y = pt2.y+1
local p2 = minetest.dir_to_facedir(placer:get_look_dir())
local pt3 = {x=pt.x, y=pt.y, z=pt.z}
local p4 = 0
if p2 == 0 then
pt3.x = pt3.x-1
p4 = 2
elseif p2 == 1 then
pt3.z = pt3.z+1
p4 = 3
elseif p2 == 2 then
pt3.x = pt3.x+1
p4 = 0
elseif p2 == 3 then
pt3.z = pt3.z-1
p4 = 1
end
if minetest.get_node(pt3).name == doora then
minetest.set_node(pt, {name=doora, param2=p4})
minetest.set_node(pt2, {name=doorb, param2=p4})
else
minetest.set_node(pt, {name=doora, param2=p2})
minetest.set_node(pt2, {name=doorb, param2=p2})
end
end

function afterdestruct(pos, oldnode)
minetest.set_node({x=pos.x,y=pos.y+1,z=pos.z},{name="air"})
end

function rightclick(pos, node, player, itemstack, pointed_thing)
local timer = minetest.get_node_timer(pos)
local a = minetest.get_node({x=pos.x, y=pos.y, z=pos.z-1})
local b = minetest.get_node({x=pos.x, y=pos.y, z=pos.z+1})
local c = minetest.get_node({x=pos.x+1, y=pos.y, z=pos.z})
local d = minetest.get_node({x=pos.x-1, y=pos.y, z=pos.z})
minetest.set_node(pos, {name=doorc, param2=node.param2})
minetest.set_node({x=pos.x,y=pos.y+1,z=pos.z}, {name=doord, param2=node.param2})

if a.name == doora then
minetest.set_node({x=pos.x, y=pos.y, z=pos.z-1}, {name=doorc, param2=a.param2})
minetest.set_node({x=pos.x,y=pos.y+1,z=pos.z-1}, {name=doord, param2=a.param2})
end
if b.name == doora then
minetest.set_node({x=pos.x, y=pos.y, z=pos.z+1}, {name=doorc, param2=b.param2})
minetest.set_node({x=pos.x,y=pos.y+1,z=pos.z+1}, {name=doord, param2=b.param2})
end
if c.name == doora then
minetest.set_node({x=pos.x+1, y=pos.y, z=pos.z}, {name=doorc, param2=c.param2})
minetest.set_node({x=pos.x+1,y=pos.y+1,z=pos.z}, {name=doord, param2=c.param2})
end
if d.name == doora then
minetest.set_node({x=pos.x-1, y=pos.y, z=pos.z}, {name=doorc, param2=d.param2})
minetest.set_node({x=pos.x-1,y=pos.y+1,z=pos.z}, {name=doord, param2=d.param2})
end

timer:start(3)

end

function afterplace(pos, placer, itemstack, pointed_thing)
minetest.set_node({x=pos.x,y=pos.y+1,z=pos.z},{name=doord,param2=nodeu.param2})
end

function ontimer(pos, elapsed)
local node = minetest.get_node(pos)
local a = minetest.get_node({x=pos.x, y=pos.y, z=pos.z-1})
local b = minetest.get_node({x=pos.x, y=pos.y, z=pos.z+1})
local c = minetest.get_node({x=pos.x+1, y=pos.y, z=pos.z})
local d = minetest.get_node({x=pos.x-1, y=pos.y, z=pos.z})
minetest.set_node(pos, {name=doora, param2=node.param2})
minetest.set_node({x=pos.x,y=pos.y+1,z=pos.z}, {name=doorb, param2=node.param2})

if a.name == doorc then
minetest.set_node({x=pos.x, y=pos.y, z=pos.z-1}, {name=doora, param2=a.param2})
minetest.set_node({x=pos.x,y=pos.y+1,z=pos.z-1}, {name=doorb, param2=a.param2})
end
if b.name == doorc then
minetest.set_node({x=pos.x, y=pos.y, z=pos.z+1}, {name=doora, param2=b.param2})
minetest.set_node({x=pos.x,y=pos.y+1,z=pos.z+1}, {name=doorb, param2=b.param2})
end
if c.name == doorc then
minetest.set_node({x=pos.x+1, y=pos.y, z=pos.z}, {name=doora, param2=c.param2})
minetest.set_node({x=pos.x+1,y=pos.y+1,z=pos.z}, {name=doorb, param2=c.param2})
end
if d.name == doorc then
minetest.set_node({x=pos.x-1, y=pos.y, z=pos.z}, {name=doora, param2=d.param2})
minetest.set_node({x=pos.x-1,y=pos.y+1,z=pos.z}, {name=doorb, param2=d.param2})
end

end

minetest.register_node(doora, {
description = des.." Sliding Door",
inventory_image = "scifi_nodes_door"..num.."a_inv.png",
wield_image = "scifi_nodes_door"..num.."a_inv.png",
tiles = {
"scifi_nodes_door"..num.."a_edge.png",
"scifi_nodes_door"..num.."a_edge.png",
"scifi_nodes_door"..num.."a_edge.png",
"scifi_nodes_door"..num.."a_edge.png",
"scifi_nodes_door"..num.."a_bottom.png^[transformFX",
"scifi_nodes_door"..num.."a_bottom.png"
},
drawtype = "nodebox",
paramtype = "light",
paramtype2 = "facedir",
groups = {cracky = 3},
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.0625, 0.5, 0.5, 0.0625}
}
},
selection_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.0625, 0.5, 1.5, 0.0625}
}
},

on_place = onplace,

after_destruct = afterdestruct,

on_rightclick = rightclick,
})
minetest.register_node(doorb, {
tiles = {
"scifi_nodes_door"..num.."a_edge.png",
"scifi_nodes_door"..num.."a_edge.png",
"scifi_nodes_door"..num.."a_edge.png",
"scifi_nodes_door"..num.."a_edge.png",
"scifi_nodes_door"..num.."a_top.png^[transformFX",
"scifi_nodes_door"..num.."a_top.png"
},
drawtype = "nodebox",
paramtype = "light",
paramtype2 = "facedir",
groups = {cracky = 1},
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.0625, 0.5, 0.5, 0.0625}
}
},
selection_box = {
type = "fixed",
fixed = {
{0, 0, 0, 0, 0, 0},
}
},
})minetest.register_node(doorc, {
tiles = {
"scifi_nodes_door"..num.."a_edge.png",
"scifi_nodes_door"..num.."a_edge.png",
"scifi_nodes_door"..num.."a_edge.png",
"scifi_nodes_door"..num.."a_edge.png",
"scifi_nodes_door"..num.."a_bottom0.png^[transformFX",
"scifi_nodes_door"..num.."a_bottom0.png"
},
drawtype = "nodebox",
paramtype = "light",
paramtype2 = "facedir",
drop = doora,
groups = {cracky = 1},
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.0625, -0.25, 0.5, 0.0625},
}
},
selection_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.0625, -0.25, 1.5, 0.0625},
}
},
after_place_node = afterplace,
after_destruct = afterdestruct,
on_timer = ontimer,
})
minetest.register_node(doord, {
tiles = {
"scifi_nodes_door"..num.."a_edge.png",
"scifi_nodes_door"..num.."a_edge.png",
"scifi_nodes_door"..num.."a_edge.png",
"scifi_nodes_door"..num.."a_edge.png",
"scifi_nodes_door"..num.."a_topo.png^[transformFX",
"scifi_nodes_door"..num.."a_topo.png"
},
drawtype = "nodebox",
paramtype = "light",
paramtype2 = "facedir",
groups = {cracky = 1},
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.0625, -0.25, 0.5, 0.0625},
}
},
selection_box = {
type = "fixed",
fixed = {
{0, 0, 0, 0, 0, 0},
}
},
})
end

+ 515
- 0
init.lua View File

@@ -0,0 +1,515 @@
--scifi_nodes by D00Med

minetest.register_node("scifi_nodes:light", {
description = "blue lightbox",
sunlight_propagates = false,
tiles = {
"scifi_nodes_lighttop.png",
"scifi_nodes_lighttop.png",
"scifi_nodes_light.png",
"scifi_nodes_light.png",
"scifi_nodes_light.png",
"scifi_nodes_light.png"
},
light_source = 10,
paramtype = "light",
groups = {cracky=1}
})


minetest.register_node("scifi_nodes:stripes2", {
description = "hazard stripes2",
sunlight_propagates = false,
tiles = {
"scifi_nodes_stripes2top.png",
"scifi_nodes_stripes2top.png",
"scifi_nodes_stripes2.png",
"scifi_nodes_stripes2.png",
"scifi_nodes_stripes2.png",
"scifi_nodes_stripes2.png"
},
paramtype = "light",
groups = {cracky=1}
})




minetest.register_node("scifi_nodes:green_light", {
description = "green lightbox",
sunlight_propagates = false,
tiles = {
"scifi_nodes_lighttop.png",
"scifi_nodes_lighttop.png",
"scifi_nodes_greenlight.png",
"scifi_nodes_greenlight.png",
"scifi_nodes_greenlight.png",
"scifi_nodes_greenlight.png"
},
light_source = 10,
paramtype = "light",
groups = {cracky=1}
})

minetest.register_node("scifi_nodes:red_light", {
description = "red lightbox",
sunlight_propagates = false,
tiles = {
"scifi_nodes_lighttop.png",
"scifi_nodes_lighttop.png",
"scifi_nodes_redlight.png",
"scifi_nodes_redlight.png",
"scifi_nodes_redlight.png",
"scifi_nodes_redlight.png"
},
light_source = 10,
paramtype = "light",
groups = {cracky=1}
})

minetest.register_node("scifi_nodes:discs", {
description = "disc shelves",
sunlight_propagates = false,
tiles = {
"scifi_nodes_box_top.png",
"scifi_nodes_box_top.png",
"scifi_nodes_discs.png",
"scifi_nodes_discs.png",
"scifi_nodes_discs.png",
"scifi_nodes_discs.png"
},
paramtype = "light",
groups = {cracky=1}
})

minetest.register_node("scifi_nodes:disc", {
description = "disc",
drawtype = "torchlike",
sunlight_propagates = false,
tiles = {
"scifi_nodes_disc.png"
},
inventory_image = "scifi_nodes_disc.png",
wield_image = "scifi_nodes_disc.png",
paramtype = "light",
groups = {cracky=1}
})


minetest.register_node("scifi_nodes:blink", {
description = "blinking light",
sunlight_propagates = false,
tiles = {{
name="scifi_nodes_lightbox.png",
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=2.00},
}},
paramtype = "light",
groups = {cracky=1},
light_source = 5,
})

minetest.register_node("scifi_nodes:black_lights", {
description = "black wallpanel",
sunlight_propagates = false,
tiles = {{
name="scifi_nodes_black_lights.png",
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=0.50},
}},
paramtype = "light",
groups = {cracky=1},
})

minetest.register_node("scifi_nodes:black_screen", {
description = "black wall screen",
sunlight_propagates = false,
tiles = {{
name="scifi_nodes_black_screen.png",
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=2.00},
}},
paramtype = "light",
groups = {cracky=1},
light_source = 1,
})

minetest.register_node("scifi_nodes:screen", {
description = "electronic screen",
sunlight_propagates = false,
tiles = {{
name="scifi_nodes_screen.png",
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=0.50},
}},
paramtype = "light",
groups = {cracky=1},
light_source = 5,
})

minetest.register_node("scifi_nodes:screen2", {
description = "electronic screen 2",
sunlight_propagates = false,
tiles = {{
name="scifi_nodes_screen2.png",
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=0.50},
}},
paramtype = "light",
groups = {cracky=1},
light_source = 5,
})



minetest.register_node("scifi_nodes:white_pad", {
description = "white keypad",
sunlight_propagates = false,
tiles = {
"scifi_nodes_white2.png",
"scifi_nodes_white2.png",
"scifi_nodes_white2.png",
"scifi_nodes_white2.png",
"scifi_nodes_white2.png",
"scifi_nodes_white_pad.png"
},
paramtype = "light",
paramtype2 = "facedir",
groups = {cracky=1}
})

minetest.register_node("scifi_nodes:white_base", {
description = "white wall base",
sunlight_propagates = false,
tiles = {
"scifi_nodes_white2.png",
"scifi_nodes_white2.png",
"scifi_nodes_white_side.png",
"scifi_nodes_white_side.png",
"scifi_nodes_white_side.png",
"scifi_nodes_white_side.png"
},
paramtype = "light",
paramtype2 = "facedir",
groups = {cracky=1}
})

minetest.register_node("scifi_nodes:grnpipe", {
description = "green pipe",
sunlight_propagates = false,
tiles = {
"scifi_nodes_greenpipe_front.png",
"scifi_nodes_greenpipe_front.png",
"scifi_nodes_greenpipe_top.png",
"scifi_nodes_greenpipe_top.png",
"scifi_nodes_greenpipe_top.png",
"scifi_nodes_greenpipe_top.png"
},
paramtype = "light",
paramtype2 = "facedir",
groups = {cracky=1},
on_place = minetest.rotate_node
})


minetest.register_node("scifi_nodes:grnpipe2", {
description = "broken green pipe",
sunlight_propagates = false,
tiles = {
"scifi_nodes_greenpipe_front.png",
"scifi_nodes_greenpipe_front.png",
"scifi_nodes_greenpipe2_top.png",
"scifi_nodes_greenpipe2_top.png",
"scifi_nodes_greenpipe2_top.png",
"scifi_nodes_greenpipe2_top.png"
},
paramtype = "light",
paramtype2 = "facedir",
groups = {cracky=1},
on_place = minetest.rotate_node
})


--edited wool code (Copyright (C) 2012 celeron55, Perttu Ahola <celeron55@gmail.com>)

local node = {}
-- This uses a trick: you can first define the recipes using all of the base
-- colors, and then some recipes using more specific colors for a few non-base
-- colors available. When crafting, the last recipes will be checked first.
--add new block using texture name(without "scifi_nodes_" prefix) then the description, and then the name of the block
node.types = {
{"blue", "blue lines", "blue"},
{"holes", "metal with holes","holes"},
{"white2", "plastic", "white2"},
{"engine", "engine", "engine"},
{"wall", "metal wall", "wall"},
{"white", "plastic wall", "white"},
{"stripes2top", "dirty metal block","metal2"},
{"rough", "rough metal", "rough"},
{"lighttop", "metal block", "metal"},
{"red", "red lines", "red"},
{"green", "green lines", "green"},
{"vent2", "vent", "vent"},
{"stripes", "hazard stripes", "stripes"},
{"rust", "rusty metal", "rust"},
{"mesh", "metal mesh", "mesh"},
{"black", "black wall", "black"},
{"blackoct", "black octagon", "blackoct"},
{"blackpipe", "black pipe", "blackpipe"},
{"blacktile", "black tile", "blktl"},
{"blacktile2", "black tile 2", "blktl2"},
{"blackvent", "black vent", "blkvnt"},
{"bluebars", "blue bars", "bluebars"},
{"bluemetal", "blue metal", "blumtl"},
{"bluetile", "blue tile", "blutl"},
{"greytile", "grey tile", "grytl"},
{"mesh2", "metal floormesh", "mesh2"},
{"white", "plastic wall", "white"},
{"pipe", "wall pipe", "pipe2"},
{"pipeside", "side pipe", "pipe3"},
{"tile", "white tile", "tile"},
{"whiteoct", "white octagon", "whiteoct"},
{"whitetile", "white tile2", "whttl"},
{"black_detail", "black detail", "blckdtl"},
{"green_square", "green metal block", "grnblck"},
{"red_square", "red metal block", "redblck"},
{"grey_square", "grey metal block", "greyblck"},
{"blue_square", "blue metal block", "blublck"},
{"black_mesh", "black vent block", "blckmsh"},
{"dent", "dented metal block", "dent"},
{"greenmetal", "green metal wall", "grnmetl"},
{"greenmetal2", "green metal wall2", "grnmetl2"},
{"greenlights", "green wall lights", "grnlt"},
{"greenlights2", "green wall lights2", "grnlt2"},
{"greenbar", "green light bar", "grnlghtbr"},
{"green2", "green wall panel", "grn2"},
{"greentubes", "green pipes", "grntubes"},
{"grey", "grey wall", "gry"},
{"greybolts", "grey wall bolts", "gryblts"},
{"greybars", "grey bars", "grybrs"},
{"greydots", "grey wall dots", "grydts"},
{"greygreenbar", "gray power pipe", "grygrnbr"},
{"octofloor", "Doom floor", "octofloor"},
{"octofloor2", "Brown Doom floor", "octofloor2"},
{"doomwall1", "Doom wall 1", "doomwall1"},
{"doomwall2", "Doom wall 2", "doomwall2"},
{"doomwall3", "Doom wall 3", "doomwall3"},
{"doomwall4", "Doom wall 4", "doomwall4"},
{"doomlight", "Doom light", "doomlight", "12"},
{"fan", "Fan", "fan"},
}

for _, row in ipairs(node.types) do
local name = row[1]
local desc = row[2]
local craft_color_group = row[3]
local light = row[4]
-- Node Definition
minetest.register_node("scifi_nodes:"..name, {
description = desc,
tiles = {"scifi_nodes_"..name..".png"},
groups = {cracky=1},
paramtype = "light",
light_source = light,
})
end

--chest code from default(couldn't find creator?)

local chest_formspec =
"size[8,9]" ..
default.gui_bg ..
default.gui_bg_img ..
default.gui_slots ..
"list[current_name;main;0,0.3;8,4;]" ..
"list[current_player;main;0,4.85;8,1;]" ..
"list[current_player;main;0,6.08;8,3;8]" ..
"listring[current_name;main]" ..
"listring[current_player;main]" ..
default.get_hotbar_bg(0,4.85)

local function get_locked_chest_formspec(pos)
local spos = pos.x .. "," .. pos.y .. "," .. pos.z
local formspec =
"size[8,9]" ..
default.gui_bg ..
default.gui_bg_img ..
default.gui_slots ..
"list[nodemeta:" .. spos .. ";main;0,0.3;8,4;]" ..
"list[current_player;main;0,4.85;8,1;]" ..
"list[current_player;main;0,6.08;8,3;8]" ..
"listring[nodemeta:" .. spos .. ";main]" ..
"listring[current_player;main]" ..
default.get_hotbar_bg(0,4.85)
return formspec
end


-- Helper functions

local function drop_chest_stuff()
return function(pos, oldnode, oldmetadata, digger)
local meta = minetest.get_meta(pos)
meta:from_table(oldmetadata)
local inv = meta:get_inventory()
for i = 1, inv:get_size("main") do
local stack = inv:get_stack("main", i)
if not stack:is_empty() then
local p = {
x = pos.x + math.random(0, 5)/5 - 0.5,
y = pos.y,
z = pos.z + math.random(0, 5)/5 - 0.5}
minetest.add_item(p, stack)
end
end
end
end

--chest code Copyright (C) 2011-2012 celeron55, Perttu Ahola <celeron55@gmail.com>
minetest.register_node("scifi_nodes:crate", {
description = "Crate",
tiles = {"scifi_nodes_crate.png"},
paramtype2 = "facedir",
groups = {cracky = 1, oddly_breakable_by_hand = 2, fuel = 8},
legacy_facedir_simple = true,
is_ground_content = false,
sounds = default.node_sound_wood_defaults(),

after_dig_node = drop_chest_stuff(),
on_construct = function(pos)
local meta = minetest.get_meta(pos)
meta:set_string("formspec", chest_formspec)
meta:set_string("infotext", "Chest")
local inv = meta:get_inventory()
inv:set_size("main", 8 * 4)
end,
on_metadata_inventory_move = function(pos, from_list, from_index,
to_list, to_index, count, player)
minetest.log("action", player:get_player_name() ..
" moves stuff in chest at " .. minetest.pos_to_string(pos))
end,
on_metadata_inventory_put = function(pos, listname, index, stack, player)
minetest.log("action", player:get_player_name() ..
" moves stuff to chest at " .. minetest.pos_to_string(pos))
end,
on_metadata_inventory_take = function(pos, listname, index, stack, player)
minetest.log("action", player:get_player_name() ..
" takes stuff from chest at " .. minetest.pos_to_string(pos))
end,
})

minetest.register_node("scifi_nodes:box", {
description = "Storage box",
tiles = {
"scifi_nodes_box_top.png",
"scifi_nodes_box_top.png",
"scifi_nodes_box.png",
"scifi_nodes_box.png",
"scifi_nodes_box.png",
"scifi_nodes_box.png"
},
paramtype2 = "facedir",
groups = {cracky = 1, oddly_breakable_by_hand = 2, fuel = 8},
legacy_facedir_simple = true,
is_ground_content = false,
sounds = default.node_sound_wood_defaults(),

after_dig_node = drop_chest_stuff(),
on_construct = function(pos)
local meta = minetest.get_meta(pos)
meta:set_string("formspec", chest_formspec)
meta:set_string("infotext", "Chest")
local inv = meta:get_inventory()
inv:set_size("main", 8 * 4)
end,
on_metadata_inventory_move = function(pos, from_list, from_index,
to_list, to_index, count, player)
minetest.log("action", player:get_player_name() ..
" moves stuff in chest at " .. minetest.pos_to_string(pos))
end,
on_metadata_inventory_put = function(pos, listname, index, stack, player)
minetest.log("action", player:get_player_name() ..
" moves stuff to chest at " .. minetest.pos_to_string(pos))
end,
on_metadata_inventory_take = function(pos, listname, index, stack, player)
minetest.log("action", player:get_player_name() ..
" takes stuff from chest at " .. minetest.pos_to_string(pos))
end,
})
--end of chest code

minetest.register_node("scifi_nodes:blumetlight", {
description = "blue metal light",
sunlight_propagates = false,
tiles = {
"scifi_nodes_bluemetal.png",
"scifi_nodes_bluemetal.png",
"scifi_nodes_blue_metal_light.png",
"scifi_nodes_blue_metal_light.png",
"scifi_nodes_blue_metal_light.png",
"scifi_nodes_blue_metal_light.png"
},
light_source = 10,
paramtype = "light",
groups = {cracky=1}
})


minetest.register_node("scifi_nodes:lightstp", {
description = "twin lights",
sunlight_propagates = false,
tiles = {
"scifi_nodes_lightstripe.png"
},
light_source = 20,
paramtype = "light",
groups = {cracky=1}
})

minetest.register_node("scifi_nodes:blklt2", {
description = "black stripe light",
sunlight_propagates = false,
tiles = {
"scifi_nodes_black_light2.png"
},
light_source = 10,
paramtype = "light",
groups = {cracky=1}
})

minetest.register_node("scifi_nodes:blumetstr", {
description = "blue stripe light",
sunlight_propagates = false,
tiles = {
"scifi_nodes_blue_metal_stripes2.png"
},
light_source = 10,
paramtype = "light",
groups = {cracky=1}
})

minetest.register_node("scifi_nodes:glass", {
description = "dark glass",
drawtype = "glasslike",
sunlight_propagates = false,
tiles = {
"scifi_nodes_glass.png"
},
use_texture_alpha = true,
paramtype = "light",
groups = {cracky=1}
})

minetest.register_node("scifi_nodes:whtlightbnd", {
description = "white light stripe",
sunlight_propagates = false,
tiles = {
"scifi_nodes_lightband.png"
},
light_source = 10,
paramtype = "light",
groups = {cracky=1}
})

--extra stuff
local xpane = minetest.get_modnames()
if xpane == xpane then
dofile(minetest.get_modpath("scifi_nodes").."/panes.lua")
end
dofile(minetest.get_modpath("scifi_nodes").."/doors.lua")
dofile(minetest.get_modpath("scifi_nodes").."/nodeboxes.lua")

+ 45
- 0
license.txt View File

@@ -0,0 +1,45 @@

License for Code
----------------

Copyright (C) 2016 DOOMED <heiselong@gmx.com>

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation; either version 2.1 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.

License for Textures, Models and Sounds
---------------------------------------

CC-BY-SA 3.0 UNPORTED. Created by DOOMED

Code from Minetest_game (chests and furnace):
Copyright (C) 2011-2012 celeron55, Perttu Ahola <celeron55@gmail.com>
LGPL2.1(as shown above)

With code from(doors.lua):
mydoors mod by don
license:
DO WHAT YOU WANT TO PUBLIC LICENSE
or abbreviated DWYWPL

December 2nd 2015
License Copyright (C) 2015 Michael Tomaino (PlatinumArts@gmail.com)
www.sandboxgamemaker.com/DWYWPL/

DO WHAT YOU WANT TO PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

1. You are allowed to do whatever you want to with what content is using this license.
2. This content is provided 'as-is', without any express or implied warranty. In no event
will the authors be held liable for any damages arising from the use of this content.

+ 540
- 0
nodeboxes.lua View File

@@ -0,0 +1,540 @@

-- GENERATED CODE
-- Node Box Editor, version 0.9.0
-- Namespace: scifi_nodes

minetest.register_node("scifi_nodes:lightbar", {
description = "ceiling light",
tiles = {
"scifi_nodes_white2.png",
},
drawtype = "nodebox",
paramtype = "light",
paramtype2 = "wallmounted",
light_source = 25,
node_box = {
type = "fixed",
fixed = {
{-0.125, -0.5, -0.5, 0.125, -0.375, 0.5}, -- NodeBox1
}
},
groups = {cracky=1},
sounds = default.node_sound_glass_defaults()
})

minetest.register_node("scifi_nodes:lightbars", {
description = "orange lightbars",
tiles = {
"scifi_nodes_orange2.png",
},
drawtype = "nodebox",
paramtype = "light",
use_texture_alpha = true,
light_source = 25,
node_box = {
type = "fixed",
fixed = {
{0.125, -0.5, 0.125, 0.375, 0.5, 0.375}, -- NodeBox1
{-0.375, -0.5, 0.125, -0.125, 0.5, 0.375}, -- NodeBox2
{-0.375, -0.5, -0.375, -0.125, 0.5, -0.125}, -- NodeBox3
{0.125, -0.5, -0.375, 0.375, 0.5, -0.125}, -- NodeBox4
}
},
groups = {cracky=1},
sounds = default.node_sound_glass_defaults()
})

minetest.register_node("scifi_nodes:liquid_pipe", {
description = "Liquid pipe",
tiles = {{
name = "scifi_nodes_liquid.png",
animation = {type = "vertical_frames", aspect_w = 16, aspect_h = 16, length = 1.00},
}},
use_texture_alpha = true,
light_source = 15,
drawtype = "nodebox",
sunlight_propagates = true,
paramtype = "light",
node_box = {
type = "fixed",
fixed = {
{-0.375, -0.5, -0.375, 0.375, 0.5, 0.375}, -- NodeBox1
}
},
groups = {cracky=1, oddly_breakable_by_hand=1},
sounds = default.node_sound_glass_defaults()
})

minetest.register_node("scifi_nodes:liquid_pipe2", {
description = "Liquid pipe 2",
tiles = {
"scifi_nodes_orange.png",
},
use_texture_alpha = true,
light_source = 20,
drawtype = "nodebox",
sunlight_propagates = true,
paramtype = "light",
node_box = {
type = "fixed",
fixed = {
{-0.375, -0.5, -0.375, 0.375, 0.5, 0.375}, -- NodeBox1
}
},
groups = {cracky=1, oddly_breakable_by_hand=1},
sounds = default.node_sound_glass_defaults()
})

minetest.register_node("scifi_nodes:powered_stand", {
description = "powered stand",
tiles = {
"scifi_nodes_pwrstnd_top.png",
"scifi_nodes_pwrstnd_top.png",
"scifi_nodes_pwrstnd_side.png",
"scifi_nodes_pwrstnd_side.png",
"scifi_nodes_pwrstnd_side.png",
"scifi_nodes_pwrstnd_side.png"
},
drawtype = "nodebox",
paramtype = "light",
node_box = {
type = "fixed",
fixed = {
{-0.375, 0.25, -0.3125, 0.375, 0.4375, 0.3125}, -- NodeBox1
{-0.3125, 0.25, -0.375, 0.3125, 0.4375, 0.375}, -- NodeBox2
{-0.3125, 0.4375, -0.3125, 0.3125, 0.5, 0.3125}, -- NodeBox3
{-0.5, -0.5, -0.125, 0.5, 0.125, 0.125}, -- NodeBox4
{-0.125, -0.5, -0.5, 0.125, 0.125, 0.5}, -- NodeBox5
{-0.4375, 0.125, -0.125, 0.4375, 0.25, 0.125}, -- NodeBox6
{-0.125, 0.125, -0.4375, 0.125, 0.25, 0.4375}, -- NodeBox7
{-0.3125, -0.5, -0.375, 0.3125, 0.0625, 0.3125}, -- NodeBox8
{-0.25, 0.0625, -0.3125, 0.25, 0.125, 0.3125}, -- NodeBox9
}
},
groups = {cracky=1, oddly_breakable_by_hand=1},
on_rightclick = function(pos, node, clicker, item, _)
local wield_item = clicker:get_wielded_item():get_name()
item:take_item()
minetest.add_item({x=pos.x, y=pos.y+1, z=pos.z}, wield_item)
end,
})

minetest.register_node("scifi_nodes:cover", {
description = "Metal cover",
tiles = {
"scifi_nodes_pwrstnd_top.png",
"scifi_nodes_pwrstnd_top.png",
"scifi_nodes_pwrstnd_top.png",
"scifi_nodes_pwrstnd_top.png",
"scifi_nodes_pwrstnd_top.png",
"scifi_nodes_pwrstnd_top.png"
},
drawtype = "nodebox",
paramtype = "light",
node_box = {
type = "fixed",
fixed = {
{-0.375, -0.5, -0.3125, 0.375, -0.375, 0.3125}, -- NodeBox1
{-0.3125, -0.5, -0.375, 0.3125, -0.375, 0.375}, -- NodeBox5
{-0.3125, -0.375, -0.3125, 0.3125, -0.3125, 0.3125}, -- NodeBox6
}
},
groups = {cracky=1, oddly_breakable_by_hand=1}
})

minetest.register_node("scifi_nodes:computer", {
description = "computer",
tiles = {
"scifi_nodes_black.png",
"scifi_nodes_black.png",
"scifi_nodes_blackvent.png",
"scifi_nodes_black.png",
"scifi_nodes_mesh2.png",
"scifi_nodes_pc.png"
},
drawtype = "nodebox",
paramtype = "light",
paramtype2 = "facedir",
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {
{-0.4375, -0.5, -0.5, 0.0625, 0.5, 0.5}, -- NodeBox1
}
},
groups = {cracky=1, oddly_breakable_by_hand=1}
})

minetest.register_node("scifi_nodes:keysmonitor", {
description = "Keyboard and monitor",
tiles = {
"scifi_nodes_keyboard.png",
"scifi_nodes_black.png",
"scifi_nodes_black.png",
"scifi_nodes_black.png",
"scifi_nodes_black.png",
"scifi_nodes_monitor.png"
},
drawtype = "nodebox",
paramtype = "light",
sunlight_propagates = true,
paramtype2 = "facedir",
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.4375, 0.5, -0.4375, -0.0625}, -- NodeBox1
{-0.125, -0.5, 0.375, 0.125, 0.0625, 0.4375}, -- NodeBox2
{-0.25, -0.5, 0.125, 0.25, -0.4375, 0.5}, -- NodeBox3
{-0.5, -0.3125, 0.25, 0.5, 0.5, 0.375}, -- NodeBox4
}
},
groups = {cracky=1, oddly_breakable_by_hand=1}
})

minetest.register_node("scifi_nodes:microscope", {
description = "Microscope",
tiles = {
"scifi_nodes_white.png",
"scifi_nodes_black.png",
"scifi_nodes_white_vent.png",
"scifi_nodes_white_vent.png",
"scifi_nodes_white_vent.png",
"scifi_nodes_white_vent.png"
},
drawtype = "nodebox",
paramtype = "light",
paramtype2 = "facedir",
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {
{-0.25, -0.5, -0.3125, 0.25, -0.375, 0.3125}, -- NodeBox1
{-0.0625, -0.5, 0.125, 0.0625, 0.3125, 0.25}, -- NodeBox2
{-0.0625, -0.0625, -0.0625, 0.0625, 0.5, 0.0625}, -- NodeBox3
{-0.0625, 0.0625, 0.0625, 0.0625, 0.25, 0.125}, -- NodeBox4
{-0.125, -0.25, -0.125, 0.125, -0.1875, 0.1875}, -- NodeBox5
}
},
groups = {cracky=1, oddly_breakable_by_hand=1}
})

minetest.register_node("scifi_nodes:table", {
description = "Metal table",
tiles = {
"scifi_nodes_grey.png",
"scifi_nodes_grey.png",
"scifi_nodes_grey.png",
"scifi_nodes_grey.png",
"scifi_nodes_grey.png",
"scifi_nodes_grey.png"
},
drawtype = "nodebox",
paramtype = "light",
paramtype2 = "facedir",
node_box = {
type = "fixed",
fixed = {
{-0.5, 0.4375, -0.5, 0.5, 0.5, 0.5}, -- NodeBox1
{-0.0625, -0.5, 0.125, 0.0625, 0.5, 0.3125}, -- NodeBox2
{-0.0625, -0.5, 0.375, 0.0625, 0.5, 0.4375}, -- NodeBox3
{-0.0625, -0.375, 0.0625, 0.0625, 0.4375, 0.125}, -- NodeBox4
{-0.0625, -0.1875, 0, 0.0625, 0.4375, 0.0625}, -- NodeBox5
{-0.0625, 0.0625, -0.0625, 0.0625, 0.4375, 0}, -- NodeBox6
{-0.0625, 0.25, -0.125, 0.0625, 0.4375, -0.0625}, -- NodeBox7
}
},
groups = {cracky=1}
})

minetest.register_node("scifi_nodes:laptop_open", {
description = "laptop",
tiles = {
"scifi_nodes_lapkey.png",
"scifi_nodes_black.png",
"scifi_nodes_black.png",
"scifi_nodes_black.png",
"scifi_nodes_black.png",
"scifi_nodes_laptop.png"
},
drawtype = "nodebox",
paramtype = "light",
paramtype2 = "facedir",
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {
{-0.4375, -0.5, -0.4375, 0.4375, -0.375, 0.3125}, -- NodeBox1
{-0.4375, -0.375, 0.3125, 0.4375, 0.4375, 0.4375}, -- NodeBox11
}
},
groups = {cracky=1, oddly_breakable_by_hand=1, not_in_creative_inventory=1},
on_rightclick = function(pos, node, clicker, item, _)
minetest.set_node(pos, {name="scifi_nodes:laptop_closed", param2=node.param2})
end,
})

minetest.register_node("scifi_nodes:laptop_closed", {
description = "laptop",
tiles = {
"scifi_nodes_black.png",
"scifi_nodes_black.png",
"scifi_nodes_black.png",
"scifi_nodes_black.png",
"scifi_nodes_black.png",
"scifi_nodes_black.png"
},
drawtype = "nodebox",
paramtype = "light",
paramtype2 = "facedir",
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {
{-0.4375, -0.5, -0.4375, 0.4375, -0.25, 0.3125}, -- NodeBox1
}
},
groups = {cracky=1, oddly_breakable_by_hand=1},
on_rightclick = function(pos, node, clicker, item, _)
minetest.set_node(pos, {name="scifi_nodes:laptop_open", param2=node.param2})
end,
})

minetest.register_node("scifi_nodes:pipen", {
description = "pipe(nodebox)",
tiles = {
"scifi_nodes_blacktile2.png",
"scifi_nodes_blacktile2.png",
"scifi_nodes_pipen.png",
"scifi_nodes_pipen.png",
"scifi_nodes_pipen.png",
"scifi_nodes_pipen.png"
},
drawtype = "nodebox",
paramtype = "light",
paramtype2 = "facedir",
node_box = {
type = "fixed",
fixed = {
{-0.4375, -0.5, -0.4375, 0.4375, 0.5, 0.4375}, -- NodeBox1
{-0.5, 0.4375, -0.5, 0.5, 0.5, 0.5}, -- NodeBox2
{-0.5, 0.3125, -0.5, 0.5, 0.375, 0.5}, -- NodeBox3
{-0.5, 0.1875, -0.5, 0.5, 0.25, 0.5}, -- NodeBox4
{-0.5, 0.0625, -0.5, 0.5, 0.125, 0.5}, -- NodeBox5
{-0.5, -0.0625, -0.5, 0.5, 0, 0.5}, -- NodeBox6
{-0.5, -0.1875, -0.5, 0.5, -0.125, 0.5}, -- NodeBox7
{-0.5, -0.3125, -0.5, 0.5, -0.25, 0.5}, -- NodeBox8
{-0.5, -0.4375, -0.5, 0.5, -0.375, 0.5}, -- NodeBox9
}
},
groups = {cracky=1},
on_place = minetest.rotate_node
})

minetest.register_node("scifi_nodes:capsule", {
description = "sample capsule",
tiles = {
"scifi_nodes_capsule.png",
"scifi_nodes_capsule.png",
"scifi_nodes_box_top.png",
"scifi_nodes_box_top.png",
"scifi_nodes_capsule.png",
"scifi_nodes_capsule.png"
},
use_texture_alpha = true,
drawtype = "nodebox",
paramtype = "light",
paramtype2 = "facedir",
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {
{0.3125, -0.5, -0.25, 0.5, 0, 0.25}, -- NodeBox1
{-0.5, -0.5, -0.25, -0.3125, 0, 0.25}, -- NodeBox2
{-0.3125, -0.4375, -0.1875, 0.3125, -0.0625, 0.1875}, -- NodeBox3
}
},
groups = {cracky=1, oddly_breakable_by_hand=1},
sounds = default.node_sound_glass_defaults(),
on_rightclick = function(pos, node, clicker, item, _)
minetest.set_node(pos, {name="scifi_nodes:capsule2", param2=node.param2})
end,
})

minetest.register_node("scifi_nodes:capsule3", {
description = "sample capsule",
tiles = {
"scifi_nodes_capsule3.png",
"scifi_nodes_capsule3.png",
"scifi_nodes_box_top.png",
"scifi_nodes_box_top.png",
"scifi_nodes_capsule3.png",
"scifi_nodes_capsule3.png"
},
use_texture_alpha = true,
drawtype = "nodebox",
paramtype = "light",
paramtype2 = "facedir",
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {
{0.3125, -0.5, -0.25, 0.5, 0, 0.25}, -- NodeBox1
{-0.5, -0.5, -0.25, -0.3125, 0, 0.25}, -- NodeBox2
{-0.3125, -0.4375, -0.1875, 0.3125, -0.0625, 0.1875}, -- NodeBox3
}
},
groups = {cracky=1, oddly_breakable_by_hand=1, not_in_creative_inventory=1},
sounds = default.node_sound_glass_defaults(),
on_rightclick = function(pos, node, clicker, item, _)
minetest.set_node(pos, {name="scifi_nodes:capsule", param2=node.param2})
end,
})

minetest.register_node("scifi_nodes:capsule2", {
description = "sample capsule",
tiles = {
"scifi_nodes_capsule2.png",
"scifi_nodes_capsule2.png",
"scifi_nodes_box_top.png",
"scifi_nodes_box_top.png",
"scifi_nodes_capsule2.png",
"scifi_nodes_capsule2.png"
},
use_texture_alpha = true,
drawtype = "nodebox",
paramtype = "light",
paramtype2 = "facedir",
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {
{0.3125, -0.5, -0.25, 0.5, 0, 0.25}, -- NodeBox1
{-0.5, -0.5, -0.25, -0.3125, 0, 0.25}, -- NodeBox2
{-0.3125, -0.4375, -0.1875, 0.3125, -0.0625, 0.1875}, -- NodeBox3
}
},
groups = {cracky=1, oddly_breakable_by_hand=1, not_in_creative_inventory=1},
sounds = default.node_sound_glass_defaults(),
on_rightclick = function(pos, node, clicker, item, _)
minetest.set_node(pos, {name="scifi_nodes:capsule3", param2=node.param2})
end,
})

minetest.register_node("scifi_nodes:itemholder", {
description = "item holder",
tiles = {
"scifi_nodes_box_top.png",
"scifi_nodes_box_top.png",
"scifi_nodes_box_top.png",
"scifi_nodes_box_top.png",
"scifi_nodes_box_top.png",
"scifi_nodes_box_top.png"
},
drawtype = "nodebox",
paramtype = "light",
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {
{-0.3125, -0.5, -0.3125, 0.3125, -0.25, 0.3125}, -- NodeBox1
{-0.0625, -0.5, 0.1875, 0.0625, -0.0625, 0.25}, -- NodeBox2
{-0.0625, -0.5, -0.25, 0.0625, -0.0625, -0.1875}, -- NodeBox3
{0.1875, -0.5, -0.0625, 0.25, -0.0625, 0.0625}, -- NodeBox4
{-0.25, -0.5, -0.0625, -0.1875, -0.0625, 0.0625}, -- NodeBox5
}
},
groups = {cracky=1, oddly_breakable_by_hand=1},
on_rightclick = function(pos, node, clicker, item, _)
local wield_item = clicker:get_wielded_item():get_name()
item:take_item()
minetest.add_item(pos, wield_item)
end,
})

minetest.register_node("scifi_nodes:glassscreen", {
description = "glass screen",
tiles = {
"scifi_nodes_glscrn.png",
"scifi_nodes_glscrn.png",
"scifi_nodes_glscrn.png",
"scifi_nodes_glscrn.png",
"scifi_nodes_glscrn.png",
"scifi_nodes_glscrn.png"
},
use_texture_alpha = true,
drawtype = "nodebox",
paramtype = "light",
paramtype2 = "facedir",
light_source = 15,
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {
{-0.4375, -0.5, -0.125, 0.4375, -0.1875, 0.0625}, -- NodeBox1
{-0.375, -0.5, -0.0625, 0.375, 0.5, 0}, -- NodeBox10
}
},
groups = {cracky=1, oddly_breakable_by_hand=1},
sounds = default.node_sound_glass_defaults(),
})


minetest.register_node("scifi_nodes:widescreen", {
description = "widescreen",
tiles = {
"scifi_nodes_black.png",
"scifi_nodes_black.png",
"scifi_nodes_black.png",
"scifi_nodes_black.png",
"scifi_nodes_black.png",
"scifi_nodes_widescreen.png"
},
drawtype = "nodebox",
paramtype = "light",
light_source = 5,
paramtype2 = "facedir",
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {
{-0.375, -0.3125, 0.4375, 0.375, 0.3125, 0.5}, -- NodeBox1
{-0.5, -0.375, 0.375, -0.375, 0.375, 0.5}, -- NodeBox2
{0.375, -0.375, 0.375, 0.5, 0.375, 0.5}, -- NodeBox3
{-0.3125, 0.25, 0.375, 0.3125, 0.375, 0.5}, -- NodeBox4
{-0.3125, -0.375, 0.375, 0.25, -0.25, 0.5}, -- NodeBox5
{-0.5, -0.3125, 0.375, 0.5, -0.25, 0.5}, -- NodeBox6
{-0.5, 0.25, 0.375, 0.5, 0.3125, 0.5}, -- NodeBox7
}
},
groups = {cracky=1, oddly_breakable_by_hand=1}
})

minetest.register_node("scifi_nodes:tallscreen", {
description = "tallscreen",
tiles = {
"scifi_nodes_black.png",
"scifi_nodes_black.png",
"scifi_nodes_black.png",
"scifi_nodes_black.png",
"scifi_nodes_black.png",
"scifi_nodes_tallscreen.png"
},
drawtype = "nodebox",
light_source = 5,
paramtype = "light",
paramtype2 = "facedir",
sunlight_propagates = true,
node_box = {
type = "fixed",
fixed = {
{-0.3125, -0.375, 0.4375, 0.3125, 0.375, 0.5}, -- NodeBox1
{-0.375, 0.375, 0.375, 0.375, 0.5, 0.5}, -- NodeBox2
{-0.375, -0.5, 0.375, 0.375, -0.375, 0.5}, -- NodeBox3
{0.25, -0.3125, 0.375, 0.375, 0.3125, 0.5}, -- NodeBox4
{-0.375, -0.25, 0.375, -0.25, 0.3125, 0.5}, -- NodeBox5
{-0.3125, -0.5, 0.375, -0.25, 0.5, 0.5}, -- NodeBox6
{0.25, -0.5, 0.375, 0.3125, 0.5, 0.5}, -- NodeBox7
}
},
groups = {cracky=1, oddly_breakable_by_hand=1}
})

+ 21
- 0
panes.lua View File

@@ -0,0 +1,21 @@
xpanes.register_pane("doompane", {
description = "Doom pane",
tiles = {"xpanes_space.png"},
drawtype = "airlike",
paramtype = "light",
is_ground_content = false,
sunlight_propagates = true,
walkable = false,
pointable = false,
diggable = false,
buildable_to = true,
air_equivalent = true,
textures = {"scifi_nodes_doompane.png","scifi_nodes_doompane.png","default_wood.png"},
inventory_image = "scifi_nodes_doompane.png",
wield_image = "scifi_nodes_doompane.png",
groups = {snappy=2, cracky=3, oddly_breakable_by_hand=3, pane=1},
recipe = {
{'default:iron_lump', 'default:iron_lump', 'default:iron_lump'},
{'default:iron_lump', 'default:iron_lump', 'default:iron_lump'}
}
})

BIN
screenshot.png View File

Before After
Width: 800  |  Height: 298  |  Size: 204 KiB

BIN
textures/scifi_nodes_black.png View File

Before After
Width: 16  |  Height: 16  |  Size: 86 B

BIN
textures/scifi_nodes_black_detail.png View File

Before After
Width: 16  |  Height: 16  |  Size: 205 B

BIN
textures/scifi_nodes_black_light.png View File

Before After
Width: 32  |  Height: 32  |  Size: 836 B

BIN
textures/scifi_nodes_black_light2.png View File

Before After
Width: 32  |  Height: 32  |  Size: 204 B

BIN
textures/scifi_nodes_black_lights.png View File

Before After
Width: 16  |  Height: 48  |  Size: 373 B

BIN
textures/scifi_nodes_black_mesh.png View File

Before After
Width: 16  |  Height: 16  |  Size: 170 B

BIN
textures/scifi_nodes_black_screen.png View File

Before After
Width: 16  |  Height: 32  |  Size: 420 B

BIN
textures/scifi_nodes_blackoct.png View File

Before After
Width: 16  |  Height: 16  |  Size: 320 B

BIN
textures/scifi_nodes_blackpipe.png View File

Before After
Width: 16  |  Height: 16  |  Size: 108 B

BIN
textures/scifi_nodes_blacktile.png View File

Before After
Width: 32  |  Height: 32  |  Size: 257 B

BIN
textures/scifi_nodes_blacktile2.png View File

Before After
Width: 16  |  Height: 16  |  Size: 132 B

BIN
textures/scifi_nodes_blackvent.png View File

Before After
Width: 16  |  Height: 16  |  Size: 131 B

BIN
textures/scifi_nodes_blue.png View File

Before After
Width: 16  |  Height: 16  |  Size: 651 B

BIN
textures/scifi_nodes_blue_metal_light.png View File

Before After
Width: 32  |  Height: 32  |  Size: 758 B

BIN
textures/scifi_nodes_blue_metal_stripes.png View File

Before After
Width: 32  |  Height: 32  |  Size: 605 B

BIN
textures/scifi_nodes_blue_metal_stripes2.png View File

Before After
Width: 32  |  Height: 32  |  Size: 218 B

BIN
textures/scifi_nodes_blue_square.png View File

Before After
Width: 16  |  Height: 16  |  Size: 228 B

BIN
textures/scifi_nodes_bluebars.png View File

Before After
Width: 16  |  Height: 16  |  Size: 241 B

BIN
textures/scifi_nodes_bluemetal.png View File

Before After
Width: 16  |  Height: 16  |  Size: 86 B

BIN
textures/scifi_nodes_bluetile.png View File

Before After
Width: 16  |  Height: 16  |  Size: 133 B

BIN
textures/scifi_nodes_box.png View File

Before After
Width: 16  |  Height: 16  |  Size: 450 B

BIN
textures/scifi_nodes_box_top.png View File

Before After
Width: 16  |  Height: 16  |  Size: 314 B

BIN
textures/scifi_nodes_capsule.png View File

Before After
Width: 16  |  Height: 16  |  Size: 243 B

BIN
textures/scifi_nodes_capsule2.png View File

Before After
Width: 16  |  Height: 16  |  Size: 219 B

BIN
textures/scifi_nodes_capsule3.png View File

Before After
Width: 16  |  Height: 16  |  Size: 222 B

BIN
textures/scifi_nodes_crate.png View File

Before After
Width: 16  |  Height: 16  |  Size: 214 B

BIN
textures/scifi_nodes_crateside.png View File

Before After
Width: 16  |  Height: 16  |  Size: 225 B

BIN
textures/scifi_nodes_dent.png View File

Before After
Width: 16  |  Height: 16  |  Size: 289 B

BIN
textures/scifi_nodes_disc.png View File

Before After
Width: 16  |  Height: 16  |  Size: 642 B

BIN
textures/scifi_nodes_discs.png View File

Before After
Width: 16  |  Height: 16  |  Size: 610 B

BIN
textures/scifi_nodes_doomlight.png View File

Before After
Width: 16  |  Height: 16  |  Size: 177 B

BIN
textures/scifi_nodes_doompane.png View File

Before After
Width: 16  |  Height: 16  |  Size: 733 B

BIN
textures/scifi_nodes_doomwall1.png View File

Before After
Width: 16  |  Height: 16  |  Size: 419 B

BIN
textures/scifi_nodes_doomwall2.png View File

Before After
Width: 16  |  Height: 16  |  Size: 431 B

BIN
textures/scifi_nodes_doomwall3.png View File

Before After
Width: 16  |  Height: 16  |  Size: 347 B

BIN
textures/scifi_nodes_doomwall4.png View File

Before After
Width: 16  |  Height: 16  |  Size: 702 B

BIN
textures/scifi_nodes_door2a_bottom.png View File

Before After
Width: 16  |  Height: 16  |  Size: 324 B

BIN
textures/scifi_nodes_door2a_bottom0.png View File

Before After
Width: 16  |  Height: 16  |  Size: 188 B

BIN
textures/scifi_nodes_door2a_edge.png View File

Before After
Width: 1  |  Height: 1  |  Size: 70 B

BIN
textures/scifi_nodes_door2a_inv.png View File

Before After
Width: 16  |  Height: 16  |  Size: 347 B

BIN
textures/scifi_nodes_door2a_top.png View File

Before After
Width: 16  |  Height: 16  |  Size: 385 B

BIN
textures/scifi_nodes_door2a_topo.png View File

Before After
Width: 16  |  Height: 16  |  Size: 250 B

BIN
textures/scifi_nodes_door3a_bottom.png View File

Before After
Width: 16  |  Height: 16  |  Size: 204 B

BIN
textures/scifi_nodes_door3a_bottom0.png View File

Before After
Width: 16  |  Height: 16  |  Size: 138 B

BIN
textures/scifi_nodes_door3a_edge.png View File

Before After
Width: 1  |  Height: 1  |  Size: 70 B

BIN
textures/scifi_nodes_door3a_inv.png View File

Before After
Width: 16  |  Height: 16  |  Size: 214 B

BIN
textures/scifi_nodes_door3a_top.png View File

Before After
Width: 16  |  Height: 16  |  Size: 221 B

BIN
textures/scifi_nodes_door3a_topo.png View File

Before After
Width: 16  |  Height: 16  |  Size: 145 B

BIN
textures/scifi_nodes_engine.png View File

Before After
Width: 16  |  Height: 16  |  Size: 388 B

BIN
textures/scifi_nodes_fan.png View File

Before After
Width: 16  |  Height: 16  |  Size: 373 B

BIN
textures/scifi_nodes_glass.png View File

Before After
Width: 16  |  Height: 16  |  Size: 86 B

BIN
textures/scifi_nodes_glscrn.png View File

Before After
Width: 16  |  Height: 16  |  Size: 284 B

BIN
textures/scifi_nodes_green.png View File

Before After
Width: 16  |  Height: 16  |  Size: 619 B

BIN
textures/scifi_nodes_green2.png View File

Before After
Width: 16  |  Height: 16  |  Size: 290 B

BIN
textures/scifi_nodes_green_square.png View File

Before After
Width: 16  |  Height: 16  |  Size: 230 B

BIN
textures/scifi_nodes_greenbar.png View File

Before After
Width: 16  |  Height: 16  |  Size: 230 B

BIN
textures/scifi_nodes_greenlight.png View File

Before After
Width: 16  |  Height: 16  |  Size: 199 B

BIN
textures/scifi_nodes_greenlights.png View File

Before After
Width: 16  |  Height: 16  |  Size: 156 B

BIN
textures/scifi_nodes_greenlights2.png View File

Before After
Width: 16  |  Height: 16  |  Size: 135 B

BIN
textures/scifi_nodes_greenmetal.png View File

Before After
Width: 16  |  Height: 16  |  Size: 86 B

BIN
textures/scifi_nodes_greenmetal2.png View File

Before After
Width: 16  |  Height: 16  |  Size: 103 B

BIN
textures/scifi_nodes_greenpipe2_top.png View File

Before After
Width: 16  |  Height: 16  |  Size: 388 B

BIN
textures/scifi_nodes_greenpipe_front.png View File

Before After
Width: 16  |  Height: 16  |  Size: 204 B

BIN
textures/scifi_nodes_greenpipe_top.png View File

Before After
Width: 16  |  Height: 16  |  Size: 178 B

BIN
textures/scifi_nodes_greentile.png View File

Before After
Width: 16  |  Height: 16  |  Size: 237 B

BIN
textures/scifi_nodes_greentubes.png View File

Before After
Width: 16  |  Height: 16  |  Size: 122 B

BIN
textures/scifi_nodes_grey.png View File

Before After
Width: 16  |  Height: 16  |  Size: 86 B

BIN
textures/scifi_nodes_grey_square.png View File

Before After
Width: 16  |  Height: 16  |  Size: 204 B

BIN
textures/scifi_nodes_greybars.png View File

Before After
Width: 16  |  Height: 16  |  Size: 141 B

BIN
textures/scifi_nodes_greybolts.png View File

Before After
Width: 16  |  Height: 16  |  Size: 147 B

BIN
textures/scifi_nodes_greydots.png View File

Before After
Width: 16  |  Height: 16  |  Size: 97 B

BIN
textures/scifi_nodes_greygreenbar.png View File

Before After
Width: 16  |  Height: 16  |  Size: 152 B

BIN
textures/scifi_nodes_greytile.png View File

Before After
Width: 16  |  Height: 16  |  Size: 167 B

BIN
textures/scifi_nodes_holes.png View File

Before After
Width: 16  |  Height: 16  |  Size: 711 B

BIN
textures/scifi_nodes_keyboard.png View File

Before After
Width: 16  |  Height: 16  |  Size: 133 B

BIN
textures/scifi_nodes_lapkey.png View File

Before After
Width: 16  |  Height: 16  |  Size: 214 B

BIN
textures/scifi_nodes_laptop.png View File

Before After
Width: 16  |  Height: 16  |  Size: 255 B

BIN
textures/scifi_nodes_light.png View File

Before After
Width: 16  |  Height: 16  |  Size: 203 B

BIN
textures/scifi_nodes_lightband.png View File

Before After
Width: 16  |  Height: 16  |  Size: 159 B

BIN
textures/scifi_nodes_lightbox.png View File

Before After
Width: 16  |  Height: 32  |  Size: 296 B

BIN
textures/scifi_nodes_lightstripe.png View File

Before After
Width: 32  |  Height: 32  |  Size: 827 B

BIN
textures/scifi_nodes_lighttop.png View File

Before After
Width: 16  |  Height: 16  |  Size: 132 B

BIN
textures/scifi_nodes_liquid.png View File

Before After
Width: 16  |  Height: 96  |  Size: 733 B

BIN
textures/scifi_nodes_mesh.png View File

Before After
Width: 32  |  Height: 32  |  Size: 2.3 KiB

BIN
textures/scifi_nodes_mesh2.png View File

Before After
Width: 16  |  Height: 16  |  Size: 109 B

BIN
textures/scifi_nodes_monitor.png View File

Before After
Width: 16  |  Height: 16  |  Size: 250 B

BIN
textures/scifi_nodes_octofloor.png View File

Before After
Width: 16  |  Height: 16  |  Size: 331 B

BIN
textures/scifi_nodes_octofloor2.png View File

Before After
Width: 16  |  Height: 16  |  Size: 336 B

BIN
textures/scifi_nodes_orange.png View File

Before After
Width: 16  |  Height: 16  |  Size: 146 B

BIN
textures/scifi_nodes_orange2.png View File

Before After
Width: 16  |  Height: 16  |  Size: 107 B

BIN
textures/scifi_nodes_pc.png View File

Before After
Width: 16  |  Height: 16  |  Size: 214 B

BIN
textures/scifi_nodes_pipe.png View File

Before After
Width: 16  |  Height: 16  |  Size: 206 B

BIN
textures/scifi_nodes_pipen.png View File

Before After
Width: 16  |  Height: 16  |  Size: 222 B

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save