From 7216f9064a4f8ec1f5ca6cbee8c63b4e11fa5343 Mon Sep 17 00:00:00 2001
From: h-v-smacker <hans-von-smacker+github@gmail.com>
Date: Wed, 28 Feb 2018 01:27:54 +0300
Subject: extra objects and vine support for chainsaw

---
 extranodes/init.lua                              |  40 ++++++++++++++++++++++-
 extranodes/textures/technic_aspirin_bottle.png   | Bin 0 -> 569 bytes
 extranodes/textures/technic_aspirin_pill.png     | Bin 0 -> 292 bytes
 technic/machines/HV/electric_furnace.lua         |   3 +-
 technic/machines/register/alloy_recipes.lua      |   1 +
 technic/machines/register/compressor_recipes.lua |   1 +
 technic/machines/register/extractor_recipes.lua  |   4 +++
 technic/tools/chainsaw.lua                       |   2 ++
 8 files changed, 48 insertions(+), 3 deletions(-)
 create mode 100644 extranodes/textures/technic_aspirin_bottle.png
 create mode 100644 extranodes/textures/technic_aspirin_pill.png

diff --git a/extranodes/init.lua b/extranodes/init.lua
index 4b304b1..5ed5f5f 100644
--- a/extranodes/init.lua
+++ b/extranodes/init.lua
@@ -195,4 +195,42 @@ minetest.register_craft({
 	type = "cooking",
 	output = "technic:diamond_seed",
 	recipe = "technic:graphite"
-})
\ No newline at end of file
+})
+
+-- aspirin
+
+-- makes any sence only when there is hunger as a separate status of the player
+-- also it uses willow twigs - ethereal dependency
+
+if minetest.get_modpath("hunger") and minetest.get_modpath("ethereal") then
+
+	minetest.register_craftitem(":technic:aspirin_pill", {
+		description = "Aspirin pill",
+		inventory_image = "technic_aspirin_pill.png",
+		on_use = function(itemstack, user, pointed_thing)
+			user:set_hp(user:get_hp() + 2)
+			itemstack:take_item()
+			return itemstack
+		end
+	})
+
+	minetest.register_craftitem(":technic:aspirin_bottle", {
+		description = "Aspirin pills",
+		inventory_image = "technic_aspirin_bottle.png",
+		on_use = function(itemstack, user, pointed_thing)
+			user:set_hp(20)
+			itemstack:take_item()
+			return itemstack
+		end
+	})
+
+	minetest.register_craft({
+			type = "shapeless",
+			output = "technic:aspirin_bottle",
+			recipe = {"technic:aspirin_pill", "technic:aspirin_pill", 
+				"technic:aspirin_pill", "technic:aspirin_pill",
+				"technic:aspirin_pill", "technic:aspirin_pill", 
+				"technic:aspirin_pill", "vessels:glass_bottle"}
+		})
+
+end
\ No newline at end of file
diff --git a/extranodes/textures/technic_aspirin_bottle.png b/extranodes/textures/technic_aspirin_bottle.png
new file mode 100644
index 0000000..64c2b03
Binary files /dev/null and b/extranodes/textures/technic_aspirin_bottle.png differ
diff --git a/extranodes/textures/technic_aspirin_pill.png b/extranodes/textures/technic_aspirin_pill.png
new file mode 100644
index 0000000..f7fccb8
Binary files /dev/null and b/extranodes/textures/technic_aspirin_pill.png differ
diff --git a/technic/machines/HV/electric_furnace.lua b/technic/machines/HV/electric_furnace.lua
index 3d6b60a..c4a72fb 100644
--- a/technic/machines/HV/electric_furnace.lua
+++ b/technic/machines/HV/electric_furnace.lua
@@ -1,10 +1,9 @@
--- MV Electric Furnace
+-- HV Electric Furnace
 -- This is a faster version of the stone furnace which runs on EUs
 -- In addition to this it can be upgraded with microcontrollers and batteries
 -- This new version uses the batteries to lower the power consumption of the machine
 -- Also in addition this furnace can be attached to the pipe system from the pipeworks mod.
 
--- FIXME: kpoppel I'd like to introduce an induction heating element here also
 minetest.register_craft({
 	output = 'technic:hv_electric_furnace',
 	recipe = {
diff --git a/technic/machines/register/alloy_recipes.lua b/technic/machines/register/alloy_recipes.lua
index 49c41f4..4b26a5a 100644
--- a/technic/machines/register/alloy_recipes.lua
+++ b/technic/machines/register/alloy_recipes.lua
@@ -34,6 +34,7 @@ if minetest.get_modpath("ethereal") then
 	table.insert(recipes, {"default:clay", "dye:red", "bakedclay:red"})
 	table.insert(recipes, {"default:clay", "dye:orange", "bakedclay:orange"})
 	table.insert(recipes, {"default:clay", "dye:grey", "bakedclay:grey"})
+	table.insert(recipes, {"ethereal:crystal_spike", "ethereal:fire_dust 2", "default:mese_crystal 2"})
 end
 
 for _, data in pairs(recipes) do
diff --git a/technic/machines/register/compressor_recipes.lua b/technic/machines/register/compressor_recipes.lua
index 02fd741..c0f6c49 100644
--- a/technic/machines/register/compressor_recipes.lua
+++ b/technic/machines/register/compressor_recipes.lua
@@ -11,6 +11,7 @@ end
 local recipes = {
 	{"default:snowblock",          "default:ice"},
 	{"default:sand 2",             "default:sandstone"},
+	{"default:silver_sand 2",      "default:silver_sandstone"},
 	{"default:desert_sand",        "default:desert_stone"},
 	{"technic:mixed_metal_ingot",  "technic:composite_plate"},
 	{"default:copper_ingot 5",     "technic:copper_plate"},
diff --git a/technic/machines/register/extractor_recipes.lua b/technic/machines/register/extractor_recipes.lua
index 1de0ba0..994d1a7 100644
--- a/technic/machines/register/extractor_recipes.lua
+++ b/technic/machines/register/extractor_recipes.lua
@@ -29,6 +29,10 @@ if minetest.get_modpath("dye") then
 		{"bushes:blueberry",                  unifieddyes and "unifieddyes:magenta_s50 4" or "dye:magenta 4"},
 	}
 
+	if minetest.get_modpath("hunger") and minetest.get_modpath("ethereal") then
+		table.insert(dye_recipes, {"ethereal:willow_twig 12", "technic:aspirin_pill"})
+	end
+	
 	for _, data in ipairs(dye_recipes) do
 		technic.register_extractor_recipe({input = {data[1]}, output = data[2]})
 	end
diff --git a/technic/tools/chainsaw.lua b/technic/tools/chainsaw.lua
index 80e2bc2..df35090 100644
--- a/technic/tools/chainsaw.lua
+++ b/technic/tools/chainsaw.lua
@@ -150,6 +150,8 @@ if minetest.get_modpath("ethereal") then
 		timber_nodenames["ethereal:orange"]        = true
 		timber_nodenames["ethereal:coconut"]       = true
 		timber_nodenames["ethereal:golden_apple"]  = true
+		-- extra
+		timber_nodenames["ethereal:vine"]  = true
 	end
 end
 
-- 
cgit v1.2.3