From b3f26b85cb75ab2e09e4e8f4b6c75e6400eeab6a Mon Sep 17 00:00:00 2001 From: BlockMen Date: Mon, 16 Sep 2013 21:23:16 +0200 Subject: [PATCH] Version 0.1 --- .gitattributes | 22 +++++ .gitignore | 215 +++++++++++++++++++++++++++++++++++++++++++++++++ README.txt | 24 ++++++ depends.txt | 1 + init.lua | 81 +++++++++++++++++++ 5 files changed, 343 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 README.txt create mode 100644 depends.txt create mode 100644 init.lua 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/README.txt b/README.txt new file mode 100644 index 0000000..f00d605 --- /dev/null +++ b/README.txt @@ -0,0 +1,24 @@ +Minetest mod "Pyramids" +==================== +version: 0.1 Beta + +License of source code and textures: WTFPL +----------------------------------------- +(c) Copyright BlockMen (2013) + + +Contributors: +------------- +cHyper (mine deep can be set by .conf) + +This program is free software. It comes without any warranty, to +the extent permitted by applicable law. You can redistribute it +and/or modify it under the terms of the Do What The Fuck You Want +To Public License, Version 2, as published by Sam Hocevar. See +http://sam.zoy.org/wtfpl/COPYING for more details. + + +Using the mod: +-------------- + +This mod adds randomly spawned pyramids in deserts. The pyramids are very rare and contain a chest with stuff. \ No newline at end of file diff --git a/depends.txt b/depends.txt new file mode 100644 index 0000000..331d858 --- /dev/null +++ b/depends.txt @@ -0,0 +1 @@ +default \ No newline at end of file diff --git a/init.lua b/init.lua new file mode 100644 index 0000000..29d1da6 --- /dev/null +++ b/init.lua @@ -0,0 +1,81 @@ +local chest_stuff = { + {name="default:apple", max = 3}, + {name="farming:bread", max = 3}, + {name="default:steel_ingot", max = 2}, + {name="default:gold_ingot", max = 2}, + {name="default:diamond", max = 1}, + {name="default:pick_steel", max = 1}, + {name="default:pick_diamond", max = 1} + +} + +local function fill_chest(pos) + minetest.set_node(pos, {name="default:chest"}) + minetest.after(2, function() + local n = minetest.get_node(pos) + if n ~= nil then + if n.name == "default:chest" then + local meta = minetest.get_meta(pos) + meta:set_string("formspec",default.chest_formspec) + meta:set_string("infotext", "Chest") + local inv = meta:get_inventory() + inv:set_size("main", 8*4) + for i=0,2,1 do + local stuff = chest_stuff[math.random(1,#chest_stuff)] + local stack = {name=stuff.name, count = math.random(1,stuff.max)} + if not inv:contains_item("main", stack) then + inv:set_stack("main", math.random(1,32), stack) + end + end + end + end + end) +end + + +local function make_gang(pos) +local loch = {x=pos.x+10,y=pos.y+7, z=pos.z+10} + +for iy=0,6,1 do + for ix=0,2,1 do + for iz=0,2,1 do + minetest.remove_node({x=loch.x+ix,y=loch.y-iy,z=loch.z+iz}) + end + end +end +fill_chest({x=pos.x+10+math.random(0,2),y=pos.y+1,z=pos.z+10+math.random(0,2)}) + + +end + + + +local function make(pos) +for iy=0,10,1 do--5,7 + for ix=iy,22-iy,1 do--12,16 + for iz=iy,22-iy,1 do --12,16 + minetest.set_node({x=pos.x+ix,y=pos.y+iy,z=pos.z+iz}, {name="default:sandstone"}) + + end + end +end +make_gang(pos) +end + + + +minetest.register_on_generated(function(minp, maxp, seed) + + local mpos = {x=math.random(minp.x,maxp.x), y=math.random(minp.y,maxp.y), z=math.random(minp.z,maxp.z)} + if mpos.y <= 0 then return end + if minetest.get_node(mpos) and minetest.get_node(mpos).name == "default:desert_sand" then + make(mpos) + end + + mpos = {x=math.random(minp.x,maxp.x), y=math.random(minp.y,maxp.y), z=math.random(minp.z,maxp.z)} + if mpos.y <= 0 then return end + if minetest.get_node(mpos) and minetest.get_node(mpos).name == "default:desert_sand" then + mpos.y = mpos.y-3 + make(mpos) + end +end) \ No newline at end of file