diff options
author | Vanessa Ezekowitz <vanessaezekowitz@gmail.com> | 2016-04-01 20:02:19 -0400 |
---|---|---|
committer | Vanessa Ezekowitz <vanessaezekowitz@gmail.com> | 2016-04-01 21:09:33 -0400 |
commit | da66780a569712c23ae4f2996cfb4608a9f9d69d (patch) | |
tree | 217556029a78bc23ad4564720afc86de97228a04 /unifieddyes | |
parent | 615b22df4d423aded3613db7716943a2f389b047 (diff) | |
download | dreambuilder_modpack-da66780a569712c23ae4f2996cfb4608a9f9d69d.tar dreambuilder_modpack-da66780a569712c23ae4f2996cfb4608a9f9d69d.tar.gz dreambuilder_modpack-da66780a569712c23ae4f2996cfb4608a9f9d69d.tar.bz2 dreambuilder_modpack-da66780a569712c23ae4f2996cfb4608a9f9d69d.tar.xz dreambuilder_modpack-da66780a569712c23ae4f2996cfb4608a9f9d69d.zip |
copy all standard Dreambuilder mods in from the old subgame
(exactly as last supplied there, updates to these mods will follow later)
Diffstat (limited to 'unifieddyes')
92 files changed, 1788 insertions, 0 deletions
diff --git a/unifieddyes/LICENSE b/unifieddyes/LICENSE new file mode 100644 index 0000000..4eb7598 --- /dev/null +++ b/unifieddyes/LICENSE @@ -0,0 +1,282 @@ + + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + diff --git a/unifieddyes/README b/unifieddyes/README new file mode 100644 index 0000000..eba6d52 --- /dev/null +++ b/unifieddyes/README @@ -0,0 +1,248 @@ +VanessaE's Unified Dyes +======================= + +The purpose of this mod originally was to supply a complete set of colors for +Minetest mod authors to use in their recipes. Since the default dyes mod that +is supplied with Minetest "common" is now usable (via flowers, also included in +"common"), this mod has become more of an extension pack. + +Unified Dyes expands the standard dye set from 15 to 90 colors. + +IMPORTANT: This mod is not intended to suggest that you should use the entire +palette. Rather, I was hoping people would just choose maybe the dozen or so +most useful colors to use in their mods. + +Dependencies: default and dye from Minetest "common". This mod will NOT work +without these. This mod will NOT work without these. The default dye mod is +normally activated only in the standard "build" and "minetest_game" games, or perhaps if +someone has a modpack or game that includes them. + +Recommends: flowers from common. + +License: GPL 2.0 or above + +Install: Unzip the distribution file, rename the resultant +VanessaE-unifieddyes-blahblah folder to just "unifieddyes", and move it into +Minetest's mods folder. + +The Palette: + +[ http://digitalaudioconcepts.com/vanessa/hobbies/minetest/screenshots/color-swatches.png ] +[ The official palette, showing 84 colors and 5 greys. ] + +In the image above, the "50%" markings on the left next to each shade mean 50% +saturation for all hues in that shade line. Note that the "light" shades don't +have (or need) that variant. For the greys, the percentages shown are of +brightness relative to pure white. There are three special cases: Light red +has been aliased to default pink dye, and dark green has been aliased to +default dark greey dye. Brown dye also exists in the default set, it's just +not shown in the palette above. + + +Usage instructions, technical information +========================================= + +Getting Started +--------------- + +First thing's first: you're going to need to harvest some materials to make the +dyes from. For this, you need one or more of the following: roses (red), +tulips (orange), yellow dandelions (yellow), cactus (green), geraniums (blue), +violas (purple), coal (black), or white dandelions (white). Simply wander +around your world and collect whichever of the above you need to get your +colors. + +[ http://digitalaudioconcepts.com/vanessa/hobbies/minetest/screenshots/unifieddyes1.png ] +[ The 8 base colors directly obtainable from a material in the world. ] + +Simply place one of the above materials into the crafting grid to obtain four +portions of dye in that color From those initial 8 colors, you can directly +fashion another 11, for a total of 19 standard colors (including the various +greys): + +[ http://digitalaudioconcepts.com/vanessa/hobbies/minetest/screenshots/unifieddyes2.png ] +[ The complete 19-color standard set. ] + +The standardized colors and their crafting methods are as follows: + +* Red (0°): one rose +* Orange (30°): one tulip, or put one red dye and one yellow dye into the + crafting grid to mix them (yields 2) +* Yellow (60°): one yellow dandelion +* Lime (90°): mix yellow + green (yields 2) +* Green (120°): one cactus, or mix yellow + blue (yields 2) +* Aqua (150°): mix green + cyan (yields 2) +* Cyan (180°): mix green + blue (yields 2) +* Sky blue (210°): mix cyan + blue (yields 2) +* Blue (240°): one geranium +* Violet (270°): one viola, or mix blue + magenta (yields 2). +* Magenta (300°): mix blue + red (yields 2) +* Red-violet (330°): mix magenta + red (yields 2) + +* Black (7.5%): one piece of coal +* Dark grey (25%): mix one white + two black (yields 3) +* Medium grey (50%): mix one white and one black (yields 2) +* Light grey (75%): Mix two white and one black (yields 3) +* White (95%): one white dandelion. + +The degree figures are the colors' hues on a standard HSV color wheel, and are +what I used in the textures supplied with this mod. For the greys, the figures +in parenthesis indicate the intended brightness of the shade, relative to +white. Note that black and white don't go all the way to the bottom/top of the +scale, as doing so may crush some details in textures made in those shades (see +below, regarding semi-automatic texture generation). + + +Darker/Lighter colors +--------------------- + +To obtain a dark (33%) version of a given color, use two portions of black dye +along with the base color from the list above, which yields three portions of +the final color. + +To obtain a medium-brightness (66%) version of a given color, mix one portion +the base color with one portion of black dye (for example, medium lime = lime + +black). All such mixtures yield two portions of the final color. + +To obtain a light (150% over full) version of a given color, mix one portion of +the base color with one portion of white dye. Yields 2 portions of the final +color. + + +Low-saturation colors +--------------------- + +To get the low saturation (50%) version of one of the base colors, mix one or +more of white, black, or a shade of grey with the desired base color: + +Dark, low saturation: dark grey dye + color (yields 2), or two blacks + 1 white ++ color (yields 4). For example, dark, low-saturation red = red + dark grey, +or red + two black + one white. + +Medium brightness, low saturation: medium grey dye + color (yields 2), or black ++ white + color (yields 3). For example, medium, low-saturation green = green ++ medium grey, or green + black + white. + +Full, low saturation: light grey dye + color (yields 2), or 1 black + 2 whites ++ color (yields 4). For example, bright, low-saturation blue = blue + light +grey, or blue + black + 2 white. + +There is no low-saturation version of the "light" colors. + +Red + white always returns default pink dye, and black + green always returns +default dark green dye. + + +RGB values +---------- + +All RGB values and filenames for all colors and shades of grey are represented +in the file "colors.txt" (which was generated with the bash script +"listcolors.sh"), included in the distribution directory. Note that +listcolors.sh is an example only and was written for a different set of +textures than what Unified Dyes includes now. + + +Misc. Notes +----------- + +If you need to use /give commands, the item names for the standard set of 12 +regular "full" colors (plus pink, brown, and dark green) is simply "dye:color", +e.g. "dye:red", "dye:pink", or "dye:skyblue". Greys have a similar naming +convention: dye:white, dye:light_grey, dye:grey, dye:dark_grey, or dye:black. + +For everything beyond those initial 19 colors, the item names are of the +following format: + +unifieddyes:{"light_" or "medium_" or "dark_"}{color}{nothing or "_s50"}. + +For example, low saturation dark yellow is "unifieddyes:dark_yellow_s50", while +light normal-saturation red-violet would be "unifieddyes:light_redviolet". + +See the texture filenames in the textures/ folder for further hints - all of +the item names follow the same format as the corresponding filenames, save for +having a colon (:) instead of the first underscore (_). + + +Semi-automatic generation of textures +===================================== + +The texture generator script +---------------------------- + +Obviously, in order for this mod or the above template to be useful, you'll +need textures. If you plan to support the entire range of colors offered by +Unified Dyes, there is a BASH script included with this mod as well with the +above template named gentextures.sh, which will, with an appropriately- colored +and appropriately-named source texture, and possibly an overlay texture, +generate a complete set of colored and greyscale textures. + +The script requires bc (the calculator program) to handle some basic math +regarding the hue adjustments, and Imagemagick's "convert" program handles all +of the actual conversions. + +First thing's first though - you need source textures. Using your favorite +image editor, create a single version of your desired texture. Draw it in the +brightest, deepest shade of RED you can muster without losing any detail, and +save it out. Ideally, you will want the average color of the texture, when +taking into account all bright and dark areas, to be as close as possible to +the hex value #FF0000 (0 degrees, 100% saturation, pure red) without losing any +appreciable #detail. + +Save this source texture out as a PNG image, with a filename of +"whatever_base.png", where "whatever" is the one-word name of your mod - for +example, mymod_base.png. + +If you want to add an image on top of the colored blocks, such as a frame, +which you want to be the same color throughout all of the textures, create it +now. It should consist only of those parts of the textures that you want to +leave unchanged, with some level of alpha transparency everywhere else, +depending on how much of the image needs to remain unchanged. Save it out as a +PNG image, using any filename you want, for example myoverlay.png. + +Now, use chmod to make the script executable, if necessary, and run it. + +If you don't need the overlay, you just need to supply one command line +argument: the base name of your mod. The script will use that parameter as the +basis of its texture filenames. For example: + +./gentextures.sh mymod + +The script will then look for mymod_base.png and copy and convert it into +things like mymod_red.png, mymod_dark_blue.png, and so on. + +If you want to use an overlay also, skip the above step and run the script with +the base name as the first parameter, and the complete filename of your overlay +as the second instead. For example: + +./gentextures.sh mymod myoverlay.png + +Otherwise, the program will iterate through all of the hues and shades that are +supported by unifieddyes (though this is done manually, not by reading anything +from the mod), compositing your overlay image in after the recolor step, if +you're using that option. + +All of the output files will be placed in a new folder, generated-textures/ in +the current directory. Note that the script looks for the above files in the +current directory also. + +The script has a third mode as well: + +./gentextures.sh -t mymod myoverlay.png + +In this mode, the script will leave the base texture mymod_base.png unchanged, +and instead will rotate the colors of the overlay image and then composite that +onto the base texture. The same color changes will happen with the overlay in +this mode, so it's a good idea to make the overlay some fairly saturated shade +of red. Along with that, the base image should be some neutral color; any +color is fine as long as the result is what you wanted. + +The program attempts to verify that the files you've asked it to use will +actually work, and will exit immediately if the any are invalid, missing, etc. + +Use your favorite image browser or file manager to review the results in +generated-textures/, and if they're right, copy them over to the textures/ +folder in your mod. + +Note that this script does not generate brown and pink variations of your base +texture - you'll have to do those two manually. diff --git a/unifieddyes/bottle_overlay.png b/unifieddyes/bottle_overlay.png Binary files differnew file mode 100644 index 0000000..e3341a6 --- /dev/null +++ b/unifieddyes/bottle_overlay.png diff --git a/unifieddyes/changelog.txt b/unifieddyes/changelog.txt new file mode 100644 index 0000000..f556fb9 --- /dev/null +++ b/unifieddyes/changelog.txt @@ -0,0 +1,101 @@ +Changelog +--------- + +2013-04-30: Multiple changes + +* Refactored the code to use default "common" dyes +rather than directly from flowers. + +* This mod now depends on "default" and "dye" from the Minetest common +sub-game. Since the default dye mod uses default flowers, this mod no +longer checks for what version of flowers you're using, or even depends +on it. + +* Bottle-based textures have been replaced with piles of dye powder, based +on the default red dye texture. + +* All dyes are obtained by crafting, not cooking, for consistency with the +default dye mod. + +* The somewhat-complicated method using separate "pigment" powders, glass +bottles and "liquid dye base" has been done away with. Now it's just +dry dye powders, as with the default dye mod. + +* Also, got rid of the whole paint scheme, in favor of dry powders. + +* All old dyes, paints, and Unified Dyes pigment powders have been aliased +back to the standard dye powders. + +2012-07-26: Added a "version" check for the flowers dependency: If the +flowers mod defines "flowers:flower_geranium" (as is the case with my +update of 2012-08-01), then those will be used to get blue pigment +powder, and violas will produce violet powder, both of which can be +directly used to create their respective liquid dye colors. If it is +not defined (e.g. the user has an older version of the flowers mod), +then violas produce blue dye powder. Violet dye can still be formed by +mixing blue and magenta or blue and red dyes, as before. + +2012-07-26: Better bottle textures. Note that these are blended against +the 50% grey field they normally appear on in the inventory display, so +they will show artifacts if you try to wield them. Don't do that. :-) + +2012-07-26: Split off glass bottles into a separate mod, "Vessels". +This mod now depends on it. + +2012-07-25 (almost immediately after): Fixed a copy&paste error for +black dye. + +2012-07-25: Replaced missing craftitem entries and got rid of some +redundant code left over from last update. Added group settings for all +dyes according to recently-published standard. Fixed a few typos in +item descriptions, and straightened up capitalization. + +2012-07-24: Added some extra steps to the dye-making process, added +recommendation that empty bottles be given back to the player on use. +Dyes are still easy to make, they just require a more realistic (and +this, harder) process now. + +2012-07-16 (a bit later): fixed a minor error in generation of medium +grey. + +2012-07-16: Added a new set of colors, "light" (brightness of 150% +versus the 'full' shade), for a total of 89. No 50% saturation version +of this set. Added a palette image showing the full set of colors. + +2012-07-13: Fixed some missing commas. + +2012-07-13: Added a script to aid in the generation of new textures for +mods that depend on unifieddyes. Moved this changelog from the forum +into the distribution directory. Rewrote the README to contain +everything from the forum post, and expanded it to document the new +generation script. + +2012-07-12 (a bit later): added groups = {dye=1}, to each +register_craftitem call, to make it easier for other mods to identify +the dyes and categorize them. + +2012-07-12: moved project to github. + +2012-07-11 (continuing): Tweaked the script to remove titanium dioxide +from the output, since it isn't intended to be directly used as a +dye/paint (but rather, to make paint that can then be used). +Regenerated colors.txt. + +2012-07-11 (immediately after): The script was reading the wrong pixel +from the image, resulting in lighter-than-correct colors. Fixed it and +regenerated the colors.txt file. + +2012-07-11: Added a script to list all of the colors and their RGB +values and texture filenames, and a text file containing the output +thereof. + +2012-07-08 (a bit later): deleted a few unused files (copy&paste error). + +2012-07-08: Major boost in the number of available colors - was 8, now +77. Should cover pretty much the entire spectrum of colors one might +use in this game. + +2012-07-02: Deleted a few redundant files (leftovers from when I wanted +to merge in flowers and then changed my mind). + +2012-06-26: Initial upload. diff --git a/unifieddyes/colors.txt b/unifieddyes/colors.txt new file mode 100644 index 0000000..f05b8a4 --- /dev/null +++ b/unifieddyes/colors.txt @@ -0,0 +1,90 @@ + + +Full-saturation colors: +----------------------- + +dark aqua 0, 84, 42 unifieddyes_dark_aqua.png +dark blue 0, 0, 84 unifieddyes_dark_blue.png +dark cyan 0, 84, 83 unifieddyes_dark_cyan.png +dark green 0, 84, 0 unifieddyes_dark_green.png +dark lime 43, 84, 0 unifieddyes_dark_lime.png +dark magenta 84, 0, 83 unifieddyes_dark_magenta.png +dark orange 84, 42, 0 unifieddyes_dark_orange.png +dark red 84, 0, 0 unifieddyes_dark_red.png +dark redviolet 84, 0, 42 unifieddyes_dark_redviolet.png +dark skyblue 0, 42, 84 unifieddyes_dark_skyblue.png +dark violet 43, 0, 84 unifieddyes_dark_violet.png +dark yellow 84, 83, 0 unifieddyes_dark_yellow.png +medium aqua 0,169, 84 unifieddyes_medium_aqua.png +medium blue 0, 0,169 unifieddyes_medium_blue.png +medium cyan 0,169,167 unifieddyes_medium_cyan.png +medium green 0,169, 0 unifieddyes_medium_green.png +medium lime 87,169, 0 unifieddyes_medium_lime.png +medium magenta 169, 0,167 unifieddyes_medium_magenta.png +medium orange 169, 84, 0 unifieddyes_medium_orange.png +medium red 168, 0, 0 unifieddyes_medium_red.png +medium redviolet 169, 0, 84 unifieddyes_medium_redviolet.png +medium skyblue 0, 84,169 unifieddyes_medium_skyblue.png +medium violet 87, 0,169 unifieddyes_medium_violet.png +medium yellow 169,167, 0 unifieddyes_medium_yellow.png +aqua 1,255,127 unifieddyes_aqua.png +blue 1, 1,255 unifieddyes_blue.png +cyan 1,255,252 unifieddyes_cyan.png +green 1,255, 1 unifieddyes_green.png +lime 132,255, 1 unifieddyes_lime.png +magenta 255, 1,252 unifieddyes_magenta.png +orange 255,127, 1 unifieddyes_orange.png +red 255, 0, 0 unifieddyes_red.png +redviolet 255, 1,127 unifieddyes_redviolet.png +skyblue 1,127,255 unifieddyes_skyblue.png +violet 132, 1,255 unifieddyes_violet.png +yellow 255,252, 1 unifieddyes_yellow.png + +Low-saturation colors: +---------------------- + +dark aqua 50% saturation 21, 63, 42 unifieddyes_dark_aqua_s50.png +dark blue 50% saturation 21, 21, 63 unifieddyes_dark_blue_s50.png +dark cyan 50% saturation 21, 63, 63 unifieddyes_dark_cyan_s50.png +dark green 50% saturation 21, 63, 21 unifieddyes_dark_green_s50.png +dark lime 50% saturation 43, 63, 21 unifieddyes_dark_lime_s50.png +dark magenta 50% saturation 63, 21, 63 unifieddyes_dark_magenta_s50.png +dark orange 50% saturation 63, 42, 21 unifieddyes_dark_orange_s50.png +dark red 50% saturation 63, 21, 21 unifieddyes_dark_red_s50.png +dark redviolet 50% saturation 63, 21, 42 unifieddyes_dark_redviolet_s50.png +dark skyblue 50% saturation 21, 42, 63 unifieddyes_dark_skyblue_s50.png +dark violet 50% saturation 43, 21, 63 unifieddyes_dark_violet_s50.png +dark yellow 50% saturation 63, 63, 21 unifieddyes_dark_yellow_s50.png +medium aqua 50% saturation 42,126, 84 unifieddyes_medium_aqua_s50.png +medium blue 50% saturation 42, 42,126 unifieddyes_medium_blue_s50.png +medium cyan 50% saturation 42,126,126 unifieddyes_medium_cyan_s50.png +medium green 50% saturation 42,126, 42 unifieddyes_medium_green_s50.png +medium lime 50% saturation 86,126, 42 unifieddyes_medium_lime_s50.png +medium magenta 50% saturation 126, 42,126 unifieddyes_medium_magenta_s50.png +medium orange 50% saturation 126, 84, 42 unifieddyes_medium_orange_s50.png +medium red 50% saturation 127, 42, 42 unifieddyes_medium_red_s50.png +medium redviolet 50% saturation 126, 42, 84 unifieddyes_medium_redviolet_s50.png +medium skyblue 50% saturation 42, 84,126 unifieddyes_medium_skyblue_s50.png +medium violet 50% saturation 86, 42,126 unifieddyes_medium_violet_s50.png +medium yellow 50% saturation 126,126, 42 unifieddyes_medium_yellow_s50.png +aqua 50% saturation 65,191,127 unifieddyes_aqua_s50.png +blue 50% saturation 65, 65,191 unifieddyes_blue_s50.png +cyan 50% saturation 65,191,190 unifieddyes_cyan_s50.png +green 50% saturation 65,191, 65 unifieddyes_green_s50.png +lime 50% saturation 130,191, 65 unifieddyes_lime_s50.png +magenta 50% saturation 191, 65,190 unifieddyes_magenta_s50.png +orange 50% saturation 191,127, 65 unifieddyes_orange_s50.png +red 50% saturation 192, 64, 64 unifieddyes_red_s50.png +redviolet 50% saturation 191, 65,127 unifieddyes_redviolet_s50.png +skyblue 50% saturation 65,127,191 unifieddyes_skyblue_s50.png +violet 50% saturation 130, 65,191 unifieddyes_violet_s50.png +yellow 50% saturation 191,190, 65 unifieddyes_yellow_s50.png + +Greyscale: +---------- + +black 0, 0, 0 unifieddyes_black.png +dark grey 64, 64, 64 unifieddyes_darkgrey_paint.png +medium grey 128,128,128 unifieddyes_grey_paint.png +light grey 192,192,192 unifieddyes_lightgrey_paint.png +white 255,255,255 unifieddyes_white_paint.png diff --git a/unifieddyes/depends.txt b/unifieddyes/depends.txt new file mode 100644 index 0000000..b08c42c --- /dev/null +++ b/unifieddyes/depends.txt @@ -0,0 +1,4 @@ +default +dye +intllib? + diff --git a/unifieddyes/gentextures-jpg.sh b/unifieddyes/gentextures-jpg.sh new file mode 100644 index 0000000..a7cad60 --- /dev/null +++ b/unifieddyes/gentextures-jpg.sh @@ -0,0 +1,183 @@ +#!/bin/bash + +# This program auto-generates colorized textures for all 89 of the Unified +# Dyes colors, based on one or two input files. + +# Copyright (C) 2012-2013, Vanessa Ezekowitz +# Email: vanessaezekowitz@gmail.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +if [ -z "`which convert`" ] ; then { + echo "Please install Imagemagick." + exit 1 +} fi + +if [ -z "`which bc`" ] ; then { + echo "Please install GNU bc." + exit 1 +} fi + +if [ $1 = "-t" ] ; then { + TINT_OVERLAY=$1 + BASE=$2 + COMPOSITE=$3 +} else { + TINT_OVERLAY="" + BASE=$1 + COMPOSITE=$2 +} fi + +if [ -z $1 ] || [ $1 == "--help" ] || [ $1 == "-h" ] || [[ $1 == "-t" && -z $3 ]] ; then { + + echo -e "\nUsage: +\ngentextures.sh basename [overlay_filename] +gentextures.sh -t basename overlay_filename + +\nThis script requires up to three parameters which supply the base +filename of the textures, an optional .png overlay, and possibly the +'-t' switch. The 'basename' is the first part of the filename that your +textures will use when your mod is done, which should almost always be +the same as the one-word name of your mod. For example, if you supply +the word 'mymod', this script will produce filenames like mymod_red.jpg +or 'mymod_dark_blue_s50.jpg'. The texture that this script will read +and recolor is derived from this parameter, and will be of the form +'basename_base.jpg', i.e. 'mymod_base.jpg'. \nYou can also supply an +overlay image filename. This image needs to be a .png or .gif or some +other alpha-capable format supported by ImageMagick, and will be +composited onto the output files after they have been colorized, but +without being modified. This is useful when you have some part of your +base image that will either get changed undesirably (for example, the +mortar among several bricks, or the shading detail of a stone pattern). +Simply draw two images: one containing the whole image to be colored, +and one containing the parts that should not be changed, with either +full or partial alpha transparency where the re-colored base image +should show through. Skilled use of color and alpha on this overlay can +lead to some interesting effects. \nIf you add '-t' as the first +parameter, the script will switch to 'tint overlay' mode. For this mode +to work, you must also supply the base name as usual, and you must +include an overlay image filename. Rather than re-color the base +texture, the script will alter the hue/saturation/value of the overlay +texture file instead, and leave the base texture unchanged. When using +this mode, the base texture should be drawn in some neutral color, but +any color is fine if it results in what you wanted.\n" + + + exit 1 +} fi + +if [[ ! -e $BASE"_base.jpg" ]]; then { + echo -e "\nThe basename '"$BASE"_base.jpg' was not found." + echo -e "\nAborting.\n" + exit 1 +} fi + +if [[ ! -z $COMPOSITE && ! -e $COMPOSITE ]]; then { + echo -e "\nThe requested composite file '"$COMPOSITE"' was not found." + echo -e "\nAborting.\n" + exit 1 +} fi + +convert $BASE"_base.jpg" -modulate 1,2,3 tempfile.jpg 1>/dev/null 2>/dev/null + +if (( $? )) ; then { + echo -e "\nImagemagick failed while testing the base texture file." + echo -e "\nEither the base file '"$BASE"_base.jpg' isn't an image," + echo "or it is broken, or Imagemagick itself just didn't work." + echo -e "\nPlease check and correct your base image and try again." + echo -e "\nAborting.\n" + exit 1 +} fi + +if [ ! -z $COMPOSITE ] ; then { + convert $BASE"_base.jpg" -modulate 1,2,3 $COMPOSITE -composite tempfile.jpg 1>/dev/null 2>/dev/null + + if (( $? )) ; then { + echo -e "\nImagemagick failed while testing the composite file." + echo -e "\nEither the composite file '"$COMPOSITE"' isn't an image" + echo "or it is broken, or Imagemagick itself just didn't work." + echo -e "\nPlease check and correct your composite image and try again." + echo -e "\nAborting.\n" + exit 1 + } fi +} fi + +rm tempfile.jpg + +base_colors="red orange yellow lime green aqua cyan skyblue blue violet magenta redviolet" + +echo -e -n "\nGenerating filenames based on "$BASE"_base.jpg" +if [ ! -z $COMPOSITE ] ; then { + echo "," + echo -n "using "$COMPOSITE" as an overlay" +} fi + +if [ ! -z $TINT_OVERLAY ] ; then { + echo "," + echo -n "and tinting the overlay instead of the base texture" +} fi + +echo -e "...\n" + +mkdir -p generated-textures + +function generate_texture () { + name=$1 + h=$2 + s=$3 + v=$4 + if [ -z $TINT_OVERLAY ]; then { + if [ -z $COMPOSITE ]; then { + convert $BASE"_base.jpg" -modulate $v,$s,$h -quality 97 "generated-textures/"$BASE"_"$name".jpg" + } else { + convert $BASE"_base.jpg" -modulate $v,$s,$h -quality 97 $COMPOSITE -composite "generated-textures/"$BASE"_"$name".jpg" + } fi + } else { + convert $COMPOSITE -modulate $v,$s,$h -quality 97 MIFF:- | composite MIFF:- $BASE"_base.jpg" "generated-textures/"$BASE"_"$name".jpg" + } fi +} + +hue=0 +for color_name in $base_colors ; do + hue2=`echo "scale=10; ("$hue"*200/360)+100" |bc` + echo $color_name "("$hue" degrees)" + echo " dark" + generate_texture "dark_"$color_name $hue2 100 33 + echo " medium" + generate_texture "medium_"$color_name $hue2 100 66 + echo " full" + generate_texture $color_name $hue2 100 100 + echo " light" + generate_texture "light_"$color_name $hue2 100 150 + echo " dark, 50% saturation" + generate_texture "dark_"$color_name"_s50" $hue2 50 33 + echo " medium, 50% saturation" + generate_texture "medium_"$color_name"_s50" $hue2 50 66 + echo " full, 50% saturation" + generate_texture $color_name"_s50" $hue2 50 100 + hue=$((hue+30)) +done + +echo "greyscales" +echo " black" +generate_texture black 0 0 15 +echo " dark grey" +generate_texture darkgrey 0 0 50 +echo " medium grey" +generate_texture grey 0 0 100 +echo " light grey" +generate_texture lightgrey 0 0 150 +echo " white" +generate_texture white 0 0 190 diff --git a/unifieddyes/gentextures.sh b/unifieddyes/gentextures.sh new file mode 100644 index 0000000..842817e --- /dev/null +++ b/unifieddyes/gentextures.sh @@ -0,0 +1,177 @@ +#!/bin/bash + +# This program auto-generates colorized textures for all 89 of the Unified +# Dyes colors, based on one or two input files. + +# Copyright (C) 2012-2013, Vanessa Ezekowitz +# Email: vanessaezekowitz@gmail.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +if [ -z "`which convert`" ] ; then { + echo "Please install Imagemagick." + exit 1 +} fi + +if [ -z "`which bc`" ] ; then { + echo "Please install GNU bc." + exit 1 +} fi + +if [ $1 = "-t" ] ; then { + TINT_OVERLAY=$1 + BASE=$2 + COMPOSITE=$3 +} else { + TINT_OVERLAY="" + BASE=$1 + COMPOSITE=$2 +} fi + +if [ -z $1 ] || [ $1 == "--help" ] || [ $1 == "-h" ] || [[ $1 == "-t" && -z $3 ]] ; then { + + echo -e "\nUsage: +\ngentextures.sh basename [overlay_filename] +gentextures.sh -t basename overlay_filename +\nThis script requires up to three parameters which supply the base filename +of the textures, an optional overlay, and possibly the '-t' switch. The +'basename' is the first part of the filename that your textures will use when +your mod is done, which should almost always be the same as the one-word name +of your mod. For example, if you supply the word 'mymod', this script will +produce filenames like mymod_red.png or 'mymod_dark_blue_s50.png'. The +texture that this script will read and recolor is derived from this parameter, +and will be of the form 'basename_base.png', i.e. 'mymod_base.png'. +\nYou can also supply an optional overlay image filename. This image will be +composited onto the output files after they have been colorized, but without +being modified. This is useful when you have some part of your base image +that will either get changed undesirably (for example, the mortar among +several bricks, or the shading detail of a stone pattern). Simply draw two +images: one containing the whole image to be colored, and one containing the +parts that should not be changed, with either full or partial alpha +transparency where the re-colored base image should show through. Skilled use +of color and alpha on this overlay can lead to some interesting effects. +\nIf you add '-t' as the first parameter, the script will switch to 'tint +overlay' mode. For this mode to work, you must also supply the base name as +usual, and you must include an overlay image filename. Rather than re-color +the base texture, the script will alter the hue/saturation/value of the +overlay texture file instead, and leave the base texture unchanged. When +using this mode, the base texture should be drawn in some neutral color, but +any color is fine if it results in what you wanted.\n" + exit 1 +} fi + +if [[ ! -e $BASE"_base.png" ]]; then { + echo -e "\nThe basename '"$BASE"_base.png' was not found." + echo -e "\nAborting.\n" + exit 1 +} fi + +if [[ ! -z $COMPOSITE && ! -e $COMPOSITE ]]; then { + echo -e "\nThe requested composite file '"$COMPOSITE"' was not found." + echo -e "\nAborting.\n" + exit 1 +} fi + +convert $BASE"_base.png" -modulate 1,2,3 tempfile.png 1>/dev/null 2>/dev/null + +if (( $? )) ; then { + echo -e "\nImagemagick failed while testing the base texture file." + echo -e "\nEither the base file '"$BASE"_base.png' isn't an image," + echo "or it is broken, or Imagemagick itself just didn't work." + echo -e "\nPlease check and correct your base image and try again." + echo -e "\nAborting.\n" + exit 1 +} fi + +if [ ! -z $COMPOSITE ] ; then { + convert $BASE"_base.png" -modulate 1,2,3 $COMPOSITE -composite tempfile.png 1>/dev/null 2>/dev/null + + if (( $? )) ; then { + echo -e "\nImagemagick failed while testing the composite file." + echo -e "\nEither the composite file '"$COMPOSITE"' isn't an image" + echo "or it is broken, or Imagemagick itself just didn't work." + echo -e "\nPlease check and correct your composite image and try again." + echo -e "\nAborting.\n" + exit 1 + } fi +} fi + +rm tempfile.png + +base_colors="red orange yellow lime green aqua cyan skyblue blue violet magenta redviolet" + +echo -e -n "\nGenerating filenames based on "$BASE"_base.png" +if [ ! -z $COMPOSITE ] ; then { + echo "," + echo -n "using "$COMPOSITE" as an overlay" +} fi + +if [ ! -z $TINT_OVERLAY ] ; then { + echo "," + echo -n "and tinting the overlay instead of the base texture" +} fi + +echo -e "...\n" + +mkdir -p generated-textures + +function generate_texture () { + name=$1 + h=$2 + s=$3 + v=$4 + if [ -z $TINT_OVERLAY ]; then { + if [ -z $COMPOSITE ]; then { + convert $BASE"_base.png" -modulate $v,$s,$h "generated-textures/"$BASE"_"$name".png" + } else { + convert $BASE"_base.png" -modulate $v,$s,$h $COMPOSITE -composite "generated-textures/"$BASE"_"$name".png" + } fi + } else { + convert $COMPOSITE -modulate $v,$s,$h MIFF:- | composite MIFF:- $BASE"_base.png" "generated-textures/"$BASE"_"$name".png" + } fi +} + +hue=0 +for color_name in $base_colors ; do + hue2=`echo "scale=10; ("$hue"*200/360)+100" |bc` + echo $color_name "("$hue" degrees)" + echo " dark" + generate_texture "dark_"$color_name $hue2 100 33 + echo " medium" + generate_texture "medium_"$color_name $hue2 100 66 + echo " full" + generate_texture $color_name $hue2 100 100 + echo " light" + generate_texture "light_"$color_name $hue2 100 150 + echo " dark, 50% saturation" + generate_texture "dark_"$color_name"_s50" $hue2 50 33 + echo " medium, 50% saturation" + generate_texture "medium_"$color_name"_s50" $hue2 50 66 + echo " full, 50% saturation" + generate_texture $color_name"_s50" $hue2 50 100 + hue=$((hue+30)) +done + +echo "greyscales" +echo " black" +generate_texture black 0 0 15 +echo " dark grey" +generate_texture darkgrey 0 0 50 +echo " medium grey" +generate_texture grey 0 0 100 +echo " light grey" +generate_texture lightgrey 0 0 150 +echo " white" +generate_texture white 0 0 190 diff --git a/unifieddyes/init.lua b/unifieddyes/init.lua new file mode 100644 index 0000000..fc36199 --- /dev/null +++ b/unifieddyes/init.lua @@ -0,0 +1,375 @@ +--[[ + +Unified Dyes + +This mod provides an extension to the Minetest 0.4.x dye system + +============================================================================== + +Copyright (C) 2012-2013, Vanessa Ezekowitz +Email: vanessaezekowitz@gmail.com + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License along +with this program; if not, write to the Free Software Foundation, Inc., +51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +============================================================================== + +--]] + +--===================================================================== + +-- Boilerplate to support localized strings if intllib mod is installed. +local S +if minetest.get_modpath("intllib") then + S = intllib.Getter() +else + S = function(s) return s end +end + +-- Items/recipes needed to generate the few base colors that are not +-- provided by the standard dyes mod. + +-- Lime + +minetest.register_craftitem(":dye:lime", { + description = S("Lime Dye"), + inventory_image = "unifieddyes_lime.png", + groups = { dye=1, excolor_lime=1, unicolor_lime=1, not_in_creative_inventory=1 } +}) + +minetest.register_craft( { + type = "shapeless", + output = "dye:lime 2", + recipe = { + "dye:yellow", + "dye:green", + }, +}) + +-- Aqua + +minetest.register_craftitem(":dye:aqua", { + description = S("Aqua Dye"), + inventory_image = "unifieddyes_aqua.png", + groups = { dye=1, excolor_aqua=1, unicolor_aqua=1, not_in_creative_inventory=1 } +}) + +minetest.register_craft( { + type = "shapeless", + output = "dye:aqua 2", + recipe = { + "dye:cyan", + "dye:green", + }, +}) + +-- Sky blue + +minetest.register_craftitem(":dye:skyblue", { + description = S("Sky-blue Dye"), + inventory_image = "unifieddyes_skyblue.png", + groups = { dye=1, excolor_sky_blue=1, unicolor_sky_blue=1, not_in_creative_inventory=1 } +}) + +minetest.register_craft( { + type = "shapeless", + output = "dye:skyblue 2", + recipe = { + "dye:cyan", + "dye:blue", + }, +}) + +-- Red-violet + +minetest.register_craftitem(":dye:redviolet", { + description = S("Red-violet Dye"), + inventory_image = "unifieddyes_redviolet.png", + groups = { dye=1, excolor_red_violet=1, unicolor_red_violet=1, not_in_creative_inventory=1 } +}) + +minetest.register_craft( { + type = "shapeless", + output = "dye:redviolet 2", + recipe = { + "dye:red", + "dye:magenta", + }, +}) + + +-- Light grey + +minetest.register_craftitem(":dye:light_grey", { + description = S("Light Grey Dye"), + inventory_image = "unifieddyes_lightgrey.png", + groups = { dye=1, excolor_lightgrey=1, unicolor_light_grey=1, not_in_creative_inventory=1 } +}) + +minetest.register_craft( { + type = "shapeless", + output = "dye:light_grey 2", + recipe = { + "dye:grey", + "dye:white", + }, +}) + +-- Extra craft for black dye + +minetest.register_craft( { + type = "shapeless", + output = "dye:black 4", + recipe = { + "default:coal_lump", + }, +}) + +-- Extra craft for dark grey dye + +minetest.register_craft( { + type = "shapeless", + output = "dye:dark_grey 3", + recipe = { + "dye:black", + "dye:black", + "dye:white", + }, +}) + +-- Extra craft for light grey dye + +minetest.register_craft( { + type = "shapeless", + output = "dye:light_grey 3", + recipe = { + "dye:black", + "dye:white", + "dye:white", + }, +}) + +-- Extra craft for green dye + +minetest.register_craft( { + type = "shapeless", + output = "dye:green 4", + recipe = { + "default:cactus", + }, +}) + +-- ================================================================= + +-- Generate all of additional variants of hue, saturation, and +-- brightness. + +-- "s50" in a file/item name means "saturation: 50%". +-- Brightness levels in the textures are 33% ("dark"), 66% ("medium"), +-- 100% ("full", but not so-named), and 150% ("light"). + +local HUES = { + "red", + "orange", + "yellow", + "lime", + "green", + "aqua", + "cyan", + "skyblue", + "blue", + "violet", + "magenta", + "redviolet" +} + +local HUES2 = { + "Red", + "Orange", + "Yellow", + "Lime", + "Green", + "Aqua", + "Cyan", + "Sky-blue", + "Blue", + "Violet", + "Magenta", + "Red-violet" +} + + +for i = 1, 12 do + + local hue = HUES[i] + local hue2 = HUES2[i] + + minetest.register_craft( { + type = "shapeless", + output = "unifieddyes:dark_" .. hue .. "_s50 2", + recipe = { + "dye:" .. hue, + "dye:dark_grey", + }, + }) + + minetest.register_craft( { + type = "shapeless", + output = "unifieddyes:dark_" .. hue .. "_s50 4", + recipe = { + "dye:" .. hue, + "dye:black", + "dye:black", + "dye:white" + }, + }) + + if hue == "green" then + + minetest.register_craft( { + type = "shapeless", + output = "dye:dark_green 3", + recipe = { + "dye:" .. hue, + "dye:black", + "dye:black", + }, + }) + else + minetest.register_craft( { + type = "shapeless", + output = "unifieddyes:dark_" .. hue .. " 3", + recipe = { + "dye:" .. hue, + "dye:black", + "dye:black", + }, + }) + end + + minetest.register_craft( { + type = "shapeless", + output = "unifieddyes:medium_" .. hue .. "_s50 2", + recipe = { + "dye:" .. hue, + "dye:grey", + }, + }) + + minetest.register_craft( { + type = "shapeless", + output = "unifieddyes:medium_" .. hue .. "_s50 3", + recipe = { + "dye:" .. hue, + "dye:black", + "dye:white", + }, + }) + + minetest.register_craft( { + type = "shapeless", + output = "unifieddyes:medium_" .. hue .. " 2", + recipe = { + "dye:" .. hue, + "dye:black", + }, + }) + + minetest.register_craft( { + type = "shapeless", + output = "unifieddyes:" .. hue .. "_s50 2", + recipe = { + "dye:" .. hue, + "dye:grey", + "dye:white", + }, + }) + + minetest.register_craft( { + type = "shapeless", + output = "unifieddyes:" .. hue .. "_s50 4", + recipe = { + "dye:" .. hue, + "dye:white", + "dye:white", + "dye:black", + }, + }) + + if hue ~= "red" then + minetest.register_craft( { + type = "shapeless", + output = "unifieddyes:light_" .. hue .. " 2", + recipe = { + "dye:" .. hue, + "dye:white", + }, + }) + end + + minetest.register_craftitem("unifieddyes:dark_" .. hue .. "_s50", { + description = S("Dark " .. hue2 .. " Dye (low saturation)"), + inventory_image = "unifieddyes_dark_" .. hue .. "_s50.png", + groups = { dye=1, ["unicolor_dark_"..hue.."_s50"]=1, not_in_creative_inventory=1 } + }) + + if hue ~= "green" then + minetest.register_craftitem("unifieddyes:dark_" .. hue, { + description = S("Dark " .. hue2 .. " Dye"), + inventory_image = "unifieddyes_dark_" .. hue .. ".png", + groups = { dye=1, ["unicolor_dark_"..hue]=1, not_in_creative_inventory=1 } + }) + end + + minetest.register_craftitem("unifieddyes:medium_" .. hue .. "_s50", { + description = S("Medium " .. hue2 .. " Dye (low saturation)"), + inventory_image = "unifieddyes_medium_" .. hue .. "_s50.png", + groups = { dye=1, ["unicolor_medium_"..hue.."_s50"]=1, not_in_creative_inventory=1 } + }) + + minetest.register_craftitem("unifieddyes:medium_" .. hue, { + description = S("Medium " .. hue2 .. " Dye"), + inventory_image = "unifieddyes_medium_" .. hue .. ".png", + groups = { dye=1, ["unicolor_medium_"..hue]=1, not_in_creative_inventory=1 } + }) + + minetest.register_craftitem("unifieddyes:" .. hue .. "_s50", { + description = S(hue2 .. " Dye (low saturation)"), + inventory_image = "unifieddyes_" .. hue .. "_s50.png", + groups = { dye=1, ["unicolor_"..hue.."_s50"]=1, not_in_creative_inventory=1 } + }) + + if hue ~= "red" then + minetest.register_craftitem("unifieddyes:light_" .. hue, { + description = S("Light " .. hue2 .. " Dye"), + inventory_image = "unifieddyes_light_" .. hue .. ".png", + groups = { dye=1, ["unicolor_light_"..hue]=1, not_in_creative_inventory=1 } + }) + end + minetest.register_alias("unifieddyes:"..hue, "dye:"..hue) + minetest.register_alias("unifieddyes:pigment_"..hue, "dye:"..hue) +end + +minetest.register_alias("unifieddyes:light_red", "dye:pink") +minetest.register_alias("unifieddyes:dark_green", "dye:dark_green") + +minetest.register_alias("unifieddyes:white_paint", "dye:white") +minetest.register_alias("unifieddyes:titanium_dioxide", "dye:white") +minetest.register_alias("unifieddyes:lightgrey_paint", "dye:light_grey") +minetest.register_alias("unifieddyes:grey_paint", "dye:grey") +minetest.register_alias("unifieddyes:darkgrey_paint", "dye:dark_grey") +minetest.register_alias("unifieddyes:carbon_black", "dye:black") + +print(S("[UnifiedDyes] Loaded!")) + diff --git a/unifieddyes/listcolors.sh b/unifieddyes/listcolors.sh new file mode 100644 index 0000000..53e1806 --- /dev/null +++ b/unifieddyes/listcolors.sh @@ -0,0 +1,79 @@ +#!/bin/bash + +# This program lists out the RGB triads for the colors used in each of the 89 +# dyes found in the Unified Dyes mod. + +# Copyright (C) 2012-2013, Vanessa Ezekowitz +# Email: vanessaezekowitz@gmail.com +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +pushd . >/dev/null + +cd textures + +echo -e "\n\nFull-saturation colors:" +echo -e "-----------------------\n" + +for i in `ls *dark*.png|grep -v _s50|grep -v paint|grep -v black` ; do + rgb=`convert $i -crop 1x1+8+11 -depth 8 txt: |grep "0,0: (" |cut -f 2- -d "(" |cut -f 1-3 -d ","` + color=`basename $i .png | sed 's/_/ /g; s/unifieddyes //; s/s50/50% saturation/'` + printf "%-32s %-12s %s\n" "$color" "$rgb" "$i" +done |sort + +for i in `ls *medium*.png|grep -v _s50|grep -v paint|grep -v black` ; do + rgb=`convert $i -crop 1x1+8+11 -depth 8 txt: |grep "0,0: (" |cut -f 2- -d "(" |cut -f 1-3 -d ","` + color=`basename $i .png | sed 's/_/ /g; s/unifieddyes //; s/s50/50% saturation/'` + printf "%-32s %-12s %s\n" "$color" "$rgb" "$i" +done |sort + +for i in `ls *.png|grep -v medium |grep -v dark|grep -v _s50|grep -v paint|grep -v black|grep -v titanium` ; do + rgb=`convert $i -crop 1x1+8+11 -depth 8 txt: |grep "0,0: (" |cut -f 2- -d "(" |cut -f 1-3 -d ","` + color=`basename $i .png | sed 's/_/ /g; s/unifieddyes //; s/s50/50% saturation/'` + printf "%-32s %-12s %s\n" "$color" "$rgb" "$i" +done |sort + + +echo -e "\nLow-saturation colors:" +echo -e "----------------------\n" + +for i in `ls *dark*_s50.png|grep -v paint|grep -v black` ; do + rgb=`convert $i -crop 1x1+8+11 -depth 8 txt: |grep "0,0: (" |cut -f 2- -d "(" |cut -f 1-3 -d ","` + color=`basename $i .png | sed 's/_/ /g; s/unifieddyes //; s/s50/50% saturation/'` + printf "%-32s %-12s %s\n" "$color" "$rgb" "$i" +done |sort + +for i in `ls *medium*_s50.png|grep -v paint|grep -v black` ; do + rgb=`convert $i -crop 1x1+8+11 -depth 8 txt: |grep "0,0: (" |cut -f 2- -d "(" |cut -f 1-3 -d ","` + color=`basename $i .png | sed 's/_/ /g; s/unifieddyes //; s/s50/50% saturation/'` + printf "%-32s %-12s %s\n" "$color" "$rgb" "$i" +done |sort + +for i in `ls *_s50.png|grep -v dark|grep -v medium|grep -v paint|grep -v black` ; do + rgb=`convert $i -crop 1x1+8+11 -depth 8 txt: |grep "0,0: (" |cut -f 2- -d "(" |cut -f 1-3 -d ","` + color=`basename $i .png | sed 's/_/ /g; s/unifieddyes //; s/s50/50% saturation/'` + printf "%-32s %-12s %s\n" "$color" "$rgb" "$i" +done |sort + +echo -e "\nGreyscale:" +echo -e "----------\n" + +printf "%-32s %-12s %s\n" "black" " 0, 0, 0" "unifieddyes_black.png" +printf "%-32s %-12s %s\n" "dark grey" " 64, 64, 64" "unifieddyes_darkgrey_paint.png" +printf "%-32s %-12s %s\n" "medium grey" "128,128,128" "unifieddyes_grey_paint.png" +printf "%-32s %-12s %s\n" "light grey" "192,192,192" "unifieddyes_lightgrey_paint.png" +printf "%-32s %-12s %s\n" "white" "255,255,255" "unifieddyes_white_paint.png" + +popd >/dev/null diff --git a/unifieddyes/locale/de.txt b/unifieddyes/locale/de.txt new file mode 100644 index 0000000..01d6da4 --- /dev/null +++ b/unifieddyes/locale/de.txt @@ -0,0 +1,74 @@ +# Translation by Xanthin + +Lime Dye = Gelbgruener Farbstoff (Gelbgruen) +Aqua Dye = Aqua Farbstoff +Sky-blue Dye = Himmelblauer Farbstoff +Red-violet Dye = Rotvioletter Farbstoff +Light Grey Dye = Hellgrauer Farbstoff + +Dark Red Dye (low saturation) = Dunkelroter Farbstoff (geringe Saettigung) +Dark Orange Dye (low saturation) = Dunkeloranger Farbstoff (geringe Saettigung) +Dark Yellow Dye (low saturation) = Dunkelgelber Farbstoff (geringe Saettigung) +Dark Lime Dye (low saturation) = Gelbgruenerlime Farbstoff (geringe Saettigung) +Dark Green Dye (low saturation) = Dunkelgruener Farbstoff (geringe Saettigung) +Dark Aqua Dye (low saturation) = Dunkelaqua Farbstoff (geringe Saettigung) +Dark Cyan Dye (low saturation) = Dunkeltuerkiser Farbstoff (geringe Saettigung) +Dark Sky-blue Dye (low saturation) = Dunkelhimmelblauer Farbstoff (geringe Saettigung) +Dark Blue Dye (low saturation) = Dunkelblauer Farbstoff (geringe Saettigung) +Dark Violet Dye (low saturation) = Dunkelvioletter Farbstoff (geringe Saettigung) +Dark Magenta Dye (low saturation) = Dunkelmagenta Farbstoff (geringe Saettigung) +Dark Red-violet Dye (low saturation) = Dunkelrotvioletter Farbstoff (geringe Saettigung) + +Dark Red Dye = Dunkelroter Farbstoff +Dark Orange Dye = Dunkeloranger Farbstoff +Dark Yellow Dye = Dunkelgelber Farbstoff +Dark Lime Dye = Dunkelgelbgruener Farbstoff +Dark Green Dye = Dunkelgruener Farbstoff +Dark Aqua Dye = Dunkelaqua Farbstoff +Dark Cyan Dye = Dunkeltuerkiser Farbstoff +Dark Sky-blue Dye = Dunkelhimmelblauer Farbstoff +Dark Blue Dye = Dunkelblauer Farbstoff +Dark Violet Dye = Dunkelvioletter Farbstoff +Dark Magenta Dye = Dunkelmagenta Farbstoff +Dark Red-violet Dye = Dunkelrotvioletter Farbstoff + +Medium Red Dye (low saturation) = Mittelroter Farbstoff (geringe Saettigung) +Medium Orange Dye (low saturation) = Mitteloranger Farbstoff (geringe Saettigung) +Medium Yellow Dye (low saturation) = Mittelgelber Farbstoff (geringe Saettigung) +Medium Lime Dye (low saturation) = Mittelgelbgruener Farbstoff (geringe Saettigung) +Medium Green Dye (low saturation) = Mittelgruener Farbstoff (geringe Saettigung) +Medium Aqua Dye (low saturation) = Mittelaqua Farbstoff (geringe Saettigung) +Medium Cyan Dye (low saturation) = Mitteltuerkiser Farbstoff (geringe Saettigung) +Medium Sky-blue Dye (low saturation) = Mittelhimmelblauer Farbstoff (geringe Saettigung) +Medium Blue Dye (low saturation) = Mittelblauer Farbstoff (geringe Saettigung) +Medium Violet Dye (low saturation) = Mittelvioletter Farbstoff (geringe Saettigung) +Medium Magenta Dye (low saturation) = Mittelmagenta Farbstoff (geringe Saettigung) +Medium Red-violet Dye (low saturation) = Mittelrotvioletter Farbstoff (geringe Saettigung) + +Medium Red Dye = Mittelroter Farbstoff +Medium Orange Dye = Mitteloranger Farbstoff +Medium Yellow Dye = Mittelgelber Farbstoff +Medium Lime Dye = Mittelgelbgruener Farbstoff +Medium Green Dye = Mittelgruener Farbstoff +Medium Aqua Dye = Mittelaqua Farbstoff +Medium Cyan Dye = Mitteltuerkiser Farbstoff +Medium Sky-blue = Mittelhimmelblauer Farbstoff +Medium Blue Dye = Mittelblauer Farbstoff +Medium Violet Dye = Mittelvioletter Farbstoff +Medium Magenta Dye = Mittelmagenta Farbstoff +Medium Red-violet Dye = Mittelrotvioletter Farbstoff + +Red Dye (low saturation) = Roter Farbstoff (geringe Saettigung) +Orange Dye (low saturation) = Oranger Farbstoff (geringe Saettigung) +Yellow Dye (low saturation) = Gelber Farbstoff (geringe Saettigung) +Lime Dye (low saturation) = Gelbgruener Farbstoff (geringe Saettigung) +Green Dye (low saturation) = Gruener Farbstoff (geringe Saettigung) +Aqua Dye (low saturation) = Aqua Farbstoff (geringe Saettigung) +Cyan Dye (low saturation) = Tuerkiser Farbstoff (geringe Saettigung) +Sky-blue Dye (low saturation) = Himmelblauer Farbstoff (geringe Saettigung) +Blue Dye (low saturation) = Blauer Farbstoff (geringe Saettigung) +Violet Dye (low saturation) = Violetter Farbstoff (geringe Saettigung) +Magenta Dye (low saturation) = Magenta Farbstoff (geringe Saettigung) lila +Red-violet Dye (low saturation) = Rotvioletter Farbstoff (geringe Saettigung) + +[UnifiedDyes] Loaded! = [UnifiedDyes] geladen! diff --git a/unifieddyes/locale/template.txt b/unifieddyes/locale/template.txt new file mode 100644 index 0000000..126bef8 --- /dev/null +++ b/unifieddyes/locale/template.txt @@ -0,0 +1,87 @@ +# Template + +Lime Dye = +Aqua Dye = +Sky-blue Dye = +Red-violet Dye = +Light Grey Dye = + +Dark Red Dye (low saturation) = +Dark Orange Dye (low saturation) = +Dark Yellow Dye (low saturation) = +Dark Lime Dye (low saturation) = +Dark Green Dye (low saturation) = +Dark Aqua Dye (low saturation) = +Dark Cyan Dye (low saturation) = +Dark Sky-blue Dye (low saturation) = +Dark Blue Dye (low saturation) = +Dark Violet Dye (low saturation) = +Dark Magenta Dye (low saturation) = +Dark Red-violet Dye (low saturation) = + +Dark Red Dye = +Dark Orange Dye = +Dark Yellow Dye = +Dark Lime Dye = +Dark Green Dye = +Dark Aqua Dye = +Dark Cyan Dye = +Dark Sky-blue Dye = +Dark Blue Dye = +Dark Violet Dye = +Dark Magenta Dye = +Dark Red-violet Dye = + +Medium Red Dye (low saturation) = +Medium Orange Dye (low saturation) = +Medium Yellow Dye (low saturation) = +Medium Lime Dye (low saturation) = +Medium Green Dye (low saturation) = +Medium Aqua Dye (low saturation) = +Medium Cyan Dye (low saturation) = +Medium Sky-blue Dye (low saturation) = +Medium Blue Dye (low saturation) = +Medium Violet Dye (low saturation) = +Medium Magenta Dye (low saturation) = +Medium Red-violet Dye (low saturation) = + +Medium Red Dye = +Medium Orange Dye = +Medium Yellow Dye = +Medium Lime Dye = +Medium Green Dye = +Medium Aqua Dye = +Medium Cyan Dye = +Medium Sky-blue = +Medium Blue Dye = +Medium Violet Dye = +Medium Magenta Dye = +Medium Red-violet Dye = + +Red Dye (low saturation) = +Orange Dye (low saturation) = +Yellow Dye (low saturation) = +Lime Dye (low saturation) = +Green Dye (low saturation) = +Aqua Dye (low saturation) = +Cyan Dye (low saturation) = +Sky-blue Dye (low saturation) = +Blue Dye (low saturation) = +Violet Dye (low saturation) = +Magenta Dye (low saturation) = +Red-violet Dye (low saturation) = + +Red Dye = +Orange Dye = +Yellow Dye = +Lime Dye = +Green Dye = +Aqua Dye = +Cyan Dye = +Sky-blue Dye = +Blue Dye = +Violet Dye = +Magenta Dye = +Red-violet Dye = + +[UnifiedDyes] Loaded! = diff --git a/unifieddyes/locale/tr.txt b/unifieddyes/locale/tr.txt new file mode 100644 index 0000000..6109389 --- /dev/null +++ b/unifieddyes/locale/tr.txt @@ -0,0 +1,88 @@ +# TUrkish translation +# Mahmutelmas06@hotmail.com + +Lime Dye = Limon Yeşili Boya +Aqua Dye = Deniz mavisi Boya +Sky-blue Dye = Gök-Mavi Boya +Red-violet Dye = Kırmızılı Boya +Light Grey Dye = Açık Grey Boya + +Dark Red Dye (low saturation) = Koyu Kırmızı Boya (düşük doygunluk) +Dark Orange Dye (low saturation) = Koyu Turuncu Boya (düşük doygunluk) +Dark Yellow Dye (low saturation) = Koyu Sarı Boya (düşük doygunluk) +Dark Lime Dye (low saturation) = Koyu Limon Yeşili Boya (düşük doygunluk) +Dark Green Dye (low saturation) = Koyu Yeşil Boya (düşük doygunluk) +Dark Aqua Dye (low saturation) = Koyu Deniz mavisi boya (düşük doygunluk) +Dark Cyan Dye (low saturation) = Koyu Cam göbeği Boya (düşük doygunluk) +Dark Sky-blue Dye (low saturation) = Koyu Gök-Mavi Boya (düşük doygunluk) +Dark Blue Dye (low saturation) = Koyu Mavi Boya (düşük doygunluk) +Dark Violet Dye (low saturation) = Koyu mor Boya (düşük doygunluk) +Dark Magenta Dye (low saturation) = Koyu Kızılımsı Mor Boya (düşük doygunluk) +Dark Red-violet Dye (low saturation) = Koyu Kırmızılı Boya (düşük doygunluk) + +Dark Red Dye = Koyu Kırmızı Boya +Dark Orange Dye = Koyu Turuncu Boya +Dark Yellow Dye = Koyu Sarı Boya +Dark Lime Dye = Koyu Limon Yeşili Boya +Dark Green Dye = Koyu Yeşil Boya +Dark Aqua Dye = Koyu Deniz mavisi Boya +Dark Cyan Dye = Koyu Cam göbeği Boya +Dark Sky-blue Dye = Koyu Gök-Mavi Boya +Dark Blue Dye = Koyu Mavi Boya +Dark Violet Dye = Koyu mor Boya +Dark Magenta Dye = Koyu Kızılımsı Mor Boya +Dark Red-violet Dye = Koyu Kırmızılı Boya + +Medium Red Dye (low saturation) = Kırmızı Boya (düşük doygunluk) +Medium Orange Dye (low saturation) = Turuncu Boya (düşük doygunluk) +Medium Yellow Dye (low saturation) = Sarı Boya (düşük doygunluk) +Medium Lime Dye (low saturation) = Limon Yeşili Boya (düşük doygunluk) +Medium Green Dye (low saturation) = Yeşil Boya (düşük doygunluk) +Medium Aqua Dye (low saturation) = Deniz mavisi Boya (düşük doygunluk) +Medium Cyan Dye (low saturation) = Cam göbeği Boya (düşük doygunluk) +Medium Sky-blue Dye (low saturation) = Gök-Mavi Boya (düşük doygunluk) +Medium Blue Dye (low saturation) = Mavi Boya (düşük doygunluk) +Medium Violet Dye (low saturation) = Koyu mor Boya (düşük doygunluk) +Medium Magenta Dye (low saturation) = Kızılımsı Mor Boya (düşük doygunluk) +Medium Red-violet Dye (low saturation) = Kırmızılı Boya (düşük doygunluk) + +Medium Red Dye = Kırmızı Boya +Medium Orange Dye = Turuncu Boya +Medium Yellow Dye = Sarı Boya +Medium Lime Dye = Limon Yeşili Boya +Medium Green Dye = Yeşil Boya +Medium Aqua Dye = Deniz mavisi Boya +Medium Cyan Dye = Cam göbeği Boya +Medium Sky-blue = Gök-Mavi +Medium Blue Dye = Mavi Boya +Medium Violet Dye = Koyu mor Boya +Medium Magenta Dye = Kızılımsı Mor Boya +Medium Red-violet Dye = Kırmızılı Boya + +Red Dye (low saturation) = Kırmızı Boya (düşük doygunluk) +Orange Dye (low saturation) = Turuncu Boya (düşük doygunluk) +Yellow Dye (low saturation) = Sarı Boya (düşük doygunluk) +Lime Dye (low saturation) = Limon Yeşili Boya (düşük doygunluk) +Green Dye (low saturation) = Yeşil Boya (düşük doygunluk) +Aqua Dye (low saturation) = Deniz mavisi Boya (düşük doygunluk) +Cyan Dye (low saturation) = Cam göbeği Boya (düşük doygunluk) +Sky-blue Dye (low saturation) = Gök-Mavi Boya (düşük doygunluk) +Blue Dye (low saturation) = Mavi Boya (düşük doygunluk) +Violet Dye (low saturation) = Koyu mor Boya (düşük doygunluk) +Magenta Dye (low saturation) = Kızılımsı Mor Boya (düşük doygunluk) +Red-violet Dye (low saturation) = Kırmızılı Boya (düşük doygunluk) + +Red Dye = Kırmızı Boya +Orange Dye = Turuncu Boya +Yellow Dye = Sarı Boya +Lime Dye = Limon Yeşili Boya +Green Dye = Yeşil Boya +Aqua Dye = Deniz mavisi Boya +Cyan Dye = Cam göbeği Boya +Sky-blue Dye = Gök-Mavi Boya +Blue Dye = Mavi Boya +Violet Dye = Koyu mor Boya +Magenta Dye = Kızılımsı Mor Boya +Red-violet Dye = Kırmızılı Boya + +[UnifiedDyes] Loaded! = [UnifiedBoyas] yüklendi! diff --git a/unifieddyes/textures/unifieddyes_aqua.png b/unifieddyes/textures/unifieddyes_aqua.png Binary files differnew file mode 100644 index 0000000..da73e21 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_aqua.png diff --git a/unifieddyes/textures/unifieddyes_aqua_s50.png b/unifieddyes/textures/unifieddyes_aqua_s50.png Binary files differnew file mode 100644 index 0000000..d737e67 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_aqua_s50.png diff --git a/unifieddyes/textures/unifieddyes_blue_s50.png b/unifieddyes/textures/unifieddyes_blue_s50.png Binary files differnew file mode 100644 index 0000000..33ab950 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_blue_s50.png diff --git a/unifieddyes/textures/unifieddyes_cyan_s50.png b/unifieddyes/textures/unifieddyes_cyan_s50.png Binary files differnew file mode 100644 index 0000000..7f304b7 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_cyan_s50.png diff --git a/unifieddyes/textures/unifieddyes_dark_aqua.png b/unifieddyes/textures/unifieddyes_dark_aqua.png Binary files differnew file mode 100644 index 0000000..6a146ea --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_aqua.png diff --git a/unifieddyes/textures/unifieddyes_dark_aqua_s50.png b/unifieddyes/textures/unifieddyes_dark_aqua_s50.png Binary files differnew file mode 100644 index 0000000..5dbf4bd --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_aqua_s50.png diff --git a/unifieddyes/textures/unifieddyes_dark_blue.png b/unifieddyes/textures/unifieddyes_dark_blue.png Binary files differnew file mode 100644 index 0000000..2a62a38 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_blue.png diff --git a/unifieddyes/textures/unifieddyes_dark_blue_s50.png b/unifieddyes/textures/unifieddyes_dark_blue_s50.png Binary files differnew file mode 100644 index 0000000..4eceeff --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_blue_s50.png diff --git a/unifieddyes/textures/unifieddyes_dark_cyan.png b/unifieddyes/textures/unifieddyes_dark_cyan.png Binary files differnew file mode 100644 index 0000000..4cfbee4 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_cyan.png diff --git a/unifieddyes/textures/unifieddyes_dark_cyan_s50.png b/unifieddyes/textures/unifieddyes_dark_cyan_s50.png Binary files differnew file mode 100644 index 0000000..857c470 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_cyan_s50.png diff --git a/unifieddyes/textures/unifieddyes_dark_green.png b/unifieddyes/textures/unifieddyes_dark_green.png Binary files differnew file mode 100644 index 0000000..19caa48 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_green.png diff --git a/unifieddyes/textures/unifieddyes_dark_green_s50.png b/unifieddyes/textures/unifieddyes_dark_green_s50.png Binary files differnew file mode 100644 index 0000000..686a49e --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_green_s50.png diff --git a/unifieddyes/textures/unifieddyes_dark_lime.png b/unifieddyes/textures/unifieddyes_dark_lime.png Binary files differnew file mode 100644 index 0000000..927ddf8 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_lime.png diff --git a/unifieddyes/textures/unifieddyes_dark_lime_s50.png b/unifieddyes/textures/unifieddyes_dark_lime_s50.png Binary files differnew file mode 100644 index 0000000..f274909 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_lime_s50.png diff --git a/unifieddyes/textures/unifieddyes_dark_magenta.png b/unifieddyes/textures/unifieddyes_dark_magenta.png Binary files differnew file mode 100644 index 0000000..4f622b8 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_magenta.png diff --git a/unifieddyes/textures/unifieddyes_dark_magenta_s50.png b/unifieddyes/textures/unifieddyes_dark_magenta_s50.png Binary files differnew file mode 100644 index 0000000..1c461dc --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_magenta_s50.png diff --git a/unifieddyes/textures/unifieddyes_dark_orange.png b/unifieddyes/textures/unifieddyes_dark_orange.png Binary files differnew file mode 100644 index 0000000..10bfdd2 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_orange.png diff --git a/unifieddyes/textures/unifieddyes_dark_orange_s50.png b/unifieddyes/textures/unifieddyes_dark_orange_s50.png Binary files differnew file mode 100644 index 0000000..2a794de --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_orange_s50.png diff --git a/unifieddyes/textures/unifieddyes_dark_red.png b/unifieddyes/textures/unifieddyes_dark_red.png Binary files differnew file mode 100644 index 0000000..504c359 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_red.png diff --git a/unifieddyes/textures/unifieddyes_dark_red_s50.png b/unifieddyes/textures/unifieddyes_dark_red_s50.png Binary files differnew file mode 100644 index 0000000..4e7f01b --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_red_s50.png diff --git a/unifieddyes/textures/unifieddyes_dark_redviolet.png b/unifieddyes/textures/unifieddyes_dark_redviolet.png Binary files differnew file mode 100644 index 0000000..79f1b15 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_redviolet.png diff --git a/unifieddyes/textures/unifieddyes_dark_redviolet_s50.png b/unifieddyes/textures/unifieddyes_dark_redviolet_s50.png Binary files differnew file mode 100644 index 0000000..889329e --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_redviolet_s50.png diff --git a/unifieddyes/textures/unifieddyes_dark_skyblue.png b/unifieddyes/textures/unifieddyes_dark_skyblue.png Binary files differnew file mode 100644 index 0000000..dc6e928 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_skyblue.png diff --git a/unifieddyes/textures/unifieddyes_dark_skyblue_s50.png b/unifieddyes/textures/unifieddyes_dark_skyblue_s50.png Binary files differnew file mode 100644 index 0000000..ac32c49 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_skyblue_s50.png diff --git a/unifieddyes/textures/unifieddyes_dark_violet.png b/unifieddyes/textures/unifieddyes_dark_violet.png Binary files differnew file mode 100644 index 0000000..b093fd0 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_violet.png diff --git a/unifieddyes/textures/unifieddyes_dark_violet_s50.png b/unifieddyes/textures/unifieddyes_dark_violet_s50.png Binary files differnew file mode 100644 index 0000000..c507491 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_violet_s50.png diff --git a/unifieddyes/textures/unifieddyes_dark_yellow.png b/unifieddyes/textures/unifieddyes_dark_yellow.png Binary files differnew file mode 100644 index 0000000..7bb6225 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_yellow.png diff --git a/unifieddyes/textures/unifieddyes_dark_yellow_s50.png b/unifieddyes/textures/unifieddyes_dark_yellow_s50.png Binary files differnew file mode 100644 index 0000000..c391292 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_dark_yellow_s50.png diff --git a/unifieddyes/textures/unifieddyes_darkgrey.png b/unifieddyes/textures/unifieddyes_darkgrey.png Binary files differnew file mode 100644 index 0000000..61b13d0 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_darkgrey.png diff --git a/unifieddyes/textures/unifieddyes_green_s50.png b/unifieddyes/textures/unifieddyes_green_s50.png Binary files differnew file mode 100644 index 0000000..8f8fb73 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_green_s50.png diff --git a/unifieddyes/textures/unifieddyes_light_aqua.png b/unifieddyes/textures/unifieddyes_light_aqua.png Binary files differnew file mode 100644 index 0000000..80458e2 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_light_aqua.png diff --git a/unifieddyes/textures/unifieddyes_light_blue.png b/unifieddyes/textures/unifieddyes_light_blue.png Binary files differnew file mode 100644 index 0000000..19f001d --- /dev/null +++ b/unifieddyes/textures/unifieddyes_light_blue.png diff --git a/unifieddyes/textures/unifieddyes_light_cyan.png b/unifieddyes/textures/unifieddyes_light_cyan.png Binary files differnew file mode 100644 index 0000000..1ff5580 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_light_cyan.png diff --git a/unifieddyes/textures/unifieddyes_light_green.png b/unifieddyes/textures/unifieddyes_light_green.png Binary files differnew file mode 100644 index 0000000..e549c6f --- /dev/null +++ b/unifieddyes/textures/unifieddyes_light_green.png diff --git a/unifieddyes/textures/unifieddyes_light_lime.png b/unifieddyes/textures/unifieddyes_light_lime.png Binary files differnew file mode 100644 index 0000000..e5d797e --- /dev/null +++ b/unifieddyes/textures/unifieddyes_light_lime.png diff --git a/unifieddyes/textures/unifieddyes_light_magenta.png b/unifieddyes/textures/unifieddyes_light_magenta.png Binary files differnew file mode 100644 index 0000000..08bed5b --- /dev/null +++ b/unifieddyes/textures/unifieddyes_light_magenta.png diff --git a/unifieddyes/textures/unifieddyes_light_orange.png b/unifieddyes/textures/unifieddyes_light_orange.png Binary files differnew file mode 100644 index 0000000..b92b000 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_light_orange.png diff --git a/unifieddyes/textures/unifieddyes_light_red.png b/unifieddyes/textures/unifieddyes_light_red.png Binary files differnew file mode 100644 index 0000000..ecc8bd8 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_light_red.png diff --git a/unifieddyes/textures/unifieddyes_light_redviolet.png b/unifieddyes/textures/unifieddyes_light_redviolet.png Binary files differnew file mode 100644 index 0000000..2e01d6f --- /dev/null +++ b/unifieddyes/textures/unifieddyes_light_redviolet.png diff --git a/unifieddyes/textures/unifieddyes_light_skyblue.png b/unifieddyes/textures/unifieddyes_light_skyblue.png Binary files differnew file mode 100644 index 0000000..9fc1a44 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_light_skyblue.png diff --git a/unifieddyes/textures/unifieddyes_light_violet.png b/unifieddyes/textures/unifieddyes_light_violet.png Binary files differnew file mode 100644 index 0000000..41d45fa --- /dev/null +++ b/unifieddyes/textures/unifieddyes_light_violet.png diff --git a/unifieddyes/textures/unifieddyes_light_yellow.png b/unifieddyes/textures/unifieddyes_light_yellow.png Binary files differnew file mode 100644 index 0000000..ed140d1 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_light_yellow.png diff --git a/unifieddyes/textures/unifieddyes_lightgrey.png b/unifieddyes/textures/unifieddyes_lightgrey.png Binary files differnew file mode 100644 index 0000000..97ab01f --- /dev/null +++ b/unifieddyes/textures/unifieddyes_lightgrey.png diff --git a/unifieddyes/textures/unifieddyes_lime.png b/unifieddyes/textures/unifieddyes_lime.png Binary files differnew file mode 100644 index 0000000..5e6d5bf --- /dev/null +++ b/unifieddyes/textures/unifieddyes_lime.png diff --git a/unifieddyes/textures/unifieddyes_lime_s50.png b/unifieddyes/textures/unifieddyes_lime_s50.png Binary files differnew file mode 100644 index 0000000..d02762e --- /dev/null +++ b/unifieddyes/textures/unifieddyes_lime_s50.png diff --git a/unifieddyes/textures/unifieddyes_magenta_s50.png b/unifieddyes/textures/unifieddyes_magenta_s50.png Binary files differnew file mode 100644 index 0000000..aaf9d51 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_magenta_s50.png diff --git a/unifieddyes/textures/unifieddyes_medium_aqua.png b/unifieddyes/textures/unifieddyes_medium_aqua.png Binary files differnew file mode 100644 index 0000000..3659c18 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_aqua.png diff --git a/unifieddyes/textures/unifieddyes_medium_aqua_s50.png b/unifieddyes/textures/unifieddyes_medium_aqua_s50.png Binary files differnew file mode 100644 index 0000000..fcd8869 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_aqua_s50.png diff --git a/unifieddyes/textures/unifieddyes_medium_blue.png b/unifieddyes/textures/unifieddyes_medium_blue.png Binary files differnew file mode 100644 index 0000000..4da240d --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_blue.png diff --git a/unifieddyes/textures/unifieddyes_medium_blue_s50.png b/unifieddyes/textures/unifieddyes_medium_blue_s50.png Binary files differnew file mode 100644 index 0000000..bd6e0f9 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_blue_s50.png diff --git a/unifieddyes/textures/unifieddyes_medium_cyan.png b/unifieddyes/textures/unifieddyes_medium_cyan.png Binary files differnew file mode 100644 index 0000000..e8015f6 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_cyan.png diff --git a/unifieddyes/textures/unifieddyes_medium_cyan_s50.png b/unifieddyes/textures/unifieddyes_medium_cyan_s50.png Binary files differnew file mode 100644 index 0000000..de14506 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_cyan_s50.png diff --git a/unifieddyes/textures/unifieddyes_medium_green.png b/unifieddyes/textures/unifieddyes_medium_green.png Binary files differnew file mode 100644 index 0000000..ecc5f06 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_green.png diff --git a/unifieddyes/textures/unifieddyes_medium_green_s50.png b/unifieddyes/textures/unifieddyes_medium_green_s50.png Binary files differnew file mode 100644 index 0000000..c9681b3 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_green_s50.png diff --git a/unifieddyes/textures/unifieddyes_medium_lime.png b/unifieddyes/textures/unifieddyes_medium_lime.png Binary files differnew file mode 100644 index 0000000..2060bac --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_lime.png diff --git a/unifieddyes/textures/unifieddyes_medium_lime_s50.png b/unifieddyes/textures/unifieddyes_medium_lime_s50.png Binary files differnew file mode 100644 index 0000000..6eadc25 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_lime_s50.png diff --git a/unifieddyes/textures/unifieddyes_medium_magenta.png b/unifieddyes/textures/unifieddyes_medium_magenta.png Binary files differnew file mode 100644 index 0000000..0f6144d --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_magenta.png diff --git a/unifieddyes/textures/unifieddyes_medium_magenta_s50.png b/unifieddyes/textures/unifieddyes_medium_magenta_s50.png Binary files differnew file mode 100644 index 0000000..d5ca0dd --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_magenta_s50.png diff --git a/unifieddyes/textures/unifieddyes_medium_orange.png b/unifieddyes/textures/unifieddyes_medium_orange.png Binary files differnew file mode 100644 index 0000000..d131b9c --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_orange.png diff --git a/unifieddyes/textures/unifieddyes_medium_orange_s50.png b/unifieddyes/textures/unifieddyes_medium_orange_s50.png Binary files differnew file mode 100644 index 0000000..7e08bcf --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_orange_s50.png diff --git a/unifieddyes/textures/unifieddyes_medium_red.png b/unifieddyes/textures/unifieddyes_medium_red.png Binary files differnew file mode 100644 index 0000000..28bc56d --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_red.png diff --git a/unifieddyes/textures/unifieddyes_medium_red_s50.png b/unifieddyes/textures/unifieddyes_medium_red_s50.png Binary files differnew file mode 100644 index 0000000..0eef916 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_red_s50.png diff --git a/unifieddyes/textures/unifieddyes_medium_redviolet.png b/unifieddyes/textures/unifieddyes_medium_redviolet.png Binary files differnew file mode 100644 index 0000000..1143e27 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_redviolet.png diff --git a/unifieddyes/textures/unifieddyes_medium_redviolet_s50.png b/unifieddyes/textures/unifieddyes_medium_redviolet_s50.png Binary files differnew file mode 100644 index 0000000..a314935 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_redviolet_s50.png diff --git a/unifieddyes/textures/unifieddyes_medium_skyblue.png b/unifieddyes/textures/unifieddyes_medium_skyblue.png Binary files differnew file mode 100644 index 0000000..f1e935f --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_skyblue.png diff --git a/unifieddyes/textures/unifieddyes_medium_skyblue_s50.png b/unifieddyes/textures/unifieddyes_medium_skyblue_s50.png Binary files differnew file mode 100644 index 0000000..bd2423e --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_skyblue_s50.png diff --git a/unifieddyes/textures/unifieddyes_medium_violet.png b/unifieddyes/textures/unifieddyes_medium_violet.png Binary files differnew file mode 100644 index 0000000..dd8b5fa --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_violet.png diff --git a/unifieddyes/textures/unifieddyes_medium_violet_s50.png b/unifieddyes/textures/unifieddyes_medium_violet_s50.png Binary files differnew file mode 100644 index 0000000..4b6de6a --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_violet_s50.png diff --git a/unifieddyes/textures/unifieddyes_medium_yellow.png b/unifieddyes/textures/unifieddyes_medium_yellow.png Binary files differnew file mode 100644 index 0000000..578f5b9 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_yellow.png diff --git a/unifieddyes/textures/unifieddyes_medium_yellow_s50.png b/unifieddyes/textures/unifieddyes_medium_yellow_s50.png Binary files differnew file mode 100644 index 0000000..ce141da --- /dev/null +++ b/unifieddyes/textures/unifieddyes_medium_yellow_s50.png diff --git a/unifieddyes/textures/unifieddyes_orange_s50.png b/unifieddyes/textures/unifieddyes_orange_s50.png Binary files differnew file mode 100644 index 0000000..fe62b73 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_orange_s50.png diff --git a/unifieddyes/textures/unifieddyes_red_s50.png b/unifieddyes/textures/unifieddyes_red_s50.png Binary files differnew file mode 100644 index 0000000..6aef4c6 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_red_s50.png diff --git a/unifieddyes/textures/unifieddyes_redviolet.png b/unifieddyes/textures/unifieddyes_redviolet.png Binary files differnew file mode 100644 index 0000000..2cb0692 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_redviolet.png diff --git a/unifieddyes/textures/unifieddyes_redviolet_s50.png b/unifieddyes/textures/unifieddyes_redviolet_s50.png Binary files differnew file mode 100644 index 0000000..a438d9d --- /dev/null +++ b/unifieddyes/textures/unifieddyes_redviolet_s50.png diff --git a/unifieddyes/textures/unifieddyes_skyblue.png b/unifieddyes/textures/unifieddyes_skyblue.png Binary files differnew file mode 100644 index 0000000..85aa3c5 --- /dev/null +++ b/unifieddyes/textures/unifieddyes_skyblue.png diff --git a/unifieddyes/textures/unifieddyes_skyblue_s50.png b/unifieddyes/textures/unifieddyes_skyblue_s50.png Binary files differnew file mode 100644 index 0000000..1d6834b --- /dev/null +++ b/unifieddyes/textures/unifieddyes_skyblue_s50.png diff --git a/unifieddyes/textures/unifieddyes_violet_s50.png b/unifieddyes/textures/unifieddyes_violet_s50.png Binary files differnew file mode 100644 index 0000000..620e42c --- /dev/null +++ b/unifieddyes/textures/unifieddyes_violet_s50.png diff --git a/unifieddyes/textures/unifieddyes_yellow_s50.png b/unifieddyes/textures/unifieddyes_yellow_s50.png Binary files differnew file mode 100644 index 0000000..a3b5f0b --- /dev/null +++ b/unifieddyes/textures/unifieddyes_yellow_s50.png diff --git a/unifieddyes/unifieddyes_base.png b/unifieddyes/unifieddyes_base.png Binary files differnew file mode 100644 index 0000000..912cc93 --- /dev/null +++ b/unifieddyes/unifieddyes_base.png |