Commit Graph

152 Commits

Author SHA1 Message Date
Vanessa Ezekowitz
8df8e44a0c add experimental support for calling an arbitrary function
in the spawning ABM after all other biome tests and general checks (aside from
spawning at the sides/bottom/top of a node) are done.
2013-01-29 16:22:33 -05:00
Vanessa Ezekowitz
320154a3a8 another wording tweak 2013-01-29 01:58:20 -05:00
Vanessa Ezekowitz
934e83f3a9 forgot to document the max_count variable. 2013-01-29 01:56:22 -05:00
Vanessa Ezekowitz
8015cc24a5 Added experimental settings to allow for a humidity perlin layer
and to allow the spawned object to *replace* the node it would otherwise
spawn on top of.

Also, extended API to allow for a node to be directly named in the
register_generate_plant() call.
2013-01-29 00:13:03 -05:00
Vanessa Ezekowitz
18ef2a32e4 Forgot to add the bit of code needed to make the facedir parameter
in the spawn_on_surfaces call actually work.  Fixed.
2013-01-27 15:06:11 -05:00
Vanessa Ezekowitz
68a6ce43a7 Changed plants_lib API to require a table argument when not using legacy
calling options.  This opens the door for even more features in the future.
Changed flowers, junglegrass, poisonivy to match.

Made plants lib faster in some places, especially the surface-hunting
algorithm, and especially over water.  Fixed a few other misc. bugs.

Made growth code properly execute all biome-control code before executing
any string-named function or spawn_tree().

Tuned flowers settings.  Made flowers require at least some light to spawn,
made waterlilies require shallower water.  Fixed a bug in water depth detection
and made water depth depend on whether the bottom of the water area is dirt,
dirt with grass, or sand, rather than just anything.

Made waterlilies randomly rotate on spawning to break up the patterns (now has
16 orientations with the help of nodeboxes and facedir, requires only 3 new
nodes). Smoothed edges of the regular waterlily texture.  Made all flowers and
water- lilies spawn using only 3 ABM calls instead of 8.

Got rid of colon prefix node def overrides on all plants, since this is a
modpack now instead of an integrated mod.  Fixed a misspelled folder name for
poisonivy.

Fixed a bug in the wall detection routine - it returned the last wall found,
not the first.

Made the top-side-check for air only apply when spawning on top of the
target rather than its sides/bottom.

Many other features and enhancements have been made.  Too many to list here.
Please see API.txt for details.
2013-01-25 23:16:54 -05:00
Vanessa Ezekowitz
3024c78c2b fixed a bug where plants_lib depended on poisonivy for a table it needed.
thanks to bas080 for spotting that one.
2013-01-24 02:29:23 -05:00
Vanessa Ezekowitz
a8491ae232 added some code to further trim the number of nodes that have to be checked.
This causes trees to be just a tad more sparse than intended, but greatly
speeds up the map generator.

Worst case drops from thousands of nodes to test per tree type to a 5-15 nodes
per tree type.
2013-01-21 23:41:02 -05:00
Vanessa Ezekowitz
07f426ae45 disable debug by default 2013-01-20 14:53:22 -05:00
Vanessa Ezekowitz
592d0df84f fixed bugs in use of debugging function from having class-ified it. 2013-01-20 14:44:21 -05:00
Vanessa Ezekowitz
e327630ea5 Fixed a minor bug, made growing abm always check for grow_nodes
under the plant to be grown and to check for air above it.
2013-01-20 14:16:05 -05:00
Vanessa Ezekowitz
693f59a3fc moved some forgotten print statements into debugging facility 2013-01-20 13:56:13 -05:00
Vanessa Ezekowitz
147aee56db move debugging into a separate function, disable by default 2013-01-20 13:51:09 -05:00
Vanessa Ezekowitz
34b7ad4f32 Fixed a bug in direct growing of trees 2013-01-20 13:37:58 -05:00
Vanessa Ezekowitz
40b4cc677a forgot to set default value for rarity control, 50. 2013-01-20 12:02:59 -05:00
Vanessa Ezekowitz
5abcd9034e Added random-number-based rarity control 2013-01-20 12:01:07 -05:00
Vanessa Ezekowitz
b41cf5570c updated the date in init.lua 2013-01-20 01:38:43 -05:00
Vanessa Ezekowitz
64731d8742 another minor wording change to account for an API bugfix 2013-01-20 01:26:11 -05:00
Vanessa Ezekowitz
3c9fcf3bfc Updated API.txt to accoutn for the latest updates 2013-01-20 01:23:39 -05:00
VanessaE
e8ade417ee Merge pull request #1 from jojoa1997/patch-1
adds a wool recipe for cotton
2013-01-19 22:12:04 -08:00
Vanessa Ezekowitz
b434ff4370 Added option to allow plants_lib to directly spawn a tree if passed a table
instead of a function name in the appropriate field.
2013-01-19 23:21:33 -05:00
jojoa1997
bce47c2ce4 adds a wool recipe for cotton 2013-01-19 17:51:09 -05:00
Vanessa Ezekowitz
1229b10014 sped up mapgen functions massively. I think it's suitable
for general use now!
2013-01-19 14:24:15 -05:00
Vanessa Ezekowitz
0580a2f416 just a minor logic tweak to try to speed the mapgen code up further. 2013-01-19 13:12:07 -05:00
Vanessa Ezekowitz
21e43912ff tweaks to the documentation/comments for the mapgen function 2013-01-19 03:26:45 -05:00
Vanessa Ezekowitz
7db6ed7fb9 Documented the new mapgen-based spawn function. 2013-01-19 03:19:43 -05:00
Vanessa Ezekowitz
a83979e342 sped up the biome evaluation code somewhat, but it's still slow. 2013-01-19 02:10:26 -05:00
Vanessa Ezekowitz
7dd3ec2525 Added a function to let one spawn plants at mapgen time,
but it's slow as molasses in January.  Not recommended for
general use yet.
2013-01-19 00:45:46 -05:00
Vanessa Ezekowitz
4eff513bbd Extended the API yet again, this time adding a Perlin-based temperature map
(two new variables defining min and max temperature, normalized to 0.53 = 0
degrees centigrade).

The values used for this new Perlin layer come from Splizard's Snow Biomes mod,
so other mods that use plantlife to create biomes should be able to blend
nicely with that mod.
2013-01-12 00:47:50 -05:00
Vanessa Ezekowitz
94770d713b extended the API again - this time adding a function to allow a custom check
for air surrounding the plant spawn location (defaults to 1, just the target
node).  Values of 1 and 9 for the two new variables would check the 3x3 area
around the spawn location.  Don't make these numbers too large or it will
slow the abm down.
2013-01-11 11:52:34 -05:00
Vanessa Ezekowitz
b0de25407d Expanded the API to allow for additional biome controls.
See API.txt for details.
2013-01-09 21:33:37 -05:00
Vanessa Ezekowitz
9cb6f594ee forgot to save one seed diff change (flowers) 2013-01-04 19:36:33 -05:00
Vanessa Ezekowitz
af7aaca77a moved perlin seeddiff settings to respective mods' init.lua's, tweaked default
perlin values to be the same as used in the game's mapgen for spawning dry
shrubs and jungle grass, so that jungle grass mod will replenish the game's
biomes.
2013-01-04 18:56:09 -05:00
Vanessa Ezekowitz
e2794f71f4 Added feature to API to allow for limits on spawning altitude also. None of
the included plants use this, it's mainly for the conifers mod.
2012-12-29 17:24:47 -05:00
Vanessa Ezekowitz
f9df1b5965 Updated API to allow for height controls. 2012-12-17 16:01:16 -05:00
Vanessa Ezekowitz
7006416227 finished splitting up the three components into separate folders, by moving
texture files to their respective components' folders (<f>/textures).  Also,
began working on extending the API for the growing code to allow for checking
for the height of a node.  Poisonivy is the only component that uses it for
now; this is more intended to be used with nature pack eventually.
2012-12-09 22:02:30 -05:00
Vanessa Ezekowitz
01270a26f0 minor tweak to API text to account for the renamed plants_lib module. 2012-12-04 19:39:42 -05:00
Vanessa Ezekowitz
c816c9c352 deleted un-renamed folder (forgot the -a switch in previous commit) 2012-12-04 19:32:44 -05:00
Vanessa Ezekowitz
498dad83e4 Renamed the "plants" module to "plants_lib". Any modder that directly depends
on that library need only adjust their mods' depends.txt files.  I've already
done this for flowers, junglegrass and poisonivy as included in this modpack,
so any mod that depends on one of *those* needs no changes at all.  No changes
to the API or any functionality.
2012-12-04 19:29:23 -05:00
Vanessa Ezekowitz
2942f2366f Split the flowers/junglegrass/poisonivy components into separate folders,
leaving the plants folder as the primary API code and glue between them.  Any
of the three may be deleted to disable them if so desired.
2012-12-03 17:20:50 -05:00
Vanessa Ezekowitz
9e6e47cb99 removed a couple of *~ files. 2012-12-03 12:53:52 -05:00
Vanessa Ezekowitz
eb26c9d966 Fixed waterlilies to only grow in water about 3 nodes deep or less. Decreased
guard radius around them to allow them to get a bit more dense.  Decreased the
perlin limit slightly, makes the biomes a little bigger.
2012-12-02 19:22:33 -05:00
Vanessa Ezekowitz
46ae097460 one of the previous changes screwed up spawning jungle grass while trying to
fix the waterlily bug.  Reverted it.

This should, however, finally fix jungle grass turning into dry shrubs when it
shouldn't, and the list of growing surfaces seems to work properly now.  Will
fix the waterlily bug later.
2012-12-02 17:51:17 -05:00
Vanessa Ezekowitz
e3a9d05871 Fixed a bug in the placement of seaweed, fixing it extends the API slightly.
Updated API.txt accordingly.
2012-12-02 02:09:31 -05:00
Vanessa Ezekowitz
13534d1631 Explained a few of the spawn abm's defaults 2012-12-01 23:17:13 -05:00
Vanessa Ezekowitz
0f25c621fc Added API documentation. 2012-12-01 19:26:53 -05:00
Vanessa Ezekowitz
af7c2894ae Added default setting for seed_diff (0). Accidentally left it out, it is
needed to allow old mods to use the new function without changes.
2012-12-01 18:19:19 -05:00
Vanessa Ezekowitz
ae0374cfc5 redme tweak 2012-11-30 00:57:55 -05:00
Vanessa Ezekowitz
6b8bb9ff61 Made growing plants require the same surfaces under them as are needed to
spawn, so plants places on e.g. cobble or a flower poit don't change.
2012-11-30 00:46:27 -05:00
Vanessa Ezekowitz
91b196a72f readme tweaks, added notes about perlin noise. 2012-11-29 23:13:13 -05:00