From 1bf62bbad43b8687bf5ca47126e9eb60e1eae118 Mon Sep 17 00:00:00 2001
From: Vanessa Ezekowitz <vanessaezekowitz@gmail.com>
Date: Fri, 14 Dec 2012 12:07:16 -0500
Subject: [PATCH] Changed Mese to act like an object cut out of a block of
 stone, rather than an object found *among* the stone.

That is, mese should behave such that you get something potentially useful out
of the aggregate block you just broke, rather than just collecting the whole
block when mined.

Mese crystals in stone give a single Mese Crystal when mines. Craft three of
those + 2 sticks for Mese Pickaxe, or 9 for a Mese block. Craft one Mese
Crystal by itself to get 9 Mese Crystal fragments, which all mods should use
when a full Mese Crystal is too much.

This includes new textures for the above objects, tweaks to the sounds used for
them, and naming tweaks for the textures used for default mese in stone, so
that old texture packs don't use the "wrong" image.

This represents my best effort to match C55's suggestions.
---
 mods/default/init.lua                         |  72 +++++++++++++++---
 mods/default/textures/default_mese_block.png  | Bin 0 -> 482 bytes
 .../default/textures/default_mese_crystal.png | Bin 0 -> 417 bytes
 .../default_mese_crystal_fragment.png         | Bin 0 -> 212 bytes
 .../default/textures/default_mineral_mese.png | Bin 0 -> 488 bytes
 5 files changed, 62 insertions(+), 10 deletions(-)
 create mode 100644 mods/default/textures/default_mese_block.png
 create mode 100644 mods/default/textures/default_mese_crystal.png
 create mode 100644 mods/default/textures/default_mese_crystal_fragment.png
 create mode 100644 mods/default/textures/default_mineral_mese.png

