sorcery  Diff

Differences From Artifact [4ff6f034b6]:

  • File data/gods.lua — part of check-in [3f6a913e4e] at 2020-09-29 12:40:28 on branch trunk — * remove former hacky registration system, replace with consistent and flexible API; rewrite metal/gem generation to take advantage of this new API; tweaks to init system to enable world-local tweaks to lore and sorcery behavior * initial documentation commit * initial steps towards calendar - add default date format, astrolabe; prepare infra for division/melding/transmutation spells, various tweaks and fixes (user: lexi, size: 5325) [annotate] [blame] [check-ins using]

To Artifact [fc9658990d]:


            1  +local L = sorcery.lib
     1      2   return {
     2      3   	harvest = {
     3      4   		name = "Irix Irimentari" --[[
     4      5   			an old Elerian harvest goddess, Irix Irimentari has watched vigilantly over the fields of her worshippers since before the Second Age. she favors alcoholic beverages as tribute, and has been known to perform blessings for sorcerers when sufficiently inebriated. she harbors a particular hatred of daemons and those who spill the blood of farmers.
     5      6   
     6      7   			legend says that a barbarian lord high on opium once wandered into a temple of Irix and left the severed head of a local shepherd on the her altar. this desecration so enraged the goddess that the barbarian's entire tribe soon starved horribly to death, their crops refusing to take root, and their stolen breads turning to ash in their mouths.
            8  +
            9  +			in the mystic arts, she is the patron of Alchemy. it is said that Irix
           10  +			Irimentari herself invented alchemy when she brewed the first mead.
     7     11   		]];
     8     12   		laziness = 5;
     9     13   		stinginess = 3;
    10     14   		generosity = 10;
    11     15   		color = {214, 255, 146};
    12     16   		idol = {
    13     17   			desc = "Harvest Idol";
................................................................................
    33     37   				"flowerpot:flowers_chrysanthemum_green";
    34     38   				"flowerpot:flowers_dandelion_white";
    35     39   				"flowerpot:flowers_dandelion_yellow";
    36     40   			}};
    37     41   			["sorcery:dagger"] = {17, "sorcery:dagger_consecrated"};
    38     42   			["sorcery:oil_mystic"] = {9, "sorcery:oil_purifying"};
    39     43   			["sorcery:potion_water"] = {4, "sorcery:holy_water"};
           44  +			["default:paper"] = function(ctx)
           45  +				local stack = ItemStack('sorcery:recipe')
           46  +				local mode = select(2,L.tbl.pick{'cook','craft','infuse','grind'})
           47  +				sorcery.cookbook.setrecipe(stack, mode, nil, {
           48  +					pred = function(c)
           49  +						local me = ctx.god
           50  +						if c.mod == 'farming' or
           51  +							minetest.get_item_group(c.item, 'sorcery_potion') ~= 0 or
           52  +							minetest.get_item_group(c.item, 'sorcery_oil') ~= 0 or
           53  +							minetest.get_item_group(c.item, 'sorcery_grease') ~= 0 or
           54  +							minetest.get_item_group(c.item, 'sorcery_extract') ~= 0 or
           55  +							me.sacrifice [c.item] or
           56  +							me.consecrate[c.item] then
           57  +							print(' !! accepted')
           58  +							return true end
           59  +						print(' -- rejected')
           60  +					end;
           61  +				})
           62  +				return 1, stack
           63  +			end;
    40     64   			-- ["default:steel_ingot"] = {15, "sorcery:holy_token_harvest"};
    41     65   		};
    42     66   		sacrifice = {
    43     67   			-- beattitudes
    44     68   			["farming:straw"           ] = 1;
    45     69   			["farming:bread_slice"     ] = 1;
    46     70   			["farming:bread"           ] = 2;
................................................................................
   130    154   				Force = {favor=50, cost=5, chance=7};
   131    155   				Longevity = {favor=65, cost=7, chance=3};
   132    156   			};
   133    157   			tools = {
   134    158   				rend = {favor=80, cost=15, chance=20};
   135    159   			};
   136    160   		};
          161  +		laziness = 2;
   137    162   		generosity = 4;
   138    163   		stinginess = 9;
   139    164   		idol = {
   140    165   			desc = "Blood Idol";
   141    166   			width = 0.7;
   142    167   			height = 1.3;
   143    168   			tex = {