- add setting 'enable_tag_support';
- add setting 'pipeworks_item_tag_name_limit' (default 30)
- add functions for get and set tag into item stack.
- add tags cleanup while item dropped in a world or placed in some inventory.
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
* Tubes can now be intentionally broken using a hammer
* Log messages have been improved slightly for tube repair
* Punching a broken tube now causes damage due to the sharp edges
Previously connect_sides was only used to choose the correct visual
model, but not during item transport. This allowed items to exit tubes
in directions without a visual connection and enter objects from sides
that should not be connectable according to connect_sides.
For example an item could enter a chest from the front, if a tube passed
there.
This change saves the connect_sides in the meta table of the object
whenever the visual representation is updated. When nothing is cached
yet, it uses the old behavior. That way it does not break existing
builds.
- Created `locale/template.txt`
- Fixed some typos
- Replace some `print("[pipeworks]"..` with `pipeworks.logger()`
- Removed "You hacker, you" from descriptions
that is, if there are more than X number of items in a tube. Default is
40 in a tube, but breaking is also disabled by default.
(original framework by Novatux, with changes by VanessaE)
The new function has no API compatibility with the old one, so give it
a different name to avoid confusion among caller mods, which need to
change their usage. Have a function under the old name that outputs a
helpful error message.
The filter-injectors used to always prefer to take items from the
beginning of the source inventory. Because items also tend to get placed
at the beginning of an inventory, this could lead to a chest+injector
buffer only passing through a trickle of one type of item, where other
item types are flowing in and getting later inventory slots. So now,
the sequencing of source inventory slots is configurable, per-injector,
by form. In addition to the old priority mode, there's now a random
mode and a rotation mode.
Incidentally refactor the filter-injector code, to avoid duplication
between the itemwise and stackwise variants.
Previously, some tube types were named based on their function, and others
based on some arbitrarily-chosen material used in their construction,
with no meaningful system governing which was in each category. With this
change they are consistently named according to function. Naming style
is also made consistent in the wording that identifies tubes as such,
and in capitalisation.
Use the "wielditem" visual type for non-node items, with a fixed 45
degree yaw. This matches the recent change of dropped-item entities from
"sprite" visual to "wielditem".