Somehow an ent can get into a state where
it needs to set velocity but doesn't know what
velocity to set; velocities are transient
phenomena anyway, so just ignore this.
Instead of checking for and immediately
completing a craft, the API can be told to
search for a recipe and return a function that
can be used to commit it later. This way,
we can search for a valid recipe during the
"check" phase of a craft check and then
commit it during the "after" phase.
Setting the water sink rate to zero seems satisfactory
enough. Players can now tread water without
sinking. It DOES feel a little like you're just hovering
in water instead of bobbing, but I guess it's the best
we can expect from the engine right now.
16 total mask positions rather than like 150. This
should (1) cut back on video memory leakage, and
(2) reduce the probability of client lag due to drawing
dynamic textures all the time, after it's had a little
time to "warm up".
- Pass a def table instead of a function
- Retroactive defs will also scan over all existing
definitions and have an opportunity to modify them
at time of registration.
We want to start requiring translation informing to
happen at loadtime, so we can sort strings into
groups by mod, so we can (1) keep the base NC
locale data clean of optional mods, and (2) manage
translations for mods separately.
If a player is close enough to an event when it
happens (withing "likely hearing" distance) then if
they later punch the node then they can "collect"
the discovery.
The idea is that if a player hears the sound of
something happening, then they might go and
investigate and discover the thing they thought
they had left there isn't what's there anymore.
In retrospect I may want to combine this with a
limited form of the visual witnessing, just as there
may be events that a player is less likely to touch
in aftermath, or may not be practical to (e.g.
if what's left behind is air)
These may be especially valuable because some
players may be used to dropping items ONLY using
the formspec inventory and may have forgotten that
they even have key bindings for this; the hint should
motivate them to search for a way.
This reverts commit 03f8d32967cc35e418d8ffb46b00f65eaf34e685.
Apparently this causes item destruction: when stack nodes are
secondarily dug by a rake, their items are not given to the
player.
It seems as though the new intercept hooks are catching
everything, and since this logic was disabled hardly anyone
noticed. The few rearrangements that were happening were
probably caused by inventory clear/restore mods unrelated to
NC operation. This code was quite complex and removing it
will simplify the project.