code cleanup
parent
0e290cc0e5
commit
a0b27fc43b
21
ReadMe.txt
21
ReadMe.txt
|
@ -1,19 +1,27 @@
|
|||
|
||||
--+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
-- +
|
||||
--bitcoins v2.0 by MilesDyson@DistroGeeks.com +
|
||||
--bitcoins v2.5 by MilesDyson@zoho.com +
|
||||
-- +
|
||||
--LICENSE: WTFPL DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE; applies to all parts. +
|
||||
-- +
|
||||
--Have ideas on ways to make this mod better? email me at milesdyson@distrogeeks.com +
|
||||
--Have ideas on ways to make this mod better? email me at milesdyson@zoho.com +
|
||||
-- +
|
||||
--+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
|
||||
This mod will add bitcoins to your map, (NOT REAL BITCOINS) but the basic idea of bitcoins..
|
||||
|
||||
My first mod for minetest, I plan to expand this mod a bit more as time permits..
|
||||
|
||||
Bitcoins Mod:
|
||||
|
||||
create a network containing at least one isp and one computer within a radius of 3 nodes to connect to the internet and mine coins,
|
||||
add a router to increase its radius to 30 nodes for larger networks.. all computers must have internet access to mine, with
|
||||
3 levels of craft able computers, home computer, gaming computer and alienware computer, each with two more levels of upgrades,
|
||||
each level increasing the speed of the mining process, the isp box requires payment for your internet access,
|
||||
place bitcoins into the payment slot and turn it on.. then boot your computers.. all computers will shutdown after the player
|
||||
logs out or the isp box shuts down due to none payment...
|
||||
|
||||
|
||||
3/9/13 Added denominations of bitcoin Bitcent,Bitnickel,Bitdime,Bitquarter.
|
||||
3/9/13 Added corresponding ors for the new coins.
|
||||
|
@ -40,8 +48,9 @@ My first mod for minetest, I plan to expand this mod a bit more as time permits.
|
|||
05/01/15 ips box now works as intended and is an owned node, only bitcoins are excepted right now
|
||||
updated formspec to show isp's computer's and router's counts withing its range.. improved a few functions..
|
||||
router is now an owned node
|
||||
|
||||
|
||||
|
||||
05/05/15 condensed a lot of code, computers are now upgradeable by adding video cards to the form spec, separated computers into dif
|
||||
files changed some crafting recipes, added video card type check to timer, if not compatible card then computer crashes ..
|
||||
added random numbers to the miner timers of all computers to better simulate luck in the mining process
|
||||
|
||||
|
||||
Enjoy!! :D
|
||||
|
|
|
@ -0,0 +1,365 @@
|
|||
math.randomseed(os.time())
|
||||
|
||||
alien_boot = 30 -- seconds it takes to boot the computer
|
||||
alien_miner = math.random(275,325) -- seconds it takes to mine one bitcent
|
||||
alien_upgrade_step = 45 -- seconds to subtract from alien_miner per upgrade
|
||||
|
||||
local function computer_owner(meta, player)
|
||||
if player:get_player_name() ~= meta:get_string("owner") then
|
||||
return false
|
||||
end
|
||||
return true
|
||||
end
|
||||
|
||||
local function upgrade_timer(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local inv = meta:get_inventory()
|
||||
local expansion1 = inv:get_stack("exp1", 1)
|
||||
local expansion2 = inv:get_stack("exp2", 1)
|
||||
local expansion3 = inv:get_stack("exp3", 1)
|
||||
local upgraded_miner = alien_miner
|
||||
if expansion1:get_name()== "mycoins:alien_computer_video" then
|
||||
upgraded_miner = upgraded_miner - alien_upgrade_step
|
||||
else
|
||||
if expansion1:get_name()== "" then
|
||||
upgraded_miner = upgraded_miner
|
||||
else
|
||||
upgraded_miner = upgraded_miner + 99999
|
||||
end
|
||||
end
|
||||
if expansion2:get_name()=="mycoins:alien_computer_video" then
|
||||
upgraded_miner = upgraded_miner - alien_upgrade_step
|
||||
else
|
||||
if expansion2:get_name()== "" then
|
||||
upgraded_miner = upgraded_miner
|
||||
else
|
||||
upgraded_miner = upgraded_miner + 99999
|
||||
end
|
||||
end
|
||||
if expansion3:get_name()== "mycoins:alien_computer_video" then
|
||||
upgraded_miner = upgraded_miner - alien_upgrade_step
|
||||
else
|
||||
if expansion3:get_name()== "" then
|
||||
upgraded_miner = upgraded_miner
|
||||
else
|
||||
upgraded_miner = upgraded_miner + 99999
|
||||
end
|
||||
end
|
||||
return upgraded_miner
|
||||
end
|
||||
|
||||
function default.alien_boot_formspec(pos)
|
||||
local formspec = "invsize[10,10]"..
|
||||
"image[1,0.5;1.2,1.2;tux.png]"..
|
||||
"label[2,0.8;Initializing basic system settings ... OK]" ..
|
||||
"label[2,1.1;Mounting local filesystems ... OK]" ..
|
||||
"label[2,1.4;Enabling swap space ... OK]" ..
|
||||
"label[2,1.7;Setting up console ... OK]" ..
|
||||
"label[2,2;Operaing System Loaded ... OK]" ..
|
||||
"label[2,2.3;Starting cgminer 3.7.2 ]" ..
|
||||
"list[current_name;main;1,3;1,1;]"..
|
||||
"list[current_player;main;3,9.5;4,1;]"
|
||||
return formspec
|
||||
end
|
||||
|
||||
function default.alien_off_formspec(pos)
|
||||
local formspec = "invsize[10,10]"..
|
||||
"background[1,2.5;8,7;mycoins_game_computer_motherboard.png]"..
|
||||
"label[2,2;Powered Off...]"..
|
||||
"list[current_name;main;1,3;1,1;]"..
|
||||
"list[current_name;exp1;2,5.94;1,1;]"..
|
||||
"list[current_name;exp2;3,7.11;1,1;]"..
|
||||
"list[current_name;exp3;2,8.29;1,1;]"..
|
||||
"list[current_player;main;3,9.5;4,1;]"
|
||||
return formspec
|
||||
end
|
||||
|
||||
function default.alien_active_formspec(pos)
|
||||
local formspec = "invsize[10,10]"..
|
||||
"background[1,2.5;8,7;mycoins_game_computer_motherboard.png]"..
|
||||
"label[2,0.0;cgminer version 3.7.2 - Started]" ..
|
||||
"label[2,0.2;----------------------------------------------------------------------------------]" ..
|
||||
"label[2,0.4;5s:468.9K avg:468.8Kh/s : A:2304 R:0 HW:0 WU:394.4/m]" ..
|
||||
"label[2,0.7;ST: 2 SS: 0 NB: 1909 LW: 34901 GF: 14 RF: 7]" ..
|
||||
"label[2,1;Connected to stratum.max.bitcoin.com diff 1.02k with stratum.]" ..
|
||||
"label[2,1.3;Block: 31dca6d... Diff:104 Started: 09:24:05 Best share: 618K.]" ..
|
||||
"label[2,1.5;----------------------------------------------------------------------------------]" ..
|
||||
"list[current_name;main;1,3;1,1;]"..
|
||||
"list[current_name;exp1;2,5.94;1,1;]"..
|
||||
"list[current_name;exp2;3,7.11;1,1;]"..
|
||||
"list[current_name;exp3;2,8.29;1,1;]"..
|
||||
"list[current_player;main;3,9.5;4,1;]"
|
||||
return formspec
|
||||
end
|
||||
|
||||
function default.alien_wifi_formspec(pos)
|
||||
local formspec = "invsize[10,10]"..
|
||||
"label[2,2;No Internet Connection.]" ..
|
||||
"label[2,2.5;Contact Your Network Administrator For More Information.]" ..
|
||||
"list[current_name;main;1,3;1,1;]"..
|
||||
"list[current_player;main;3,9.5;4,1;]"
|
||||
return formspec
|
||||
end
|
||||
|
||||
function default.alien_off(pos)
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
local inv = meta:get_inventory()
|
||||
minetest.swap_node(pos, {name = 'mycoins:alien_computer', param2 = node.param2})
|
||||
meta:set_string("formspec", default.alien_off_formspec(pos))
|
||||
meta:set_string("infotext", "Alienware Computer (owner "..
|
||||
meta:get_string("owner")..")")
|
||||
inv:set_size("main", 1*1)
|
||||
timer:stop()
|
||||
end
|
||||
|
||||
function default.alien_wifi(pos)
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
local inv = meta:get_inventory()
|
||||
minetest.swap_node(pos, {name = 'mycoins:alien_computer', param2 = node.param2})
|
||||
meta:set_string("formspec", default.alien_wifi_formspec(pos))
|
||||
meta:set_string("infotext", "Alienware Computer (owner "..
|
||||
meta:get_string("owner")..")")
|
||||
inv:set_size("main", 1*1)
|
||||
timer:stop()
|
||||
end
|
||||
|
||||
function default.alien_boot(pos)
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
local inv = meta:get_inventory()
|
||||
meta:set_string("formspec", default.alien_boot_formspec(pos))
|
||||
meta:set_string("infotext", "Alienware Computer (owner "..
|
||||
meta:get_string("owner")..")")
|
||||
inv:set_size("main", 1*1)
|
||||
timer:start(alien_boot)
|
||||
end
|
||||
|
||||
|
||||
-- Alienware Computer
|
||||
minetest.register_node("mycoins:alien_computer",{
|
||||
drawtype = "nodebox",
|
||||
description = "Alienware Computer",
|
||||
tiles = {"mycoins_alien_computer_tp.png","mycoins_alien_computer_bt.png","mycoins_alien_computer_rt.png","mycoins_alien_computer_lt.png","mycoins_alien_computer_bk.png","mycoins_alien_computer_ft_off.png"},
|
||||
paramtype = "light",
|
||||
paramtype2 = "facedir",
|
||||
drop = "mycoins:alien_computer",
|
||||
groups = {cracky=2, oddly_breakable_by_hand=2},
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-0.500000,-0.500000,0.03125,0.500000,0.500000,0.40625},
|
||||
{-0.40625,-0.40625,0.40625,0.40625,0.40625,0.50000},
|
||||
{-0.500000,-0.500000,-0.500000,0.500000,-0.375,-0.03125},
|
||||
},
|
||||
},
|
||||
sounds = default.node_sound_wood_defaults(),
|
||||
after_place_node = function(pos, placer)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
meta:set_string("owner", placer:get_player_name() or "")
|
||||
default.alien_off(pos)
|
||||
end,
|
||||
on_construct = function(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local inv = meta:get_inventory()
|
||||
meta:set_string("formspec", default.alien_boot_formspec(pos))
|
||||
meta:set_string("infotext", "Alienware Computer (owner "..
|
||||
meta:get_string("owner")..")")
|
||||
inv:set_size("main", 1*1)
|
||||
inv:set_size("exp1", 1*1)
|
||||
inv:set_size("exp2", 1*1)
|
||||
inv:set_size("exp3", 1*1)
|
||||
end,
|
||||
on_timer = function(pos)
|
||||
local isp = minetest.find_node_near(pos, 3, {"mycoins:isp_on"})
|
||||
if isp == nil then
|
||||
local wifi = minetest.find_node_near(pos, 30, {"mycoins:router_on"})
|
||||
if wifi == nil then
|
||||
default.alien_wifi(pos)
|
||||
else
|
||||
local meta = minetest.get_meta(pos)
|
||||
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
|
||||
default.alien_off(pos)
|
||||
else
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
local inv = meta:get_inventory()
|
||||
minetest.swap_node(pos, {name = 'mycoins:alien_computer_active', param2 = node.param2})
|
||||
meta:set_string("formspec", default.alien_active_formspec(pos))
|
||||
meta:set_string("infotext", "Alienware Computer (owner "..
|
||||
meta:get_string("owner")..")")
|
||||
inv:set_size("main", 1*1)
|
||||
if ( upgrade_timer(pos) < alien_miner ) then
|
||||
timer:start(upgrade_timer(pos))
|
||||
else
|
||||
default.alien_off(pos)
|
||||
end
|
||||
end
|
||||
end
|
||||
else
|
||||
local meta = minetest.get_meta(pos)
|
||||
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
|
||||
default.alien_off(pos)
|
||||
else
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
local inv = meta:get_inventory()
|
||||
minetest.swap_node(pos, {name = 'mycoins:alien_computer_active', param2 = node.param2})
|
||||
meta:set_string("formspec", default.alien_active_formspec(pos))
|
||||
meta:set_string("infotext", "Alienware Computer (owner "..
|
||||
meta:get_string("owner")..")")
|
||||
inv:set_size("main", 1*1)
|
||||
if ( upgrade_timer(pos) < alien_miner ) then
|
||||
timer:start(upgrade_timer(pos))
|
||||
else
|
||||
default.alien_off(pos)
|
||||
end
|
||||
end
|
||||
end
|
||||
end,
|
||||
on_punch = function(pos)
|
||||
local isp = minetest.find_node_near(pos, 3, {"mycoins:isp_on"})
|
||||
local meta = minetest.get_meta(pos)
|
||||
local inv = meta:get_inventory()
|
||||
if upgrade_timer(pos) < alien_miner then
|
||||
if isp == nil then
|
||||
local wifi = minetest.find_node_near(pos, 30, {"mycoins:router_on"})
|
||||
if wifi == nil then
|
||||
default.alien_wifi(pos)
|
||||
else
|
||||
if ( upgrade_timer(pos) < alien_miner ) then
|
||||
default.alien_boot(pos)
|
||||
else
|
||||
default.alien_off(pos)
|
||||
end
|
||||
end
|
||||
else
|
||||
default.alien_boot(pos)
|
||||
end
|
||||
else
|
||||
default.alien_off(pos)
|
||||
end
|
||||
end,
|
||||
allow_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
|
||||
local meta = minetest.get_meta(pos)
|
||||
if not computer_owner(meta, player) then
|
||||
return 0
|
||||
end
|
||||
return count
|
||||
end,
|
||||
allow_metadata_inventory_put = function(pos, listname, index, stack, player)
|
||||
local meta = minetest.env:get_meta(pos)
|
||||
if not computer_owner(meta, player) then
|
||||
return 0
|
||||
end
|
||||
return stack:get_count()
|
||||
end,
|
||||
allow_metadata_inventory_take = function(pos, listname, index, stack, player)
|
||||
local meta = minetest.get_meta(pos)
|
||||
if not computer_owner(meta, player) then
|
||||
return 0
|
||||
end
|
||||
return stack:get_count()
|
||||
end,
|
||||
can_dig = function(pos,player)
|
||||
local meta = minetest.get_meta(pos);
|
||||
local inv = meta:get_inventory()
|
||||
return inv:is_empty("main") and inv:is_empty("exp1") and inv:is_empty("exp2") and inv:is_empty("exp3") and computer_owner(meta, player)
|
||||
end,
|
||||
})
|
||||
|
||||
minetest.register_node("mycoins:alien_computer_active",{
|
||||
drawtype = "nodebox",
|
||||
description = "Alienware Computer",
|
||||
tiles = {"mycoins_alien_computer_tp.png","mycoins_alien_computer_bt.png","mycoins_alien_computer_rt.png","mycoins_alien_computer_lt.png","mycoins_alien_computer_bk.png","mycoins_alien_computer_ft.png"},
|
||||
paramtype = "light",
|
||||
paramtype2 = "facedir",
|
||||
light_source = 8,
|
||||
drop = "mycoins:alien_computer",
|
||||
groups = {cracky=2, not_in_creative_inventory=1, oddly_breakable_by_hand=2},
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-0.500000,-0.500000,0.03125,0.500000,0.500000,0.40625},
|
||||
{-0.40625,-0.40625,0.40625,0.40625,0.40625,0.50000},
|
||||
{-0.500000,-0.500000,-0.500000,0.500000,-0.375,-0.03125},
|
||||
},
|
||||
},
|
||||
sounds = default.node_sound_wood_defaults(),
|
||||
on_timer = function(pos)
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
local inv = meta:get_inventory()
|
||||
local isp = minetest.find_node_near(pos, 3, {"mycoins:isp_on"})
|
||||
if isp == nil then
|
||||
local wifi = minetest.find_node_near(pos, 30, {"mycoins:router_on"})
|
||||
if wifi == nil then
|
||||
default.alien_off(pos)
|
||||
else
|
||||
local meta = minetest.get_meta(pos)
|
||||
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
|
||||
default.alien_off(pos)
|
||||
else
|
||||
if ( upgrade_timer(pos) < alien_miner ) then
|
||||
timer:start(upgrade_timer(pos))
|
||||
minetest.get_meta(pos):get_inventory():add_item("main", "mycoins:bitcent")
|
||||
else
|
||||
default.alien_off(pos)
|
||||
end
|
||||
end
|
||||
end
|
||||
else
|
||||
local meta = minetest.get_meta(pos)
|
||||
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
|
||||
default.alien_off(pos)
|
||||
else
|
||||
if ( upgrade_timer(pos) < alien_miner ) then
|
||||
minetest.get_meta(pos):get_inventory():add_item("main", "mycoins:bitcent")
|
||||
timer:start(upgrade_timer(pos))
|
||||
else
|
||||
default.alien_off(pos)
|
||||
end
|
||||
end
|
||||
end
|
||||
end,
|
||||
on_punch = function(pos)
|
||||
default.alien_off(pos)
|
||||
end,
|
||||
allow_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
|
||||
local meta = minetest.get_meta(pos)
|
||||
if not computer_owner(meta, player) then
|
||||
return 0
|
||||
end
|
||||
return count
|
||||
end,
|
||||
allow_metadata_inventory_put = function(pos, listname, index, stack, player)
|
||||
local meta = minetest.env:get_meta(pos)
|
||||
if not computer_owner(meta, player) then
|
||||
return 0
|
||||
end
|
||||
return stack:get_count()
|
||||
end,
|
||||
allow_metadata_inventory_take = function(pos, listname, index, stack, player)
|
||||
local meta = minetest.get_meta(pos)
|
||||
if not computer_owner(meta, player) then
|
||||
return 0
|
||||
end
|
||||
return stack:get_count()
|
||||
end,
|
||||
can_dig = function(pos,player)
|
||||
local meta = minetest.get_meta(pos);
|
||||
local inv = meta:get_inventory()
|
||||
return inv:is_empty("main") and inv:is_empty("exp1") and inv:is_empty("exp2") and inv:is_empty("exp3") and computer_owner(meta, player)
|
||||
end,
|
||||
})
|
||||
|
||||
|
||||
|
12
crafts.lua
12
crafts.lua
|
@ -6,8 +6,8 @@
|
|||
minetest.register_craft({
|
||||
output = "mycoins:home_computer";
|
||||
recipe = {
|
||||
{ "mycoins:home_computer_powersupply", "mycoins:home_computer_ram", "mycoins:home_computer_cdrom", },
|
||||
{ "mycoins:home_computer_video", "mycoins:home_computer_cpu", "mycoins:home_computer_fan", },
|
||||
{ "mycoins:home_computer_powersupply", "mycoins:ribbonwire", "mycoins:home_computer_cdrom", },
|
||||
{ "mycoins:home_computer_ram", "mycoins:home_computer_cpu", "mycoins:home_computer_fan", },
|
||||
{ "mycoins:home_computer_soundcard", "mycoins:home_computer_motherboard", "mycoins:home_computer_harddrive", },
|
||||
};
|
||||
});
|
||||
|
@ -101,8 +101,8 @@ minetest.register_craft({
|
|||
minetest.register_craft({
|
||||
output = "mycoins:game_computer";
|
||||
recipe = {
|
||||
{ "mycoins:game_computer_powersupply", "mycoins:game_computer_ram", "mycoins:game_computer_dvdrom", },
|
||||
{ "mycoins:game_computer_video", "mycoins:game_computer_cpu", "mycoins:home_computer", },
|
||||
{ "mycoins:game_computer_powersupply", "mycoins:ribbonwire", "mycoins:game_computer_dvdrom", },
|
||||
{ "mycoins:game_computer_ram", "mycoins:game_computer_cpu", "mycoins:home_computer", },
|
||||
{ "mycoins:game_computer_soundcard", "mycoins:game_computer_motherboard", "mycoins:game_computer_harddrive", },
|
||||
};
|
||||
});
|
||||
|
@ -183,8 +183,8 @@ minetest.register_craft({
|
|||
minetest.register_craft({
|
||||
output = "mycoins:alien_computer";
|
||||
recipe = {
|
||||
{ "mycoins:alien_computer_powersupply", "mycoins:alien_computer_ram", "mycoins:alien_computer_cooler", },
|
||||
{ "mycoins:alien_computer_video", "mycoins:alien_computer_cpu", "mycoins:game_computer", },
|
||||
{ "mycoins:alien_computer_powersupply", "mycoins:ribbonwire", "mycoins:alien_computer_cooler", },
|
||||
{ "mycoins:alien_computer_ram", "mycoins:alien_computer_cpu", "mycoins:game_computer", },
|
||||
{ "mycoins:alien_computer_soundcard", "mycoins:alien_computer_motherboard", "mycoins:alien_computer_harddrive", },
|
||||
};
|
||||
});
|
||||
|
|
12
crafts.lua~
12
crafts.lua~
|
@ -35,7 +35,7 @@ minetest.register_craft({
|
|||
minetest.register_craft({
|
||||
output = "mycoins:home_computer_powersupply";
|
||||
recipe = {
|
||||
{ "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", },
|
||||
{ "mycoins:ribbonwire", "mycoins:ribbonwire", "mycoins:ribbonwire", },
|
||||
{ "default:steel_ingot", "default:steelblock", "default:steel_ingot", },
|
||||
{ "homedecor:ic", "homedecor:ic", "homedecor:ic", },
|
||||
};
|
||||
|
@ -411,7 +411,7 @@ minetest.register_craft({
|
|||
recipe = {
|
||||
{ "default:steel_ingot", "homedecor:ic", "default:steel_ingot", },
|
||||
{ "homedecor:ic", "default:mese", "homedecor:ic", },
|
||||
{ "homedecor:plastic_sheet", "homedecor:plastic_sheet", "homedecor:plastic_sheet", },
|
||||
{ "homedecor:plastic_sheeting", "homedecor:plastic_sheeting", "homedecor:plastic_sheeting", },
|
||||
};
|
||||
});
|
||||
|
||||
|
@ -419,7 +419,7 @@ minetest.register_craft({
|
|||
-- copper wire
|
||||
|
||||
minetest.register_craft({
|
||||
output = "mycoins:copper_ribbonwire 12";
|
||||
output = "mycoins:copper_ribbonwire 9";
|
||||
recipe = {
|
||||
{ "default:copper_ingot", "default:copper_ingot", "default:copper_ingot", },
|
||||
};
|
||||
|
@ -430,7 +430,7 @@ minetest.register_craft({
|
|||
recipe = {
|
||||
{ "dye:red", "dye:green", "dye:yellow", },
|
||||
{ "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", },
|
||||
{ "homedecor:plastic_sheeting", "homedecor:plastic_sheeting", "homedecor:plastic_sheeting", },
|
||||
{ "dye:blue", "homedecor:plastic_sheeting", "dye:violet", },
|
||||
};
|
||||
});
|
||||
|
||||
|
@ -439,8 +439,8 @@ minetest.register_craft({
|
|||
minetest.register_craft({
|
||||
output = "mycoins:isp";
|
||||
recipe = {
|
||||
{ "default:gold_ingot", "mycoins:bitcoin", "default:silver_ingot", },
|
||||
{ "mycoins:ribbonwire", "default:steelblock", "mycoins:ribbonwire", },
|
||||
{ "mycoins:copper_ribbonwire", "homedecor:ic", "default:clay_lump", },
|
||||
{ "mycoins:ribbonwire", "homedecor:ic", "mycoins:ribbonwire", },
|
||||
{ "homedecor:plastic_sheeting", "homedecor:plastic_sheeting", "homedecor:plastic_sheeting", },
|
||||
};
|
||||
});
|
||||
|
|
|
@ -0,0 +1,364 @@
|
|||
math.randomseed(os.time())
|
||||
game_boot = 45 -- seconds it takes to boot the computer
|
||||
game_miner = math.random(375,425) -- seconds it takes to mine one bitcent default 400
|
||||
game_upgrade_step = 30 -- seconds to subtract from game_miner per upgrade
|
||||
|
||||
local function computer_owner(meta, player)
|
||||
if player:get_player_name() ~= meta:get_string("owner") then
|
||||
return false
|
||||
end
|
||||
return true
|
||||
end
|
||||
|
||||
local function upgrade_timer(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local inv = meta:get_inventory()
|
||||
local expansion1 = inv:get_stack("exp1", 1)
|
||||
local expansion2 = inv:get_stack("exp2", 1)
|
||||
local expansion3 = inv:get_stack("exp3", 1)
|
||||
local upgraded_miner = game_miner
|
||||
if expansion1:get_name()== "mycoins:game_computer_video" then
|
||||
upgraded_miner = upgraded_miner - game_upgrade_step
|
||||
else
|
||||
if expansion1:get_name()== "" then
|
||||
upgraded_miner = upgraded_miner
|
||||
else
|
||||
upgraded_miner = upgraded_miner + 99999
|
||||
end
|
||||
end
|
||||
if expansion2:get_name()=="mycoins:game_computer_video" then
|
||||
upgraded_miner = upgraded_miner - game_upgrade_step
|
||||
else
|
||||
if expansion2:get_name()== "" then
|
||||
upgraded_miner = upgraded_miner
|
||||
else
|
||||
upgraded_miner = upgraded_miner + 99999
|
||||
end
|
||||
end
|
||||
if expansion3:get_name()== "mycoins:game_computer_video" then
|
||||
upgraded_miner = upgraded_miner - game_upgrade_step
|
||||
else
|
||||
if expansion3:get_name()== "" then
|
||||
upgraded_miner = upgraded_miner
|
||||
else
|
||||
upgraded_miner = upgraded_miner + 99999
|
||||
end
|
||||
end
|
||||
return upgraded_miner
|
||||
end
|
||||
|
||||
function default.game_boot_formspec(pos)
|
||||
local formspec = "invsize[10,10]"..
|
||||
"image[1,0.5;1.2,1.2;tux.png]"..
|
||||
"label[2,0.8;Initializing basic system settings ... OK]" ..
|
||||
"label[2,1.1;Mounting local filesystems ... OK]" ..
|
||||
"label[2,1.4;Enabling swap space ... OK]" ..
|
||||
"label[2,1.7;Setting up console ... OK]" ..
|
||||
"label[2,2;Operaing System Loaded ... OK]" ..
|
||||
"label[2,2.3;Starting cgminer 3.7.2 ]" ..
|
||||
"list[current_name;main;1,3;1,1;]"..
|
||||
"list[current_player;main;3,9.5;4,1;]"
|
||||
return formspec
|
||||
end
|
||||
|
||||
function default.game_off_formspec(pos)
|
||||
local formspec = "invsize[10,10]"..
|
||||
"background[1,2.5;8,7;mycoins_game_computer_motherboard.png]"..
|
||||
"label[2,2;Powered Off...]"..
|
||||
"list[current_name;main;1,3;1,1;]"..
|
||||
"list[current_name;exp1;2,5.94;1,1;]"..
|
||||
"list[current_name;exp2;3,7.11;1,1;]"..
|
||||
"list[current_name;exp3;2,8.29;1,1;]"..
|
||||
"list[current_player;main;3,9.5;4,1;]"
|
||||
return formspec
|
||||
end
|
||||
|
||||
function default.game_active_formspec(pos)
|
||||
local formspec = "invsize[10,10]"..
|
||||
"background[1,2.5;8,7;mycoins_game_computer_motherboard.png]"..
|
||||
"label[2,0.0;cgminer version 3.7.2 - Started]" ..
|
||||
"label[2,0.2;----------------------------------------------------------------------------------]" ..
|
||||
"label[2,0.4;5s:468.9K avg:468.8Kh/s : A:2304 R:0 HW:0 WU:394.4/m]" ..
|
||||
"label[2,0.7;ST: 2 SS: 0 NB: 1909 LW: 34901 GF: 14 RF: 7]" ..
|
||||
"label[2,1;Connected to stratum.max.bitcoin.com diff 1.02k with stratum.]" ..
|
||||
"label[2,1.3;Block: 31dca6d... Diff:104 Started: 09:24:05 Best share: 618K.]" ..
|
||||
"label[2,1.5;----------------------------------------------------------------------------------]" ..
|
||||
"list[current_name;main;1,3;1,1;]"..
|
||||
"list[current_name;exp1;2,5.94;1,1;]"..
|
||||
"list[current_name;exp2;3,7.11;1,1;]"..
|
||||
"list[current_name;exp3;2,8.29;1,1;]"..
|
||||
"list[current_player;main;3,9.5;4,1;]"
|
||||
return formspec
|
||||
end
|
||||
|
||||
function default.game_wifi_formspec(pos)
|
||||
local formspec = "invsize[10,10]"..
|
||||
"label[2,2;No Internet Connection.]" ..
|
||||
"label[2,2.5;Contact Your Network Administrator For More Information.]" ..
|
||||
"list[current_name;main;1,3;1,1;]"..
|
||||
"list[current_player;main;3,9.5;4,1;]"
|
||||
return formspec
|
||||
end
|
||||
|
||||
function default.game_off(pos)
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
local inv = meta:get_inventory()
|
||||
minetest.swap_node(pos, {name = 'mycoins:game_computer', param2 = node.param2})
|
||||
meta:set_string("formspec", default.game_off_formspec(pos))
|
||||
meta:set_string("infotext", "Alienware Computer (owner "..
|
||||
meta:get_string("owner")..")")
|
||||
inv:set_size("main", 1*1)
|
||||
timer:stop()
|
||||
end
|
||||
|
||||
function default.game_wifi(pos)
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
local inv = meta:get_inventory()
|
||||
minetest.swap_node(pos, {name = 'mycoins:game_computer', param2 = node.param2})
|
||||
meta:set_string("formspec", default.game_wifi_formspec(pos))
|
||||
meta:set_string("infotext", "Alienware Computer (owner "..
|
||||
meta:get_string("owner")..")")
|
||||
inv:set_size("main", 1*1)
|
||||
timer:stop()
|
||||
end
|
||||
|
||||
function default.game_boot(pos)
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
local inv = meta:get_inventory()
|
||||
meta:set_string("formspec", default.game_boot_formspec(pos))
|
||||
meta:set_string("infotext", "Alienware Computer (owner "..
|
||||
meta:get_string("owner")..")")
|
||||
inv:set_size("main", 1*1)
|
||||
timer:start(game_boot)
|
||||
end
|
||||
|
||||
|
||||
-- Alienware Computer
|
||||
minetest.register_node("mycoins:game_computer",{
|
||||
drawtype = "nodebox",
|
||||
description = "Alienware Computer",
|
||||
tiles = {"mycoins_game_computer_tp.png","mycoins_game_computer_bt.png","mycoins_game_computer_rt.png","mycoins_game_computer_lt.png","mycoins_game_computer_bk.png","mycoins_game_computer_ft_off.png"},
|
||||
paramtype = "light",
|
||||
paramtype2 = "facedir",
|
||||
drop = "mycoins:game_computer",
|
||||
groups = {cracky=2, oddly_breakable_by_hand=2},
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-0.500000,-0.500000,0.03125,0.500000,0.500000,0.40625},
|
||||
{-0.40625,-0.40625,0.40625,0.40625,0.40625,0.50000},
|
||||
{-0.500000,-0.500000,-0.500000,0.500000,-0.375,-0.03125},
|
||||
},
|
||||
},
|
||||
sounds = default.node_sound_wood_defaults(),
|
||||
after_place_node = function(pos, placer)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
meta:set_string("owner", placer:get_player_name() or "")
|
||||
default.game_off(pos)
|
||||
end,
|
||||
on_construct = function(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local inv = meta:get_inventory()
|
||||
meta:set_string("formspec", default.game_boot_formspec(pos))
|
||||
meta:set_string("infotext", "Alienware Computer (owner "..
|
||||
meta:get_string("owner")..")")
|
||||
inv:set_size("main", 1*1)
|
||||
inv:set_size("exp1", 1*1)
|
||||
inv:set_size("exp2", 1*1)
|
||||
inv:set_size("exp3", 1*1)
|
||||
end,
|
||||
on_timer = function(pos)
|
||||
local isp = minetest.find_node_near(pos, 3, {"mycoins:isp_on"})
|
||||
if isp == nil then
|
||||
local wifi = minetest.find_node_near(pos, 30, {"mycoins:router_on"})
|
||||
if wifi == nil then
|
||||
default.game_wifi(pos)
|
||||
else
|
||||
local meta = minetest.get_meta(pos)
|
||||
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
|
||||
default.game_off(pos)
|
||||
else
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
local inv = meta:get_inventory()
|
||||
minetest.swap_node(pos, {name = 'mycoins:game_computer_active', param2 = node.param2})
|
||||
meta:set_string("formspec", default.game_active_formspec(pos))
|
||||
meta:set_string("infotext", "Alienware Computer (owner "..
|
||||
meta:get_string("owner")..")")
|
||||
inv:set_size("main", 1*1)
|
||||
if ( upgrade_timer(pos) < game_miner ) then
|
||||
timer:start(upgrade_timer(pos))
|
||||
else
|
||||
default.game_off(pos)
|
||||
end
|
||||
end
|
||||
end
|
||||
else
|
||||
local meta = minetest.get_meta(pos)
|
||||
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
|
||||
default.game_off(pos)
|
||||
else
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
local inv = meta:get_inventory()
|
||||
minetest.swap_node(pos, {name = 'mycoins:game_computer_active', param2 = node.param2})
|
||||
meta:set_string("formspec", default.game_active_formspec(pos))
|
||||
meta:set_string("infotext", "Alienware Computer (owner "..
|
||||
meta:get_string("owner")..")")
|
||||
inv:set_size("main", 1*1)
|
||||
if ( upgrade_timer(pos) < game_miner ) then
|
||||
timer:start(upgrade_timer(pos))
|
||||
else
|
||||
default.game_off(pos)
|
||||
end
|
||||
end
|
||||
end
|
||||
end,
|
||||
on_punch = function(pos)
|
||||
local isp = minetest.find_node_near(pos, 3, {"mycoins:isp_on"})
|
||||
local meta = minetest.get_meta(pos)
|
||||
local inv = meta:get_inventory()
|
||||
if upgrade_timer(pos) < game_miner then
|
||||
if isp == nil then
|
||||
local wifi = minetest.find_node_near(pos, 30, {"mycoins:router_on"})
|
||||
if wifi == nil then
|
||||
default.game_wifi(pos)
|
||||
else
|
||||
if ( upgrade_timer(pos) < game_miner ) then
|
||||
default.game_boot(pos)
|
||||
else
|
||||
default.game_off(pos)
|
||||
end
|
||||
end
|
||||
else
|
||||
default.game_boot(pos)
|
||||
end
|
||||
else
|
||||
default.game_off(pos)
|
||||
end
|
||||
end,
|
||||
allow_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
|
||||
local meta = minetest.get_meta(pos)
|
||||
if not computer_owner(meta, player) then
|
||||
return 0
|
||||
end
|
||||
return count
|
||||
end,
|
||||
allow_metadata_inventory_put = function(pos, listname, index, stack, player)
|
||||
local meta = minetest.env:get_meta(pos)
|
||||
if not computer_owner(meta, player) then
|
||||
return 0
|
||||
end
|
||||
return stack:get_count()
|
||||
end,
|
||||
allow_metadata_inventory_take = function(pos, listname, index, stack, player)
|
||||
local meta = minetest.get_meta(pos)
|
||||
if not computer_owner(meta, player) then
|
||||
return 0
|
||||
end
|
||||
return stack:get_count()
|
||||
end,
|
||||
can_dig = function(pos,player)
|
||||
local meta = minetest.get_meta(pos);
|
||||
local inv = meta:get_inventory()
|
||||
return inv:is_empty("main") and inv:is_empty("exp1") and inv:is_empty("exp2") and inv:is_empty("exp3") and computer_owner(meta, player)
|
||||
end,
|
||||
})
|
||||
|
||||
minetest.register_node("mycoins:game_computer_active",{
|
||||
drawtype = "nodebox",
|
||||
description = "Alienware Computer",
|
||||
tiles = {"mycoins_game_computer_tp.png","mycoins_game_computer_bt.png","mycoins_game_computer_rt.png","mycoins_game_computer_lt.png","mycoins_game_computer_bk.png","mycoins_game_computer_ft.png"},
|
||||
paramtype = "light",
|
||||
paramtype2 = "facedir",
|
||||
light_source = 8,
|
||||
drop = "mycoins:game_computer",
|
||||
groups = {cracky=2, not_in_creative_inventory=1, oddly_breakable_by_hand=2},
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-0.500000,-0.500000,0.03125,0.500000,0.500000,0.40625},
|
||||
{-0.40625,-0.40625,0.40625,0.40625,0.40625,0.50000},
|
||||
{-0.500000,-0.500000,-0.500000,0.500000,-0.375,-0.03125},
|
||||
},
|
||||
},
|
||||
sounds = default.node_sound_wood_defaults(),
|
||||
on_timer = function(pos)
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
local inv = meta:get_inventory()
|
||||
local isp = minetest.find_node_near(pos, 3, {"mycoins:isp_on"})
|
||||
if isp == nil then
|
||||
local wifi = minetest.find_node_near(pos, 30, {"mycoins:router_on"})
|
||||
if wifi == nil then
|
||||
default.game_off(pos)
|
||||
else
|
||||
local meta = minetest.get_meta(pos)
|
||||
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
|
||||
default.game_off(pos)
|
||||
else
|
||||
if ( upgrade_timer(pos) < game_miner ) then
|
||||
timer:start(upgrade_timer(pos))
|
||||
minetest.get_meta(pos):get_inventory():add_item("main", "mycoins:bitcent")
|
||||
else
|
||||
default.game_off(pos)
|
||||
end
|
||||
end
|
||||
end
|
||||
else
|
||||
local meta = minetest.get_meta(pos)
|
||||
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
|
||||
default.game_off(pos)
|
||||
else
|
||||
if ( upgrade_timer(pos) < game_miner ) then
|
||||
minetest.get_meta(pos):get_inventory():add_item("main", "mycoins:bitcent")
|
||||
timer:start(upgrade_timer(pos))
|
||||
else
|
||||
default.game_off(pos)
|
||||
end
|
||||
end
|
||||
end
|
||||
end,
|
||||
on_punch = function(pos)
|
||||
default.game_off(pos)
|
||||
end,
|
||||
allow_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
|
||||
local meta = minetest.get_meta(pos)
|
||||
if not computer_owner(meta, player) then
|
||||
return 0
|
||||
end
|
||||
return count
|
||||
end,
|
||||
allow_metadata_inventory_put = function(pos, listname, index, stack, player)
|
||||
local meta = minetest.env:get_meta(pos)
|
||||
if not computer_owner(meta, player) then
|
||||
return 0
|
||||
end
|
||||
return stack:get_count()
|
||||
end,
|
||||
allow_metadata_inventory_take = function(pos, listname, index, stack, player)
|
||||
local meta = minetest.get_meta(pos)
|
||||
if not computer_owner(meta, player) then
|
||||
return 0
|
||||
end
|
||||
return stack:get_count()
|
||||
end,
|
||||
can_dig = function(pos,player)
|
||||
local meta = minetest.get_meta(pos);
|
||||
local inv = meta:get_inventory()
|
||||
return inv:is_empty("main") and inv:is_empty("exp1") and inv:is_empty("exp2") and inv:is_empty("exp3") and computer_owner(meta, player)
|
||||
end,
|
||||
})
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,364 @@
|
|||
math.randomseed(os.time())
|
||||
home_boot = 60 -- seconds it takes to boot the computer
|
||||
home_miner = math.random(475,525) -- seconds it takes to mine one bitcent
|
||||
home_upgrade_step = 15 -- seconds to subtract from home_miner per upgrade
|
||||
|
||||
local function computer_owner(meta, player)
|
||||
if player:get_player_name() ~= meta:get_string("owner") then
|
||||
return false
|
||||
end
|
||||
return true
|
||||
end
|
||||
|
||||
local function upgrade_timer(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local inv = meta:get_inventory()
|
||||
local expansion1 = inv:get_stack("exp1", 1)
|
||||
local expansion2 = inv:get_stack("exp2", 1)
|
||||
local expansion3 = inv:get_stack("exp3", 1)
|
||||
local upgraded_miner = home_miner
|
||||
if expansion1:get_name()== "mycoins:home_computer_video" then
|
||||
upgraded_miner = upgraded_miner - home_upgrade_step
|
||||
else
|
||||
if expansion1:get_name()== "" then
|
||||
upgraded_miner = upgraded_miner
|
||||
else
|
||||
upgraded_miner = upgraded_miner + 99999
|
||||
end
|
||||
end
|
||||
if expansion2:get_name()=="mycoins:home_computer_video" then
|
||||
upgraded_miner = upgraded_miner - home_upgrade_step
|
||||
else
|
||||
if expansion2:get_name()== "" then
|
||||
upgraded_miner = upgraded_miner
|
||||
else
|
||||
upgraded_miner = upgraded_miner + 99999
|
||||
end
|
||||
end
|
||||
if expansion3:get_name()== "mycoins:home_computer_video" then
|
||||
upgraded_miner = upgraded_miner - home_upgrade_step
|
||||
else
|
||||
if expansion3:get_name()== "" then
|
||||
upgraded_miner = upgraded_miner
|
||||
else
|
||||
upgraded_miner = upgraded_miner + 99999
|
||||
end
|
||||
end
|
||||
return upgraded_miner
|
||||
end
|
||||
|
||||
function default.home_boot_formspec(pos)
|
||||
local formspec = "invsize[10,10]"..
|
||||
"image[1,0.5;1.2,1.2;tux.png]"..
|
||||
"label[2,0.8;Initializing basic system settings ... OK]" ..
|
||||
"label[2,1.1;Mounting local filesystems ... OK]" ..
|
||||
"label[2,1.4;Enabling swap space ... OK]" ..
|
||||
"label[2,1.7;Setting up console ... OK]" ..
|
||||
"label[2,2;Operaing System Loaded ... OK]" ..
|
||||
"label[2,2.3;Starting cgminer 3.7.2 ]" ..
|
||||
"list[current_name;main;1,3;1,1;]"..
|
||||
"list[current_player;main;3,9.5;4,1;]"
|
||||
return formspec
|
||||
end
|
||||
|
||||
function default.home_off_formspec(pos)
|
||||
local formspec = "invsize[10,10]"..
|
||||
"background[1,2.5;8,7;mycoins_game_computer_motherboard.png]"..
|
||||
"label[2,2;Powered Off...]"..
|
||||
"list[current_name;main;1,3;1,1;]"..
|
||||
"list[current_name;exp1;2,5.94;1,1;]"..
|
||||
"list[current_name;exp2;3,7.11;1,1;]"..
|
||||
"list[current_name;exp3;2,8.29;1,1;]"..
|
||||
"list[current_player;main;3,9.5;4,1;]"
|
||||
return formspec
|
||||
end
|
||||
|
||||
function default.home_active_formspec(pos)
|
||||
local formspec = "invsize[10,10]"..
|
||||
"background[1,2.5;8,7;mycoins_game_computer_motherboard.png]"..
|
||||
"label[2,0.0;cgminer version 3.7.2 - Started]" ..
|
||||
"label[2,0.2;----------------------------------------------------------------------------------]" ..
|
||||
"label[2,0.4;5s:468.9K avg:468.8Kh/s : A:2304 R:0 HW:0 WU:394.4/m]" ..
|
||||
"label[2,0.7;ST: 2 SS: 0 NB: 1909 LW: 34901 GF: 14 RF: 7]" ..
|
||||
"label[2,1;Connected to stratum.max.bitcoin.com diff 1.02k with stratum.]" ..
|
||||
"label[2,1.3;Block: 31dca6d... Diff:104 Started: 09:24:05 Best share: 618K.]" ..
|
||||
"label[2,1.5;----------------------------------------------------------------------------------]" ..
|
||||
"list[current_name;main;1,3;1,1;]"..
|
||||
"list[current_name;exp1;2,5.94;1,1;]"..
|
||||
"list[current_name;exp2;3,7.11;1,1;]"..
|
||||
"list[current_name;exp3;2,8.29;1,1;]"..
|
||||
"list[current_player;main;3,9.5;4,1;]"
|
||||
return formspec
|
||||
end
|
||||
|
||||
function default.home_wifi_formspec(pos)
|
||||
local formspec = "invsize[10,10]"..
|
||||
"label[2,2;No Internet Connection.]" ..
|
||||
"label[2,2.5;Contact Your Network Administrator For More Information.]" ..
|
||||
"list[current_name;main;1,3;1,1;]"..
|
||||
"list[current_player;main;3,9.5;4,1;]"
|
||||
return formspec
|
||||
end
|
||||
|
||||
function default.home_off(pos)
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
local inv = meta:get_inventory()
|
||||
minetest.swap_node(pos, {name = 'mycoins:home_computer', param2 = node.param2})
|
||||
meta:set_string("formspec", default.home_off_formspec(pos))
|
||||
meta:set_string("infotext", "Alienware Computer (owner "..
|
||||
meta:get_string("owner")..")")
|
||||
inv:set_size("main", 1*1)
|
||||
timer:stop()
|
||||
end
|
||||
|
||||
function default.home_wifi(pos)
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
local inv = meta:get_inventory()
|
||||
minetest.swap_node(pos, {name = 'mycoins:home_computer', param2 = node.param2})
|
||||
meta:set_string("formspec", default.home_wifi_formspec(pos))
|
||||
meta:set_string("infotext", "Alienware Computer (owner "..
|
||||
meta:get_string("owner")..")")
|
||||
inv:set_size("main", 1*1)
|
||||
timer:stop()
|
||||
end
|
||||
|
||||
function default.home_boot(pos)
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
local inv = meta:get_inventory()
|
||||
meta:set_string("formspec", default.home_boot_formspec(pos))
|
||||
meta:set_string("infotext", "Alienware Computer (owner "..
|
||||
meta:get_string("owner")..")")
|
||||
inv:set_size("main", 1*1)
|
||||
timer:start(home_boot)
|
||||
end
|
||||
|
||||
|
||||
-- Alienware Computer
|
||||
minetest.register_node("mycoins:home_computer",{
|
||||
drawtype = "nodebox",
|
||||
description = "Alienware Computer",
|
||||
tiles = {"mycoins_home_computer_tp.png","mycoins_home_computer_bt.png","mycoins_home_computer_rt.png","mycoins_home_computer_lt.png","mycoins_home_computer_bk.png","mycoins_home_computer_ft_off.png"},
|
||||
paramtype = "light",
|
||||
paramtype2 = "facedir",
|
||||
drop = "mycoins:home_computer",
|
||||
groups = {cracky=2, oddly_breakable_by_hand=2},
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-0.500000,-0.500000,0.03125,0.500000,0.500000,0.40625},
|
||||
{-0.40625,-0.40625,0.40625,0.40625,0.40625,0.50000},
|
||||
{-0.500000,-0.500000,-0.500000,0.500000,-0.375,-0.03125},
|
||||
},
|
||||
},
|
||||
sounds = default.node_sound_wood_defaults(),
|
||||
after_place_node = function(pos, placer)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
meta:set_string("owner", placer:get_player_name() or "")
|
||||
default.home_off(pos)
|
||||
end,
|
||||
on_construct = function(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local inv = meta:get_inventory()
|
||||
meta:set_string("formspec", default.home_boot_formspec(pos))
|
||||
meta:set_string("infotext", "Alienware Computer (owner "..
|
||||
meta:get_string("owner")..")")
|
||||
inv:set_size("main", 1*1)
|
||||
inv:set_size("exp1", 1*1)
|
||||
inv:set_size("exp2", 1*1)
|
||||
inv:set_size("exp3", 1*1)
|
||||
end,
|
||||
on_timer = function(pos)
|
||||
local isp = minetest.find_node_near(pos, 3, {"mycoins:isp_on"})
|
||||
if isp == nil then
|
||||
local wifi = minetest.find_node_near(pos, 30, {"mycoins:router_on"})
|
||||
if wifi == nil then
|
||||
default.home_wifi(pos)
|
||||
else
|
||||
local meta = minetest.get_meta(pos)
|
||||
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
|
||||
default.home_off(pos)
|
||||
else
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
local inv = meta:get_inventory()
|
||||
minetest.swap_node(pos, {name = 'mycoins:home_computer_active', param2 = node.param2})
|
||||
meta:set_string("formspec", default.home_active_formspec(pos))
|
||||
meta:set_string("infotext", "Alienware Computer (owner "..
|
||||
meta:get_string("owner")..")")
|
||||
inv:set_size("main", 1*1)
|
||||
if ( upgrade_timer(pos) < home_miner ) then
|
||||
timer:start(upgrade_timer(pos))
|
||||
else
|
||||
default.home_off(pos)
|
||||
end
|
||||
end
|
||||
end
|
||||
else
|
||||
local meta = minetest.get_meta(pos)
|
||||
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
|
||||
default.home_off(pos)
|
||||
else
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
local inv = meta:get_inventory()
|
||||
minetest.swap_node(pos, {name = 'mycoins:home_computer_active', param2 = node.param2})
|
||||
meta:set_string("formspec", default.home_active_formspec(pos))
|
||||
meta:set_string("infotext", "Alienware Computer (owner "..
|
||||
meta:get_string("owner")..")")
|
||||
inv:set_size("main", 1*1)
|
||||
if ( upgrade_timer(pos) < home_miner ) then
|
||||
timer:start(upgrade_timer(pos))
|
||||
else
|
||||
default.home_off(pos)
|
||||
end
|
||||
end
|
||||
end
|
||||
end,
|
||||
on_punch = function(pos)
|
||||
local isp = minetest.find_node_near(pos, 3, {"mycoins:isp_on"})
|
||||
local meta = minetest.get_meta(pos)
|
||||
local inv = meta:get_inventory()
|
||||
if upgrade_timer(pos) < home_miner then
|
||||
if isp == nil then
|
||||
local wifi = minetest.find_node_near(pos, 30, {"mycoins:router_on"})
|
||||
if wifi == nil then
|
||||
default.home_wifi(pos)
|
||||
else
|
||||
if ( upgrade_timer(pos) < home_miner ) then
|
||||
default.home_boot(pos)
|
||||
else
|
||||
default.home_off(pos)
|
||||
end
|
||||
end
|
||||
else
|
||||
default.home_boot(pos)
|
||||
end
|
||||
else
|
||||
default.home_off(pos)
|
||||
end
|
||||
end,
|
||||
allow_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
|
||||
local meta = minetest.get_meta(pos)
|
||||
if not computer_owner(meta, player) then
|
||||
return 0
|
||||
end
|
||||
return count
|
||||
end,
|
||||
allow_metadata_inventory_put = function(pos, listname, index, stack, player)
|
||||
local meta = minetest.env:get_meta(pos)
|
||||
if not computer_owner(meta, player) then
|
||||
return 0
|
||||
end
|
||||
return stack:get_count()
|
||||
end,
|
||||
allow_metadata_inventory_take = function(pos, listname, index, stack, player)
|
||||
local meta = minetest.get_meta(pos)
|
||||
if not computer_owner(meta, player) then
|
||||
return 0
|
||||
end
|
||||
return stack:get_count()
|
||||
end,
|
||||
can_dig = function(pos,player)
|
||||
local meta = minetest.get_meta(pos);
|
||||
local inv = meta:get_inventory()
|
||||
return inv:is_empty("main") and inv:is_empty("exp1") and inv:is_empty("exp2") and inv:is_empty("exp3") and computer_owner(meta, player)
|
||||
end,
|
||||
})
|
||||
|
||||
minetest.register_node("mycoins:home_computer_active",{
|
||||
drawtype = "nodebox",
|
||||
description = "Alienware Computer",
|
||||
tiles = {"mycoins_home_computer_tp.png","mycoins_home_computer_bt.png","mycoins_home_computer_rt.png","mycoins_home_computer_lt.png","mycoins_home_computer_bk.png","mycoins_home_computer_ft.png"},
|
||||
paramtype = "light",
|
||||
paramtype2 = "facedir",
|
||||
light_source = 8,
|
||||
drop = "mycoins:home_computer",
|
||||
groups = {cracky=2, not_in_creative_inventory=1, oddly_breakable_by_hand=2},
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-0.500000,-0.500000,0.03125,0.500000,0.500000,0.40625},
|
||||
{-0.40625,-0.40625,0.40625,0.40625,0.40625,0.50000},
|
||||
{-0.500000,-0.500000,-0.500000,0.500000,-0.375,-0.03125},
|
||||
},
|
||||
},
|
||||
sounds = default.node_sound_wood_defaults(),
|
||||
on_timer = function(pos)
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
local inv = meta:get_inventory()
|
||||
local isp = minetest.find_node_near(pos, 3, {"mycoins:isp_on"})
|
||||
if isp == nil then
|
||||
local wifi = minetest.find_node_near(pos, 30, {"mycoins:router_on"})
|
||||
if wifi == nil then
|
||||
default.home_off(pos)
|
||||
else
|
||||
local meta = minetest.get_meta(pos)
|
||||
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
|
||||
default.home_off(pos)
|
||||
else
|
||||
if ( upgrade_timer(pos) < home_miner ) then
|
||||
timer:start(upgrade_timer(pos))
|
||||
minetest.get_meta(pos):get_inventory():add_item("main", "mycoins:bitcent")
|
||||
else
|
||||
default.home_off(pos)
|
||||
end
|
||||
end
|
||||
end
|
||||
else
|
||||
local meta = minetest.get_meta(pos)
|
||||
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
|
||||
default.home_off(pos)
|
||||
else
|
||||
if ( upgrade_timer(pos) < home_miner ) then
|
||||
minetest.get_meta(pos):get_inventory():add_item("main", "mycoins:bitcent")
|
||||
timer:start(upgrade_timer(pos))
|
||||
else
|
||||
default.home_off(pos)
|
||||
end
|
||||
end
|
||||
end
|
||||
end,
|
||||
on_punch = function(pos)
|
||||
default.home_off(pos)
|
||||
end,
|
||||
allow_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
|
||||
local meta = minetest.get_meta(pos)
|
||||
if not computer_owner(meta, player) then
|
||||
return 0
|
||||
end
|
||||
return count
|
||||
end,
|
||||
allow_metadata_inventory_put = function(pos, listname, index, stack, player)
|
||||
local meta = minetest.env:get_meta(pos)
|
||||
if not computer_owner(meta, player) then
|
||||
return 0
|
||||
end
|
||||
return stack:get_count()
|
||||
end,
|
||||
allow_metadata_inventory_take = function(pos, listname, index, stack, player)
|
||||
local meta = minetest.get_meta(pos)
|
||||
if not computer_owner(meta, player) then
|
||||
return 0
|
||||
end
|
||||
return stack:get_count()
|
||||
end,
|
||||
can_dig = function(pos,player)
|
||||
local meta = minetest.get_meta(pos);
|
||||
local inv = meta:get_inventory()
|
||||
return inv:is_empty("main") and inv:is_empty("exp1") and inv:is_empty("exp2") and inv:is_empty("exp3") and computer_owner(meta, player)
|
||||
end,
|
||||
})
|
||||
|
||||
|
||||
|
9
init.lua
9
init.lua
|
@ -9,11 +9,14 @@
|
|||
--++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
|
||||
dofile(minetest.get_modpath("mycoins").."/nodes.lua")
|
||||
|
||||
dofile(minetest.get_modpath("mycoins").."/isp.lua")
|
||||
dofile(minetest.get_modpath("mycoins").."/router.lua")
|
||||
dofile(minetest.get_modpath("mycoins").."/home_pc.lua")
|
||||
dofile(minetest.get_modpath("mycoins").."/game_pc.lua")
|
||||
dofile(minetest.get_modpath("mycoins").."/alien_pc.lua")
|
||||
dofile(minetest.get_modpath("mycoins").."/items.lua")
|
||||
dofile(minetest.get_modpath("mycoins").."/crafts.lua")
|
||||
dofile(minetest.get_modpath("mycoins").."/modrecipes.lua")
|
||||
dofile(minetest.get_modpath("mycoins").."/router.lua")
|
||||
dofile(minetest.get_modpath("mycoins").."/isp.lua")
|
||||
-- dofile(minetest.get_modpath("mycoins").."/shop.lua")
|
||||
print("mycoins mod loaded!")
|
||||
|
|
66
router.lua
66
router.lua
|
@ -1,3 +1,7 @@
|
|||
|
||||
router_cycle = 10
|
||||
router_radius = 30
|
||||
|
||||
function default.router_off_formspec(pos)
|
||||
local spos = pos.x .. "," .. pos.y .. "," ..pos.z
|
||||
local formspec = "size[10,10]"..
|
||||
|
@ -5,7 +9,7 @@ function default.router_off_formspec(pos)
|
|||
return formspec
|
||||
end
|
||||
|
||||
function default.router_formspec(pos)
|
||||
function default.router_on_formspec(pos)
|
||||
local spos = pos.x .. "," .. pos.y .. "," ..pos.z
|
||||
local formspec = "size[10,10]"..
|
||||
"label[1,0;Powered On...]"..
|
||||
|
@ -15,9 +19,12 @@ function default.router_formspec(pos)
|
|||
"label[4,0.5;Routers:]"..
|
||||
"label[4,0.8;Active: "..#active_routers.."]"..
|
||||
"label[4,1;Inactive: "..#inactive_routers.."]"..
|
||||
"label[6,0.5;ISP:]"..
|
||||
"label[6,0.5;Available Networks:]"..
|
||||
"label[6,0.8;Active: "..#active_isp.."]"..
|
||||
"label[6,1;Inactive: "..#inactive_isp.."]"..
|
||||
"label[6,1;Inactive: "..#inactive_isp.."]"..
|
||||
"label[3,2.5;Test:]"..
|
||||
"label[3,2.8;Active: "..#active_isp.."]"..
|
||||
"label[3,3;Inactive: "..#inactive_isp.."]"..
|
||||
"button_exit[4,7;2,1;exit;Exit]"
|
||||
return formspec
|
||||
end
|
||||
|
@ -30,6 +37,12 @@ function default.router_error_formspec(pos)
|
|||
end
|
||||
|
||||
function default.find_network(pos)
|
||||
|
||||
-- need to do some owner checking and report isp networks accordingly using the router owner function or similar.....
|
||||
|
||||
|
||||
|
||||
|
||||
active_computers = minetest.find_nodes_in_area({x=pos.x-30, y=pos.y-30, z=pos.z-30}, {x=pos.x+30, y=pos.y+30, z=pos.z+30}, {"mycoins:home_computer_active","mycoins:game_computer_active","mycoins:alien_computer_active"})
|
||||
inactive_computers = minetest.find_nodes_in_area({x=pos.x-30, y=pos.y-30, z=pos.z-30}, {x=pos.x+30, y=pos.y+30, z=pos.z+30}, {"mycoins:home_computer","mycoins:game_computer","mycoins:alien_computer"})
|
||||
active_routers = minetest.find_nodes_in_area({x=pos.x-30, y=pos.y-30, z=pos.z-30}, {x=pos.x+30, y=pos.y+30, z=pos.z+30}, {"mycoins:router_on"})
|
||||
|
@ -45,7 +58,7 @@ local function router_owner(meta, player)
|
|||
return true
|
||||
end
|
||||
|
||||
--WIFI Router
|
||||
-- WIFI Router
|
||||
minetest.register_node("mycoins:router_on", {
|
||||
description = "WIFI Router",
|
||||
tiles = {"mycoins_router_t.png","mycoins_router_bt.png","mycoins_router_l.png","mycoins_router_r.png","mycoins_router_b.png",
|
||||
|
@ -77,7 +90,7 @@ minetest.register_node("mycoins:router_on", {
|
|||
end,
|
||||
on_timer = function(pos)
|
||||
default.find_network(pos)
|
||||
local isp = minetest.find_node_near(pos, 30, {"mycoins:isp_on"})
|
||||
local isp = minetest.find_node_near(pos, router_radius, {"mycoins:isp_on"})
|
||||
if isp == nil then
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
|
@ -85,28 +98,29 @@ minetest.register_node("mycoins:router_on", {
|
|||
minetest.swap_node(pos, {name = 'mycoins:router_error', param2 = node.param2})
|
||||
meta:set_string("formspec", default.router_error_formspec(pos))
|
||||
meta:set_string("infotext", "Router (owner "..meta:get_string("owner")..")")
|
||||
timer:start(10)
|
||||
timer:start(router_cycle)
|
||||
else
|
||||
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
minetest.swap_node(pos, {name = 'mycoins:router_on', param2 = node.param2})
|
||||
meta:set_string("formspec", default.router_formspec(pos))
|
||||
meta:set_string("formspec", default.router_on_formspec(pos))
|
||||
meta:set_string("infotext", "Router (owner "..meta:get_string("owner")..")")
|
||||
timer:start(10)
|
||||
timer:start(router_cycle)
|
||||
end
|
||||
end,
|
||||
after_place_node = function(pos, placer)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
meta:set_string("formspec", default.router_formspec(pos))
|
||||
meta:set_string("formspec", default.router_on_formspec(pos))
|
||||
meta:set_string("owner", placer:get_player_name() or "")
|
||||
meta:set_string("infotext", "Router (owner "..meta:get_string("owner")..")")
|
||||
timer:start(10)
|
||||
timer:start(router_cycle)
|
||||
end,
|
||||
on_construct = function(pos)
|
||||
default.find_network(pos)
|
||||
local isp = minetest.find_node_near(pos, 30, {"mycoins:isp_on"})
|
||||
local isp = minetest.find_node_near(pos, router_radius, {"mycoins:isp_on"})
|
||||
if isp == nil then
|
||||
local node = minetest.get_node(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
|
@ -117,7 +131,7 @@ minetest.register_node("mycoins:router_on", {
|
|||
local node = minetest.get_node(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
minetest.swap_node(pos, {name = 'mycoins:router_on', param2 = node.param2})
|
||||
meta:set_string("formspec", default.router_formspec(pos))
|
||||
meta:set_string("formspec", default.router_on_formspec(pos))
|
||||
meta:set_string("infotext", "Router (owner "..meta:get_string("owner")..")")
|
||||
end
|
||||
end,
|
||||
|
@ -148,7 +162,7 @@ minetest.register_node("mycoins:router", {
|
|||
},
|
||||
},
|
||||
on_punch = function(pos)
|
||||
local isp = minetest.find_node_near(pos, 30, {"mycoins:isp_on"})
|
||||
local isp = minetest.find_node_near(pos, router_radius, {"mycoins:isp_on"})
|
||||
default.find_network(pos)
|
||||
if isp == nil then
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
|
@ -157,15 +171,15 @@ minetest.register_node("mycoins:router", {
|
|||
minetest.swap_node(pos, {name = 'mycoins:router_error', param2 = node.param2})
|
||||
meta:set_string("formspec", default.router_error_formspec(pos))
|
||||
meta:set_string("infotext", "Router (owner "..meta:get_string("owner")..")")
|
||||
timer:start(10)
|
||||
timer:start(router_cycle)
|
||||
else
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
minetest.swap_node(pos, {name = 'mycoins:router_on', param2 = node.param2})
|
||||
meta:set_string("formspec", default.router_formspec(pos))
|
||||
meta:set_string("formspec", default.router_on_formspec(pos))
|
||||
meta:set_string("infotext", "Router (owner "..meta:get_string("owner")..")")
|
||||
timer:start(10)
|
||||
timer:start(router_cycle)
|
||||
end
|
||||
end,
|
||||
on_timer = function(pos)
|
||||
|
@ -182,14 +196,14 @@ minetest.register_node("mycoins:router", {
|
|||
local timer = minetest.get_node_timer(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
meta:set_string("formspec", default.router_formspec(pos))
|
||||
meta:set_string("formspec", default.router_on_formspec(pos))
|
||||
meta:set_string("owner", placer:get_player_name() or "")
|
||||
meta:set_string("infotext", "Router (owner "..meta:get_string("owner")..")")
|
||||
timer:start(10)
|
||||
timer:start(router_cycle)
|
||||
end,
|
||||
on_construct = function(pos)
|
||||
default.find_network(pos)
|
||||
local isp = minetest.find_node_near(pos, 30, {"mycoins:isp_on"})
|
||||
local isp = minetest.find_node_near(pos, router_radius, {"mycoins:isp_on"})
|
||||
if isp == nil then
|
||||
local node = minetest.get_node(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
|
@ -200,7 +214,7 @@ minetest.register_node("mycoins:router", {
|
|||
local node = minetest.get_node(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
minetest.swap_node(pos, {name = 'mycoins:router_on', param2 = node.param2})
|
||||
meta:set_string("formspec", default.router_formspec(pos))
|
||||
meta:set_string("formspec", default.router_on_formspec(pos))
|
||||
meta:set_string("infotext", "Router (owner "..meta:get_string("owner")..")")
|
||||
end
|
||||
end,
|
||||
|
@ -241,7 +255,7 @@ minetest.register_node("mycoins:router_error", {
|
|||
end,
|
||||
on_timer = function(pos)
|
||||
default.find_network(pos)
|
||||
local isp = minetest.find_node_near(pos, 30, {"mycoins:isp_on"})
|
||||
local isp = minetest.find_node_near(pos, router_radius, {"mycoins:isp_on"})
|
||||
if isp == nil then
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
|
@ -249,20 +263,20 @@ minetest.register_node("mycoins:router_error", {
|
|||
minetest.swap_node(pos, {name = 'mycoins:router_error', param2 = node.param2})
|
||||
meta:set_string("formspec", default.router_error_formspec(pos))
|
||||
meta:set_string("infotext", "Router (owner "..meta:get_string("owner")..")")
|
||||
timer:start(10)
|
||||
timer:start(router_cycle)
|
||||
else
|
||||
local timer = minetest.get_node_timer(pos)
|
||||
local node = minetest.get_node(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
minetest.swap_node(pos, {name = 'mycoins:router_on', param2 = node.param2})
|
||||
meta:set_string("formspec", default.router_formspec(pos))
|
||||
meta:set_string("formspec", default.router_on_formspec(pos))
|
||||
meta:set_string("infotext", "Router (owner "..meta:get_string("owner")..")")
|
||||
timer:start(10)
|
||||
timer:start(router_cycle)
|
||||
end
|
||||
|
||||
end,
|
||||
on_construct = function(pos)
|
||||
local isp = minetest.find_node_near(pos, 30, {"mycoins:isp_on"})
|
||||
local isp = minetest.find_node_near(pos, router_radius, {"mycoins:isp_on"})
|
||||
if isp == nil then
|
||||
local node = minetest.get_node(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
|
@ -273,7 +287,7 @@ minetest.register_node("mycoins:router_error", {
|
|||
local node = minetest.get_node(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
minetest.swap_node(pos, {name = 'mycoins:router_on', param2 = node.param2})
|
||||
meta:set_string("formspec", default.router_formspec(pos))
|
||||
meta:set_string("formspec", default.router_on_formspec(pos))
|
||||
meta:set_string("infotext", "Router (owner "..meta:get_string("owner")..")")
|
||||
end
|
||||
end,
|
||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 494 B After Width: | Height: | Size: 238 B |
Binary file not shown.
Before Width: | Height: | Size: 873 B After Width: | Height: | Size: 419 B |
Binary file not shown.
After Width: | Height: | Size: 543 B |
Loading…
Reference in New Issue