Added ISP

master
DonBatman 2015-04-30 16:28:21 -07:00
parent 79d615bea4
commit d359c7ed1a
27 changed files with 2828 additions and 257 deletions

View File

@ -18,7 +18,7 @@ minetest.register_craft({
output = "mycoins:home_computer_video";
recipe = {
{ "homedecor:plastic_base", "homedecor:plastic_base", "homedecor:plastic_base", },
{ "homedecor:ic", "default:copper_ingot", "homedecor:ic", },
{ "homedecor:ic", "mycoins:copper_ribbonwire", "homedecor:ic", },
{ "default:gold_ingot", "default:gold_ingot", "default:gold_ingot", },
};
});
@ -35,8 +35,8 @@ minetest.register_craft({
minetest.register_craft({
output = "mycoins:home_computer_powersupply";
recipe = {
{ "default:steel_ingot", "default:steel_ingot", "default:steel_ingot", },
{ "default:steel_ingot", "default:copperblock", "default:steel_ingot", },
{ "mycoins:ribbonwire", "mycoins:ribbonwire", "mycoins:ribbonwire", },
{ "default:steel_ingot", "default:steelblock", "default:steel_ingot", },
{ "homedecor:ic", "homedecor:ic", "homedecor:ic", },
};
});
@ -62,9 +62,9 @@ minetest.register_craft({
minetest.register_craft({
output = "mycoins:home_computer_fan";
recipe = {
{ "default:copper_ingot", "default:copper_ingot", "default:copper_ingot", },
{ "default:coalblock", "default:steel_ingot", "default:coalblock", },
{ "default:copper_ingot", "default:copper_ingot", "default:copper_ingot", },
{ "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", },
{ "default:steel_ingot", "default:coalblock", "default:steel_ingot", },
{ "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", },
};
});
@ -73,7 +73,7 @@ minetest.register_craft({
recipe = {
{ "default:gold_ingot", "default:gold_ingot", "default:gold_ingot", },
{ "default:coalblock", "default:steelblock", "default:coalblock", },
{ "default:copper_ingot", "default:copper_ingot", "default:copper_ingot", },
{ "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", },
};
});
@ -89,7 +89,7 @@ minetest.register_craft({
minetest.register_craft({
output = "mycoins:home_computer_ram";
recipe = {
{ "homedecor:plastic_base", "default:copper_ingot", "homedecor:plastic_base", },
{ "homedecor:plastic_sheeting", "mycoins:copper_ribbonwire", "homedecor:plastic_sheeting", },
{ "homedecor:ic", "homedecor:ic", "homedecor:ic", },
{ "default:gold_ingot", "default:gold_ingot", "default:gold_ingot", },
};
@ -110,8 +110,8 @@ minetest.register_craft({
minetest.register_craft({
output = "mycoins:game_computer_video";
recipe = {
{ "homedecor:plastic_base", "default:steel_ingot", "homedecor:ic", },
{ "homedecor:ic", "default:copper_ingot", "homedecor:ic", },
{ "homedecor:plastic_sheeting", "default:steel_ingot", "homedecor:ic", },
{ "homedecor:ic", "mycoins:copper_ribbonwire", "homedecor:ic", },
{ "default:gold_ingot", "default:gold_ingot", "default:gold_ingot", },
};
});
@ -120,16 +120,16 @@ minetest.register_craft({
output = "mycoins:game_computer_motherboard";
recipe = {
{ "homedecor:ic", "homedecor:ic", "homedecor:ic", },
{ "default:gold_ingot", "default:goldblock", "default:copper_ingot", },
{ "homedecor:plastic_base", "default:copper_ingot", "default:coalblock", },
{ "default:gold_ingot", "default:goldblock", "mycoins:copper_ribbonwire", },
{ "homedecor:plastic_base", "mycoins:copper_ribbonwire", "default:coalblock", },
};
});
minetest.register_craft({
output = "mycoins:game_computer_powersupply";
recipe = {
{ "default:copper_ingot", "default:copper_ingot", "default:copper_ingot", },
{ "default:copper_ingot", "default:bronzeblock", "default:copper_ingot", },
{ "mycoins:ribbonwire", "mycoins:ribbonwire", "mycoins:ribbonwire", },
{ "mycoins:copper_ribbonwire", "default:bronzeblock", "mycoins:copper_ribbonwire", },
{ "homedecor:ic", "homedecor:ic", "homedecor:ic", },
};
});
@ -146,8 +146,8 @@ minetest.register_craft({
minetest.register_craft({
output = "mycoins:game_computer_soundcard";
recipe = {
{ "default:copper_ingot", "default:copper_ingot", "default:copper_ingot", },
{ "default:copper_ingot", "homedecor:ic", "default:copper_ingot", },
{ "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", },
{ "homedecor:plastic_sheeting", "homedecor:ic", "homedecor:plastic_sheeting", },
{ "default:gold_ingot", "default:gold_ingot", "default:gold_ingot", },
};
});
@ -204,14 +204,14 @@ minetest.register_craft({
recipe = {
{ "homedecor:ic", "homedecor:ic", "homedecor:ic", },
{ "default:gold_ingot", "default:diamondblock", "default:gold_ingot", },
{ "homedecor:plastic_base", "default:copper_ingot", "default:coalblock", },
{ "homedecor:plastic_base", "mycoins:copper_ribbonwire", "default:coalblock", },
};
});
minetest.register_craft({
output = "mycoins:alien_computer_powersupply";
recipe = {
{ "default:bronze_ingot", "default:bronze_ingot", "default:bronze_ingot", },
{ "mycoins:ribbonwire", "mycoins:ribbonwire", "mycoins:ribbonwire", },
{ "default:bronze_ingot", "default:goldblock", "default:bronze_ingot", },
{ "homedecor:ic", "homedecor:ic", "homedecor:ic", },
};
@ -229,8 +229,8 @@ minetest.register_craft({
minetest.register_craft({
output = "mycoins:alien_computer_soundcard";
recipe = {
{ "default:bronze_ingot", "default:bronze_ingot", "default:bronze_ingot", },
{ "default:copper_ingot", "default:diamondblock", "default:copper_ingot", },
{ "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", },
{ "homedecor:plastic_sheeting", "default:diamondblock", "homedecor:plastic_sheeting", },
{ "default:gold_ingot", "default:gold_ingot", "default:gold_ingot", },
};
});
@ -240,7 +240,7 @@ minetest.register_craft({
recipe = {
{ "homedecor:ic", "default:bronze_ingot", "homedecor:ic", },
{ "homedecor:ic", "default:goldblock", "homedecor:ic", },
{ "homedecor:ic", "default:copper_ingot", "homedecor:ic", },
{ "homedecor:ic", "mycoins:ribbonwire", "homedecor:ic", },
};
});
@ -411,7 +411,37 @@ minetest.register_craft({
recipe = {
{ "default:steel_ingot", "homedecor:ic", "default:steel_ingot", },
{ "homedecor:ic", "default:mese", "homedecor:ic", },
{ "homedecor:plastic_base", "homedecor:plastic_base", "homedecor:plastic_base", },
{ "homedecor:plastic_sheet", "homedecor:plastic_sheet", "homedecor:plastic_sheet", },
};
});
-- copper wire
minetest.register_craft({
output = "mycoins:copper_ribbonwire 12";
recipe = {
{ "default:copper_ingot", "default:copper_ingot", "default:copper_ingot", },
};
});
minetest.register_craft({
output = "mycoins:ribbonwire 3";
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", },
};
});
-- ISP
minetest.register_craft({
output = "mycoins:isp";
recipe = {
{ "default:gold_ingot", "mycoins:bitcoin", "default:silver_ingot", },
{ "mycoins:ribbonwire", "default:steelblock", "mycoins:ribbonwire", },
{ "homedecor:plastic_sheeting", "homedecor:plastic_sheeting", "homedecor:plastic_sheeting", },
};
});
@ -419,10 +449,3 @@ minetest.register_craft({

451
crafts.lua~ Normal file
View File

@ -0,0 +1,451 @@
--= CHANGED TenPlus1 (moreores tin is now default steel, moreores silver is now copper, removed Moreores dependancy)
-- Home Computer
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_soundcard", "mycoins:home_computer_motherboard", "mycoins:home_computer_harddrive", },
};
});
minetest.register_craft({
output = "mycoins:home_computer_video";
recipe = {
{ "homedecor:plastic_base", "homedecor:plastic_base", "homedecor:plastic_base", },
{ "homedecor:ic", "mycoins:copper_ribbonwire", "homedecor:ic", },
{ "default:gold_ingot", "default:gold_ingot", "default:gold_ingot", },
};
});
minetest.register_craft({
output = "mycoins:home_computer_motherboard";
recipe = {
{ "homedecor:ic", "homedecor:ic", "homedecor:ic", },
{ "default:gold_ingot", "default:gold_ingot", "default:steel_ingot", },
{ "homedecor:plastic_base", "default:steel_ingot", "default:coalblock", },
};
});
minetest.register_craft({
output = "mycoins:home_computer_powersupply";
recipe = {
{ "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", },
{ "default:steel_ingot", "default:steelblock", "default:steel_ingot", },
{ "homedecor:ic", "homedecor:ic", "homedecor:ic", },
};
});
minetest.register_craft({
output = "mycoins:home_computer_cpu";
recipe = {
{ "homedecor:ic", "default:gold_ingot", "homedecor:ic", },
{ "homedecor:ic", "default:diamond", "homedecor:ic", },
{ "homedecor:ic", "default:gold_ingot", "homedecor:ic", },
};
});
minetest.register_craft({
output = "mycoins:home_computer_soundcard";
recipe = {
{ "default:steel_ingot", "default:steel_ingot", "default:steel_ingot", },
{ "default:steel_ingot", "default:glass", "default:steel_ingot", },
{ "default:gold_ingot", "default:steel_ingot", "default:gold_ingot", },
};
});
minetest.register_craft({
output = "mycoins:home_computer_fan";
recipe = {
{ "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", },
{ "default:steel_ingot", "default:coalblock", "default:steel_ingot", },
{ "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", },
};
});
minetest.register_craft({
output = "mycoins:home_computer_harddrive";
recipe = {
{ "default:gold_ingot", "default:gold_ingot", "default:gold_ingot", },
{ "default:coalblock", "default:steelblock", "default:coalblock", },
{ "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", },
};
});
minetest.register_craft({
output = "mycoins:home_computer_cdrom";
recipe = {
{ "default:steel_ingot", "homedecor:plastic_base", "default:glass", },
{ "default:coal_lump", "default:steel_ingot", "default:coal_lump", },
{ "default:gold_ingot", "default:copper_ingot", "default:gold_ingot", },
};
});
minetest.register_craft({
output = "mycoins:home_computer_ram";
recipe = {
{ "homedecor:plastic_sheeting", "mycoins:copper_ribbonwire", "homedecor:plastic_sheeting", },
{ "homedecor:ic", "homedecor:ic", "homedecor:ic", },
{ "default:gold_ingot", "default:gold_ingot", "default:gold_ingot", },
};
});
-- Game Computer
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_soundcard", "mycoins:game_computer_motherboard", "mycoins:game_computer_harddrive", },
};
});
minetest.register_craft({
output = "mycoins:game_computer_video";
recipe = {
{ "homedecor:plastic_sheeting", "default:steel_ingot", "homedecor:ic", },
{ "homedecor:ic", "mycoins:copper_ribbonwire", "homedecor:ic", },
{ "default:gold_ingot", "default:gold_ingot", "default:gold_ingot", },
};
});
minetest.register_craft({
output = "mycoins:game_computer_motherboard";
recipe = {
{ "homedecor:ic", "homedecor:ic", "homedecor:ic", },
{ "default:gold_ingot", "default:goldblock", "mycoins:copper_ribbonwire", },
{ "homedecor:plastic_base", "mycoins:copper_ribbonwire", "default:coalblock", },
};
});
minetest.register_craft({
output = "mycoins:game_computer_powersupply";
recipe = {
{ "mycoins:ribbonwire", "mycoins:ribbonwire", "mycoins:ribbonwire", },
{ "mycoins:copper_ribbonwire", "default:bronzeblock", "mycoins:copper_ribbonwire", },
{ "homedecor:ic", "homedecor:ic", "homedecor:ic", },
};
});
minetest.register_craft({
output = "mycoins:game_computer_cpu";
recipe = {
{ "homedecor:ic", "default:gold_ingot", "homedecor:ic", },
{ "homedecor:ic", "default:diamondblock", "homedecor:ic", },
{ "homedecor:ic", "default:gold_ingot", "homedecor:ic", },
};
});
minetest.register_craft({
output = "mycoins:game_computer_soundcard";
recipe = {
{ "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", },
{ "homedecor:plastic_sheeting", "homedecor:ic", "homedecor:plastic_sheeting", },
{ "default:gold_ingot", "default:gold_ingot", "default:gold_ingot", },
};
});
minetest.register_craft({
output = "mycoins:game_computer_harddrive";
recipe = {
{ "default:gold_ingot", "default:gold_ingot", "default:gold_ingot", },
{ "default:coalblock", "default:bronzeblock", "default:coalblock", },
{ "default:gold_ingot", "default:gold_ingot", "default:gold_ingot", },
};
});
minetest.register_craft({
output = "mycoins:game_computer_dvdrom";
recipe = {
{ "default:steel_ingot", "homedecor:plastic_base", "default:diamond", },
{ "default:coal_lump", "default:steel_ingot", "default:coal_lump", },
{ "default:gold_ingot", "default:bronze_ingot", "default:gold_ingot", },
};
});
minetest.register_craft({
output = "mycoins:game_computer_ram";
recipe = {
{ "mycoins:home_computer_ram", "mycoins:home_computer_ram", },
{ "mycoins:home_computer_ram", "mycoins:home_computer_ram", },
};
});
-- Alineware Computer
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_soundcard", "mycoins:alien_computer_motherboard", "mycoins:alien_computer_harddrive", },
};
});
-- CHANGED TenPlus1 (changed mesecons_insulated:insulated_off to default:obsidian_shard, removed Mesecons dependancy)
minetest.register_craft({
output = "mycoins:alien_computer_video";
recipe = {
{ "mycoins:home_computer_fan", "mycoins:game_computer_video", "default:obsidian_shard", },
{ "mycoins:home_computer_fan", "mycoins:game_computer_video", "default:obsidian_shard", },
};
});
minetest.register_craft({
output = "mycoins:alien_computer_motherboard";
recipe = {
{ "homedecor:ic", "homedecor:ic", "homedecor:ic", },
{ "default:gold_ingot", "default:diamondblock", "default:gold_ingot", },
{ "homedecor:plastic_base", "mycoins:copper_ribbonwire", "default:coalblock", },
};
});
minetest.register_craft({
output = "mycoins:alien_computer_powersupply";
recipe = {
{ "mycoins:ribbonwire", "mycoins:ribbonwire", "mycoins:ribbonwire", },
{ "default:bronze_ingot", "default:goldblock", "default:bronze_ingot", },
{ "homedecor:ic", "homedecor:ic", "homedecor:ic", },
};
});
minetest.register_craft({
output = "mycoins:alien_computer_cpu";
recipe = {
{ "homedecor:ic", "default:gold_ingot", "homedecor:ic", },
{ "homedecor:ic", "default:mese", "homedecor:ic", },
{ "homedecor:ic", "default:gold_ingot", "homedecor:ic", },
};
});
minetest.register_craft({
output = "mycoins:alien_computer_soundcard";
recipe = {
{ "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", "mycoins:copper_ribbonwire", },
{ "homedecor:plastic_sheeting", "default:diamondblock", "homedecor:plastic_sheeting", },
{ "default:gold_ingot", "default:gold_ingot", "default:gold_ingot", },
};
});
minetest.register_craft({
output = "mycoins:alien_computer_harddrive";
recipe = {
{ "homedecor:ic", "default:bronze_ingot", "homedecor:ic", },
{ "homedecor:ic", "default:goldblock", "homedecor:ic", },
{ "homedecor:ic", "mycoins:ribbonwire", "homedecor:ic", },
};
});
minetest.register_craft({
output = "mycoins:alien_computer_ram";
recipe = {
{ "mycoins:game_computer_ram", "mycoins:game_computer_ram", },
};
});
minetest.register_craft({
output = "mycoins:alien_computer_cooler";
recipe = {
{ "default:coal_lump", "default:steelblock", "default:coal_lump", },
{ "homedecor:plastic_base", "bucket:bucket_water", "vessels:glass_bottle", },
{ "homedecor:plastic_base", "homedecor:plastic_base", "homedecor:plastic_base", },
};
});
-- bitcent
minetest.register_craft({
output = 'mycoins:bitcent 100',
recipe = {
{'', '', 'mycoins:bitcent'},
{'', '', ''},
{'', 'mycoins:bitcoin', ''},
}
})
minetest.register_craft({
output = 'mycoins:bitcent 25',
recipe = {
{'', '', 'mycoins:bitcent'},
{'', '', ''},
{'', 'mycoins:bitqu', ''},
}
})
minetest.register_craft({
output = 'mycoins:bitcent 10',
recipe = {
{'', '', 'mycoins:bitcent'},
{'', '', ''},
{'', 'mycoins:bitdi', ''},
}
})
minetest.register_craft({
output = 'mycoins:bitcent 5',
recipe = {
{'', '', 'mycoins:bitcent'},
{'', '', ''},
{'', 'mycoins:bitni', ''},
}
})
-- bitnickel
minetest.register_craft({
output = 'mycoins:bitni 20',
recipe = {
{'', '', 'mycoins:bitcent'},
{'', '', ''},
{'', 'mycoins:bitcoin', ''},
}
})
minetest.register_craft({
output = 'mycoins:bitni 5',
recipe = {
{'', '', 'mycoins:bitcent'},
{'', '', ''},
{'', 'mycoins:bitqu', ''},
}
})
minetest.register_craft({
output = 'mycoins:bitni 2',
recipe = {
{'', '', 'mycoins:bitcent'},
{'', '', ''},
{'', 'mycoins:bitdi', ''},
}
})
minetest.register_craft({
output = 'mycoins:bitni',
recipe = {
{'', '', 'mycoins:bitcent'},
{'mycoins:bitcent', 'mycoins:bitcent', ''},
{'mycoins:bitcent', 'mycoins:bitcent', 'mycoins:bitcent'},
}
})
-- bitdime
minetest.register_craft({
output = 'mycoins:bitdi 10',
recipe = {
{'', '', 'mycoins:bitcent'},
{'', '', ''},
{'', 'mycoins:bitcoin', ''},
}
})
minetest.register_craft({
output = 'mycoins:bitdi',
recipe = {
{'', '', 'mycoins:bitcent'},
{'', 'mycoins:bitni', ''},
{'', 'mycoins:bitni', ''},
}
})
--bitquarter
minetest.register_craft({
output = 'mycoins:bitqu 4',
recipe = {
{'', '', 'mycoins:bitcent'},
{'', '', ''},
{'', 'mycoins:bitcoin', ''},
}
})
minetest.register_craft({
output = 'mycoins:bitqu',
recipe = {
{'mycoins:bitcent', 'mycoins:bitdi', 'mycoins:bitcent'},
{'mycoins:bitcent', 'mycoins:bitdi', ''},
{'mycoins:bitcent', 'mycoins:bitcent', 'mycoins:bitcent'},
}
})
minetest.register_craft({
output = 'mycoins:bitqu',
recipe = {
{'', 'mycoins:bitni', 'mycoins:bitcent'},
{'', 'mycoins:bitdi', ''},
{'', 'mycoins:bitdi', ''},
}
})
minetest.register_craft({
output = 'mycoins:bitqu',
recipe = {
{'', '', 'mycoins:bitcent'},
{'mycoins:bitni', 'mycoins:bitni', ''},
{'mycoins:bitni', 'mycoins:bitni', 'mycoins:bitni'},
}
})
-- bitcoin
minetest.register_craft({
output = 'mycoins:bitcoin',
recipe = {
{'', '', 'mycoins:bitcent'},
{'', 'mycoins:bitqu', ''},
{'mycoins:bitqu', 'mycoins:bitqu', 'mycoins:bitqu'},
}
})
minetest.register_craft({
output = "mycoins:router";
recipe = {
{ "default:steel_ingot", "homedecor:ic", "default:steel_ingot", },
{ "homedecor:ic", "default:mese", "homedecor:ic", },
{ "homedecor:plastic_sheet", "homedecor:plastic_sheet", "homedecor:plastic_sheet", },
};
});
-- copper wire
minetest.register_craft({
output = "mycoins:copper_ribbonwire 12";
recipe = {
{ "default:copper_ingot", "default:copper_ingot", "default:copper_ingot", },
};
});
minetest.register_craft({
output = "mycoins:ribbonwire 3";
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", },
};
});
-- ISP
minetest.register_craft({
output = "mycoins:isp";
recipe = {
{ "default:gold_ingot", "mycoins:bitcoin", "default:silver_ingot", },
{ "mycoins:ribbonwire", "default:steelblock", "mycoins:ribbonwire", },
{ "homedecor:plastic_sheeting", "homedecor:plastic_sheeting", "homedecor:plastic_sheeting", },
};
});

View File

@ -14,5 +14,6 @@ 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!")

18
init.lua~ Normal file
View File

@ -0,0 +1,18 @@
--++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-- mycoins by MilesDyson +
-- +
-- LICENSE: WTFPL DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE; applies to all parts, +
-- Including all images. +
-- +
-- email me at milesdsn@zoho.com +
--++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
dofile(minetest.get_modpath("mycoins").."/nodes.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").."/shop.lua")
print("mycoins mod loaded!")

127
isp.lua Normal file
View File

@ -0,0 +1,127 @@
function default.isp_off_formspec(pos)
local spos = pos.x .. "," .. pos.y .. "," ..pos.z
local formspec = "size[10,10]"..
"label[2,2;Powered Off...]"..
"list[nodemeta:".. spos .. ";main;1,3;1,1;]"..
"list[current_player;main;1,6;8,4;]"..
"button_exit[4,5;2,1;exit;Exit]"
return formspec
end
function default.isp_on_formspec(pos)
local spos = pos.x .. "," .. pos.y .. "," ..pos.z
local formspec = "size[10,10]"..
"label[2,2;Powered On...]"..
"label[1,2.6;Payment:]"..
"list[nodemeta:".. spos .. ";main;1,3;1,1;]"..
"list[current_player;main;1,6;8,4;]"..
"button_exit[4,5;2,1;exit;Exit]"
return formspec
end
-- ISP
minetest.register_node("mycoins:isp", {
description = "Internet Service Provider",
tiles = {
"mycoins_isp_tp.png",
"mycoins_isp_bt.png",
"mycoins_isp_rt.png",
"mycoins_isp_lt.png",
"mycoins_isp_bk.png",
"mycoins_isp_ft_off.png"
},
paramtype = "light",
paramtype2 = "facedir",
walkable = false,
is_ground_content = true,
groups = {snappy=3},
sound = default.node_sound_wood_defaults(),
drop = "mycoins:isp",
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
{-0.153531, -0.5, -0.405738, 0.153531, -0.315951, 0.405738}, -- NodeBox1
{-0.122825, -0.315951, -0.374616, 0.122825, 0.371166, 0.375}, -- NodeBox2
},
},
on_punch = function(pos)
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:isp_on', param2 = node.param2})
meta:set_string("formspec", default.isp_on_formspec(pos))
meta:set_string("infotext", "Internet Service Provider")
local inv = meta:get_inventory()
inv:set_size("main", 1*1)
timer:stop()
end,
on_construct = function(pos)
local node = minetest.get_node(pos)
local meta = minetest.get_meta(pos)
meta:set_string("formspec", default.isp_off_formspec(pos))
meta:set_string("infotext", "Internet Service Provider")
local inv = meta:get_inventory()
inv:set_size("main", 1*1)
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.isp_on_formspec(pos))
meta:set_string("infotext", "Internet Service Provider")
local inv = meta:get_inventory()
inv:set_size("main", 1*1)
timer:start(60)
end,
})
minetest.register_node("mycoins:isp_on", {
description = "Internet Service Provider",
tiles = {
"mycoins_isp_tp.png",
"mycoins_isp_bt.png",
"mycoins_isp_rt.png",
"mycoins_isp_lt.png",
"mycoins_isp_bk.png",
"mycoins_isp_ft.png"
},
paramtype = "light",
paramtype2 = "facedir",
walkable = false,
is_ground_content = true,
groups = {snappy=3, not_in_creative_inventory = 1},
sound = default.node_sound_wood_defaults(),
drop = "mycoins:isp",
drawtype = "nodebox",
light_source = 4,
node_box = {
type = "fixed",
fixed = {
{-0.153531, -0.5, -0.405738, 0.153531, -0.315951, 0.405738}, -- NodeBox1
{-0.122825, -0.315951, -0.374616, 0.122825, 0.371166, 0.375}, -- NodeBox2
},
},
on_punch = function(pos)
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:isp', param2 = node.param2})
meta:set_string("formspec", default.isp_off_formspec(pos))
meta:set_string("infotext", "Internet Service Provider")
local inv = meta:get_inventory()
inv:set_size("main", 1*1)
timer:start(5)
end,
on_timer = function(pos,from_list)
local timer = minetest.get_node_timer(pos)
local meta = minetest.get_meta(pos)
minetest.get_meta(pos):get_inventory():add_item("main", "mycoins:bitcent")
timer:start(5)
end,
})

185
isp.lua~ Normal file
View File

@ -0,0 +1,185 @@
function default.isp_off_formspec(pos)
local spos = pos.x .. "," .. pos.y .. "," ..pos.z
local formspec = "size[10,10]"..
"label[2,2;Powered Off...]"..
"list[nodemeta:".. spos .. ";main;1,3;1,1;]"..
"list[current_player;main;1,6;8,4;]"..
"button_exit[4,5;2,1;exit;Exit]"
return formspec
end
function default.isp_on_formspec(pos)
local spos = pos.x .. "," .. pos.y .. "," ..pos.z
local formspec = "size[10,10]"..
"label[2,2;Powered On...]"..
"label[1,2.6;Payment:]"..
"list[nodemeta:".. spos .. ";main;1,3;1,1;]"..
"list[current_player;main;1,6;8,4;]"..
"button_exit[4,5;2,1;exit;Exit]"
return formspec
end
-- ISP
-- Alienware Computer
minetest.register_node("mycoins:isp",{
drawtype = "nodebox",
description = "Internet Service Provider",
tiles = {
"mycoins_isp_tp.png",
"mycoins_isp_bt.png",
"mycoins_isp_rt.png",
"mycoins_isp_lt.png",
"mycoins_isp_bk.png",
"mycoins_isp_ft_off.png"
},
paramtype = "light",
paramtype2 = "facedir",
drop = "mycoins:isp",
groups = {cracky=2, oddly_breakable_by_hand=2},
node_box = {
type = "fixed",
fixed = {
{-0.153531, -0.5, -0.405738, 0.153531, -0.315951, 0.405738},
{-0.122825, -0.315951, -0.374616, 0.122825, 0.371166, 0.375},
},
},
sounds = default.node_sound_wood_defaults(),
after_place_node = function(pos)
local meta = minetest.get_meta(pos)
local timer = minetest.get_node_timer(pos)
meta:set_string("formspec", default.isp_on_formspec(pos))
meta:set_string("infotext", "Internet Service Provider")
local inv = meta:get_inventory()
inv:set_size("main", 1*1)
timer:start(60)
end,
on_construct = function(pos)
local meta = minetest.get_meta(pos)
meta:set_string("formspec", default.isp_on_formspec(pos))
meta:set_string("infotext", "Internet Service Provider")
local inv = meta:get_inventory()
inv:set_size("main", 1*1)
end,
can_dig = function(pos,player)
local meta = minetest.get_meta(pos);
local inv = meta:get_inventory()
return inv:is_empty("main") and computer_owner(meta, player)
end,
on_timer = function(pos)
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:isp', param2 = node.param2})
meta:set_string("formspec", default.isp_off_formspec(pos))
meta:set_string("infotext", "Internet Service Provider")
local inv = meta:get_inventory()
inv:set_size("main", 1*1)
timer:stop()
end,
on_punch = function(pos)
local node = minetest.get_node(pos)
local meta = minetest.get_meta(pos)
minetest.swap_node(pos, {name = 'mycoins:isp_on', param2 = node.param2})
meta:set_string("formspec", default.isp_on_formspec(pos))
meta:set_string("infotext", "Internet Service Provider")
local inv = meta:get_inventory()
inv:set_size("main", 1*1)
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
minetest.log("action", player:get_player_name()..
" tried to access a Alienware computer belonging to "..
meta:get_string("owner").." at "..
minetest.pos_to_string(pos))
return 0
end
return count
end,
allow_metadata_inventory_put = function(pos, listname, index, stack, player)
return 0
end,
allow_metadata_inventory_take = function(pos, listname, index, stack, player)
local meta = minetest.get_meta(pos)
if not computer_owner(meta, player) then
minetest.log("action", player:get_player_name()..
" tried to access a Alienware computer belonging to "..
meta:get_string("owner").." at "..
minetest.pos_to_string(pos))
return 0
end
return stack:get_count()
end,
})
minetest.register_node("mycoins:isp_on",{
drawtype = "nodebox",
description = "Internet Service Provider",
tiles = {
"mycoins_isp_tp.png",
"mycoins_isp_bt.png",
"mycoins_isp_rt.png",
"mycoins_isp_lt.png",
"mycoins_isp_bk.png",
"mycoins_isp_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.153531, -0.5, -0.405738, 0.153531, -0.315951, 0.405738},
{-0.122825, -0.315951, -0.374616, 0.122825, 0.371166, 0.375},
},
},
sounds = default.node_sound_wood_defaults(),
can_dig = function(pos,player)
local meta = minetest.get_meta(pos);
local inv = meta:get_inventory()
return inv:is_empty("main") and computer_owner(meta, player)
end,
on_timer = function(pos)
end,
on_punch = function(pos)
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:isp', param2 = node.param2})
meta:set_string("formspec", default.isp_off_formspec(pos))
meta:set_string("infotext", "Internet Service Provider")
local inv = meta:get_inventory()
inv:set_size("main", 1*1)
timer:stop()
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
minetest.log("action", player:get_player_name()..
" tried to access a Alienware computer belonging to "..
meta:get_string("owner").." at "..
minetest.pos_to_string(pos))
return 0
end
return count
end,
allow_metadata_inventory_put = function(pos, listname, index, stack, player)
return 0
end,
allow_metadata_inventory_take = function(pos, listname, index, stack, player)
local meta = minetest.get_meta(pos)
if not computer_owner(meta, player) then
minetest.log("action", player:get_player_name()..
" tried to access a Alienware computer belonging to "..
meta:get_string("owner").." at "..
minetest.pos_to_string(pos))
return 0
end
return stack:get_count()
end,
})

119
items.lua
View File

@ -42,14 +42,32 @@ minetest.register_craftitem( "mycoins:home_computer_video", {
stack_max = 1,
inventory_image = "mycoins_home_computer_video.png",
on_place_on_ground = minetest.craftitem_place_item,
})
minetest.register_craftitem( "mycoins:home_computer_motherboard", {
description = "Home Computer Motherboard",
stack_max = 1,
inventory_image = "mycoins_home_computer_motherboard.png",
on_place_on_ground = minetest.craftitem_place_item,
})
})
minetest.register_node("mycoins:home_computer_motherboard", {
description = "Home Computer Motherboard",
paramtype = "light",
paramtype2 = "facedir",
drop = "mycoins:home_computer_motherboard",
groups = {cracky=2, oddly_breakable_by_hand=2},
stack_max = 1,
inventory_image = "mycoins_home_computer_motherboard.png",
tiles = {
"mycoins_home_computer_motherboard.png",
"grn.png",
"grn.png",
"grn.png",
"grn.png",
"grn.png"
},
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
{-0.4375, -0.5, -0.4375, 0.4375, -0.4375, 0.4375}, -- NodeBox1
}
}
})
minetest.register_craftitem( "mycoins:home_computer_powersupply", {
description = "Home Computer Power Supply",
@ -107,14 +125,33 @@ minetest.register_craftitem( "mycoins:game_computer_video", {
stack_max = 1,
inventory_image = "mycoins_game_computer_video.png",
on_place_on_ground = minetest.craftitem_place_item,
})
})
minetest.register_node("mycoins:game_computer_motherboard", {
description = "Gaming Computer Motherboard",
paramtype = "light",
paramtype2 = "facedir",
drop = "mycoins:game_computer_motherboard",
groups = {cracky=2, oddly_breakable_by_hand=2},
stack_max = 1,
inventory_image = "mycoins_game_computer_motherboard.png",
tiles = {
"mycoins_game_computer_motherboard.png",
"grn.png",
"grn.png",
"grn.png",
"grn.png",
"grn.png"
},
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.5, 0.5, -0.4375, 0.5}, -- NodeBox1
}
}
})
minetest.register_craftitem( "mycoins:game_computer_motherboard", {
description = "Gaming Computer Motherboard",
stack_max = 1,
inventory_image = "mycoins_game_computer_motherboard.png",
on_place_on_ground = minetest.craftitem_place_item,
})
minetest.register_craftitem( "mycoins:game_computer_powersupply", {
description = "Gaming Computer Power Supply",
@ -167,12 +204,37 @@ minetest.register_craftitem( "mycoins:alien_computer_video", {
on_place_on_ground = minetest.craftitem_place_item,
})
minetest.register_craftitem( "mycoins:alien_computer_motherboard", {
description = "Alienware Motherboard",
stack_max = 1,
inventory_image = "mycoins_alien_computer_motherboard.png",
on_place_on_ground = minetest.craftitem_place_item,
})
minetest.register_node("mycoins:alien_computer_motherboard", {
description = "Alienware Motherboard",
paramtype = "light",
paramtype2 = "facedir",
drop = "mycoins:alien_computer_motherboard",
groups = {cracky=2, oddly_breakable_by_hand=2},
stack_max = 1,
inventory_image = "mycoins_alien_computer_motherboard.png",
tiles = {
"mycoins_alien_computer_motherboard.png",
"blk.png",
"blk.png",
"blk.png",
"blk.png",
"blk.png"
},
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.5, 0.5, -0.4375, 0.5}, -- NodeBox1
}
}
})
minetest.register_craftitem( "mycoins:alien_computer_powersupply", {
description = "Alienware Power Supply",
@ -216,6 +278,20 @@ minetest.register_craftitem( "mycoins:alien_computer_cooler", {
on_place_on_ground = minetest.craftitem_place_item,
})
minetest.register_craftitem( "mycoins:copper_ribbonwire", {
description = "Bare Copper Ribbon Wire",
stack_max = 99,
inventory_image = "mycoins_copper_ribbonwire.png",
on_place_on_ground = minetest.craftitem_place_item,
})
minetest.register_craftitem( "mycoins:ribbonwire", {
description = "Insulated Ribbon Wire",
stack_max = 99,
inventory_image = "mycoins_ribbonwire.png",
on_place_on_ground = minetest.craftitem_place_item,
})
minetest.override_item("default:stone",{
drop = {
min_items = 1,
@ -233,3 +309,4 @@ minetest.override_item("default:stone",{
}
})

View File

@ -42,14 +42,32 @@ minetest.register_craftitem( "mycoins:home_computer_video", {
stack_max = 1,
inventory_image = "mycoins_home_computer_video.png",
on_place_on_ground = minetest.craftitem_place_item,
})
minetest.register_craftitem( "mycoins:home_computer_motherboard", {
description = "Home Computer Motherboard",
stack_max = 1,
inventory_image = "mycoins_home_computer_motherboard.png",
on_place_on_ground = minetest.craftitem_place_item,
})
})
minetest.register_node("mycoins:home_computer_motherboard", {
description = "Home Computer Motherboard",
paramtype = "light",
paramtype2 = "facedir",
drop = "mycoins:home_computer_motherboard",
groups = {cracky=2, oddly_breakable_by_hand=2},
stack_max = 1,
inventory_image = "mycoins_home_computer_motherboard.png",
tiles = {
"mycoins_home_computer_motherboard.png",
"grn.png",
"grn.png",
"grn.png",
"grn.png",
"grn.png"
},
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
{-0.4375, -0.5, -0.4375, 0.4375, -0.4375, 0.4375}, -- NodeBox1
}
}
})
minetest.register_craftitem( "mycoins:home_computer_powersupply", {
description = "Home Computer Power Supply",
@ -107,14 +125,33 @@ minetest.register_craftitem( "mycoins:game_computer_video", {
stack_max = 1,
inventory_image = "mycoins_game_computer_video.png",
on_place_on_ground = minetest.craftitem_place_item,
})
})
minetest.register_node("mycoins:game_computer_motherboard", {
description = "Gaming Computer Motherboard",
paramtype = "light",
paramtype2 = "facedir",
drop = "mycoins:game_computer_motherboard",
groups = {cracky=2, oddly_breakable_by_hand=2},
stack_max = 1,
inventory_image = "mycoins_game_computer_motherboard.png",
tiles = {
"mycoins_game_computer_motherboard.png",
"grn.png",
"grn.png",
"grn.png",
"grn.png",
"grn.png"
},
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.5, 0.5, -0.4375, 0.5}, -- NodeBox1
}
}
})
minetest.register_craftitem( "mycoins:game_computer_motherboard", {
description = "Gaming Computer Motherboard",
stack_max = 1,
inventory_image = "mycoins_game_computer_motherboard.png",
on_place_on_ground = minetest.craftitem_place_item,
})
minetest.register_craftitem( "mycoins:game_computer_powersupply", {
description = "Gaming Computer Power Supply",
@ -167,12 +204,37 @@ minetest.register_craftitem( "mycoins:alien_computer_video", {
on_place_on_ground = minetest.craftitem_place_item,
})
minetest.register_craftitem( "mycoins:alien_computer_motherboard", {
description = "Alienware Motherboard",
stack_max = 1,
inventory_image = "mycoins_alien_computer_motherboard.png",
on_place_on_ground = minetest.craftitem_place_item,
})
minetest.register_node("mycoins:alien_computer_motherboard", {
description = "Alienware Motherboard",
paramtype = "light",
paramtype2 = "facedir",
drop = "mycoins:alien_computer_motherboard",
groups = {cracky=2, oddly_breakable_by_hand=2},
stack_max = 1,
inventory_image = "mycoins_alien_computer_motherboard.png",
tiles = {
"mycoins_alien_computer_motherboard.png",
"blk.png",
"blk.png",
"blk.png",
"blk.png",
"blk.png"
},
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
{-0.5, -0.5, -0.5, 0.5, -0.4375, 0.5}, -- NodeBox1
}
}
})
minetest.register_craftitem( "mycoins:alien_computer_powersupply", {
description = "Alienware Power Supply",
@ -214,21 +276,37 @@ minetest.register_craftitem( "mycoins:alien_computer_cooler", {
stack_max = 1,
inventory_image = "mycoins_alien_computer_watercooler.png",
on_place_on_ground = minetest.craftitem_place_item,
})
minetest.register_craftitem( "mycoins:copper_ribbonwire", {
description = "Bare Copper Ribbon Wire",
stack_max = 1,
inventory_image = "mycoins_copper_ribbonwire.png",
on_place_on_ground = minetest.craftitem_place_item,
})
minetest.register_craftitem( "mycoins:ribbonwire", {
description = "Insulated Ribbon Wire",
stack_max = 1,
inventory_image = "mycoins_ribbonwire.png",
on_place_on_ground = minetest.craftitem_place_item,
})
minetest.override_item("default:stone",{
drop = {
min_items = 1,
max_items = 2,
items = {
{
items = {"default:cobble 1"},
rarity = 1,
},
{
items = {"mycoins:bitcent 1"},
rarity = 25,
},
}
}
})
minetest.override_item("default:stone",{
drop = {
min_items = 1,
max_items = 2,
items = {
{
items = {"default:cobble 1"},
rarity = 1,
},
{
items = {"mycoins:bitcent 1"},
rarity = 8,
},
}
}
})

View File

@ -1,5 +1,5 @@
--= ADDED TenPlus1 (A few more recipe's from HomeDecor/Mesecons to remove dependancies)
-- = ADDED TenPlus1 (A few more recipe's from HomeDecor/Mesecons to remove dependancies)
if ( minetest.get_modpath("mesecons") ) == nil then
@ -29,7 +29,7 @@ if ( minetest.get_modpath("homedecor") ) == nil then
output = "homedecor:ic 4",
recipe = {
{ "mesecons_materials:silicon", "mesecons_materials:silicon" },
{ "mesecons_materials:silicon", "default:copper_ingot" },
{ "mesecons_materials:silicon", "mycoins:copper_ribbonwire" },
},
})

96
modrecipes.lua~ Normal file
View File

@ -0,0 +1,96 @@
-- = ADDED TenPlus1 (A few more recipe's from HomeDecor/Mesecons to remove dependancies)
if ( minetest.get_modpath("mesecons") ) == nil then
minetest.register_craftitem(":mesecons_materials:silicon", {
description = ("Silicon lump"),
inventory_image = "homedecor_silicon.png",
})
minetest.register_craft( {
output = "mesecons_materials:silicon 4",
recipe = {
{ "default:sand", "default:sand" },
{ "default:sand", "default:steel_ingot" },
},
})
end
if ( minetest.get_modpath("homedecor") ) == nil then
minetest.register_craftitem(":homedecor:ic", {
description = ("Simple Integrated Circuit"),
inventory_image = "homedecor_ic.png",
})
minetest.register_craft( {
output = "homedecor:ic 4",
recipe = {
{ "mesecons_materials:silicon", "mesecons_materials:silicon" },
{ "mesecons_materials:silicon", "default:copper_ingot" },
},
})
minetest.register_craftitem(":homedecor:plastic_sheeting", {
description = ("Plastic sheet"),
inventory_image = "homedecor_plastic_sheeting.png",
})
minetest.register_craftitem(":homedecor:plastic_base", {
description = ("Unprocessed Plastic base"),
wield_image = "homedecor_plastic_base.png",
inventory_image = "homedecor_plastic_base_inv.png",
})
minetest.register_craft({
type = "shapeless",
output = 'homedecor:plastic_base 6',
recipe = { "default:junglegrass",
"default:junglegrass",
"default:junglegrass"
}
})
minetest.register_craft({
type = "shapeless",
output = 'homedecor:plastic_base 3',
recipe = { "default:dry_shrub",
"default:dry_shrub",
"default:dry_shrub"
},
})
minetest.register_craft({
type = "shapeless",
output = 'homedecor:plastic_base 4',
recipe = { "default:leaves",
"default:leaves",
"default:leaves",
"default:leaves",
"default:leaves",
"default:leaves"
}
})
minetest.register_craft({
type = "cooking",
output = "homedecor:plastic_sheeting",
recipe = "homedecor:plastic_base",
})
minetest.register_craft({
type = 'fuel',
recipe = 'homedecor:plastic_base',
burntime = 30,
})
minetest.register_craft({
type = 'fuel',
recipe = 'homedecor:plastic_sheeting',
burntime = 30,
})
end

488
nodes.lua
View File

@ -82,47 +82,78 @@ minetest.register_node("mycoins:home_computer",{
timer:start(60)
end,
on_timer = function(pos)
local wifi = minetest.find_node_near(pos, 30, {"mycoins:router_on"})
if wifi == nil then
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:home_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_wifi_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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
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:home_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("formspec", default.computer_wifi_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
inv:set_size("main", 4*2)
timer:stop()
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:home_computer_active', param2 = node.param2})
meta:set_string("formspec", default.active_computer_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(600)
end
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:home_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
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:home_computer_active', param2 = node.param2})
meta:set_string("formspec", default.active_computer_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(500)
end
end
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:home_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
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:home_computer_active', param2 = node.param2})
meta:set_string("formspec", default.active_computer_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(500)
end
end
end,
on_punch = function(pos)
local wifi = minetest.find_node_near(pos, 30, {"mycoins:router_on"})
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
local timer = minetest.get_node_timer(pos)
local meta = minetest.get_meta(pos)
@ -143,7 +174,18 @@ minetest.register_node("mycoins:home_computer",{
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(40)
timer:start(60)
end
else
local timer = minetest.get_node_timer(pos)
local meta = minetest.get_meta(pos)
local node = minetest.get_node(pos)
meta:set_string("formspec", default.computer_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(60)
end
end,
on_construct = function(pos)
@ -155,7 +197,8 @@ minetest.register_node("mycoins:home_computer",{
end,
can_dig = function(pos,player)
local meta = minetest.get_meta(pos);
return computer_owner(meta, player)
local inv = meta:get_inventory()
return inv:is_empty("main") and computer_owner(meta, player)
end,
allow_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
local meta = minetest.get_meta(pos)
@ -203,19 +246,8 @@ minetest.register_node("mycoins:home_computer_active",{
},
sounds = default.node_sound_wood_defaults(),
on_timer = function(pos)
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:home_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
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
local timer = minetest.get_node_timer(pos)
@ -228,15 +260,47 @@ minetest.register_node("mycoins:home_computer_active",{
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:home_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local timer = minetest.get_node_timer(pos)
minetest.get_meta(pos):get_inventory():add_item("main", "mycoins:bitcent")
timer:start(500)
end
end
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:home_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local timer = minetest.get_node_timer(pos)
minetest.get_meta(pos):get_inventory():add_item("main", "mycoins:bitcent")
timer:start(600)
timer:start(500)
end
end
end,
on_punch = function(pos)
local timer = minetest.get_node_timer(pos)
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:home_computer', param2 = node.param2})
@ -303,7 +367,7 @@ minetest.register_node("mycoins:game_computer",{
meta:set_string("owner", placer:get_player_name() or "")
meta:set_string("infotext", "Gaming Computer (owner "..
meta:get_string("owner")..")")
timer:start(50)
timer:start(45)
end,
on_construct = function(pos)
local meta = minetest.get_meta(pos)
@ -315,21 +379,50 @@ minetest.register_node("mycoins:game_computer",{
end,
can_dig = function(pos,player)
local meta = minetest.get_meta(pos);
return computer_owner(meta, player)
local inv = meta:get_inventory()
return inv:is_empty("main") and computer_owner(meta, player)
end,
on_timer = function(pos)
local wifi = minetest.find_node_near(pos, 30, {"mycoins:router_on"})
if wifi == nil then
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:game_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_wifi_formspec(pos))
meta:set_string("infotext", "Game Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
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
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:game_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_wifi_formspec(pos))
meta:set_string("infotext", "Game Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:game_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Game Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
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:game_computer_active', param2 = node.param2})
meta:set_string("formspec", default.active_computer_formspec(pos))
meta:set_string("infotext", "Game Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(400)
end
end
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
@ -353,23 +446,36 @@ minetest.register_node("mycoins:game_computer",{
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(600)
timer:start(400)
end
end
end,
on_punch = function(pos)
local wifi = minetest.find_node_near(pos, 30, {"mycoins:router_on"})
if wifi == nil then
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:game_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_wifi_formspec(pos))
meta:set_string("infotext", "Game Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
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
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:game_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_wifi_formspec(pos))
meta:set_string("infotext", "Game Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local timer = minetest.get_node_timer(pos)
local meta = minetest.get_meta(pos)
local node = minetest.get_node(pos)
meta:set_string("formspec", default.computer_formspec(pos))
meta:set_string("infotext", "Game Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(45)
end
else
local timer = minetest.get_node_timer(pos)
local meta = minetest.get_meta(pos)
@ -379,7 +485,7 @@ minetest.register_node("mycoins:game_computer",{
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(40)
timer:start(45)
end
end,
allow_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
@ -411,7 +517,7 @@ minetest.register_node("mycoins:game_computer",{
minetest.register_node("mycoins:game_computer_active",{
drawtype = "nodebox",
description = "Home Computer",
description = "Game 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",
@ -433,19 +539,8 @@ minetest.register_node("mycoins:game_computer_active",{
return inv:is_empty("main") and computer_owner(meta, player)
end,
on_timer = function(pos)
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:game_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Game Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
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
local timer = minetest.get_node_timer(pos)
@ -458,10 +553,42 @@ minetest.register_node("mycoins:game_computer_active",{
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:game_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Game Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local timer = minetest.get_node_timer(pos)
minetest.get_meta(pos):get_inventory():add_item("main", "mycoins:bitcent")
timer:start(400)
end
end
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:game_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Game Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local timer = minetest.get_node_timer(pos)
minetest.get_meta(pos):get_inventory():add_item("main", "mycoins:bitcent")
timer:start(600)
timer:start(400)
end
end
end,
@ -504,6 +631,7 @@ minetest.register_node("mycoins:game_computer_active",{
end,
})
-- Alienware Computer
minetest.register_node("mycoins:alien_computer",{
drawtype = "nodebox",
@ -528,7 +656,7 @@ minetest.register_node("mycoins:alien_computer",{
meta:set_string("owner", placer:get_player_name() or "")
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
timer:start(40)
timer:start(30)
end,
on_construct = function(pos)
local meta = minetest.get_meta(pos)
@ -540,21 +668,50 @@ minetest.register_node("mycoins:alien_computer",{
end,
can_dig = function(pos,player)
local meta = minetest.get_meta(pos);
return computer_owner(meta, player)
local inv = meta:get_inventory()
return inv:is_empty("main") and computer_owner(meta, player)
end,
on_timer = function(pos)
local wifi = minetest.find_node_near(pos, 30, {"mycoins:router_on"})
if wifi == nil then
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:alien_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_wifi_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
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
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:alien_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_wifi_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:alien_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
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:alien_computer_active', param2 = node.param2})
meta:set_string("formspec", default.active_computer_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(300)
end
end
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
@ -578,23 +735,36 @@ minetest.register_node("mycoins:alien_computer",{
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(600)
timer:start(300)
end
end
end,
on_punch = function(pos)
local wifi = minetest.find_node_near(pos, 30, {"mycoins:router_on"})
if wifi == nil then
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:alien_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_wifi_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
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
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:alien_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_wifi_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local timer = minetest.get_node_timer(pos)
local meta = minetest.get_meta(pos)
local node = minetest.get_node(pos)
meta:set_string("formspec", default.computer_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(30)
end
else
local timer = minetest.get_node_timer(pos)
local meta = minetest.get_meta(pos)
@ -604,7 +774,7 @@ minetest.register_node("mycoins:alien_computer",{
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(40)
timer:start(30)
end
end,
allow_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
@ -651,22 +821,15 @@ minetest.register_node("mycoins:alien_computer_active",{
{-0.500000,-0.500000,-0.500000,0.500000,-0.375,-0.03125},
},
},
sounds = default.node_sound_wood_defaults(),
sounds = default.node_sound_wood_defaults(),
can_dig = function(pos,player)
local meta = minetest.get_meta(pos);
local inv = meta:get_inventory()
return inv:is_empty("main") and computer_owner(meta, player)
end,
on_timer = function(pos)
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:alien_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
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
local timer = minetest.get_node_timer(pos)
@ -679,35 +842,62 @@ minetest.register_node("mycoins:alien_computer_active",{
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:alien_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local timer = minetest.get_node_timer(pos)
minetest.get_meta(pos):get_inventory():add_item("main", "mycoins:bitcent")
timer:start(300)
end
end
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:alien_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local timer = minetest.get_node_timer(pos)
minetest.get_meta(pos):get_inventory():add_item("main", "mycoins:bitcent")
timer:start(600)
timer:start(300)
end
end
end,
on_punch = function(pos)
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:alien_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
end,
can_dig = function(pos,player)
local meta = minetest.get_meta(pos);
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:alien_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
return inv:is_empty("main") and computer_owner(meta, player)
inv:set_size("main", 4*2)
timer:stop()
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
minetest.log("action", player:get_player_name()..
" tried to access an Alienware computer belonging to "..
" tried to access a Alienware computer belonging to "..
meta:get_string("owner").." at "..
minetest.pos_to_string(pos))
return 0

921
nodes.lua~ Normal file
View File

@ -0,0 +1,921 @@
local function computer_owner(meta, player)
if player:get_player_name() ~= meta:get_string("owner") then
return false
end
return true
end
function default.computer_formspec(pos)
local spos = pos.x .. "," .. pos.y .. "," ..pos.z
local formspec = "size[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[nodemeta:".. spos .. ";main;1,3;8,1;]"..
"list[current_player;main;1,6;8,4;]"
return formspec
end
function default.computer_off_formspec(pos)
local spos = pos.x .. "," .. pos.y .. "," ..pos.z
local formspec = "size[10,10]"..
"label[2,2;Powered Off...]" ..
"list[nodemeta:".. spos .. ";main;1,3;8,1;]"..
"list[current_player;main;1,6;8,4;]"
return formspec
end
function default.active_computer_formspec(pos)
local spos = pos.x .. "," .. pos.y .. "," ..pos.z
local formspec = "size[10,10]"..
"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[nodemeta:".. spos .. ";main;1,3;8,1;]"..
"list[current_player;main;1,6;8,4;]"
return formspec
end
function default.computer_wifi_formspec(pos)
local spos = pos.x .. "," .. pos.y .. "," ..pos.z
local formspec = "size[10,10]"..
"label[2,2;No Internet Connection.]" ..
"label[2,2.5;Contact Your Network Administrator For More Information.]" ..
"list[nodemeta:".. spos .. ";main;1,3;8,1;]"..
"list[current_player;main;1,6;8,4;]"
return formspec
end
-- Home Computer
minetest.register_node("mycoins:home_computer",{
drawtype = "nodebox",
description = "Home 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 "")
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
timer:start(60)
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
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:home_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_wifi_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:home_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
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:home_computer_active', param2 = node.param2})
meta:set_string("formspec", default.active_computer_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(500)
end
end
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:home_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
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:home_computer_active', param2 = node.param2})
meta:set_string("formspec", default.active_computer_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(500)
end
end
end,
on_punch = 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
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:home_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_wifi_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local timer = minetest.get_node_timer(pos)
local meta = minetest.get_meta(pos)
local node = minetest.get_node(pos)
meta:set_string("formspec", default.computer_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(60)
end
else
local timer = minetest.get_node_timer(pos)
local meta = minetest.get_meta(pos)
local node = minetest.get_node(pos)
meta:set_string("formspec", default.computer_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(60)
end
end,
on_construct = function(pos)
local meta = minetest.get_meta(pos)
meta:set_string("formspec", default.computer_formspec(pos))
meta:set_string("infotext", "Computer")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
end,
can_dig = function(pos,player)
local meta = minetest.get_meta(pos);
local inv = meta:get_inventory()
return inv:is_empty("main") and computer_owner(meta, player)
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
minetest.log("action", player:get_player_name()..
" tried to access a home computer belonging to "..
meta:get_string("owner").." at "..
minetest.pos_to_string(pos))
return 0
end
return count
end,
allow_metadata_inventory_put = function(pos, listname, index, stack, player)
return 0
end,
allow_metadata_inventory_take = function(pos, listname, index, stack, player)
local meta = minetest.get_meta(pos)
if not computer_owner(meta, player) then
minetest.log("action", player:get_player_name()..
" tried to access a home computer belonging to "..
meta:get_string("owner").." at "..
minetest.pos_to_string(pos))
return 0
end
return stack:get_count()
end,
})
minetest.register_node("mycoins:home_computer_active",{
drawtype = "nodebox",
description = "Home 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 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
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:home_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_wifi_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:home_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local timer = minetest.get_node_timer(pos)
minetest.get_meta(pos):get_inventory():add_item("main", "mycoins:bitcent")
timer:start(500)
end
end
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:home_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local timer = minetest.get_node_timer(pos)
minetest.get_meta(pos):get_inventory():add_item("main", "mycoins:bitcent")
timer:start(500)
end
end
end,
on_punch = function(pos)
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:home_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Home Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
end,
can_dig = function(pos,player)
local meta = minetest.get_meta(pos);
local inv = meta:get_inventory()
return inv:is_empty("main") and computer_owner(meta, player)
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
minetest.log("action", player:get_player_name()..
" tried to access a home computer belonging to "..
meta:get_string("owner").." at "..
minetest.pos_to_string(pos))
return 0
end
return count
end,
allow_metadata_inventory_put = function(pos, listname, index, stack, player)
return 0
end,
allow_metadata_inventory_take = function(pos, listname, index, stack, player)
local meta = minetest.get_meta(pos)
if not computer_owner(meta, player) then
minetest.log("action", player:get_player_name()..
" tried to access a home computer belonging to "..
meta:get_string("owner").." at "..
minetest.pos_to_string(pos))
return 0
end
return stack:get_count()
end,
})
-- Game Computer
minetest.register_node("mycoins:game_computer",{
drawtype = "nodebox",
description = "Gaming 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 "")
meta:set_string("infotext", "Gaming Computer (owner "..
meta:get_string("owner")..")")
timer:start(45)
end,
on_construct = function(pos)
local meta = minetest.get_meta(pos)
meta:set_string("formspec", default.computer_formspec(pos))
meta:set_string("infotext", "Gaming Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
end,
can_dig = function(pos,player)
local meta = minetest.get_meta(pos);
local inv = meta:get_inventory()
return inv:is_empty("main") and computer_owner(meta, player)
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
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:game_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_wifi_formspec(pos))
meta:set_string("infotext", "Game Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:game_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Game Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
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:game_computer_active', param2 = node.param2})
meta:set_string("formspec", default.active_computer_formspec(pos))
meta:set_string("infotext", "Game Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(400)
end
end
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:game_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Game Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
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:game_computer_active', param2 = node.param2})
meta:set_string("formspec", default.active_computer_formspec(pos))
meta:set_string("infotext", "Game Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(400)
end
end
end,
on_punch = 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
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:game_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_wifi_formspec(pos))
meta:set_string("infotext", "Game Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local timer = minetest.get_node_timer(pos)
local meta = minetest.get_meta(pos)
local node = minetest.get_node(pos)
meta:set_string("formspec", default.computer_formspec(pos))
meta:set_string("infotext", "Game Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(45)
end
else
local timer = minetest.get_node_timer(pos)
local meta = minetest.get_meta(pos)
local node = minetest.get_node(pos)
meta:set_string("formspec", default.computer_formspec(pos))
meta:set_string("infotext", "Game Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(45)
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
minetest.log("action", player:get_player_name()..
" tried to access a gaming computer belonging to "..
meta:get_string("owner").." at "..
minetest.pos_to_string(pos))
return 0
end
return count
end,
allow_metadata_inventory_put = function(pos, listname, index, stack, player)
return 0
end,
allow_metadata_inventory_take = function(pos, listname, index, stack, player)
local meta = minetest.get_meta(pos)
if not computer_owner(meta, player) then
minetest.log("action", player:get_player_name()..
" tried to access a gaming computer belonging to "..
meta:get_string("owner").." at "..
minetest.pos_to_string(pos))
return 0
end
return stack:get_count()
end,
})
minetest.register_node("mycoins:game_computer_active",{
drawtype = "nodebox",
description = "Game 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(),
can_dig = function(pos,player)
local meta = minetest.get_meta(pos);
local inv = meta:get_inventory()
return inv:is_empty("main") and computer_owner(meta, player)
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
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:game_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_wifi_formspec(pos))
meta:set_string("infotext", "Game Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:game_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Game Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local timer = minetest.get_node_timer(pos)
minetest.get_meta(pos):get_inventory():add_item("main", "mycoins:bitcent")
timer:start(400)
end
end
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:game_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Game Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local timer = minetest.get_node_timer(pos)
minetest.get_meta(pos):get_inventory():add_item("main", "mycoins:bitcent")
timer:start(400)
end
end
end,
on_punch = function(pos)
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:game_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Game Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
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
minetest.log("action", player:get_player_name()..
" tried to access a gaming computer belonging to "..
meta:get_string("owner").." at "..
minetest.pos_to_string(pos))
return 0
end
return count
end,
allow_metadata_inventory_put = function(pos, listname, index, stack, player)
return 0
end,
allow_metadata_inventory_take = function(pos, listname, index, stack, player)
local meta = minetest.get_meta(pos)
if not computer_owner(meta, player) then
minetest.log("action", player:get_player_name()..
" tried to access a gaming computer belonging to "..
meta:get_string("owner").." at "..
minetest.pos_to_string(pos))
return 0
end
return stack:get_count()
end,
})
-- Alienware Computer
-- 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 "")
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
timer:start(30)
end,
on_construct = function(pos)
local meta = minetest.get_meta(pos)
meta:set_string("formspec", default.computer_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
end,
can_dig = function(pos,player)
local meta = minetest.get_meta(pos);
local inv = meta:get_inventory()
return inv:is_empty("main") and computer_owner(meta, player)
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
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:alien_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_wifi_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:alien_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
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:alien_computer_active', param2 = node.param2})
meta:set_string("formspec", default.active_computer_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(300)
end
end
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:alien_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
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:alien_computer_active', param2 = node.param2})
meta:set_string("formspec", default.active_computer_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(300)
end
end
end,
on_punch = 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
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:alien_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_wifi_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local timer = minetest.get_node_timer(pos)
local meta = minetest.get_meta(pos)
local node = minetest.get_node(pos)
meta:set_string("formspec", default.computer_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(30)
end
else
local timer = minetest.get_node_timer(pos)
local meta = minetest.get_meta(pos)
local node = minetest.get_node(pos)
meta:set_string("formspec", default.computer_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:start(30)
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
minetest.log("action", player:get_player_name()..
" tried to access a Alienware computer belonging to "..
meta:get_string("owner").." at "..
minetest.pos_to_string(pos))
return 0
end
return count
end,
allow_metadata_inventory_put = function(pos, listname, index, stack, player)
return 0
end,
allow_metadata_inventory_take = function(pos, listname, index, stack, player)
local meta = minetest.get_meta(pos)
if not computer_owner(meta, player) then
minetest.log("action", player:get_player_name()..
" tried to access a Alienware computer belonging to "..
meta:get_string("owner").." at "..
minetest.pos_to_string(pos))
return 0
end
return stack:get_count()
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(),
can_dig = function(pos,player)
local meta = minetest.get_meta(pos);
local inv = meta:get_inventory()
return inv:is_empty("main") and computer_owner(meta, player)
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
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:alien_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_wifi_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:alien_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local timer = minetest.get_node_timer(pos)
minetest.get_meta(pos):get_inventory():add_item("main", "mycoins:bitcent")
timer:start(300)
end
end
else
local meta = minetest.get_meta(pos)
if ( minetest.get_player_by_name(meta:get_string("owner")) == nil ) then
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:alien_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
else
local timer = minetest.get_node_timer(pos)
minetest.get_meta(pos):get_inventory():add_item("main", "mycoins:bitcent")
timer:start(300)
end
end
end,
on_punch = function(pos)
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:alien_computer', param2 = node.param2})
meta:set_string("formspec", default.computer_off_formspec(pos))
meta:set_string("infotext", "Alienware Computer (owner "..
meta:get_string("owner")..")")
local inv = meta:get_inventory()
inv:set_size("main", 4*2)
timer:stop()
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
minetest.log("action", player:get_player_name()..
" tried to access a Alienware computer belonging to "..
meta:get_string("owner").." at "..
minetest.pos_to_string(pos))
return 0
end
return count
end,
allow_metadata_inventory_put = function(pos, listname, index, stack, player)
return 0
end,
allow_metadata_inventory_take = function(pos, listname, index, stack, player)
local meta = minetest.get_meta(pos)
if not computer_owner(meta, player) then
minetest.log("action", player:get_player_name()..
" tried to access a Alienware computer belonging to "..
meta:get_string("owner").." at "..
minetest.pos_to_string(pos))
return 0
end
return stack:get_count()
end,
})

View File

@ -5,15 +5,9 @@ function default.router_off_formspec(pos)
return formspec
end
function default.router_formspec(pos)
local 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"})
local 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"})
local 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"})
local 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"})
local spos = pos.x .. "," .. pos.y .. "," ..pos.z
local formspec = "size[10,10]"..
"label[2,2;Powered On...]"..
@ -23,13 +17,16 @@ local inactive_computers = minetest.find_nodes_in_area({x=pos.x-30, y=pos.y-30,
return formspec
end
function default.router_error_formspec(pos)
local spos = pos.x .. "," .. pos.y .. "," ..pos.z
local formspec = "size[10,10]"..
"label[2,2;No Networks Available...]"
return formspec
end
--WIFI Router (linksys look-a-like)
minetest.register_node("mycoins:router_on", {
description = "WIFI Router Powered 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",
{name="mycoins_router_f_animated.png", animation={type="vertical_frames", aspect_w=32, aspect_h=32, length=1.0}},}, --"mycoins_router_f.png"},
paramtype = "light",
@ -40,6 +37,7 @@ minetest.register_node("mycoins:router_on", {
sound = default.node_sound_wood_defaults(),
drop = "mycoins:router",
drawtype = "nodebox",
light_source = 4,
node_box = {
type = "fixed",
fixed = {
@ -56,15 +54,53 @@ minetest.register_node("mycoins:router_on", {
meta:set_string("formspec", default.router_off_formspec(pos))
meta:set_string("infotext", "Router")
end,
on_construct = function(pos)
on_timer = function(pos)
local isp = minetest.find_node_near(pos, 30, {"mycoins:isp_on"})
if isp == nil then
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_error', param2 = node.param2})
meta:set_string("formspec", default.router_error_formspec(pos))
meta:set_string("infotext", "Router")
timer:start(10)
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("infotext", "Router")
timer:start(10)
end
end,
after_place_node = function(pos)
local meta = minetest.get_meta(pos)
local timer = minetest.get_node_timer(pos)
meta:set_string("formspec", default.router_formspec(pos))
meta:set_string("infotext", "Router")
timer:start(10)
end,
on_construct = function(pos)
local isp = minetest.find_node_near(pos, 30, {"mycoins:isp_on"})
if isp == nil then
local node = minetest.get_node(pos)
local meta = minetest.get_meta(pos)
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")
else
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("infotext", "Router")
end
end,
})
minetest.register_node("mycoins:router", {
description = "WIFI Router Powered Off",
description = "WIFI Router",
tiles = {"mycoins_router_t.png","mycoins_router_bt.png","mycoins_router_l.png","mycoins_router_r.png","mycoins_router_b.png", "mycoins_router_f.png"},
paramtype = "light",
paramtype2 = "facedir",
@ -84,19 +120,134 @@ minetest.register_node("mycoins:router", {
},
},
on_punch = function(pos)
local isp = minetest.find_node_near(pos, 30, {"mycoins:isp_on"})
if isp == nil then
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_error', param2 = node.param2})
meta:set_string("formspec", default.router_error_formspec(pos))
meta:set_string("infotext", "Router")
timer:start(10)
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("infotext", "Router")
timer:start(10)
end
end,
on_timer = function(pos)
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', param2 = node.param2})
meta:set_string("formspec", default.router_off_formspec(pos))
meta:set_string("infotext", "Router")
timer:stop()
end,
after_place_node = function(pos)
local timer = minetest.get_node_timer(pos)
local node = minetest.get_node(pos)
minetest.swap_node(pos, {name = 'mycoins:router_on', param2 = node.param2})
local meta = minetest.get_meta(pos)
meta:set_string("formspec", default.router_formspec(pos))
meta:set_string("infotext", "Router")
meta:set_string("infotext", "Router")
timer:start(10)
end,
on_construct = function(pos)
local isp = minetest.find_node_near(pos, 30, {"mycoins:isp_on"})
if isp == nil then
local node = minetest.get_node(pos)
local meta = minetest.get_meta(pos)
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")
else
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("infotext", "Router")
end
end,
})
minetest.register_node("mycoins:router_error", {
description = "WIFI Router",
tiles = {"mycoins_router_t.png","mycoins_router_bt.png","mycoins_router_l.png","mycoins_router_r.png","mycoins_router_b.png",
{name="mycoins_router_f_error.png", animation={type="vertical_frames", aspect_w=32, aspect_h=32, length=1.0}},}, --"mycoins_router_f.png"},
paramtype = "light",
paramtype2 = "facedir",
walkable = false,
is_ground_content = true,
groups = {snappy=3, not_in_creative_inventory = 1},
sound = default.node_sound_wood_defaults(),
drop = "mycoins:router",
drawtype = "nodebox",
light_source = 4,
node_box = {
type = "fixed",
fixed = {
{-0.25, -0.5, -0.0625, 0.25, -0.375, 0.3125},
{-0.1875, -0.4375, 0.3125, -0.125, -0.1875, 0.375},
{0.125, -0.4375, 0.3125, 0.1875, -0.1875, 0.375},
{-0.0625, -0.4375, 0.3125, 0.0625, -0.25, 0.375},
},
},
on_punch = function(pos)
local node = minetest.get_node(pos)
minetest.swap_node(pos, {name = 'mycoins:router', param2 = node.param2})
local meta = minetest.get_meta(pos)
meta:set_string("formspec", default.router_off_formspec(pos))
meta:set_string("infotext", "Router")
end,
on_timer = function(pos)
local isp = minetest.find_node_near(pos, 30, {"mycoins:isp_on"})
if isp == nil then
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_error', param2 = node.param2})
meta:set_string("formspec", default.router_error_formspec(pos))
meta:set_string("infotext", "Router")
timer:start(10)
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("infotext", "Router")
timer:start(10)
end
end,
after_place_node = function(pos)
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_error_formspec(pos))
meta:set_string("infotext", "Router")
timer:start(10)
end,
on_construct = function(pos)
local isp = minetest.find_node_near(pos, 30, {"mycoins:isp_on"})
if isp == nil then
local node = minetest.get_node(pos)
local meta = minetest.get_meta(pos)
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")
else
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("infotext", "Router")
end
end,
})

253
router.lua~ Normal file
View File

@ -0,0 +1,253 @@
function default.router_off_formspec(pos)
local spos = pos.x .. "," .. pos.y .. "," ..pos.z
local formspec = "size[10,10]"..
"label[2,2;Powered Off...]"
return formspec
end
function default.router_formspec(pos)
local 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"})
local 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"})
local spos = pos.x .. "," .. pos.y .. "," ..pos.z
local formspec = "size[10,10]"..
"label[2,2;Powered On...]"..
"label[2,2.5;Active: "..#active_computers.."]"..
"label[2,2.8;Inactive: "..#inactive_computers.."]"..
"button_exit[4,7;2,1;exit;Exit]"
return formspec
end
function default.router_error_formspec(pos)
local spos = pos.x .. "," .. pos.y .. "," ..pos.z
local formspec = "size[10,10]"..
"label[2,2;No Networks Available...]"
return formspec
end
--WIFI Router (linksys look-a-like)
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",
{name="mycoins_router_f_animated.png", animation={type="vertical_frames", aspect_w=32, aspect_h=32, length=1.0}},}, --"mycoins_router_f.png"},
paramtype = "light",
paramtype2 = "facedir",
walkable = false,
is_ground_content = true,
groups = {snappy=3, not_in_creative_inventory = 1},
sound = default.node_sound_wood_defaults(),
drop = "mycoins:router",
drawtype = "nodebox",
light_source = 4,
node_box = {
type = "fixed",
fixed = {
{-0.25, -0.5, -0.0625, 0.25, -0.375, 0.3125},
{-0.1875, -0.4375, 0.3125, -0.125, -0.1875, 0.375},
{0.125, -0.4375, 0.3125, 0.1875, -0.1875, 0.375},
{-0.0625, -0.4375, 0.3125, 0.0625, -0.25, 0.375},
},
},
on_punch = function(pos)
local node = minetest.get_node(pos)
minetest.swap_node(pos, {name = 'mycoins:router', param2 = node.param2})
local meta = minetest.get_meta(pos)
meta:set_string("formspec", default.router_off_formspec(pos))
meta:set_string("infotext", "Router")
end,
on_timer = function(pos)
local isp = minetest.find_node_near(pos, 30, {"mycoins:isp_on"})
if isp == nil then
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_error', param2 = node.param2})
meta:set_string("formspec", default.router_error_formspec(pos))
meta:set_string("infotext", "Router")
timer:start(10)
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("infotext", "Router")
timer:start(10)
end
end,
after_place_node = function(pos)
local meta = minetest.get_meta(pos)
local timer = minetest.get_node_timer(pos)
meta:set_string("formspec", default.router_formspec(pos))
meta:set_string("infotext", "Router")
timer:start(10)
end,
on_construct = function(pos)
local isp = minetest.find_node_near(pos, 30, {"mycoins:isp_on"})
if isp == nil then
local node = minetest.get_node(pos)
local meta = minetest.get_meta(pos)
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")
else
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("infotext", "Router")
end
end,
})
minetest.register_node("mycoins:router", {
description = "WIFI Router",
tiles = {"mycoins_router_t.png","mycoins_router_bt.png","mycoins_router_l.png","mycoins_router_r.png","mycoins_router_b.png", "mycoins_router_f.png"},
paramtype = "light",
paramtype2 = "facedir",
walkable = false,
is_ground_content = true,
groups = {snappy=3},
sound = default.node_sound_wood_defaults(),
drop = "mycoins:router",
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
{-0.25, -0.5, -0.0625, 0.25, -0.375, 0.3125},
{-0.1875, -0.4375, 0.3125, -0.125, -0.1875, 0.375},
{0.125, -0.4375, 0.3125, 0.1875, -0.1875, 0.375},
{-0.0625, -0.4375, 0.3125, 0.0625, -0.25, 0.375},
},
},
on_punch = function(pos)
local isp = minetest.find_node_near(pos, 30, {"mycoins:isp_on"})
if isp == nil then
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_error', param2 = node.param2})
meta:set_string("formspec", default.router_error_formspec(pos))
meta:set_string("infotext", "Router")
timer:start(10)
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("infotext", "Router")
timer:start(10)
end
end,
on_timer = function(pos)
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', param2 = node.param2})
meta:set_string("formspec", default.router_off_formspec(pos))
meta:set_string("infotext", "Router")
timer:stop()
end,
after_place_node = function(pos)
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("infotext", "Router")
timer:start(10)
end,
on_construct = function(pos)
local isp = minetest.find_node_near(pos, 30, {"mycoins:isp_on"})
if isp == nil then
local node = minetest.get_node(pos)
local meta = minetest.get_meta(pos)
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")
else
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("infotext", "Router")
end
end,
})
minetest.register_node("mycoins:router_error", {
description = "WIFI Router",
tiles = {"mycoins_router_t.png","mycoins_router_bt.png","mycoins_router_l.png","mycoins_router_r.png","mycoins_router_b.png",
{name="mycoins_router_f_error.png", animation={type="vertical_frames", aspect_w=32, aspect_h=32, length=1.0}},}, --"mycoins_router_f.png"},
paramtype = "light",
paramtype2 = "facedir",
walkable = false,
is_ground_content = true,
groups = {snappy=3, not_in_creative_inventory = 1},
sound = default.node_sound_wood_defaults(),
drop = "mycoins:router",
drawtype = "nodebox",
light_source = 4,
node_box = {
type = "fixed",
fixed = {
{-0.25, -0.5, -0.0625, 0.25, -0.375, 0.3125},
{-0.1875, -0.4375, 0.3125, -0.125, -0.1875, 0.375},
{0.125, -0.4375, 0.3125, 0.1875, -0.1875, 0.375},
{-0.0625, -0.4375, 0.3125, 0.0625, -0.25, 0.375},
},
},
on_punch = function(pos)
local node = minetest.get_node(pos)
minetest.swap_node(pos, {name = 'mycoins:router', param2 = node.param2})
local meta = minetest.get_meta(pos)
meta:set_string("formspec", default.router_off_formspec(pos))
meta:set_string("infotext", "Router")
end,
on_timer = function(pos)
local isp = minetest.find_node_near(pos, 30, {"mycoins:isp_on"})
if isp == nil then
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_error', param2 = node.param2})
meta:set_string("formspec", default.router_error_formspec(pos))
meta:set_string("infotext", "Router")
timer:start(10)
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("infotext", "Router")
timer:start(10)
end
end,
after_place_node = function(pos)
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_error_formspec(pos))
meta:set_string("infotext", "Router")
timer:start(10)
end,
on_construct = function(pos)
local isp = minetest.find_node_near(pos, 30, {"mycoins:isp_on"})
if isp == nil then
local node = minetest.get_node(pos)
local meta = minetest.get_meta(pos)
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")
else
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("infotext", "Router")
end
end,
})

BIN
textures/blk.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 128 B

BIN
textures/grn.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 128 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 494 B

BIN
textures/mycoins_isp_bk.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 136 B

BIN
textures/mycoins_isp_bt.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 119 B

BIN
textures/mycoins_isp_ft.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 250 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 250 B

BIN
textures/mycoins_isp_lt.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 298 B

BIN
textures/mycoins_isp_rt.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 298 B

BIN
textures/mycoins_isp_tp.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 129 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 873 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 KiB

BIN
textures/pcparts.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB