mods that hopefully work for a TechAge-based pack
This commit is contained in:
1 parent
4e6b08d194
commit
c27db2a537
6234 files changed
+375578
No files matched your search
@@ -0,0 +1,286 @@
|
||||
--[[
|
||||
|
||||
TechAge
|
||||
=======
|
||||
|
||||
Copyright (C) 2019-2020 Joachim Stolberg
|
||||
|
||||
AGPL v3
|
||||
See LICENSE.txt for more information
|
||||
|
||||
TA3 Oil Tower
|
||||
|
||||
]]--
|
||||
|
||||
-- for lazy programmers
|
||||
local P = minetest.string_to_pos
|
||||
local M = minetest.get_meta
|
||||
local S = techage.S
|
||||
|
||||
minetest.register_node("techage:oiltower1", {
|
||||
description = S("TA3 Derrick"),
|
||||
tiles = {
|
||||
"techage_oil_tower1.png",
|
||||
},
|
||||
drawtype = "nodebox",
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-8/16, -8/16, -8/16, -7/16, 8/16, 8/16},
|
||||
{ 7/16, -8/16, -8/16, 8/16, 8/16, 8/16},
|
||||
{-8/16, -8/16, -8/16, 8/16, -7/16, 8/16},
|
||||
{-8/16, 7/16, -8/16, 8/16, 8/16, 8/16},
|
||||
{-8/16, -8/16, -8/16, 8/16, 8/16, -7/16},
|
||||
{-8/16, -8/16, 7/16, 8/16, 8/16, 8/16},
|
||||
},
|
||||
},
|
||||
drop = "",
|
||||
diggable = false,
|
||||
paramtype2 = "facedir",
|
||||
paramtype = "light",
|
||||
use_texture_alpha = techage.CLIP,
|
||||
sunlight_propagates = true,
|
||||
groups = {not_in_creative_inventory = 1},
|
||||
is_ground_content = false,
|
||||
})
|
||||
|
||||
minetest.register_node("techage:oiltower2", {
|
||||
description = S("TA3 Derrick"),
|
||||
tiles = {
|
||||
-- up, down, right, left, back, front
|
||||
"techage_oil_tower_top.png^[transformR180",
|
||||
"techage_oil_tower_top.png^[transformR180",
|
||||
"techage_oil_tower2.png^[transformFX",
|
||||
"techage_oil_tower2.png",
|
||||
"techage_oil_tower2.png",
|
||||
"techage_oil_tower2.png^[transformFX",
|
||||
},
|
||||
drawtype = "nodebox",
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-8/16, -8/16, -8/16, -7/16, 8/16, 4/16},
|
||||
{ 3/16, -8/16, -8/16, 4/16, 8/16, 4/16},
|
||||
{-8/16, -8/16, -8/16, 4/16, -7/16, 4/16},
|
||||
{-8/16, 7/16, -8/16, 4/16, 8/16, 4/16},
|
||||
{-8/16, -8/16, -8/16, 4/16, 8/16, -7/16},
|
||||
{-8/16, -8/16, 3/16, 4/16, 8/16, 4/16},
|
||||
},
|
||||
},
|
||||
drop = "",
|
||||
diggable = false,
|
||||
paramtype2 = "facedir",
|
||||
paramtype = "light",
|
||||
use_texture_alpha = techage.CLIP,
|
||||
sunlight_propagates = true,
|
||||
groups = {not_in_creative_inventory = 1},
|
||||
is_ground_content = false,
|
||||
})
|
||||
|
||||
minetest.register_node("techage:oiltower3", {
|
||||
description = S("TA3 Derrick"),
|
||||
tiles = {
|
||||
-- up, down, right, left, back, front
|
||||
"techage_oil_tower_top.png^[transformR180",
|
||||
"techage_oil_tower_top.png^[transformR180",
|
||||
"techage_oil_tower3.png^[transformFX",
|
||||
"techage_oil_tower3.png",
|
||||
"techage_oil_tower3.png",
|
||||
"techage_oil_tower3.png^[transformFX",
|
||||
},
|
||||
drawtype = "nodebox",
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-8/16, -8/16, -8/16, -7/16, 8/16, 0/16},
|
||||
{-1/16, -8/16, -8/16, 0/16, 8/16, 0/16},
|
||||
{-8/16, -8/16, -8/16, 0/16, -7/16, 0/16},
|
||||
{-8/16, 7/16, -8/16, 0/16, 8/16, 0/16},
|
||||
{-8/16, -8/16, -8/16, 0/16, 8/16, -7/16},
|
||||
{-8/16, -8/16, -1/16, 0/16, 8/16, 0/16},
|
||||
},
|
||||
},
|
||||
drop = "",
|
||||
diggable = false,
|
||||
paramtype2 = "facedir",
|
||||
paramtype = "light",
|
||||
use_texture_alpha = techage.CLIP,
|
||||
sunlight_propagates = true,
|
||||
groups = {not_in_creative_inventory = 1},
|
||||
is_ground_content = false,
|
||||
})
|
||||
|
||||
minetest.register_node("techage:oiltower4", {
|
||||
description = S("TA3 Derrick"),
|
||||
tiles = {
|
||||
-- up, down, right, left, back, front
|
||||
"techage_oil_tower_top.png^[transformR180",
|
||||
"techage_oil_tower_top.png^[transformR180",
|
||||
"techage_oil_tower4.png^[transformFX",
|
||||
"techage_oil_tower4.png",
|
||||
"techage_oil_tower4.png",
|
||||
"techage_oil_tower4.png^[transformFX",
|
||||
},
|
||||
drawtype = "nodebox",
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-8/16, -8/16, -8/16, -7/16, 8/16, -4/16},
|
||||
{-5/16, -8/16, -8/16, -4/16, 8/16, -4/16},
|
||||
{-8/16, -8/16, -8/16, -4/16, -7/16, -4/16},
|
||||
{-8/16, 7/16, -8/16, -4/16, 8/16, -4/16},
|
||||
{-8/16, -8/16, -8/16, -4/16, 8/16, -7/16},
|
||||
{-8/16, -8/16, -5/16, -4/16, 8/16, -4/16},
|
||||
},
|
||||
},
|
||||
drop = "",
|
||||
diggable = false,
|
||||
paramtype2 = "facedir",
|
||||
paramtype = "light",
|
||||
use_texture_alpha = techage.CLIP,
|
||||
sunlight_propagates = true,
|
||||
groups = {not_in_creative_inventory = 1},
|
||||
is_ground_content = false,
|
||||
})
|
||||
|
||||
minetest.register_node("techage:oiltower5", {
|
||||
description = S("TA4 Derrick"),
|
||||
tiles = {
|
||||
-- up, down, right, left, back, front
|
||||
"techage_oil_tower1.png",
|
||||
},
|
||||
drawtype = "nodebox",
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-8/16, -8/16, 7/16, 8/16, 8/16, 8/16},
|
||||
},
|
||||
},
|
||||
drop = "",
|
||||
diggable = false,
|
||||
paramtype2 = "facedir",
|
||||
paramtype = "light",
|
||||
use_texture_alpha = techage.CLIP,
|
||||
sunlight_propagates = true,
|
||||
groups = {not_in_creative_inventory = 1},
|
||||
is_ground_content = false,
|
||||
})
|
||||
|
||||
minetest.register_node("techage:oil_drillbit", {
|
||||
description = S("TA3 Drill Pipe"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"techage_oil_drillbit.png"},
|
||||
inventory_image = "techage_oil_drillbit_inv.png",
|
||||
wield_image = "techage_oil_drillbit_inv.png",
|
||||
visual_scale = 1,
|
||||
paramtype = "light",
|
||||
use_texture_alpha = techage.CLIP,
|
||||
sunlight_propagates = true,
|
||||
groups = {cracky = 1},
|
||||
is_ground_content = false,
|
||||
})
|
||||
|
||||
minetest.register_node("techage:oil_drillbit2", {
|
||||
description = S("TA3 Drill Pipe"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"techage_oil_drillbit.png"},
|
||||
inventory_image = "techage_oil_drillbit_inv.png",
|
||||
wield_image = "techage_oil_drillbit_inv.png",
|
||||
visual_scale = 1,
|
||||
paramtype = "light",
|
||||
use_texture_alpha = techage.CLIP,
|
||||
drop = "",
|
||||
diggable = false,
|
||||
sunlight_propagates = true,
|
||||
groups = {not_in_creative_inventory = 1},
|
||||
is_ground_content = false,
|
||||
})
|
||||
|
||||
local AssemblyPlan = {
|
||||
-- y-offs, path, facedir-offs, name
|
||||
|
||||
-- level 0
|
||||
{ 0, {0,1}, 0, "techage:oiltower1"},
|
||||
{ 0, {0,3}, 0, "techage:oiltower1"},
|
||||
{ 0, {2,1}, 0, "techage:oiltower1"},
|
||||
{ 0, {2,3}, 0, "techage:oiltower1"},
|
||||
-- level 1
|
||||
{ 1, {0,1}, 0, "techage:oiltower1"},
|
||||
{ 1, {0,3}, 0, "techage:oiltower1"},
|
||||
{ 1, {2,1}, 0, "techage:oiltower1"},
|
||||
{ 1, {2,3}, 0, "techage:oiltower1"},
|
||||
{ 1, {0}, 2, "techage:oiltower5"},
|
||||
{ 1, {1}, 3, "techage:oiltower5"},
|
||||
{ 1, {2}, 0, "techage:oiltower5"},
|
||||
{ 1, {3}, 1, "techage:oiltower5"},
|
||||
-- level 2
|
||||
{ 2, {0,1}, 0, "techage:oiltower2"},
|
||||
{ 2, {0,3}, 3, "techage:oiltower2"},
|
||||
{ 2, {2,1}, 1, "techage:oiltower2"},
|
||||
{ 2, {2,3}, 2, "techage:oiltower2"},
|
||||
{ 2, {0}, 2, "techage:oiltower5"},
|
||||
{ 2, {1}, 3, "techage:oiltower5"},
|
||||
{ 2, {2}, 0, "techage:oiltower5"},
|
||||
{ 2, {3}, 1, "techage:oiltower5"},
|
||||
-- level 3
|
||||
{ 3, {0,1}, 0, "techage:oiltower3"},
|
||||
{ 3, {0,3}, 3, "techage:oiltower3"},
|
||||
{ 3, {2,1}, 1, "techage:oiltower3"},
|
||||
{ 3, {2,3}, 2, "techage:oiltower3"},
|
||||
{ 3, {0}, 2, "techage:oiltower5"},
|
||||
{ 3, {1}, 3, "techage:oiltower5"},
|
||||
{ 3, {2}, 0, "techage:oiltower5"},
|
||||
{ 3, {3}, 1, "techage:oiltower5"},
|
||||
-- level 4
|
||||
{ 4, {0,1}, 0, "techage:oiltower4"},
|
||||
{ 4, {0,3}, 3, "techage:oiltower4"},
|
||||
{ 4, {2,1}, 1, "techage:oiltower4"},
|
||||
{ 4, {2,3}, 2, "techage:oiltower4"},
|
||||
{ 4, {0}, 2, "techage:oiltower5"},
|
||||
{ 4, {1}, 3, "techage:oiltower5"},
|
||||
{ 4, {2}, 0, "techage:oiltower5"},
|
||||
{ 4, {3}, 1, "techage:oiltower5"},
|
||||
-- level 5
|
||||
{ 5, {0}, 2, "techage:oiltower5"},
|
||||
{ 5, {1}, 3, "techage:oiltower5"},
|
||||
{ 5, {2}, 0, "techage:oiltower5"},
|
||||
{ 5, {3}, 1, "techage:oiltower5"},
|
||||
-- level 6
|
||||
{ 6, {0}, 2, "techage:oiltower5"},
|
||||
{ 6, {1}, 3, "techage:oiltower5"},
|
||||
{ 6, {2}, 0, "techage:oiltower5"},
|
||||
{ 6, {3}, 1, "techage:oiltower5"},
|
||||
-- level 7
|
||||
{ 7, {}, 0, "techage:oiltower1"},
|
||||
-- drill bits
|
||||
{ 1, {}, 0, "techage:oil_drillbit2"},
|
||||
{ 2, {}, 0, "techage:oil_drillbit2"},
|
||||
{ 3, {}, 0, "techage:oil_drillbit2"},
|
||||
{ 4, {}, 0, "techage:oil_drillbit2"},
|
||||
{ 5, {}, 0, "techage:oil_drillbit2"},
|
||||
{ 6, {}, 0, "techage:oil_drillbit2"},
|
||||
}
|
||||
|
||||
minetest.register_craft({
|
||||
output = "techage:oil_drillbit 12",
|
||||
recipe = {
|
||||
{"", "default:steel_ingot", "default:obsidian_shard"},
|
||||
{"", "default:steel_ingot", ""},
|
||||
{"default:obsidian_shard", "default:steel_ingot", ""},
|
||||
},
|
||||
})
|
||||
|
||||
techage.oiltower = {}
|
||||
|
||||
-- Two important flags:
|
||||
-- 1) mem.assemble_locked is true while the tower is being assembled/disassembled
|
||||
-- 2) mem.assemble_build is true if the tower is assembled
|
||||
function techage.oiltower.build(pos, player_name)
|
||||
minetest.chat_send_player(player_name, S("[TA] Derrick is being built!"))
|
||||
techage.assemble.build(pos, AssemblyPlan, player_name)
|
||||
end
|
||||
|
||||
function techage.oiltower.remove(pos, player_name)
|
||||
minetest.chat_send_player(player_name, S("[TA] Derrick is being removed!"))
|
||||
techage.assemble.remove(pos, AssemblyPlan, player_name)
|
||||
end
|
||||
Reference in new issue
Block a user