138 lines
4.3 KiB
Lua
138 lines
4.3 KiB
Lua
function Add_knight(player,lv,state)
|
|
if state == true then
|
|
file = io.open(minetest.get_worldpath().."/SAVE/Knight_"..lv..".txt", "r")
|
|
local knights = file:read("*l")
|
|
file:close()
|
|
file = io.open(minetest.get_worldpath().."/SAVE/Knight_"..lv..".txt", "w")
|
|
file:write(tonumber(knights)+1)
|
|
file:close()
|
|
Update_knight(player)
|
|
end
|
|
end
|
|
local knight_pos = {
|
|
{1, -65, -54, 0},
|
|
{2, -64, -54, 0},
|
|
{3, -63, -54, 0},
|
|
{4, -62, -54, 0},
|
|
{5, -61, -54, 0},
|
|
{6, -60, -55, 1},
|
|
{7, -60, -56, 1},
|
|
{8, -60, -57, 1},
|
|
{9, -60, -58, 1},
|
|
{10, -60, -59, 1},
|
|
{11, -61, -60, 2},
|
|
{12, -62, -60, 2},
|
|
{13, -63, -60, 2},
|
|
{14, -64, -60, 2},
|
|
{15, -65, -60, 2},
|
|
{16, -66, -59, 3},
|
|
{17, -66, -58, 3},
|
|
{18, -66, -57, 3},
|
|
{19, -66, -56, 3},
|
|
{20, -66, -55, 3},
|
|
{21, -65, -67, 0},
|
|
{22, -64, -67, 0},
|
|
{23, -63, -67, 0},
|
|
{24, -62, -67, 0},
|
|
{25, -61, -67, 0},
|
|
{26, -60, -68, 1},
|
|
{27, -60, -69, 1},
|
|
{28, -60, -70, 1},
|
|
{29, -60, -71, 1},
|
|
{30, -60, -72, 1},
|
|
{31, -61, -73, 2},
|
|
{32, -62, -73, 2},
|
|
{33, -63, -73, 2},
|
|
{34, -64, -73, 2},
|
|
{35, -65, -73, 2},
|
|
{36, -66, -72, 3},
|
|
{37, -66, -71, 3},
|
|
{38, -66, -70, 3},
|
|
{39, -66, -69, 3},
|
|
{40, -66, -68, 3},
|
|
{41, -83, -54, 0},
|
|
{42, -84, -54, 0},
|
|
{43, -85, -54, 0},
|
|
{44, -86, -54, 0},
|
|
{45, -87, -54, 0},
|
|
{46, -88, -55, 3},
|
|
{47, -88, -56, 3},
|
|
{48, -88, -57, 3},
|
|
{49, -88, -58, 3},
|
|
{50, -88, -59, 3},
|
|
{51, -87, -60, 2},
|
|
{52, -86, -60, 2},
|
|
{53, -85, -60, 2},
|
|
|
|
}
|
|
function Update_knight(player)
|
|
file = io.open(minetest.get_worldpath().."/SAVE/Knight_1.txt", "r")
|
|
local knight1 = file:read("*l")
|
|
file:close()
|
|
file = io.open(minetest.get_worldpath().."/SAVE/Knight_2.txt", "r")
|
|
local knight2 = file:read("*l")
|
|
file:close()
|
|
file = io.open(minetest.get_worldpath().."/SAVE/Knight_3.txt", "r")
|
|
local knight3 = file:read("*l")
|
|
file:close()
|
|
file = io.open(minetest.get_worldpath().."/SAVE/Camp1.txt", "r")
|
|
local camp1 = file:read("*l")
|
|
file:close()
|
|
if tonumber(camp1) > 0 then
|
|
for j=59,67 do
|
|
for i=53,61 do
|
|
for k=9,9 do
|
|
minetest.set_node({x=j*(-1), y=k, z=i*(-1)}, {name="air"})
|
|
end
|
|
end
|
|
end
|
|
minetest.set_node({x=-63, y=9, z=-57}, {name="castrum:fire"})
|
|
end
|
|
file = io.open(minetest.get_worldpath().."/SAVE/Camp2.txt", "r")
|
|
local camp2 = file:read("*l")
|
|
file:close()
|
|
if tonumber(camp2) > 0 then
|
|
for j=59,67 do
|
|
for i=66,74 do
|
|
for k=9,9 do
|
|
minetest.set_node({x=j*(-1), y=k, z=i*(-1)}, {name="air"})
|
|
end
|
|
end
|
|
end
|
|
minetest.set_node({x=-63, y=9, z=-70}, {name="castrum:fire"})
|
|
end
|
|
file = io.open(minetest.get_worldpath().."/SAVE/Camp3.txt", "r")
|
|
local camp3 = file:read("*l")
|
|
file:close()
|
|
if tonumber(camp3) > 0 then
|
|
for j=81,89 do
|
|
for i=53,61 do
|
|
for k=9,9 do
|
|
minetest.set_node({x=j*(-1), y=k, z=i*(-1)}, {name="air"})
|
|
end
|
|
end
|
|
end
|
|
minetest.set_node({x=-85, y=9, z=-57}, {name="castrum:fire"})
|
|
end
|
|
for i=1,tonumber(knight3) do
|
|
print (i)
|
|
minetest.set_node({x=knight_pos[i][2], y=9, z=knight_pos[i][3]}, {name="castrum:knight_lv3_sit"})
|
|
for j=1,tonumber(knight_pos[i][4]) do
|
|
screwdriver_handler(player, {type="node", under={x=knight_pos[i][2], y=9, z=knight_pos[i][3]}, above={x=knight_pos[i][2], y=9, z=knight_pos[i][3]}}, 1)
|
|
end
|
|
end
|
|
for i=(tonumber(knight3)+1),(tonumber(knight2)+tonumber(knight3)) do
|
|
print (i)
|
|
minetest.set_node({x=knight_pos[i][2], y=9, z=knight_pos[i][3]}, {name="castrum:knight_lv2_sit"})
|
|
for j=1,tonumber(knight_pos[i][4]) do
|
|
screwdriver_handler(player, {type="node", under={x=knight_pos[i][2], y=9, z=knight_pos[i][3]}, above={x=knight_pos[i][2], y=9, z=knight_pos[i][3]}}, 1)
|
|
end
|
|
end
|
|
for i=(tonumber(knight2)+tonumber(knight3)+1),(tonumber(knight1)+tonumber(knight2)+tonumber(knight3)) do
|
|
print (i)
|
|
minetest.set_node({x=knight_pos[i][2], y=9, z=knight_pos[i][3]}, {name="castrum:knight_lv1_sit"})
|
|
for j=1,tonumber(knight_pos[i][4]) do
|
|
screwdriver_handler(player, {type="node", under={x=knight_pos[i][2], y=9, z=knight_pos[i][3]}, above={x=knight_pos[i][2], y=9, z=knight_pos[i][3]}}, 1)
|
|
end
|
|
end
|
|
end |