diff --git a/mods/default/init.lua b/mods/default/init.lua
index 7b8a58c..76d7729 100644
--- a/mods/default/init.lua
+++ b/mods/default/init.lua
@@ -275,7 +275,7 @@ minetest.register_craft({
 minetest.register_craft({
 	output = 'default:pick_mese',
 	recipe = {
-		{'default:mese', 'default:mese', 'default:mese'},
+		{'default:mese_crystal', 'default:mese_crystal', 'default:mese_crystal'},
 		{'', 'default:stick', ''},
 		{'', 'default:stick', ''},
 	}
@@ -486,6 +486,39 @@ minetest.register_craft({
 	}
 })
 
+minetest.register_craft({
+	output = 'default:mese_block',
+	recipe = {
+		{'default:mese_crystal', 'default:mese_crystal', 'default:mese_crystal'},
+		{'default:mese_crystal', 'default:mese_crystal', 'default:mese_crystal'},
+		{'default:mese_crystal', 'default:mese_crystal', 'default:mese_crystal'},
+	}
+})
+
+minetest.register_craft({
+	output = 'default:mese_crystal 9',
+	recipe = {
+		{'default:mese_block'},
+	}
+})
+
+minetest.register_craft({
+	output = 'default:mese_crystal_fragment 9',
+	recipe = {
+		{'default:mese_crystal'},
+	}
+})
+
+minetest.register_craft({
+	type = "shapeless",
+	output = 'default:mese',
+	recipe = {
+		'default:mese_crystal',
+		'default:stone',
+	}
+})
+
+
 --
 -- Crafting (tool repair)
 --
@@ -582,7 +615,7 @@ minetest.register_craft({
 
 minetest.register_craft({
 	type = "fuel",
-	recipe = "default:mese",
+	recipe = "default:mese_crystal",
 	burntime = 30,
 })
 
@@ -761,6 +794,15 @@ minetest.register_node("default:stone_with_iron", {
 	sounds = default.node_sound_stone_defaults(),
 })
 
+minetest.register_node("default:mese", {
+	description = "Mese Crystals in Stone",
+	tiles = {"default_stone.png^default_mineral_mese.png"},
+	is_ground_content = true,
+	groups = {cracky=1},
+	drop = "default:mese_crystal",
+	sounds = default.node_sound_stone_defaults(),
+})
+
 minetest.register_node("default:dirt_with_grass", {
 	description = "Dirt with Grass",
 	tiles = {"default_grass.png", "default_dirt.png", "default_dirt.png^default_grass_side.png"},
@@ -1006,14 +1048,6 @@ minetest.register_node("default:wood", {
 	sounds = default.node_sound_wood_defaults(),
 })
 
-minetest.register_node("default:mese", {
-	description = "Mese",
-	tiles = {"default_mese.png"},
-	is_ground_content = true,
-	groups = {cracky=1},
-	sounds = default.node_sound_defaults(),
-})
-
 minetest.register_node("default:cloud", {
 	description = "Cloud",
 	tiles = {"default_cloud.png"},
@@ -1531,6 +1565,14 @@ minetest.register_node("default:steelblock", {
 	sounds = default.node_sound_stone_defaults(),
 })
 
+minetest.register_node("default:mese_block", {
+	description = "Mese Block",
+	tiles = {"default_mese_block.png"},
+	is_ground_content = true,
+	groups = {cracky=1},
+	sounds = default.node_sound_stone_defaults(),
+})
+
 minetest.register_node("default:nyancat", {
 	description = "Nyan Cat",
 	tiles = {"default_nc_side.png", "default_nc_side.png", "default_nc_side.png",
@@ -1629,6 +1671,11 @@ minetest.register_craftitem("default:iron_lump", {
 	inventory_image = "default_iron_lump.png",
 })
 
+minetest.register_craftitem("default:mese_crystal", {
+	description = "Mese Crystal",
+	inventory_image = "default_mese_crystal.png",
+})
+
 minetest.register_craftitem("default:clay_lump", {
 	description = "Clay Lump",
 	inventory_image = "default_clay_lump.png",
@@ -1639,6 +1686,11 @@ minetest.register_craftitem("default:steel_ingot", {
 	inventory_image = "default_steel_ingot.png",
 })
 
+minetest.register_craftitem("default:mese_crystal_fragment", {
+	description = "Mese Crystal Fragment",
+	inventory_image = "default_mese_crystal_fragment.png",
+})
+
 minetest.register_craftitem("default:clay_brick", {
 	description = "Clay Brick",
 	inventory_image = "default_steel_ingot.png",
diff --git a/mods/default/textures/default_mese_block.png b/mods/default/textures/default_mese_block.png
new file mode 100644
index 0000000000000000000000000000000000000000..307eea24e82920c7eefcf4683b820404b624d01f
GIT binary patch
literal 482
zcmV<80UiE{P)<h;3K|Lk000e1NJLTq000mG000mO0ssI2kdbIM00009a7bBm000ie
z000ie0hKEb8vp<R2XskIMF-pr4g)g{1e;3|0004jNkl<ZD9??NTW`}q5Jry^j}zA+
zQJWwm2bG6Z<p%&N7xC*+B!svK-W=Hyl?Y0>6%jiZkDcYA>$*iebhHn%vwQaYX4aW6
zC`)b`Wl5_n>G#ETIseS@Si;ceM@KffTE}Dg{tXxKJl1P~S5uvwkR||CWnVpgctfNG
zbUeEm-zQBNjsONdTb#wrV#1N+TL2d*)Sg9=6ovNt{QSY5e-(mm4T#uMSBN6A48W;@
zyCZ1<u*z$o?KBpHK(b7MKbfser`Eu;=K^s41!H8r6Jum=B-_ZQ5M!h?vRccol;11S
zz2sXlMqa<+QVrjus*S1wwCh0~__z)S9SpUl%ScmQE^IzIAqpkW_0z}3?aLR^0AH87
zT-bqB6=^~g{{J5=(CbNfPiHZn$JrC<^_m;A7~t%w+yL$bbRNiHpu3&@Z{L^e3aWVR
z8pyZI=ek_*=&=lkxUQxNhlkCe0b|${H4t<;oe1c=w|dpI?{NXZhxdBDX(vv&_{Htx
YFK*MC+nl}m^8f$<07*qoM6N<$f>Th_6aWAK

literal 0
HcmV?d00001

diff --git a/mods/default/textures/default_mese_crystal.png b/mods/default/textures/default_mese_crystal.png
new file mode 100644
index 0000000000000000000000000000000000000000..34fba2fd607f6b96b1eb150633669377fdb19f4f
GIT binary patch
literal 417
zcmV;S0bc%zP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00009a7bBm000XU
z000XU0RWnu7ytkO2XskIMF-pr4iFtRIsWH~0003%Nkl<ZILp<OyGjE=6o$VuGr3?u
z(TLbtS%oxq781lpd}guo73@TWSja+llT8epz09$gH6a&41Pc!g182_n|8wR7|2||h
zp*m1F2F`#kV1NR62Zlg`$m5bT+wcK!1ndC{RCU>Yo$sJ}p<j$!!Iv6}=fDRL*BkVJ
z1xg?T764><PutBWaV!7!5-j}?XF9dBujd?31~{s!Nm+Kb&p@@Wo(XwAqbwC;KtvD$
z@0G;@iUL%-oSr<(S_=S`PBCH-ag=3&Du^h~fhx>q5JeD0BX%C5Gq0j}tZmV1HLw<p
z3B&u~9z}3>o5;7<7+N{kqMDOsb3}ssWCG(c^n1w~V|EHq0ZOA0meUlHB)D(JP5~n?
zVyyuj)2R^0LEz>(ksk>FSb3At2;x{tQy5$&@~gLg|8S^(`k6ifA?t~UIT}%A00000
LNkvXXu0mjfCqbU>

literal 0
HcmV?d00001

diff --git a/mods/default/textures/default_mese_crystal_fragment.png b/mods/default/textures/default_mese_crystal_fragment.png
new file mode 100644
index 0000000000000000000000000000000000000000..496f4bc24ec56b1c2317a505577121e3aada6253
GIT binary patch
literal 212
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9GG!XV7ZFl&wkP>{XE
z)7O>#4iBGz9Iw?yo-071Vow*x5R22v2@;<gCQfMD|6lxH`vyHj1LJQ=E7FzD&68te
zYm4Q1u5b89{Uk%jTU#CwkhiNlvZ}3tTkoK$ebtwag8}^;rU&Ny{~iDR|NZ~F{%^FL
z%fZ~m?qPg{q02=4|Nie2{@dTweEq)u?tdO-ZU%<%<t|%)ves?@TF>C=>gTe~DWM4f
DEUiio

literal 0
HcmV?d00001

diff --git a/mods/default/textures/default_mineral_mese.png b/mods/default/textures/default_mineral_mese.png
new file mode 100644
index 0000000000000000000000000000000000000000..2be9944b5b9d378c0ee5169860689364e7ee0a29
GIT binary patch
literal 488
zcmV<E0T=#>P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV00009a7bBm000ie
z000ie0hKEb8vp<R2XskIMF-pr4g>}>VuXT<0004pNkl<ZILob*UrSp-5XFBxdp9?g
zCIthELZOsMgi<Jle*X_3q)}sUl4~yrg%*N^wyAjk>`ot|S+7d*!Sl8=J97?mX5hJS
zJVo=u>D}0P!sdN)hCWtj0A{)9t9~FTtX41@uH(1J3v_#1ST5o4AhdD<pc-%;==B`k
zZrWm)pQF8(&~XW>0f3`%R3iY^CaA*IRgFu^R)ZvQga8JEx#9lwF)9>*rfDckuon8g
zlrQthV2nj9{QgtYG_mo?S@Liu#YIP_89F(Y2g&;beqMY&MxSc+{M>4`F#rF5G)5O+
z(I3m$c$T9-e;Hl<P4(M%X}fSA{k~-|fa`17Fz@d>yjQ$>y4^swST`4dX+}%dXy}di
z@aFY;X|}c;RaGMbs*3mE{f&ZbVRUy_*xM6|i)hWxAbNf9wl<fSV2r_vr7YR(L;{ee
zmZoVCc>y$!&Sf;j%yOf3UE!SY?r^Ox2|)=VP?eUdY8OvVML)ccyC3f$w2vt-oYr+s
eRS9<so`QeQ3%D|~Yyyq|0000<MNUMnLSTa7xYe@&

literal 0
HcmV?d00001