kaeza's/VanessaE's signs_lib mod
This is kaeza's and my signs library mod, originally forked from PilzAdam's version and rewritten mostly by kaeza to include a number of new features, then rewritten again a couple more times (finding its way into street_signs for a while, where it grew nicely :-) ).Originally the purpose of the above upstream mods was to just make default signs show their text, via an entity placed right in front. This library is a modernized, feature-enhanced version of that code, which not only allows creation of simple graphical signs, fully writable ones with visible text, and signs with both features, but which allows that text to be colored, and any reasonable size and text amount can be set in any given node definition, with two font resolutions available. Text can be placed anywhere on a sign, in any orientation, with any clipping shape you like, by simply designing the sign's model and text entity properly.
Almost any sign (any shape/model) can be placed-on and thus attached to almost any kind of suitable vertical or horizontal pole or fencepost (or things that resemble them, such as a Pipeworks pipe or tube), as well. Most signs that use the standard rectangular model can also be hung from a ceiling, or standing upright as a yard sign, as well as on posts/poles and walls. Holding shift while placing will force the sign to be placed flat on the target surface, bypassing post/yard/ceiling detection.
Full multi-color text is a key feature of this mod - simply write your text like normal, plus a "#" sign and number 0-9 or letter a-f (e.g. a single hexadecimal digit with a decimal value of - to 15), to change the color of the text that follows it. By default, the text will be displayed in whatever color the sign's default is set for in it's node definition (usually black or white). The color palette follows the good old industry-standard 16-color CGA console palette that we're all familiar with (e.g. the standard Linux terminal/DOS command prompt colors).
Arrow symbols are available by writing "^1" through "^8" (narrow shape) or "^a" through "^h" (wide shape).
Writable signs can be configured to allow for a double-wide font mode (accessible to the user via a switch in the sign's dialog box).
If a sign is writable, its text is visible even when it's flat on a ceiling or floor.
In the case of signs that sit on a pole or post, do note that the pole/post occupies its usual node space, while sign itself still occupies the node space in front of/next to that post. But this probably won't matter in practice, since the idea of a sign is to be read (so you wouldn't want to obscure/obstruct it anyway).
All signs can be designed and configured to allow any or all of these options, and MUCH more.
For complete details on how to use this library with your own mods, see README.md, MODELS.md, and API.md.
Depends: Minetest 5.0 or later, minetest_game default, basic_materials
Recommends: basic_signs, street_signs
Download: https://github.com/mt-mods/signs_lib/ar ... master.zip
...or browse the code: https://github.com/mt-mods/signs_lib
Install: Just copy the mod folder to the usual place and enable it.
License: LGPL v3 for code, CC-by-SA 4.0 for media and everything else.