From 0de58dfd5bdf472ccb40dcd4d383df8e98c897fd Mon Sep 17 00:00:00 2001 From: qwrwed Date: Tue, 24 Dec 2013 15:37:02 +0000 Subject: [PATCH] Initial commit --- .gitattributes | 22 ++ .gitignore | 215 ++++++++++++++++ icetools/depends.txt | 2 + icetools/init.lua | 234 ++++++++++++++++++ icetools/textures/icetools_ice_cracked.png | Bin 0 -> 843 bytes icetools/textures/icetools_ice_crystal.png | Bin 0 -> 456 bytes .../textures/icetools_ice_crystal_refined.png | Bin 0 -> 395 bytes icetools/textures/icetools_ice_reinforced.png | Bin 0 -> 756 bytes .../textures/icetools_mineral_ice_crystal.png | Bin 0 -> 788 bytes icetools/textures/icetools_steel_melted.png | Bin 0 -> 226 bytes icetools/textures/icetools_tool_iceaxe.png | Bin 0 -> 224 bytes icetools/textures/icetools_tool_icehoe.png | Bin 0 -> 364 bytes icetools/textures/icetools_tool_icepaxel.png | Bin 0 -> 312 bytes icetools/textures/icetools_tool_icepick.png | Bin 0 -> 341 bytes icetools/textures/icetools_tool_iceshovel.png | Bin 0 -> 248 bytes icetools/textures/icetools_tool_icesword.png | Bin 0 -> 347 bytes magmatools/depends.txt | 2 + magmatools/init.lua | 197 +++++++++++++++ .../textures/magmatools_magma_crystal.png | Bin 0 -> 243 bytes .../magmatools_magma_crystal_refined.png | Bin 0 -> 252 bytes .../magmatools_mineral_magma_crystal.png | Bin 0 -> 679 bytes .../textures/magmatools_tool_magmaaxe.png | Bin 0 -> 311 bytes .../textures/magmatools_tool_magmahoe.png | Bin 0 -> 351 bytes .../textures/magmatools_tool_magmapaxel.png | Bin 0 -> 389 bytes .../textures/magmatools_tool_magmapick.png | Bin 0 -> 368 bytes .../textures/magmatools_tool_magmashovel.png | Bin 0 -> 295 bytes .../textures/magmatools_tool_magmasword.png | Bin 0 -> 261 bytes .../textures/old/magmatools_magma_axe.png | Bin 0 -> 218 bytes .../textures/old/magmatools_magma_hoe.png | Bin 0 -> 341 bytes .../textures/old/magmatools_magma_ingot.png | Bin 0 -> 297 bytes .../textures/old/magmatools_magma_pick.png | Bin 0 -> 321 bytes .../textures/old/magmatools_magma_shovel.png | Bin 0 -> 237 bytes .../textures/old/magmatools_magma_sword.png | Bin 0 -> 295 bytes modpack.txt | 0 paxels/depends.txt | 1 + paxels/init.lua | 101 ++++++++ paxels/textures/paxels_workshop_bottom.png | Bin 0 -> 1767 bytes paxels/textures/paxels_workshop_front.png | Bin 0 -> 1963 bytes paxels/textures/paxels_workshop_side.png | Bin 0 -> 1687 bytes paxels/textures/paxels_workshop_top.png | Bin 0 -> 1933 bytes 40 files changed, 774 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 icetools/depends.txt create mode 100644 icetools/init.lua create mode 100644 icetools/textures/icetools_ice_cracked.png create mode 100644 icetools/textures/icetools_ice_crystal.png create mode 100644 icetools/textures/icetools_ice_crystal_refined.png create mode 100644 icetools/textures/icetools_ice_reinforced.png create mode 100644 icetools/textures/icetools_mineral_ice_crystal.png create mode 100644 icetools/textures/icetools_steel_melted.png create mode 100644 icetools/textures/icetools_tool_iceaxe.png create mode 100644 icetools/textures/icetools_tool_icehoe.png create mode 100644 icetools/textures/icetools_tool_icepaxel.png create mode 100644 icetools/textures/icetools_tool_icepick.png create mode 100644 icetools/textures/icetools_tool_iceshovel.png create mode 100644 icetools/textures/icetools_tool_icesword.png create mode 100644 magmatools/depends.txt create mode 100644 magmatools/init.lua create mode 100644 magmatools/textures/magmatools_magma_crystal.png create mode 100644 magmatools/textures/magmatools_magma_crystal_refined.png create mode 100644 magmatools/textures/magmatools_mineral_magma_crystal.png create mode 100644 magmatools/textures/magmatools_tool_magmaaxe.png create mode 100644 magmatools/textures/magmatools_tool_magmahoe.png create mode 100644 magmatools/textures/magmatools_tool_magmapaxel.png create mode 100644 magmatools/textures/magmatools_tool_magmapick.png create mode 100644 magmatools/textures/magmatools_tool_magmashovel.png create mode 100644 magmatools/textures/magmatools_tool_magmasword.png create mode 100644 magmatools/textures/old/magmatools_magma_axe.png create mode 100644 magmatools/textures/old/magmatools_magma_hoe.png create mode 100644 magmatools/textures/old/magmatools_magma_ingot.png create mode 100644 magmatools/textures/old/magmatools_magma_pick.png create mode 100644 magmatools/textures/old/magmatools_magma_shovel.png create mode 100644 magmatools/textures/old/magmatools_magma_sword.png create mode 100644 modpack.txt create mode 100644 paxels/depends.txt create mode 100644 paxels/init.lua create mode 100644 paxels/textures/paxels_workshop_bottom.png create mode 100644 paxels/textures/paxels_workshop_front.png create mode 100644 paxels/textures/paxels_workshop_side.png create mode 100644 paxels/textures/paxels_workshop_top.png diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..412eeda --- /dev/null +++ b/.gitattributes @@ -0,0 +1,22 @@ +# Auto detect text files and perform LF normalization +* text=auto + +# Custom for Visual Studio +*.cs diff=csharp +*.sln merge=union +*.csproj merge=union +*.vbproj merge=union +*.fsproj merge=union +*.dbproj merge=union + +# Standard to msysgit +*.doc diff=astextplain +*.DOC diff=astextplain +*.docx diff=astextplain +*.DOCX diff=astextplain +*.dot diff=astextplain +*.DOT diff=astextplain +*.pdf diff=astextplain +*.PDF diff=astextplain +*.rtf diff=astextplain +*.RTF diff=astextplain diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b9d6bd9 --- /dev/null +++ b/.gitignore @@ -0,0 +1,215 @@ +################# +## Eclipse +################# + +*.pydevproject +.project +.metadata +bin/ +tmp/ +*.tmp +*.bak +*.swp +*~.nib +local.properties +.classpath +.settings/ +.loadpath + +# External tool builders +.externalToolBuilders/ + +# Locally stored "Eclipse launch configurations" +*.launch + +# CDT-specific +.cproject + +# PDT-specific +.buildpath + + +################# +## Visual Studio +################# + +## Ignore Visual Studio temporary files, build results, and +## files generated by popular Visual Studio add-ons. + +# User-specific files +*.suo +*.user +*.sln.docstates + +# Build results + +[Dd]ebug/ +[Rr]elease/ +x64/ +build/ +[Bb]in/ +[Oo]bj/ + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +*_i.c +*_p.c +*.ilk +*.meta +*.obj +*.pch +*.pdb +*.pgc +*.pgd +*.rsp +*.sbr +*.tlb +*.tli +*.tlh +*.tmp +*.tmp_proj +*.log +*.vspscc +*.vssscc +.builds +*.pidb +*.log +*.scc + +# Visual C++ cache files +ipch/ +*.aps +*.ncb +*.opensdf +*.sdf +*.cachefile + +# Visual Studio profiler +*.psess +*.vsp +*.vspx + +# Guidance Automation Toolkit +*.gpState + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# NCrunch +*.ncrunch* +.*crunch*.local.xml + +# Installshield output folder +[Ee]xpress/ + +# DocProject is a documentation generator add-in +DocProject/buildhelp/ +DocProject/Help/*.HxT +DocProject/Help/*.HxC +DocProject/Help/*.hhc +DocProject/Help/*.hhk +DocProject/Help/*.hhp +DocProject/Help/Html2 +DocProject/Help/html + +# Click-Once directory +publish/ + +# Publish Web Output +*.Publish.xml +*.pubxml + +# NuGet Packages Directory +## TODO: If you have NuGet Package Restore enabled, uncomment the next line +#packages/ + +# Windows Azure Build Output +csx +*.build.csdef + +# Windows Store app package directory +AppPackages/ + +# Others +sql/ +*.Cache +ClientBin/ +[Ss]tyle[Cc]op.* +~$* +*~ +*.dbmdl +*.[Pp]ublish.xml +*.pfx +*.publishsettings + +# RIA/Silverlight projects +Generated_Code/ + +# Backup & report files from converting an old project file to a newer +# Visual Studio version. Backup files are not needed, because we have git ;-) +_UpgradeReport_Files/ +Backup*/ +UpgradeLog*.XML +UpgradeLog*.htm + +# SQL Server files +App_Data/*.mdf +App_Data/*.ldf + +############# +## Windows detritus +############# + +# Windows image file caches +Thumbs.db +ehthumbs.db + +# Folder config file +Desktop.ini + +# Recycle Bin used on file shares +$RECYCLE.BIN/ + +# Mac crap +.DS_Store + + +############# +## Python +############# + +*.py[co] + +# Packages +*.egg +*.egg-info +dist/ +build/ +eggs/ +parts/ +var/ +sdist/ +develop-eggs/ +.installed.cfg + +# Installer logs +pip-log.txt + +# Unit test / coverage reports +.coverage +.tox + +#Translations +*.mo + +#Mr Developer +.mr.developer.cfg diff --git a/icetools/depends.txt b/icetools/depends.txt new file mode 100644 index 0000000..d77ba25 --- /dev/null +++ b/icetools/depends.txt @@ -0,0 +1,2 @@ +default +farming diff --git a/icetools/init.lua b/icetools/init.lua new file mode 100644 index 0000000..f93ed53 --- /dev/null +++ b/icetools/init.lua @@ -0,0 +1,234 @@ +-- mods/icetools/init.lua + +minetest.register_node("icetools:stone_with_ice_crystal", { + description = "Ice Crystal Ore", + tiles = {"default_stone.png^icetools_mineral_ice_crystal.png"}, + light_source = 7, + is_ground_content = true, + groups = {level=2, cracky=2}, + drop = "icetools:ice_crystal", + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_craftitem("icetools:ice_crystal", { + description = "Ice Crystal", + inventory_image = "icetools_ice_crystal.png", +}) + +minetest.register_craftitem("icetools:ice_crystal_refined", { + description = "Refined Ice Crystal", + inventory_image = "icetools_ice_crystal_refined.png", +}) + +minetest.register_craft({ + type = "shapeless", + output = "icetools:ice_crystal_refined", + recipe = {"icetools:ice_crystal", "bucket:bucket_water", "default:diamond"}, +}) + +minetest.register_craft({ + output = "icetools:sword_ice", + recipe = { + {"icetools:ice_crystal_refined"}, + {"icetools:ice_crystal_refined"}, + {"group:stick"}, + } +}) + +minetest.register_craft({ + output = "icetools:pick_ice", + recipe = { + {"icetools:ice_crystal_refined", "icetools:ice_crystal_refined", "icetools:ice_crystal_refined"}, + {"", "group:stick", ""}, + {"", "group:stick", ""}, + } +}) + +minetest.register_craft({ + output = "icetools:axe_ice", + recipe = { + {"icetools:ice_crystal_refined", "icetools:ice_crystal_refined"}, + {"icetools:ice_crystal_refined", "group:stick"}, + {"", "group:stick"}, + } +}) + +minetest.register_craft({ + output = "icetools:shovel_ice", + recipe = { + {"icetools:ice_crystal_refined"}, + {"group:stick"}, + {"group:stick"}, + } +}) + +minetest.register_craft({ + output = "icetools:ice_cracked", + recipe = { + {"","bucket:bucket_water",""}, + {"bucket:bucket_water","default:steel_ingot","bucket:bucket_water"}, + {"","bucket:bucket_water",""}, + }, + replacements = { {"bucket:bucket_water", "bucket:bucket_empty"}, {"bucket:bucket_water", "bucket:bucket_empty"}, {"bucket:bucket_water", "bucket:bucket_empty"}, {"bucket:bucket_water", "bucket:bucket_empty"} }, +}) + +minetest.register_craft({ + output = "icetools:ice_reinforced", + recipe = { + {"","icetools:steel_melted",""}, + {"icetools:steel_melted","icetools:ice_cracked","icetools:steel_melted"}, + {"","icetools:steel_melted",""}, + } +}) + +minetest.register_craft({ + type = "cooking", + output = "icetools:steel_melted", + recipe = "default:steel_ingot", +}) + +minetest.register_craft({ + output = "icetools:hoe_ice", + recipe = { + {"icetools:ice_crystal_refined","icetools:ice_crystal_refined"}, + {"","group:stick"}, + {"","group:stick"}, + } +}) + +if minetest.get_modpath("paxels") == nil then + minetest.register_craft({ + output = "icetools:paxel_ice", + recipe = { + {"icetools:axe_ice","icetools:shovel_ice","icetools:pick_ice"}, + {"","icetools:ice_crystal_refined",""}, + {"","icetools:ice_crystal_refined",""}, + } + }) +end +minetest.register_tool("icetools:sword_ice", { + description = "Ice Sword", + inventory_image = "icetools_tool_icesword.png", + tool_capabilities = { + full_punch_interval = 0.5, + max_drop_level=1, + groupcaps={ + snappy={times={[1]=1.50, [2]=0.60, [3]=0.20}, uses=50, maxlevel=3}, + }, + damage_groups = {fleshy=9}, + } +}) + +minetest.register_tool("icetools:pick_ice", { + description = "Ice Pickaxe", + inventory_image = "icetools_tool_icepick.png", + tool_capabilities = { + full_punch_interval = 0.5, + max_drop_level=3, + groupcaps={ + cracky = {times={[1]=0.90, [2]=0.40, [3]=0.10}, uses=50, maxlevel=3}, + }, + damage_groups = {fleshy=5}, + }, +}) + +minetest.register_tool("icetools:shovel_ice", { + description = "Ice Shovel", + inventory_image = "icetools_tool_iceshovel.png", + wield_image = "icetools_tool_iceshovel.png^[transformR90", + tool_capabilities = { + full_punch_interval = 0.5, + max_drop_level=1, + groupcaps={ + crumbly = {times={[1]=0.90, [2]=0.40, [3]=0.10}, uses=50, maxlevel=3}, + }, + damage_groups = {fleshy=4}, + }, +}) + +minetest.register_tool("icetools:axe_ice", { + description = "Ice Axe", + inventory_image = "icetools_tool_iceaxe.png", + tool_capabilities = { + full_punch_interval = 0.5, + max_drop_level=1, + groupcaps={ + choppy={times={[1]=0.90, [2]=0.40, [3]=0.10}, uses=50, maxlevel=2}, + }, + damage_groups = {fleshy=7}, + }, +}) + +minetest.register_craftitem("icetools:steel_melted", { + description = "Melted Steel", + inventory_image = "icetools_steel_melted.png", +}) + +minetest.register_node("icetools:ice_cracked", { + description = "Cracked Ice", + drawtype = "glasslike", + tiles = {"icetools_ice_cracked.png"}, + paramtype = "light", + sunlight_propagates = true, + groups = {cracky=3,oddly_breakable_by_hand=3}, + sounds = default.node_sound_glass_defaults(), +}) + +minetest.register_node("icetools:ice_reinforced", { + description = "Reinforced Ice", + tiles = {"icetools_ice_reinforced.png"}, + is_ground_content = true, + groups = {cracky=1,level=2}, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_tool("icetools:hoe_ice", { + description = "Ice Hoe", + inventory_image = "icetools_tool_icehoe.png", + liquids_pointable = true, + on_use = function(itemstack, user, pointed_thing) + if pointed_thing.type ~= "node" then + return + end + node = minetest.get_node(pointed_thing.under) + if node == "group:soil" then + return farming.hoe_on_use(itemstack, user, pointed_thing, 50) + end + liquiddef = bucket.liquids["default:lava_source"] + if liquiddef ~= nil and liquiddef.itemname ~= nil and (node.name == liquiddef.source or + (node.name == "default:lava_source" or node.name == "default:lava_flowing")) then + minetest.add_node(pointed_thing.under, {name="default:obsidian"}) + itemstack:add_wear(65535/70) + return itemstack + end + end +}) + +minetest.register_tool("icetools:paxel_ice", { + description = "Ice Paxel", + inventory_image = "icetools_tool_icepaxel.png", + tool_capabilities = { + full_punch_interval = 0.5, + max_drop_level=3, + groupcaps={ + choppy = {times={[1]=0.80, [2]=0.40, [3]=0.10}, uses=50, maxlevel=2}, + crumbly = {times={[1]=0.80, [2]=0.40, [3]=0.10}, uses=50, maxlevel=3}, + cracky = {times={[1]=0.80, [2]=0.40, [3]=0.10}, uses=50, maxlevel=3}, + }, + damage_groups = {fleshy=8}, + }, +}) + + + +minetest.register_ore({ + ore_type = "scatter", + ore = "icetools:stone_with_ice_crystal", + wherein = "default:stone", + clust_scarcity = 24*24*24, + clust_num_ores = 27, + clust_size = 6, + height_min = -31000, + height_max = -64, + flags = "absheight", +}) \ No newline at end of file diff --git a/icetools/textures/icetools_ice_cracked.png b/icetools/textures/icetools_ice_cracked.png new file mode 100644 index 0000000000000000000000000000000000000000..b15146d999fa0cfd1ae8290d007b30ac0aa76242 GIT binary patch literal 843 zcmV-R1GM~!P)VGd000McNliru-3${HDIkF_1g-!80@z7J zK~y-)J(JCgQ)d*$fA5=n^XBHR#Q{ME>1UWlIy8wU7QCS##aRdyLJhTlKo<7zXpt^z zRxYHKI7A0J3m1h#?xG}hY-f~NOk0G48$U*Icaz+E-;XZtj0X-Jo^uWdp65B@)-C6p zv-rN`IJAZ|O{i8ww01}-a1NYv2q74cA}(Kf0Dw%>1R*4AYYB_Rk|ar}*Apt05M$u{ zc|o3Mcpg}*8IK}*{g`sOiVy;+REX!nlP4k88losXsvRdz7$%bhaA*zx?SD(JAM^C_ zfK#UgK~P0z*&MAQ%jR^uA+s51opSOdym?b12tq0q#ds9)Ui~KHQN+iMAwPT{k)|2m zFZVCe|0ZTUx`a|O0L`XhcNf56OwPG;pmj`|Cal+LG@Fp;6YkyZ;(hgX%-??wxOy$- z?#~hHwHi_m5uzaU^yxA?I~FNndus!LGrwy}C9jyZ7T*74h%rYCweQ%x6CnhwtiX#G z1^)E$fWh_O==Ec)HFzF;us%dOXECN=_v*En?X3+iUwOdF3Osw3;2cOP`Rt1!Z{K=k z*&L-5tri%gkwQqCP0f0(#(X~K%iga-7X|H#FqgVf0f(s|8Ahh}*ZFOVgZ2BWG`~N}47p71D0QYz9IU`S0$4k3Jpp z&tC&N7jJTSDDXUxi^US(_j&ZFggknO<7EJ244Zc%R@ZJI1avO`$g5Y!J&*v)<$_8@ zAp~^0A=9bFIZK|W+~55Coph}hynZe5{o*=+41x-)s{v`6V+>5Epmk23FFAYGz4Lyz z8#0+BXst<-ghserEDHm*Ct>9@iivPY<(W3s%w<8d3@0g zR9!u4g+ETR5MqeR!;}nqvdU{K9N& zp7qs-S{Pjp&X~fvJMqY(FwuIc$Kh{y*uoBJM@#4|&#_KTJ+$lB&$QaV?zjFIOp%lp zsQjSceD0{?=B|W(qnF+)C2wqg%#JE;SMl6oWxe56tI&aWcXi)hGgLpT^;lu+t=>s? nJjcKL=sY}=P*ioY{wt@gTe~DWM4fc>SX4 literal 0 HcmV?d00001 diff --git a/icetools/textures/icetools_ice_reinforced.png b/icetools/textures/icetools_ice_reinforced.png new file mode 100644 index 0000000000000000000000000000000000000000..54ab5157cbb76a0149cbb562bfda69b7a6189970 GIT binary patch literal 756 zcmVVGd000McNliru-3${I4C7zgO>7s;X-?E`mx3SPax=Tr|Yn!i~j@ zcAJhg1SFeQX)$Oo-B__-)q8bkQ6}lTI=uVN;hw|2>e(|9k(MwFP0&d^#9;>RN->-<{6oCDGMbp$6(-EAjiK3K^jUGxV zf+$Kc22M^oLQ$lgoTRj^kY^dMUR8kL9OPMsF&l^oTU&}G=@HcRInF^{pED>5CKGVZ za{W5Y7YmXkC5|Kd{fhZwLDQ@VL&e!ygS9m#)&GEpP{a4n8KEx;6>P>C-vQl>$g_;o z*#dz6@BaavI0}pphuppEn9U6H#faU5AxB4W`UOHpY;F&E|G6d50ihoeZys=b9HO3^?Cd?_-8+r7KPeub(Yl<;1Vma69(+W6&UDJ<&KT!FsVk5FmMvOq!Z2Z4mi%yA zK<9T_mNYuY+KR)&l<_zvFb14!*x5N}T9!Ch1F*NpB{4}-Zr;2Kb9=kTcnrpXn!J1| z>)zLEJ%{yN*0Fl>m02+QSTv0 zl9*e!60B{QmL=nHXQ^pcOv{qxvK#gAF#ToGQB@VYyMoqWyoYb!!21S%DJMzP0ef+Q m@b+!j*4hw7hNB~BTj75-lR;4&WP)y+0?Ysa0-;Gn zK~y-)rIR^mR8bU$|9jtk%S@J;$xOy239b=Q5Qz(l5W&VqEQLU@u}~2ODpz0sIN*1q)wsE2eGpAm`LthVH3mi%vOT+aB#~ z6Fe3{)s;lRs9}kh0PqLk=IqBk-7Se7hNiWJnYpAJdJ$jwV1h*=V6cdl>!6J0>|P>~ zeE%D8duA#cwe79YbSf~7Ufqz^!q@Lf5qHQ*wZKk0x|L9NBt27>HCT_QKOAIc001K6 z<&ZBG4-3uCrG&G=G|c9bMNA|jXl{?Q=2R=RW(_06U{8_VvXimGsGkpi*~N_!CmEe=@9G#UE#%g7#)kXS>n4_d zt^j~6!YXW|(%zYht`6kztVNR{(N!))6G@eYDF!$f^}l670D!CYVoqqRX-c@p>j_^i}VXDPS)E*367&kcohX1L5iSti`)lqh+ SQLuOb0000FVdQ&MBb@0Em)HO8@`> literal 0 HcmV?d00001 diff --git a/icetools/textures/icetools_tool_iceaxe.png b/icetools/textures/icetools_tool_iceaxe.png new file mode 100644 index 0000000000000000000000000000000000000000..0f2199fc1b1a55d9d82a9982c68b5dafa72dab93 GIT binary patch literal 224 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=G`DAk4@xYmNj^kiEpy*OmP)kFW@nZs)t!DxgrVr;B5V#p&dP1?)S%J^foBQ{*!x zLoMULR{i(??Gt`>UuSYlGS&W*n0DcjV2a8q)*EyFHayi2D|B;8-0=3e^bWP^GDo&N zw=}m!&i6e#KmP{-Yt6!c|9|~|U+=`&6>NO+qur{RJPs4nycijx-pAQTIGW}HEoSg^ L^>bP0l+XkKg8fo5 literal 0 HcmV?d00001 diff --git a/icetools/textures/icetools_tool_icehoe.png b/icetools/textures/icetools_tool_icehoe.png new file mode 100644 index 0000000000000000000000000000000000000000..c7f5a9f74d4d2ffd99f4a45d943aa192a961a340 GIT binary patch literal 364 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4w)8yI$+5{#S#6yYrJ zh%9Dc;5!1sj8nDwq=AC$C7!;n?00!Yg|uXrbaS)-g?@UvIEGl9PJVNLLvy3hfg=uz z36A0#AIksl|L`}P&Dbn#$BlEg>XMyC2ksvI^Z)C5d5JSOA|y?AvPy{UtLGJ8Utp5- z;CVutf!4f39hbRh-C-(_R?oR}^2fgmmd7d_1KWc4*BKiCfk~dt$qhR-KG<)Pb4y|> z3=BI^&jtjtsgiBlg(Ylu znWOb|*~88yt?NwEUx-z4Ojk7I4(~E>^ZayciBFW(t7u-H`;V*b6DE43|M{-I?7;E2 z>mG_Z7rY5!Xb@oirYg9o;YwFCtD20psNYkm=~wUOIjxNqXE^ZoYsS6jXBnM15{vDB z%=2C;df8;@l`fT=ZLcG*FHf7GJ|*gF^p-^9Wk)k4 z7_z$O8@DA~USxb&EHApJ?d+tJAHvfP$~UW~J>k8=et7B8vk&8d9%Arx^>bP0l+XkK Dbl`Xk literal 0 HcmV?d00001 diff --git a/icetools/textures/icetools_tool_icepick.png b/icetools/textures/icetools_tool_icepick.png new file mode 100644 index 0000000000000000000000000000000000000000..dd1491ca50713213e8d58a1b2aca876f56985f84 GIT binary patch literal 341 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=DinK$vl=HlH+5kiEpy*OmP)kFW@X;FRsN>w!X#JY5_^EKbjzWXpBPL7?^iiq=J~ zVrEHC{TH@AU}V|&S>UB@P?a^mqRU6FTOLxuOC}%aVrxm?n%L`RJ~M0P)9T;%&M?Kl zTCq;WGa|%QK1NjK0H1l!Qq`!OkbI_wjuY(%+>duVF&$X>$ERwwTlglKl(-)oA3a@| z&?P&qnBhQG{j~i|nToobX7X(O`o77=^liw?<6Y~xR;0UbN@2C$%;>r4{<@3ZPOl^* zb3G5A%W;qenzl>pL164mZnN!6VxP46iqABxJGiWSymdKI;Vst08|`?AOHXW literal 0 HcmV?d00001 diff --git a/icetools/textures/icetools_tool_iceshovel.png b/icetools/textures/icetools_tool_iceshovel.png new file mode 100644 index 0000000000000000000000000000000000000000..bef738a69e00ad1ef694cd7fa6d5ce9d9b1af440 GIT binary patch literal 248 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=DinK$vl=HlH+5kiEpy*OmP)kFW@vR`Ii|cY#8!o-U3d7N?UF76=#!Eq-xp`uG16 ze@59f71a71$+A20VXEV!>-BBUJn@ogHI<*{YcNkRZU6fyDdOliUT0q6jdiZq=A6^@ ztx>SlEc`eB%irJo3ugQW0(XAlJ+nZJ`<|Vj|8LcQfATsHH~%Kn$t-TBlNmKG g@su(etKO7kaIC1yzWAW(1kgbYp00i_>zopr09Q<81ONa4 literal 0 HcmV?d00001 diff --git a/icetools/textures/icetools_tool_icesword.png b/icetools/textures/icetools_tool_icesword.png new file mode 100644 index 0000000000000000000000000000000000000000..6c8119df368a449ff5f20f36d2945b9485c6f17c GIT binary patch literal 347 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=DinK$vl=HlH+5kiEpy*OmP)kBG3O%E37|Du6;SJY5_^EKVmUEHFQD=1fY&-=8=C zXUE_Bzue>VtMljoOc9UV|M&k~$JrAnKYaE7Jr4*d+Dzi<>FLp^nsLF`=E#Ss ziN~g^Ys~sS)zrB4lb7M5>|+ItK>f@*RU9{aF0;BXp8H_d&3*rq4x}1~1w2^(@&EJl z^ZzI3hW^X1`TF2L$YuZk|DV5uWwGWVuIoI)zxi2NOi#~^{civJ_TB%pl-8&$&#%~% lx36yE!;7=;_mrHU%V3zf=4MTRG!xLz44$rjF6*2UngI8qnz#S} literal 0 HcmV?d00001 diff --git a/magmatools/depends.txt b/magmatools/depends.txt new file mode 100644 index 0000000..4fbb8e1 --- /dev/null +++ b/magmatools/depends.txt @@ -0,0 +1,2 @@ +default +farming \ No newline at end of file diff --git a/magmatools/init.lua b/magmatools/init.lua new file mode 100644 index 0000000..f505e11 --- /dev/null +++ b/magmatools/init.lua @@ -0,0 +1,197 @@ +-- mods/magmatools/init.lua + +minetest.register_node('magmatools:stone_with_magma_crystal', { + description = 'Magma Crystal Ore', + tiles = {'default_stone.png^magmatools_mineral_magma_crystal.png'}, + light_source = 7, + is_ground_content = true, + groups = {level=2, cracky=2}, + drop = 'magmatools:magma_crystal', + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_craftitem('magmatools:magma_crystal', { + description = 'Magma Crystal', + inventory_image = 'magmatools_magma_crystal.png', +}) + +minetest.register_craftitem('magmatools:magma_crystal_refined', { + description = 'Refined Magma Crystal', + inventory_image = 'magmatools_magma_crystal_refined.png', +}) + +minetest.register_craft({ + type = "shapeless", + output = 'magmatools:magma_crystal_refined', + recipe = {'magmatools:magma_crystal', 'bucket:bucket_lava', 'default:mese_crystal'}, +}) + +minetest.register_craft({ + output = 'magmatools:sword_magma', + recipe = { + {'magmatools:magma_crystal_refined'}, + {'magmatools:magma_crystal_refined'}, + {'default:torch'}, + } +}) + +minetest.register_craft({ + output = 'magmatools:pick_magma', + recipe = { + {'magmatools:magma_crystal_refined', 'magmatools:magma_crystal_refined', 'magmatools:magma_crystal_refined'}, + {'', 'default:torch', ''}, + {'', 'default:torch', ''}, + } +}) + +minetest.register_craft({ + output = 'magmatools:axe_magma', + recipe = { + {'magmatools:magma_crystal_refined', 'magmatools:magma_crystal_refined'}, + {'magmatools:magma_crystal_refined', 'default:torch'}, + {'', 'default:torch'}, + } +}) + +minetest.register_craft({ + output = 'magmatools:shovel_magma', + recipe = { + {'magmatools:magma_crystal_refined'}, + {'default:torch'}, + {'default:torch'}, + } +}) + + +minetest.register_craft({ + output = 'magmatools:hoe_magma', + recipe = { + {'magmatools:magma_crystal_refined','magmatools:magma_crystal_refined'}, + {'','default:torch'}, + {'','default:torch'}, + } +}) +if minetest.get_modpath("paxels") == nil then + minetest.register_craft({ + output = 'magmatools:paxel_magma', + recipe = { + {'magmatools:axe_magma','magmatools:shovel_magma','magmatools:pick_magma'}, + {'','magmatools:magma_crystal_refined',''}, + {'','magmatools:magma_crystal_refined',''}, + } + }) +end + +minetest.register_tool('magmatools:sword_magma', { + description = 'Magma Sword', + inventory_image = 'magmatools_tool_magmasword.png', + tool_capabilities = { + full_punch_interval = 0.4, + max_drop_level=1, + groupcaps={ + snappy={times={[1]=1.50, [2]=0.60, [3]=0.20}, uses=50, maxlevel=3}, + }, + damage_groups = {fleshy=10}, + } +}) + +minetest.register_tool('magmatools:pick_magma', { + description = 'Magma Pickaxe', + inventory_image = 'magmatools_tool_magmapick.png', + tool_capabilities = { + full_punch_interval = 0.4, + max_drop_level=3, + groupcaps={ + cracky = {times={[1]=0.90, [2]=0.40, [3]=0.10}, uses=50, maxlevel=3}, + }, + damage_groups = {fleshy=6}, + }, +}) + +minetest.register_tool('magmatools:shovel_magma', { + description = 'Magma Shovel', + inventory_image = 'magmatools_tool_magmashovel.png', + wield_image = 'magmatools_tool_magmashovel.png^[transformR90', + tool_capabilities = { + full_punch_interval = 0.4, + max_drop_level=1, + groupcaps={ + crumbly = {times={[1]=0.90, [2]=0.40, [3]=0.10}, uses=50, maxlevel=3}, + }, + damage_groups = {fleshy=5}, + }, +}) + +minetest.register_tool('magmatools:axe_magma', { + description = 'Magma Axe', + inventory_image = 'magmatools_tool_magmaaxe.png', + tool_capabilities = { + full_punch_interval = 0.4, + max_drop_level=1, + groupcaps={ + choppy={times={[1]=0.90, [2]=0.40, [3]=0.10}, uses=50, maxlevel=2}, + }, + damage_groups = {fleshy=7}, + }, +}) + + +minetest.register_tool('magmatools:hoe_magma', { + description = 'Magma Hoe', + inventory_image = 'magmatools_tool_magmahoe.png', + liquids_pointable = true, + on_use = function(itemstack, user, pointed_thing) + if pointed_thing.type ~= 'node' then + return + end + local liquiddef = bucket.liquids['default:water_source'] + node = minetest.get_node(pointed_thing.under) + if liquiddef ~= nil and liquiddef.itemname ~= nil and (node.name == liquiddef.source or + (node.name == 'default:water_source' or node.name == 'default:water_flowing')) then + minetest.add_node(pointed_thing.under, {name='default:obsidian'}) + itemstack:add_wear(65535/70) + return itemstack + end + end +}) + +minetest.register_tool('magmatools:paxel_magma', { + description = 'Magma Paxel', + inventory_image = 'magmatools_tool_magmapaxel.png', + tool_capabilities = { + full_punch_interval = 0.4, + max_drop_level=3, + groupcaps={ + choppy = {times={[1]=0.80, [2]=0.40, [3]=0.10}, uses=50, maxlevel=2}, + crumbly = {times={[1]=0.80, [2]=0.40, [3]=0.10}, uses=50, maxlevel=3}, + cracky = {times={[1]=0.80, [2]=0.40, [3]=0.10}, uses=50, maxlevel=3}, + }, + damage_groups = {fleshy=8}, + }, +}) + + + +minetest.register_ore({ + ore_type = 'scatter', + ore = 'magmatools:stone_with_magma_crystal', + wherein = 'default:stone', + clust_scarcity = 24*24*24, + clust_num_ores = 20, + clust_size = 6, + height_min = -31000, + height_max = -64, + flags = 'absheight', +}) + +minetest.register_ore({ + ore_type = 'scatter', + ore = 'magmatools:stone_with_magma_crystal', + wherein = 'default:stone', + clust_scarcity = 24*24*24, + clust_num_ores = 24, + clust_size = 6, + height_min = -31000, + height_max = -128, + flags = 'absheight', +}) \ No newline at end of file diff --git a/magmatools/textures/magmatools_magma_crystal.png b/magmatools/textures/magmatools_magma_crystal.png new file mode 100644 index 0000000000000000000000000000000000000000..f2f6ccf0776647ca4a5071a7bffcc5f9201352bf GIT binary patch literal 243 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=G`DAk4@xYmNj^kiEpy*OmP)j|8uRRFHV(YM@Yqr;B5V#p$+XGv}7N&k{?Nbmdyx#O5;L=blQY`OaRM8Iy|6^{Y%uE?>lOwY*p0&{Yq% zOe+^7j~n+q`0lQB6-i&d`-^*F%p8-4HBoB!swcQ8zJIyxYKQl86?Ng&Wf!88*9Yhd iFq}$?ufN-`9d`F%cBA4|Gh3ir7(8A5T-G@yGywqTR#WN# literal 0 HcmV?d00001 diff --git a/magmatools/textures/magmatools_magma_crystal_refined.png b/magmatools/textures/magmatools_magma_crystal_refined.png new file mode 100644 index 0000000000000000000000000000000000000000..f6a005d67f73a1b8ce03f81250bfac1fa6f9f7c1 GIT binary patch literal 252 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=G`DAk4@xYmNj^kiEpy*OmP)kGPngrP|}l2|%GvPZ!4!i_>o>8FDok@VM67w7YA* zFtqyac2`E$_LzK2U+mk=M?oPQ!em*QV-Nkdw_kYRxmJt9_JE#^ToZHT{6iczzestt zH$U%a)&f)EmAcAz8nAm0yIfP zK~y-)wUbLoRACr~pZ}aQGmhtsml;R2MwH4hDRCA-1zI#oiwJ9xM3LF1Wk`!w(S=&I za~sixh&C>Qc49ObEuw|lLK1{zM8(9pIOCBs&N*KTr_#z@eVdQ(_Vd3l?+gDk1a=DC z6Ns1VL4hlqcMJfzNDU4qSv-Q|)N5=2e4Iq*CIYgKjlnHof+A0TJfM~HZQwI72K0`P zk1Ijlr-}z00h$;7bZQCiN{pAf%>Qm3ijbPnye}@wi6?eQOPsk@?m}!r#)d zS~n9TNRr*^1>gY;4Gn3(@EUXo%nFETl%x$Wbv7nX2m56ren85zj^BCG%jBF}4o0qh z=sDD0YzX-4jAe}wszP_fT(wobvxKQ^ofVqzfPELHwnBhQMs?|QE?SKh$qPEFpj#lQ zw)7XU5O0rW7O;9HtA!<>odKp4I0`@x^U5n|y>_aSV9lCHt5Ty)3GhKrW)vNl)u73n z@NsG;b99f4Wq_*+h7AC(MSrBtxOqz}oM8paP3hD}mLMu%0VyytC3e&;U}W4m;O$0t zvuL`E&Qijdb(=L2g-ACd1BjeQWG_VlM?eIgZNAgWB;H6*SG^qBcOp6&YX<@RKo)oh zd{vLp=%*Ezb{hXsA`nvR5@nHqP2~bGO^$CKh zasvK`0uk}?NqkHR#D2m|5Rzk<+Zo3cxGvDOQL76A{o5MtDC(a$_B)?k+@?9d2IT+% N002ovPDHLkV1i><8uS1F literal 0 HcmV?d00001 diff --git a/magmatools/textures/magmatools_tool_magmaaxe.png b/magmatools/textures/magmatools_tool_magmaaxe.png new file mode 100644 index 0000000000000000000000000000000000000000..84c3911f3c6d59fc201caa5cecba0d0095a4952a GIT binary patch literal 311 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=G`DAk4@xYmNj^kiEpy*OmP)kC+%Mx5AH2GC-jto-U3d7N?UF7O?+#f9S*fnzKAS z|Nk35Fl*qP|7`xJp8t|XAEFPmoKG{0UvbouhsS+e?(h8x$9Qi8ckb^!pnn)VUHx3vIVCg!0R3or A(EtDd literal 0 HcmV?d00001 diff --git a/magmatools/textures/magmatools_tool_magmahoe.png b/magmatools/textures/magmatools_tool_magmahoe.png new file mode 100644 index 0000000000000000000000000000000000000000..7912358151cadb6528fbca134a7345bbc17f1e7d GIT binary patch literal 351 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=DinK$vl=HlH+5kiEpy*OmP)kC>RCNON4q9-z=0PZ!4!i_=Skt+@_4h|K9|m2(hV z)5GT7*|fk_>h%L&k^YpKL0?$z9XPkvWC_=zgw*7!x5u24?bf9oWasA2fBv~``+@nX zN5q-VnDXR`b+Py`7I6rjyr?c^Cm-C9zexP%j{KrW5kB3bLQ7?Pf2(O82;A(I%BCfh z{QFJ$>!~~$^*dib7rvc$b=93S4QF+3>x(u{Z&zNH%f0;dS&qficUL;cS3Zi6{H-N^ zD}mv|9i}FSQ|ljW>8|K0lH2pSHbHlz6wf|2SvQ71pO=3+^jX4V<<`o1vu`y=>`cG? r;!i+W*!DO@)-6+~%D)UxaQ(_)*4K7fQ;=&W(BBN6u6{1-oD!M?qK-pOalk zIxuCnHjiS*-^L?KzHeBn9ht(HdAwX4Q~30%orBfeBU-fv0+(Wx58Yy2y>W-}%{lLm zD*QXkXZ`uCf&K0e_k#jhzdmiY`tjIhN_H!YNu2pap2(x6lO-+1&mUmv@G1z}&?sIu zbxQh|z1uzpGcyVbcnaL}y3nd$X0Y*o-YU1&iBb!#ZkdE`JD4aj>A5BUb8m~b@72L7 z{SOL$X&uaeaQtUbN?esNbMgXiA6vPQhoO&-X-ZYArDv{cj&uM0cG>rjH*Tyjb$dJW zqMN8)?$#Z9_THWobMf9~N5PW0qWd09KiX7b@#WApiM#X9wyZvN4yb9f$<^3@oxQ$+ h`*WX1{aF8tMSg$I4e^dg6M+H7;OXk;vd$@?2>>3kqd))v literal 0 HcmV?d00001 diff --git a/magmatools/textures/magmatools_tool_magmapick.png b/magmatools/textures/magmatools_tool_magmapick.png new file mode 100644 index 0000000000000000000000000000000000000000..6e4e70ad23ade16c747d47b249ce80d94b4e7b9d GIT binary patch literal 368 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=DinK$vl=HlH+5kiEpy*OmP)kC+&f?Cji$T|l9~o-U3d7N?g^-rse|LEzZ_8y+kZ zx6XLAYC%ESv_qwux?fp?ZvB=@oPRKG4PQ|Ay|33bf3V%wQQ|P`b1hrk`Ek>v#@5ud zdil@k>?<zopr0QstI9smFU literal 0 HcmV?d00001 diff --git a/magmatools/textures/magmatools_tool_magmasword.png b/magmatools/textures/magmatools_tool_magmasword.png new file mode 100644 index 0000000000000000000000000000000000000000..26f7963fb1189f83d24a61b1d8f75b9a93e1ad0e GIT binary patch literal 261 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=DinK$vl=HlH+5kiEpy*OmP)k2o)c-pXNQHz~eIivWJzY zpyfq3t&>xe`>Jov+cxQBqk!WU`D#&b4#f)NZypi{g;vv+uxihu30__jhqFDS7jG!AYkKI=Vf&*saE@x5Mmi;*R)HepJ2p$gD-44$rjF6*2Ung9~+ BUTFXT literal 0 HcmV?d00001 diff --git a/magmatools/textures/old/magmatools_magma_axe.png b/magmatools/textures/old/magmatools_magma_axe.png new file mode 100644 index 0000000000000000000000000000000000000000..288cb68bdda4cc5bf000c1375932fe19b6eb0714 GIT binary patch literal 218 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=G`DAk4@xYmNj^kiEpy*OmP)7Z1O-2qWO`B z$p0nmNo&@g`Y(Nx=YM{R@gH^X&69TL3&Y|hI_pp^`su6{1- HoD!M<@KjBv literal 0 HcmV?d00001 diff --git a/magmatools/textures/old/magmatools_magma_hoe.png b/magmatools/textures/old/magmatools_magma_hoe.png new file mode 100644 index 0000000000000000000000000000000000000000..83d576a1bfb0c3d1cc22151c581426ac376afc69 GIT binary patch literal 341 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=DinK$vl=HlH+5kiEpy*OmP)7Z1Ownq(1^9Z=|zr;B5V#p&dP1!6zWANcU!&Ft`h z<(QuT`6t5)u-8Dh>v5;tIEW1g-N=Y>~VxYLLG{AltZ2ThHb|kJgtLhuG78On8yAr?W+5 gwjsk!GiOEyhXpC3F48+|fxcz%boFyt=akR{01GXGJ^%m! literal 0 HcmV?d00001 diff --git a/magmatools/textures/old/magmatools_magma_ingot.png b/magmatools/textures/old/magmatools_magma_ingot.png new file mode 100644 index 0000000000000000000000000000000000000000..161998158ed2d932862861723f13da828d87ee1c GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=G`DAk4@xYmNj^kiEpy*OmP)7Z1M?=if&w7XXE}dAc};Se$-3X(8Vs1A(^xtM906 zz9H-3q2_VnMP^)6`7Pm)#jhtur*FKWXz9YfrXc#l2X$Y)>vjKQ*R$5e`*LP_ow#A= z+Za`snEdSU0acZodTBSA_Fd`C;JLD3p`QDpZ(1q$61P2UV0-S$b%kT~^h!6=1KNw5 zXG;b!=U#2BJs~^o^>tCHKK5hP%=Nnz^@FyAif^yuTkGyz!s%%yzJcB5yIOMu^VRSQ n3E$8^?>-wGQC0cDf0yydRCoJp;wj2NA24{j`njxgN@xNA60C0R literal 0 HcmV?d00001 diff --git a/magmatools/textures/old/magmatools_magma_pick.png b/magmatools/textures/old/magmatools_magma_pick.png new file mode 100644 index 0000000000000000000000000000000000000000..c5f3dbeb0a77c957c41d4824d000af9f8341fa2a GIT binary patch literal 321 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=DinK$vl=HlH+5kiEpy*OmP)7Z1NKgJ+8TETGUiPZ!4!i_^&o3j_=fNtiQ9{8RSM z$ZtX@Ii~0TMc!jCnR3`VPdI(eGBW5mS9@APN9T;k7RG}0 zD~9XhgF|wIe!Y})c)0lC*VoreTKtKTdgkH&Tk46awxM40XCjstzh;OXk; Jvd$@?2>`#Ud368) literal 0 HcmV?d00001 diff --git a/magmatools/textures/old/magmatools_magma_shovel.png b/magmatools/textures/old/magmatools_magma_shovel.png new file mode 100644 index 0000000000000000000000000000000000000000..409fa3d04e63d854e82dd336cbef4739993e1728 GIT binary patch literal 237 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=DinK$vl=HlH+5kiEpy*OmP)7Z1OlN}Sh<4xmt#r;B5V#p$;b4TT&Wco@vBveq8c zxFesj=K%Y=ez}MIE4F6kitJceWUgf#lxlR-SFLfn;=bNmrK)FFR|%=S5WZ*d-SBOY1DZ1ZGL0K*@(RhG!Ol%-+MNnt?hM-X>w`f?x{x3*Hr!3*nAJoGUUMpUXO@geCyy8gA79 literal 0 HcmV?d00001 diff --git a/modpack.txt b/modpack.txt new file mode 100644 index 0000000..e69de29 diff --git a/paxels/depends.txt b/paxels/depends.txt new file mode 100644 index 0000000..331d858 --- /dev/null +++ b/paxels/depends.txt @@ -0,0 +1 @@ +default \ No newline at end of file diff --git a/paxels/init.lua b/paxels/init.lua new file mode 100644 index 0000000..702311c --- /dev/null +++ b/paxels/init.lua @@ -0,0 +1,101 @@ +local paxelnodeformspec = + "size[8,9]".. + "label[3,0;Paxel Workshop]".. + "list[current_name;paxeltype;1,2;1,1;]".. + "label[0,2;Material:]".. + "list[current_name;pickaxe;3,1;1,1;]".. + "label[2,1;Pickaxe:]".. + "list[current_name;axe;3,2;1,1;]".. + "label[2,2; Axe:]".. + "list[current_name;shovel;3,3;1,1;]".. + "label[2,3; Shovel:]".. + "list[current_name;paxel;6,2;1,1;]".. + "label[5,2; Paxel:]".. + "list[current_player;main;0,5;8,4;]".. + "button[5,3;3,1;create;Create Paxel]" +local paxels = { + {"icetools:ice_crystal_refined", "icetools:pick_ice", "icetools:axe_ice", "icetools:shovel_ice", "icetools:paxel_ice"}, + {"magmatools:magma_crystal_refined", "magmatools:pick_magma", "magmatools:axe_magma", "magmatools:shovel_magma", "magmatools:paxel_magma"} +} + + +minetest.register_node("paxels:workshop", { + description = "Paxel Workshop", + tiles = {"paxels_workshop_top.png", "paxels_workshop_bottom.png", "paxels_workshop_side.png", "paxels_workshop_side.png", "paxels_workshop_side.png", "paxels_workshop_front.png"}, + paramtype2 = "facedir", + on_construct = function(pos) + local meta = minetest.get_meta(pos) + meta:set_string("formspec",paxelnodeformspec) + meta:set_string("infotext", "Paxel Workshop") + local inv = meta:get_inventory() + inv:set_size("main", 8*4) + inv:set_size("pickaxe", 1*1) + inv:set_size("axe", 1*1) + inv:set_size("shovel", 1*1) + inv:set_size("paxel", 1*1) + inv:set_size("paxeltype", 1*1) + end, + allow_metadata_inventory_put = function(pos, listname, index, stack, player) + if listname == "pickaxe" or listname == "axe" or listname == "shovel" or listname == "paxeltype" then + return stack:get_count() + else + return 0 + end + end, + allow_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player) + if to_list == "paxel" then + return 0 + else + return 1 + end + end, + can_dig = function(pos,player) + local meta = minetest.get_meta(pos); + local inv = meta:get_inventory() + if not inv:is_empty("pickaxe") then + return false + elseif not inv:is_empty("axe") then + return false + elseif not inv:is_empty("paxeltype") then + return false + elseif not inv:is_empty("shovel") then + return false + elseif not inv:is_empty("paxel") then + return false + end + return true + end, + on_receive_fields = function(pos, formname, fields, sender) + local meta = minetest.get_meta(pos); + local inv = meta:get_inventory() + for _, row in ipairs(paxels) do + local paxeltype = row[1] + local pick = row[2] + local axe = row[3] + local shovel = row[4] + local paxel = row[5] + if fields.create then + if inv:get_stack('paxeltype', 1):get_name() == paxeltype and inv:get_stack("pickaxe", 1):get_name() == pick and inv:get_stack("axe", 1):get_name() == axe and inv:get_stack("shovel", 1):get_name() == shovel and inv:is_empty("paxel") then + inv:add_item("paxel", paxel) + inv:set_stack("pickaxe", 1, nil) + inv:set_stack("axe", 1, nil) + inv:set_stack("shovel", 1, nil) + inv:remove_item("paxeltype", paxeltype) + end + end + end + end, + groups = {choppy=3,oddly_breakable_by_hand=3}, +}) + + + + +minetest.register_craft({ + output = "paxels:workshop", + recipe = { + {"default:obsidian","default:obsidian_glass","default:obsidian"}, + {"default:mese","default:diamondblock","default:mese"}, + {"default:obsidian","default:steelblock","default:obsidian"}, + }, +}) \ No newline at end of file diff --git a/paxels/textures/paxels_workshop_bottom.png b/paxels/textures/paxels_workshop_bottom.png new file mode 100644 index 0000000000000000000000000000000000000000..00d601c332bee68a903d06fe97e3ecd903daa190 GIT binary patch literal 1767 zcmV+_STA#v0~Gw6PJML-&B1#W?vvAb|B z(1vm7h1&uj>=mGa5pKio{S!d0g;B&Z*2`%dq#!JqDe$337|!%&txvFEYN)5_DFAF4 zz5H}#F8G0CT6i4=4@xy2xsZL3d*l zbZ^S~tkH#;lb%!+5zb_S0uBey1Y!&r#*^NndehH+cC8=`FfmiC*Fq$+#vh|*Shld& zB395bgd8(tW|->`*~5_sk{}wJZ%0r%1e+-$&Ic_6n?^CTiSEYJ89B0zEEygEY96|a z8qi&=6<8QyK^8|3#+itWsbStSOn`L56u1=v_J}Y6e*S0ha15twV{hmh@DMYwEE#Ju z7F!#ii$-9F2QEQeNCV;6d{Y5}L0Gj$Qj887AR~Yh6?o z{T#r(H#0>6=7HlVzBys!!a`6F`_DhlfelE;b$uW=oaE_^T>)l9B)bY>sG-%^a@_Mc zpf!H2ze49s>c@_cOaArT`=(`RM0^?{h!D1n?qar%4ZEW*ut43&hj=BJuyAagT@O=( zk;EJ_S`XcuD=)?zj-UPnU>K?!^Pv7$Of0$s(*if#gipO)EwI_l%sF2r;R_o(WVM9? zScXziA~V2~-J4j8VR+u=l>lxF^FnI;3b4&+putLv#qs?aqK#({VZpO+)+P8VJYNV< z-^kWmSuk#>hlqr9teSB9!NK>D#Nd`Jd%|he)$D2!&V{_ zGKh~~kK=W+pTqd|c~SM?^-xum<}JS;VKmJ>Up(`G8?!f=Nqa#E7c@dW)NTgH2#i4t zZh#-pS3gLNh2hr+t)qfiNz1^GbIv;p4hIGMXlL;$N z$*DduYev_8bHc!a>Kp20i>a|6X7*hLLov^Tc^tX@AV>)8dM`NO!s11kG5evPn+zxH zRI_x$-I;!HgSZmISg+SfPYv z)C})}4(`126C&C7eFoeOI9*M+=sKqMvzFT_oc?aCGXkA1SOcg|+M%}*oe_688ewMC zGgK8&JoBI}@=8R|Q&?lr(U_OGorUw7sA{zA3iR}T#Po)*B54v ztl71RaLR|hH@2L;Z!Yp&M3w`a25>(&F|F@$tW%%T$yiu49u6Twi3#@J+_%s)n6V;3 zhKH~@JOHDrn6HgrN!y%q`V^J{bwbSJc*3_zW+#;UT%XqZM9*73uH%m3WCSzAT5*yy zh91D}tp@nGJ{Sf{?@Mms?)W$|=-BjqWA-hM|MTB}{cYFt{{y!(le)OSqr?CJ002ov JPDHLkV1kiWCtLsk literal 0 HcmV?d00001 diff --git a/paxels/textures/paxels_workshop_front.png b/paxels/textures/paxels_workshop_front.png new file mode 100644 index 0000000000000000000000000000000000000000..21057f35615a15f36417af877857a84939114786 GIT binary patch literal 1963 zcmV;c2UPfpP);O*2RKPY zK~z}7#g@yDTt^kgf9F))+mD&?j6Df?*~kVQk_}iq6tRIMM2SW`1O#T0|BN+Kgp3HQ zU}q6f5E2PWM7)TUtidr>@MB)xed}=!i)v4g1tuFy)TaBYy6b-Ro$ov6lS`K_IVaX^ zHsiI|UgKe{*I$2~>2&(Q{WzP=ID77kxK&hOe}A7}{qn*?1K^Xw)|u1G^8>Y3L<5L( z(nj4H3nt2mlHYr2{i8w`!CcC=`k*gBg2wzD=d4(zExk?;|SJEue+s6Q*$nk`aqU z$rPW{Yh)Z8p%q*6C#XZ#E=s~WBa{S4sU&j)7$UiE>xf+ zqJD&XhkA$VA;}c#V^r%2Ua5dc#woasDc-CW5o#4oz>}c8B64pJNGYM6l1plcC9r<_ zZv=5v3!;hrvd%~i6(hw0-Thmb=2Ga6-trh76G+0;CsMqk(&}6= zBsYf4A!>)-6MVa{5v9YHn*95%-+pe7KR7sOpZxms2Z9;J4UGY>h6#kwuK<`sWuTXy zuUxoDWM@9y1MX`oia)Y;p=%Z(d1xbf+A zf-a|+DvQN}hq*rf_~SKHK>Qk`3E^h0rU8QK~VXPF6`sn&su`r=Rwx&Yi=m z5yYu(sCKv)tTw@|t+hH|y?XUNFrgb!^U!W0Bh(9wj50Wch*o92kL;($RyXST@`Wz} z@c0u?^6B+|EPWS+S`$bF3DlB_+Jktz@(MP6jIg^yBv60)B6MTe-9gkSyDu{?ry4W0 zV7uQZb(M`r9%XzAeAKO&T#n?%z}a)8x?r|HBc(*nnWxS^iJ1|+qn~vDm4SXOkd7+7 zb|h=Inr?0}9Nnd=vJplc3@TEvsNkmo*oO|jliOkLGH%Tdx zQsUypi>L=ogvpYDcmDVe^E@0Mdh#$eLB=p%+v4cfZ4hO&K0)S*#d7ol#|%8Wz0J+f zK5I4{%0Se>6K5aCvmLijSEWh<8i4sQhX~U+VV35t3}dC{KqbQhjuy9%?J^u3F$tp; zPCX%~zF*mJq&?LQFAzEPQVI{xqelf!R-5xRq!k zW4ck#{M8p3(}a3zYil(g{6rur7*wZ=JxCkNA^}RK?^duq6|z_QH{NbGJUoQUR|s$Z z2`*oO-5q?k+-#rmV!>SW1w6x-dU_$bYNb70alx5p?ytb_1%T^vV xViepI4UTxgrQ!xb9J7`$0Ob7n^UnWq{Tse3%Mp7HEY|=4002ovPDHLkV1fb7hMoWb literal 0 HcmV?d00001 diff --git a/paxels/textures/paxels_workshop_side.png b/paxels/textures/paxels_workshop_side.png new file mode 100644 index 0000000000000000000000000000000000000000..12dd397eaa0f1b7c84f7483848ea41943b601f0f GIT binary patch literal 1687 zcmV;I259+-P)cZUG=4y#BYDv`uG2Z@2%24fBH4hbg5 z3oHwl7;Axy0;&obR3u|9stK9n4Kg6d{05*3gpq4eN>r2k{oUrs8&=mTy{Mdw@kVP# zR#9F|CZWw~&NmKgs34ok*&S~a2YFul8`&dne(I~n5v7##1>Q;-8&J1 zypSI_4L8w_gOUhD)~-S~Lx4-WDqScNqwNC%ggc!@mZ2>0M$Cox8>XVPs02Smp23$d zZ;UbigSNl?+o#8I@O1wU4ntd-7mOK170qB+(Cm)ijhsnl0#576IR@uB`1I-1|J`=a z&x0R+_<`p34M1s8)`=<(Ypk3oMP;DwD3VG;67Qd!mzTc*3u-IgJJb}yKntaTH;O^w z2vHSSGjeTe3VqXn)NtPq76w^lPLAWYe`8pJadpNTNS(+;8Bjt75hqqgy2zTW1*)Jb zHn^3Lf$F!)UKKDes3Hhz2JJY=EEcgBUdgh;BqCsp!RODP|L5`_$HDvWzo%x9dH@hJ z@orQzY6USTb~JJnCWD%|?kIyVZ=Zjk2FBn|KmJIa4*+B^N8(4r?c!*HyvP|y&We+x zHQv8_;^&ta+#SuJToj_>q|9+SRibhd2+P8(Z_SvInIwt#_DutkMdjvd)i#KT2_fw0 z-0qFcWaUC`I7P&+5+!0y+&fMqV{MJJPB$SpM*WIRSZlZn#Z}p_ZRicxqN0#Bl7%F^ z88H`Q8Li(@C6e>`_3!`12mbYX<=5>4PfuhNI1dz*aO-3hX@SZ>Fhl!|nY7lZOn&*t z@6^EaGtYm1Cazh~034AN5NHZ?fnd^P%nBk-isaq>&R>6ixlT}M0*6ou1LjK1Y_H`; zmctm>(YCnFFf~%+n+DQ$UlyHGk(H=B-a9LxH3M@*qujv3QdAV)ohqmjb56`18Bn4U zDke0e668*Gk!#SqKTN|2tT(WMTwBEputHg^OxB3aT?C#^T0t|iz{{W+&5ewr>Y9SK zTg|Ld0;S<0BtboBz`KaGkQq4w9fAyUiK;}V-8M0>eh_P62_@fleYt4hpaAT$-Mvc^ zR3@c;SW>LVaU27@ZL2hISmusY`5TYdOENMSrJ}l1Rk%AV7BzPpH#g)(Nw}PL9NU7g zt0b&DxAycf3%r5tVNHXN7mqBTR#HdIr1K1j{!!S8z+J~@9 zbO}i^*FzVWpejKP$?0vUoG~Vn<4t=*6Jxxg+H*5&(fV;MW7LAyc6BNOQ_yY)Ier7DZ!wJ3cYC$CrZ}j5S$k8%}k~b&cR{ z#jJ-=iV55?b7(@%aM_jPVynH3$gNyAp{xI!4AqUV*>Vh0&~0alYo2eB=FX9s+J5pC zz}1)I9H>O5w%3c)!t0lmeOIDk9EHFOIaWxoVdgXLrDEIU?6(*B5}} zxS>cUg*T&WVZ}z@iZ$M-mGs*a=?0kuMimfAC~&_~nT)Y0M7j|v5X6Wr&JO2#qt-(H zXhd#1NGx_3t&2M=$hO0W2j}ZA*I$yd+_rj%o8L&yucan}BI#y$7Szy3= zNWma%f4P)5x*MU~qRd6R5|hkPh-S7wT4I5;^8*bU^nL>sJGLY#k!um>*uhqgo6+va hX5{7Nh*-ed>cJKbMbef51+^5Vsd*C5u6Y( zrtuGRq60nANr+G~9W9E9;F;h;q*LmIcgG~h?*#}!G?`?k`GR-QY7~_3zW)vd5HUJ{ zg6K?@nFLZ3Ujh|ygCHP4QB;-I9A6sVJCn_XI3h`!4D3w+Av>I6ArOQh-D%#~j)aT_ z1fmB)$2}2o48tbFrkQFLje=^BBBTox*cMgk*~x(QbRq<@LI9-->3x7o2u}{nJz6J{AV|yvtrd-cNNSmIf?qwV zbPdAK0eC~Ohp^aGc>Rypqz7-_yct~ZPP8Q5>Aiyr8I4q-OqF`^5oqU|H{UYtX5PH{ z7HL=VTxjw!`4N{N%aQ`!`R1i>K@w_Bgr`HP< zuqv1@pyeTbmO{t`6?$~c<_`e++EGjLy(IaH62JsjxVir+A7A_#@5T>@FL<{53xVQd zKv46Z*j-@l2SgSk06Nkv?P6z>Tm<6h}FYt$ZbW5~Y%LW(WjGOLB4|1IvQSSOJIEE6N){nYA{T>j zUgqtTPA;QT0z+^-&pDtVX^0H~9!8Xj>%&W~F8_{;A!cJ!oiPNaiPTF>kI)0n6S6iW z1YHiKIr>1cLGZR7Df3KZAydu)2xfxm`_ee^_T5kT_|aFW9Vnb2lx&Gcr|A>K6R{({ z?m;Hdi7d8pV2A38#Ii-ekgC*qqAf?fFAtX;LKIHRctC8qaJ7F$ctNre#gJSONhm{@ zT=$r-$mE17f?;taih?`jj(lI&J#ZYwNa;gE&N)!5VhCn7QcylY(lEJ4Bq?$N*^y-i z3L=AqVH2W`nIm#f=MkPy5F8{B8Kf4`0cH|Z3mJ}VUQhs9YnUjJeY_CYPCw&H6b{j3VYJDEwa z3CASZ=?=%pOp;2lL$zRYVp9X@L==j>Lu!&b({c|Mpn>dc00mYB>EJ3vLfKVf16Kf4 zjTFOleUQ#>Ptgn_44Gxva~{Bhz9?FqoFCJ@Q1};;dnkK|hU*S%M`CkB@g!8S6jBTA za1U0_A|MUVMr&Knte~kRjaqNWZrFMaOD8dqKxIYpNYQshJ_YR%LlMP~cpAEqI@2j) zM0Z3xOh$M=Z%PL`k!dTNM#wN2=Lr@^BobpmxgCvZ2(cE@laxd-Bn9IRDKh$mI!J9& z>E5t;rm!Pcr*07#ZYV=4byKHSo>13&gge3?4__ChmrJBM6bLo6tw>)GlVMKc;E<81 zCf0}LdOA`nxpo@CZklL*Rt4T2#Yq_kQ4Y7b8SZ;h7jl{j*^TI^lV%jZ9nxE7Bpjdj zq>ctfEa`eN(gIkiR0Pa1m50MWxS<+dgjmK4G40SekzA7c5yCxUf^kIhh~`S?DddDi zLrB6$*_tIZrRI^${n)Rs^lVrNOLI^`#m-Y8s0z%}rW+@+?2+P#E+d~>iMT|wK`NFD z^cAT>$R25poRU=@p);)cn8Mqk15+hkXe4tLdIFqvM5Jwl!bpLXL}DFfv=;jGDS{)X zBUvlbAWIT*IcCY`s5;VuEFE1|R8LUG_HAvzu={YqR0-i6Kttz>_A&Ea-+%s}js5BD zxo_Xg|27ls_4i{I*z8Z!=zT%#ECn}rcW}2MDuv(v=Jk&@lzjPR;pXP%zpnoq*PTK@ Tj~)#%00000NkvXXu0mjfBMw>_ literal 0 HcmV?d00001