diff options
168 files changed, 9086 insertions, 1570 deletions
diff --git a/build.properties b/build.properties index 39279f1d74..5a9547bf06 100644 --- a/build.properties +++ b/build.properties @@ -1,7 +1,7 @@ minecraft.version=1.7.10 forge.version=10.13.4.1566-1.7.10 -gt.version=5.09.30 +gt.version=5.09.31pre1 ae2.version=rv2-beta-33 applecore.version=1.7.10-1.2.1+107.59407 diff --git a/misc/vector/bricked_blast_furnace_active.svg b/misc/vector/bricked_blast_furnace_active.svg new file mode 100644 index 0000000000..4c5b0f77b7 --- /dev/null +++ b/misc/vector/bricked_blast_furnace_active.svg @@ -0,0 +1,1290 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="320" + height="320" + viewBox="0 0 84.666664 84.666664" + version="1.1" + id="svg8" + inkscape:version="0.92.1 r15371" + sodipodi:docname="bricked_blast_furnace_active.svg" + inkscape:export-filename="C:\Users\Johannes\git\GT5-Unofficial\misc\vector\MACHINE_CASING_BRICKEDBLASTFURNACE_ACTIVE.png" + inkscape:export-xdpi="4.8000002" + inkscape:export-ydpi="4.8000002"> + <defs + id="defs2"> + <filter + style="color-interpolation-filters:sRGB" + id="filter323" + inkscape:label="filter0"> + <feColorMatrix + id="feColorMatrix327" + values="1.5 0 0 0 0 0 1.24 0 0 0 0 0 0.94 0 0 0 0 0 1 0 " /> + <feColorMatrix + id="feColorMatrix28" + values="0.8 0 0 0 0 0 0.8 0 0 0 0 0 0.8 0 0 0 0 0 1 0 " /> + </filter> + <filter + style="color-interpolation-filters:sRGB" + id="filter323-2" + inkscape:label="filter0"> + <feColorMatrix + id="feColorMatrix327-2" + values="1.69 0 0 0 0 0 1 0 0 0 0 0 0.41 0 0 0 0 0 1 0 " /> + </filter> + <filter + style="color-interpolation-filters:sRGB;" + inkscape:label="Greyscale" + id="filter973"> + <feColorMatrix + values="0.33 0.33 0.33 0 0 0.33 0.33 0.33 0 0 0.33 0.33 0.33 0 0 0 0 0 1 0 " + id="feColorMatrix971" + result="fbSourceGraphic" /> + </filter> + <filter + style="color-interpolation-filters:sRGB" + id="filter1066" + inkscape:label="filter3"> + <feColorMatrix + id="feColorMatrix1068" + values="1.5 0 0 0 0 0 1.5 0 0 0 0 0 1.5 0 0 0 0 0 1 0 " /> + </filter> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4" + inkscape:cx="-17.988467" + inkscape:cy="273.04763" + inkscape:document-units="mm" + inkscape:current-layer="layer1" + showgrid="true" + inkscape:window-width="1920" + inkscape:window-height="1017" + inkscape:window-x="-8" + inkscape:window-y="-8" + inkscape:window-maximized="1" + units="px"> + <inkscape:grid + type="xygrid" + id="grid4851" /> + </sodipodi:namedview> + <metadata + id="metadata5"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(0,-212.33337)"> + <image + y="261.77823" + x="137.37654" + id="image18" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABWUlEQVR42n1TS8uCUBC9/zMsFVxo UqGSRou2IqRCkWJFLvyf83EmRibza3HwPuaeeZyjeb1e1LYt9X1Pj8eD6rrmb9M0dL1eP9B1HZ3P Z6qqisqyJNu2ySA4z/MRh8PhYx/HMZ1OJwbuZH08HslxHDLIiAuBkEgggDO9B+l6vSbLssigVMmi AzWpQBNuNhtarVZk0NtcsG5j2g7WSZK8K7hcLl9Zpn0Dcib7IAjeM8BUoyiiLMuYFaVp4AzY7Xbk eR6FYch7vGEClPELi8WCvwh2XZelA9A/t4AZYJACyArcbjcOGoaBns8n3e939gA8o/1i/ut9u91y BiT4pY7RBgKBKLDf77lUVKU9ICqMBNMLySY6i1NBriuUasyc9lj7vj+2oE301cLcBTKBAJOHT3Rl +n9BnEGgAGXDINAZvoBsRVGw9mmasvbiD3ljtK4a2gvL5XL0wPTuD25VbTdjHernAAAAAElFTkSu QmCC " + style="filter:url(#filter323);image-rendering:optimizeSpeed" + preserveAspectRatio="none" + height="84.666664" + width="84.666664" /> + <image + y="215.91263" + x="253.26675" + id="image18-7" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABWUlEQVR42n1TS8uCUBC9/zMsFVxo UqGSRou2IqRCkWJFLvyf83EmRibza3HwPuaeeZyjeb1e1LYt9X1Pj8eD6rrmb9M0dL1eP9B1HZ3P Z6qqisqyJNu2ySA4z/MRh8PhYx/HMZ1OJwbuZH08HslxHDLIiAuBkEgggDO9B+l6vSbLssigVMmi AzWpQBNuNhtarVZk0NtcsG5j2g7WSZK8K7hcLl9Zpn0Dcib7IAjeM8BUoyiiLMuYFaVp4AzY7Xbk eR6FYch7vGEClPELi8WCvwh2XZelA9A/t4AZYJACyArcbjcOGoaBns8n3e939gA8o/1i/ut9u91y BiT4pY7RBgKBKLDf77lUVKU9ICqMBNMLySY6i1NBriuUasyc9lj7vj+2oE301cLcBTKBAJOHT3Rl +n9BnEGgAGXDINAZvoBsRVGw9mmasvbiD3ljtK4a2gvL5XL0wPTuD25VbTdjHernAAAAAElFTkSu QmCC " + style="filter:url(#filter323-2);image-rendering:optimizeSpeed" + preserveAspectRatio="none" + height="84.666664" + width="84.666664" /> + <rect + style="opacity:0.98000004;fill:#d78034;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect340" + width="45.168549" + height="24.856066" + x="171.85431" + y="197.57578" /> + <g + id="g4863" + style="filter:url(#filter323)" + transform="translate(10.583331,121.70833)"> + <image + y="212.33337" + x="1.2715658e-006" + id="image4849" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABWUlEQVR42n1TS8uCUBC9/zMsFVxo UqGSRou2IqRCkWJFLvyf83EmRibza3HwPuaeeZyjeb1e1LYt9X1Pj8eD6rrmb9M0dL1eP9B1HZ3P Z6qqisqyJNu2ySA4z/MRh8PhYx/HMZ1OJwbuZH08HslxHDLIiAuBkEgggDO9B+l6vSbLssigVMmi AzWpQBNuNhtarVZk0NtcsG5j2g7WSZK8K7hcLl9Zpn0Dcib7IAjeM8BUoyiiLMuYFaVp4AzY7Xbk eR6FYch7vGEClPELi8WCvwh2XZelA9A/t4AZYJACyArcbjcOGoaBns8n3e939gA8o/1i/ut9u91y BiT4pY7RBgKBKLDf77lUVKU9ICqMBNMLySY6i1NBriuUasyc9lj7vj+2oE301cLcBTKBAJOHT3Rl +n9BnEGgAGXDINAZvoBsRVGw9mmasvbiD3ljtK4a2gvL5XL0wPTuD25VbTdjHernAAAAAElFTkSu QmCC " + style="image-rendering:optimizeSpeed" + preserveAspectRatio="none" + height="42.333332" + width="42.333332" /> + <image + width="42.333332" + height="42.333332" + preserveAspectRatio="none" + style="image-rendering:optimizeSpeed" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABWUlEQVR42n1TS8uCUBC9/zMsFVxo UqGSRou2IqRCkWJFLvyf83EmRibza3HwPuaeeZyjeb1e1LYt9X1Pj8eD6rrmb9M0dL1eP9B1HZ3P Z6qqisqyJNu2ySA4z/MRh8PhYx/HMZ1OJwbuZH08HslxHDLIiAuBkEgggDO9B+l6vSbLssigVMmi AzWpQBNuNhtarVZk0NtcsG5j2g7WSZK8K7hcLl9Zpn0Dcib7IAjeM8BUoyiiLMuYFaVp4AzY7Xbk eR6FYch7vGEClPELi8WCvwh2XZelA9A/t4AZYJACyArcbjcOGoaBns8n3e939gA8o/1i/ut9u91y BiT4pY7RBgKBKLDf77lUVKU9ICqMBNMLySY6i1NBriuUasyc9lj7vj+2oE301cLcBTKBAJOHT3Rl +n9BnEGgAGXDINAZvoBsRVGw9mmasvbiD3ljtK4a2gvL5XL0wPTuD25VbTdjHernAAAAAElFTkSu QmCC " + id="image4853" + x="42.333336" + y="212.33337" /> + <image + y="254.6667" + x="42.333336" + id="image4855" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABWUlEQVR42n1TS8uCUBC9/zMsFVxo UqGSRou2IqRCkWJFLvyf83EmRibza3HwPuaeeZyjeb1e1LYt9X1Pj8eD6rrmb9M0dL1eP9B1HZ3P Z6qqisqyJNu2ySA4z/MRh8PhYx/HMZ1OJwbuZH08HslxHDLIiAuBkEgggDO9B+l6vSbLssigVMmi AzWpQBNuNhtarVZk0NtcsG5j2g7WSZK8K7hcLl9Zpn0Dcib7IAjeM8BUoyiiLMuYFaVp4AzY7Xbk eR6FYch7vGEClPELi8WCvwh2XZelA9A/t4AZYJACyArcbjcOGoaBns8n3e939gA8o/1i/ut9u91y BiT4pY7RBgKBKLDf77lUVKU9ICqMBNMLySY6i1NBriuUasyc9lj7vj+2oE301cLcBTKBAJOHT3Rl +n9BnEGgAGXDINAZvoBsRVGw9mmasvbiD3ljtK4a2gvL5XL0wPTuD25VbTdjHernAAAAAElFTkSu QmCC " + style="image-rendering:optimizeSpeed" + preserveAspectRatio="none" + height="42.333332" + width="42.333332" /> + <image + width="42.333332" + height="42.333332" + preserveAspectRatio="none" + style="image-rendering:optimizeSpeed" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABWUlEQVR42n1TS8uCUBC9/zMsFVxo UqGSRou2IqRCkWJFLvyf83EmRibza3HwPuaeeZyjeb1e1LYt9X1Pj8eD6rrmb9M0dL1eP9B1HZ3P Z6qqisqyJNu2ySA4z/MRh8PhYx/HMZ1OJwbuZH08HslxHDLIiAuBkEgggDO9B+l6vSbLssigVMmi AzWpQBNuNhtarVZk0NtcsG5j2g7WSZK8K7hcLl9Zpn0Dcib7IAjeM8BUoyiiLMuYFaVp4AzY7Xbk eR6FYch7vGEClPELi8WCvwh2XZelA9A/t4AZYJACyArcbjcOGoaBns8n3e939gA8o/1i/ut9u91y BiT4pY7RBgKBKLDf77lUVKU9ICqMBNMLySY6i1NBriuUasyc9lj7vj+2oE301cLcBTKBAJOHT3Rl +n9BnEGgAGXDINAZvoBsRVGw9mmasvbiD3ljtK4a2gvL5XL0wPTuD25VbTdjHernAAAAAElFTkSu QmCC " + id="image4857" + x="-7.1054274e-015" + y="254.6667" /> + </g> + <g + id="g751"> + <image + width="84.666664" + height="84.666664" + preserveAspectRatio="none" + style="image-rendering:optimizeSpeed" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz AAAAvQAAAL0BHVrG+gAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAADxSURB VDiN7dLNSsNAFMXxf+JN+hFLGKGgUBBBRF/AvW/l0/gqPowIRdI0sZl8zEwSV4aCON2Ld/tb3XNO 8PryPAYE7IqKxTzCuR6A1lgIAtZqhc8lLzTvHzkqTciKA8e3zUrObjdel0hCAPalRqXJhHVjWC5i Trm0xjKMI1Xd8albZrFgXY9zA7NYOOUyjyPuri+JROisRa2W6NbgXE/TWiIJvS6lbtiXGgDXD9zf XPG2zQHojEWlidfDb1RpQnGop5Q7Y6fffS5ZUQGwKzUXaULVdNStQTcdxroptN9cnh4ffvR8vll7 d3Ds/zv4Ezv4AptmhMVYeNf6AAAAAElFTkSuQmCC " + id="image40" + x="0" + y="212.33337" /> + <rect + y="291.70837" + x="58.208332" + height="5.2916665" + width="5.2916665" + id="rect43" + style="opacity:0.98000004;fill:#7f6950;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="249.37505" + x="58.208332" + height="5.2916665" + width="5.2916665" + id="rect43-8" + style="opacity:0.98000004;fill:#7f6950;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="286.41672" + x="52.916664" + height="5.2916665" + width="5.2916665" + id="rect60" + style="opacity:0.98000004;fill:#92785b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="244.08339" + x="52.916664" + height="5.2916665" + width="5.2916665" + id="rect60-0" + style="opacity:0.98000004;fill:#92785b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="249.37505" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect43-8-2" + style="opacity:0.98000004;fill:#7f6950;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="286.41672" + x="10.583331" + height="5.2916665" + width="5.2916665" + id="rect60-0-9" + style="opacity:0.98000004;fill:#92785b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="291.70837" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect43-3" + style="opacity:0.98000004;fill:#7f6950;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="254.6667" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect122" + style="opacity:0.98000004;fill:#b69672;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="244.08337" + x="10.583334" + height="5.2916665" + width="5.2916665" + id="rect124" + style="opacity:0.98000004;fill:#a38766;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="238.7917" + x="42.333332" + height="5.2916665" + width="5.2916665" + id="rect126" + style="opacity:0.98000004;fill:#92785b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="281.12503" + x="42.333332" + height="5.2916665" + width="5.2916665" + id="rect128" + style="opacity:0.98000004;fill:#92785b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="212.33337" + x="52.916664" + height="5.2916665" + width="5.2916665" + id="rect130" + style="opacity:0.98000004;fill:#c09e79;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="212.33337" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect132" + style="opacity:0.98000004;fill:#c09e79;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="244.08337" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect156" + style="opacity:0.98000004;fill:#92785b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="244.08337" + x="47.625" + height="5.2916665" + width="5.2916665" + id="rect158" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="281.12503" + x="47.625" + height="5.2916665" + width="5.2916665" + id="rect160" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="286.41672" + x="37.041668" + height="5.2916665" + width="5.2916665" + id="rect162" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="244.08337" + x="5.2916665" + height="5.2916665" + width="5.2916665" + id="rect164" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="238.7917" + x="37.041668" + height="5.2916665" + width="5.2916665" + id="rect166" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="291.70837" + x="47.625" + height="5.2916665" + width="5.2916665" + id="rect339" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="249.37505" + x="79.375" + height="5.2916665" + width="5.2916665" + id="rect339-9" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="259.95837" + x="79.375" + height="5.2916665" + width="5.2916665" + id="rect339-3" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="217.62505" + x="37.041668" + height="5.2916665" + width="5.2916665" + id="rect339-1" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="249.37503" + x="-8.8817842e-016" + height="5.2916665" + width="5.2916665" + id="rect339-4" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="270.54172" + x="47.625" + height="5.2916665" + width="5.2916665" + id="rect681" + style="opacity:0.98000004;fill:#846d53;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="259.95837" + x="5.2916665" + height="5.2916665" + width="5.2916665" + id="rect683" + style="opacity:0.98000004;fill:#a38766;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="222.9167" + x="52.916664" + height="5.2916665" + width="5.2916665" + id="rect685" + style="opacity:0.98000004;fill:#a38766;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="217.62503" + x="5.2916665" + height="5.2916665" + width="5.2916665" + id="rect689" + style="opacity:0.98000004;fill:#a38766;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="222.9167" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect691" + style="opacity:0.98000004;fill:#a38766;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="265.25003" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect693" + style="opacity:0.98000004;fill:#a38766;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="265.25003" + x="5.2916665" + height="5.2916665" + width="5.2916665" + id="rect695" + style="opacity:0.98000004;fill:#a38766;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="265.25003" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect697" + style="opacity:0.98000004;fill:#997e60;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + </g> + <image + y="127.66671" + x="-92.604164" + id="image707" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAABmJLR0QA/wD/AP+gvaeTAAAACXBI +WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3gYJDBYkPynFtwAAAYdJREFUKM+FktFKlHEQxX/f14dY +SHoh7aqgvUAi9Cg+QdQDBL1N9Aw+THdCa1vuUppEpi60M+dMF//Fq7C5GAbmnDnMnOmmx1sARdjp +SjtUaadKrpTTTleoskgxAAd7O6kKO+1Qo1U2mivklFUOcTa77KHC/nQ+bwqT82+pe7QnX+dpyzU5 +v0w5xdCGnV7dnF7dAMD0empYCgNw+eU7sDTPbJkh5LSB/SccPR/1Hy74V7x/SbhC9E3hV/BwZJGq +NH1bdyE+Xj9EWJq0c6Xg+v0/has/pCtMH7ZUrv8Qho6UZXrLaS+9arw76t6+6O5xbw66V3vdagdX +mCFcYQOHmwCLO5S83u+USCxuSXG80Q1dhZsPqlQttBq5uEWioZWkUFK1upLM0Pxf6zmZczK/GD0F +WOtXl7mvgbTTzWn7cIPd0Xban2c/x+Ot9nwpn83udsbrKU9ny3zcfChS3htvpx2unfFmyu2XwrU7 +WpdLrvHoUdphhhCT2Y80EiFk0oTIIoREmmy5qOIvirycu2t8lJoAAAAASUVORK5CYII= +" + style="image-rendering:optimizeSpeed;filter:url(#filter973)" + preserveAspectRatio="none" + height="84.666664" + width="84.666664" /> + <image + y="212.33337" + x="-92.604164" + id="image1078" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAABmJLR0QA/wD/AP+gvaeTAAAACXBI +WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3gYJDBYMCpxtTQAAAchJREFUKM9dkj1uU3EQxH9+PIUY +ERGkCDuJEKJHVLRUHICCM3AAOjroaenoOAM34AQUKLaIg5M4AZsoysd7juLdnaX4mxQ0qyl2dnZm +tzN+tQ6QmORKlyzSJY8MpYdccqVFeuJBDTza3vRIk1yyKLT0QlNayEORsmBvMqsgTdo9PCoKo8Nf +HjfdGh0cuRTK0eHMQx7UZdjw5HJ4cgkA4/OxYBEIgNn+b2AhHkghagu5BLx88RwgBXDdkgngizLl +09cdU9qNwpnB1QUfvgH5utf5OKUh3/Y6b6Y0/HiHJx7poi525wHnMxpoaE6mawNoWZxObw+g5fM+ +wEPdeFBeGJnqDKDlzFgbwiXHVzweQgOw1cWVJmqTIlIJ13MG0KCkgHnADrTFBR4KUSvk0kJ0/Jqy +iZYEgH8Kx1fcv5MmKlOatMxnCAMahwEMgCV4dh/Alh4iPXIehPuX46X6QRe6VC27TwCqTlkpQ9Tl +/isV779TDgSsVP9jwCXXMiU9vctWb8Oln5PTfn+9PJ+H9ibtZn/VQ+PJwrvpovLEQ9v9DZdMudm/ +56HyS6bc6q2GMpT93i2XTNQWjCZ/XERgQQgXFnhiQQQuvNQkk78HIMZSVfQymQAAAABJRU5ErkJg +gg== +" + style="image-rendering:optimizeSpeed;" + preserveAspectRatio="none" + height="84.666664" + width="84.666664" /> + <g + id="g2197" + transform="translate(-2.5431315e-6,-4.0234376e-6)"> + <rect + y="238.7917" + x="21.166666" + height="5.2916665" + width="5.2916665" + id="rect787" + style="opacity:0.98000004;fill:#ffff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#fff300;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect793" + width="5.2916665" + height="5.2916665" + x="21.166666" + y="244.08336" /> + <rect + y="249.37503" + x="21.166666" + height="5.2916665" + width="5.2916665" + id="rect799" + style="opacity:0.98000004;fill:#ffcb00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#ffa300;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect805" + width="5.2916665" + height="5.2916665" + x="21.166666" + y="254.6667" /> + <rect + y="259.95837" + x="21.166666" + height="5.2916665" + width="5.2916665" + id="rect811" + style="opacity:0.98000004;fill:#ff7b00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#ff5400;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect817" + width="5.2916665" + height="5.2916665" + x="21.166666" + y="265.25006" /> + <rect + y="265.25006" + x="26.458334" + height="5.2916665" + width="5.2916665" + id="rect839" + style="opacity:0.98000004;fill:#ff4800;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="265.25006" + x="37.041664" + height="5.2916665" + width="5.2916665" + id="rect851" + style="opacity:0.98000004;fill:#ff3100;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#ff2500;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect857" + width="5.2916665" + height="5.2916665" + x="42.333332" + y="265.25006" /> + <rect + style="opacity:0.98000004;fill:#ff0e00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect869" + width="5.2916665" + height="5.2916665" + x="52.916664" + y="265.25006" /> + <rect + y="265.25006" + x="58.208332" + height="5.2916665" + width="5.2916665" + id="rect887" + style="opacity:0.98000004;fill:#ff0200;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#ff7000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect1166" + width="5.2916665" + height="5.2916665" + x="26.458334" + y="259.95837" /> + <rect + style="opacity:0.98000004;fill:#ff5900;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect1170" + width="5.2916665" + height="5.2916665" + x="37.041664" + y="259.95837" /> + <rect + y="259.95837" + x="42.333332" + height="5.2916665" + width="5.2916665" + id="rect1172" + style="opacity:0.98000004;fill:#ff4d00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="259.95837" + x="52.916664" + height="5.2916665" + width="5.2916665" + id="rect1176" + style="opacity:0.98000004;fill:#ff3600;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#ff2a00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect1178" + width="5.2916665" + height="5.2916665" + x="58.208332" + y="259.95837" /> + <rect + y="254.6667" + x="26.458336" + height="5.2916665" + width="5.2916665" + id="rect1182" + style="opacity:0.98000004;fill:#ff9700;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="254.6667" + x="37.041668" + height="5.2916665" + width="5.2916665" + id="rect1186" + style="opacity:0.98000004;fill:#ff8100;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#ff7500;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect1188" + width="5.2916665" + height="5.2916665" + x="42.333336" + y="254.6667" /> + <rect + style="opacity:0.98000004;fill:#ff5d00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect1192" + width="5.2916665" + height="5.2916665" + x="52.916668" + y="254.6667" /> + <rect + y="254.6667" + x="58.208336" + height="5.2916665" + width="5.2916665" + id="rect1194" + style="opacity:0.98000004;fill:#ff5200;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#ffc000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect1198" + width="5.2916665" + height="5.2916665" + x="26.45833" + y="249.37503" /> + <rect + style="opacity:0.98000004;fill:#ffa900;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect1202" + width="5.2916665" + height="5.2916665" + x="37.041664" + y="249.37503" /> + <rect + y="249.37503" + x="42.333332" + height="5.2916665" + width="5.2916665" + id="rect1204" + style="opacity:0.98000004;fill:#ff9c00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="249.37503" + x="52.916664" + height="5.2916665" + width="5.2916665" + id="rect1208" + style="opacity:0.98000004;fill:#ff8600;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#ff7a00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect1210" + width="5.2916665" + height="5.2916665" + x="58.208332" + y="249.37503" /> + <rect + y="244.08337" + x="26.458332" + height="5.2916665" + width="5.2916665" + id="rect1214" + style="opacity:0.98000004;fill:#ffe700;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="244.08337" + x="37.041668" + height="5.2916665" + width="5.2916665" + id="rect1218" + style="opacity:0.98000004;fill:#ffd000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#ffc500;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect1220" + width="5.2916665" + height="5.2916665" + x="42.333336" + y="244.08337" /> + <rect + style="opacity:0.98000004;fill:#ffad00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect1224" + width="5.2916665" + height="5.2916665" + x="52.916668" + y="244.08337" /> + <rect + y="244.08337" + x="58.208336" + height="5.2916665" + width="5.2916665" + id="rect1226" + style="opacity:0.98000004;fill:#ffa200;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#ffff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect1230" + width="5.2916665" + height="5.2916665" + x="26.458326" + y="238.7917" /> + <rect + style="opacity:0.98000004;fill:#fff800;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect1234" + width="5.2916665" + height="5.2916665" + x="37.041664" + y="238.7917" /> + <rect + y="238.7917" + x="42.333332" + height="5.2916665" + width="5.2916665" + id="rect1236" + style="opacity:0.98000004;fill:#ffec00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="238.7917" + x="52.916664" + height="5.2916665" + width="5.2916665" + id="rect1240" + style="opacity:0.98000004;fill:#ffd500;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#ffc900;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect1242" + width="5.2916665" + height="5.2916665" + x="58.208332" + y="238.7917" /> + </g> + <g + id="g2519"> + <rect + y="228.20837" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect753" + style="opacity:0.98000004;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="228.20837" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect755" + style="opacity:0.98000004;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="228.20837" + x="21.166666" + height="5.2916665" + width="5.2916665" + id="rect757" + style="opacity:0.98000004;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="228.20837" + x="26.458332" + height="5.2916665" + width="5.2916665" + id="rect759" + style="opacity:0.98000004;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="228.20837" + x="31.75" + height="5.2916665" + width="5.2916665" + id="rect761" + style="opacity:0.98000004;fill:#4a4a4a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="228.20837" + x="37.041668" + height="5.2916665" + width="5.2916665" + id="rect763" + style="opacity:0.98000004;fill:#4a4a4a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#474747;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect765" + width="5.2916665" + height="5.2916665" + x="42.333332" + y="228.20836" /> + <rect + style="opacity:0.98000004;fill:#464646;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect767" + width="5.2916665" + height="5.2916665" + x="47.624996" + y="228.20836" /> + <rect + style="opacity:0.98000004;fill:#464646;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect769" + width="5.2916665" + height="5.2916665" + x="58.208328" + y="228.20836" /> + <rect + style="opacity:0.98000004;fill:#444444;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect771" + width="5.2916665" + height="5.2916665" + x="68.791664" + y="228.20836" /> + <rect + y="228.20836" + x="63.5" + height="5.2916665" + width="5.2916665" + id="rect773" + style="opacity:0.98000004;fill:#464646;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#464646;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect775" + width="5.2916665" + height="5.2916665" + x="52.916668" + y="228.20836" /> + <rect + style="opacity:0.98000004;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect777" + width="5.2916665" + height="5.2916665" + x="10.583333" + y="233.50003" /> + <rect + style="opacity:0.98000004;fill:#919191;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect779" + width="5.2916665" + height="5.2916665" + x="15.875" + y="233.50003" /> + <rect + style="opacity:0.98000004;fill:#919191;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect781" + width="5.2916665" + height="5.2916665" + x="21.166666" + y="233.50003" /> + <rect + y="238.7917" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect783" + style="opacity:0.98000004;fill:#464646;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="238.7917" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect785" + style="opacity:0.98000004;fill:#8a8a8a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#424242;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect789" + width="5.2916665" + height="5.2916665" + x="10.583333" + y="244.08336" /> + <rect + style="opacity:0.98000004;fill:#7e7e7e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect791" + width="5.2916665" + height="5.2916665" + x="15.875" + y="244.08336" /> + <rect + y="249.37503" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect795" + style="opacity:0.98000004;fill:#3c3c3c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="249.37503" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect797" + style="opacity:0.98000004;fill:#7c7c7c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#3b3b3b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect801" + width="5.2916665" + height="5.2916665" + x="10.583333" + y="254.6667" /> + <rect + style="opacity:0.98000004;fill:#777777;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect803" + width="5.2916665" + height="5.2916665" + x="15.875" + y="254.6667" /> + <rect + y="259.95837" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect807" + style="opacity:0.98000004;fill:#383838;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="259.95837" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect809" + style="opacity:0.98000004;fill:#646464;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#383838;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect813" + width="5.2916665" + height="5.2916665" + x="10.583333" + y="265.25006" /> + <rect + style="opacity:0.98000004;fill:#636363;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect815" + width="5.2916665" + height="5.2916665" + x="15.875" + y="265.25006" /> + <rect + y="270.54172" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect819" + style="opacity:0.98000004;fill:#343434;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="270.54172" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect821" + style="opacity:0.98000004;fill:#585858;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="270.54172" + x="21.166666" + height="5.2916665" + width="5.2916665" + id="rect823" + style="opacity:0.98000004;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect825" + width="5.2916665" + height="5.2916665" + x="10.583333" + y="275.83337" /> + <rect + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect827" + width="5.2916665" + height="5.2916665" + x="15.875" + y="275.83337" /> + <rect + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect829" + width="5.2916665" + height="5.2916665" + x="21.166666" + y="275.83337" /> + <rect + style="opacity:0.98000004;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect841" + width="5.2916665" + height="5.2916665" + x="26.458334" + y="270.54172" /> + <rect + y="275.83337" + x="26.458334" + height="5.2916665" + width="5.2916665" + id="rect843" + style="opacity:0.98000004;fill:#343434;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#5a5a5a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect845" + width="5.2916665" + height="5.2916665" + x="31.75" + y="265.25006" /> + <rect + y="270.54172" + x="31.75" + height="5.2916665" + width="5.2916665" + id="rect847" + style="opacity:0.98000004;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#343434;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect849" + width="5.2916665" + height="5.2916665" + x="31.75" + y="275.83337" /> + <rect + style="opacity:0.98000004;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect853" + width="5.2916665" + height="5.2916665" + x="37.041664" + y="270.54172" /> + <rect + y="275.83337" + x="37.041664" + height="5.2916665" + width="5.2916665" + id="rect855" + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="270.54172" + x="42.333332" + height="5.2916665" + width="5.2916665" + id="rect859" + style="opacity:0.98000004;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect861" + width="5.2916665" + height="5.2916665" + x="42.333332" + y="275.83337" /> + <rect + y="265.25006" + x="47.625" + height="5.2916665" + width="5.2916665" + id="rect863" + style="opacity:0.98000004;fill:#5d5d5d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#4e4e4e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect865" + width="5.2916665" + height="5.2916665" + x="47.625" + y="270.54172" /> + <rect + y="275.83337" + x="47.625" + height="5.2916665" + width="5.2916665" + id="rect867" + style="opacity:0.98000004;fill:#343434;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="270.54172" + x="52.916664" + height="5.2916665" + width="5.2916665" + id="rect871" + style="opacity:0.98000004;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#343434;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect873" + width="5.2916665" + height="5.2916665" + x="52.916664" + y="275.83337" /> + <rect + style="opacity:0.98000004;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect889" + width="5.2916665" + height="5.2916665" + x="58.208332" + y="270.54172" /> + <rect + y="275.83337" + x="58.208332" + height="5.2916665" + width="5.2916665" + id="rect891" + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect893" + width="5.2916665" + height="5.2916665" + x="63.5" + y="265.25006" /> + <rect + y="270.54172" + x="63.5" + height="5.2916665" + width="5.2916665" + id="rect895" + style="opacity:0.98000004;fill:#4e4e4e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect897" + width="5.2916665" + height="5.2916665" + x="63.5" + y="275.83337" /> + <rect + y="265.25006" + x="68.791672" + height="5.2916665" + width="5.2916665" + id="rect899" + style="opacity:0.98000004;fill:#383838;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#383838;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect901" + width="5.2916665" + height="5.2916665" + x="68.791672" + y="270.54172" /> + <rect + y="275.83337" + x="68.791672" + height="5.2916665" + width="5.2916665" + id="rect903" + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#424242;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect905" + width="5.2916665" + height="5.2916665" + x="68.791672" + y="249.37506" /> + <rect + y="254.66672" + x="68.791672" + height="5.2916665" + width="5.2916665" + id="rect907" + style="opacity:0.98000004;fill:#424242;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect909" + width="5.2916665" + height="5.2916665" + x="68.791672" + y="259.95837" /> + <rect + y="233.50003" + x="68.791672" + height="5.2916665" + width="5.2916665" + id="rect911" + style="opacity:0.98000004;fill:#444444;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#424242;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect913" + width="5.2916665" + height="5.2916665" + x="68.791672" + y="238.79169" /> + <rect + y="244.08334" + x="68.791672" + height="5.2916665" + width="5.2916665" + id="rect915" + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="259.95837" + x="31.75" + height="5.2916665" + width="5.2916665" + id="rect1168" + style="opacity:0.98000004;fill:#606060;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#5d5d5d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect1174" + width="5.2916665" + height="5.2916665" + x="47.625" + y="259.95837" /> + <rect + y="259.95837" + x="63.5" + height="5.2916665" + width="5.2916665" + id="rect1180" + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#626262;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect1184" + width="5.2916665" + height="5.2916665" + x="31.750002" + y="254.6667" /> + <rect + y="254.6667" + x="47.625004" + height="5.2916665" + width="5.2916665" + id="rect1190" + style="opacity:0.98000004;fill:#616161;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect1196" + width="5.2916665" + height="5.2916665" + x="63.500004" + y="254.6667" /> + <rect + y="249.37503" + x="31.749996" + height="5.2916665" + width="5.2916665" + id="rect1200" + style="opacity:0.98000004;fill:#636363;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#616161;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect1206" + width="5.2916665" + height="5.2916665" + x="47.625" + y="249.37503" /> + <rect + y="249.37503" + x="63.5" + height="5.2916665" + width="5.2916665" + id="rect1212" + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#6a6a6a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect1216" + width="5.2916665" + height="5.2916665" + x="31.749998" + y="244.08337" /> + <rect + y="244.08337" + x="47.625004" + height="5.2916665" + width="5.2916665" + id="rect1222" + style="opacity:0.98000004;fill:#6d6d6d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect1228" + width="5.2916665" + height="5.2916665" + x="63.500004" + y="244.08337" /> + <rect + y="238.7917" + x="31.749992" + height="5.2916665" + width="5.2916665" + id="rect1232" + style="opacity:0.98000004;fill:#7c7c7c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#7c7c7c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect1238" + width="5.2916665" + height="5.2916665" + x="47.625" + y="238.7917" /> + <rect + y="238.7917" + x="63.5" + height="5.2916665" + width="5.2916665" + id="rect1244" + style="opacity:0.98000004;fill:#606060;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="233.50003" + x="26.458328" + height="5.2916665" + width="5.2916665" + id="rect1246" + style="opacity:0.98000004;fill:#909090;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#909090;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect1248" + width="5.2916665" + height="5.2916665" + x="31.749994" + y="233.50003" /> + <rect + y="233.50003" + x="37.041668" + height="5.2916665" + width="5.2916665" + id="rect1250" + style="opacity:0.98000004;fill:#8a8a8a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#8a8a8a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect1252" + width="5.2916665" + height="5.2916665" + x="42.333336" + y="233.50003" /> + <rect + y="233.50003" + x="47.625004" + height="5.2916665" + width="5.2916665" + id="rect1254" + style="opacity:0.98000004;fill:#8a8a8a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#7c7c7c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect1256" + width="5.2916665" + height="5.2916665" + x="52.916668" + y="233.50003" /> + <rect + y="233.50003" + x="58.208336" + height="5.2916665" + width="5.2916665" + id="rect1258" + style="opacity:0.98000004;fill:#747474;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#6d6d6d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect1260" + width="5.2916665" + height="5.2916665" + x="63.500004" + y="233.50003" /> + </g> + </g> +</svg> diff --git a/misc/vector/bricked_blast_furnace_gui.svg b/misc/vector/bricked_blast_furnace_gui.svg new file mode 100644 index 0000000000..cf9cd5d9dc --- /dev/null +++ b/misc/vector/bricked_blast_furnace_gui.svg @@ -0,0 +1,175 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="5120" + height="5120" + viewBox="0 0 1354.6666 1354.6666" + version="1.1" + id="svg8" + inkscape:version="0.92.1 r15371" + sodipodi:docname="bricked_blast_furnace_gui.svg" + inkscape:export-filename="./BrickedBlastFurnace.png" + inkscape:export-xdpi="4.8000002" + inkscape:export-ydpi="4.8000002"> + <defs + id="defs2"> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath4538"> + <path + style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + d="m 0,-179.24998 h 931.33329 v -820.20829 h 105.83331 v -58.20833 H 0 Z" + id="path4540" + inkscape:connector-curvature="0" /> + </clipPath> + <filter + style="color-interpolation-filters:sRGB;" + inkscape:label="Greyscale" + id="filter4593"> + <feColorMatrix + values="0.33 0.33 0.33 0 0 0.33 0.33 0.33 0 0 0.33 0.33 0.33 0 0 0 0 0 1 0 " + id="feColorMatrix4591" /> + <feColorMatrix + id="feColorMatrix5285" + values="1.04 0 0 0 0 0 0.86 0 0 0 0 0 0.65 0 0 0 0 0 1 0 " /> + </filter> + <filter + style="color-interpolation-filters:sRGB" + id="filter5279" + inkscape:label="filter1"> + <feColorMatrix + id="feColorMatrix5281" + values="1.169 0 0 0 0 0 0.96 0 0 0 0 0 0.73 0 0 0 0 0 1 0 " /> + </filter> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.125" + inkscape:cx="3319.3975" + inkscape:cy="2461.6361" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="true" + units="px" + inkscape:window-width="1920" + inkscape:window-height="1017" + inkscape:window-x="-8" + inkscape:window-y="-8" + inkscape:window-maximized="1"> + <inkscape:grid + type="xygrid" + id="grid4485" /> + </sodipodi:namedview> + <metadata + id="metadata5"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(0,1057.6666)"> + <image + y="-1057.6666" + x="1.1368684e-013" + id="image4506" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI +WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4QYQFAQzDgZvBgAACLZJREFUeNrt3TFOI8kaB/BmNSIk +IuMGI+0JSBysSByQ+l1gLjDRJAQkaIO5AAfYJd2AZKSVJoELPGkvsJpsIkInvGCmeU3jbrerqtvV +rt9PWgkMLlYe19/fV10uHz0/fn6uYI7++hR+38ubjfc/+n1d1EP4i2cRc538v/0ROVkvb4p/GAUA +ZU5+IVBVVVW9S1ZSwUReTf4UE7ijHVABQCkKrQQEAPz0/nYtAKDIyb/8WP3z4bjwNQCY4cQN8c/9 +5+InvwBg9mInbsmTXwuAsr/gyS8AMPkLpwVg1mK27pa27Tc6AGIvk1ydnVar5ZNnLcy1Arg6Ow3+ +Y6vbT3YbgjUAYNZrAHUpf3d/0vn1VK2F9gImDoDUYloL7QVMHADNV/iur4EDXQNYLZ82ltxdt6cy +9vigAsjMqwn/822bq+qTagNyaAGG3J5i0r9yeSMEYF8BkPIqwOBJLwTgMFuAl8k/ZOK3VvutCcAe +W4BkVwHqs9k2hUBz0rd/7vIfzLsC2BgCfZM+Y6k2Nl1/+57VOCotATB9CMxUio1N18uPWY2j0hIA ++Wg8Ge/uT6rVpX9MmCwAUl8FuLs/qVbVllf91qQ/BDFXTeCgKoCNIbDnSf/+dp385JhUG5tShYcQ +EgBBk3Xb11Eh8HPy7/tJeXV2Wr2//R4dAqk3NjXHWy2fgh+nVONQcAuQ+tUktydhaAiMtbGp6z0Y +oRVE7DhoAbIXemnu6iwsBMba2PQmVBr33WXyphoHLUD0q/fV2emPy0wjv4pPXgkk3tj0Jhg2/N6Q +yZtqHLQASa4CXH/7Xl0HfsLLqxBZTtMOVJc7XBNPtLGpsyrY8Mm2fZM31ThoAbJ6hZ5qo0rQ30m5 +sak9UduhsmswxY6DFmAOJwKFthh3H26mCZmhG5v6/v4u/2+pxkEFMAvBT+qToMmfemNTs73a9krd +N1aqcRAA071673mjSugrf+qNTW8mb+CkTTUOAmCyyV9/PfUTM7bsT72xqb5/+1U8JExSjEOhATDG +iUB9k39vIZCgHx7j/zfVmCZ82bL9ZKC+XXTelw57rgDGvAow940qqTY25TYOAmBjC9D0n//+OH3m +z19P00z+ZhUwk40qq+VTktZhtayyGgctwHT6tsfO+KQgOLgWoCn0lf8NG1Ug3wqg+RFdXV8nC5aO +V3wr2HCALcCbiW2jCuTbAozxXgAbVSDjANhbNQAcdgsAFFQB2KgCMwuAUk8EAgEwUhUQw0dXwYQB +MLcTgYC3stsI1Gwvur7vug2YKADG1hcCJj8ccAuw8dy6nr8PHHALoAqAwloAr/ZQaAswtCIADqwC +2GWyCwaYsAKYcstu17sB65+Z/DBxAKQ6626ry5tqVTXO0P95IEj9MV2r5ZPPr4NDbAH61hCcDXBY +7u5PXv5DAPyY5HWLUR8D1jwOrHWbdxDOd6K3J337Z4IhwxZgkifLh5ve77tuYz5hEPIzCgkAytFs +6Ux+LQAFTPT6+6G3UUAF4ESgcsNg159zgAEw2eVFsuv7EQAUMvlDL+OqCqwBAAIA0AIwG82PcG+/ +h6OrtO9rG1ABMMMQmPJ+CAAytW3hzxUDAcCBT/pN+/y7bsMaAIVWA6gAOMD1gL5DX/X9KgAOcNJv +uq1rtV8ICAAKDQa0AIAAAPbaAry/XUf/gauz0+r623fjGCd4HK3CHtcArs5O4/q820/V9fKjcYwT +PI63imsBAAEACABAAAACABAAgAAABAAgAAABAAgAQAAAAgAEgIcABABQoN7zAK7OTn+8HzuScYxD +no6eHz8/v3zXOnjBiUDGyWGc9olAv/3x/+fl3/+axKNVAPU/QAwn3hgndhwnAlkDAAQAIAAAAQAI +AEAAAAIAEACAAAAEACAAAAEACAAQAB4CEABAgZwIZJzsx2E8TgQyTvbjOBFoTxVA/Q8Qw4k3xokd +x4lA1gAAAQAIAEAAAAIAEACAAAAEACAAAAEACABAAAACAASAhwAEAFAgJwIZJ/txGE/viUCQIycC +aQEAAQAIACBI7yKgU4GNk8M47VOBmSgA6n+AGE69NU7sOBantQCAAAAEACAAAAEACABAAAACABAA +gAAABAAgAAABAALAQwACACiQU4GNk/04jMepwMyOU4G1AIAAAAQAEORds/9v9lZAKRWAyQ+FBoDJ +D8U6qqrq2cMAJbcAgAAABAAgAAABAAgAQAAAAgAQAIAAAAQAIAAAAQAIAEAAAAIAEACAAAAEACAA +AAEACABAAAACABAAgAAABAAgAAABAAgAQAAAAgAQAIAAAAQAIAAAAQACABAAgAAABAAgAAABAAgA +QAAAAgAQAIAAAAQAIAAAAQAIAEAAAAIAEACAAAAEACAAgKm88xDAfj0+Pgbd7+Hh4eXr8/NzFQAg +AICBjqqqevYwQD4tQF3abyrrm2V/l777tX8mACCjAGhP8HrCDpn4XUHQNWZVWQSErIVM/F3uqwKA +TFuA0DJ/l/sJAMgsALom8y6X+obe31UAmIFdr/O3f7/r/ioAyLwFCN3kM4QKAA7olV8AwIzFrPoL +AGAn9gHATMv/FG8GEgAQoeudfOv1uvr69evL94vFojo+Pk5W9rfvE9o6CACI9OXLl5evLy4uqqqq +Xk3++vv6Z5t+P6ZKiFk3EAAwUhjs8rNQsYuGAgBGslgsXlUAQ3r9oRO6/coful5gIxAkWANol/Xr +9frV79X9/7byf4xNQN4NCBPZ1tM3q4L1et25MDgV+wAgwnq93tjbb5rY7apgWzswhvb4KgCI0L7U +15zkfX3/0Krh4eEhKhS2rSmoACAz7QkfutI/ZD1BAMAM7BoCQ3/fVQCIbAGapX6znE91JWDoWkHI +/awBQITj4+Pq4uIiaJNP6OSPbQuaIaAFgIS2BcGuQXF+fh68CDjkvloASNgCNA3ZCdhXBfhcAMjc +4+Nj1B7/mDcD+WxAyMzFxUXnpF4sFtHv/ktNBQCRFcCQfr9uB1Ju/U1RAfwP0sAvmQVES+YAAAAA +SUVORK5CYII= +" + style="image-rendering:optimizeSpeed" + preserveAspectRatio="none" + height="1354.6666" + width="1354.6666" /> + <path + style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + d="m 0,-179.24998 h 931.33329 v -820.20829 h 105.83331 v -58.20833 H 0 Z" + id="path4536" + inkscape:connector-curvature="0" /> + <image + y="-1057.6666" + x="1.1368684e-013" + id="image4506-6" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4QYQFAQzDgZvBgAACLZJREFUeNrt3TFOI8kaB/BmNSIk IuMGI+0JSBysSByQ+l1gLjDRJAQkaIO5AAfYJd2AZKSVJoELPGkvsJpsIkInvGCmeU3jbrerqtvV rt9PWgkMLlYe19/fV10uHz0/fn6uYI7++hR+38ubjfc/+n1d1EP4i2cRc538v/0ROVkvb4p/GAUA ZU5+IVBVVVW9S1ZSwUReTf4UE7ijHVABQCkKrQQEAPz0/nYtAKDIyb/8WP3z4bjwNQCY4cQN8c/9 5+InvwBg9mInbsmTXwuAsr/gyS8AMPkLpwVg1mK27pa27Tc6AGIvk1ydnVar5ZNnLcy1Arg6Ow3+ Y6vbT3YbgjUAYNZrAHUpf3d/0vn1VK2F9gImDoDUYloL7QVMHADNV/iur4EDXQNYLZ82ltxdt6cy 9vigAsjMqwn/822bq+qTagNyaAGG3J5i0r9yeSMEYF8BkPIqwOBJLwTgMFuAl8k/ZOK3VvutCcAe W4BkVwHqs9k2hUBz0rd/7vIfzLsC2BgCfZM+Y6k2Nl1/+57VOCotATB9CMxUio1N18uPWY2j0hIA +Wg8Ge/uT6rVpX9MmCwAUl8FuLs/qVbVllf91qQ/BDFXTeCgKoCNIbDnSf/+dp385JhUG5tShYcQ EgBBk3Xb11Eh8HPy7/tJeXV2Wr2//R4dAqk3NjXHWy2fgh+nVONQcAuQ+tUktydhaAiMtbGp6z0Y oRVE7DhoAbIXemnu6iwsBMba2PQmVBr33WXyphoHLUD0q/fV2emPy0wjv4pPXgkk3tj0Jhg2/N6Q yZtqHLQASa4CXH/7Xl0HfsLLqxBZTtMOVJc7XBNPtLGpsyrY8Mm2fZM31ThoAbJ6hZ5qo0rQ30m5 sak9UduhsmswxY6DFmAOJwKFthh3H26mCZmhG5v6/v4u/2+pxkEFMAvBT+qToMmfemNTs73a9krd N1aqcRAA071673mjSugrf+qNTW8mb+CkTTUOAmCyyV9/PfUTM7bsT72xqb5/+1U8JExSjEOhATDG iUB9k39vIZCgHx7j/zfVmCZ82bL9ZKC+XXTelw57rgDGvAow940qqTY25TYOAmBjC9D0n//+OH3m z19P00z+ZhUwk40qq+VTktZhtayyGgctwHT6tsfO+KQgOLgWoCn0lf8NG1Ug3wqg+RFdXV8nC5aO V3wr2HCALcCbiW2jCuTbAozxXgAbVSDjANhbNQAcdgsAFFQB2KgCMwuAUk8EAgEwUhUQw0dXwYQB MLcTgYC3stsI1Gwvur7vug2YKADG1hcCJj8ccAuw8dy6nr8PHHALoAqAwloAr/ZQaAswtCIADqwC 2GWyCwaYsAKYcstu17sB65+Z/DBxAKQ6626ry5tqVTXO0P95IEj9MV2r5ZPPr4NDbAH61hCcDXBY 7u5PXv5DAPyY5HWLUR8D1jwOrHWbdxDOd6K3J337Z4IhwxZgkifLh5ve77tuYz5hEPIzCgkAytFs 6Ux+LQAFTPT6+6G3UUAF4ESgcsNg159zgAEw2eVFsuv7EQAUMvlDL+OqCqwBAAIA0AIwG82PcG+/ h6OrtO9rG1ABMMMQmPJ+CAAytW3hzxUDAcCBT/pN+/y7bsMaAIVWA6gAOMD1gL5DX/X9KgAOcNJv uq1rtV8ICAAKDQa0AIAAAPbaAry/XUf/gauz0+r623fjGCd4HK3CHtcArs5O4/q820/V9fKjcYwT PI63imsBAAEACABAAAACABAAgAAABAAgAAABAAgAQAAAAgAEgIcABABQoN7zAK7OTn+8HzuScYxD no6eHz8/v3zXOnjBiUDGyWGc9olAv/3x/+fl3/+axKNVAPU/QAwn3hgndhwnAlkDAAQAIAAAAQAI AEAAAAIAEACAAAAEACAAAAEACAAQAB4CEABAgZwIZJzsx2E8TgQyTvbjOBFoTxVA/Q8Qw4k3xokd x4lA1gAAAQAIAEAAAAIAEACAAAAEACAAAAEACABAAAACAASAhwAEAFAgJwIZJ/txGE/viUCQIycC aQEAAQAIACBI7yKgU4GNk8M47VOBmSgA6n+AGE69NU7sOBantQCAAAAEACAAAAEACABAAAACABAA gAAABAAgAAABAALAQwACACiQU4GNk/04jMepwMyOU4G1AIAAAAQAEORds/9v9lZAKRWAyQ+FBoDJ D8U6qqrq2cMAJbcAgAAABAAgAAABAAgAQAAAAgAQAIAAAAQAIAAAAQAIAEAAAAIAEACAAAAEACAA AAEACABAAAACABAAgAAABAAgAAABAAgAQAAAAgAQAIAAAAQAIAAAAQACABAAgAAABAAgAAABAAgA QAAAAgAQAIAAAAQAIAAAAQAIAEAAAAIAEACAAAAEACAAgKm88xDAfj0+Pgbd7+Hh4eXr8/NzFQAg AICBjqqqevYwQD4tQF3abyrrm2V/l777tX8mACCjAGhP8HrCDpn4XUHQNWZVWQSErIVM/F3uqwKA TFuA0DJ/l/sJAMgsALom8y6X+obe31UAmIFdr/O3f7/r/ioAyLwFCN3kM4QKAA7olV8AwIzFrPoL AGAn9gHATMv/FG8GEgAQoeudfOv1uvr69evL94vFojo+Pk5W9rfvE9o6CACI9OXLl5evLy4uqqqq Xk3++vv6Z5t+P6ZKiFk3EAAwUhjs8rNQsYuGAgBGslgsXlUAQ3r9oRO6/coful5gIxAkWANol/Xr 9frV79X9/7byf4xNQN4NCBPZ1tM3q4L1et25MDgV+wAgwnq93tjbb5rY7apgWzswhvb4KgCI0L7U 15zkfX3/0Krh4eEhKhS2rSmoACAz7QkfutI/ZD1BAMAM7BoCQ3/fVQCIbAGapX6znE91JWDoWkHI /awBQITj4+Pq4uIiaJNP6OSPbQuaIaAFgIS2BcGuQXF+fh68CDjkvloASNgCNA3ZCdhXBfhcAMjc 4+Nj1B7/mDcD+WxAyMzFxUXnpF4sFtHv/ktNBQCRFcCQfr9uB1Ju/U1RAfwP0sAvmQVES+YAAAAA SUVORK5CYII= " + style="image-rendering:optimizeSpeed;filter:url(#filter4593)" + preserveAspectRatio="none" + height="1354.6666" + width="1354.6666" + clip-path="url(#clipPath4538)" /> + <rect + style="opacity:0.98000004;fill:#7d7d7d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.32291663;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect5283" + width="359.83331" + height="338.66666" + x="-783.16663" + y="-1057.6666" /> + <rect + style="opacity:0.98000004;fill:#ff0000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.32291663;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect5287" + width="10.583333" + height="10.583333" + x="105.83333" + y="-835.41663" /> + </g> +</svg> diff --git a/misc/vector/bricked_blast_furnace_inactive.svg b/misc/vector/bricked_blast_furnace_inactive.svg new file mode 100644 index 0000000000..de6f23d0eb --- /dev/null +++ b/misc/vector/bricked_blast_furnace_inactive.svg @@ -0,0 +1,953 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="320" + height="320" + viewBox="0 0 84.666664 84.666664" + version="1.1" + id="svg8" + inkscape:version="0.92.1 r15371" + sodipodi:docname="bricked_blast_furnace_inactive.svg" + inkscape:export-filename="C:\Users\Johannes\git\GT5-Unofficial\misc\vector\MACHINE_CASING_BRICKEDBLASTFURNACE_INACTIVE.png" + inkscape:export-xdpi="4.8000002" + inkscape:export-ydpi="4.8000002"> + <defs + id="defs2"> + <filter + style="color-interpolation-filters:sRGB" + id="filter323" + inkscape:label="filter0"> + <feColorMatrix + id="feColorMatrix327" + values="1.5 0 0 0 0 0 1.24 0 0 0 0 0 0.94 0 0 0 0 0 1 0 " /> + <feColorMatrix + id="feColorMatrix28" + values="0.8 0 0 0 0 0 0.8 0 0 0 0 0 0.8 0 0 0 0 0 1 0 " /> + </filter> + <filter + style="color-interpolation-filters:sRGB" + id="filter323-2" + inkscape:label="filter0"> + <feColorMatrix + id="feColorMatrix327-2" + values="1.69 0 0 0 0 0 1 0 0 0 0 0 0.41 0 0 0 0 0 1 0 " /> + </filter> + <filter + style="color-interpolation-filters:sRGB;" + inkscape:label="Greyscale" + id="filter973"> + <feColorMatrix + values="0.33 0.33 0.33 0 0 0.33 0.33 0.33 0 0 0.33 0.33 0.33 0 0 0 0 0 1 0 " + id="feColorMatrix971" + result="fbSourceGraphic" /> + </filter> + <filter + style="color-interpolation-filters:sRGB" + id="filter1066" + inkscape:label="filter3"> + <feColorMatrix + id="feColorMatrix1068" + values="1.5 0 0 0 0 0 1.5 0 0 0 0 0 1.5 0 0 0 0 0 1 0 " /> + </filter> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4" + inkscape:cx="-133.24238" + inkscape:cy="185.64421" + inkscape:document-units="mm" + inkscape:current-layer="layer1" + showgrid="false" + inkscape:window-width="1920" + inkscape:window-height="1017" + inkscape:window-x="-8" + inkscape:window-y="-8" + inkscape:window-maximized="1" + units="px"> + <inkscape:grid + type="xygrid" + id="grid4851" /> + </sodipodi:namedview> + <metadata + id="metadata5"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(0,-212.33337)"> + <image + y="261.77823" + x="137.37654" + id="image18" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABWUlEQVR42n1TS8uCUBC9/zMsFVxo UqGSRou2IqRCkWJFLvyf83EmRibza3HwPuaeeZyjeb1e1LYt9X1Pj8eD6rrmb9M0dL1eP9B1HZ3P Z6qqisqyJNu2ySA4z/MRh8PhYx/HMZ1OJwbuZH08HslxHDLIiAuBkEgggDO9B+l6vSbLssigVMmi AzWpQBNuNhtarVZk0NtcsG5j2g7WSZK8K7hcLl9Zpn0Dcib7IAjeM8BUoyiiLMuYFaVp4AzY7Xbk eR6FYch7vGEClPELi8WCvwh2XZelA9A/t4AZYJACyArcbjcOGoaBns8n3e939gA8o/1i/ut9u91y BiT4pY7RBgKBKLDf77lUVKU9ICqMBNMLySY6i1NBriuUasyc9lj7vj+2oE301cLcBTKBAJOHT3Rl +n9BnEGgAGXDINAZvoBsRVGw9mmasvbiD3ljtK4a2gvL5XL0wPTuD25VbTdjHernAAAAAElFTkSu QmCC " + style="filter:url(#filter323);image-rendering:optimizeSpeed" + preserveAspectRatio="none" + height="84.666664" + width="84.666664" /> + <image + y="215.91263" + x="253.26675" + id="image18-7" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABWUlEQVR42n1TS8uCUBC9/zMsFVxo UqGSRou2IqRCkWJFLvyf83EmRibza3HwPuaeeZyjeb1e1LYt9X1Pj8eD6rrmb9M0dL1eP9B1HZ3P Z6qqisqyJNu2ySA4z/MRh8PhYx/HMZ1OJwbuZH08HslxHDLIiAuBkEgggDO9B+l6vSbLssigVMmi AzWpQBNuNhtarVZk0NtcsG5j2g7WSZK8K7hcLl9Zpn0Dcib7IAjeM8BUoyiiLMuYFaVp4AzY7Xbk eR6FYch7vGEClPELi8WCvwh2XZelA9A/t4AZYJACyArcbjcOGoaBns8n3e939gA8o/1i/ut9u91y BiT4pY7RBgKBKLDf77lUVKU9ICqMBNMLySY6i1NBriuUasyc9lj7vj+2oE301cLcBTKBAJOHT3Rl +n9BnEGgAGXDINAZvoBsRVGw9mmasvbiD3ljtK4a2gvL5XL0wPTuD25VbTdjHernAAAAAElFTkSu QmCC " + style="filter:url(#filter323-2);image-rendering:optimizeSpeed" + preserveAspectRatio="none" + height="84.666664" + width="84.666664" /> + <rect + style="opacity:0.98000004;fill:#d78034;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect340" + width="45.168549" + height="24.856066" + x="171.85431" + y="197.57578" /> + <g + id="g4863" + style="filter:url(#filter323)" + transform="translate(10.583331,121.70833)"> + <image + y="212.33337" + x="1.2715658e-006" + id="image4849" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABWUlEQVR42n1TS8uCUBC9/zMsFVxo UqGSRou2IqRCkWJFLvyf83EmRibza3HwPuaeeZyjeb1e1LYt9X1Pj8eD6rrmb9M0dL1eP9B1HZ3P Z6qqisqyJNu2ySA4z/MRh8PhYx/HMZ1OJwbuZH08HslxHDLIiAuBkEgggDO9B+l6vSbLssigVMmi AzWpQBNuNhtarVZk0NtcsG5j2g7WSZK8K7hcLl9Zpn0Dcib7IAjeM8BUoyiiLMuYFaVp4AzY7Xbk eR6FYch7vGEClPELi8WCvwh2XZelA9A/t4AZYJACyArcbjcOGoaBns8n3e939gA8o/1i/ut9u91y BiT4pY7RBgKBKLDf77lUVKU9ICqMBNMLySY6i1NBriuUasyc9lj7vj+2oE301cLcBTKBAJOHT3Rl +n9BnEGgAGXDINAZvoBsRVGw9mmasvbiD3ljtK4a2gvL5XL0wPTuD25VbTdjHernAAAAAElFTkSu QmCC " + style="image-rendering:optimizeSpeed" + preserveAspectRatio="none" + height="42.333332" + width="42.333332" /> + <image + width="42.333332" + height="42.333332" + preserveAspectRatio="none" + style="image-rendering:optimizeSpeed" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABWUlEQVR42n1TS8uCUBC9/zMsFVxo UqGSRou2IqRCkWJFLvyf83EmRibza3HwPuaeeZyjeb1e1LYt9X1Pj8eD6rrmb9M0dL1eP9B1HZ3P Z6qqisqyJNu2ySA4z/MRh8PhYx/HMZ1OJwbuZH08HslxHDLIiAuBkEgggDO9B+l6vSbLssigVMmi AzWpQBNuNhtarVZk0NtcsG5j2g7WSZK8K7hcLl9Zpn0Dcib7IAjeM8BUoyiiLMuYFaVp4AzY7Xbk eR6FYch7vGEClPELi8WCvwh2XZelA9A/t4AZYJACyArcbjcOGoaBns8n3e939gA8o/1i/ut9u91y BiT4pY7RBgKBKLDf77lUVKU9ICqMBNMLySY6i1NBriuUasyc9lj7vj+2oE301cLcBTKBAJOHT3Rl +n9BnEGgAGXDINAZvoBsRVGw9mmasvbiD3ljtK4a2gvL5XL0wPTuD25VbTdjHernAAAAAElFTkSu QmCC " + id="image4853" + x="42.333336" + y="212.33337" /> + <image + y="254.6667" + x="42.333336" + id="image4855" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABWUlEQVR42n1TS8uCUBC9/zMsFVxo UqGSRou2IqRCkWJFLvyf83EmRibza3HwPuaeeZyjeb1e1LYt9X1Pj8eD6rrmb9M0dL1eP9B1HZ3P Z6qqisqyJNu2ySA4z/MRh8PhYx/HMZ1OJwbuZH08HslxHDLIiAuBkEgggDO9B+l6vSbLssigVMmi AzWpQBNuNhtarVZk0NtcsG5j2g7WSZK8K7hcLl9Zpn0Dcib7IAjeM8BUoyiiLMuYFaVp4AzY7Xbk eR6FYch7vGEClPELi8WCvwh2XZelA9A/t4AZYJACyArcbjcOGoaBns8n3e939gA8o/1i/ut9u91y BiT4pY7RBgKBKLDf77lUVKU9ICqMBNMLySY6i1NBriuUasyc9lj7vj+2oE301cLcBTKBAJOHT3Rl +n9BnEGgAGXDINAZvoBsRVGw9mmasvbiD3ljtK4a2gvL5XL0wPTuD25VbTdjHernAAAAAElFTkSu QmCC " + style="image-rendering:optimizeSpeed" + preserveAspectRatio="none" + height="42.333332" + width="42.333332" /> + <image + width="42.333332" + height="42.333332" + preserveAspectRatio="none" + style="image-rendering:optimizeSpeed" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABWUlEQVR42n1TS8uCUBC9/zMsFVxo UqGSRou2IqRCkWJFLvyf83EmRibza3HwPuaeeZyjeb1e1LYt9X1Pj8eD6rrmb9M0dL1eP9B1HZ3P Z6qqisqyJNu2ySA4z/MRh8PhYx/HMZ1OJwbuZH08HslxHDLIiAuBkEgggDO9B+l6vSbLssigVMmi AzWpQBNuNhtarVZk0NtcsG5j2g7WSZK8K7hcLl9Zpn0Dcib7IAjeM8BUoyiiLMuYFaVp4AzY7Xbk eR6FYch7vGEClPELi8WCvwh2XZelA9A/t4AZYJACyArcbjcOGoaBns8n3e939gA8o/1i/ut9u91y BiT4pY7RBgKBKLDf77lUVKU9ICqMBNMLySY6i1NBriuUasyc9lj7vj+2oE301cLcBTKBAJOHT3Rl +n9BnEGgAGXDINAZvoBsRVGw9mmasvbiD3ljtK4a2gvL5XL0wPTuD25VbTdjHernAAAAAElFTkSu QmCC " + id="image4857" + x="-7.1054274e-015" + y="254.6667" /> + </g> + <g + id="g751"> + <image + width="84.666664" + height="84.666664" + preserveAspectRatio="none" + style="image-rendering:optimizeSpeed" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz AAAAvQAAAL0BHVrG+gAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAADxSURB VDiN7dLNSsNAFMXxf+JN+hFLGKGgUBBBRF/AvW/l0/gqPowIRdI0sZl8zEwSV4aCON2Ld/tb3XNO 8PryPAYE7IqKxTzCuR6A1lgIAtZqhc8lLzTvHzkqTciKA8e3zUrObjdel0hCAPalRqXJhHVjWC5i Trm0xjKMI1Xd8albZrFgXY9zA7NYOOUyjyPuri+JROisRa2W6NbgXE/TWiIJvS6lbtiXGgDXD9zf XPG2zQHojEWlidfDb1RpQnGop5Q7Y6fffS5ZUQGwKzUXaULVdNStQTcdxroptN9cnh4ffvR8vll7 d3Ds/zv4Ezv4AptmhMVYeNf6AAAAAElFTkSuQmCC " + id="image40" + x="0" + y="212.33337" /> + <rect + y="291.70837" + x="58.208332" + height="5.2916665" + width="5.2916665" + id="rect43" + style="opacity:0.98000004;fill:#7f6950;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="249.37505" + x="58.208332" + height="5.2916665" + width="5.2916665" + id="rect43-8" + style="opacity:0.98000004;fill:#7f6950;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="286.41672" + x="52.916664" + height="5.2916665" + width="5.2916665" + id="rect60" + style="opacity:0.98000004;fill:#92785b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="244.08339" + x="52.916664" + height="5.2916665" + width="5.2916665" + id="rect60-0" + style="opacity:0.98000004;fill:#92785b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="249.37505" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect43-8-2" + style="opacity:0.98000004;fill:#7f6950;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="286.41672" + x="10.583331" + height="5.2916665" + width="5.2916665" + id="rect60-0-9" + style="opacity:0.98000004;fill:#92785b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="291.70837" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect43-3" + style="opacity:0.98000004;fill:#7f6950;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="254.6667" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect122" + style="opacity:0.98000004;fill:#b69672;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="244.08337" + x="10.583334" + height="5.2916665" + width="5.2916665" + id="rect124" + style="opacity:0.98000004;fill:#a38766;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="238.7917" + x="42.333332" + height="5.2916665" + width="5.2916665" + id="rect126" + style="opacity:0.98000004;fill:#92785b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="281.12503" + x="42.333332" + height="5.2916665" + width="5.2916665" + id="rect128" + style="opacity:0.98000004;fill:#92785b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="212.33337" + x="52.916664" + height="5.2916665" + width="5.2916665" + id="rect130" + style="opacity:0.98000004;fill:#c09e79;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="212.33337" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect132" + style="opacity:0.98000004;fill:#c09e79;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="244.08337" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect156" + style="opacity:0.98000004;fill:#92785b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="244.08337" + x="47.625" + height="5.2916665" + width="5.2916665" + id="rect158" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="281.12503" + x="47.625" + height="5.2916665" + width="5.2916665" + id="rect160" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="286.41672" + x="37.041668" + height="5.2916665" + width="5.2916665" + id="rect162" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="244.08337" + x="5.2916665" + height="5.2916665" + width="5.2916665" + id="rect164" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="238.7917" + x="37.041668" + height="5.2916665" + width="5.2916665" + id="rect166" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="291.70837" + x="47.625" + height="5.2916665" + width="5.2916665" + id="rect339" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="249.37505" + x="79.375" + height="5.2916665" + width="5.2916665" + id="rect339-9" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="259.95837" + x="79.375" + height="5.2916665" + width="5.2916665" + id="rect339-3" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="217.62505" + x="37.041668" + height="5.2916665" + width="5.2916665" + id="rect339-1" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="249.37503" + x="-8.8817842e-016" + height="5.2916665" + width="5.2916665" + id="rect339-4" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="270.54172" + x="47.625" + height="5.2916665" + width="5.2916665" + id="rect681" + style="opacity:0.98000004;fill:#846d53;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="259.95837" + x="5.2916665" + height="5.2916665" + width="5.2916665" + id="rect683" + style="opacity:0.98000004;fill:#a38766;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="222.9167" + x="52.916664" + height="5.2916665" + width="5.2916665" + id="rect685" + style="opacity:0.98000004;fill:#a38766;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="217.62503" + x="5.2916665" + height="5.2916665" + width="5.2916665" + id="rect689" + style="opacity:0.98000004;fill:#a38766;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="222.9167" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect691" + style="opacity:0.98000004;fill:#a38766;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="265.25003" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect693" + style="opacity:0.98000004;fill:#a38766;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="265.25003" + x="5.2916665" + height="5.2916665" + width="5.2916665" + id="rect695" + style="opacity:0.98000004;fill:#a38766;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="265.25003" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect697" + style="opacity:0.98000004;fill:#997e60;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + </g> + <image + y="212.71135" + x="-115.8497" + id="image707" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAABmJLR0QA/wD/AP+gvaeTAAAACXBI WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3gYJDBYkPynFtwAAAYdJREFUKM+FktFKlHEQxX/f14dY SHoh7aqgvUAi9Cg+QdQDBL1N9Aw+THdCa1vuUppEpi60M+dMF//Fq7C5GAbmnDnMnOmmx1sARdjp SjtUaadKrpTTTleoskgxAAd7O6kKO+1Qo1U2mivklFUOcTa77KHC/nQ+bwqT82+pe7QnX+dpyzU5 v0w5xdCGnV7dnF7dAMD0empYCgNw+eU7sDTPbJkh5LSB/SccPR/1Hy74V7x/SbhC9E3hV/BwZJGq NH1bdyE+Xj9EWJq0c6Xg+v0/has/pCtMH7ZUrv8Qho6UZXrLaS+9arw76t6+6O5xbw66V3vdagdX mCFcYQOHmwCLO5S83u+USCxuSXG80Q1dhZsPqlQttBq5uEWioZWkUFK1upLM0Pxf6zmZczK/GD0F WOtXl7mvgbTTzWn7cIPd0Xban2c/x+Ot9nwpn83udsbrKU9ny3zcfChS3htvpx2unfFmyu2XwrU7 WpdLrvHoUdphhhCT2Y80EiFk0oTIIoREmmy5qOIvirycu2t8lJoAAAAASUVORK5CYII= " + style="filter:url(#filter973);image-rendering:optimizeSpeed" + preserveAspectRatio="none" + height="84.666664" + width="84.666664" /> + <rect + style="opacity:0.98000004;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect753" + width="5.2916665" + height="5.2916665" + x="10.583333" + y="228.20837" /> + <rect + style="opacity:0.98000004;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect755" + width="5.2916665" + height="5.2916665" + x="15.875" + y="228.20837" /> + <rect + style="opacity:0.98000004;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect757" + width="5.2916665" + height="5.2916665" + x="21.166666" + y="228.20837" /> + <rect + style="opacity:0.98000004;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect759" + width="5.2916665" + height="5.2916665" + x="26.458332" + y="228.20837" /> + <rect + style="opacity:0.98000004;fill:#4a4a4a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect761" + width="5.2916665" + height="5.2916665" + x="31.75" + y="228.20837" /> + <rect + style="opacity:0.98000004;fill:#4a4a4a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect763" + width="5.2916665" + height="5.2916665" + x="37.041668" + y="228.20837" /> + <rect + y="228.20836" + x="42.333332" + height="5.2916665" + width="5.2916665" + id="rect765" + style="opacity:0.98000004;fill:#474747;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="228.20836" + x="47.624996" + height="5.2916665" + width="5.2916665" + id="rect767" + style="opacity:0.98000004;fill:#464646;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="228.20836" + x="58.208328" + height="5.2916665" + width="5.2916665" + id="rect769" + style="opacity:0.98000004;fill:#464646;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="228.20836" + x="68.791664" + height="5.2916665" + width="5.2916665" + id="rect771" + style="opacity:0.98000004;fill:#444444;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#464646;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect773" + width="5.2916665" + height="5.2916665" + x="63.5" + y="228.20836" /> + <rect + y="228.20836" + x="52.916668" + height="5.2916665" + width="5.2916665" + id="rect775" + style="opacity:0.98000004;fill:#464646;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="233.50003" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect777" + style="opacity:0.98000004;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="233.50003" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect779" + style="opacity:0.98000004;fill:#5a5a5a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="233.50003" + x="21.166666" + height="5.2916665" + width="5.2916665" + id="rect781" + style="opacity:0.98000004;fill:#7c7c7c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#464646;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect783" + width="5.2916665" + height="5.2916665" + x="10.583333" + y="238.7917" /> + <rect + style="opacity:0.98000004;fill:#5a5a5a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect785" + width="5.2916665" + height="5.2916665" + x="15.875" + y="238.7917" /> + <rect + style="opacity:0.98000004;fill:#7c7c7c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect787" + width="5.2916665" + height="5.2916665" + x="21.166666" + y="238.7917" /> + <rect + y="244.08336" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect789" + style="opacity:0.98000004;fill:#424242;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="244.08336" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect791" + style="opacity:0.98000004;fill:#464646;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="244.08336" + x="21.166666" + height="5.2916665" + width="5.2916665" + id="rect793" + style="opacity:0.98000004;fill:#7c7c7c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#3c3c3c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect795" + width="5.2916665" + height="5.2916665" + x="10.583333" + y="249.37503" /> + <rect + style="opacity:0.98000004;fill:#464646;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect797" + width="5.2916665" + height="5.2916665" + x="15.875" + y="249.37503" /> + <rect + style="opacity:0.98000004;fill:#7c7c7c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect799" + width="5.2916665" + height="5.2916665" + x="21.166666" + y="249.37503" /> + <rect + y="254.6667" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect801" + style="opacity:0.98000004;fill:#3b3b3b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="254.6667" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect803" + style="opacity:0.98000004;fill:#464646;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="254.6667" + x="21.166666" + height="5.2916665" + width="5.2916665" + id="rect805" + style="opacity:0.98000004;fill:#7c7c7c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#383838;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect807" + width="5.2916665" + height="5.2916665" + x="10.583333" + y="259.95837" /> + <rect + style="opacity:0.98000004;fill:#464646;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect809" + width="5.2916665" + height="5.2916665" + x="15.875" + y="259.95837" /> + <rect + style="opacity:0.98000004;fill:#7c7c7c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect811" + width="5.2916665" + height="5.2916665" + x="21.166666" + y="259.95837" /> + <rect + y="265.25006" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect813" + style="opacity:0.98000004;fill:#383838;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="265.25006" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect815" + style="opacity:0.98000004;fill:#5a5a5a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="265.25006" + x="21.166666" + height="5.2916665" + width="5.2916665" + id="rect817" + style="opacity:0.98000004;fill:#7c7c7c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#343434;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect819" + width="5.2916665" + height="5.2916665" + x="10.583333" + y="270.54172" /> + <rect + style="opacity:0.98000004;fill:#5a5a5a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect821" + width="5.2916665" + height="5.2916665" + x="15.875" + y="270.54172" /> + <rect + style="opacity:0.98000004;fill:#7c7c7c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect823" + width="5.2916665" + height="5.2916665" + x="21.166666" + y="270.54172" /> + <rect + y="275.83337" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect825" + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="275.83337" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect827" + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + y="275.83337" + x="21.166666" + height="5.2916665" + width="5.2916665" + id="rect829" + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#2f2f2f;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect839" + width="5.2916665" + height="5.2916665" + x="26.458334" + y="265.25006" /> + <rect + y="270.54172" + x="26.458334" + height="5.2916665" + width="5.2916665" + id="rect841" + style="opacity:0.98000004;fill:#282828;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#343434;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect843" + width="5.2916665" + height="5.2916665" + x="26.458334" + y="275.83337" /> + <rect + y="265.25006" + x="31.75" + height="5.2916665" + width="5.2916665" + id="rect845" + style="opacity:0.98000004;fill:#2d2d2d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#262626;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect847" + width="5.2916665" + height="5.2916665" + x="31.75" + y="270.54172" /> + <rect + y="275.83337" + x="31.75" + height="5.2916665" + width="5.2916665" + id="rect849" + style="opacity:0.98000004;fill:#343434;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#2b2b2b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect851" + width="5.2916665" + height="5.2916665" + x="37.041664" + y="265.25006" /> + <rect + y="270.54172" + x="37.041664" + height="5.2916665" + width="5.2916665" + id="rect853" + style="opacity:0.98000004;fill:#242424;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect855" + width="5.2916665" + height="5.2916665" + x="37.041664" + y="275.83337" /> + <rect + y="265.25006" + x="42.333332" + height="5.2916665" + width="5.2916665" + id="rect857" + style="opacity:0.98000004;fill:#292929;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#222222;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect859" + width="5.2916665" + height="5.2916665" + x="42.333332" + y="270.54172" /> + <rect + y="275.83337" + x="42.333332" + height="5.2916665" + width="5.2916665" + id="rect861" + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#272727;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect863" + width="5.2916665" + height="5.2916665" + x="47.625" + y="265.25006" /> + <rect + y="270.54172" + x="47.625" + height="5.2916665" + width="5.2916665" + id="rect865" + style="opacity:0.98000004;fill:#1f1f1f;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#343434;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect867" + width="5.2916665" + height="5.2916665" + x="47.625" + y="275.83337" /> + <rect + y="265.25006" + x="52.916664" + height="5.2916665" + width="5.2916665" + id="rect869" + style="opacity:0.98000004;fill:#242424;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#1d1d1d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect871" + width="5.2916665" + height="5.2916665" + x="52.916664" + y="270.54172" /> + <rect + y="275.83337" + x="52.916664" + height="5.2916665" + width="5.2916665" + id="rect873" + style="opacity:0.98000004;fill:#343434;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#222222;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect887" + width="5.2916665" + height="5.2916665" + x="58.208332" + y="265.25006" /> + <rect + y="270.54172" + x="58.208332" + height="5.2916665" + width="5.2916665" + id="rect889" + style="opacity:0.98000004;fill:#1b1b1b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect891" + width="5.2916665" + height="5.2916665" + x="58.208332" + y="275.83337" /> + <rect + y="265.25006" + x="63.5" + height="5.2916665" + width="5.2916665" + id="rect893" + style="opacity:0.98000004;fill:#202020;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#1a1a1a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect895" + width="5.2916665" + height="5.2916665" + x="63.5" + y="270.54172" /> + <rect + y="275.83337" + x="63.5" + height="5.2916665" + width="5.2916665" + id="rect897" + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#383838;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect899" + width="5.2916665" + height="5.2916665" + x="68.791672" + y="265.25006" /> + <rect + y="270.54172" + x="68.791672" + height="5.2916665" + width="5.2916665" + id="rect901" + style="opacity:0.98000004;fill:#383838;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect903" + width="5.2916665" + height="5.2916665" + x="68.791672" + y="275.83337" /> + <rect + y="249.37506" + x="68.791672" + height="5.2916665" + width="5.2916665" + id="rect905" + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#383838;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect907" + width="5.2916665" + height="5.2916665" + x="68.791672" + y="254.66672" /> + <rect + y="259.95837" + x="68.791672" + height="5.2916665" + width="5.2916665" + id="rect909" + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#444444;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect911" + width="5.2916665" + height="5.2916665" + x="68.791672" + y="233.50003" /> + <rect + y="238.79169" + x="68.791672" + height="5.2916665" + width="5.2916665" + id="rect913" + style="opacity:0.98000004;fill:#424242;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#3f3f3f;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect915" + width="5.2916665" + height="5.2916665" + x="68.791672" + y="244.08334" /> + <rect + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect917" + width="42.333332" + height="31.75" + x="26.458332" + y="233.50003" /> + <rect + y="259.95837" + x="58.208332" + height="5.2916665" + width="5.2916665" + id="rect919" + style="opacity:0.98000004;fill:#292929;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#2b2b2b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect921" + width="5.2916665" + height="5.2916665" + x="52.916668" + y="259.95837" /> + <rect + y="259.95837" + x="26.458334" + height="5.2916665" + width="5.2916665" + id="rect923" + style="opacity:0.98000004;fill:#363636;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" /> + <rect + style="opacity:0.98000004;fill:#343434;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;filter:url(#filter1066)" + id="rect925" + width="5.2916665" + height="5.2916665" + x="31.75" + y="259.95837" /> + </g> +</svg> diff --git a/misc/vector/crop_drop.rape.svg b/misc/vector/crop_drop.rape.svg new file mode 100644 index 0000000000..35db917110 --- /dev/null +++ b/misc/vector/crop_drop.rape.svg @@ -0,0 +1,933 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="320" + height="320" + id="svg2" + version="1.1" + inkscape:version="0.48.5 r10040" + sodipodi:docname="crop_drop.rape.svg" + inkscape:export-filename="C:\Users\Johannes\git\GT5-Unofficial\misc\vector\crop_drop.rape.png" + inkscape:export-xdpi="4.5" + inkscape:export-ydpi="4.5"> + <defs + id="defs4"> + <filter + id="filter22272" + inkscape:label="B->RG"> + <feColorMatrix + id="feColorMatrix22280" + values="0 0 1 0 0 0 0 1 0 0 0.5 0.5 0 0 0 0 0 0 1 0 " /> + </filter> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="2" + inkscape:cx="18.251567" + inkscape:cy="195.61271" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="true" + inkscape:window-width="1920" + inkscape:window-height="1017" + inkscape:window-x="-8" + inkscape:window-y="-8" + inkscape:window-maximized="1"> + <inkscape:grid + type="xygrid" + id="grid3766" + empspacing="5" + visible="true" + enabled="true" + snapvisiblegridlinesonly="true" /> + </sodipodi:namedview> + <metadata + id="metadata7"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Ebene 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(0,-732.36218)"> + <image + y="732.36218" + x="-320" + id="image3763" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAdtJREFU +OI2lkr9rU1EYhp+Tpmltcm9zJdhoUmiuNU1qaay2SqUBt67+AeImuupUEZwcRFDoKlRHJzdxcyrq +ZIglhVBtTNtcITa0V8VIepN+DsWEeBN/4Lt9L+95D99zjhIR4T/k7WSqYB7YBxyQGigvYp/++wLY +IxKJEdACOA6Uy9uo4Cpin3QlPe03ZwEQexJzxCIRr5GI1xiNWc3DPzOugt7QWwL6KBOzB4Hz5yqc +nbE5lSqRXZ4CIDmzAp4Iyii6C+oNjWhkAPO4ycXLy9y9Pcfzp9sE/F8BuHTtHeGjY4SHNJDP7QUq +mEH1RNG1fdJzDdLpYa5cXeX+PRP13cviozUmJnX0oGAYvSBOB4iNLNVvPj6Va1jvh7h1c5zEmELT +4ly/kWF8egtnL4ZSUVB9LQjSRUuPS1LcEHmw6MjCnRdNPxzPCcGN5qx+/UjTF14zP+9jwA+FnEHy +zBeKmzrFQplnT2a7P6MKruANWYhnivxakmpVsfTQxCpVqFZDiEoxkirhO7LVVtBioHQa9R3WC4cR +6eOj1Q8L8PKVTv+hOpUdP5slDWmsA8PdGTCYEYxdCURyTc9/7INg2MLgGxcrF4ODdfJAD2KfaM3K +h+yaLgYdC/5Fnj9Hfq8fRib+9AQpwZcAAAAASUVORK5CYII= +" + height="320" + width="320" /> + <rect + style="opacity:0.98000003999999996;fill:#000fcf;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3786" + width="20" + height="20" + x="60" + y="60" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#0413d0;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3790" + width="20" + height="20" + x="40" + y="80" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#0c1df3;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3792" + width="20" + height="20" + x="60" + y="80" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#2b38cf;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3794" + width="20" + height="20" + x="80" + y="80" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#0010dd;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3796" + width="20" + height="20" + x="40" + y="100" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#2838fd;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3798" + width="20" + height="20" + x="60" + y="100" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#4d5bf1;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3800" + width="20" + height="20" + x="80" + y="100" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#4f5dc2;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3802" + width="20" + height="20" + x="100" + y="100" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#000fcd;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3804" + width="20" + height="20" + x="20" + y="120" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#000fcd;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3806" + width="20" + height="20" + x="20" + y="140" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#0113f9;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3808" + width="20" + height="20" + x="40" + y="120" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#0110c9;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3810" + width="20" + height="20" + x="40" + y="140" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#000fd1;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3812" + width="20" + height="20" + x="40" + y="200" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#0010df;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3814" + width="20" + height="20" + x="40" + y="220" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#0313e4;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3816" + width="20" + height="20" + x="60" + y="200" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#3645fb;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3818" + width="20" + height="20" + x="60" + y="120" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#2c3acf;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3820" + width="20" + height="20" + x="60" + y="140" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#000fd2;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3822" + width="20" + height="20" + x="60" + y="220" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#333fc6;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3824" + width="20" + height="20" + x="80" + y="180" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#3241f7;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3826" + width="20" + height="20" + x="80" + y="200" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#0f1ff6;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3828" + width="20" + height="20" + x="80" + y="220" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#000fce;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3830" + width="20" + height="20" + x="80" + y="240" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#000fd7;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3832" + width="20" + height="20" + x="100" + y="260" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#000fda;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3834" + width="20" + height="20" + x="120" + y="260" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#0011ef;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3836" + width="20" + height="20" + x="100" + y="240" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#3140fc;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3838" + width="20" + height="20" + x="100" + y="220" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#5260f5;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3840" + width="20" + height="20" + x="100" + y="200" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#7a86cc;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3842" + width="20" + height="20" + x="100" + y="180" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#8a97ee;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3844" + width="20" + height="20" + x="80" + y="120" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#8c9adf;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3846" + width="20" + height="20" + x="100" + y="120" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#7480c8;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3848" + width="20" + height="20" + x="80" + y="140" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#595cdf;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3850" + width="20" + height="20" + x="100" + y="140" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#000fd7;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3852" + width="20" + height="20" + x="100" + y="20" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#000fd5;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3854" + width="20" + height="20" + x="120" + y="20" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#000fd0;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3856" + width="20" + height="20" + x="140" + y="20" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#000ec9;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3858" + width="20" + height="20" + x="160" + y="20" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#000fcd;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3860" + width="20" + height="20" + x="180" + y="20" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#000fd1;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3862" + width="20" + height="20" + x="100" + y="40" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#000fd4;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3864" + width="20" + height="20" + x="200" + y="40" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#0b1be9;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3866" + width="20" + height="20" + x="180" + y="40" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#2232fe;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3868" + width="20" + height="20" + x="160" + y="40" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#2737fe;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3870" + width="20" + height="20" + x="140" + y="40" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#1b2af2;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3872" + width="20" + height="20" + x="120" + y="40" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#2f3cce;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3874" + width="20" + height="20" + x="180" + y="60" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#4a58f7;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3876" + width="20" + height="20" + x="160" + y="60" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#4f5df7;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3878" + width="20" + height="20" + x="140" + y="60" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#3d4ad7;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3880" + width="20" + height="20" + x="120" + y="60" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#7781c3;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3882" + width="20" + height="20" + x="120" + y="80" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#8592e7;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3884" + width="20" + height="20" + x="140" + y="80" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#7a87db;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3886" + width="20" + height="20" + x="160" + y="80" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#3b3fd2;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3888" + width="20" + height="20" + x="140" + y="100" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#8692ce;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3890" + width="20" + height="20" + x="160" + y="100" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#6466d4;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3892" + width="20" + height="20" + x="120" + y="120" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#d4d5fe;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3894" + width="20" + height="20" + x="120" + y="140" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#9d9fe4;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3896" + width="20" + height="20" + x="120" + y="160" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#8491cc;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3898" + width="20" + height="20" + x="120" + y="180" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#7a87cd;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3900" + width="20" + height="20" + x="120" + y="200" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#3845d5;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3902" + width="20" + height="20" + x="120" + y="220" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#0c1bd4;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3904" + width="20" + height="20" + x="120" + y="240" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#c8c9f4;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3906" + width="20" + height="20" + x="140" + y="120" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#fcfcff;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3908" + width="20" + height="20" + x="140" + y="140" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#e0e1ff;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3910" + width="20" + height="20" + x="140" + y="160" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#6265dd;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3912" + width="20" + height="20" + x="140" + y="180" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#8789d2;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3914" + width="20" + height="20" + x="160" + y="120" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#d5d6f8;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3916" + width="20" + height="20" + x="160" + y="140" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#8e91fb;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3918" + width="20" + height="20" + x="160" + y="160" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#8b98cf;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3920" + width="20" + height="20" + x="160" + y="180" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#707cbb;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3922" + width="20" + height="20" + x="160" + y="200" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#3542c9;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3924" + width="20" + height="20" + x="160" + y="220" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#909dd9;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3926" + width="20" + height="20" + x="180" + y="120" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#5b67da;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3928" + width="20" + height="20" + x="200" + y="100" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#2834d1;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3930" + width="20" + height="20" + x="220" + y="80" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#000fcf;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3932" + width="20" + height="20" + x="240" + y="60" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#0011ea;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3934" + width="20" + height="20" + x="240" + y="80" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#404df8;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3936" + width="20" + height="20" + x="220" + y="100" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#0010df;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3938" + width="20" + height="20" + x="260" + y="80" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#1828f7;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3940" + width="20" + height="20" + x="240" + y="100" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#8795e8;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3942" + width="20" + height="20" + x="200" + y="120" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#4648c6;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3944" + width="20" + height="20" + x="180" + y="140" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#4e5df7;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3946" + width="20" + height="20" + x="220" + y="120" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#000fd0;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3948" + width="20" + height="20" + x="260" + y="100" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#2939fc;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3950" + width="20" + height="20" + x="240" + y="120" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#000ecb;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3952" + width="20" + height="20" + x="260" + y="120" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#707cbc;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3954" + width="20" + height="20" + x="200" + y="140" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#7884bd;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3956" + width="20" + height="20" + x="180" + y="160" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#4957dd;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3958" + width="20" + height="20" + x="220" + y="140" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#6b7add;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3960" + width="20" + height="20" + x="180" + y="180" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#2a3af9;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3962" + width="20" + height="20" + x="240" + y="140" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#6170f1;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3964" + width="20" + height="20" + x="180" + y="200" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#3d4bed;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3966" + width="20" + height="20" + x="180" + y="220" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#0b1adf;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3968" + width="20" + height="20" + x="180" + y="240" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#000fd7;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3970" + width="20" + height="20" + x="180" + y="260" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#000fd2;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3972" + width="20" + height="20" + x="260" + y="140" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#1826d4;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3974" + width="20" + height="20" + x="240" + y="160" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#0010e1;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3976" + width="20" + height="20" + x="260" + y="160" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#4b58c6;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3978" + width="20" + height="20" + x="200" + y="180" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#4a59f5;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3980" + width="20" + height="20" + x="200" + y="200" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#2939fc;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3982" + width="20" + height="20" + x="200" + y="220" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#0011f0;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3984" + width="20" + height="20" + x="200" + y="240" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#0010dd;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3986" + width="20" + height="20" + x="200" + y="260" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#1f2ee3;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3988" + width="20" + height="20" + x="220" + y="200" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#0515e2;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3990" + width="20" + height="20" + x="240" + y="200" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#0112f0;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3992" + width="20" + height="20" + x="220" + y="220" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#000fcd;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3994" + width="20" + height="20" + x="220" + y="240" + transform="translate(0,732.36218)" /> + <rect + style="opacity:0.98000003999999996;fill:#000fcd;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter22272)" + id="rect3996" + width="20" + height="20" + x="240" + y="220" + transform="translate(0,732.36218)" /> + </g> +</svg> diff --git a/misc/vector/dense_bricks.svg b/misc/vector/dense_bricks.svg new file mode 100644 index 0000000000..08889aa25c --- /dev/null +++ b/misc/vector/dense_bricks.svg @@ -0,0 +1,1001 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="320" + height="320" + viewBox="0 0 84.666664 84.666664" + version="1.1" + id="svg8" + inkscape:version="0.92.1 r15371" + sodipodi:docname="dense_bricks.svg" + inkscape:export-filename="C:\Users\Johannes\git\GT5-Unofficial\misc\vector\MACHINE_CASING_DENSEBRICKS.png" + inkscape:export-xdpi="4.8000002" + inkscape:export-ydpi="4.8000002"> + <defs + id="defs2"> + <filter + style="color-interpolation-filters:sRGB" + id="filter323" + inkscape:label="filter0"> + <feColorMatrix + id="feColorMatrix327" + values="1.5 0 0 0 0 0 1.24 0 0 0 0 0 0.94 0 0 0 0 0 1 0 " /> + <feColorMatrix + id="feColorMatrix28" + values="0.8 0 0 0 0 0 0.8 0 0 0 0 0 0.8 0 0 0 0 0 1 0 " /> + </filter> + <filter + style="color-interpolation-filters:sRGB" + id="filter323-2" + inkscape:label="filter0"> + <feColorMatrix + id="feColorMatrix327-2" + values="1.69 0 0 0 0 0 1 0 0 0 0 0 0.41 0 0 0 0 0 1 0 " /> + </filter> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4" + inkscape:cx="-47.579129" + inkscape:cy="140.30032" + inkscape:document-units="mm" + inkscape:current-layer="layer1" + showgrid="true" + inkscape:window-width="1920" + inkscape:window-height="1017" + inkscape:window-x="-8" + inkscape:window-y="-8" + inkscape:window-maximized="1" + units="px"> + <inkscape:grid + type="xygrid" + id="grid4851" /> + </sodipodi:namedview> + <metadata + id="metadata5"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(0,-212.33337)"> + <image + y="261.77823" + x="137.37654" + id="image18" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABWUlEQVR42n1TS8uCUBC9/zMsFVxo UqGSRou2IqRCkWJFLvyf83EmRibza3HwPuaeeZyjeb1e1LYt9X1Pj8eD6rrmb9M0dL1eP9B1HZ3P Z6qqisqyJNu2ySA4z/MRh8PhYx/HMZ1OJwbuZH08HslxHDLIiAuBkEgggDO9B+l6vSbLssigVMmi AzWpQBNuNhtarVZk0NtcsG5j2g7WSZK8K7hcLl9Zpn0Dcib7IAjeM8BUoyiiLMuYFaVp4AzY7Xbk eR6FYch7vGEClPELi8WCvwh2XZelA9A/t4AZYJACyArcbjcOGoaBns8n3e939gA8o/1i/ut9u91y BiT4pY7RBgKBKLDf77lUVKU9ICqMBNMLySY6i1NBriuUasyc9lj7vj+2oE301cLcBTKBAJOHT3Rl +n9BnEGgAGXDINAZvoBsRVGw9mmasvbiD3ljtK4a2gvL5XL0wPTuD25VbTdjHernAAAAAElFTkSu QmCC " + style="filter:url(#filter323);image-rendering:optimizeSpeed" + preserveAspectRatio="none" + height="84.666664" + width="84.666664" /> + <image + y="215.91263" + x="253.26675" + id="image18-7" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABWUlEQVR42n1TS8uCUBC9/zMsFVxo UqGSRou2IqRCkWJFLvyf83EmRibza3HwPuaeeZyjeb1e1LYt9X1Pj8eD6rrmb9M0dL1eP9B1HZ3P Z6qqisqyJNu2ySA4z/MRh8PhYx/HMZ1OJwbuZH08HslxHDLIiAuBkEgggDO9B+l6vSbLssigVMmi AzWpQBNuNhtarVZk0NtcsG5j2g7WSZK8K7hcLl9Zpn0Dcib7IAjeM8BUoyiiLMuYFaVp4AzY7Xbk eR6FYch7vGEClPELi8WCvwh2XZelA9A/t4AZYJACyArcbjcOGoaBns8n3e939gA8o/1i/ut9u91y BiT4pY7RBgKBKLDf77lUVKU9ICqMBNMLySY6i1NBriuUasyc9lj7vj+2oE301cLcBTKBAJOHT3Rl +n9BnEGgAGXDINAZvoBsRVGw9mmasvbiD3ljtK4a2gvL5XL0wPTuD25VbTdjHernAAAAAElFTkSu QmCC " + style="filter:url(#filter323-2);image-rendering:optimizeSpeed" + preserveAspectRatio="none" + height="84.666664" + width="84.666664" /> + <rect + style="opacity:0.98000004;fill:#d78034;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect340" + width="45.168549" + height="24.856066" + x="171.85431" + y="197.57578" /> + <g + id="g4863" + style="filter:url(#filter323)" + transform="translate(10.583331,121.70833)"> + <image + y="212.33337" + x="1.2715658e-006" + id="image4849" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABWUlEQVR42n1TS8uCUBC9/zMsFVxo UqGSRou2IqRCkWJFLvyf83EmRibza3HwPuaeeZyjeb1e1LYt9X1Pj8eD6rrmb9M0dL1eP9B1HZ3P Z6qqisqyJNu2ySA4z/MRh8PhYx/HMZ1OJwbuZH08HslxHDLIiAuBkEgggDO9B+l6vSbLssigVMmi AzWpQBNuNhtarVZk0NtcsG5j2g7WSZK8K7hcLl9Zpn0Dcib7IAjeM8BUoyiiLMuYFaVp4AzY7Xbk eR6FYch7vGEClPELi8WCvwh2XZelA9A/t4AZYJACyArcbjcOGoaBns8n3e939gA8o/1i/ut9u91y BiT4pY7RBgKBKLDf77lUVKU9ICqMBNMLySY6i1NBriuUasyc9lj7vj+2oE301cLcBTKBAJOHT3Rl +n9BnEGgAGXDINAZvoBsRVGw9mmasvbiD3ljtK4a2gvL5XL0wPTuD25VbTdjHernAAAAAElFTkSu QmCC " + style="image-rendering:optimizeSpeed" + preserveAspectRatio="none" + height="42.333332" + width="42.333332" /> + <image + width="42.333332" + height="42.333332" + preserveAspectRatio="none" + style="image-rendering:optimizeSpeed" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABWUlEQVR42n1TS8uCUBC9/zMsFVxo UqGSRou2IqRCkWJFLvyf83EmRibza3HwPuaeeZyjeb1e1LYt9X1Pj8eD6rrmb9M0dL1eP9B1HZ3P Z6qqisqyJNu2ySA4z/MRh8PhYx/HMZ1OJwbuZH08HslxHDLIiAuBkEgggDO9B+l6vSbLssigVMmi AzWpQBNuNhtarVZk0NtcsG5j2g7WSZK8K7hcLl9Zpn0Dcib7IAjeM8BUoyiiLMuYFaVp4AzY7Xbk eR6FYch7vGEClPELi8WCvwh2XZelA9A/t4AZYJACyArcbjcOGoaBns8n3e939gA8o/1i/ut9u91y BiT4pY7RBgKBKLDf77lUVKU9ICqMBNMLySY6i1NBriuUasyc9lj7vj+2oE301cLcBTKBAJOHT3Rl +n9BnEGgAGXDINAZvoBsRVGw9mmasvbiD3ljtK4a2gvL5XL0wPTuD25VbTdjHernAAAAAElFTkSu QmCC " + id="image4853" + x="42.333336" + y="212.33337" /> + <image + y="254.6667" + x="42.333336" + id="image4855" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABWUlEQVR42n1TS8uCUBC9/zMsFVxo UqGSRou2IqRCkWJFLvyf83EmRibza3HwPuaeeZyjeb1e1LYt9X1Pj8eD6rrmb9M0dL1eP9B1HZ3P Z6qqisqyJNu2ySA4z/MRh8PhYx/HMZ1OJwbuZH08HslxHDLIiAuBkEgggDO9B+l6vSbLssigVMmi AzWpQBNuNhtarVZk0NtcsG5j2g7WSZK8K7hcLl9Zpn0Dcib7IAjeM8BUoyiiLMuYFaVp4AzY7Xbk eR6FYch7vGEClPELi8WCvwh2XZelA9A/t4AZYJACyArcbjcOGoaBns8n3e939gA8o/1i/ut9u91y BiT4pY7RBgKBKLDf77lUVKU9ICqMBNMLySY6i1NBriuUasyc9lj7vj+2oE301cLcBTKBAJOHT3Rl +n9BnEGgAGXDINAZvoBsRVGw9mmasvbiD3ljtK4a2gvL5XL0wPTuD25VbTdjHernAAAAAElFTkSu QmCC " + style="image-rendering:optimizeSpeed" + preserveAspectRatio="none" + height="42.333332" + width="42.333332" /> + <image + width="42.333332" + height="42.333332" + preserveAspectRatio="none" + style="image-rendering:optimizeSpeed" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABWUlEQVR42n1TS8uCUBC9/zMsFVxo UqGSRou2IqRCkWJFLvyf83EmRibza3HwPuaeeZyjeb1e1LYt9X1Pj8eD6rrmb9M0dL1eP9B1HZ3P Z6qqisqyJNu2ySA4z/MRh8PhYx/HMZ1OJwbuZH08HslxHDLIiAuBkEgggDO9B+l6vSbLssigVMmi AzWpQBNuNhtarVZk0NtcsG5j2g7WSZK8K7hcLl9Zpn0Dcib7IAjeM8BUoyiiLMuYFaVp4AzY7Xbk eR6FYch7vGEClPELi8WCvwh2XZelA9A/t4AZYJACyArcbjcOGoaBns8n3e939gA8o/1i/ut9u91y BiT4pY7RBgKBKLDf77lUVKU9ICqMBNMLySY6i1NBriuUasyc9lj7vj+2oE301cLcBTKBAJOHT3Rl +n9BnEGgAGXDINAZvoBsRVGw9mmasvbiD3ljtK4a2gvL5XL0wPTuD25VbTdjHernAAAAAElFTkSu QmCC " + id="image4857" + x="-7.1054274e-015" + y="254.6667" /> + </g> + <g + id="g751"> + <image + width="84.666664" + height="84.666664" + preserveAspectRatio="none" + style="image-rendering:optimizeSpeed" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz AAAAvQAAAL0BHVrG+gAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAADxSURB VDiN7dLNSsNAFMXxf+JN+hFLGKGgUBBBRF/AvW/l0/gqPowIRdI0sZl8zEwSV4aCON2Ld/tb3XNO 8PryPAYE7IqKxTzCuR6A1lgIAtZqhc8lLzTvHzkqTciKA8e3zUrObjdel0hCAPalRqXJhHVjWC5i Trm0xjKMI1Xd8albZrFgXY9zA7NYOOUyjyPuri+JROisRa2W6NbgXE/TWiIJvS6lbtiXGgDXD9zf XPG2zQHojEWlidfDb1RpQnGop5Q7Y6fffS5ZUQGwKzUXaULVdNStQTcdxroptN9cnh4ffvR8vll7 d3Ds/zv4Ezv4AptmhMVYeNf6AAAAAElFTkSuQmCC " + id="image40" + x="0" + y="212.33337" /> + <rect + y="291.70837" + x="58.208332" + height="5.2916665" + width="5.2916665" + id="rect43" + style="opacity:0.98000004;fill:#7f6950;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="249.37505" + x="58.208332" + height="5.2916665" + width="5.2916665" + id="rect43-8" + style="opacity:0.98000004;fill:#7f6950;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="286.41672" + x="52.916664" + height="5.2916665" + width="5.2916665" + id="rect60" + style="opacity:0.98000004;fill:#92785b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="244.08339" + x="52.916664" + height="5.2916665" + width="5.2916665" + id="rect60-0" + style="opacity:0.98000004;fill:#92785b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="249.37505" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect43-8-2" + style="opacity:0.98000004;fill:#7f6950;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="286.41672" + x="10.583331" + height="5.2916665" + width="5.2916665" + id="rect60-0-9" + style="opacity:0.98000004;fill:#92785b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="291.70837" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect43-3" + style="opacity:0.98000004;fill:#7f6950;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="254.6667" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect122" + style="opacity:0.98000004;fill:#b69672;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="244.08337" + x="10.583334" + height="5.2916665" + width="5.2916665" + id="rect124" + style="opacity:0.98000004;fill:#a38766;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="238.7917" + x="42.333332" + height="5.2916665" + width="5.2916665" + id="rect126" + style="opacity:0.98000004;fill:#92785b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="281.12503" + x="42.333332" + height="5.2916665" + width="5.2916665" + id="rect128" + style="opacity:0.98000004;fill:#92785b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="212.33337" + x="52.916664" + height="5.2916665" + width="5.2916665" + id="rect130" + style="opacity:0.98000004;fill:#c09e79;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="212.33337" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect132" + style="opacity:0.98000004;fill:#c09e79;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="244.08337" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect156" + style="opacity:0.98000004;fill:#92785b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="244.08337" + x="47.625" + height="5.2916665" + width="5.2916665" + id="rect158" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="281.12503" + x="47.625" + height="5.2916665" + width="5.2916665" + id="rect160" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="286.41672" + x="37.041668" + height="5.2916665" + width="5.2916665" + id="rect162" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="244.08337" + x="5.2916665" + height="5.2916665" + width="5.2916665" + id="rect164" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="238.7917" + x="37.041668" + height="5.2916665" + width="5.2916665" + id="rect166" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="291.70837" + x="47.625" + height="5.2916665" + width="5.2916665" + id="rect339" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="249.37505" + x="79.375" + height="5.2916665" + width="5.2916665" + id="rect339-9" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="259.95837" + x="79.375" + height="5.2916665" + width="5.2916665" + id="rect339-3" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="217.62505" + x="37.041668" + height="5.2916665" + width="5.2916665" + id="rect339-1" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="249.37503" + x="-8.8817842e-016" + height="5.2916665" + width="5.2916665" + id="rect339-4" + style="opacity:0.98000004;fill:#8a7256;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="270.54172" + x="47.625" + height="5.2916665" + width="5.2916665" + id="rect681" + style="opacity:0.98000004;fill:#846d53;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="259.95837" + x="5.2916665" + height="5.2916665" + width="5.2916665" + id="rect683" + style="opacity:0.98000004;fill:#a38766;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="222.9167" + x="52.916664" + height="5.2916665" + width="5.2916665" + id="rect685" + style="opacity:0.98000004;fill:#a38766;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="217.62503" + x="5.2916665" + height="5.2916665" + width="5.2916665" + id="rect689" + style="opacity:0.98000004;fill:#a38766;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="222.9167" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect691" + style="opacity:0.98000004;fill:#a38766;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="265.25003" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect693" + style="opacity:0.98000004;fill:#a38766;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="265.25003" + x="5.2916665" + height="5.2916665" + width="5.2916665" + id="rect695" + style="opacity:0.98000004;fill:#a38766;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="265.25003" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect697" + style="opacity:0.98000004;fill:#997e60;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + </g> + <image + y="212.33337" + x="-92.604164" + id="image707" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAABmJLR0QA/wD/AP+gvaeTAAAACXBI +WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3gYJDBYkPynFtwAAAYdJREFUKM+FktFKlHEQxX/f14dY +SHoh7aqgvUAi9Cg+QdQDBL1N9Aw+THdCa1vuUppEpi60M+dMF//Fq7C5GAbmnDnMnOmmx1sARdjp +SjtUaadKrpTTTleoskgxAAd7O6kKO+1Qo1U2mivklFUOcTa77KHC/nQ+bwqT82+pe7QnX+dpyzU5 +v0w5xdCGnV7dnF7dAMD0empYCgNw+eU7sDTPbJkh5LSB/SccPR/1Hy74V7x/SbhC9E3hV/BwZJGq +NH1bdyE+Xj9EWJq0c6Xg+v0/has/pCtMH7ZUrv8Qho6UZXrLaS+9arw76t6+6O5xbw66V3vdagdX +mCFcYQOHmwCLO5S83u+USCxuSXG80Q1dhZsPqlQttBq5uEWioZWkUFK1upLM0Pxf6zmZczK/GD0F +WOtXl7mvgbTTzWn7cIPd0Xban2c/x+Ot9nwpn83udsbrKU9ny3zcfChS3htvpx2unfFmyu2XwrU7 +WpdLrvHoUdphhhCT2Y80EiFk0oTIIoREmmy5qOIvirycu2t8lJoAAAAASUVORK5CYII= +" + style="image-rendering:optimizeSpeed" + preserveAspectRatio="none" + height="84.666664" + width="84.666664" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect710" + width="5.2916665" + height="5.2916665" + x="10.583336" + y="222.9167" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect712" + width="5.2916665" + height="5.2916665" + x="26.458334" + y="222.9167" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect714" + width="5.2916665" + height="5.2916665" + x="68.791664" + y="222.9167" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect716" + width="5.2916665" + height="5.2916665" + x="52.916668" + y="222.9167" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect753" + width="5.2916665" + height="5.2916665" + x="10.583333" + y="228.20837" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect755" + width="5.2916665" + height="5.2916665" + x="15.875" + y="228.20837" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect757" + width="5.2916665" + height="5.2916665" + x="21.166666" + y="228.20837" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect759" + width="5.2916665" + height="5.2916665" + x="26.458332" + y="228.20837" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect761" + width="5.2916665" + height="5.2916665" + x="31.75" + y="228.20837" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect763" + width="5.2916665" + height="5.2916665" + x="37.041668" + y="228.20837" /> + <rect + y="228.20836" + x="42.333332" + height="5.2916665" + width="5.2916665" + id="rect765" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="228.20836" + x="47.624996" + height="5.2916665" + width="5.2916665" + id="rect767" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="228.20836" + x="58.208328" + height="5.2916665" + width="5.2916665" + id="rect769" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="228.20836" + x="68.791664" + height="5.2916665" + width="5.2916665" + id="rect771" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect773" + width="5.2916665" + height="5.2916665" + x="63.5" + y="228.20836" /> + <rect + y="228.20836" + x="52.916668" + height="5.2916665" + width="5.2916665" + id="rect775" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="233.50003" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect777" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="233.50003" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect779" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="233.50003" + x="21.166666" + height="5.2916665" + width="5.2916665" + id="rect781" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect783" + width="5.2916665" + height="5.2916665" + x="10.583333" + y="238.7917" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect785" + width="5.2916665" + height="5.2916665" + x="15.875" + y="238.7917" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect787" + width="5.2916665" + height="5.2916665" + x="21.166666" + y="238.7917" /> + <rect + y="244.08336" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect789" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="244.08336" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect791" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="244.08336" + x="21.166666" + height="5.2916665" + width="5.2916665" + id="rect793" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect795" + width="5.2916665" + height="5.2916665" + x="10.583333" + y="249.37503" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect797" + width="5.2916665" + height="5.2916665" + x="15.875" + y="249.37503" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect799" + width="5.2916665" + height="5.2916665" + x="21.166666" + y="249.37503" /> + <rect + y="254.6667" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect801" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="254.6667" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect803" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="254.6667" + x="21.166666" + height="5.2916665" + width="5.2916665" + id="rect805" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect807" + width="5.2916665" + height="5.2916665" + x="10.583333" + y="259.95837" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect809" + width="5.2916665" + height="5.2916665" + x="15.875" + y="259.95837" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect811" + width="5.2916665" + height="5.2916665" + x="21.166666" + y="259.95837" /> + <rect + y="265.25006" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect813" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="265.25006" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect815" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="265.25006" + x="21.166666" + height="5.2916665" + width="5.2916665" + id="rect817" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect819" + width="5.2916665" + height="5.2916665" + x="10.583333" + y="270.54172" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect821" + width="5.2916665" + height="5.2916665" + x="15.875" + y="270.54172" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect823" + width="5.2916665" + height="5.2916665" + x="21.166666" + y="270.54172" /> + <rect + y="275.83337" + x="10.583333" + height="5.2916665" + width="5.2916665" + id="rect825" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="275.83337" + x="15.875" + height="5.2916665" + width="5.2916665" + id="rect827" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="275.83337" + x="21.166666" + height="5.2916665" + width="5.2916665" + id="rect829" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect831" + width="5.2916665" + height="5.2916665" + x="10.583333" + y="281.12506" /> + <rect + y="281.12503" + x="26.458332" + height="5.2916665" + width="5.2916665" + id="rect833" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect835" + width="5.2916665" + height="5.2916665" + x="68.791664" + y="281.12503" /> + <rect + y="281.12506" + x="52.916668" + height="5.2916665" + width="5.2916665" + id="rect837" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect839" + width="5.2916665" + height="5.2916665" + x="26.458334" + y="265.25006" /> + <rect + y="270.54172" + x="26.458334" + height="5.2916665" + width="5.2916665" + id="rect841" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect843" + width="5.2916665" + height="5.2916665" + x="26.458334" + y="275.83337" /> + <rect + y="265.25006" + x="31.75" + height="5.2916665" + width="5.2916665" + id="rect845" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect847" + width="5.2916665" + height="5.2916665" + x="31.75" + y="270.54172" /> + <rect + y="275.83337" + x="31.75" + height="5.2916665" + width="5.2916665" + id="rect849" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect851" + width="5.2916665" + height="5.2916665" + x="37.041664" + y="265.25006" /> + <rect + y="270.54172" + x="37.041664" + height="5.2916665" + width="5.2916665" + id="rect853" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect855" + width="5.2916665" + height="5.2916665" + x="37.041664" + y="275.83337" /> + <rect + y="265.25006" + x="42.333332" + height="5.2916665" + width="5.2916665" + id="rect857" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect859" + width="5.2916665" + height="5.2916665" + x="42.333332" + y="270.54172" /> + <rect + y="275.83337" + x="42.333332" + height="5.2916665" + width="5.2916665" + id="rect861" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect863" + width="5.2916665" + height="5.2916665" + x="47.625" + y="265.25006" /> + <rect + y="270.54172" + x="47.625" + height="5.2916665" + width="5.2916665" + id="rect865" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect867" + width="5.2916665" + height="5.2916665" + x="47.625" + y="275.83337" /> + <rect + y="265.25006" + x="52.916664" + height="5.2916665" + width="5.2916665" + id="rect869" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect871" + width="5.2916665" + height="5.2916665" + x="52.916664" + y="270.54172" /> + <rect + y="275.83337" + x="52.916664" + height="5.2916665" + width="5.2916665" + id="rect873" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect887" + width="5.2916665" + height="5.2916665" + x="58.208332" + y="265.25006" /> + <rect + y="270.54172" + x="58.208332" + height="5.2916665" + width="5.2916665" + id="rect889" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect891" + width="5.2916665" + height="5.2916665" + x="58.208332" + y="275.83337" /> + <rect + y="265.25006" + x="63.5" + height="5.2916665" + width="5.2916665" + id="rect893" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect895" + width="5.2916665" + height="5.2916665" + x="63.5" + y="270.54172" /> + <rect + y="275.83337" + x="63.5" + height="5.2916665" + width="5.2916665" + id="rect897" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect899" + width="5.2916665" + height="5.2916665" + x="68.791672" + y="265.25006" /> + <rect + y="270.54172" + x="68.791672" + height="5.2916665" + width="5.2916665" + id="rect901" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect903" + width="5.2916665" + height="5.2916665" + x="68.791672" + y="275.83337" /> + <rect + y="249.37506" + x="68.791672" + height="5.2916665" + width="5.2916665" + id="rect905" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect907" + width="5.2916665" + height="5.2916665" + x="68.791672" + y="254.66672" /> + <rect + y="259.95837" + x="68.791672" + height="5.2916665" + width="5.2916665" + id="rect909" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect911" + width="5.2916665" + height="5.2916665" + x="68.791672" + y="233.50003" /> + <rect + y="238.79169" + x="68.791672" + height="5.2916665" + width="5.2916665" + id="rect913" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect915" + width="5.2916665" + height="5.2916665" + x="68.791672" + y="244.08334" /> + <rect + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect917" + width="42.333332" + height="31.75" + x="26.458332" + y="233.50003" /> + <rect + y="259.95837" + x="58.208332" + height="5.2916665" + width="5.2916665" + id="rect919" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect921" + width="5.2916665" + height="5.2916665" + x="52.916668" + y="259.95837" /> + <rect + y="259.95837" + x="26.458334" + height="5.2916665" + width="5.2916665" + id="rect923" + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:0.98000004;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229166;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect925" + width="5.2916665" + height="5.2916665" + x="31.75" + y="259.95837" /> + </g> +</svg> diff --git a/misc/vector/firebrick.svg b/misc/vector/firebrick.svg new file mode 100644 index 0000000000..df46e0e558 --- /dev/null +++ b/misc/vector/firebrick.svg @@ -0,0 +1,156 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="320" + height="320" + viewBox="0 0 84.666665 84.666669" + version="1.1" + id="svg8" + inkscape:version="0.92.1 r15371" + sodipodi:docname="firebrick.svg" + inkscape:export-filename="./111.png" + inkscape:export-xdpi="4.8000002" + inkscape:export-ydpi="4.8000002"> + <defs + id="defs2"> + <filter + style="color-interpolation-filters:sRGB;" + id="filter4533" + inkscape:label="Greyscale"> + <feColorMatrix + id="feColorMatrix4539" + values="0.33 0.33 0.33 0 0 0.33 0.33 0.33 0 0 0.33 0.33 0.33 0 0 0 0 0 1 0 " /> + <feColorMatrix + id="feColorMatrix4535" + values="1.35 0 0 0 0 0 1.08 0 0 0 0 0 0.81 0 0 0 0 0 1 0 " + result="fbSourceGraphic" /> + </filter> + <filter + inkscape:label="Greyscale" + id="filter4547" + style="color-interpolation-filters:sRGB;"> + <feColorMatrix + values="0.33 0.33 0.33 0 0 0.33 0.33 0.33 0 0 0.33 0.33 0.33 0 0 0 0 0 1 0 " + id="feColorMatrix4543" /> + <feColorMatrix + result="fbSourceGraphic" + values="1.35 0 0 0 0 0 1.08 0 0 0 0 0 0.81 0 0 0 0 0 1 0 " + id="feColorMatrix4545" /> + </filter> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.5" + inkscape:cx="-240.33364" + inkscape:cy="479.33862" + inkscape:document-units="mm" + inkscape:current-layer="layer1" + showgrid="false" + units="px" + inkscape:window-width="1920" + inkscape:window-height="1017" + inkscape:window-x="-8" + inkscape:window-y="-8" + inkscape:window-maximized="1" /> + <metadata + id="metadata5"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(0,-212.33332)"> + <rect + style="opacity:1;fill:#c8c8dc;fill-opacity:0.50196078;fill-rule:nonzero;stroke:none;stroke-width:1.32300007;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect4487" + width="191.25594" + height="236.61308" + x="-316.74405" + y="182.09525" /> + <rect + style="opacity:1;fill:#ada09b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.32300007;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect4489" + width="125.48809" + height="112.6369" + x="-405.19049" + y="46.023808" /> + <image + y="212.33333" + x="-2.8421709e-014" + id="image4499" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAg0lEQVR42mNgGDLASkbkPwiTpQmE +9wM/2+PciBsCDZN6BjDEGI04TQExKi30yFKU4S2PArWFRP4zwCzFZchyBpyTFXB6mAYxQBkQ/Bp wmsACIM04NMEw4n6SggDQALIBuDSBPM3DKPEAswQdANgNmFowhb/IA0gA4jWhM0QkjUNOAAAcv/w xmRw4pYAAAAASUVORK5CYII= " + style="image-rendering:optimizeSpeed;filter:url(#filter4533)" + preserveAspectRatio="none" + height="84.666664" + width="84.666664" /> + <rect + style="opacity:1;fill:#9b5643;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.32300007;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect4502" + width="109.58051" + height="101.02789" + x="145.6619" + y="172.45239" /> + <image + y="303.18347" + x="189.78285" + id="image5194" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABwUlEQVR42mVTa0tCQRC9f6eiJ5Sa mmWYKBpR9IDAwIigqC9BEERFpllZ0dP31bAIehv0+HfTPVOzrdcPh9md2Tt3ztmzRnFqmM7HBgjx KX/JsTwdoNMxH93NBnn/EAvT8aiXXstZ3kseMDYDfQSkwv30dVehejzK+1VvFy262nm97u+hRMil GmyPODi/ZYEbZKIeWvZ0Nh1Y83WT/ABAfTfk5Omwx1RG9SRNlcw+lQ73qF7Jk2lFQTGd4FjNpDh+ 1MoNtdrZERkHEbfiIxBN8EfwBSozgaZzL4VrMrDAOIVJP8cldwfHjeFeRUmns+LtVJQwMTeIO1op Heln4VBYcLRx/Lgp0n0syHmICDF1TV6K1gQ6Z+hQPkgqzromoocOnkDnhpGzE0O8rlm83+dHyV6X NWrqGgXP+Su6HB9sGBP+gNDQ5DF3wR+DrtT5FrBA8rNmKtHmels4wh+4e+ZsqS51NOYGwief3G7y gV2f92rhVyPLO6KJAd+DJ/xu98Jj9oIpga/kRSN8931r/vsAHHXu8AMaoG6vQbydoJNF5QY4LJx0 vJVyirNA9FANzL+7z6V2yPy7f1PzgXjC/i4APP8fbrNMhjhcdKQAAAAASUVORK5CYII= " + style="image-rendering:optimizeSpeed;" + preserveAspectRatio="none" + height="84.666664" + width="84.666664" /> + <rect + y="172.45239" + x="241.87892" + height="101.02789" + width="109.58051" + id="rect5197" + style="opacity:1;fill:#7c4536;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.32300007;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + style="opacity:1;fill:#4d4d4d;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.32300007;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect4519" + width="105.30417" + height="103.71667" + x="54.504162" + y="-6.7416778" /> + <rect + style="opacity:1;fill:#92785b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.32300007;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect4485" + width="232.83333" + height="213.17857" + x="-218.16788" + y="-35.392273" /> + <image + width="84.666664" + height="84.666664" + preserveAspectRatio="none" + style="filter:url(#filter4533);image-rendering:optimizeSpeed" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAg0lEQVR42mNgGDLASkbkPwiTpQmE +9wM/2+PciBsCDZN6BjDEGI04TQExKi30yFKU4S2PArWFRP4zwCzFZchyBpyTFXB6mAYxQBkQ/Bp wmsACIM04NMEw4n6SggDQALIBuDSBPM3DKPEAswQdANgNmFowhb/IA0gA4jWhM0QkjUNOAAAcv/w xmRw4pYAAAAASUVORK5CYII= " + id="image4541" + x="203.2" + y="62.579163" /> + </g> +</svg> diff --git a/misc/vector/recipe.distillation_tower.svg b/misc/vector/recipe.distillation_tower.svg new file mode 100644 index 0000000000..013bf2ee7c --- /dev/null +++ b/misc/vector/recipe.distillation_tower.svg @@ -0,0 +1,1259 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="5120" + height="5120" + id="svg2" + version="1.1" + inkscape:version="0.48.5 r10040" + sodipodi:docname="recipe.distillation_tower.svg" + inkscape:export-filename="C:\Users\Johannes\git\GT5-Unofficial\misc\vector\recipe.distillation_tower.png" + inkscape:export-xdpi="4.5" + inkscape:export-ydpi="4.5"> + <defs + id="defs4" /> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.34375" + inkscape:cx="2316.8576" + inkscape:cy="4187.8954" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="true" + inkscape:window-width="1920" + inkscape:window-height="1017" + inkscape:window-x="-8" + inkscape:window-y="-8" + inkscape:window-maximized="1"> + <inkscape:grid + type="xygrid" + id="grid2991" + empspacing="5" + visible="true" + enabled="true" + snapvisiblegridlinesonly="true" /> + </sodipodi:namedview> + <metadata + id="metadata7"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Ebene 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(0,4067.6378)"> + <image + y="-4067.6377" + x="0" + id="image2993" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAAABHNCSVQICAgIfAhkiAAACQRJREFU eJzt3bty20gWBuCWy1aytfM6KooJI864NkWyiXKHrKLTsSfeQKH9Bg7MdGp2FTER+UST0AE30FAD UeANFwLg+b5IF7IFyT4/TjfA5tV6vV4n6KHlcln7mLe3t7WP2WVv2j4AKGO5XKb7+/uTnzcYDBo4 mv4SAPRO2eLfEAJ/e5v/pImWCupWpfg3BoOB/+9JB0BgOgEBQHDRQ0AAEF7kEHh7+CHQXXUVb9Q1 AR0A/CViJyAA4C8fPnxo+xDOzhSAXju1aL98+bJznLu7u/T169c6Dqs3BAC9dnd3V3mMTfFHZApA aJGLPyUBQGDRiz8lAUBQiv9J5TWAyWRSx3F0SpZlaTgctn0YL/g710fx/62WRcAsy+oYpjOm02kn bwrxd65O8b9kCkAoiv8llwHptTqmRlmWpY8fP9ZwNP0jAOi9qlOj6XQqAOASzGazkx5/aesqpxIA Ff348SO9e/eu7cMgPRX/sbsFXeJVlTIEQEWKvxs2Z/5jC/v+/l4IJAHABXH2P53LgFy0/D7/g8Eg 5Gv+9xEAZ+Ks055NCCyXy07e4NUmAXBGQqA9t7e3OoAC1gDOKMuyNJlMatnXnmL73trr6uoqLRaL Mx5N9+kAzmwTAtAFOoAW6ASas32Gz3cE3gf3NR1AS3QC57VYLCwCFtABlFTXi1B0As3bdAUWAF8T ABXUcR95lmXpv3/8kX55/76GI2JbfkqQP/tPJpPwrwNISQCU9vN4nKbT6dGP//Trr+mfP/306utd 3Xykj07pyhT/EwFQ0i/v359UuP97eHj1n07x10dBlyMAWqL465Fl2UmdGC8JgBYo/vrMZrOT9wDY Frl7EABnpvjrZ0eg8gTAGSn+5v35+2mF/I9//aehI+kHAXAmP4/Hir9hf/7+MX0ajY567G/zeaPH 0hcC4Exc52/W5sx/bGF/Go2EQBIAXBBn/9N5LQAX7erzvO1D6DQBwMUTArsJAEIQAsWsAXBR9hX6 1ed5Wn8ene1Y+kAHAIHpALgo22f4fEfg7P+aDoAQFH8xAcDFU/y7VZ4CeDnmefg7l7Or+H+bz8O/ DiClGgJgOBy6x/0M/J0PO+UOP8X/xCIgF0FBlyMA6DVTo2oEAL1malSNqwAQmA6AizHIvQ3Y0puA HkUHAIEJAAhMAEBgAgACswhIGBYJX7u4ALjN/SOXdXNz07m37L7U34t2XVwApPT0H72Krr5V1KX9 XoPBv58/Xi6/NfuznP0LXWQA0C1FhZ7/2ubzou/VHQyK/yUBwFltF/6x36v0M3Nnf53ASwKA1uTP 7nUU/66Czn99EwCK/4kAoHHL5beDbX0d7f+hs7vif00AcFaHirrpxUDF/5IbgWhcU3P7k47h9lbx F9AB0Kh9Lf2xwXBsV7CvwBV/MR0ABKYDoNfquEMyMgFAo/JXAPI3+2y+V+ScdwhGZwpA48oWseJv ngDgrA4t/HXhikEkAoDGFd33f+zXaJY1AFqjwNunA+CslstvO+f2+75HMy6uA7i5uenc697r0Off a9e9/7tW+4XA+Vyt1+v15hPvsEIf5Hc1+v79e4tH0n+mABCYAIDA9q4BTCaTyj8gy7I0m82MY5zS 4wyHw8rjUOzgImDVhafpdJpms5lxjFN6HGtTzTEFgMAEAAQmACAwAQCBCQAITABAYAIAAhMAEJgA gMAEAAQmACAwAQCBCQAITABAYAIAAtu7H0CWZWk6nVb+IcYxDt20d1NQOwIZpwvjbO8IZFPQ+tgR yDidH8eOQM2xBgCBCQAITABAYAIAAhMAEJgAgMAEAAQmACAwAQCBCQAITABAYAIAAhMAEJgAgMAE AARmRyDjdH4cmmNHION0fhw7AjXHjkDG6fw4dgRqjjUACEwAQGACAAITABCYAIDABAAEJgAgMAEA gQkACEwAQGACAAITABCYAIDABAAEJgAgMDsCGafz49CcvTsCQRfZEag+pgAQmACAwAQABLZ3EdCu wMbpwjjbuwJTH7sCG6fz41icbo4pAAQmACAwAQCBCQAITABAYAIAAhMAEJgAgMAEAAQmACAwAQCB CQAITABAYAIAAhMAEJhdgY3T+XFojl2B6R27AtfHFAACEwAQmACAwJ4XAZfL5Yu5FXD53qSk+CGq N4of4rpKKa0PPgq4SBYBITABAIEJAAhMAEBgAgACEwAQmACAwAQABCYAIDABAIEJAAhMAEBgAgAC EwAQmACAwAQABCYAIDABAIEJAAhMAEBgAgACEwAQmACAwAQABCYAIDABAIEJAAhMAEBgAgACEwAQ mACAwAQABCYAIDABAIEJAAhMAEBgAgACEwAQmACAwAQABCYAIDABAIEJAAhMAEBgAgACEwAQmACA wAQABCYAIDABAIEJAAhMAEBgAgACEwAQmACAwAQABCYAIDABAIG9bfsAILrFYlHqeY+Pj88fD4fD UmPoACAwAQCBXaWU1m0fBES2PQXYtPZFbX2+7d9l3/O2vycAoGX5ANgu8E3BHlP423Y9Nx8CFgGh w8oU/inP1QFAy3ZNAfapa3ogAKBlRZcBi4r5lEt9xz7fVQDogVOv828/ftfzdQDQskNTgLI3+RxD BwAd1mTxpyQAoFOqrPqXIQAgMPcBQEcdav/reDGQAIAKdr2Sb7Vapfl8/vz5aDRK19fXhY8t0/Zv P6fs1EEAQEUPDw/PH4/H45RSelH8m8833yt6fFnD4bDSuoEAgBrli/uU75VVddFQAEBDRqPR88fb HUFefv5+bEFvn/nLrhe4EQgq2KwBbLf1q9XqxeM28/9D7X8TNwF5NSCcyaE5fb4rWK1WOxcGz8V9 AFDBarUqnNsXFfZ2V1Ck6Tv/tsfXAUAF25f68kW+b96ft69reHx8rBQKh9YUdADQMdsFX3al/5j1 BAEAPXBqCBz7eFcBoIL5fP6i1c+383VdCShS145A1gCgguvr6zQej0vd5FO2+E95XNHz8iFgCgA1 OhQEpwbFcDgsvQh4zHNNAaCC7SlA3jF3Au7rArwvAHTcYrGodI9/lRcDeW9A6JjxeLyzqEejUeVX /9VNBwAV7Htn33xnsJkO1Hnrbx0dwP8B6Ugr0gbiJ/kAAAAASUVORK5CYII= " + height="5120" + width="5120" /> + <rect + style="opacity:0.98000004;fill:#c6c6c6;fill-opacity:1;fill-rule:nonzero;stroke:none" + id="rect3782" + width="360" + height="420" + x="3040" + y="-2867.6377" /> + <rect + style="opacity:0.98000003999999996;fill:#c6c6c6;fill-opacity:1;fill-rule:nonzero;stroke:none" + id="rect3400" + width="1140" + height="1500" + x="2080" + y="140" + transform="translate(0,-4067.6378)" /> + <g + id="g3811" + transform="translate(1260,-1500)"> + <rect + transform="translate(0,-4067.6378)" + y="1660" + x="860" + height="360" + width="360" + id="rect3033" + style="opacity:0.98000004;fill:#8b8b8b;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + y="-2407.6377" + x="860" + height="20" + width="340" + id="rect3035" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="860" + height="320" + width="20" + id="rect3037" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="1200" + height="340" + width="20" + id="rect3039" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="2000" + x="880" + height="20" + width="320" + id="rect3041" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3811-1" + transform="translate(1620,-1500)"> + <rect + transform="translate(0,-4067.6378)" + y="1660" + x="860" + height="360" + width="360" + id="rect3033-7" + style="opacity:0.98000004;fill:#8b8b8b;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + y="-2407.6377" + x="860" + height="20" + width="340" + id="rect3035-4" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="860" + height="320" + width="20" + id="rect3037-0" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="1200" + height="340" + width="20" + id="rect3039-9" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="2000" + x="880" + height="20" + width="320" + id="rect3041-4" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3811-8" + transform="translate(1980,-1500)"> + <rect + transform="translate(0,-4067.6378)" + y="1660" + x="860" + height="360" + width="360" + id="rect3033-8" + style="opacity:0.98000004;fill:#8b8b8b;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + y="-2407.6377" + x="860" + height="20" + width="340" + id="rect3035-2" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="860" + height="320" + width="20" + id="rect3037-4" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="1200" + height="340" + width="20" + id="rect3039-5" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="2000" + x="880" + height="20" + width="320" + id="rect3041-5" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3811-17" + transform="translate(1260,-1140)"> + <rect + transform="translate(0,-4067.6378)" + y="1660" + x="860" + height="360" + width="360" + id="rect3033-1" + style="opacity:0.98000004;fill:#8b8b8b;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + y="-2407.6377" + x="860" + height="20" + width="340" + id="rect3035-1" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="860" + height="320" + width="20" + id="rect3037-5" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="1200" + height="340" + width="20" + id="rect3039-2" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="2000" + x="880" + height="20" + width="320" + id="rect3041-7" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3811-6" + transform="translate(1620,-1140)"> + <rect + transform="translate(0,-4067.6378)" + y="1660" + x="860" + height="360" + width="360" + id="rect3033-14" + style="opacity:0.98000004;fill:#8b8b8b;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + y="-2407.6377" + x="860" + height="20" + width="340" + id="rect3035-23" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="860" + height="320" + width="20" + id="rect3037-2" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="1200" + height="340" + width="20" + id="rect3039-21" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="2000" + x="880" + height="20" + width="320" + id="rect3041-6" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3811-85" + transform="translate(1980,-1140)"> + <rect + transform="translate(0,-4067.6378)" + y="1660" + x="860" + height="360" + width="360" + id="rect3033-76" + style="opacity:0.98000004;fill:#8b8b8b;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + y="-2407.6377" + x="860" + height="20" + width="340" + id="rect3035-18" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="860" + height="320" + width="20" + id="rect3037-9" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="1200" + height="340" + width="20" + id="rect3039-27" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="2000" + x="880" + height="20" + width="320" + id="rect3041-9" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3811-5" + transform="translate(1260,-780)"> + <rect + transform="translate(0,-4067.6378)" + y="1660" + x="860" + height="360" + width="360" + id="rect3033-4" + style="opacity:0.98000004;fill:#8b8b8b;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + y="-2407.6377" + x="860" + height="20" + width="340" + id="rect3035-3" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="860" + height="320" + width="20" + id="rect3037-1" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="1200" + height="340" + width="20" + id="rect3039-23" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="2000" + x="880" + height="20" + width="320" + id="rect3041-3" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3811-4" + transform="translate(1620,-780)"> + <rect + transform="translate(0,-4067.6378)" + y="1660" + x="860" + height="360" + width="360" + id="rect3033-11" + style="opacity:0.98000004;fill:#8b8b8b;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + y="-2407.6377" + x="860" + height="20" + width="340" + id="rect3035-38" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="860" + height="320" + width="20" + id="rect3037-7" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="1200" + height="340" + width="20" + id="rect3039-4" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="2000" + x="880" + height="20" + width="320" + id="rect3041-2" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3811-7" + transform="translate(1980,-780)"> + <rect + transform="translate(0,-4067.6378)" + y="1660" + x="860" + height="360" + width="360" + id="rect3033-79" + style="opacity:0.98000004;fill:#8b8b8b;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + y="-2407.6377" + x="860" + height="20" + width="340" + id="rect3035-31" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="860" + height="320" + width="20" + id="rect3037-98" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="1200" + height="340" + width="20" + id="rect3039-6" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="2000" + x="880" + height="20" + width="320" + id="rect3041-50" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3811-2" + transform="translate(1260,-420.0001)"> + <rect + transform="translate(0,-4067.6378)" + y="1660" + x="860" + height="360" + width="360" + id="rect3033-86" + style="opacity:0.98000004;fill:#8b8b8b;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + y="-2407.6377" + x="860" + height="20" + width="340" + id="rect3035-0" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="860" + height="320" + width="20" + id="rect3037-24" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="1200" + height="340" + width="20" + id="rect3039-8" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="2000" + x="880" + height="20" + width="320" + id="rect3041-65" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3811-0" + transform="translate(1620,-420.0001)"> + <rect + transform="translate(0,-4067.6378)" + y="1660" + x="860" + height="360" + width="360" + id="rect3033-9" + style="opacity:0.98000004;fill:#8b8b8b;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + y="-2407.6377" + x="860" + height="20" + width="340" + id="rect3035-00" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="860" + height="320" + width="20" + id="rect3037-6" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="1200" + height="340" + width="20" + id="rect3039-1" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="2000" + x="880" + height="20" + width="320" + id="rect3041-38" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3811-9" + transform="translate(1980,-420)"> + <rect + transform="translate(0,-4067.6378)" + y="1660" + x="860" + height="360" + width="360" + id="rect3033-3" + style="opacity:0.98000004;fill:#8b8b8b;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + y="-2407.6377" + x="860" + height="20" + width="340" + id="rect3035-44" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="860" + height="320" + width="20" + id="rect3037-60" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1680" + x="1200" + height="340" + width="20" + id="rect3039-66" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="2000" + x="880" + height="20" + width="320" + id="rect3041-1" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3148"> + <rect + y="-2787.6384" + x="2360" + height="20.000628" + width="60" + id="rect3134" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1300" + x="2420" + height="100" + width="20" + id="rect3136" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1400" + x="2360" + height="20" + width="60" + id="rect3138" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1300" + x="2340" + height="100" + width="20" + id="rect3140" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1320" + x="2400" + height="20" + width="20" + id="rect3142" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1340" + x="2380" + height="20" + width="20" + id="rect3144" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1360" + x="2360" + height="20" + width="20" + id="rect3146" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3163" + transform="translate(100,0)"> + <rect + transform="translate(0,-4067.6378)" + y="1400" + x="2600" + height="20" + width="100" + id="rect3157" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1280" + x="2640" + height="120" + width="20" + id="rect3159" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1300" + x="2620" + height="20" + width="20" + id="rect3161" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3182" + transform="translate(120,0)"> + <rect + transform="translate(0,-4067.6378)" + y="1280" + x="2960" + height="20" + width="60" + id="rect3168" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1300" + x="2940" + height="20" + width="20" + id="rect3170" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1300" + x="3020" + height="40" + width="20" + id="rect3172" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1340" + x="2980" + height="20" + width="40" + id="rect3174" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1360" + x="2960" + height="20" + width="20" + id="rect3176" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1380" + x="2940" + height="20" + width="20" + id="rect3178" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1400" + x="2940" + height="20" + width="100" + id="rect3180" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3203" + transform="translate(120,0)"> + <rect + transform="translate(0,-4067.6378)" + y="920" + x="2940" + height="20.000154" + width="99.999977" + id="rect3191" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="940" + x="2940" + height="40" + width="20" + id="rect3193" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="960" + x="2960" + height="20" + width="60" + id="rect3195" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="980" + x="3020" + height="60" + width="20" + id="rect3197" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1040" + x="2960" + height="20" + width="60" + id="rect3199" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1020" + x="2940" + height="20" + width="20" + id="rect3201" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3223" + transform="translate(120,0)"> + <rect + transform="translate(0,-4067.6378)" + y="920" + x="2660" + height="140" + width="20" + id="rect3211" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="920" + x="2640" + height="20" + width="20" + id="rect3213" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="940" + x="2620" + height="20" + width="20" + id="rect3215" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="960" + x="2600" + height="20" + width="20" + id="rect3217" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="980" + x="2580" + height="40" + width="20" + id="rect3219" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1000" + x="2600" + height="20" + width="60" + id="rect3221" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3245"> + <rect + y="-3147.6377" + x="2360" + height="20" + width="60" + id="rect3231" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="940" + x="2340" + height="20" + width="20" + id="rect3233" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="940" + x="2420" + height="40" + width="20" + id="rect3235" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="980" + x="2380" + height="20" + width="40" + id="rect3237" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1000" + x="2420" + height="40" + width="20" + id="rect3239" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1040" + x="2360" + height="20" + width="60" + id="rect3241" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1020" + x="2340" + height="20" + width="20" + id="rect3243" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3266" + transform="translate(-20,0)"> + <rect + transform="translate(0,-4067.6378)" + y="580" + x="2400" + height="20" + width="40" + id="rect3254" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="600" + x="2380" + height="20" + width="20" + id="rect3256" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="620" + x="2360" + height="80" + width="20" + id="rect3258" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + y="-3427.6377" + x="2380" + height="20" + width="60" + id="rect3260" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + y="-3407.6377" + x="2440" + height="40" + width="20" + id="rect3262" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + y="-3367.6377" + x="2380" + height="20" + width="60" + id="rect3264" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3286"> + <rect + transform="translate(0,-4067.6378)" + y="240" + x="2420" + height="80" + width="20" + id="rect3274" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="320" + x="2400" + height="20" + width="20" + id="rect3276" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="340" + x="2360" + height="20" + width="40" + id="rect3278" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="220" + x="2360" + height="20" + width="60" + id="rect3280" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="240" + x="2340" + height="40" + width="20" + id="rect3282" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="280" + x="2360" + height="20" + width="60" + id="rect3284" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + transform="translate(360,-1059.9994)" + id="g3148-4"> + <rect + y="-2787.6384" + x="2360" + height="20.000628" + width="60" + id="rect3134-0" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1300" + x="2420" + height="100" + width="20" + id="rect3136-9" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1400" + x="2360" + height="20" + width="60" + id="rect3138-4" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1300" + x="2340" + height="100" + width="20" + id="rect3140-8" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1320" + x="2400" + height="20" + width="20" + id="rect3142-8" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1340" + x="2380" + height="20" + width="20" + id="rect3144-2" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1360" + x="2360" + height="20" + width="20" + id="rect3146-4" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3163-5" + transform="translate(-20,-1060)"> + <rect + transform="translate(0,-4067.6378)" + y="1400" + x="2600" + height="20" + width="100" + id="rect3157-5" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1280" + x="2640" + height="120" + width="20" + id="rect3159-1" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1300" + x="2620" + height="20" + width="20" + id="rect3161-7" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3163-1" + transform="translate(460,-1060)"> + <rect + transform="translate(0,-4067.6378)" + y="1400" + x="2600" + height="20" + width="100" + id="rect3157-1" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1280" + x="2640" + height="120" + width="20" + id="rect3159-5" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1300" + x="2620" + height="20" + width="20" + id="rect3161-2" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3163-7" + transform="translate(340,-1060)"> + <rect + transform="translate(0,-4067.6378)" + y="1400" + x="2600" + height="20" + width="100" + id="rect3157-6" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1280" + x="2640" + height="120" + width="20" + id="rect3159-14" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1300" + x="2620" + height="20" + width="20" + id="rect3161-23" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3412"> + <rect + transform="translate(0,-4067.6378)" + y="580" + x="2700" + height="20" + width="100" + id="rect3402" + style="opacity:0.98000003999999996;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="600" + x="2700" + height="20" + width="20" + id="rect3404" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="600" + x="2780" + height="40" + width="20" + id="rect3406" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="640" + x="2760" + height="20" + width="20" + id="rect3408" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="660" + x="2740" + height="60" + width="20" + id="rect3410" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + id="g3433"> + <rect + transform="translate(0,-4067.6378)" + y="580" + x="3080" + height="20" + width="60" + id="rect3419" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="600" + x="3140" + height="40" + width="20" + id="rect3421" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="660" + x="3140" + height="40" + width="20" + id="rect3423" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="700" + x="3080" + height="20" + width="60" + id="rect3425" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="640" + x="3080" + height="20" + width="60" + id="rect3427" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="600" + x="3060" + height="40" + width="20" + id="rect3429" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="660" + x="3060" + height="40" + width="20" + id="rect3431" + style="opacity:0.98000004;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + </g> +</svg> diff --git a/misc/vector/recipe.nine_x_nine.svg b/misc/vector/recipe.nine_x_nine.svg new file mode 100644 index 0000000000..e26c941f74 --- /dev/null +++ b/misc/vector/recipe.nine_x_nine.svg @@ -0,0 +1,189 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="5120" + height="5120" + id="svg2" + version="1.1" + inkscape:version="0.48.5 r10040" + sodipodi:docname="recipe.nine_x_nine.svg"> + <defs + id="defs4" /> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.24748738" + inkscape:cx="1765.9367" + inkscape:cy="4071.4343" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="true" + inkscape:window-width="1920" + inkscape:window-height="1017" + inkscape:window-x="-8" + inkscape:window-y="-8" + inkscape:window-maximized="1"> + <inkscape:grid + type="xygrid" + id="grid2991" /> + </sodipodi:namedview> + <metadata + id="metadata7"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Ebene 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(0,4067.6378)"> + <image + y="-4067.6377" + x="0" + id="image2993" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAAABHNCSVQICAgIfAhkiAAACQRJREFU eJzt3bty20gWBuCWy1aytfM6KooJI864NkWyiXKHrKLTsSfeQKH9Bg7MdGp2FTER+UST0AE30FAD UeANFwLg+b5IF7IFyT4/TjfA5tV6vV4n6KHlcln7mLe3t7WP2WVv2j4AKGO5XKb7+/uTnzcYDBo4 mv4SAPRO2eLfEAJ/e5v/pImWCupWpfg3BoOB/+9JB0BgOgEBQHDRQ0AAEF7kEHh7+CHQXXUVb9Q1 AR0A/CViJyAA4C8fPnxo+xDOzhSAXju1aL98+bJznLu7u/T169c6Dqs3BAC9dnd3V3mMTfFHZApA aJGLPyUBQGDRiz8lAUBQiv9J5TWAyWRSx3F0SpZlaTgctn0YL/g710fx/62WRcAsy+oYpjOm02kn bwrxd65O8b9kCkAoiv8llwHptTqmRlmWpY8fP9ZwNP0jAOi9qlOj6XQqAOASzGazkx5/aesqpxIA Ff348SO9e/eu7cMgPRX/sbsFXeJVlTIEQEWKvxs2Z/5jC/v+/l4IJAHABXH2P53LgFy0/D7/g8Eg 5Gv+9xEAZ+Ks055NCCyXy07e4NUmAXBGQqA9t7e3OoAC1gDOKMuyNJlMatnXnmL73trr6uoqLRaL Mx5N9+kAzmwTAtAFOoAW6ASas32Gz3cE3gf3NR1AS3QC57VYLCwCFtABlFTXi1B0As3bdAUWAF8T ABXUcR95lmXpv3/8kX55/76GI2JbfkqQP/tPJpPwrwNISQCU9vN4nKbT6dGP//Trr+mfP/306utd 3Xykj07pyhT/EwFQ0i/v359UuP97eHj1n07x10dBlyMAWqL465Fl2UmdGC8JgBYo/vrMZrOT9wDY Frl7EABnpvjrZ0eg8gTAGSn+5v35+2mF/I9//aehI+kHAXAmP4/Hir9hf/7+MX0ajY567G/zeaPH 0hcC4Exc52/W5sx/bGF/Go2EQBIAXBBn/9N5LQAX7erzvO1D6DQBwMUTArsJAEIQAsWsAXBR9hX6 1ed5Wn8ene1Y+kAHAIHpALgo22f4fEfg7P+aDoAQFH8xAcDFU/y7VZ4CeDnmefg7l7Or+H+bz8O/ DiClGgJgOBy6x/0M/J0PO+UOP8X/xCIgF0FBlyMA6DVTo2oEAL1malSNqwAQmA6AizHIvQ3Y0puA HkUHAIEJAAhMAEBgAgACswhIGBYJX7u4ALjN/SOXdXNz07m37L7U34t2XVwApPT0H72Krr5V1KX9 XoPBv58/Xi6/NfuznP0LXWQA0C1FhZ7/2ubzou/VHQyK/yUBwFltF/6x36v0M3Nnf53ASwKA1uTP 7nUU/66Czn99EwCK/4kAoHHL5beDbX0d7f+hs7vif00AcFaHirrpxUDF/5IbgWhcU3P7k47h9lbx F9AB0Kh9Lf2xwXBsV7CvwBV/MR0ABKYDoNfquEMyMgFAo/JXAPI3+2y+V+ScdwhGZwpA48oWseJv ngDgrA4t/HXhikEkAoDGFd33f+zXaJY1AFqjwNunA+CslstvO+f2+75HMy6uA7i5uenc697r0Off a9e9/7tW+4XA+Vyt1+v15hPvsEIf5Hc1+v79e4tH0n+mABCYAIDA9q4BTCaTyj8gy7I0m82MY5zS 4wyHw8rjUOzgImDVhafpdJpms5lxjFN6HGtTzTEFgMAEAAQmACAwAQCBCQAITABAYAIAAhMAEJgA gMAEAAQmACAwAQCBCQAITABAYAIAAtu7H0CWZWk6nVb+IcYxDt20d1NQOwIZpwvjbO8IZFPQ+tgR yDidH8eOQM2xBgCBCQAITABAYAIAAhMAEJgAgMAEAAQmACAwAQCBCQAITABAYAIAAhMAEJgAgMAE AARmRyDjdH4cmmNHION0fhw7AjXHjkDG6fw4dgRqjjUACEwAQGACAAITABCYAIDABAAEJgAgMAEA gQkACEwAQGACAAITABCYAIDABAAEJgAgMDsCGafz49CcvTsCQRfZEag+pgAQmACAwAQABLZ3EdCu wMbpwjjbuwJTH7sCG6fz41icbo4pAAQmACAwAQCBCQAITABAYAIAAhMAEJgAgMAEAAQmACAwAQCB CQAITABAYAIAAhMAEJhdgY3T+XFojl2B6R27AtfHFAACEwAQmACAwJ4XAZfL5Yu5FXD53qSk+CGq N4of4rpKKa0PPgq4SBYBITABAIEJAAhMAEBgAgACEwAQmACAwAQABCYAIDABAIEJAAhMAEBgAgAC EwAQmACAwAQABCYAIDABAIEJAAhMAEBgAgACEwAQmACAwAQABCYAIDABAIEJAAhMAEBgAgACEwAQ mACAwAQABCYAIDABAIEJAAhMAEBgAgACEwAQmACAwAQABCYAIDABAIEJAAhMAEBgAgACEwAQmACA wAQABCYAIDABAIEJAAhMAEBgAgACEwAQmACAwAQABCYAIDABAIG9bfsAILrFYlHqeY+Pj88fD4fD UmPoACAwAQCBXaWU1m0fBES2PQXYtPZFbX2+7d9l3/O2vycAoGX5ANgu8E3BHlP423Y9Nx8CFgGh w8oU/inP1QFAy3ZNAfapa3ogAKBlRZcBi4r5lEt9xz7fVQDogVOv828/ftfzdQDQskNTgLI3+RxD BwAd1mTxpyQAoFOqrPqXIQAgMPcBQEcdav/reDGQAIAKdr2Sb7Vapfl8/vz5aDRK19fXhY8t0/Zv P6fs1EEAQEUPDw/PH4/H45RSelH8m8833yt6fFnD4bDSuoEAgBrli/uU75VVddFQAEBDRqPR88fb HUFefv5+bEFvn/nLrhe4EQgq2KwBbLf1q9XqxeM28/9D7X8TNwF5NSCcyaE5fb4rWK1WOxcGz8V9 AFDBarUqnNsXFfZ2V1Ck6Tv/tsfXAUAF25f68kW+b96ft69reHx8rBQKh9YUdADQMdsFX3al/5j1 BAEAPXBqCBz7eFcBoIL5fP6i1c+383VdCShS145A1gCgguvr6zQej0vd5FO2+E95XNHz8iFgCgA1 OhQEpwbFcDgsvQh4zHNNAaCC7SlA3jF3Au7rArwvAHTcYrGodI9/lRcDeW9A6JjxeLyzqEejUeVX /9VNBwAV7Htn33xnsJkO1Hnrbx0dwP8B6Ugr0gbiJ/kAAAAASUVORK5CYII= " + height="5120" + width="5120" /> + <g + id="g3003"> + <rect + y="-3747.6377" + x="2140" + height="1040" + width="1040" + id="rect2993" + style="opacity:0.98000004;fill:#8b8b8b;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1020" + x="3180" + height="360" + width="20" + id="rect2995" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1000" + x="2120" + height="360" + width="20" + id="rect2997" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1360" + x="2120" + height="20" + width="20" + id="rect2999" + style="opacity:0.98000004;fill:#8b8b8b;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1360" + x="2140" + height="20" + width="1040" + id="rect3001" + style="opacity:0.98000004;fill:#fefefe;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <rect + style="opacity:0.98000004;fill:#c6c6c6;fill-opacity:1;fill-rule:nonzero;stroke:none" + id="rect3778" + width="400" + height="239.99989" + x="2100" + y="-2687.6377" /> + <rect + style="opacity:0.98000003999999996;fill:#c6c6c6;fill-opacity:1;fill-rule:nonzero;stroke:none" + id="rect3782" + width="200" + height="420" + x="3200" + y="1200" + transform="translate(0,-4067.6378)" /> + <rect + style="opacity:0.98000004;fill:#c6c6c6;fill-opacity:1;fill-rule:nonzero;stroke:none" + id="rect3784" + width="220" + height="240" + x="3020" + y="1380" + transform="translate(0,-4067.6378)" /> + <g + transform="translate(-1800,0)" + id="g3003-1"> + <rect + y="-3747.6377" + x="2140" + height="1040" + width="1040" + id="rect2993-7" + style="opacity:0.98000004;fill:#8b8b8b;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1020" + x="3180" + height="360" + width="20" + id="rect2995-4" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1000" + x="2120" + height="360" + width="20" + id="rect2997-0" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1360" + x="2120" + height="20" + width="20" + id="rect2999-9" + style="opacity:0.98000004;fill:#8b8b8b;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1360" + x="2140" + height="20" + width="1040" + id="rect3001-4" + style="opacity:0.98000004;fill:#fefefe;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <rect + style="opacity:0.98000004;fill:#c6c6c6;fill-opacity:1;fill-rule:nonzero;stroke:none" + id="rect3819" + width="400" + height="240" + x="1020" + y="1380" + transform="translate(0,-4067.6378)" /> + <path + style="fill:#ffff1f;fill-opacity:1;stroke:none" + d="m 3426.7059,-2647.2849 -39.8824,0 0,13.2941 -26.5882,0 0,-13.2941 -13.2941,0 0,-13.2941 -39.8824,0 0,13.2941 -13.2941,0 0,13.2941 -26.5882,0 0,-13.2941 -39.8824,0 0,39.8824 13.2941,0 0,26.5882 -13.2941,0 0,13.2941 -13.2941,0 0,39.8824 13.2941,0 0,13.2941 13.2941,0 0,26.5882 -13.2941,0 0,39.8824 39.8824,0 0,-13.2941 26.5882,0 0,13.2941 13.2941,0 0,13.2941 39.8824,0 0,-13.2941 13.2941,0 0,-13.2941 26.5882,0 0,13.2941 39.8824,0 0,-39.8824 -13.2941,0 0,-26.5882 13.2941,0 0,-13.2941 13.2941,0 0,-39.8824 -132.9412,0 0,39.8824 79.7647,0 0,26.5882 -13.2941,0 0,13.2941 -26.5882,0 0,13.2941 -39.8824,0 0,-13.2941 -26.5882,0 0,-13.2941 -13.2941,0 0,-26.5882 -13.2941,0 0,-39.8824 13.2941,0 0,-26.5882 13.2941,0 0,-13.2941 26.5882,0 0,-13.2941 39.8824,0 0,13.2941 26.5882,0 0,13.2941 39.8824,0 0,-13.2941 13.2941,0 0,-39.8824 z" + id="path3780" + inkscape:connector-curvature="0" /> + </g> +</svg> diff --git a/misc/vector/recipe.twelve_x_twelve.svg b/misc/vector/recipe.twelve_x_twelve.svg new file mode 100644 index 0000000000..83bfafa326 --- /dev/null +++ b/misc/vector/recipe.twelve_x_twelve.svg @@ -0,0 +1,186 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="5120" + height="5120" + id="svg2" + version="1.1" + inkscape:version="0.48.5 r10040" + sodipodi:docname="recipe.nine_x_nine.svg"> + <defs + id="defs4" /> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.24748738" + inkscape:cx="2146.7434" + inkscape:cy="3761.5254" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="true" + inkscape:window-width="1920" + inkscape:window-height="1017" + inkscape:window-x="-8" + inkscape:window-y="-8" + inkscape:window-maximized="1"> + <inkscape:grid + type="xygrid" + id="grid2991" /> + </sodipodi:namedview> + <metadata + id="metadata7"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Ebene 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(0,4067.6378)"> + <image + y="-4067.6377" + x="0" + id="image2993" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAAABHNCSVQICAgIfAhkiAAACQRJREFU eJzt3bty20gWBuCWy1aytfM6KooJI864NkWyiXKHrKLTsSfeQKH9Bg7MdGp2FTER+UST0AE30FAD UeANFwLg+b5IF7IFyT4/TjfA5tV6vV4n6KHlcln7mLe3t7WP2WVv2j4AKGO5XKb7+/uTnzcYDBo4 mv4SAPRO2eLfEAJ/e5v/pImWCupWpfg3BoOB/+9JB0BgOgEBQHDRQ0AAEF7kEHh7+CHQXXUVb9Q1 AR0A/CViJyAA4C8fPnxo+xDOzhSAXju1aL98+bJznLu7u/T169c6Dqs3BAC9dnd3V3mMTfFHZApA aJGLPyUBQGDRiz8lAUBQiv9J5TWAyWRSx3F0SpZlaTgctn0YL/g710fx/62WRcAsy+oYpjOm02kn bwrxd65O8b9kCkAoiv8llwHptTqmRlmWpY8fP9ZwNP0jAOi9qlOj6XQqAOASzGazkx5/aesqpxIA Ff348SO9e/eu7cMgPRX/sbsFXeJVlTIEQEWKvxs2Z/5jC/v+/l4IJAHABXH2P53LgFy0/D7/g8Eg 5Gv+9xEAZ+Ks055NCCyXy07e4NUmAXBGQqA9t7e3OoAC1gDOKMuyNJlMatnXnmL73trr6uoqLRaL Mx5N9+kAzmwTAtAFOoAW6ASas32Gz3cE3gf3NR1AS3QC57VYLCwCFtABlFTXi1B0As3bdAUWAF8T ABXUcR95lmXpv3/8kX55/76GI2JbfkqQP/tPJpPwrwNISQCU9vN4nKbT6dGP//Trr+mfP/306utd 3Xykj07pyhT/EwFQ0i/v359UuP97eHj1n07x10dBlyMAWqL465Fl2UmdGC8JgBYo/vrMZrOT9wDY Frl7EABnpvjrZ0eg8gTAGSn+5v35+2mF/I9//aehI+kHAXAmP4/Hir9hf/7+MX0ajY567G/zeaPH 0hcC4Exc52/W5sx/bGF/Go2EQBIAXBBn/9N5LQAX7erzvO1D6DQBwMUTArsJAEIQAsWsAXBR9hX6 1ed5Wn8ene1Y+kAHAIHpALgo22f4fEfg7P+aDoAQFH8xAcDFU/y7VZ4CeDnmefg7l7Or+H+bz8O/ DiClGgJgOBy6x/0M/J0PO+UOP8X/xCIgF0FBlyMA6DVTo2oEAL1malSNqwAQmA6AizHIvQ3Y0puA HkUHAIEJAAhMAEBgAgACswhIGBYJX7u4ALjN/SOXdXNz07m37L7U34t2XVwApPT0H72Krr5V1KX9 XoPBv58/Xi6/NfuznP0LXWQA0C1FhZ7/2ubzou/VHQyK/yUBwFltF/6x36v0M3Nnf53ASwKA1uTP 7nUU/66Czn99EwCK/4kAoHHL5beDbX0d7f+hs7vif00AcFaHirrpxUDF/5IbgWhcU3P7k47h9lbx F9AB0Kh9Lf2xwXBsV7CvwBV/MR0ABKYDoNfquEMyMgFAo/JXAPI3+2y+V+ScdwhGZwpA48oWseJv ngDgrA4t/HXhikEkAoDGFd33f+zXaJY1AFqjwNunA+CslstvO+f2+75HMy6uA7i5uenc697r0Off a9e9/7tW+4XA+Vyt1+v15hPvsEIf5Hc1+v79e4tH0n+mABCYAIDA9q4BTCaTyj8gy7I0m82MY5zS 4wyHw8rjUOzgImDVhafpdJpms5lxjFN6HGtTzTEFgMAEAAQmACAwAQCBCQAITABAYAIAAhMAEJgA gMAEAAQmACAwAQCBCQAITABAYAIAAtu7H0CWZWk6nVb+IcYxDt20d1NQOwIZpwvjbO8IZFPQ+tgR yDidH8eOQM2xBgCBCQAITABAYAIAAhMAEJgAgMAEAAQmACAwAQCBCQAITABAYAIAAhMAEJgAgMAE AARmRyDjdH4cmmNHION0fhw7AjXHjkDG6fw4dgRqjjUACEwAQGACAAITABCYAIDABAAEJgAgMAEA gQkACEwAQGACAAITABCYAIDABAAEJgAgMDsCGafz49CcvTsCQRfZEag+pgAQmACAwAQABLZ3EdCu wMbpwjjbuwJTH7sCG6fz41icbo4pAAQmACAwAQCBCQAITABAYAIAAhMAEJgAgMAEAAQmACAwAQCB CQAITABAYAIAAhMAEJhdgY3T+XFojl2B6R27AtfHFAACEwAQmACAwJ4XAZfL5Yu5FXD53qSk+CGq N4of4rpKKa0PPgq4SBYBITABAIEJAAhMAEBgAgACEwAQmACAwAQABCYAIDABAIEJAAhMAEBgAgAC EwAQmACAwAQABCYAIDABAIEJAAhMAEBgAgACEwAQmACAwAQABCYAIDABAIEJAAhMAEBgAgACEwAQ mACAwAQABCYAIDABAIEJAAhMAEBgAgACEwAQmACAwAQABCYAIDABAIEJAAhMAEBgAgACEwAQmACA wAQABCYAIDABAIEJAAhMAEBgAgACEwAQmACAwAQABCYAIDABAIG9bfsAILrFYlHqeY+Pj88fD4fD UmPoACAwAQCBXaWU1m0fBES2PQXYtPZFbX2+7d9l3/O2vycAoGX5ANgu8E3BHlP423Y9Nx8CFgGh w8oU/inP1QFAy3ZNAfapa3ogAKBlRZcBi4r5lEt9xz7fVQDogVOv828/ftfzdQDQskNTgLI3+RxD BwAd1mTxpyQAoFOqrPqXIQAgMPcBQEcdav/reDGQAIAKdr2Sb7Vapfl8/vz5aDRK19fXhY8t0/Zv P6fs1EEAQEUPDw/PH4/H45RSelH8m8833yt6fFnD4bDSuoEAgBrli/uU75VVddFQAEBDRqPR88fb HUFefv5+bEFvn/nLrhe4EQgq2KwBbLf1q9XqxeM28/9D7X8TNwF5NSCcyaE5fb4rWK1WOxcGz8V9 AFDBarUqnNsXFfZ2V1Ck6Tv/tsfXAUAF25f68kW+b96ft69reHx8rBQKh9YUdADQMdsFX3al/5j1 BAEAPXBqCBz7eFcBoIL5fP6i1c+383VdCShS145A1gCgguvr6zQej0vd5FO2+E95XNHz8iFgCgA1 OhQEpwbFcDgsvQh4zHNNAaCC7SlA3jF3Au7rArwvAHTcYrGodI9/lRcDeW9A6JjxeLyzqEejUeVX /9VNBwAV7Htn33xnsJkO1Hnrbx0dwP8B6Ugr0gbiJ/kAAAAASUVORK5CYII= " + height="5120" + width="5120" /> + <rect + style="opacity:0.98000004;fill:#c6c6c6;fill-opacity:1;fill-rule:nonzero;stroke:none" + id="rect3778" + width="400" + height="239.99989" + x="2100" + y="-2687.6377" /> + <rect + style="opacity:0.98000003999999996;fill:#c6c6c6;fill-opacity:1;fill-rule:nonzero;stroke:none" + id="rect3782" + width="200" + height="420" + x="3200" + y="1200" + transform="translate(0,-4067.6378)" /> + <rect + style="opacity:0.98000004;fill:#c6c6c6;fill-opacity:1;fill-rule:nonzero;stroke:none" + id="rect3784" + width="220" + height="240" + x="3020" + y="1380" + transform="translate(0,-4067.6378)" /> + <rect + style="opacity:0.98000004;fill:#c6c6c6;fill-opacity:1;fill-rule:nonzero;stroke:none" + id="rect3819" + width="400" + height="240" + x="1020" + y="1380" + transform="translate(0,-4067.6378)" /> + <path + style="fill:#ffff1f;fill-opacity:1;stroke:none" + d="m 3426.7059,-2647.2849 -39.8824,0 0,13.2941 -26.5882,0 0,-13.2941 -13.2941,0 0,-13.2941 -39.8824,0 0,13.2941 -13.2941,0 0,13.2941 -26.5882,0 0,-13.2941 -39.8824,0 0,39.8824 13.2941,0 0,26.5882 -13.2941,0 0,13.2941 -13.2941,0 0,39.8824 13.2941,0 0,13.2941 13.2941,0 0,26.5882 -13.2941,0 0,39.8824 39.8824,0 0,-13.2941 26.5882,0 0,13.2941 13.2941,0 0,13.2941 39.8824,0 0,-13.2941 13.2941,0 0,-13.2941 26.5882,0 0,13.2941 39.8824,0 0,-39.8824 -13.2941,0 0,-26.5882 13.2941,0 0,-13.2941 13.2941,0 0,-39.8824 -132.9412,0 0,39.8824 79.7647,0 0,26.5882 -13.2941,0 0,13.2941 -26.5882,0 0,13.2941 -39.8824,0 0,-13.2941 -26.5882,0 0,-13.2941 -13.2941,0 0,-26.5882 -13.2941,0 0,-39.8824 13.2941,0 0,-26.5882 13.2941,0 0,-13.2941 26.5882,0 0,-13.2941 39.8824,0 0,13.2941 26.5882,0 0,13.2941 39.8824,0 0,-13.2941 13.2941,0 0,-39.8824 z" + id="path3780" + inkscape:connector-curvature="0" /> + <g + id="g3003" + transform="translate(0,179.9999)"> + <rect + y="-3927.6377" + x="2140" + height="1220" + width="1040" + id="rect2993" + style="opacity:0.98000004;fill:#8b8b8b;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + y="-3227.6377" + x="3180" + height="539.99988" + width="20" + id="rect2995" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + y="-3247.6377" + x="2120" + height="539.99988" + width="20" + id="rect2997" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1360" + x="2120" + height="20" + width="20" + id="rect2999" + style="opacity:0.98000004;fill:#8b8b8b;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1360" + x="2140" + height="20" + width="1040" + id="rect3001" + style="opacity:0.98000004;fill:#fefefe;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + <g + transform="translate(-1800,180)" + id="g3003-1"> + <rect + y="-3747.6377" + x="2140" + height="1040" + width="1040" + id="rect2993-7" + style="opacity:0.98000004;fill:#8b8b8b;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + y="-3227.6377" + x="3180" + height="540" + width="20" + id="rect2995-4" + style="opacity:0.98000004;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + y="-3247.6377" + x="2120" + height="540" + width="20" + id="rect2997-0" + style="opacity:0.98000004;fill:#373737;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1360" + x="2120" + height="20" + width="20" + id="rect2999-9" + style="opacity:0.98000004;fill:#8b8b8b;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + <rect + transform="translate(0,-4067.6378)" + y="1360" + x="2140" + height="20" + width="1040" + id="rect3001-4" + style="opacity:0.98000004;fill:#fefefe;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + </g> + </g> +</svg> diff --git a/src/main/java/gregtech/GT_Mod.java b/src/main/java/gregtech/GT_Mod.java index e558ff06a5..a08cbb8e05 100644 --- a/src/main/java/gregtech/GT_Mod.java +++ b/src/main/java/gregtech/GT_Mod.java @@ -60,7 +60,8 @@ import java.util.regex.Pattern; @Mod(modid = "gregtech", name = "GregTech", version = "MC1710", useMetadata = false, dependencies = "required-after:IC2; after:Forestry; after:PFAAGeologica; after:Thaumcraft; after:Railcraft; after:appliedenergistics2; after:ThermalExpansion; after:TwilightForest; after:harvestcraft; after:magicalcrops; after:BuildCraft|Transport; after:BuildCraft|Silicon; after:BuildCraft|Factory; after:BuildCraft|Energy; after:BuildCraft|Core; after:BuildCraft|Builders; after:GalacticraftCore; after:GalacticraftMars; after:GalacticraftPlanets; after:ThermalExpansion|Transport; after:ThermalExpansion|Energy; after:ThermalExpansion|Factory; after:RedPowerCore; after:RedPowerBase; after:RedPowerMachine; after:RedPowerCompat; after:RedPowerWiring; after:RedPowerLogic; after:RedPowerLighting; after:RedPowerWorld; after:RedPowerControl; after:UndergroundBiomes;")
public class GT_Mod implements IGT_Mod {
- public static final int VERSION = 509;
+ public static final int VERSION = 509, SUBVERSION = 31;
+ public static final int TOTAL_VERSION = calculateTotalGTVersion(VERSION, SUBVERSION);
public static final int REQUIRED_IC2 = 624;
@Mod.Instance("gregtech")
public static GT_Mod instance;
@@ -259,7 +260,7 @@ public class GT_Mod implements IGT_Mod { Calendar now = Calendar.getInstance();
gregtechproxy.mAprilFool = GregTech_API.sSpecialFile.get(ConfigCategories.general, "AprilFool", now.get(Calendar.MONTH) == Calendar.APRIL && now.get(Calendar.DAY_OF_MONTH) == 1);
gregtechproxy.mCropNeedBlock = tMainConfig.get("general", "CropNeedBlockBelow", true).getBoolean(true);
- gregtechproxy.mReenableSimplifiedChemicalRecipes = tMainConfig.get("general", "ReenableSimplifiedChemicalRecipes", false).getBoolean(true);
+ gregtechproxy.mReenableSimplifiedChemicalRecipes = tMainConfig.get("general", "ReenableSimplifiedChemicalRecipes", false).getBoolean(false);
gregtechproxy.mAMHInteraction = tMainConfig.get("general", "AllowAutoMaintenanceHatchInteraction", false).getBoolean(false);
GregTech_API.mOutputRF = GregTech_API.sOPStuff.get(ConfigCategories.general, "OutputRF", true);
GregTech_API.mInputRF = GregTech_API.sOPStuff.get(ConfigCategories.general, "InputRF", false);
@@ -268,6 +269,8 @@ public class GT_Mod implements IGT_Mod { GregTech_API.mRFExplosions = GregTech_API.sOPStuff.get(ConfigCategories.general, "RFExplosions", false);
GregTech_API.meIOLoaded = Loader.isModLoaded("EnderIO");
gregtechproxy.mForceFreeFace = GregTech_API.sMachineFile.get(ConfigCategories.machineconfig, "forceFreeFace",false);
+ gregtechproxy.mEasierEVPlusCables = tMainConfig.get("general", "EasierEVPlusCables", false).getBoolean(false);
+ gregtechproxy.mBrickedBlastFurnace = tMainConfig.get("general", "BrickedBlastFurnace", true).getBoolean(true);
GregTech_API.mUseOnlyGoodSolderingMaterials = GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.harderrecipes, "useonlygoodsolderingmaterials", GregTech_API.mUseOnlyGoodSolderingMaterials);
@@ -1160,4 +1163,11 @@ public class GT_Mod implements IGT_Mod { }
}
+ public static int calculateTotalGTVersion(int minorVersion){
+ return calculateTotalGTVersion(VERSION, minorVersion);
+ }
+
+ public static int calculateTotalGTVersion(int majorVersion, int minorVersion){
+ return majorVersion * 1000 + minorVersion;
+ }
}
diff --git a/src/main/java/gregtech/api/enums/ItemList.java b/src/main/java/gregtech/api/enums/ItemList.java index ade0383cea..51aa28c15f 100644 --- a/src/main/java/gregtech/api/enums/ItemList.java +++ b/src/main/java/gregtech/api/enums/ItemList.java @@ -320,6 +320,7 @@ public enum ItemList implements IItemContainer { Crop_Drop_Grapes, Crop_Drop_TeaLeaf, Crop_Drop_Cucumber, + Crop_Drop_Rape, Schematic, Schematic_Crafting, Schematic_1by1, @@ -520,6 +521,7 @@ public enum ItemList implements IItemContainer { Machine_Bronze_Compressor, Machine_Bronze_AlloySmelter, Machine_Bronze_BlastFurnace, + Machine_Bricked_BlastFurnace, Machine_Steel_Boiler_Lava, Machine_Steel_Boiler, Machine_Steel_Furnace, @@ -538,7 +540,8 @@ public enum ItemList implements IItemContainer { Casing_Stripes_A, Casing_Stripes_B, Casing_RadioactiveHazard, Casing_BioHazard, Casing_ExplosionHazard, Casing_FireHazard, Casing_AcidHazard, Casing_MagicHazard, Casing_FrostHazard, Casing_NoiseHazard, Casing_Grate, Casing_Vent, Casing_RadiationProof, Casing_Firebox_Bronze, Casing_Firebox_Steel, Casing_Firebox_TungstenSteel, Casing_Chemically_Inert, Casing_MiningOsmiridium, Casing_RobustTungstenSteel, Casing_CleanStainlessSteel, Casing_StableTitanium, Casing_Firebox_Titanium, Hull_ULV, Hull_LV, Hull_MV, Hull_HV, Hull_EV, Hull_IV, Hull_LuV, Hull_ZPM, Hull_UV, Hull_MAX, - + CompressedFireclay, Firebrick, Casing_Firebricks, + Automation_Filter_ULV, Automation_Filter_LV, Automation_Filter_MV, Automation_Filter_HV, Automation_Filter_EV, Automation_Filter_IV, Automation_Filter_LuV, Automation_Filter_ZPM, Automation_Filter_UV, Automation_Filter_MAX, Automation_TypeFilter_ULV, Automation_TypeFilter_LV, Automation_TypeFilter_MV, Automation_TypeFilter_HV, Automation_TypeFilter_EV, Automation_TypeFilter_IV, Automation_TypeFilter_LuV, Automation_TypeFilter_ZPM, Automation_TypeFilter_UV, Automation_TypeFilter_MAX, Automation_ChestBuffer_ULV, Automation_ChestBuffer_LV, Automation_ChestBuffer_MV, Automation_ChestBuffer_HV, Automation_ChestBuffer_EV, Automation_ChestBuffer_IV, Automation_ChestBuffer_LuV, Automation_ChestBuffer_ZPM, Automation_ChestBuffer_UV, Automation_ChestBuffer_MAX, @@ -553,7 +556,7 @@ public enum ItemList implements IItemContainer { Hatch_Output_ULV, Hatch_Output_LV, Hatch_Output_MV, Hatch_Output_HV, Hatch_Output_EV, Hatch_Output_IV, Hatch_Output_LuV, Hatch_Output_ZPM, Hatch_Output_UV, Hatch_Output_MAX, Hatch_Output_Bus_ULV, Hatch_Output_Bus_LV, Hatch_Output_Bus_MV, Hatch_Output_Bus_HV, Hatch_Output_Bus_EV, Hatch_Output_Bus_IV, Hatch_Output_Bus_LuV, Hatch_Output_Bus_ZPM, Hatch_Output_Bus_UV, Hatch_Output_Bus_MAX, Hatch_Muffler_LV, Hatch_Muffler_MV, Hatch_Muffler_HV, Hatch_Muffler_EV, Hatch_Muffler_IV, Hatch_Muffler_LuV, Hatch_Muffler_ZPM, Hatch_Muffler_UV, Hatch_Muffler_MAX, - Hatch_Maintenance, + Hatch_Maintenance, Hatch_DataAccess_EV, Hatch_DataAccess_LuV, Battery_Buffer_1by1_ULV, Battery_Buffer_1by1_LV, Battery_Buffer_1by1_MV, Battery_Buffer_1by1_HV, Battery_Buffer_1by1_EV, Battery_Buffer_1by1_IV, Battery_Buffer_1by1_LuV, Battery_Buffer_1by1_ZPM, Battery_Buffer_1by1_UV, Battery_Buffer_1by1_MAX, Battery_Buffer_2by2_ULV, Battery_Buffer_2by2_LV, Battery_Buffer_2by2_MV, Battery_Buffer_2by2_HV, Battery_Buffer_2by2_EV, Battery_Buffer_2by2_IV, Battery_Buffer_2by2_LuV, Battery_Buffer_2by2_ZPM, Battery_Buffer_2by2_UV, Battery_Buffer_2by2_MAX, @@ -613,6 +616,7 @@ public enum ItemList implements IItemContainer { Machine_LV_Press, Machine_MV_Press, Machine_HV_Press, Machine_EV_Press, Machine_IV_Press, Machine_LuV_Press, Machine_ZPM_Press, Machine_UV_Press, Machine_LV_Hammer, Machine_MV_Hammer, Machine_HV_Hammer, Machine_EV_Hammer, Machine_IV_Hammer, Machine_LuV_Hammer, Machine_ZPM_Hammer, Machine_UV_Hammer, Machine_LV_FluidHeater, Machine_MV_FluidHeater, Machine_HV_FluidHeater, Machine_EV_FluidHeater, Machine_IV_FluidHeater, Machine_LuV_FluidHeater, Machine_ZPM_FluidHeater, Machine_UV_FluidHeater, + Machine_LV_Miner, Machine_MV_Miner, Neutron_Reflector, Reactor_Coolant_He_1, Reactor_Coolant_He_3, Reactor_Coolant_He_6, Reactor_Coolant_NaK_1, Reactor_Coolant_NaK_3, Reactor_Coolant_NaK_6, diff --git a/src/main/java/gregtech/api/enums/MaterialBuilder.java b/src/main/java/gregtech/api/enums/MaterialBuilder.java index 0dff2f871e..1aa9a8ae58 100644 --- a/src/main/java/gregtech/api/enums/MaterialBuilder.java +++ b/src/main/java/gregtech/api/enums/MaterialBuilder.java @@ -1,243 +1,256 @@ -package gregtech.api.enums;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-import gregtech.api.objects.MaterialStack;
-
-public class MaterialBuilder {
- public static final int DIESEL = 0, GAS = 1, THERMAL = 2, SEMIFLUID = 3, PLASMA = 4, MAGIC = 5;
-
- private int metaItemSubID;
- private TextureSet iconSet;
- private float toolSpeed = 1.0f;
- private int durability = 0;
- private int toolQuality = 0;
- private int types = 0;
- private int r = 255, g = 255, b = 255, a = 0;
- private String name;
- private String defaultLocalName;
- private int fuelType = 0;
- private int fuelPower = 0;
- private int meltingPoint = 0;
- private int blastFurnaceTemp = 0;
- private boolean blastFurnaceRequired = false;
- private boolean transparent = false;
- private int oreValue = 1;
- private int densityMultiplier = 1;
- private int densityDivider = 1;
- private Dyes color = Dyes._NULL;
- private int extraData = 0;
- private List<MaterialStack> materialList = new ArrayList<MaterialStack>();
- private List<TC_Aspects.TC_AspectStack> aspects = new ArrayList<TC_Aspects.TC_AspectStack>();
- private boolean hasCorrespondingFluid = false;
- private boolean hasCorrespondingGas = false;
- private int liquidTemperature = 300;
- private int gasTemperature = 300;
-
- public MaterialBuilder(int metaItemSubID, TextureSet iconSet, String defaultLocalName) {
- this.metaItemSubID = metaItemSubID;
- this.iconSet = iconSet;
- this.name = defaultLocalName.replace(" ", "");
- this.defaultLocalName = defaultLocalName;
- }
-
- public Materials constructMaterial() {
- return new Materials(metaItemSubID, iconSet, toolSpeed, durability, toolQuality, types, r, g, b, a, name, defaultLocalName, fuelType, fuelPower, meltingPoint, blastFurnaceTemp,
- blastFurnaceRequired, transparent, oreValue, densityMultiplier, densityDivider, color, extraData, materialList, aspects)
- .setHasCorrespondingFluid(hasCorrespondingFluid)
- .setHasCorrespondingGas(hasCorrespondingGas);
- }
-
- public MaterialBuilder setName(String name){
- this.name = name;
- return this;
- }
-
- public MaterialBuilder setTypes(int types){
- this.types = types;
- return this;
- }
-
- public MaterialBuilder addDustItems(){
- types = types | 1;
- return this;
- }
-
- public MaterialBuilder addMetalItems(){
- types = types | 2;
- return this;
- }
-
- public MaterialBuilder addGemItems(){
- types = types | 4;
- return this;
- }
-
- public MaterialBuilder addOreItems(){
- types = types | 8;
- return this;
- }
-
- public MaterialBuilder addCell(){
- types = types | 16;
- return this;
- }
-
- public MaterialBuilder addPlasma(){
- types = types | 32;
- return this;
- }
-
- public MaterialBuilder addToolHeadItems(){
- types = types | 64;
- return this;
- }
-
- public MaterialBuilder addGearItems(){
- types = types | 128;
- return this;
- }
-
- public MaterialBuilder addFluid(){
- this.hasCorrespondingFluid = true;
- return this;
- }
-
- public MaterialBuilder addGas(){
- this.hasCorrespondingGas = true;
- return this;
- }
-
-
- public MaterialBuilder setRGBA(int r, int g, int b, int a){
- this.r = r;
- this.g = g;
- this.b = b;
- this.a = a;
- return this;
- }
-
- public MaterialBuilder setRGB(int r, int g, int b){
- this.r = r;
- this.g = g;
- this.b = b;
- return this;
- }
-
- public MaterialBuilder setTransparent(boolean transparent){
- this.transparent = transparent;
- return this;
- }
-
- public MaterialBuilder setColor(Dyes color){
- this.color = color;
- return this;
- }
-
-
- public MaterialBuilder setToolSpeed(float toolSpeed) {
- this.toolSpeed = toolSpeed;
- return this;
- }
-
- public MaterialBuilder setDurability(int durability) {
- this.durability = durability;
- return this;
- }
-
- public MaterialBuilder setToolQuality(int toolQuality) {
- this.toolQuality = toolQuality;
- return this;
- }
-
-
- public MaterialBuilder setFuelType(int fuelType) {
- this.fuelType = fuelType;
- return this;
- }
-
- public MaterialBuilder setFuelPower(int fuelPower) {
- this.fuelPower = fuelPower;
- return this;
- }
-
- public MaterialBuilder setMeltingPoint(int meltingPoint) {
- this.meltingPoint = meltingPoint;
- return this;
- }
-
- public MaterialBuilder setBlastFurnaceTemp(int blastFurnaceTemp) {
- this.blastFurnaceTemp = blastFurnaceTemp;
- return this;
- }
-
- public MaterialBuilder setBlastFurnaceRequired(boolean blastFurnaceRequired) {
- this.blastFurnaceRequired = blastFurnaceRequired;
- return this;
- }
-
- public MaterialBuilder setOreValue(int oreValue) {
- this.oreValue = oreValue;
- return this;
- }
-
- public MaterialBuilder setDensityMultiplier(int densityMultiplier) {
- this.densityMultiplier = densityMultiplier;
- return this;
- }
-
- public MaterialBuilder setDensityDivider(int densityDivider) {
- this.densityDivider = densityDivider;
- return this;
- }
-
- public MaterialBuilder setExtraData(int extraData) {
- this.extraData = extraData;
- return this;
- }
-
- public MaterialBuilder addElectrolyzerRecipe(){
- extraData = extraData | 1;
- return this;
- }
-
- public MaterialBuilder addCentrifugeRecipe(){
- extraData = extraData | 2;
- return this;
- }
-
- public MaterialBuilder setMaterialList(List<MaterialStack> materialList) {
- this.materialList = materialList;
- return this;
- }
-
- public MaterialBuilder setMaterialList(MaterialStack ... materials) {
- this.materialList = Arrays.asList(materials);
- return this;
- }
-
- public MaterialBuilder setAspects(List<TC_Aspects.TC_AspectStack> aspects) {
- this.aspects = aspects;
- return this;
- }
-
- public int getLiquidTemperature() {
- return liquidTemperature;
- }
-
- public MaterialBuilder setLiquidTemperature(int liquidTemperature) {
- this.liquidTemperature = liquidTemperature;
- return this;
- }
-
- public int getGasTemperature() {
- return gasTemperature;
- }
-
- public MaterialBuilder setGasTemperature(int gasTemperature) {
- this.gasTemperature = gasTemperature;
- return this;
- }
-}
+package gregtech.api.enums; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +import gregtech.api.objects.MaterialStack; + +public class MaterialBuilder { + public static final int DIESEL = 0, GAS = 1, THERMAL = 2, SEMIFLUID = 3, PLASMA = 4, MAGIC = 5; + + private int metaItemSubID; + private TextureSet iconSet; + private float toolSpeed = 1.0f; + private int durability = 0; + private int toolQuality = 0; + private int types = 0; + private int r = 255, g = 255, b = 255, a = 0; + private String name; + private String defaultLocalName; + private int fuelType = 0; + private int fuelPower = 0; + private int meltingPoint = 0; + private int blastFurnaceTemp = 0; + private boolean blastFurnaceRequired = false; + private boolean transparent = false; + private int oreValue = 1; + private int densityMultiplier = 1; + private int densityDivider = 1; + private Dyes color = Dyes._NULL; + private int extraData = 0; + private List<MaterialStack> materialList = new ArrayList<MaterialStack>(); + private List<TC_Aspects.TC_AspectStack> aspects = new ArrayList<TC_Aspects.TC_AspectStack>(); + private boolean hasCorrespondingFluid = false; + private boolean hasCorrespondingGas = false; + private boolean canBeCracked = false; + private boolean canBeSteamCracked = false; + private int liquidTemperature = 300; + private int gasTemperature = 300; + + public MaterialBuilder(int metaItemSubID, TextureSet iconSet, String defaultLocalName) { + this.metaItemSubID = metaItemSubID; + this.iconSet = iconSet; + this.name = defaultLocalName.replace(" ", "").replace("-", ""); + this.defaultLocalName = defaultLocalName; + } + + public Materials constructMaterial() { + return new Materials(metaItemSubID, iconSet, toolSpeed, durability, toolQuality, types, r, g, b, a, name, defaultLocalName, fuelType, fuelPower, meltingPoint, blastFurnaceTemp, + blastFurnaceRequired, transparent, oreValue, densityMultiplier, densityDivider, color, extraData, materialList, aspects) + .setHasCorrespondingFluid(hasCorrespondingFluid) + .setHasCorrespondingGas(hasCorrespondingGas) + .setCanBeCracked(canBeCracked); + } + + public MaterialBuilder setName(String name){ + this.name = name; + return this; + } + + public MaterialBuilder setTypes(int types){ + this.types = types; + return this; + } + + public MaterialBuilder addDustItems(){ + types = types | 1; + return this; + } + + public MaterialBuilder addMetalItems(){ + types = types | 2; + return this; + } + + public MaterialBuilder addGemItems(){ + types = types | 4; + return this; + } + + public MaterialBuilder addOreItems(){ + types = types | 8; + return this; + } + + public MaterialBuilder addCell(){ + types = types | 16; + return this; + } + + public MaterialBuilder addPlasma(){ + types = types | 32; + return this; + } + + public MaterialBuilder addToolHeadItems(){ + types = types | 64; + return this; + } + + public MaterialBuilder addGearItems(){ + types = types | 128; + return this; + } + + public MaterialBuilder addFluid(){ + this.hasCorrespondingFluid = true; + return this; + } + + public MaterialBuilder addGas(){ + this.hasCorrespondingGas = true; + return this; + } + + + public MaterialBuilder setRGBA(int r, int g, int b, int a){ + this.r = r; + this.g = g; + this.b = b; + this.a = a; + return this; + } + + public MaterialBuilder setRGB(int r, int g, int b){ + this.r = r; + this.g = g; + this.b = b; + return this; + } + + public MaterialBuilder setTransparent(boolean transparent){ + this.transparent = transparent; + return this; + } + + public MaterialBuilder setColor(Dyes color){ + this.color = color; + return this; + } + + + public MaterialBuilder setToolSpeed(float toolSpeed) { + this.toolSpeed = toolSpeed; + return this; + } + + public MaterialBuilder setDurability(int durability) { + this.durability = durability; + return this; + } + + public MaterialBuilder setToolQuality(int toolQuality) { + this.toolQuality = toolQuality; + return this; + } + + + public MaterialBuilder setFuelType(int fuelType) { + this.fuelType = fuelType; + return this; + } + + public MaterialBuilder setFuelPower(int fuelPower) { + this.fuelPower = fuelPower; + return this; + } + + public MaterialBuilder setMeltingPoint(int meltingPoint) { + this.meltingPoint = meltingPoint; + return this; + } + + public MaterialBuilder setBlastFurnaceTemp(int blastFurnaceTemp) { + this.blastFurnaceTemp = blastFurnaceTemp; + return this; + } + + public MaterialBuilder setBlastFurnaceRequired(boolean blastFurnaceRequired) { + this.blastFurnaceRequired = blastFurnaceRequired; + return this; + } + + public MaterialBuilder setOreValue(int oreValue) { + this.oreValue = oreValue; + return this; + } + + public MaterialBuilder setDensityMultiplier(int densityMultiplier) { + this.densityMultiplier = densityMultiplier; + return this; + } + + public MaterialBuilder setDensityDivider(int densityDivider) { + this.densityDivider = densityDivider; + return this; + } + + public MaterialBuilder setExtraData(int extraData) { + this.extraData = extraData; + return this; + } + + public MaterialBuilder addElectrolyzerRecipe(){ + extraData = extraData | 1; + return this; + } + + public MaterialBuilder addCentrifugeRecipe(){ + extraData = extraData | 2; + return this; + } + + public MaterialBuilder setMaterialList(List<MaterialStack> materialList) { + this.materialList = materialList; + return this; + } + + public MaterialBuilder setMaterialList(MaterialStack ... materials) { + this.materialList = Arrays.asList(materials); + return this; + } + + public MaterialBuilder setAspects(List<TC_Aspects.TC_AspectStack> aspects) { + this.aspects = aspects; + return this; + } + + public int getLiquidTemperature() { + return liquidTemperature; + } + + public MaterialBuilder setLiquidTemperature(int liquidTemperature) { + this.liquidTemperature = liquidTemperature; + return this; + } + + public int getGasTemperature() { + return gasTemperature; + } + + public MaterialBuilder setGasTemperature(int gasTemperature) { + this.gasTemperature = gasTemperature; + return this; + } + + public boolean canBeCracked() { + return canBeCracked; + } + + public MaterialBuilder setCanBeCracked(boolean canBeCracked) { + this.canBeCracked = canBeCracked; + return this; + } + +} diff --git a/src/main/java/gregtech/api/enums/Materials.java b/src/main/java/gregtech/api/enums/Materials.java index 18748669a1..8d506837ad 100644 --- a/src/main/java/gregtech/api/enums/Materials.java +++ b/src/main/java/gregtech/api/enums/Materials.java @@ -12,7 +12,6 @@ import gregtech.api.objects.MaterialStack; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; -import gregtech.common.GT_Proxy; import gregtech.loaders.materialprocessing.ProcessingConfig; import gregtech.loaders.materialprocessing.ProcessingModSupport; import net.minecraft.enchantment.Enchantment; @@ -71,7 +70,7 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { public static Materials Gallium = new Materials(37, TextureSet.SET_SHINY, 1.0F, 64, 2, 1|2|32, 220, 220, 255, 0, "Gallium", "Gallium", 0, 0, 302, 0, false, false, 5, 1, 1, Dyes.dyeLightGray, Element.Ga, Arrays.asList(new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.ELECTRUM, 1))); public static Materials Gold = new Materials(86, TextureSet.SET_SHINY, 12.0F, 64, 2, 1|2|8|32|64|128, 255, 255, 30, 0, "Gold", "Gold", 0, 0, 1337, 0, false, false, 4, 1, 1, Dyes.dyeYellow, Element.Au, Arrays.asList(new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.LUCRUM, 2))); public static Materials Holmium = new Materials(74, TextureSet.SET_METALLIC, 1.0F, 0, 2, 1|2|32, 255, 255, 255, 0, "Holmium", "Holmium", 0, 0, 1734, 1734, true, false, 4, 1, 1, Dyes._NULL, Element.Ho, Arrays.asList(new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.RADIO, 1))); - public static Materials Hydrogen = new Materials(1, TextureSet.SET_FLUID, 1.0F, 0, 2, 16|32, 0, 0, 255, 240, "Hydrogen", "Hydrogen", 1, 15, 14, 0, false, true, 2, 1, 1, Dyes.dyeBlue, Element.H, Arrays.asList(new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 1))); + public static Materials Hydrogen = new Materials(1, TextureSet.SET_FLUID, 1.0F, 0, 2, 16|32, 0, 0, 255, 240, "Hydrogen", "Hydrogen", 1, 20, 14, 0, false, true, 2, 1, 1, Dyes.dyeBlue, Element.H, Arrays.asList(new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 1))); public static Materials Helium = new Materials(4, TextureSet.SET_FLUID, 1.0F, 0, 2, 16|32, 255, 255, 0, 240, "Helium", "Helium", 0, 0, 1, 0, false, true, 5, 1, 1, Dyes.dyeYellow, Element.He, Arrays.asList(new TC_Aspects.TC_AspectStack(TC_Aspects.AER, 2))); public static Materials Helium_3 = new Materials(5, TextureSet.SET_FLUID, 1.0F, 0, 2, 16|32, 255, 255, 0, 240, "Helium_3", "Helium-3", 0, 0, 1, 0, false, true, 10, 1, 1, Dyes.dyeYellow, Element.He_3, Arrays.asList(new TC_Aspects.TC_AspectStack(TC_Aspects.AER, 3))); public static Materials Indium = new Materials(56, TextureSet.SET_METALLIC, 1.0F, 0, 2, 1|2|32, 64, 0, 128, 0, "Indium", "Indium", 0, 0, 429, 0, false, false, 4, 1, 1, Dyes.dyeGray, Element.In, Arrays.asList(new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.RADIO, 1))); @@ -96,7 +95,7 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { public static Materials Palladium = new Materials(52, TextureSet.SET_SHINY, 8.0F, 512, 2, 1|2|8|32|64|128, 128, 128, 128, 0, "Palladium", "Palladium", 0, 0, 1828, 1828, true, false, 4, 1, 1, Dyes.dyeGray, Element.Pd, Arrays.asList(new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 3))); public static Materials Phosphor = new Materials(21, TextureSet.SET_DULL, 1.0F, 0, 2, 1|32, 255, 255, 0, 0, "Phosphor", "Phosphor", 0, 0, 317, 0, false, false, 2, 1, 1, Dyes.dyeYellow, Element.P, Arrays.asList(new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 2), new TC_AspectStack(TC_Aspects.POTENTIA, 1))); public static Materials Platinum = new Materials(85, TextureSet.SET_SHINY, 12.0F, 64, 2, 1|2|8|32|64|128, 255, 255, 200, 0, "Platinum", "Platinum", 0, 0, 2041, 0, false, false, 6, 1, 1, Dyes.dyeOrange, Element.Pt, Arrays.asList(new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.NEBRISUM, 1))); - public static Materials Plutonium = new Materials(100, TextureSet.SET_METALLIC, 6.0F, 512, 3, 1|2|8|32|64, 240, 50, 50, 0, "Plutonium", "Plutonium 244", 0, 0, 912, 0, false, false, 6, 1, 1, Dyes.dyeLime, Element.Pu, Arrays.asList(new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.RADIO, 2))); + public static Materials Plutonium = new Materials(100, TextureSet.SET_METALLIC, 6.0F, 512, 3, 1|2|8|32|64, 240, 50, 50, 0, "Plutonium", "Plutonium 239", 0, 0, 912, 0, false, false, 6, 1, 1, Dyes.dyeLime, Element.Pu, Arrays.asList(new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.RADIO, 2))); public static Materials Plutonium241 = new Materials(101, TextureSet.SET_SHINY, 6.0F, 512, 3, 1|2|32|64, 250, 70, 70, 0, "Plutonium241", "Plutonium 241", 0, 0, 912, 0, false, false, 6, 1, 1, Dyes.dyeLime, Element.Pu_241, Arrays.asList(new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.RADIO, 3))); public static Materials Potassium = new Materials(25, TextureSet.SET_METALLIC, 1.0F, 0, 1, 1|2|32, 250, 250, 250, 0, "Potassium", "Potassium", 0, 0, 336, 0, false, false, 2, 1, 1, Dyes.dyeWhite, Element.K, Arrays.asList(new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 1), new TC_AspectStack(TC_Aspects.POTENTIA, 1))); public static Materials Praseodymium =new Materials(66, TextureSet.SET_METALLIC,1.0F, 0, 2, 1|2|32, 255, 255, 255, 0, "Praseodymium", "Praseodymium", 0, 0, 1208, 1208, true, false, 4, 1, 1, Dyes._NULL, Element.Pr, Arrays.asList(new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.RADIO, 1))); @@ -130,15 +129,16 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { * The "Random Material" ones. */ public static Materials Organic = new Materials(-1, TextureSet.SET_LEAF, 1.0F, 0, 1, false, "Organic", "Organic"); - public static Materials AnyCopper = new Materials(-1, TextureSet.SET_SHINY, 1.0F, 0, 3, false, "AnyCopper", "AnyCopper"); public static Materials AnyBronze = new Materials(-1, TextureSet.SET_SHINY, 1.0F, 0, 3, false, "AnyBronze", "AnyBronze"); + public static Materials AnyCopper = new Materials(-1, TextureSet.SET_SHINY, 1.0F, 0, 3, false, "AnyCopper", "AnyCopper"); public static Materials AnyIron = new Materials(-1, TextureSet.SET_SHINY, 1.0F, 0, 3, false, "AnyIron", "AnyIron"); + public static Materials AnyRubber = new Materials(-1, TextureSet.SET_SHINY, 1.0F, 0, 3, false, "AnyRubber", "AnyRubber"); + public static Materials AnySyntheticRubber = new Materials(-1, TextureSet.SET_SHINY, 1.0F, 0, 3, false, "AnySyntheticRubber", "AnySyntheticRubber"); public static Materials Crystal = new Materials(-1, TextureSet.SET_SHINY, 1.0F, 0, 3, false, "Crystal", "Crystal"); public static Materials Quartz = new Materials(-1, TextureSet.SET_QUARTZ, 1.0F, 0, 2, false, "Quartz", "Quartz"); public static Materials Metal = new Materials(-1, TextureSet.SET_METALLIC, 1.0F, 0, 2, false, "Metal", "Metal"); public static Materials Unknown = new Materials(-1, TextureSet.SET_DULL, 1.0F, 0, 2, false, "Unknown", "Unknown"); public static Materials Cobblestone = new Materials(-1, TextureSet.SET_DULL,1.0F, 0, 1, false, "Cobblestone", "Cobblestone"); - public static Materials Brick = new Materials(-1, TextureSet.SET_DULL, 1.0F, 0, 1, false, "Brick", "Brick"); public static Materials BrickNether = new Materials(-1, TextureSet.SET_DULL,1.0F, 0, 1, false, "BrickNether", "BrickNether"); /** @@ -381,7 +381,7 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { public static Materials Cocoa = new Materials(887, TextureSet.SET_FINE, 1.0F, 0, 0, 1, 190, 95, 0, 0, "Cocoa", "Cocoa", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeBrown); public static Materials Coffee = new Materials(888, TextureSet.SET_FINE, 1.0F, 0, 0, 1, 150, 75, 0, 0, "Coffee", "Coffee", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeBrown); public static Materials Creosote = new Materials(712, TextureSet.SET_FLUID, 1.0F, 0, 0, 16, 128, 64, 0, 0, "Creosote", "Creosote", 3, 8, -1, 0, false, false, 1, 1, 1, Dyes.dyeBrown); - public static Materials Ethanol = new Materials(706, TextureSet.SET_FLUID, 1.0F, 0, 0, 16, 255, 128, 0, 0, "Ethanol", "Ethanol", 0, 128, -1, 0, false, false, 1, 1, 1, Dyes.dyeOrange, 1, Arrays.asList(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 6), new MaterialStack(Oxygen, 1)), Arrays.asList(new TC_AspectStack(TC_Aspects.VENENUM, 1), new TC_AspectStack(TC_Aspects.AQUA, 1))); + public static Materials Ethanol = new Materials(706, TextureSet.SET_FLUID, 1.0F, 0, 0, 16, 255, 128, 0, 0, "Ethanol", "Ethanol", 0, 148, -1, 0, false, false, 1, 1, 1, Dyes.dyeOrange, 1, Arrays.asList(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 6), new MaterialStack(Oxygen, 1)), Arrays.asList(new TC_AspectStack(TC_Aspects.VENENUM, 1), new TC_AspectStack(TC_Aspects.AQUA, 1))); public static Materials FermentedBiomass = new MaterialBuilder(691, TextureSet.SET_FLUID, "Fermented Biomass").addCell().addFluid().setRGB(68, 85, 0).setColor(Dyes.dyeBrown).constructMaterial(); public static Materials FishOil = new Materials(711, TextureSet.SET_FLUID, 1.0F, 0, 0, 16, 255, 196, 0, 0, "FishOil", "Fish Oil", 3, 2, -1, 0, false, false, 1, 1, 1, Dyes.dyeYellow, Arrays.asList(new TC_Aspects.TC_AspectStack(TC_Aspects.CORPUS, 2))); public static Materials Fuel = new Materials(708, TextureSet.SET_FLUID, 1.0F, 0, 0, 16, 255, 255, 0, 0, "Fuel", "Diesel", 0, 128, -1, 0, false, false, 1, 1, 1, Dyes.dyeYellow); @@ -430,7 +430,7 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { /** * First Degree Compounds */ - public static Materials Methane = new Materials(715, TextureSet.SET_FLUID, 1.0F, 0, 1, 16, 255, 255, 255, 0, "Methane", "Methane", 1, 45, -1, 0, false, false, 3, 1, 1, Dyes.dyeMagenta, 1, Arrays.asList(new MaterialStack(Carbon, 1), new MaterialStack(Hydrogen, 4))); + public static Materials Methane = new Materials(715, TextureSet.SET_FLUID, 1.0F, 0, 1, 16, 255, 255, 255, 0, "Methane", "Methane", 1, 104, -1, 0, false, false, 3, 1, 1, Dyes.dyeMagenta, 1, Arrays.asList(new MaterialStack(Carbon, 1), new MaterialStack(Hydrogen, 4))); public static Materials CarbonDioxide = new Materials(497, TextureSet.SET_FLUID, 1.0F, 0, 2, 16|32, 169, 208, 245, 240, "CarbonDioxide", "Carbon Dioxide", 0, 0, 25, 1, false, true, 1, 1, 1, Dyes.dyeLightBlue, 1, Arrays.asList(new MaterialStack(Carbon, 1), new MaterialStack(Oxygen, 2))).setHasCorrespondingGas(true); public static Materials NobleGases = new Materials(496, TextureSet.SET_FLUID, 1.0F, 0, 2, 16|32, 169, 208, 245, 240, "NobleGases", "Noble Gases", 0, 0, 4, 0, false, true, 1, 1, 1, Dyes.dyeLightBlue, 2, Arrays.asList(new MaterialStack(CarbonDioxide, 21), new MaterialStack(Helium, 9), new MaterialStack(Methane, 3), new MaterialStack(Deuterium, 1))).setHasCorrespondingFluid(true).setLiquidTemperature(79); public static Materials Air = new Materials(-1, TextureSet.SET_FLUID, 1.0F, 0, 2, 16|32, 169, 208, 245, 240, "Air", "Air", 0, 0, -1, 0, false, true, 1, 1, 1, Dyes.dyeLightBlue, 0, Arrays.asList(new MaterialStack(Nitrogen, 40), new MaterialStack(Oxygen, 11), new MaterialStack(Argon, 1), new MaterialStack(NobleGases, 1))); @@ -457,7 +457,7 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { public static Materials ChromiumDioxide = new Materials(361, TextureSet.SET_DULL, 11.0F, 256, 3, 1|2, 230, 200, 200, 0, "ChromiumDioxide", "Chromium Dioxide", 0, 0, 650, 650, false, false, 5, 3, 1, Dyes.dyePink , 1, Arrays.asList(new MaterialStack(Chrome, 1), new MaterialStack(Oxygen, 2)), Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.MACHINA, 1))); public static Materials Cinnabar = new Materials(826, TextureSet.SET_ROUGH, 1.0F, 0, 1, 1 |8 , 150, 0, 0, 0, "Cinnabar", "Cinnabar", 0, 0, -1, 0, false, false, 3, 1, 1, Dyes.dyeBrown, 2, Arrays.asList(new MaterialStack(Mercury, 1), new MaterialStack(Sulfur, 1))); public static Materials Water = new Materials(701, TextureSet.SET_FLUID, 1.0F, 0, 0, 16, 0, 0, 255, 0, "Water", "Water", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeBlue, 0, Arrays.asList(new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 1)), Arrays.asList(new TC_AspectStack(TC_Aspects.AQUA, 2))); - public static Materials Clay = new Materials(805, TextureSet.SET_ROUGH, 1.0F, 0, 1, 1, 200, 200, 220, 0, "Clay", "Clay", 0, 0, -1, 0, false, false, 3, 1, 1, Dyes.dyeLightBlue, 1, Arrays.asList(new MaterialStack(Sodium, 2), new MaterialStack(Lithium, 1), new MaterialStack(Aluminium, 2), new MaterialStack(Silicon, 2), new MaterialStack(Water, 6))); + public static Materials Clay = new Materials(805, TextureSet.SET_DULL, 1.0F, 0, 1, 1, 200, 200, 220, 0, "Clay", "Clay", 0, 0, -1, 0, false, false, 3, 1, 1, Dyes.dyeLightBlue, 1, Arrays.asList(new MaterialStack(Sodium, 2), new MaterialStack(Lithium, 1), new MaterialStack(Aluminium, 2), new MaterialStack(Silicon, 2), new MaterialStack(Water, 6))); public static Materials Coal = new Materials(535, TextureSet.SET_ROUGH, 1.0F, 0, 1, 1|4|8, 70, 70, 70, 0, "Coal", "Coal", 0, 0, -1, 0, false, false, 2, 2, 1, Dyes.dyeBlack, 1, Arrays.asList(new MaterialStack(Carbon, 1)), Arrays.asList(new TC_AspectStack(TC_Aspects.POTENTIA, 2), new TC_AspectStack(TC_Aspects.IGNIS, 2))); public static Materials Cobaltite = new Materials(827, TextureSet.SET_METALLIC, 1.0F, 0, 1, 1 |8 , 80, 80, 250, 0, "Cobaltite", "Cobaltite", 0, 0, -1, 0, false, false, 3, 1, 1, Dyes.dyeBlue, 1, Arrays.asList(new MaterialStack(Cobalt, 1), new MaterialStack(Arsenic, 1), new MaterialStack(Sulfur, 1))); public static Materials Cooperite = new Materials(828, TextureSet.SET_METALLIC, 1.0F, 0, 1, 1 |8 , 255, 255, 200, 0, "Cooperite", "Sheldonite", 0, 0, -1, 0, false, false, 5, 1, 1, Dyes.dyeYellow, 2, Arrays.asList(new MaterialStack(Platinum, 3), new MaterialStack(Nickel, 1), new MaterialStack(Sulfur, 1), new MaterialStack(Palladium, 1))); @@ -478,7 +478,7 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { public static Materials Ilmenite = new Materials(918, TextureSet.SET_METALLIC, 1.0F, 0, 3, 1 |8 , 70, 55, 50, 0, "Ilmenite", "Ilmenite", 0, 0, -1, 0, false, false, 1, 2, 1, Dyes.dyePurple, 0, Arrays.asList(new MaterialStack(Iron, 1), new MaterialStack(Titanium, 1), new MaterialStack(Oxygen, 3))); public static Materials Rutile = new Materials(375, TextureSet.SET_GEM_HORIZONTAL, 1.0F, 0, 2, 1, 212, 13, 92, 0, "Rutile", "Rutile", 0, 0, -1, 0, false, false, 1, 2, 1, Dyes.dyeRed, 0, Arrays.asList(new MaterialStack(Titanium, 1), new MaterialStack(Oxygen, 2))); public static Materials Bauxite = new Materials(822, TextureSet.SET_DULL, 1.0F, 0, 1, 1 |8 , 200, 100, 0, 0, "Bauxite", "Bauxite", 0, 0, -1, 0, false, false, 3, 1, 1, Dyes.dyeBrown, 1, Arrays.asList(new MaterialStack(Rutile, 2), new MaterialStack(Aluminium, 16), new MaterialStack(Hydrogen, 10), new MaterialStack(Oxygen, 11))); - public static Materials Titaniumtetrachloride =new Materials(376,TextureSet.SET_FLUID,1.0F, 0, 2, 16 , 212, 13, 92, 0, "Titaniumtetrachloride", "Titaniumtetrachloride", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeRed, 0, Arrays.asList(new MaterialStack(Titanium, 1), new MaterialStack(Carbon, 2), new MaterialStack(Chlorine, 2))); + public static Materials Titaniumtetrachloride =new Materials(376,TextureSet.SET_FLUID,1.0F, 0, 2, 16 , 212, 13, 92, 0, "Titaniumtetrachloride", "Titaniumtetrachloride", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeRed, 0, Arrays.asList(new MaterialStack(Titanium, 1), new MaterialStack(Chlorine, 4))); public static Materials Magnesiumchloride = new Materials(377, TextureSet.SET_DULL, 1.0F, 0, 2, 1|16 , 212, 13, 92, 0, "Magnesiumchloride", "Magnesiumchloride", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeRed, 0, Arrays.asList(new MaterialStack(Magnesium, 1), new MaterialStack(Chlorine, 2))); public static Materials Invar = new Materials(302, TextureSet.SET_METALLIC, 6.0F, 256, 2, 1|2|64|128, 180, 180, 120, 0, "Invar", "Invar", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeBrown, 2, Arrays.asList(new MaterialStack(Iron, 2), new MaterialStack(Nickel, 1)), Arrays.asList(new TC_AspectStack(TC_Aspects.METALLUM, 2), new TC_AspectStack(TC_Aspects.GELUM, 1))); public static Materials IronCompressed = new Materials(-1, TextureSet.SET_METALLIC, 7.0F, 96, 1, 1|2|64|128, 128, 128, 128, 0, "IronCompressed", "Compressed Iron", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeGray, 2, Arrays.asList(new MaterialStack(Iron, 1))); @@ -498,7 +498,8 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { public static Materials PigIron = new Materials(307, TextureSet.SET_METALLIC, 6.0F, 384, 2, 1|2|64, 200, 180, 180, 0, "PigIron", "Pig Iron", 0, 0, -1, 0, false, false, 3, 1, 1, Dyes.dyePink, 2, Arrays.asList(new MaterialStack(Iron, 1))); public static Materials Plastic = new Materials(874, TextureSet.SET_DULL, 3.0F, 32, 1, 1|2|64|128, 200, 200, 200, 0, "Plastic", "Polyethylene", 0, 0, 400, 0, false, false, 1, 1, 1, Dyes.dyeWhite, 0, Arrays.asList(new MaterialStack(Carbon, 1), new MaterialStack(Hydrogen, 2)), Arrays.asList(new TC_AspectStack(TC_Aspects.MOTUS, 2))); public static Materials Epoxid = new Materials(470, TextureSet.SET_DULL, 3.0F, 32, 1, 1|2|64|128, 200, 140, 20, 0, "Epoxid", "Epoxy Resin", 0, 0, 400, 0, false, false, 1, 1, 1, Dyes.dyeWhite, 0, Arrays.asList(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 4), new MaterialStack(Oxygen, 1)), Arrays.asList(new TC_AspectStack(TC_Aspects.MOTUS, 2))); - public static Materials Silicone = new Materials(471, TextureSet.SET_DULL, 3.0F, 128, 1, 1|2|64|128, 220, 220, 220, 0, "Silicone", "Polydimethylsiloxane", 0, 0, 900, 0, false, false, 1, 1, 1, Dyes.dyeWhite, 0, Arrays.asList(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 6), new MaterialStack(Oxygen, 1), new MaterialStack(Silicon, 1)), Arrays.asList(new TC_AspectStack(TC_Aspects.MOTUS, 2))); + public static Materials Polydimethylsiloxane = new MaterialBuilder(633, TextureSet.SET_FLUID, "Polydimethylsiloxane").addDustItems().setRGB(245, 245, 245).setColor(Dyes.dyeWhite).setMaterialList(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 6), new MaterialStack(Oxygen, 1), new MaterialStack(Silicon, 1)).addElectrolyzerRecipe().constructMaterial(); + public static Materials Silicone = new Materials(471, TextureSet.SET_DULL, 3.0F, 128, 1, 1|2|64|128, 220, 220, 220, 0, "Silicone", "Silicone Rubber", 0, 0, 900, 0, false, false, 1, 1, 1, Dyes.dyeWhite, 0, Arrays.asList(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 6), new MaterialStack(Oxygen, 1), new MaterialStack(Silicon, 1)), Arrays.asList(new TC_AspectStack(TC_Aspects.MOTUS, 2))); public static Materials Polycaprolactam = new Materials(472, TextureSet.SET_DULL, 3.0F, 32, 1, 1|2|64|128, 50, 50, 50, 0, "Polycaprolactam", "Polycaprolactam", 0, 0, 500, 0, false, false, 1, 1, 1, Dyes.dyeWhite, 0, Arrays.asList(new MaterialStack(Carbon, 6), new MaterialStack(Hydrogen, 11), new MaterialStack(Nitrogen, 1), new MaterialStack(Oxygen, 1)), Arrays.asList(new TC_AspectStack(TC_Aspects.MOTUS, 2))); public static Materials Polytetrafluoroethylene = new Materials(473, TextureSet.SET_DULL, 3.0F, 32, 1, 1|2|64|128, 100, 100, 100, 0, "Polytetrafluoroethylene", "Polytetrafluoroethylene", 0, 0, 1400, 0, false, false, 1, 1, 1, Dyes.dyeWhite, 0, Arrays.asList(new MaterialStack(Carbon, 2), new MaterialStack(Fluorine, 4)), Arrays.asList(new TC_AspectStack(TC_Aspects.MOTUS, 2))); public static Materials Powellite = new Materials(883, TextureSet.SET_DULL, 1.0F, 0, 2, 1 |8 , 255, 255, 0, 0, "Powellite", "Powellite", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeYellow, 2, Arrays.asList(new MaterialStack(Calcium, 1), new MaterialStack(Molybdenum, 1), new MaterialStack(Oxygen, 4))); @@ -507,7 +508,7 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { public static Materials Pyrolusite = new Materials(943, TextureSet.SET_DULL, 1.0F, 0, 2, 1 |8 , 150, 150, 170, 0, "Pyrolusite", "Pyrolusite", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeLightGray, 1, Arrays.asList(new MaterialStack(Manganese, 1), new MaterialStack(Oxygen, 2))); public static Materials Pyrope = new Materials(835, TextureSet.SET_METALLIC, 1.0F, 0, 2, 1 |8 , 120, 50, 100, 0, "Pyrope", "Pyrope", 0, 0, -1, 0, false, false, 3, 1, 1, Dyes.dyePurple, 1, Arrays.asList(new MaterialStack(Aluminium, 2), new MaterialStack(Magnesium, 3), new MaterialStack(Silicon, 3), new MaterialStack(Oxygen, 12))); public static Materials RockSalt = new Materials(944, TextureSet.SET_FINE, 1.0F, 0, 1, 1 |8 , 240, 200, 200, 0, "RockSalt", "Rock Salt", 0, 0, -1, 0, false, false, 2, 1, 1, Dyes.dyeWhite, 1, Arrays.asList(new MaterialStack(Potassium, 1), new MaterialStack(Chlorine, 1))); - public static Materials Rubber = new Materials(880, TextureSet.SET_SHINY, 1.5F, 16, 0, 1|2|64|128, 0, 0, 0, 0, "Rubber", "Rubber", 0, 0, 400, 0, false, false, 1, 1, 1, Dyes.dyeBlack, 0, Arrays.asList(new MaterialStack(Carbon, 5), new MaterialStack(Hydrogen, 8)), Arrays.asList(new TC_AspectStack(TC_Aspects.MOTUS, 2))); + public static Materials Rubber = new Materials(880, TextureSet.SET_SHINY, 1.5F, 32, 0, 1|2|64|128, 0, 0, 0, 0, "Rubber", "Rubber", 0, 0, 400, 0, false, false, 1, 1, 1, Dyes.dyeBlack, 0, Arrays.asList(new MaterialStack(Carbon, 5), new MaterialStack(Hydrogen, 8)), Arrays.asList(new TC_AspectStack(TC_Aspects.MOTUS, 2))); public static Materials RawRubber = new Materials(896, TextureSet.SET_DULL, 1.0F, 0, 0, 1, 204, 199, 137, 0, "RawRubber", "Raw Rubber", 0, 0, 400, 0, false, false, 1, 1, 1, Dyes.dyeWhite, 0, Arrays.asList(new MaterialStack(Carbon, 5), new MaterialStack(Hydrogen, 8)), Arrays.asList(new TC_AspectStack(TC_Aspects.MOTUS, 2))); public static Materials Ruby = new Materials(502, TextureSet.SET_RUBY, 7.0F, 256, 2, 1|4|8 |64, 255, 100, 100, 127, "Ruby", "Ruby", 0, 0, -1, 0, false, true, 5, 1, 1, Dyes.dyeRed, 1, Arrays.asList(new MaterialStack(Chrome, 1), new MaterialStack(Aluminium, 2), new MaterialStack(Oxygen, 3)), Arrays.asList(new TC_AspectStack(TC_Aspects.LUCRUM, 6), new TC_AspectStack(TC_Aspects.VITREUS, 4))); public static Materials Salt = new Materials(817, TextureSet.SET_FINE, 1.0F, 0, 1, 1 |8 , 250, 250, 250, 0, "Salt", "Salt", 0, 0, -1, 0, false, false, 2, 1, 1, Dyes.dyeWhite, 1, Arrays.asList(new MaterialStack(Sodium, 1), new MaterialStack(Chlorine, 1))); @@ -518,8 +519,8 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { public static Materials SiliconDioxide = new Materials(837, TextureSet.SET_QUARTZ, 1.0F, 0, 1, 1 |16, 200, 200, 200, 0, "SiliconDioxide", "Silicon Dioxide", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeLightGray, 1, Arrays.asList(new MaterialStack(Silicon, 1), new MaterialStack(Oxygen, 2))); public static Materials Snow = new Materials(728, TextureSet.SET_FINE, 1.0F, 0, 0, 1| 16, 250, 250, 250, 0, "Snow", "Snow", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeWhite, 0, Arrays.asList(new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 1)), Arrays.asList(new TC_AspectStack(TC_Aspects.GELUM, 1))); public static Materials Sodalite = new Materials(525, TextureSet.SET_LAPIS, 1.0F, 0, 1, 1|4|8 , 20, 20, 255, 0, "Sodalite", "Sodalite", 0, 0, -1, 0, false, false, 3, 1, 1, Dyes.dyeBlue, 1, Arrays.asList(new MaterialStack(Aluminium, 3), new MaterialStack(Silicon, 3), new MaterialStack(Sodium, 4), new MaterialStack(Chlorine, 1))); - public static Materials SodiumPersulfate = new Materials(718, TextureSet.SET_FLUID, 1.0F, 0, 2, 16, 255, 255, 255, 0, "SodiumPersulfate", "Sodium Persulfate", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeOrange, 1, Arrays.asList(new MaterialStack(Sodium, 1), new MaterialStack(Sulfur, 1), new MaterialStack(Oxygen, 4))); - public static Materials SodiumSulfide = new Materials(719, TextureSet.SET_FLUID, 1.0F, 0, 2, 16, 255, 255, 255, 0, "SodiumSulfide", "Sodium Sulfide", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeOrange, 1, Arrays.asList(new MaterialStack(Sodium, 2), new MaterialStack(Sulfur, 1))); + public static Materials SodiumPersulfate = new Materials(718, TextureSet.SET_FLUID, 1.0F, 0, 2, 16, 255, 255, 255, 0, "SodiumPersulfate", "Sodium Persulfate", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeOrange, 1, Arrays.asList(new MaterialStack(Sodium, 2), new MaterialStack(Sulfur, 2), new MaterialStack(Oxygen, 8))); + public static Materials SodiumSulfide = new Materials(719, TextureSet.SET_FLUID, 1.0F, 0, 2, 1, 255, 230, 128, 0, "SodiumSulfide", "Sodium Sulfide", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeOrange, 1, Arrays.asList(new MaterialStack(Sodium, 2), new MaterialStack(Sulfur, 1))); public static Materials HydricSulfide = new Materials(460, TextureSet.SET_FLUID, 1.0F, 0, 2, 16, 255, 255, 255, 0, "HydricSulfide", "Hydrogen Sulfide", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeOrange, 0, Arrays.asList(new MaterialStack(Hydrogen, 2), new MaterialStack(Sulfur, 1))); public static Materials OilHeavy = new Materials(730, TextureSet.SET_FLUID, 1.0F, 0, 0, 16, 10, 10, 10, 0, "OilHeavy", "Heavy Oil", 3, 32, -1, 0, false, false, 1, 1, 1, Dyes.dyeBlack); @@ -528,18 +529,36 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { public static Materials NatruralGas = new Materials(733, TextureSet.SET_FLUID, 1.0F, 0, 1, 16, 255, 255, 255, 0, "NatruralGas", "Natural Gas", 1, 15, -1, 0, false, false, 3, 1, 1, Dyes.dyeWhite); public static Materials SulfuricGas = new Materials(734, TextureSet.SET_FLUID, 1.0F, 0, 1, 16, 255, 255, 255, 0, "SulfuricGas", "Sulfuric Gas", 1, 20, -1, 0, false, false, 3, 1, 1, Dyes.dyeWhite); - public static Materials Gas = new Materials(735, TextureSet.SET_FLUID, 1.0F, 0, 1, 16, 255, 255, 255, 0, "Gas", "Refinery Gas", 1, 128, -1, 0, false, false, 3, 1, 1, Dyes.dyeWhite); + public static Materials Gas = new Materials(735, TextureSet.SET_FLUID, 1.0F, 0, 1, 16, 255, 255, 255, 0, "Gas", "Refinery Gas", 1, 128, -1, 0, false, false, 3, 1, 1, Dyes.dyeWhite).setCanBeCracked(true); public static Materials SulfuricNaphtha = new Materials(736, TextureSet.SET_FLUID, 1.0F, 0, 0, 16, 255, 255, 0, 0, "SulfuricNaphtha", "Sulfuric Naphtha", 1, 32, -1, 0, false, false, 1, 1, 1, Dyes.dyeYellow); public static Materials SulfuricLightFuel = new Materials(737, TextureSet.SET_FLUID,1.0F, 0, 0, 16, 255, 255, 0, 0, "SulfuricLightFuel", "Sulfuric Light Fuel", 0, 32, -1, 0, false, false, 1, 1, 1, Dyes.dyeYellow); public static Materials SulfuricHeavyFuel = new Materials(738, TextureSet.SET_FLUID,1.0F, 0, 0, 16, 255, 255, 0, 0, "SulfuricHeavyFuel", "Sulfuric Heavy Fuel", 3, 32, -1, 0, false, false, 1, 1, 1, Dyes.dyeBlack); - public static Materials Naphtha = new Materials(739, TextureSet.SET_FLUID, 1.0F, 0, 0, 16, 255, 255, 0, 0, "Naphtha", "Naphtha", 1, 256, -1, 0, false, false, 1, 1, 1, Dyes.dyeYellow); - public static Materials LightFuel = new Materials(740, TextureSet.SET_FLUID, 1.0F, 0, 0, 16, 255, 255, 0, 0, "LightFuel", "Light Fuel", 0, 256, -1, 0, false, false, 1, 1, 1, Dyes.dyeYellow); - public static Materials HeavyFuel = new Materials(741, TextureSet.SET_FLUID, 1.0F, 0, 0, 16, 255, 255, 0, 0, "HeavyFuel", "Heavy Fuel", 3, 192, -1, 0, false, false, 1, 1, 1, Dyes.dyeBlack); + public static Materials Naphtha = new Materials(739, TextureSet.SET_FLUID, 1.0F, 0, 0, 16, 255, 255, 0, 0, "Naphtha", "Naphtha", 1, 256, -1, 0, false, false, 1, 1, 1, Dyes.dyeYellow).setCanBeCracked(true); + public static Materials LightFuel = new Materials(740, TextureSet.SET_FLUID, 1.0F, 0, 0, 16, 255, 255, 0, 0, "LightFuel", "Light Fuel", 0, 256, -1, 0, false, false, 1, 1, 1, Dyes.dyeYellow).setCanBeCracked(true); + public static Materials HeavyFuel = new Materials(741, TextureSet.SET_FLUID, 1.0F, 0, 0, 16, 255, 255, 0, 0, "HeavyFuel", "Heavy Fuel", 3, 192, -1, 0, false, false, 1, 1, 1, Dyes.dyeBlack).setCanBeCracked(true); public static Materials LPG = new Materials(742, TextureSet.SET_FLUID, 1.0F, 0, 0, 16, 255, 255, 0, 0, "LPG", "LPG", 1, 256, -1, 0, false, false, 1, 1, 1, Dyes.dyeYellow); - public static Materials CrackedLightFuel = new Materials(743, TextureSet.SET_FLUID, 1.0F, 0, 0, 16, 255, 255, 0, 0, "CrackedLightFuel", "Cracked Light Fuel", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeYellow); - public static Materials CrackedHeavyFuel = new Materials(744, TextureSet.SET_FLUID, 1.0F, 0, 0, 16, 255, 255, 0, 0, "CrackedHeavyFuel", "Cracked Heavy Fuel", 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeBlack); - public static Materials Toluene = new MaterialBuilder(647, TextureSet.SET_FLUID, "Toluene").addCell().setRGB(80, 29, 5).setColor(Dyes.dyeBrown).setMaterialList(new MaterialStack(Carbon, 7), new MaterialStack(Hydrogen, 8)).addElectrolyzerRecipe().constructMaterial(); + public static Materials Brick = new MaterialBuilder(625, TextureSet.SET_DULL, "Brick").addDustItems().setRGB(155, 86, 67).setColor(Dyes.dyeBrown).setMaterialList(new MaterialStack(Aluminium, 4), new MaterialStack(Silicon, 3), new MaterialStack(Oxygen, 12)).constructMaterial(); + public static Materials Fireclay = new MaterialBuilder(626, TextureSet.SET_DULL, "Fireclay").addDustItems().setRGB(173, 160, 155).setColor(Dyes.dyeBrown).setMaterialList(new MaterialStack(Brick, 1)).constructMaterial(); + public static Materials BioDiesel = new MaterialBuilder(627, TextureSet.SET_FLUID, "Bio Diesel").addCell().addFluid().setRGB(255, 128, 0).setColor(Dyes.dyeOrange).setFuelType(MaterialBuilder.DIESEL).setFuelPower(192).constructMaterial(); + public static Materials NitrationMixture = new MaterialBuilder(628, TextureSet.SET_FLUID, "Nitration Mixture").addCell().setRGB(230, 226, 171).setColor(Dyes.dyeBrown).constructMaterial(); + public static Materials Glycerol = new MaterialBuilder(629, TextureSet.SET_FLUID, "Glycerol").addCell().addFluid().setRGB(135, 222, 135).setColor(Dyes.dyeLime).setFuelType(MaterialBuilder.SEMIFLUID).setFuelType(164).setMaterialList(new MaterialStack(Carbon, 3), new MaterialStack(Hydrogen, 8), new MaterialStack(Oxygen, 3)).addElectrolyzerRecipe().constructMaterial(); + public static Materials SodiumBisulfate = new MaterialBuilder(630, TextureSet.SET_FLUID, "Sodium Bisulfate").addDustItems().setRGB(0, 68, 85).setColor(Dyes.dyeBlue).setMaterialList(new MaterialStack(Sodium, 1), new MaterialStack(Hydrogen, 1), new MaterialStack(Sulfur, 1), new MaterialStack(Oxygen, 4)).constructMaterial(); + public static Materials PolyphenyleneSulfide = new MaterialBuilder(631, TextureSet.SET_DULL, "Polyphenylene Sulfide").addDustItems().addMetalItems().addToolHeadItems().addGearItems().setToolSpeed(3.0f).setDurability(32).setToolQuality(1).setRGB(170, 136, 0).setColor(Dyes.dyeBrown).setMaterialList(new MaterialStack(Carbon, 6), new MaterialStack(Hydrogen, 4), new MaterialStack(Sulfur, 1)).constructMaterial(); + public static Materials Dichlorobenzene = new MaterialBuilder(632, TextureSet.SET_FLUID, "Dichlorobenzene").addCell().addFluid().setRGB(0, 68, 85).setColor(Dyes.dyeBlue).setMaterialList(new MaterialStack(Carbon, 6), new MaterialStack(Hydrogen, 4), new MaterialStack(Chlorine, 2)).addElectrolyzerRecipe().constructMaterial(); + public static Materials Polystyrene = new MaterialBuilder(636, TextureSet.SET_DULL, "Polystyrene").addDustItems().addMetalItems().addToolHeadItems().addGearItems().setToolSpeed(3.0f).setDurability(32).setToolQuality(1).setRGB(190, 180, 170).setColor(Dyes.dyeLightGray).setMaterialList(new MaterialStack(Carbon, 8), new MaterialStack(Hydrogen, 8)).constructMaterial(); + public static Materials Styrene = new MaterialBuilder(637, TextureSet.SET_FLUID, "Styrene").addCell().addFluid().setRGB(210, 200, 190).setColor(Dyes.dyeBlack).setMaterialList(new MaterialStack(Carbon, 8), new MaterialStack(Hydrogen, 8)).addElectrolyzerRecipe().constructMaterial(); + public static Materials Isoprene = new MaterialBuilder(638, TextureSet.SET_FLUID, "Isoprene").addCell().addFluid().setRGB(20, 20, 20).setColor(Dyes.dyeBlack).setMaterialList(new MaterialStack(Carbon, 5), new MaterialStack(Hydrogen, 8)).addElectrolyzerRecipe().constructMaterial(); + public static Materials Tetranitromethane = new MaterialBuilder(639, TextureSet.SET_FLUID, "Tetranitromethane").addCell().addFluid().setRGB(15, 40, 40).setColor(Dyes.dyeBlack).setMaterialList(new MaterialStack(Carbon, 1), new MaterialStack(Nitrogen, 4), new MaterialStack(Oxygen, 8)).addElectrolyzerRecipe().constructMaterial(); + public static Materials Ethenone = new MaterialBuilder(641, TextureSet.SET_FLUID, "Ethenone").addCell().addGas().setRGB(20, 20, 70).setColor(Dyes.dyeBlack).setMaterialList(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 2), new MaterialStack(Oxygen, 1)).addElectrolyzerRecipe().constructMaterial(); + public static Materials Ethane = new MaterialBuilder(642, TextureSet.SET_FLUID, "Ethane").addCell().addGas().setRGB(200, 200, 255).setColor(Dyes.dyeLightBlue).setFuelType(MaterialBuilder.GAS).setFuelPower(168).setMaterialList(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 6)).addElectrolyzerRecipe().setCanBeCracked(true).constructMaterial(); + public static Materials Propane = new MaterialBuilder(643, TextureSet.SET_FLUID, "Propane").addCell().addGas().setRGB(250, 226, 80).setColor(Dyes.dyeYellow).setFuelType(MaterialBuilder.GAS).setFuelPower(232).setMaterialList(new MaterialStack(Carbon, 3), new MaterialStack(Hydrogen, 8)).addElectrolyzerRecipe().setCanBeCracked(true).constructMaterial(); + public static Materials Butane = new MaterialBuilder(644, TextureSet.SET_FLUID, "Butane").addCell().addGas().setRGB(182, 55, 30).setColor(Dyes.dyeOrange).setFuelType(MaterialBuilder.GAS).setFuelPower(296).setMaterialList(new MaterialStack(Carbon, 4), new MaterialStack(Hydrogen, 10)).addElectrolyzerRecipe().setCanBeCracked(true).constructMaterial(); + public static Materials Butene = new MaterialBuilder(645, TextureSet.SET_FLUID, "Butene").addCell().addGas().setRGB(207, 80, 5).setColor(Dyes.dyeOrange).setFuelType(MaterialBuilder.GAS).setFuelPower(256).setMaterialList(new MaterialStack(Carbon, 4), new MaterialStack(Hydrogen, 8)).addElectrolyzerRecipe().setCanBeCracked(true).constructMaterial(); + public static Materials Butadiene = new MaterialBuilder(646, TextureSet.SET_FLUID, "Butadiene").addCell().addGas().setRGB(232, 105, 0).setColor(Dyes.dyeOrange).setFuelType(MaterialBuilder.GAS).setFuelPower(206).setMaterialList(new MaterialStack(Carbon, 4), new MaterialStack(Hydrogen, 6)).addElectrolyzerRecipe().setCanBeCracked(true).constructMaterial(); + public static Materials RawStyreneButadieneRubber = new MaterialBuilder(634, TextureSet.SET_SHINY, "Raw Styrene-Butadiene Rubber").addDustItems().setRGB(84, 64, 61).setColor(Dyes.dyeGray).setMaterialList(new MaterialStack(Styrene, 1), new MaterialStack(Butadiene, 3)).constructMaterial(); + public static Materials StyreneButadieneRubber = new MaterialBuilder(635, TextureSet.SET_SHINY, "Styrene-Butadiene Rubber").addDustItems().addMetalItems().addToolHeadItems().addGearItems().setToolSpeed(3.0f).setDurability(128).setToolQuality(1).setRGB(33, 26, 24).setColor(Dyes.dyeBlack).setMaterialList(new MaterialStack(Styrene, 1), new MaterialStack(Butadiene, 3)).constructMaterial(); + public static Materials Toluene = new MaterialBuilder(647, TextureSet.SET_FLUID, "Toluene").addCell().setRGB(80, 29, 5).setColor(Dyes.dyeBrown).setFuelType(MaterialBuilder.GAS).setFuelPower(328).setMaterialList(new MaterialStack(Carbon, 7), new MaterialStack(Hydrogen, 8)).addElectrolyzerRecipe().constructMaterial(); public static Materials Epichlorohydrin = new MaterialBuilder(648, TextureSet.SET_FLUID, "Epichlorohydrin").addCell().setRGB(80, 29, 5).setColor(Dyes.dyeBrown).setMaterialList(new MaterialStack(Carbon, 3), new MaterialStack(Hydrogen, 5), new MaterialStack(Chlorine, 1), new MaterialStack(Oxygen, 1)).addElectrolyzerRecipe().constructMaterial(); public static Materials PolyvinylChloride = new MaterialBuilder(649, TextureSet.SET_DULL, "Polyvinyl Chloride").addDustItems().addMetalItems().addToolHeadItems().addGearItems().setToolSpeed(3.0f).setDurability(32).setToolQuality(1).setRGB(215, 230, 230).setColor(Dyes.dyeLightGray).setMaterialList(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 3), new MaterialStack(Chlorine, 1)).constructMaterial(); public static Materials VinylChloride = new MaterialBuilder(650, TextureSet.SET_FLUID, "Vinyl Chloride").addCell().addGas().setRGB(225, 240, 240).setColor(Dyes.dyeLightGray).setMaterialList(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 3), new MaterialStack(Chlorine, 1)).addElectrolyzerRecipe().constructMaterial(); @@ -562,22 +581,22 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { public static Materials AceticAcid = new MaterialBuilder(670, TextureSet.SET_FLUID, "Acetic Acid").addCell().addFluid().setRGB(200, 180, 160).setColor(Dyes.dyeWhite).setMaterialList(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 4), new MaterialStack(Oxygen, 2)).addElectrolyzerRecipe().constructMaterial(); public static Materials CalciumAcetate = new MaterialBuilder(671, TextureSet.SET_RUBY, "Calcium Acetate").addDustItems().addCell().setRGB(255, 255, 255).setColor(Dyes.dyeWhite).setMaterialList(new MaterialStack(Calcium, 1), new MaterialStack(AceticAcid, 2)).addElectrolyzerRecipe().constructMaterial(); public static Materials Acetone = new MaterialBuilder(672, TextureSet.SET_FLUID, "Acetone").addCell().addFluid().setRGB(175, 175, 175).setColor(Dyes.dyeWhite).setMaterialList(new MaterialStack(Carbon, 3), new MaterialStack(Hydrogen, 6), new MaterialStack(Oxygen, 1)).addElectrolyzerRecipe().constructMaterial(); - public static Materials Methanol = new MaterialBuilder(673, TextureSet.SET_FLUID, "Methanol").addCell().addFluid().setRGB(170, 136, 0).setColor(Dyes.dyeBrown).setFuelPower(96).setMaterialList(new MaterialStack(Carbon, 1), new MaterialStack(Hydrogen, 4), new MaterialStack(Oxygen, 1)).addElectrolyzerRecipe().constructMaterial(); - public static Materials CarbonMonoxide = new MaterialBuilder(674, TextureSet.SET_FLUID, "Carbon Monoxide").addCell().addGas().setRGB(14, 72, 128).setColor(Dyes.dyeBrown).setFuelType(MaterialBuilder.GAS).setFuelPower(32).setMaterialList(new MaterialStack(Carbon, 1), new MaterialStack(Oxygen, 1)).addElectrolyzerRecipe().constructMaterial(); + public static Materials Methanol = new MaterialBuilder(673, TextureSet.SET_FLUID, "Methanol").addCell().addFluid().setRGB(170, 136, 0).setColor(Dyes.dyeBrown).setFuelPower(84).setMaterialList(new MaterialStack(Carbon, 1), new MaterialStack(Hydrogen, 4), new MaterialStack(Oxygen, 1)).addElectrolyzerRecipe().constructMaterial(); + public static Materials CarbonMonoxide = new MaterialBuilder(674, TextureSet.SET_FLUID, "Carbon Monoxide").addCell().addGas().setRGB(14, 72, 128).setColor(Dyes.dyeBrown).setFuelType(MaterialBuilder.GAS).setFuelPower(24).setMaterialList(new MaterialStack(Carbon, 1), new MaterialStack(Oxygen, 1)).addElectrolyzerRecipe().constructMaterial(); public static Materials MetalMixture = new MaterialBuilder(676, TextureSet.SET_METALLIC, "Metal Mixture").addDustItems().setRGB(80, 45, 22).setColor(Dyes.dyeBrown).constructMaterial(); - public static Materials Ethylene = new MaterialBuilder(677, TextureSet.SET_FLUID, "Ethylene").addCell().addGas().setRGB(225, 225, 225).setColor(Dyes.dyeWhite).setFuelType(MaterialBuilder.GAS).setFuelPower(288).setMaterialList(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 4)).addElectrolyzerRecipe().constructMaterial(); - public static Materials Propene = new MaterialBuilder(678, TextureSet.SET_FLUID, "Propene").addCell().addGas().setRGB(255, 221, 85).setColor(Dyes.dyeYellow).setFuelType(MaterialBuilder.GAS).setFuelPower(144).setMaterialList(new MaterialStack(Carbon, 3), new MaterialStack(Hydrogen, 6)).addElectrolyzerRecipe().constructMaterial(); + public static Materials Ethylene = new MaterialBuilder(677, TextureSet.SET_FLUID, "Ethylene").addCell().addGas().setRGB(225, 225, 225).setColor(Dyes.dyeWhite).setFuelType(MaterialBuilder.GAS).setFuelPower(128).setMaterialList(new MaterialStack(Carbon, 2), new MaterialStack(Hydrogen, 4)).addElectrolyzerRecipe().setCanBeCracked(true).constructMaterial(); + public static Materials Propene = new MaterialBuilder(678, TextureSet.SET_FLUID, "Propene").addCell().addGas().setRGB(255, 221, 85).setColor(Dyes.dyeYellow).setFuelType(MaterialBuilder.GAS).setFuelPower(192).setMaterialList(new MaterialStack(Carbon, 3), new MaterialStack(Hydrogen, 6)).addElectrolyzerRecipe().setCanBeCracked(true).constructMaterial(); public static Materials VinylAcetate = new MaterialBuilder(679, TextureSet.SET_FLUID, "Vinyl Acetate").addCell().addFluid().setRGB(255, 179, 128).setColor(Dyes.dyeOrange).setMaterialList(new MaterialStack(Carbon, 4), new MaterialStack(Hydrogen, 6), new MaterialStack(Oxygen, 2)).addElectrolyzerRecipe().constructMaterial(); public static Materials PolyvinylAcetate = new MaterialBuilder(680, TextureSet.SET_FLUID, "Polyvinyl Acetate").addCell().addFluid().setRGB(255, 153, 85).setColor(Dyes.dyeOrange).setMaterialList(new MaterialStack(Carbon, 4), new MaterialStack(Hydrogen, 6), new MaterialStack(Oxygen, 2)).constructMaterial(); public static Materials MethylAcetate = new MaterialBuilder(681, TextureSet.SET_FLUID, "Methyl Acetate").addCell().addFluid().setRGB(238, 198, 175).setColor(Dyes.dyeOrange).setMaterialList(new MaterialStack(Carbon, 3), new MaterialStack(Hydrogen, 6), new MaterialStack(Oxygen, 2)).addElectrolyzerRecipe().constructMaterial(); public static Materials AllylChloride = new MaterialBuilder(682, TextureSet.SET_FLUID, "Allyl Chloride").addCell().addFluid().setRGB(135, 222, 170).setColor(Dyes.dyeCyan).setMaterialList(new MaterialStack(Carbon, 3), new MaterialStack(Hydrogen, 5), new MaterialStack(Chlorine, 1)).addElectrolyzerRecipe().constructMaterial(); public static Materials HydrochloricAcid = new MaterialBuilder(683, TextureSet.SET_FLUID, "Hydrochloric Acid").setName("HydrochloricAcid_GT5U").addCell().addFluid().setRGB(183, 200, 196).setColor(Dyes.dyeLightGray).setMaterialList(new MaterialStack(Hydrogen, 1), new MaterialStack(Chlorine, 1)).addElectrolyzerRecipe().constructMaterial(); public static Materials HypochlorousAcid = new MaterialBuilder(684, TextureSet.SET_FLUID, "Hypochlorous Acid").addCell().addFluid().setRGB(111, 138, 145).setColor(Dyes.dyeGray).setMaterialList(new MaterialStack(Hydrogen, 1), new MaterialStack(Chlorine, 1), new MaterialStack(Oxygen, 1)).addElectrolyzerRecipe().constructMaterial(); - public static Materials SodiumHydroxide = new MaterialBuilder(685, TextureSet.SET_FLUID, "Sodium Hydroxide").setName("SodiumHydroxide_GT5U").addCell().addFluid().setRGB(0, 51, 128).setColor(Dyes.dyeBlue).setMaterialList(new MaterialStack(Sodium, 1), new MaterialStack(Oxygen, 1), new MaterialStack(Hydrogen, 1)).addElectrolyzerRecipe().constructMaterial(); - public static Materials Benzene = new MaterialBuilder(686, TextureSet.SET_FLUID, "Benzene").addCell().addFluid().setRGB(26, 26, 26).setColor(Dyes.dyeGray).setMaterialList(new MaterialStack(Carbon, 6), new MaterialStack(Hydrogen, 6)).addElectrolyzerRecipe().constructMaterial(); - public static Materials Phenol = new MaterialBuilder(687, TextureSet.SET_FLUID, "Phenol").addCell().addFluid().setRGB(120, 68, 33).setColor(Dyes.dyeBrown).setMaterialList(new MaterialStack(Carbon, 6), new MaterialStack(Hydrogen, 6), new MaterialStack(Oxygen, 1)).addElectrolyzerRecipe().constructMaterial(); + public static Materials SodiumHydroxide = new MaterialBuilder(685, TextureSet.SET_DULL, "Sodium Hydroxide").setName("SodiumHydroxide_GT5U").addDustItems().setRGB(0, 51, 128).setColor(Dyes.dyeBlue).setMaterialList(new MaterialStack(Sodium, 1), new MaterialStack(Oxygen, 1), new MaterialStack(Hydrogen, 1)).addElectrolyzerRecipe().constructMaterial(); + public static Materials Benzene = new MaterialBuilder(686, TextureSet.SET_FLUID, "Benzene").addCell().addFluid().setRGB(26, 26, 26).setColor(Dyes.dyeGray).setFuelType(MaterialBuilder.GAS).setFuelPower(288).setMaterialList(new MaterialStack(Carbon, 6), new MaterialStack(Hydrogen, 6)).addElectrolyzerRecipe().constructMaterial(); + public static Materials Phenol = new MaterialBuilder(687, TextureSet.SET_FLUID, "Phenol").addCell().addFluid().setRGB(120, 68, 33).setColor(Dyes.dyeBrown).setFuelType(MaterialBuilder.GAS).setFuelPower(288).setMaterialList(new MaterialStack(Carbon, 6), new MaterialStack(Hydrogen, 6), new MaterialStack(Oxygen, 1)).addElectrolyzerRecipe().constructMaterial(); public static Materials Cumene = new MaterialBuilder(688, TextureSet.SET_FLUID, "Cumene").addCell().addFluid().setRGB(85, 34, 0).setColor(Dyes.dyeBrown).setMaterialList(new MaterialStack(Carbon, 9), new MaterialStack(Hydrogen, 12)).addElectrolyzerRecipe().constructMaterial(); - public static Materials PhosphoricAcid = new MaterialBuilder(689, TextureSet.SET_FLUID, "Phosphoric Acid").setName("PhosphoricAcid_GT5U").addCell().addFluid().setRGB(220, 220, 0).setColor(Dyes.dyeYellow).setMaterialList(new MaterialStack(Hydrogen, 1), new MaterialStack(Phosphor, 1), new MaterialStack(Oxygen, 4)).addElectrolyzerRecipe().constructMaterial(); + public static Materials PhosphoricAcid = new MaterialBuilder(689, TextureSet.SET_FLUID, "Phosphoric Acid").setName("PhosphoricAcid_GT5U").addCell().addFluid().setRGB(220, 220, 0).setColor(Dyes.dyeYellow).setMaterialList(new MaterialStack(Hydrogen, 3), new MaterialStack(Phosphor, 1), new MaterialStack(Oxygen, 4)).addElectrolyzerRecipe().constructMaterial(); public static Materials SolderingAlloy = new Materials(314, TextureSet.SET_DULL, 1.0F, 0, 1, 1|2, 220, 220, 230, 0, "SolderingAlloy", "Soldering Alloy", 0, 0, 400, 400, false, false, 1, 1, 1, Dyes.dyeWhite, 2, Arrays.asList(new MaterialStack(Tin, 9), new MaterialStack(Antimony, 1))); public static Materials GalliumArsenide = new Materials(980, TextureSet.SET_DULL, 1.0F, 0, 1, 1|2, 160, 160, 160, 0, "GalliumArsenide", "Gallium Arsenide", 0, 0, -1, 1200, true, false, 1, 1, 1, Dyes.dyeGray, 2, Arrays.asList(new MaterialStack(Arsenic, 1), new MaterialStack(Gallium, 1))); @@ -644,7 +663,7 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { public static Materials DamascusSteel = new Materials( 335, TextureSet.SET_METALLIC,8.0F, 1280, 2, 1|2|64, 110, 110, 110, 0, "DamascusSteel", "Damascus Steel", 0, 0, 2000, 1500, true, false, 4, 1, 1, Dyes.dyeGray, 2, Arrays.asList(new MaterialStack(Steel, 1))); public static Materials TungstenSteel = new Materials( 316, TextureSet.SET_METALLIC,8.0F, 2560, 4, 1|2|64|128, 100, 100, 160, 0, "TungstenSteel", "Tungstensteel", 0, 0, -1, 3000, true, false, 4, 1, 1, Dyes.dyeBlue, 2, Arrays.asList(new MaterialStack(Steel, 1), new MaterialStack(Tungsten, 1))); public static Materials NitroCoalFuel = new Materials(-1, TextureSet.SET_FLUID, 1.0F, 0, 2, 16, 50, 70, 50, 0, "NitroCoalFuel", "Nitro-Coalfuel", 0, 48, -1, 0, false, false, 1, 1, 1, Dyes.dyeBlack, 0, Arrays.asList(new MaterialStack(Glyceryl, 1), new MaterialStack(CoalFuel, 4))); - public static Materials NitroFuel = new Materials( 709, TextureSet.SET_FLUID, 1.0F, 0, 2, 16, 200, 255, 0, 0, "NitroFuel", "Nitro-Diesel", 0, 512, -1, 0, false, false, 1, 1, 1, Dyes.dyeLime, 0, Arrays.asList(new MaterialStack(Glyceryl, 1), new MaterialStack(Fuel, 4))); + public static Materials NitroFuel = new Materials( 709, TextureSet.SET_FLUID, 1.0F, 0, 2, 16, 200, 255, 0, 0, "NitroFuel", "Cetane-Boosted Diesel", 0, 512, -1, 0, false, false, 1, 1, 1, Dyes.dyeLime); public static Materials AstralSilver = new Materials(333, TextureSet.SET_SHINY, 10.0F, 64, 2, 1 | 2 | 8 | 64, 230, 230, 255, 0, "AstralSilver", "Astral Silver", 0, 0, -1, 0, false, false, 4, 3, 2, Dyes.dyeWhite, 2, Arrays.asList(new MaterialStack(Materials.Silver, 2), new MaterialStack(Materials.Magic, 1))); public static Materials Midasium = new Materials(332, TextureSet.SET_SHINY, 12.0F, 64, 2, 1 | 2 | 8 | 64, 255, 200, 40, 0, "Midasium", "Midasium", 0, 0, -1, 0, false, false, 4, 3, 2, Dyes.dyeOrange, 2, Arrays.asList(new MaterialStack(Materials.Gold, 2), new MaterialStack(Materials.Magic, 1))); public static Materials Mithril = new Materials(331, TextureSet.SET_SHINY, 14.0F, 64, 3, 1|2|64, 255, 255, 210, 0, "Mithril", "Mithril", 0, 0, -1, 0, false, false, 4, 3, 2, Dyes.dyeLightBlue, 2, Arrays.asList(new MaterialStack(Materials.Platinum, 2), new MaterialStack(Materials.Magic, 1))); @@ -708,6 +727,7 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { public static Materials HSSG = new Materials( 372, TextureSet.SET_METALLIC, 10.0F, 4000, 3, 1|2|64|128, 153, 153, 0, 0, "HSSG", "HSS-G", 0, 0, 4500, 4500, true, false, 4, 1, 1, Dyes.dyeYellow, 2, Arrays.asList(new MaterialStack(TungstenSteel, 5), new MaterialStack(Chrome, 1), new MaterialStack(Molybdenum, 2), new MaterialStack(Vanadium, 1))); public static Materials HSSE = new Materials( 373, TextureSet.SET_METALLIC, 10.0F, 5120, 4, 1|2|64|128, 51, 102, 0, 0, "HSSE", "HSS-E", 0, 0, 5400, 5400, true, false, 4, 1, 1, Dyes.dyeBlue, 2, Arrays.asList(new MaterialStack(HSSG, 6), new MaterialStack(Cobalt, 1), new MaterialStack(Manganese, 1), new MaterialStack(Silicon, 1))); public static Materials HSSS = new Materials( 374, TextureSet.SET_METALLIC, 14.0F, 3000, 4, 1|2|64|128, 102, 0, 51, 0, "HSSS", "HSS-S", 0, 0, 5400, 5400, true, false, 4, 1, 1, Dyes.dyeRed, 2, Arrays.asList(new MaterialStack(HSSG, 6), new MaterialStack(Iridium, 2), new MaterialStack(Osmium, 1))); + public static Materials DilutedSulfuricAcid = new MaterialBuilder(640, TextureSet.SET_FLUID, "Diluted Sulfuric Acid").addCell().addFluid().setRGB(192, 120, 32).setColor(Dyes.dyeOrange).setMaterialList(new MaterialStack(SulfuricAcid, 1)).constructMaterial(); /** * Materials which are renamed automatically @@ -727,6 +747,8 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { @Deprecated public static Materials Beryl = new Materials(Emerald, false); @Deprecated public static Materials BlackGranite = new Materials(GraniteBlack, false); @Deprecated public static Materials CalciumCarbonate = new Materials(Calcite, false); + @Deprecated public static Materials CrackedLightFuel = new Materials(LightFuel, false); + @Deprecated public static Materials CrackedHeavyFuel = new Materials(HeavyFuel, false); @Deprecated public static Materials CreosoteOil = new Materials(Creosote, false); @Deprecated public static Materials Chromium = new Materials(Chrome, false); @Deprecated public static Materials Diesel = new Materials(Fuel, false); @@ -791,7 +813,8 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { public boolean mHasParentMod = true, mHasPlasma = false, mHasGas = false, mCustomOre = false; public Fluid mSolid = null, mFluid = null, mGas = null, mPlasma = null; - private boolean hasCorrespondingFluid = false, hasCorrespondingGas = false; + private boolean hasCorrespondingFluid = false, hasCorrespondingGas = false, canBeCracked = false; + private Fluid[] hydroCrackedFluids = new Fluid[3], steamCrackedFluids = new Fluid[3]; /** * This Fluid is used as standard Unit for Molten Materials. 1296 is a Molten Block, that means 144 is one Material Unit worth of fluid. @@ -808,7 +831,14 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { AnnealedCopper .mOreReRegistrations.add(AnyCopper ); Bronze .mOreReRegistrations.add(AnyBronze ); - + + Rubber .mOreReRegistrations.add(AnyRubber); + StyreneButadieneRubber .mOreReRegistrations.add(AnyRubber); + Silicone .mOreReRegistrations.add(AnyRubber); + + StyreneButadieneRubber .mOreReRegistrations.add(AnySyntheticRubber); + Silicone .mOreReRegistrations.add(AnySyntheticRubber); + Peanutwood .setMaceratingInto(Wood ); WoodSealed .setMaceratingInto(Wood ); NetherBrick .setMaceratingInto(Netherrack ); @@ -884,7 +914,9 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { Plastic .setEnchantmentForTools(Enchantment.knockback, 1); PolyvinylChloride .setEnchantmentForTools(Enchantment.knockback, 1); + Polystyrene .setEnchantmentForTools(Enchantment.knockback, 1); Rubber .setEnchantmentForTools(Enchantment.knockback, 2); + StyreneButadieneRubber .setEnchantmentForTools(Enchantment.knockback, 2); InfusedAir .setEnchantmentForTools(Enchantment.knockback, 2); IronWood .setEnchantmentForTools(Enchantment.fortune, 1); @@ -1191,8 +1223,10 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { Lignite.add(SubTag.FLAMMABLE, SubTag.NO_SMELTING, SubTag.NO_SMASHING, SubTag.MORTAR_GRINDABLE); Rubber.add(SubTag.FLAMMABLE, SubTag.NO_SMASHING, SubTag.BOUNCY, SubTag.STRETCHY); + StyreneButadieneRubber.add(SubTag.FLAMMABLE, SubTag.NO_SMASHING, SubTag.BOUNCY, SubTag.STRETCHY); Plastic.add(SubTag.FLAMMABLE, SubTag.NO_SMASHING, SubTag.BOUNCY); PolyvinylChloride.add(SubTag.FLAMMABLE, SubTag.NO_SMASHING, SubTag.BOUNCY); + Polystyrene.add(SubTag.FLAMMABLE, SubTag.NO_SMASHING, SubTag.BOUNCY); Silicone.add(SubTag.FLAMMABLE, SubTag.NO_SMASHING, SubTag.BOUNCY, SubTag.STRETCHY); TNT.add(SubTag.FLAMMABLE, SubTag.EXPLOSIVE, SubTag.NO_SMELTING, SubTag.NO_SMASHING); @@ -1217,7 +1251,7 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { Teslatite.add(SubTag.STONE, SubTag.NO_SMASHING, SubTag.UNBURNABLE, SubTag.SMELTING_TO_FLUID); Netherrack.add(SubTag.STONE, SubTag.NO_SMASHING, SubTag.UNBURNABLE, SubTag.FLAMMABLE); Stone.add(SubTag.STONE, SubTag.NO_SMASHING, SubTag.NO_RECYCLING); - Brick.add(SubTag.STONE, SubTag.NO_SMASHING); + Brick.add(SubTag.STONE, SubTag.NO_SMASHING, SubTag.NO_SMELTING); NetherBrick.add(SubTag.STONE, SubTag.NO_SMASHING); Endstone.add(SubTag.STONE, SubTag.NO_SMASHING); Marble.add(SubTag.STONE, SubTag.NO_SMASHING); @@ -1945,11 +1979,9 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { return MATERIALS_MAP.values(); } - public boolean hasCorrespondingFluid() { return hasCorrespondingFluid; } - public Materials setHasCorrespondingFluid(boolean hasCorrespondingFluid) { this.hasCorrespondingFluid = hasCorrespondingFluid; @@ -1965,6 +1997,15 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { return this; } + public boolean canBeCracked() { + return canBeCracked; + } + + public Materials setCanBeCracked(boolean canBeCracked) { + this.canBeCracked = canBeCracked; + return this; + } + public int getLiquidTemperature() { return mMeltingPoint == 0 ? 295 : mMeltingPoint; } @@ -1974,6 +2015,58 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { return this; } + public Materials setHydroCrackedFluids(Fluid[] hydroCrackedFluids) { + this.hydroCrackedFluids = hydroCrackedFluids; + return this; + } + + public FluidStack getLightlyHydroCracked(int amount) { + if (hydroCrackedFluids[0] == null) { + return null; + } + return new FluidStack(hydroCrackedFluids[0], amount); + } + + public FluidStack getModeratelyHydroCracked(int amount) { + if (hydroCrackedFluids[0] == null) { + return null; + } + return new FluidStack(hydroCrackedFluids[1], amount); + } + + public FluidStack getSeverelyHydroCracked(int amount) { + if (hydroCrackedFluids[0] == null) { + return null; + } + return new FluidStack(hydroCrackedFluids[2], amount); + } + + public Materials setSteamCrackedFluids(Fluid[] steamCrackedFluids) { + this.steamCrackedFluids = steamCrackedFluids; + return this; + } + + public FluidStack getLightlySteamCracked(int amount) { + if (hydroCrackedFluids[0] == null) { + return null; + } + return new FluidStack(steamCrackedFluids[0], amount); + } + + public FluidStack getModeratelySteamCracked(int amount) { + if (hydroCrackedFluids[0] == null) { + return null; + } + return new FluidStack(steamCrackedFluids[1], amount); + } + + public FluidStack getSeverelySteamCracked(int amount) { + if (hydroCrackedFluids[0] == null) { + return null; + } + return new FluidStack(steamCrackedFluids[2], amount); + } + public int getGasTemperature() { return mGasTemp == 0 ? 295 : mMeltingPoint; } @@ -2003,4 +2096,16 @@ public class Materials implements IColorModulationContainer, ISubTagContainer { return GT_OreDictUnificator.get(OrePrefixes.gem, this, amount); } -}
\ No newline at end of file + public ItemStack getIngots(int amount){ + return GT_OreDictUnificator.get(OrePrefixes.ingot, this, amount); + } + + public ItemStack getBlocks(int amount){ + return GT_OreDictUnificator.get(OrePrefixes.block, this, amount); + } + + public ItemStack getPlates(int amount){ + return GT_OreDictUnificator.get(OrePrefixes.plate, this, amount); + } + +} diff --git a/src/main/java/gregtech/api/enums/OrePrefixes.java b/src/main/java/gregtech/api/enums/OrePrefixes.java index 5f069265d9..c3aef3336a 100644 --- a/src/main/java/gregtech/api/enums/OrePrefixes.java +++ b/src/main/java/gregtech/api/enums/OrePrefixes.java @@ -390,7 +390,6 @@ public enum OrePrefixes { cell.mNotGeneratedItems.add(Materials.Lava); cell.mNotGeneratedItems.add(Materials.ConstructionFoam); cell.mNotGeneratedItems.add(Materials.UUMatter); - cell.mNotGeneratedItems.add(Materials.BioFuel); cell.mNotGeneratedItems.add(Materials.CoalFuel); bucket.mNotGeneratedItems.add(Materials.Empty); bucket.mNotGeneratedItems.add(Materials.Lava); @@ -692,14 +691,16 @@ public enum OrePrefixes { aMaterial == Materials.Osmium || aMaterial == Materials.Iridium || aMaterial == Materials.Bronze || aMaterial == Materials.WroughtIron || aMaterial == Materials.Steel || aMaterial == Materials.StainlessSteel || aMaterial == Materials.PigIron || aMaterial == Materials.TungstenSteel || aMaterial == Materials.Rubber || aMaterial == Materials.HSSE || aMaterial == Materials.Neutronium || aMaterial == Materials.HSSG || aMaterial == Materials.Aluminium || - aMaterial == Materials.Invar || aMaterial == Materials.Brass || aMaterial == Materials.Paper || aMaterial == Materials.Silicone)) + aMaterial == Materials.Invar || aMaterial == Materials.Brass || aMaterial == Materials.Paper || aMaterial == Materials.Silicone || aMaterial == Materials.StyreneButadieneRubber)) ring.mDisabledItems.add(aMaterial); //Foil if (!enableUnusedFoil && !(aMaterial == Materials.Zinc || aMaterial == Materials.Aluminium || aMaterial == Materials.Silicon || aMaterial == Materials.Gold || aMaterial == Materials.Electrum || aMaterial == Materials.Platinum || aMaterial == Materials.Osmiridium || aMaterial == Materials.Osmium || aMaterial == Materials.AnnealedCopper || aMaterial == Materials.Steel || aMaterial == Materials.Copper || aMaterial == Materials.YttriumBariumCuprate || aMaterial == Materials.VanadiumGallium || aMaterial == Materials.NiobiumTitanium || aMaterial == Materials.Naquadah || aMaterial == Materials.Manganese || - aMaterial == Materials.Plastic || aMaterial == Materials.Silicone)) + aMaterial == Materials.Plastic || aMaterial == Materials.Silicone || aMaterial == Materials.PolyvinylChloride || aMaterial == Materials.PolyphenyleneSulfide || + aMaterial == Materials.Nichrome || aMaterial == Materials.BlackSteel || aMaterial == Materials.Titanium || aMaterial == Materials.TungstenSteel || + aMaterial == Materials.Tungsten || aMaterial == Materials.HSSG || aMaterial == Materials.NaquadahAlloy || aMaterial == Materials.Duranium)) foil.mDisabledItems.add(aMaterial); //Fine Wire if (!enableUnusedFineWires && !(aMaterial == Materials.Steel || aMaterial == Materials.AnnealedCopper || aMaterial == Materials.Platinum || aMaterial == Materials.Osmium || @@ -932,11 +933,14 @@ public enum OrePrefixes { case "Rubber": case "Polyethylene": case "Epoxid": + case "Polydimethylsiloxane": case "Silicone": case "Polysiloxane": case "Polycaprolactam": case "Polytetrafluoroethylene": case "PolyvinylChloride": + case "Polystyrene": + case "StyreneButadieneRubber": if (name().startsWith("dust")) return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + " Pulp"; if (name().startsWith("plate")) return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + " Sheet"; if (name().startsWith("ingot")) return mLocalizedMaterialPre + aMaterial.mDefaultLocalName + " Bar"; diff --git a/src/main/java/gregtech/api/enums/Textures.java b/src/main/java/gregtech/api/enums/Textures.java index d70f1023d3..3154c4dc76 100644 --- a/src/main/java/gregtech/api/enums/Textures.java +++ b/src/main/java/gregtech/api/enums/Textures.java @@ -36,7 +36,8 @@ public class Textures { MACHINE_CASING_GEARBOX_BRONZE, MACHINE_CASING_GEARBOX_STEEL, MACHINE_CASING_GEARBOX_TITANIUM, MACHINE_CASING_GEARBOX_TUNGSTENSTEEL, MACHINE_CASING_DATA_DRIVE, MACHINE_CASING_CONTAINMENT_FIELD, MACHINE_CASING_ASSEMBLER, MACHINE_CASING_PROCESSOR, MACHINE_CASING_STRIPES_A, MACHINE_CASING_STRIPES_B, MACHINE_CASING_RADIOACTIVEHAZARD, MACHINE_CASING_BIOHAZARD, MACHINE_CASING_EXPLOSIONHAZARD, MACHINE_CASING_FIREHAZARD, MACHINE_CASING_ACIDHAZARD, MACHINE_CASING_MAGICHAZARD, MACHINE_CASING_FROSTHAZARD, MACHINE_CASING_NOISEHAZARD, MACHINE_CASING_GRATE, MACHINE_CASING_VENT, - MACHINE_CASING_RADIATIONPROOF, MACHINE_CASING_FIREBOX_BRONZE, MACHINE_CASING_FIREBOX_STEEL, MACHINE_CASING_FIREBOX_TUNGSTENSTEEL, MACHINE_CASING_ENGINE_INTAKE, MACHINE_CASING_CHEMICALLY_INERT, MACHINE_COIL_CUPRONICKEL, + MACHINE_CASING_RADIATIONPROOF, MACHINE_CASING_FIREBOX_BRONZE, MACHINE_CASING_FIREBOX_STEEL, MACHINE_CASING_FIREBOX_TUNGSTENSTEEL, MACHINE_CASING_ENGINE_INTAKE, MACHINE_CASING_CHEMICALLY_INERT, MACHINE_COIL_CUPRONICKEL, + MACHINE_CASING_DENSEBRICKS, MACHINE_CASING_BRICKEDBLASTFURNACE_ACTIVE, MACHINE_CASING_BRICKEDBLASTFURNACE_INACTIVE, MACHINE_COIL_KANTHAL, MACHINE_COIL_NICHROME, MACHINE_COIL_TUNGSTENSTEEL, MACHINE_COIL_HSSG, MACHINE_COIL_NAQUADAH, MACHINE_COIL_NAQUADAHALLOY, BOILER_SOLAR, BOILER_FRONT, BOILER_FRONT_ACTIVE, BOILER_LAVA_FRONT, BOILER_LAVA_FRONT_ACTIVE, NAQUADAH_REACTOR_SOLID_BACK, NAQUADAH_REACTOR_SOLID_FRONT, NAQUADAH_REACTOR_SOLID_SIDE, NAQUADAH_REACTOR_SOLID_BOTTOM, NAQUADAH_REACTOR_SOLID_TOP, NAQUADAH_REACTOR_SOLID_BACK_ACTIVE, NAQUADAH_REACTOR_SOLID_FRONT_ACTIVE, NAQUADAH_REACTOR_SOLID_SIDE_ACTIVE, NAQUADAH_REACTOR_SOLID_BOTTOM_ACTIVE, @@ -50,7 +51,7 @@ public class Textures { OVERLAY_LOCKER_002, OVERLAY_LOCKER_003, OVERLAY_LOCKER_004, OVERLAY_LOCKER_005, OVERLAY_LOCKER_006, OVERLAY_LOCKER_007, OVERLAY_LOCKER_008, OVERLAY_LOCKER_009, OVERLAY_LOCKER_010, OVERLAY_LOCKER_011, OVERLAY_LOCKER_012, OVERLAY_LOCKER_013, OVERLAY_LENS, OVERLAY_PIPE, OVERLAY_PIPE_IN, OVERLAY_PIPE_OUT, OVERLAY_MUFFLER, OVERLAY_CONTROLLER, OVERLAY_ACTIVITYDETECTOR, OVERLAY_ENERGYDETECTOR, OVERLAY_FLUIDDETECTOR, OVERLAY_ITEMDETECTOR, OVERLAY_FUSION1, OVERLAY_FUSION2, OVERLAY_FUSION3, OVERLAY_SCREEN, OVERLAY_QTANK, OVERLAY_QCHEST, OVERLAY_SHUTTER, - OVERLAY_CLOSET, OVERLAY_DUCTTAPE, OVERLAY_MAINTENANCE, OVERLAY_CONVEYOR, OVERLAY_PUMP, OVERLAY_ARM, OVERLAY_DRAIN, OVERLAY_CRAFTING, OVERLAY_ENERGY_IN, OVERLAY_ENERGY_OUT, + OVERLAY_CLOSET, OVERLAY_DUCTTAPE, OVERLAY_MAINTENANCE, OVERLAY_DATA_ACCESS, OVERLAY_CONVEYOR, OVERLAY_PUMP, OVERLAY_ARM, OVERLAY_DRAIN, OVERLAY_CRAFTING, OVERLAY_ENERGY_IN, OVERLAY_ENERGY_OUT, OVERLAY_ENERGY_IN_MULTI, OVERLAY_ENERGY_OUT_MULTI, OVERLAY_FRONT_LARGE_BOILER, OVERLAY_FRONT_LARGE_BOILER_ACTIVE, OVERLAY_FRONT_VACUUM_FREEZER, OVERLAY_FRONT_VACUUM_FREEZER_ACTIVE, OVERLAY_FRONT_MULTI_SMELTER, OVERLAY_FRONT_MULTI_SMELTER_ACTIVE, OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE, OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ACTIVE, OVERLAY_FRONT_IMPLOSION_COMPRESSOR, OVERLAY_FRONT_IMPLOSION_COMPRESSOR_ACTIVE, OVERLAY_TOP_POTIONBREWER, OVERLAY_TOP_REPLICATOR, OVERLAY_TOP_MASSFAB, OVERLAY_TOP_STEAM_HAMMER, OVERLAY_TOP_STEAM_FURNACE, OVERLAY_TOP_STEAM_ALLOY_SMELTER, diff --git a/src/main/java/gregtech/api/gui/GT_GUIContainer_1by1.java b/src/main/java/gregtech/api/gui/GT_GUIContainer_1by1.java index 29cc403c71..b33efa52a0 100644 --- a/src/main/java/gregtech/api/gui/GT_GUIContainer_1by1.java +++ b/src/main/java/gregtech/api/gui/GT_GUIContainer_1by1.java @@ -13,6 +13,11 @@ public class GT_GUIContainer_1by1 extends GT_GUIContainerMetaTile_Machine { super(new GT_Container_1by1(aInventoryPlayer, aTileEntity), RES_PATH_GUI + "1by1.png"); mName = aName; } + + public GT_GUIContainer_1by1(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, String aName, String aBackground) { + super(new GT_Container_1by1(aInventoryPlayer, aTileEntity), RES_PATH_GUI + aBackground + "1by1.png"); + mName = aName; + } @Override protected void drawGuiContainerForegroundLayer(int par1, int par2) { diff --git a/src/main/java/gregtech/api/gui/GT_GUIContainer_2by2.java b/src/main/java/gregtech/api/gui/GT_GUIContainer_2by2.java index 50653132ce..57c13f6b55 100644 --- a/src/main/java/gregtech/api/gui/GT_GUIContainer_2by2.java +++ b/src/main/java/gregtech/api/gui/GT_GUIContainer_2by2.java @@ -13,6 +13,11 @@ public class GT_GUIContainer_2by2 extends GT_GUIContainerMetaTile_Machine { super(new GT_Container_2by2(aInventoryPlayer, aTileEntity), RES_PATH_GUI + "2by2.png"); mName = aName; } + + public GT_GUIContainer_2by2(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, String aName, String aBackground) { + super(new GT_Container_2by2(aInventoryPlayer, aTileEntity), RES_PATH_GUI + aBackground + "2by2.png"); + mName = aName; + } @Override protected void drawGuiContainerForegroundLayer(int par1, int par2) { diff --git a/src/main/java/gregtech/api/gui/GT_GUIContainer_3by3.java b/src/main/java/gregtech/api/gui/GT_GUIContainer_3by3.java index de12be9e92..1f64dae245 100644 --- a/src/main/java/gregtech/api/gui/GT_GUIContainer_3by3.java +++ b/src/main/java/gregtech/api/gui/GT_GUIContainer_3by3.java @@ -14,6 +14,11 @@ public class GT_GUIContainer_3by3 extends GT_GUIContainerMetaTile_Machine { mName = aName; } + public GT_GUIContainer_3by3(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, String aName, String aBackground) { + super(new GT_Container_3by3(aInventoryPlayer, aTileEntity), RES_PATH_GUI + aBackground + "3by3.png"); + mName = aName; + } + @Override protected void drawGuiContainerForegroundLayer(int par1, int par2) { fontRendererObj.drawString(mName, 8, 4, 4210752); diff --git a/src/main/java/gregtech/api/gui/GT_GUIContainer_4by4.java b/src/main/java/gregtech/api/gui/GT_GUIContainer_4by4.java index dd536f41a7..710411cb08 100644 --- a/src/main/java/gregtech/api/gui/GT_GUIContainer_4by4.java +++ b/src/main/java/gregtech/api/gui/GT_GUIContainer_4by4.java @@ -13,6 +13,11 @@ public class GT_GUIContainer_4by4 extends GT_GUIContainerMetaTile_Machine { super(new GT_Container_4by4(aInventoryPlayer, aTileEntity), RES_PATH_GUI + "4by4.png"); mName = aName; } + + public GT_GUIContainer_4by4(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, String aName, String aBackground) { + super(new GT_Container_4by4(aInventoryPlayer, aTileEntity), RES_PATH_GUI + aBackground + "4by4.png"); + mName = aName; + } @Override protected void drawGuiContainerForegroundLayer(int par1, int par2) { diff --git a/src/main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java b/src/main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java index dc7c0ce2f6..653c929ff3 100644 --- a/src/main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java +++ b/src/main/java/gregtech/api/interfaces/internal/IGT_RecipeAdder.java @@ -1,5 +1,6 @@ package gregtech.api.interfaces.internal; +import gregtech.api.util.GT_Recipe; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidStack; @@ -117,6 +118,18 @@ public interface IGT_RecipeAdder { * @param aDuration must be > 0 */ public boolean addChemicalRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, ItemStack aOutput2, int aDuration); + + /** + * Adds a Chemical Recipe + * Only use this when the recipe conflicts in MultiBlock! + * + * @param aInput1 must be != null + * @param aInput2 must be != null + * @param aOutput1 must be != null + * @param aOutput2 must be != null + * @param aDuration must be > 0 + */ + public boolean addChemicalRecipeForBasicMachineOnly(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, ItemStack aOutput2, int aDuration, int aEUtick); /** * Adds Recipes for creating a radically polymerized polymer from a base Material (for example Ethylene -> Polyethylene) @@ -148,7 +161,20 @@ public interface IGT_RecipeAdder { */ public boolean addChemicalRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, ItemStack aOutput2, int aDuration, int aEUtick); - + /** + * Adds a Chemical Recipe that only exists in the Large Chemical Reactor + * + * @param aInputs item inputs + * @param aFluidInputs fluid inputs + * @param aFluidOutputs fluid outputs + * @param aOutputs item outputs + * @param aDuration must be > 0 + * @param aEUtick must be > 0 + * aInputs and aFluidInputs must contain at least one valid input. + * aOutputs and aFluidOutputs must contain at least one valid output. + */ + public boolean addMultiblockChemicalRecipe(ItemStack[] aInputs, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, ItemStack[] aOutputs, int aDuration, int aEUtick); + /** * Adds a Blast Furnace Recipe * @@ -177,6 +203,18 @@ public interface IGT_RecipeAdder { public boolean addBlastRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput1, ItemStack aOutput2, int aDuration, int aEUt, int aLevel); /** + * Adds a Blast Furnace Recipe + * + * @param aInput1 must be != null if aInput2 == null + * @param aInput2 must be != null if aInput1 == null + * @param aCoalAmount must be > 0 + * @param aOutput1 must be != null if aOutput2 == null + * @param aOutput2 must be != null if aOutput1 == null + * @param aDuration must be > 0 + */ + public boolean addPrimitiveBlastRecipe(ItemStack aInput1, ItemStack aInput2, int aCoalAmount, ItemStack aOutput1, ItemStack aOutput2, int aDuration); + + /** * Adds a Canning Machine Recipe * * @param aInput1 must be != null @@ -212,7 +250,7 @@ public interface IGT_RecipeAdder { public boolean addCNCRecipe(ItemStack aInput1, ItemStack aOutput1, int aDuration, int aEUt); /** - * Adds a Assembler Recipe + * Adds an Assembler Recipe * * @param aInput1 must be != null * @param aOutput1 must be != null @@ -222,20 +260,31 @@ public interface IGT_RecipeAdder { public boolean addAssemblerRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, int aDuration, int aEUt); /** - * Adds a Assembler Recipe + * Adds an Assembler Recipe * * @param aInput1 must be != null + * @param aInput2 must be != null * @param aOutput1 must be != null * @param aDuration must be > 0 * @param aEUt should be > 0 */ public boolean addAssemblerRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, ItemStack aOutput1, int aDuration, int aEUt); + /** + * Adds an Assembler Recipe + * + * @param aInputs must be != null + * @param aOutput1 must be != null + * @param aDuration must be > 0 + * @param aEUt should be > 0 + */ + public boolean addAssemblerRecipe(ItemStack[] aInputs, FluidStack aFluidInput, ItemStack aOutput1, int aDuration, int aEUt); + public boolean addAssemblerRecipe(ItemStack aInput1, Object aOreDict, int aAmount, FluidStack aFluidInput, ItemStack aOutput1, int aDuration, int aEUt); /** - * Adds a Assembler Recipe + * Adds a Circuit Assembler Recipe * * @param aInputs must be 1-6 ItemStacks * @param aFluidInput 0-1 fluids @@ -450,8 +499,12 @@ public interface IGT_RecipeAdder { /** * Adds a Recipe for the Distillery */ + public boolean addDistilleryRecipe(ItemStack aCircuit, FluidStack aInput, FluidStack aOutput, ItemStack aSolidOutput, int aDuration, int aEUt, boolean aHidden); + public boolean addDistilleryRecipe(ItemStack aCircuit, FluidStack aInput, FluidStack aOutput, int aDuration, int aEUt, boolean aHidden); + public boolean addDistilleryRecipe(int circuitConfig, FluidStack aInput, FluidStack aOutput, ItemStack aSolidOutput, int aDuration, int aEUt, boolean aHidden); + public boolean addDistilleryRecipe(int aCircuit, FluidStack aInput, FluidStack aOutput, int aDuration, int aEUt, boolean aHidden); /** @@ -556,7 +609,7 @@ public interface IGT_RecipeAdder { /** * Adds a Distillation Tower Recipe - * Every Fluid also gets seperate distillation recipes + * Every Fluid also gets separate distillation recipes * * @param aInput1 must be != null * @param aOutputs must be != null 1-5 Fluids @@ -584,9 +637,22 @@ public interface IGT_RecipeAdder { * @param aDuration * @param aEUt */ + @Deprecated public boolean addCrackingRecipe(FluidStack aInput, FluidStack aOutput, int aDuration, int aEUt); /** + * Adds Oil Cracking Recipe + * + * @param circuitConfig The circuit configuration to control cracking severity + * @param aInput The fluid to be cracked + * @param aInput2 The fluid to catalyze the cracking (typically Hydrogen or Steam) + * @param aOutput The cracked fluid + * @param aDuration + * @param aEUt + */ + public boolean addCrackingRecipe(int circuitConfig, FluidStack aInput, FluidStack aInput2, FluidStack aOutput, int aDuration, int aEUt); + + /** * Adds a Sound to the Sonictron9001 * you should NOT call this in the preInit-Phase! * diff --git a/src/main/java/gregtech/api/items/GT_MetaGenerated_Item.java b/src/main/java/gregtech/api/items/GT_MetaGenerated_Item.java index 9020eb09e8..95a6e124b1 100644 --- a/src/main/java/gregtech/api/items/GT_MetaGenerated_Item.java +++ b/src/main/java/gregtech/api/items/GT_MetaGenerated_Item.java @@ -30,7 +30,10 @@ import net.minecraft.world.World; import squeek.applecore.api.food.FoodValues; import squeek.applecore.api.food.IEdible; -import java.util.*; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.BitSet; +import java.util.List; import java.util.concurrent.ConcurrentHashMap; import static gregtech.api.enums.GT_Values.*; diff --git a/src/main/java/gregtech/api/items/GT_MetaGenerated_Tool.java b/src/main/java/gregtech/api/items/GT_MetaGenerated_Tool.java index 0b12df13c4..9ce0e913ca 100644 --- a/src/main/java/gregtech/api/items/GT_MetaGenerated_Tool.java +++ b/src/main/java/gregtech/api/items/GT_MetaGenerated_Tool.java @@ -18,7 +18,6 @@ import gregtech.api.util.GT_LanguageManager; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; -import gregtech.common.GT_Proxy; import mods.railcraft.api.core.items.IToolCrowbar; import net.minecraft.block.Block; import net.minecraft.client.renderer.texture.IIconRegister; diff --git a/src/main/java/gregtech/api/items/GT_RadioactiveCellIC_Item.java b/src/main/java/gregtech/api/items/GT_RadioactiveCellIC_Item.java index fe136e0621..24dcc8ef5e 100644 --- a/src/main/java/gregtech/api/items/GT_RadioactiveCellIC_Item.java +++ b/src/main/java/gregtech/api/items/GT_RadioactiveCellIC_Item.java @@ -1,6 +1,7 @@ package gregtech.api.items; +import gregtech.api.GregTech_API; import ic2.api.reactor.IReactor; import ic2.api.reactor.IReactorComponent; import ic2.core.IC2Potion; @@ -12,8 +13,6 @@ import net.minecraft.world.World; import java.util.ArrayList; -import gregtech.api.GregTech_API; - public class GT_RadioactiveCellIC_Item extends GT_RadioactiveCell_Item implements IReactorComponent { public final int numberOfCells; diff --git a/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java b/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java index 336c9234fc..e5fba09a82 100644 --- a/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java +++ b/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java @@ -48,6 +48,7 @@ public class BaseMetaPipeEntity extends BaseTileEntity implements IGregTechTileE private int oX = 0, oY = 0, oZ = 0, mTimeStatisticsIndex = 0; private short mID = 0; private long mTickTimer = 0; + private String mOwnerName = ""; //Currently only used by PlayerDetector public BaseMetaPipeEntity() { } @@ -69,6 +70,7 @@ public class BaseMetaPipeEntity extends BaseTileEntity implements IGregTechTileE aNBT.setByte("mColor", mColor); aNBT.setByte("mStrongRedstone", mStrongRedstone); aNBT.setBoolean("mWorks", !mWorks); + aNBT.setString("mOwnerName", mOwnerName); } catch (Throwable e) { GT_Log.err.println("Encountered CRITICAL ERROR while saving MetaTileEntity, the Chunk whould've been corrupted by now, but I prevented that. Please report immidietly to GregTech Intergalactical!!!"); e.printStackTrace(GT_Log.err); @@ -122,6 +124,7 @@ public class BaseMetaPipeEntity extends BaseTileEntity implements IGregTechTileE mColor = aNBT.getByte("mColor"); mStrongRedstone = aNBT.getByte("mStrongRedstone"); mWorks = !aNBT.getBoolean("mWorks"); + mOwnerName = aNBT.getString("mOwnerName"); if (mCoverData.length != 6) mCoverData = new int[]{0, 0, 0, 0, 0, 0}; if (mCoverSides.length != 6) mCoverSides = new int[]{0, 0, 0, 0, 0, 0}; @@ -1101,12 +1104,14 @@ public class BaseMetaPipeEntity extends BaseTileEntity implements IGregTechTileE @Override public String getOwnerName() { - return "Player"; + if (GT_Utility.isStringInvalid(mOwnerName)) return "Player"; + return mOwnerName; } @Override public String setOwnerName(String aName) { - return "Player"; + if (GT_Utility.isStringInvalid(aName)) return mOwnerName = "Player"; + return mOwnerName = aName; } @Override @@ -1312,4 +1317,4 @@ public class BaseMetaPipeEntity extends BaseTileEntity implements IGregTechTileE public void onEntityCollidedWithBlock(World aWorld, int aX, int aY, int aZ, Entity collider) { mMetaTileEntity.onEntityCollidedWithBlock(aWorld, aX, aY, aZ, collider); } -}
\ No newline at end of file +} diff --git a/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java b/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java index fc46874480..177810f955 100644 --- a/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java +++ b/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java @@ -26,7 +26,6 @@ import net.minecraft.nbt.NBTTagList; import net.minecraft.network.Packet; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.AxisAlignedBB; -import net.minecraft.world.ChunkPosition; import net.minecraft.world.EnumSkyBlock; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; @@ -120,6 +119,7 @@ public class BaseMetaTileEntity extends BaseTileEntity implements IGregTechTileE aNBT.setBoolean("mInputDisabled", mInputDisabled); aNBT.setBoolean("mOutputDisabled", mOutputDisabled); aNBT.setTag("GT.CraftingComponents", mRecipeStuff); + aNBT.setInteger("nbtVersion", GT_Mod.TOTAL_VERSION); } catch (Throwable e) { GT_Log.err.println("Encountered CRITICAL ERROR while saving MetaTileEntity, the Chunk whould've been corrupted by now, but I prevented that. Please report immidietly to GregTech Intergalactical!!!"); e.printStackTrace(GT_Log.err); @@ -188,7 +188,8 @@ public class BaseMetaTileEntity extends BaseTileEntity implements IGregTechTileE mCoverData = aNBT.getIntArray("mCoverData"); mSidedRedstone = aNBT.getByteArray("mRedstoneSided"); mRecipeStuff = aNBT.getCompoundTag("GT.CraftingComponents"); - + int nbtVersion = aNBT.getInteger("nbtVersion"); + if (mCoverData.length != 6) mCoverData = new int[]{0, 0, 0, 0, 0, 0}; if (mCoverSides.length != 6) mCoverSides = new int[]{0, 0, 0, 0, 0, 0}; if (mSidedRedstone.length != 6) @@ -203,6 +204,7 @@ public class BaseMetaTileEntity extends BaseTileEntity implements IGregTechTileE for (int i = 0; i < tItemList.tagCount(); i++) { NBTTagCompound tTag = tItemList.getCompoundTagAt(i); int tSlot = tTag.getInteger("IntSlot"); + tSlot = shiftInventoryIndex(tSlot, nbtVersion); if (tSlot >= 0 && tSlot < mMetaTileEntity.getRealInventory().length) { mMetaTileEntity.getRealInventory()[tSlot] = GT_Utility.loadItem(tTag); } @@ -1905,4 +1907,55 @@ public class BaseMetaTileEntity extends BaseTileEntity implements IGregTechTileE public void onEntityCollidedWithBlock(World aWorld, int aX, int aY, int aZ, Entity collider) { mMetaTileEntity.onEntityCollidedWithBlock(aWorld, aX, aY, aZ, collider); } + + /** + * Shifts the machine Inventory index according to the change in Input/Output Slots. + * This is NOT done automatically. If you want to change slot count for a machine this method needs to be adapted. + * Currently this method only works for GT_MetaTileEntity_BasicMachine + * @param slotIndex The original Inventory index + * @param nbtVersion The GregTech version in which the original Inventory Index was saved. + * @return The corrected Inventory index + */ + private int shiftInventoryIndex(int slotIndex, int nbtVersion){ + int oldInputSize, newInputSize, oldOutputSize, newOutputSize; + int chemistryUpdateVersion = GT_Mod.calculateTotalGTVersion(509, 31); + if (mID >= 211 && mID <= 218) {//Assembler + if (nbtVersion < chemistryUpdateVersion) { + oldInputSize = 2; + oldOutputSize = 1; + } else { + return slotIndex; + } + newInputSize = 6; + newOutputSize = 1; + } else if (mID >= 421 && mID <= 428){//Chemical Reactor + if (nbtVersion < chemistryUpdateVersion) { + oldInputSize = 2; + oldOutputSize = 1; + } else { + return slotIndex; + } + newInputSize = 2; + newOutputSize = 2; + } else if (mID >= 531 && mID <= 538) {//Distillery + if (nbtVersion < chemistryUpdateVersion) { + oldInputSize = 1; + oldOutputSize = 0; + } else { + return slotIndex; + } + newInputSize = 1; + newOutputSize = 1; + } else { + return slotIndex; + } + int indexShift = 0; + if (slotIndex >= GT_MetaTileEntity_BasicMachine.OTHER_SLOT_COUNT + oldInputSize) { + indexShift += newInputSize - oldInputSize; + } + if (slotIndex >= GT_MetaTileEntity_BasicMachine.OTHER_SLOT_COUNT + oldInputSize + oldOutputSize) { + indexShift += newOutputSize - oldOutputSize; + } + return slotIndex + indexShift; + } } diff --git a/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java b/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java index f0d70255a7..96532f52e5 100644 --- a/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java +++ b/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java @@ -2,7 +2,6 @@ package gregtech.api.metatileentity; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; @@ -10,7 +9,6 @@ import gregtech.api.objects.GT_ItemStack; import gregtech.api.util.GT_Config; import gregtech.api.util.GT_LanguageManager; import gregtech.api.util.GT_Utility; -import gregtech.common.GT_Pollution; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.client.renderer.texture.IIconRegister; diff --git a/src/main/java/gregtech/api/metatileentity/MetaTileEntity.java b/src/main/java/gregtech/api/metatileentity/MetaTileEntity.java index c01d2f8b15..4b86dad149 100644 --- a/src/main/java/gregtech/api/metatileentity/MetaTileEntity.java +++ b/src/main/java/gregtech/api/metatileentity/MetaTileEntity.java @@ -32,7 +32,6 @@ import java.util.ArrayList; import java.util.List; import java.util.Locale; -import static gregtech.api.enums.GT_Values.GT; import static gregtech.api.enums.GT_Values.V; /** diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java index a4c9c2b08d..fc73e382d1 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java @@ -11,7 +11,6 @@ import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.metatileentity.IMetaTileEntityCable; import gregtech.api.interfaces.tileentity.IColoredTileEntity; -import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.interfaces.tileentity.IEnergyConnected; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.BaseMetaPipeEntity; diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java index ed6b8cd460..a900dee4b6 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Fluid.java @@ -2,11 +2,7 @@ package gregtech.api.metatileentity.implementations; import gregtech.GT_Mod; import gregtech.api.GregTech_API; -import gregtech.api.enums.Dyes; -import gregtech.api.enums.ItemList; -import gregtech.api.enums.Materials; -import gregtech.api.enums.OrePrefixes; -import gregtech.api.enums.SubTag; +import gregtech.api.enums.*; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.ICoverable; diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicGenerator.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicGenerator.java index 73d3c19a6b..81c513a921 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicGenerator.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicGenerator.java @@ -5,12 +5,11 @@ import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Recipe.GT_Recipe_Map; -import gregtech.common.GT_Pollution; import gregtech.api.util.GT_Utility; +import gregtech.common.GT_Pollution; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.init.Blocks; import net.minecraft.item.ItemStack; -import net.minecraft.world.ChunkPosition; import net.minecraftforge.fluids.FluidStack; import java.util.Collection; diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java index 9114780b2f..fe8c22c77b 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java @@ -43,7 +43,7 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B DID_NOT_FIND_RECIPE = 0, FOUND_RECIPE_BUT_DID_NOT_MEET_REQUIREMENTS = 1, FOUND_AND_SUCCESSFULLY_USED_RECIPE = 2; - private static final int OTHER_SLOT_COUNT = 4; + public static final int OTHER_SLOT_COUNT = 4; public final ItemStack[] mOutputItems; public final int mInputSlotCount, mAmperage; public boolean mAllowInputFromOutputSide = false, mFluidTransfer = false, mItemTransfer = false, mHasBeenUpdated = false, mStuttering = false, mCharge = false, mDecharge = false; diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_DataAccess.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_DataAccess.java new file mode 100644 index 0000000000..135f579fde --- /dev/null +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_DataAccess.java @@ -0,0 +1,99 @@ +package gregtech.api.metatileentity.implementations; + +import gregtech.api.enums.Textures; +import gregtech.api.gui.*; +import gregtech.api.interfaces.ITexture; +import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.metatileentity.MetaTileEntity; +import gregtech.api.objects.GT_RenderedTexture; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.entity.player.InventoryPlayer; +import net.minecraft.item.ItemStack; + +public class GT_MetaTileEntity_Hatch_DataAccess extends GT_MetaTileEntity_Hatch { + public GT_MetaTileEntity_Hatch_DataAccess(int aID, String aName, String aNameRegional, int aTier) { + super(aID, aName, aNameRegional, aTier, 16, "Data Access for Multiblocks"); + } + + public GT_MetaTileEntity_Hatch_DataAccess(String aName, int aTier, String aDescription, ITexture[][][] aTextures) { + super(aName, aTier, aTier == 4 ? 4 : 16, aDescription, aTextures); + } + + public GT_MetaTileEntity_Hatch_DataAccess(String aName, int aTier, String[] aDescription, ITexture[][][] aTextures) { + super(aName, aTier, aTier == 4 ? 4 : 16, aDescription, aTextures); + } + + @Override + public ITexture[] getTexturesActive(ITexture aBaseTexture) { + return new ITexture[]{aBaseTexture, new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_DATA_ACCESS)}; + } + + @Override + public ITexture[] getTexturesInactive(ITexture aBaseTexture) { + return new ITexture[]{aBaseTexture, new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_DATA_ACCESS)}; + } + + @Override + public boolean isSimpleMachine() { + return true; + } + + @Override + public boolean isFacingValid(byte aFacing) { + return true; + } + + @Override + public boolean isAccessAllowed(EntityPlayer aPlayer) { + return true; + } + + @Override + public boolean isValidSlot(int aIndex) { + return true; + } + + @Override + public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { + return new GT_MetaTileEntity_Hatch_DataAccess(mName, mTier, mDescriptionArray, mTextures); + } + + @Override + public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer) { + if (aBaseMetaTileEntity.isClientSide()) return true; + aBaseMetaTileEntity.openGUI(aPlayer); + return true; + } + + @Override + public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { + switch (mTier) { + case 4: + return new GT_Container_2by2(aPlayerInventory, aBaseMetaTileEntity); + default: + return new GT_Container_4by4(aPlayerInventory, aBaseMetaTileEntity); + } + } + + @Override + public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { + switch (mTier) { + case 4: + return new GT_GUIContainer_2by2(aPlayerInventory, aBaseMetaTileEntity, "Data Access Hatch", "DataAccess"); + case 6: + return new GT_GUIContainer_4by4(aPlayerInventory, aBaseMetaTileEntity, "Data Access Hatch", "DataAccess"); + default: + return new GT_GUIContainer_4by4(aPlayerInventory, aBaseMetaTileEntity, "Data Access Hatch", "DataAccess"); + } + } + + @Override + public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) { + return false; + } + + @Override + public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) { + return false; + } +} diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Muffler.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Muffler.java index 1209b9c582..86547d1736 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Muffler.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Muffler.java @@ -10,7 +10,6 @@ import gregtech.api.objects.XSTR; import gregtech.common.GT_Pollution; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; -import net.minecraft.world.ChunkPosition; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java index 86d74f3dac..a02a5568a0 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java @@ -553,7 +553,7 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity { return false; } - private void addFluidOutputs(FluidStack[] mOutputFluids2) { + protected void addFluidOutputs(FluidStack[] mOutputFluids2) { for (int i = 0; i < mOutputFluids2.length; i++) { if (mOutputHatches.size() > i && mOutputHatches.get(i) != null && mOutputFluids2[i] != null && isValidMetaTileEntity(mOutputHatches.get(i))) { mOutputHatches.get(i).fill(mOutputFluids2[i], true); diff --git a/src/main/java/gregtech/api/net/GT_Packet_Pollution.java b/src/main/java/gregtech/api/net/GT_Packet_Pollution.java index e403cae4e9..2c67d74150 100644 --- a/src/main/java/gregtech/api/net/GT_Packet_Pollution.java +++ b/src/main/java/gregtech/api/net/GT_Packet_Pollution.java @@ -3,7 +3,6 @@ package gregtech.api.net; import com.google.common.io.ByteArrayDataInput; import com.google.common.io.ByteArrayDataOutput; import com.google.common.io.ByteStreams; - import gregtech.common.GT_Pollution; import net.minecraft.world.IBlockAccess; diff --git a/src/main/java/gregtech/api/objects/GT_UO_Dimension.java b/src/main/java/gregtech/api/objects/GT_UO_Dimension.java index 657e9353c6..cca5e22bf7 100644 --- a/src/main/java/gregtech/api/objects/GT_UO_Dimension.java +++ b/src/main/java/gregtech/api/objects/GT_UO_Dimension.java @@ -1,16 +1,10 @@ package gregtech.api.objects; -import java.util.ArrayList; -import java.util.Random; -import java.util.Set; - import com.google.common.collect.BiMap; import com.google.common.collect.HashBiMap; - -import gregtech.api.enums.GT_Values; import net.minecraftforge.common.config.ConfigCategory; -import net.minecraftforge.common.config.Configuration; -import net.minecraftforge.fluids.Fluid; + +import java.util.Random; public class GT_UO_Dimension { diff --git a/src/main/java/gregtech/api/objects/GT_UO_DimensionList.java b/src/main/java/gregtech/api/objects/GT_UO_DimensionList.java index ce3bdc51cb..83ff0df0bb 100644 --- a/src/main/java/gregtech/api/objects/GT_UO_DimensionList.java +++ b/src/main/java/gregtech/api/objects/GT_UO_DimensionList.java @@ -2,9 +2,6 @@ package gregtech.api.objects; import com.google.common.collect.BiMap; import com.google.common.collect.HashBiMap; -import gregtech.GT_Mod; -import gregtech.api.enums.GT_Values; -import gregtech.api.util.GT_Log; import net.minecraftforge.common.DimensionManager; import net.minecraftforge.common.config.ConfigCategory; import net.minecraftforge.common.config.Configuration; diff --git a/src/main/java/gregtech/api/objects/GT_UO_Fluid.java b/src/main/java/gregtech/api/objects/GT_UO_Fluid.java index 5eea9c323f..f27441a81a 100644 --- a/src/main/java/gregtech/api/objects/GT_UO_Fluid.java +++ b/src/main/java/gregtech/api/objects/GT_UO_Fluid.java @@ -1,10 +1,5 @@ package gregtech.api.objects; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Random; - -import gregtech.api.enums.GT_Values; import net.minecraftforge.common.config.ConfigCategory; import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidRegistry; diff --git a/src/main/java/gregtech/api/objects/MaterialStack.java b/src/main/java/gregtech/api/objects/MaterialStack.java index 8dbcbd6dd6..e7ffe782d6 100644 --- a/src/main/java/gregtech/api/objects/MaterialStack.java +++ b/src/main/java/gregtech/api/objects/MaterialStack.java @@ -1,7 +1,5 @@ package gregtech.api.objects; -import java.util.List; - import gregtech.api.enums.Materials; public class MaterialStack implements Cloneable { diff --git a/src/main/java/gregtech/api/util/GT_BaseCrop.java b/src/main/java/gregtech/api/util/GT_BaseCrop.java index 4742afe9fa..41bdcac3dc 100644 --- a/src/main/java/gregtech/api/util/GT_BaseCrop.java +++ b/src/main/java/gregtech/api/util/GT_BaseCrop.java @@ -21,7 +21,6 @@ import speiger.src.crops.api.ICropCardInfo; import java.util.ArrayList; import java.util.List; -import java.util.Random; import static gregtech.api.enums.GT_Values.E; diff --git a/src/main/java/gregtech/api/util/GT_LanguageManager.java b/src/main/java/gregtech/api/util/GT_LanguageManager.java index e697bbc4ad..f391acd153 100644 --- a/src/main/java/gregtech/api/util/GT_LanguageManager.java +++ b/src/main/java/gregtech/api/util/GT_LanguageManager.java @@ -171,8 +171,8 @@ public class GT_LanguageManager { addStringLocalization("Interaction_DESCRIPTION_Index_063", "Emit if 4 Maintenance Needed(inverted)"); addStringLocalization("Interaction_DESCRIPTION_Index_064", "Emit if 5 Maintenance Needed"); addStringLocalization("Interaction_DESCRIPTION_Index_065", "Emit if 5 Maintenance Needed(inverted)"); - addStringLocalization("Interaction_DESCRIPTION_Index_066", "Emit if rotor needs maintainance"); - addStringLocalization("Interaction_DESCRIPTION_Index_067", "Emit if rotor needs maintainance(inverted)"); + addStringLocalization("Interaction_DESCRIPTION_Index_066", "Emit if rotor needs maintenance"); + addStringLocalization("Interaction_DESCRIPTION_Index_067", "Emit if rotor needs maintenance(inverted)"); addStringLocalization("Interaction_DESCRIPTION_Index_068", "Emit if any Player is close"); addStringLocalization("Interaction_DESCRIPTION_Index_069", "Emit if other player is close"); addStringLocalization("Interaction_DESCRIPTION_Index_070", "Emit if you are close"); diff --git a/src/main/java/gregtech/api/util/GT_Recipe.java b/src/main/java/gregtech/api/util/GT_Recipe.java index 6b62fd85dd..b60b82505d 100644 --- a/src/main/java/gregtech/api/util/GT_Recipe.java +++ b/src/main/java/gregtech/api/util/GT_Recipe.java @@ -1,27 +1,8 @@ package gregtech.api.util; -import static gregtech.api.enums.GT_Values.D1; -import static gregtech.api.enums.GT_Values.D2; -import static gregtech.api.enums.GT_Values.E; -import static gregtech.api.enums.GT_Values.L; -import static gregtech.api.enums.GT_Values.RES_PATH_GUI; -import static gregtech.api.enums.GT_Values.W; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collection; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; - import codechicken.nei.PositionedStack; import gregtech.api.GregTech_API; -import gregtech.api.enums.Dyes; -import gregtech.api.enums.ItemList; -import gregtech.api.enums.Materials; -import gregtech.api.enums.OrePrefixes; -import gregtech.api.enums.SubTag; +import gregtech.api.enums.*; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.interfaces.tileentity.IHasWorldObjectAndCoords; import gregtech.api.objects.GT_FluidStack; @@ -39,6 +20,10 @@ import net.minecraftforge.fluids.FluidContainerRegistry; import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.fluids.IFluidContainerItem; +import java.util.*; + +import static gregtech.api.enums.GT_Values.*; + /** * NEVER INCLUDE THIS FILE IN YOUR MOD!!! * <p/> @@ -523,7 +508,6 @@ public class GT_Recipe implements Comparable<GT_Recipe> { public static final GT_Recipe_Map sReplicatorFakeRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(100), "gt.recipe.replicator", "Replicator", null, RES_PATH_GUI + "basicmachines/Replicator", 0, 1, 0, 1, 1, E, 1, E, true, true); //public static final GT_Recipe_Map sAssemblylineFakeRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(30), "gt.recipe.scanner", "Scanner", null, RES_PATH_GUI + "basicmachines/Default", 1, 1, 1, 0, 1, E, 1, E, true, true); public static final GT_Recipe_Map sAssemblylineVisualRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(30), "gt.recipe.fakeAssemblylineProcess", "Assemblyline Process", null, RES_PATH_GUI + "FakeAssemblyline", 1, 1, 1, 0, 1, E, 1, E, true, false); - public static final GT_Recipe_Map sPlasmaArcFurnaceRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(10000), "gt.recipe.plasmaarcfurnace", "Plasma Arc Furnace", null, RES_PATH_GUI + "basicmachines/PlasmaArcFurnace", 1, 4, 1, 1, 1, E, 1, E, true, true); public static final GT_Recipe_Map sArcFurnaceRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(10000), "gt.recipe.arcfurnace", "Arc Furnace", null, RES_PATH_GUI + "basicmachines/ArcFurnace", 1, 4, 1, 1, 3, E, 1, E, true, true); public static final GT_Recipe_Map sPrinterRecipes = new GT_Recipe_Map_Printer(new HashSet<GT_Recipe>(100), "gt.recipe.printer", "Printer", null, RES_PATH_GUI + "basicmachines/Printer", 1, 1, 1, 1, 1, E, 1, E, true, true); @@ -549,17 +533,18 @@ public class GT_Recipe implements Comparable<GT_Recipe> { public static final GT_Recipe_Map sCentrifugeRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(1000), "gt.recipe.centrifuge", "Centrifuge", null, RES_PATH_GUI + "basicmachines/Centrifuge", 2, 6, 0, 0, 1, E, 1, E, true, true); public static final GT_Recipe_Map sElectrolyzerRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(200), "gt.recipe.electrolyzer", "Electrolyzer", null, RES_PATH_GUI + "basicmachines/Electrolyzer", 2, 6, 0, 0, 1, E, 1, E, true, true); public static final GT_Recipe_Map sBlastRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(500), "gt.recipe.blastfurnace", "Blast Furnace", null, RES_PATH_GUI + "basicmachines/Default", 2, 2, 1, 0, 1, "Heat Capacity: ", 1, " K", false, true); + public static final GT_Recipe_Map sPrimitiveBlastRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(500), "gt.recipe.primitiveblastfurnace", "Primitive Blast Furnace", null, RES_PATH_GUI + "basicmachines/Default", 3, 3, 1, 0, 1, E, 1, E, false, true); public static final GT_Recipe_Map sImplosionRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(50), "gt.recipe.implosioncompressor", "Implosion Compressor", null, RES_PATH_GUI + "basicmachines/Default", 2, 2, 2, 0, 1, E, 1, E, true, true); public static final GT_Recipe_Map sVacuumRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(100), "gt.recipe.vacuumfreezer", "Vacuum Freezer", null, RES_PATH_GUI + "basicmachines/Default", 1, 1, 1, 0, 1, E, 1, E, true, true); public static final GT_Recipe_Map sChemicalRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(100), "gt.recipe.chemicalreactor", "Chemical Reactor", null, RES_PATH_GUI + "basicmachines/ChemicalReactor", 2, 2, 1, 0, 1, E, 1, E, true, true); public static final GT_Recipe_Map sMultiblockChemicalRecipes = new GT_Recipe_Map_LargeChemicalReactor(); - public static final GT_Recipe_Map sDistillationRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(50), "gt.recipe.distillationtower", "Distillation Tower", null, RES_PATH_GUI + "basicmachines/Default", 2, 4, 0, 0, 1, E, 1, E, true, true); - public static final GT_Recipe_Map sCrakingRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(50), "gt.recipe.craker", "Oil Cracker", null, RES_PATH_GUI + "basicmachines/Default", 1, 1, 0, 1, 1, E, 1, E, true, true); + public static final GT_Recipe_Map sDistillationRecipes = new GT_Recipe_Map_DistillationTower(); + public static final GT_Recipe_Map sCrakingRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(50), "gt.recipe.craker", "Oil Cracker", null, RES_PATH_GUI + "basicmachines/Default", 1, 1, 1, 2, 1, E, 1, E, true, true); public static final GT_Recipe_Map sPyrolyseRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(50), "gt.recipe.pyro", "Pyrolyse Oven", null, RES_PATH_GUI + "basicmachines/Default", 2, 1, 1, 0, 1, E, 1, E, true, true); public static final GT_Recipe_Map sWiremillRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(50), "gt.recipe.wiremill", "Wiremill", null, RES_PATH_GUI + "basicmachines/Wiremill", 1, 1, 1, 0, 1, E, 1, E, true, true); public static final GT_Recipe_Map sBenderRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(400), "gt.recipe.metalbender", "Metal Bender", null, RES_PATH_GUI + "basicmachines/Bender", 2, 1, 2, 0, 1, E, 1, E, true, true); public static final GT_Recipe_Map sAlloySmelterRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(3000), "gt.recipe.alloysmelter", "Alloy Smelter", null, RES_PATH_GUI + "basicmachines/AlloySmelter", 2, 1, 2, 0, 1, E, 1, E, true, true); - public static final GT_Recipe_Map sAssemblerRecipes = new GT_Recipe_Map_Assembler(new HashSet<GT_Recipe>(300), "gt.recipe.assembler", "Assembler", null, RES_PATH_GUI + "basicmachines/Assembler", 2, 1, 1, 0, 1, E, 1, E, true, true); + public static final GT_Recipe_Map sAssemblerRecipes = new GT_Recipe_Map_Assembler(new HashSet<GT_Recipe>(300), "gt.recipe.assembler", "Assembler", null, RES_PATH_GUI + "basicmachines/Assembler", 6, 1, 1, 0, 1, E, 1, E, true, true); public static final GT_Recipe_Map sCircuitAssemblerRecipes = new GT_Recipe_Map_Assembler(new HashSet<GT_Recipe>(300), "gt.recipe.circuitassembler", "Circuit Assembler", null, RES_PATH_GUI + "basicmachines/CircuitAssembler", 6, 1, 1, 0, 1, E, 1, E, true, true); public static final GT_Recipe_Map sCannerRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(300), "gt.recipe.canner", "Canning Machine", null, RES_PATH_GUI + "basicmachines/Canner", 2, 2, 1, 0, 1, E, 1, E, true, true); public static final GT_Recipe_Map sCNCRecipes = new GT_Recipe_Map(new HashSet<GT_Recipe>(100), "gt.recipe.cncmachine", "CNC Machine", null, RES_PATH_GUI + "basicmachines/Default", 2, 1, 2, 1, 1, E, 1, E, true, true); @@ -683,6 +668,9 @@ public class GT_Recipe implements Comparable<GT_Recipe> { public GT_Recipe addFakeRecipe(boolean aCheckForCollisions, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { return addFakeRecipe(aCheckForCollisions, new GT_Recipe(false, aInputs, aOutputs, aSpecial, null, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue)); } + public GT_Recipe addFakeRecipe(boolean aCheckForCollisions, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue,boolean hidden) { + return addFakeRecipe(aCheckForCollisions, new GT_Recipe(false, aInputs, aOutputs, aSpecial, null, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue),hidden); + } /** * Only used for fake Recipe Handlers to show something in NEI, do not use this for adding actual Recipes! findRecipe wont find fake Recipes, containsInput WILL find fake Recipes @@ -690,6 +678,9 @@ public class GT_Recipe implements Comparable<GT_Recipe> { public GT_Recipe addFakeRecipe(boolean aCheckForCollisions, GT_Recipe aRecipe) { return addRecipe(aRecipe, aCheckForCollisions, true, false); } + public GT_Recipe addFakeRecipe(boolean aCheckForCollisions, GT_Recipe aRecipe,boolean hidden) { + return addRecipe(aRecipe, aCheckForCollisions, true, hidden); + } public GT_Recipe add(GT_Recipe aRecipe) { mRecipeList.add(aRecipe); @@ -1462,8 +1453,8 @@ public class GT_Recipe implements Comparable<GT_Recipe> { public static class GT_Recipe_Map_LargeChemicalReactor extends GT_Recipe_Map{ private static int INPUT_COUNT = 2; private static int OUTPUT_COUNT = 2; - private static int FLUID_INPUT_COUNT = 3; - private static int FLUID_OUTPUT_COUNT = 3; + private static int FLUID_INPUT_COUNT = 4; + private static int FLUID_OUTPUT_COUNT = 4; public GT_Recipe_Map_LargeChemicalReactor() { super(new HashSet<GT_Recipe>(200), "gt.recipe.largechemicalreactor", "Large Chemical Reactor", null, RES_PATH_GUI + "basicmachines/Default", INPUT_COUNT, OUTPUT_COUNT, 0, 0, 1, E, 1, E, true, true); @@ -1471,16 +1462,21 @@ public class GT_Recipe implements Comparable<GT_Recipe> { @Override public GT_Recipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { - aOptimize = false; ArrayList<ItemStack> adjustedInputs = new ArrayList<ItemStack>(); ArrayList<ItemStack> adjustedOutputs = new ArrayList<ItemStack>(); ArrayList<FluidStack> adjustedFluidInputs = new ArrayList<FluidStack>(); ArrayList<FluidStack> adjustedFluidOutputs = new ArrayList<FluidStack>(); + if (aInputs == null) { + aInputs = new ItemStack[0]; + } for (ItemStack input : aInputs) { FluidStack inputFluidContent = FluidContainerRegistry.getFluidForFilledItem(input); if (inputFluidContent != null) { inputFluidContent.amount *= input.stackSize; + if (inputFluidContent.getFluid().getName().equals("ic2steam")) { + inputFluidContent = GT_ModHandler.getSteam(inputFluidContent.amount); + } adjustedFluidInputs.add(inputFluidContent); } else { ItemData itemData = GT_OreDictUnificator.getItemData(input); @@ -1500,16 +1496,25 @@ public class GT_Recipe implements Comparable<GT_Recipe> { } } } + if (aFluidInputs == null) { + aFluidInputs = new FluidStack[0]; + } for (FluidStack fluidInput : aFluidInputs) { adjustedFluidInputs.add(fluidInput); } aInputs = adjustedInputs.toArray(new ItemStack[adjustedInputs.size()]); aFluidInputs = adjustedFluidInputs.toArray(new FluidStack[adjustedFluidInputs.size()]); + if (aOutputs == null) { + aOutputs = new ItemStack[0]; + } for (ItemStack output : aOutputs) { FluidStack outputFluidContent = FluidContainerRegistry.getFluidForFilledItem(output); if (outputFluidContent != null) { outputFluidContent.amount *= output.stackSize; + if (outputFluidContent.getFluid().getName().equals("ic2steam")) { + outputFluidContent = GT_ModHandler.getSteam(outputFluidContent.amount); + } adjustedFluidOutputs.add(outputFluidContent); } else { ItemData itemData = GT_OreDictUnificator.getItemData(output); @@ -1520,6 +1525,10 @@ public class GT_Recipe implements Comparable<GT_Recipe> { } } } + + if (aFluidOutputs == null) { + aFluidOutputs = new FluidStack[0]; + } for (FluidStack fluidOutput : aFluidOutputs) { adjustedFluidOutputs.add(fluidOutput); } @@ -1542,11 +1551,15 @@ public class GT_Recipe implements Comparable<GT_Recipe> { ArrayList<PositionedStack> inputStacks = new ArrayList<PositionedStack>(itemLimit + fluidLimit); for (int i = 0; i < itemLimit; i++) { - inputStacks.add(new FixedPositionedStack(this.getRepresentativeInput(i), 48 - i * 18, 5)); + inputStacks.add(new FixedPositionedStack(this.mInputs[i].copy(), 48 - i * 18, 5)); } for (int i = 0; i < fluidLimit; i++) { - inputStacks.add(new FixedPositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidInputs[i], true), 48 - i * 18, 23)); + if (i < 3) { + inputStacks.add(new FixedPositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidInputs[i], true), 48 - i * 18, 23)); + } else { + inputStacks.add(new FixedPositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidInputs[i], true), 12, 5)); + } } return inputStacks; @@ -1559,7 +1572,7 @@ public class GT_Recipe implements Comparable<GT_Recipe> { ArrayList<PositionedStack> outputStacks = new ArrayList<PositionedStack>(itemLimit + fluidLimit); for (int i = 0; i < itemLimit; i++) { - outputStacks.add(new FixedPositionedStack(this.getOutput(i), 102 + i * 18, 5)); + outputStacks.add(new FixedPositionedStack(this.mOutputs[i].copy(), 102 + i * 18, 5)); } for (int i = 0; i < fluidLimit; i++) { @@ -1572,4 +1585,59 @@ public class GT_Recipe implements Comparable<GT_Recipe> { } } + + public static class GT_Recipe_Map_DistillationTower extends GT_Recipe_Map { + private static final int FLUID_OUTPUT_COUNT = 11; + private static final int ROW_SIZE = 3; + + public GT_Recipe_Map_DistillationTower() { + super(new HashSet<GT_Recipe>(50), "gt.recipe.distillationtower", "Distillation Tower", null, RES_PATH_GUI + "basicmachines/DistillationTower", 2, 4, 0, 0, 1, E, 1, E, true, true); + } + + @Override + public GT_Recipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, int[] aOutputChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { + return addRecipe(new GT_Recipe_DistillationTower(aOptimize, aInputs, aOutputs, aSpecial, aOutputChances, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue)); + } + + @Override + public GT_Recipe addRecipe(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecial, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { + return addRecipe(aOptimize, aInputs, aOutputs, aSpecial, null, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue); + } + + private static class GT_Recipe_DistillationTower extends GT_Recipe{ + + protected GT_Recipe_DistillationTower(boolean aOptimize, ItemStack[] aInputs, ItemStack[] aOutputs, Object aSpecialItems, int[] aChances, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, int aDuration, int aEUt, int aSpecialValue) { + super(aOptimize, aInputs, aOutputs, aSpecialItems, aChances, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue); + } + + @Override + public ArrayList<PositionedStack> getInputPositionedStacks() { + ArrayList<PositionedStack> inputStacks = new ArrayList<PositionedStack>(1); + + if (this.mFluidInputs.length > 0 && this.mFluidInputs[0] != null) { + inputStacks.add(new FixedPositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidInputs[0], true), 48, 52)); + } + return inputStacks; + } + + @Override + public ArrayList<PositionedStack> getOutputPositionedStacks() { + int fluidLimit = Math.min(mFluidOutputs.length, FLUID_OUTPUT_COUNT); + ArrayList<PositionedStack> outputStacks = new ArrayList<PositionedStack>(1 + fluidLimit); + + if (this.mOutputs.length > 0 && this.mOutputs[0] != null) { + outputStacks.add(new FixedPositionedStack(this.getOutput(0), 102, 52)); + } + + for (int i = 0; i < fluidLimit; i++) { + int x = 102 + ((i + 1) % ROW_SIZE) * 18; + int y = 52 - ((i + 1) / ROW_SIZE) * 18; + outputStacks.add(new FixedPositionedStack(GT_Utility.getFluidDisplayStack(this.mFluidOutputs[i], true), x, y)); + } + + return outputStacks; + } + + } + } } diff --git a/src/main/java/gregtech/api/util/GT_RecipeRegistrator.java b/src/main/java/gregtech/api/util/GT_RecipeRegistrator.java index 33fe8af33f..ca2867f85a 100644 --- a/src/main/java/gregtech/api/util/GT_RecipeRegistrator.java +++ b/src/main/java/gregtech/api/util/GT_RecipeRegistrator.java @@ -259,8 +259,8 @@ public class GT_RecipeRegistrator { RA.addPulveriserRecipe(aStack, new ItemStack[]{GT_OreDictUnificator.getDust(aData.mMaterial), GT_OreDictUnificator.getDust(aData.getByProduct(0)), GT_OreDictUnificator.getDust(aData.getByProduct(1)), GT_OreDictUnificator.getDust(aData.getByProduct(2))}, null, aData.mMaterial.mMaterial==Materials.Marble ? 1 : (int) Math.max(16, tAmount / M), 4, tHide); if (aAllowHammer) for (MaterialStack tMaterial : aData.getAllMaterialStacks()) - if (tMaterial.mMaterial.contains(SubTag.CRYSTAL) && !tMaterial.mMaterial.contains(SubTag.METAL)) { - if (RA.addForgeHammerRecipe(GT_Utility.copyAmount(1, aStack), GT_OreDictUnificator.getDust(aData.mMaterial), 200, 32)) + if (tMaterial.mMaterial.contains(SubTag.CRYSTAL) && !tMaterial.mMaterial.contains(SubTag.METAL) && tMaterial.mMaterial != Materials.Glass) { + if (RA.addForgeHammerRecipe(GT_Utility.copyAmount(1, aStack), GT_OreDictUnificator.getDust(aData.mMaterial), 200, 30)) break; } ItemStack tDust = GT_OreDictUnificator.getDust(aData.mMaterial); diff --git a/src/main/java/gregtech/api/util/GT_Utility.java b/src/main/java/gregtech/api/util/GT_Utility.java index eea3499e62..ec4db394e0 100644 --- a/src/main/java/gregtech/api/util/GT_Utility.java +++ b/src/main/java/gregtech/api/util/GT_Utility.java @@ -2,13 +2,11 @@ package gregtech.api.util; import cofh.api.transport.IItemDuct; import cpw.mods.fml.common.FMLCommonHandler; -import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.damagesources.GT_DamageSources; import gregtech.api.enchants.Enchantment_Radioactivity; import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; -import gregtech.api.enums.Materials; import gregtech.api.enums.SubTag; import gregtech.api.events.BlockScanningEvent; import gregtech.api.interfaces.IDebugableBlock; @@ -18,7 +16,6 @@ import gregtech.api.items.GT_EnergyArmor_Item; import gregtech.api.items.GT_Generic_Item; import gregtech.api.net.GT_Packet_Sound; import gregtech.api.objects.GT_ItemStack; -import gregtech.api.objects.GT_UO_Fluid; import gregtech.api.objects.ItemData; import gregtech.api.threads.GT_Runnable_Sound; import gregtech.common.GT_Proxy; @@ -44,22 +41,16 @@ import net.minecraft.nbt.NBTBase.NBTPrimitive; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagList; import net.minecraft.nbt.NBTTagString; -import net.minecraft.network.play.server.S07PacketRespawn; -import net.minecraft.network.play.server.S1DPacketEntityEffect; import net.minecraft.potion.Potion; import net.minecraft.potion.PotionEffect; -import net.minecraft.server.MinecraftServer; import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntityChest; import net.minecraft.util.AxisAlignedBB; import net.minecraft.util.ChatComponentText; import net.minecraft.util.EnumChatFormatting; import net.minecraft.util.MathHelper; -import net.minecraft.world.ChunkCoordIntPair; -import net.minecraft.world.ChunkPosition; import net.minecraft.world.World; import net.minecraft.world.WorldServer; -import net.minecraft.world.chunk.Chunk; import net.minecraftforge.common.DimensionManager; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.common.util.ForgeDirection; @@ -77,7 +68,6 @@ import java.util.Map.Entry; import static gregtech.api.enums.GT_Values.*; import static gregtech.common.GT_Proxy.GTPOLLUTION; -import static gregtech.common.GT_Proxy.dimensionWiseChunkData; import static gregtech.common.GT_UndergroundOil.undergroundOil; /** @@ -2063,7 +2053,7 @@ public class GT_Utility { NBTTagCompound tNBT = getNBT(aStack); String tData = aX + "," + aY + "," + aZ + "," + aDim + ","; if (aFluid!=null) - tData += (aFluid.amount / 5000) + "," + aFluid.getLocalizedName() + ","; + tData += (aFluid.amount) + "," + aFluid.getLocalizedName() + ","; for (String tString : aOres) { tData += tString + ","; } diff --git a/src/main/java/gregtech/common/GT_Client.java b/src/main/java/gregtech/common/GT_Client.java index 7d3f687b28..51264c7676 100644 --- a/src/main/java/gregtech/common/GT_Client.java +++ b/src/main/java/gregtech/common/GT_Client.java @@ -18,6 +18,7 @@ import gregtech.api.interfaces.tileentity.ITurnable; import gregtech.api.metatileentity.BaseMetaPipeEntity; import gregtech.api.util.GT_Log; import gregtech.api.util.GT_PlayedSound; +import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import gregtech.common.entities.GT_Entity_Arrow; import gregtech.common.entities.GT_Entity_Arrow_Potion; @@ -28,6 +29,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.init.Blocks; import net.minecraft.item.ItemStack; +import net.minecraft.stats.StatFileWriter; import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; import net.minecraftforge.client.event.DrawBlockHighlightEvent; @@ -72,6 +74,8 @@ public class GT_Client extends GT_Proxy private final List mMoltenNegG; private final List mMoltenNegB; private final List mMoltenNegA = Arrays.asList(new Object[0]); + /**This is the place to def the value used below**/ + private long afterSomeTime; private long mAnimationTick; private boolean mAnimationDirection; @@ -294,6 +298,16 @@ public class GT_Client extends GT_Proxy @SubscribeEvent public void onPlayerTickEventClient(TickEvent.PlayerTickEvent aEvent) { if ((aEvent.side.isClient()) && (aEvent.phase == TickEvent.Phase.END) && (!aEvent.player.isDead)) { + afterSomeTime++; + if(afterSomeTime>=100L){ + afterSomeTime=0; + StatFileWriter sfw= Minecraft.getMinecraft().thePlayer.getStatFileWriter(); + try { + for(GT_Recipe recipe: GT_Recipe.GT_Recipe_Map.sAssemblylineVisualRecipes.mRecipeList){ + recipe.mHidden=!sfw.hasAchievementUnlocked(GT_Mod.achievements.getAchievement(recipe.getOutput(0).getUnlocalizedName())); + } + }catch (Exception e){} + } ArrayList<GT_PlayedSound> tList = new ArrayList(); for (Map.Entry<GT_PlayedSound, Integer> tEntry : GT_Utility.sPlayedSoundMap.entrySet()) { if (tEntry.getValue().intValue() < 0) {//Integer -> Integer -> int? >_<, fix diff --git a/src/main/java/gregtech/common/GT_Pollution.java b/src/main/java/gregtech/common/GT_Pollution.java index 6669bf861a..9f11e72a92 100644 --- a/src/main/java/gregtech/common/GT_Pollution.java +++ b/src/main/java/gregtech/common/GT_Pollution.java @@ -16,9 +16,10 @@ import net.minecraft.world.ChunkCoordIntPair; import net.minecraft.world.ChunkPosition; import net.minecraft.world.World; import net.minecraft.world.chunk.Chunk; -import net.minecraftforge.event.world.WorldEvent; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; import static gregtech.common.GT_Proxy.*; @@ -99,11 +100,11 @@ public class GT_Pollution { //get pollution int tPollution = chunkData.get(actualPos)[GTPOLLUTION]; //remove some - tPollution = (int)(0.9945f*tPollution); - //tPollution -= 2000;//This does not really matter... + tPollution = (int)(0.99f*tPollution); + tPollution -= 2000; if(tPollution<=0) tPollution = 0;//SANity check - else if(tPollution>400000){//Spread Pollution + else if(tPollution>50000){//Spread Pollution ChunkCoordIntPair[] tNeighbors = new ChunkCoordIntPair[4];//array is faster tNeighbors[0]=(new ChunkCoordIntPair(actualPos.chunkXPos+1,actualPos.chunkZPos)); @@ -116,8 +117,8 @@ public class GT_Pollution { int neighborPollution = chunkData.get(neighborPosition)[GTPOLLUTION]; if(neighborPollution*6 < tPollution*5){//METHEMATICS... int tDiff = tPollution - neighborPollution; - tDiff = tDiff/20; - neighborPollution = GT_Utility.safeInt((long)neighborPollution+tDiff);//tNPol += tDiff; + tDiff = tDiff/10; + neighborPollution += tDiff; tPollution -= tDiff; chunkData.get(neighborPosition)[GTPOLLUTION] = neighborPollution; } @@ -125,7 +126,6 @@ public class GT_Pollution { //Create Pollution effects - //Smog filter TODO if(tPollution > GT_Mod.gregtechproxy.mPollutionSmogLimit) { AxisAlignedBB chunk = AxisAlignedBB.getBoundingBox(actualPos.chunkXPos << 4, 0, actualPos.chunkZPos << 4, (actualPos.chunkXPos << 4) + 16, 256, (actualPos.chunkZPos << 4) + 16); List<EntityLivingBase> tEntitys = aWorld.getEntitiesWithinAABB(EntityLivingBase.class, chunk); @@ -143,7 +143,7 @@ public class GT_Pollution { } - // Poison effects + //Poison effects if (tPollution > GT_Mod.gregtechproxy.mPollutionPoisonLimit) { //AxisAlignedBB chunk = AxisAlignedBB.getBoundingBox(tPos.chunkPosX*16, 0, tPos.chunkPosZ*16, tPos.chunkPosX*16+16, 256, tPos.chunkPosZ*16+16); //List<EntityLiving> tEntitys = aWorld.getEntitiesWithinAABB(EntityLiving.class, chunk); @@ -163,7 +163,7 @@ public class GT_Pollution { } - // killing plants + //killing plants if (tPollution > GT_Mod.gregtechproxy.mPollutionVegetationLimit) { int f = 20; for (; f < (tPollution / 25000); f++) { diff --git a/src/main/java/gregtech/common/GT_Proxy.java b/src/main/java/gregtech/common/GT_Proxy.java index f0706e7d69..2267441d33 100644 --- a/src/main/java/gregtech/common/GT_Proxy.java +++ b/src/main/java/gregtech/common/GT_Proxy.java @@ -1,13 +1,7 @@ package gregtech.common; -import cpw.mods.fml.common.FMLCommonHandler; -import cpw.mods.fml.common.IFuelHandler; -import cpw.mods.fml.common.Loader; -import cpw.mods.fml.common.ModContainer; -import cpw.mods.fml.common.ProgressManager; +import cpw.mods.fml.common.*; import cpw.mods.fml.common.eventhandler.Event.Result; -import cpw.mods.fml.common.eventhandler.EventBus; -import cpw.mods.fml.common.eventhandler.EventPriority; import cpw.mods.fml.common.eventhandler.SubscribeEvent; import cpw.mods.fml.common.gameevent.TickEvent; import cpw.mods.fml.common.network.FMLNetworkEvent; @@ -25,21 +19,12 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.items.GT_MetaGenerated_Item; import gregtech.api.items.GT_MetaGenerated_Tool; import gregtech.api.net.GT_Packet_Pollution; -import gregtech.api.objects.GT_Fluid; -import gregtech.api.objects.GT_FluidStack; -import gregtech.api.objects.GT_UO_DimensionList; -import gregtech.api.objects.ItemData; -import gregtech.api.objects.MaterialStack; +import gregtech.api.objects.*; import gregtech.api.util.*; import gregtech.common.entities.GT_Entity_Arrow; import gregtech.common.items.GT_MetaGenerated_Tool_01; -import gregtech.common.items.armor.*; -import gregtech.common.items.armor.gui.ContainerBasicArmor; -import gregtech.common.items.armor.gui.ContainerElectricArmor1; -import gregtech.common.items.armor.gui.GuiElectricArmor1; -import gregtech.common.items.armor.gui.GuiModularArmor; -import gregtech.common.items.armor.gui.InventoryArmor; -import gregtech.common.tools.GT_Tool; +import gregtech.common.items.armor.ModularArmor_Item; +import gregtech.common.items.armor.gui.*; import net.minecraft.enchantment.Enchantment; import net.minecraft.enchantment.EnchantmentHelper; import net.minecraft.entity.Entity; @@ -61,11 +46,9 @@ import net.minecraft.potion.Potion; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.DamageSource; import net.minecraft.world.ChunkCoordIntPair; -import net.minecraft.world.ChunkPosition; import net.minecraft.world.World; import net.minecraft.world.WorldSettings.GameType; import net.minecraft.world.gen.feature.WorldGenMinable; -import net.minecraftforge.common.DimensionManager; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.event.ForgeEventFactory; import net.minecraftforge.event.entity.EntityJoinWorldEvent; @@ -77,7 +60,6 @@ import net.minecraftforge.event.entity.player.PlayerInteractEvent; import net.minecraftforge.event.terraingen.OreGenEvent; import net.minecraftforge.event.world.BlockEvent; import net.minecraftforge.event.world.ChunkDataEvent; -import net.minecraftforge.event.world.WorldEvent; import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidContainerRegistry; import net.minecraftforge.fluids.FluidRegistry; @@ -209,6 +191,8 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler { public boolean mReenableSimplifiedChemicalRecipes = false; public boolean mAMHInteraction = true; public boolean mForceFreeFace = false; + public boolean mEasierEVPlusCables = false; + public boolean mBrickedBlastFurnace = true; public GT_Proxy() { GameRegistry.registerFuelHandler(this); @@ -1587,7 +1571,54 @@ public abstract class GT_Proxy implements IGT_Mod, IGuiHandler, IFuelHandler { return addFluid("plasma." + aMaterial.mName.toLowerCase(Locale.ENGLISH), "plasma.autogenerated", aMaterial.mDefaultLocalName + " Plasma", aMaterial, aMaterial.mMoltenRGBa, 3, 10000, GT_OreDictUnificator.get(OrePrefixes.cellPlasma, aMaterial, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000); } - + + public void addAutoGeneratedHydroCrackedFluids(Materials aMaterial){ + Fluid[] crackedFluids = new Fluid[3]; + String[] prefixes = {"lightlyhydrocracked.", "moderatelyhydrocracked.", "severelyhydrocracked."}; + String[] localPrefixes = {"Lightly Hydro-Cracked ", "Moderately Hydro-Cracked ", "Severely Hydro-Cracked "}; + GT_Fluid uncrackedFluid = null; + if (aMaterial.mFluid != null) { + uncrackedFluid = (GT_Fluid) aMaterial.mFluid; + } else if (aMaterial.mGas != null) { + uncrackedFluid = (GT_Fluid) aMaterial.mGas; + } + for (int i = 0; i < 3; i++) { + crackedFluids[i] = addFluid(prefixes[i] + aMaterial.mName.toLowerCase(Locale.ENGLISH), uncrackedFluid.mTextureName, + localPrefixes[i] + aMaterial.mDefaultLocalName, null, aMaterial.mRGBa, 2, 775, null, null, 0); + int hydrogenAmount = 2 * i + 2; + GT_Values.RA.addCrackingRecipe(i + 1, new FluidStack(uncrackedFluid, 1000), Materials.Hydrogen.getGas(hydrogenAmount * 1000), + new FluidStack(crackedFluids[i], 1000), 40 + 20 * i, 120 + 60 * i); + GT_Values.RA.addChemicalRecipe(Materials.Hydrogen.getCells(hydrogenAmount), GT_Utility.getIntegratedCircuit(i + 1), new FluidStack(uncrackedFluid, 1000), + new FluidStack(crackedFluids[i], 800), Materials.Empty.getCells(hydrogenAmount), 160 + 80 * i, 30 + 15 * i); + GT_Values.RA.addChemicalRecipe(aMaterial.getCells(1), GT_Utility.getIntegratedCircuit(i + 1), Materials.Hydrogen.getGas(hydrogenAmount * 1000), + new FluidStack(crackedFluids[i], 800), Materials.Empty.getCells(1), 160 + 80 * i, 30 + 15 * i); + } + aMaterial.setHydroCrackedFluids(crackedFluids); + } + + public void addAutoGeneratedSteamCrackedFluids(Materials aMaterial){ + Fluid[] crackedFluids = new Fluid[3]; + String[] prefixes = {"lightlysteamcracked.", "moderatelysteamcracked.", "severelysteamcracked."}; + String[] localPrefixes = {"Lightly Steam-Cracked ", "Moderately Steam-Cracked ", "Severely Steam-Cracked "}; + GT_Fluid uncrackedFluid = null; + if (aMaterial.mFluid != null) { + uncrackedFluid = (GT_Fluid) aMaterial.mFluid; + } else if (aMaterial.mGas != null) { + uncrackedFluid = (GT_Fluid) aMaterial.mGas; + } + for (int i = 0; i < 3; i++) { + crackedFluids[i] = addFluid(prefixes[i] + aMaterial.mName.toLowerCase(Locale.ENGLISH), uncrackedFluid.mTextureName, + localPrefixes[i] + aMaterial.mDefaultLocalName, null, aMaterial.mRGBa, 2, 775, null, null, 0); + GT_Values.RA.addCrackingRecipe(i + 1, new FluidStack(uncrackedFluid, 1000), GT_ModHandler.getSteam(1000), + new FluidStack(crackedFluids[i], 1000), 40 + 20 * i, 240 + 120 * i); + GT_Values.RA.addChemicalRecipe(GT_ModHandler.getIC2Item("steamCell", 1L), GT_Utility.getIntegratedCircuit(i + 1), new FluidStack(uncrackedFluid, 1000), + new FluidStack(crackedFluids[i], 800), Materials.Empty.getCells(1), 160 + 80 * i, 60 + 30 * i); + GT_Values.RA.addChemicalRecipe(aMaterial.getCells(1), GT_Utility.getIntegratedCircuit(i + 1), GT_ModHandler.getSteam(1000), + new FluidStack(crackedFluids[i], 800), Materials.Empty.getCells(1), 160 + 80 * i, 60 + 30 * i); + } + aMaterial.setSteamCrackedFluids(crackedFluids); + } + public Fluid addFluid(String aName, String aLocalized, Materials aMaterial, int aState, int aTemperatureK) { return addFluid(aName, aLocalized, aMaterial, aState, aTemperatureK, null, null, 0); } diff --git a/src/main/java/gregtech/common/GT_RecipeAdder.java b/src/main/java/gregtech/common/GT_RecipeAdder.java index fbe541c7f8..28a5902c7f 100644 --- a/src/main/java/gregtech/common/GT_RecipeAdder.java +++ b/src/main/java/gregtech/common/GT_RecipeAdder.java @@ -1,5 +1,6 @@ package gregtech.common; +import cpw.mods.fml.common.Loader; import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.enums.GT_Values; @@ -13,6 +14,7 @@ import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Recipe.GT_Recipe_AssemblyLine; import gregtech.api.util.GT_Utility; +import mods.railcraft.common.items.RailcraftToolItems; import net.minecraft.init.Blocks; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.Fluid; @@ -100,6 +102,24 @@ public class GT_RecipeAdder return addChemicalRecipe(aInput1, aInput2, aFluidInput, aFluidOutput, aOutput, GT_Values.NI, aDuration, aEUTick); } + public boolean addChemicalRecipeForBasicMachineOnly(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, ItemStack aOutput2, int aDuration, int aEUtick) { + if (((aInput1 == null) && (aFluidInput == null)) || ((aOutput == null) && (aOutput2 == null) && (aFluidOutput == null))) { + return false; + } + if ((aOutput != null || aOutput2 != null) && ((aDuration = GregTech_API.sRecipeFile.get("chemicalreactor", aOutput, aDuration)) <= 0)) { + return false; + } + if ((aFluidOutput != null) && ((aDuration = GregTech_API.sRecipeFile.get("chemicalreactor", aFluidOutput.getFluid().getName(), aDuration)) <= 0)) { + return false; + } + if (aEUtick <= 0) { + return false; + } + GT_Recipe.GT_Recipe_Map.sChemicalRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput, aOutput2}, null, null, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, aDuration, aEUtick, 0); +// GT_Recipe.GT_Recipe_Map.sMultiblockChemicalRecipes.addRecipe(false, new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput, aOutput2}, null, null, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, aDuration, aEUtick, 0); + return true; + } + public boolean addChemicalRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput, ItemStack aOutput2, int aDuration, int aEUtick) { if (((aInput1 == null) && (aFluidInput == null)) || ((aOutput == null) && (aOutput2 == null) && (aFluidOutput == null))) { return false; @@ -114,18 +134,32 @@ public class GT_RecipeAdder return false; } GT_Recipe.GT_Recipe_Map.sChemicalRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput, aOutput2}, null, null, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, aDuration, aEUtick, 0); - GT_Recipe.GT_Recipe_Map.sMultiblockChemicalRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput, aOutput2}, null, null, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, aDuration, aEUtick, 0); + GT_Recipe.GT_Recipe_Map.sMultiblockChemicalRecipes.addRecipe(false, new ItemStack[]{aInput1, aInput2}, new ItemStack[]{aOutput, aOutput2}, null, null, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, aDuration, aEUtick, 0); return true; } + + public boolean addMultiblockChemicalRecipe(ItemStack[] aInputs, FluidStack[] aFluidInputs, FluidStack[] aFluidOutputs, ItemStack[] aOutputs, int aDuration, int aEUtick){ + if (areItemsAndFluidsBothNull(aInputs, aFluidInputs) || areItemsAndFluidsBothNull(aOutputs, aFluidOutputs)) { + return false; + } + if (aEUtick <= 0) { + return false; + } + GT_Recipe.GT_Recipe_Map.sMultiblockChemicalRecipes.addRecipe(false, aInputs, aOutputs, null, null, aFluidInputs, aFluidOutputs, aDuration, aEUtick, 0); + return true; + } @Override public void addDefaultPolymerizationRecipes(Fluid aBasicMaterial, Fluid aPolymer){ - //Oxygen/Titanium -> +50% Output each - GT_Values.RA.addChemicalRecipe(ItemList.Cell_Air.get(2, new Object[0]), GT_Utility.getIntegratedCircuit(1), new GT_FluidStack(aBasicMaterial, 144), new GT_FluidStack(aPolymer, 144), Materials.Empty.getCells(2), 160); - GT_Values.RA.addChemicalRecipe(Materials.Oxygen.getCells(2), GT_Utility.getIntegratedCircuit(1), new GT_FluidStack(aBasicMaterial, 144), new GT_FluidStack(aPolymer, 216), Materials.Empty.getCells(2), 160); - GT_Values.RA.addChemicalRecipe(ItemList.Cell_Air.get(12, new Object[0]),Materials.Titanium.getDustTiny(1), new GT_FluidStack(aBasicMaterial, 1728), new GT_FluidStack(aPolymer, 2592), Materials.Empty.getCells(12), 640); - GT_Values.RA.addChemicalRecipe(Materials.Oxygen.getCells(12), Materials.Titanium.getDustTiny(1), new GT_FluidStack(aBasicMaterial, 1728), new GT_FluidStack(aPolymer, 3456), Materials.Empty.getCells(12), 640); - + //Oxygen/Titaniumtetrafluoride -> +50% Output each + addChemicalRecipe(ItemList.Cell_Air.get(2, new Object[0]), GT_Utility.getIntegratedCircuit(1), new GT_FluidStack(aBasicMaterial, 144), new GT_FluidStack(aPolymer, 144), Materials.Empty.getCells(2), 160); + addChemicalRecipe(Materials.Oxygen.getCells(2), GT_Utility.getIntegratedCircuit(1), new GT_FluidStack(aBasicMaterial, 144), new GT_FluidStack(aPolymer, 216), Materials.Empty.getCells(2), 160); + addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(2)}, + new FluidStack[]{new GT_FluidStack(aBasicMaterial, 2160), Materials.Air.getGas(15000), Materials.Titaniumtetrachloride.getFluid(100)}, + new FluidStack[]{new GT_FluidStack(aPolymer, 3240)}, null, 800, 30); + addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(2)}, + new FluidStack[]{new GT_FluidStack(aBasicMaterial, 2160), Materials.Oxygen.getGas(15000), Materials.Titaniumtetrachloride.getFluid(100)}, + new FluidStack[]{new GT_FluidStack(aPolymer, 4320)}, null, 800, 30); } public boolean addBlastRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, ItemStack aOutput2, int aDuration, int aEUt, int aLevel) { @@ -143,6 +177,26 @@ public class GT_RecipeAdder return true; } + public boolean addPrimitiveBlastRecipe(ItemStack aInput1, ItemStack aInput2, int aCoalAmount, ItemStack aOutput1, ItemStack aOutput2, int aDuration) { + if ((aInput1 == null && aInput2 == null) || (aOutput1 == null && aOutput2 == null)) { + return false; + } + if (aCoalAmount <= 0) { + return false; + } + if ((aDuration = GregTech_API.sRecipeFile.get("primitiveblastfurnace", aInput1, aDuration)) <= 0) { + return false; + } + for (Materials coal : new Materials[]{Materials.Coal, Materials.Charcoal}) { + GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2, coal.getGems(aCoalAmount)}, new ItemStack[]{aOutput1, aOutput2, Materials.DarkAsh.getDustTiny(aCoalAmount)}, null, null, null, null, aDuration, 0, 0); + GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2, coal.getDust(aCoalAmount)}, new ItemStack[]{aOutput1, aOutput2, Materials.DarkAsh.getDustTiny(aCoalAmount)}, null, null, null, null, aDuration, 0, 0); + } + if (Loader.isModLoaded("Railcraft")) { + GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes.addRecipe(true, new ItemStack[]{aInput1, aInput2, RailcraftToolItems.getCoalCoke(aCoalAmount / 2)}, new ItemStack[]{aOutput1, aOutput2, Materials.Ash.getDustTiny(aCoalAmount / 2)}, null, null, null, null, aDuration * 2 / 3, 0, 0); + } + return true; + } + public boolean addCannerRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aOutput1, ItemStack aOutput2, int aDuration, int aEUt) { if ((aInput1 == null) || (aOutput1 == null)) { return false; @@ -241,13 +295,20 @@ public class GT_RecipeAdder } public boolean addAssemblerRecipe(ItemStack aInput1, ItemStack aInput2, FluidStack aFluidInput, ItemStack aOutput1, int aDuration, int aEUt) { - if ((aInput1 == null) || (aOutput1 == null)) { - return false; - } - if ((aDuration = GregTech_API.sRecipeFile.get("assembling", aOutput1, aDuration)) <= 0) { + return addAssemblerRecipe(new ItemStack[]{aInput1, aInput2}, aFluidInput, aOutput1, aDuration, aEUt); + } + + public boolean addAssemblerRecipe(ItemStack[] aInputs, FluidStack aFluidInput, ItemStack aOutput1, int aDuration, int aEUt) { + if (areItemsAndFluidsBothNull(aInputs, new FluidStack[]{aFluidInput})) { + return false; + } + if (aOutput1 == null) { + return false; + } + if ((aDuration = GregTech_API.sRecipeFile.get("assembling", aOutput1, aDuration)) <= 0) { return false; } - GT_Recipe.GT_Recipe_Map.sAssemblerRecipes.addRecipe(true, new ItemStack[]{aInput1, (aInput2 == null ? aInput1 : aInput2)}, new ItemStack[]{aOutput1}, null, new FluidStack[]{aFluidInput == null ? null : aFluidInput}, null, aDuration, aEUt, 0); + GT_Recipe.GT_Recipe_Map.sAssemblerRecipes.addRecipe(true, aInputs, new ItemStack[]{aOutput1}, null, new FluidStack[]{aFluidInput}, null, aDuration, aEUt, 0); return true; } @@ -326,7 +387,7 @@ public class GT_RecipeAdder } int tExplosives = aInput2 > 0 ? aInput2 < 64 ? aInput2 : 64 : 1; int tGunpowder = tExplosives * 2; - int tDynamite = tExplosives * 4; + int tDynamite = Math.max(1, tExplosives / 2); int tTNT = Math.max(1, tExplosives/2); int tITNT = Math.max(1, tExplosives/4); //new GT_Recipe(aInput1, aInput2, aOutput1, aOutput2); @@ -357,30 +418,14 @@ public class GT_RecipeAdder @Override public boolean addUniversalDistillationRecipe(FluidStack aInput, FluidStack[] aOutputs, ItemStack aOutput2, int aDuration, int aEUt) { - if (aOutputs.length > 0) { - addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 0L, new Object[0]), aInput, aOutputs[0], aDuration * 2, aEUt / 4, false); - } - if (aOutputs.length > 1) { - addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), aInput, aOutputs[1], aDuration * 2, aEUt / 4, false); - } - if (aOutputs.length > 2) { - addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 2L, new Object[0]), aInput, aOutputs[2], aDuration * 2, aEUt / 4, false); - } - if (aOutputs.length > 3) { - addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 3L, new Object[0]), aInput, aOutputs[3], aDuration * 2, aEUt / 4, false); - } - if (aOutputs.length > 4) { - addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 4L, new Object[0]), aInput, aOutputs[4], aDuration * 2, aEUt / 4, false); - } - if (aOutputs.length > 5) { - addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 5L, new Object[0]), aInput, aOutputs[5], aDuration * 2, aEUt / 4, false); - } - + for (int i = 0; i < Math.min(aOutputs.length, 11); i++) { + addDistilleryRecipe(i + 1, aInput, aOutputs[i], aOutput2, aDuration * 2, aEUt / 4, false); + } return addDistillationTowerRecipe(aInput, aOutputs, aOutput2, aDuration, aEUt); } public boolean addDistillationTowerRecipe(FluidStack aInput, FluidStack[] aOutputs, ItemStack aOutput2, int aDuration, int aEUt) { - if (aInput == null || aOutputs == null || aOutputs.length < 1 || aOutputs.length > 5) { + if (aInput == null || aOutputs == null || aOutputs.length < 1 || aOutputs.length > 11) { return false; } if ((aDuration = GregTech_API.sRecipeFile.get("distillation", aInput.getUnlocalizedName(), aDuration)) <= 0) { @@ -510,22 +555,30 @@ public class GT_RecipeAdder return true; } - public boolean addDistilleryRecipe(ItemStack aCircuit, FluidStack aInput, FluidStack aOutput, int aDuration, int aEUt, boolean aHidden) { + public boolean addDistilleryRecipe(ItemStack aCircuit, FluidStack aInput, FluidStack aOutput, ItemStack aSolidOutput, int aDuration, int aEUt, boolean aHidden) { if ((aInput == null) || (aOutput == null)) { return false; } if ((aDuration = GregTech_API.sRecipeFile.get("distillery", aOutput.getFluid().getUnlocalizedName(), aDuration)) <= 0) { return false; } - GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sDistilleryRecipes.addRecipe(true, new ItemStack[]{aCircuit}, null, null, new FluidStack[]{aInput}, new FluidStack[]{aOutput}, aDuration, aEUt, 0); + GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sDistilleryRecipes.addRecipe(true, new ItemStack[]{aCircuit}, new ItemStack[]{aSolidOutput}, null, new FluidStack[]{aInput}, new FluidStack[]{aOutput}, aDuration, aEUt, 0); if ((aHidden) && (tRecipe != null)) { tRecipe.mHidden = true; } return true; } + public boolean addDistilleryRecipe(ItemStack aCircuit, FluidStack aInput, FluidStack aOutput, int aDuration, int aEUt, boolean aHidden) { + return addDistilleryRecipe(aCircuit, aInput, aOutput, null, aDuration, aEUt, aHidden); + } + + public boolean addDistilleryRecipe(int circuitConfig, FluidStack aInput, FluidStack aOutput, ItemStack aSolidOutput, int aDuration, int aEUt, boolean aHidden) { + return addDistilleryRecipe(GT_Utility.getIntegratedCircuit(circuitConfig), aInput, aOutput, aSolidOutput, aDuration, aEUt, aHidden); + } + public boolean addDistilleryRecipe(int circuitConfig, FluidStack aInput, FluidStack aOutput, int aDuration, int aEUt, boolean aHidden) { - return addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, circuitConfig, new Object[0]), aInput, aOutput, aDuration, aEUt, aHidden); + return addDistilleryRecipe(GT_Utility.getIntegratedCircuit(circuitConfig), aInput, aOutput, aDuration, aEUt, aHidden); } public boolean addFluidSolidifierRecipe(ItemStack aMold, FluidStack aInput, ItemStack aOutput, int aDuration, int aEUt) { @@ -851,20 +904,35 @@ public class GT_RecipeAdder } @Override + @Deprecated public boolean addCrackingRecipe(FluidStack aInput, FluidStack aOutput, int aDuration, int aEUt) { - if ((aInput == null) || (aOutput == null)) { +// if ((aInput == null) || (aOutput == null)) { +// return false; +// } +// if ((aDuration = GregTech_API.sRecipeFile.get("cracking", aInput.getUnlocalizedName(), aDuration)) <= 0) { +// return false; +// } +// GT_Recipe.GT_Recipe_Map.sCrakingRecipes.addRecipe(true, null, null, null, null, new FluidStack[]{aInput}, new FluidStack[]{aOutput}, aDuration, aEUt, 0); +// GT_Recipe.GT_Recipe_Map.sCrakingRecipes.addRecipe(true, null, null, null, null, new FluidStack[]{aInput, GT_ModHandler.getSteam(aInput.amount)}, new FluidStack[]{aOutput, Materials.Hydrogen.getGas(aInput.amount)}, aDuration, aEUt, 0); +// GT_Recipe.GT_Recipe_Map.sCrakingRecipes.addRecipe(true, null, null, null, null, new FluidStack[]{aInput, Materials.Hydrogen.getGas(aInput.amount)}, new FluidStack[]{new FluidStack(aOutput.getFluid(), (int) (aOutput.amount * 1.3))}, aDuration, aEUt, 0); +// return true; + return false; + } + + @Override + public boolean addCrackingRecipe(int circuitConfig, FluidStack aInput, FluidStack aInput2, FluidStack aOutput, int aDuration, int aEUt) { + if ((aInput == null && aInput2 == null) || (aOutput == null)) { return false; } if ((aDuration = GregTech_API.sRecipeFile.get("cracking", aInput.getUnlocalizedName(), aDuration)) <= 0) { return false; } - GT_Recipe.GT_Recipe_Map.sCrakingRecipes.addRecipe(true, null, null, null, null, new FluidStack[]{aInput}, new FluidStack[]{aOutput}, aDuration, aEUt, 0); - GT_Recipe.GT_Recipe_Map.sCrakingRecipes.addRecipe(true, null, null, null, null, new FluidStack[]{aInput, GT_ModHandler.getSteam(aInput.amount)}, new FluidStack[]{aOutput, Materials.Hydrogen.getGas(aInput.amount)}, aDuration, aEUt, 0); - GT_Recipe.GT_Recipe_Map.sCrakingRecipes.addRecipe(true, null, null, null, null, new FluidStack[]{aInput, Materials.Hydrogen.getGas(aInput.amount)}, new FluidStack[]{new FluidStack(aOutput.getFluid(), (int) (aOutput.amount * 1.3))}, aDuration, aEUt, 0); + GT_Recipe.GT_Recipe_Map.sCrakingRecipes.addRecipe(false, new ItemStack[]{GT_Utility.getIntegratedCircuit(circuitConfig)}, null, null, null, + new FluidStack[]{aInput, aInput2}, new FluidStack[]{aOutput}, aDuration, aEUt, 0); return true; } - @Override + @Override public boolean addAssemblylineRecipe(ItemStack aResearchItem, int aResearchTime, ItemStack[] aInputs, FluidStack[] aFluidInputs, ItemStack aOutput, int aDuration, int aEUt) { if ((aResearchItem==null)||(aResearchTime<=0)||(aInputs == null) || (aOutput == null) || aInputs.length>15 || aInputs.length<4) { return false; @@ -873,10 +941,12 @@ public class GT_RecipeAdder return false; } for(ItemStack tItem : aInputs){ - if(tItem==null)System.out.println("addAssemblylineRecipe"+aResearchItem.getDisplayName()); + if(tItem==null){ + System.out.println("addAssemblingLineRecipe "+aResearchItem.getDisplayName()+" --> "+aOutput.getUnlocalizedName()+" there is some null item in that recipe"); + } } - GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{aResearchItem}, new ItemStack[]{aOutput}, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Research result", new Object[0])}, null, null, aResearchTime, 30, 0); - GT_Recipe.GT_Recipe_Map.sAssemblylineVisualRecipes.addFakeRecipe(false, aInputs, new ItemStack[]{aOutput}, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Reads Research result", new Object[0])}, aFluidInputs, null, aDuration, aEUt, 0); + GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[]{aResearchItem}, new ItemStack[]{aOutput}, new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Writes Research result", new Object[0])}, null, null, aResearchTime, 30, 0); + GT_Recipe.GT_Recipe_Map.sAssemblylineVisualRecipes.addFakeRecipe(false,aInputs,new ItemStack[]{aOutput},new ItemStack[]{ItemList.Tool_DataStick.getWithName(1L, "Reads Research result", new Object[0])},aFluidInputs,null,aDuration,aEUt,0,true); GT_Recipe.GT_Recipe_AssemblyLine.sAssemblylineRecipes.add(new GT_Recipe_AssemblyLine( aResearchItem, aResearchTime, aInputs, aFluidInputs, aOutput, aDuration, aEUt)); return true; } @@ -893,7 +963,27 @@ public class GT_RecipeAdder return true; } + private boolean areItemsAndFluidsBothNull(ItemStack[] items, FluidStack[] fluids){ + boolean itemsNull = true; + if (items != null) { + for (ItemStack itemStack : items) { + if (itemStack != null) { + itemsNull = false; + break; + } + } + } + boolean fluidsNull = true; + if (fluids != null) { + for (FluidStack fluidStack : fluids) { + if (fluidStack != null) { + fluidsNull = false; + break; + } + } + } + return itemsNull && fluidsNull; - + } } diff --git a/src/main/java/gregtech/common/GT_UndergroundOil.java b/src/main/java/gregtech/common/GT_UndergroundOil.java index a3e0962100..83262716ae 100644 --- a/src/main/java/gregtech/common/GT_UndergroundOil.java +++ b/src/main/java/gregtech/common/GT_UndergroundOil.java @@ -4,18 +4,14 @@ import gregtech.GT_Mod; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.objects.GT_UO_Fluid; import gregtech.api.objects.XSTR; -import gregtech.common.GT_Proxy; import net.minecraft.world.ChunkCoordIntPair; -import net.minecraft.world.ChunkPosition; import net.minecraft.world.World; import net.minecraft.world.chunk.Chunk; -import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; import java.util.HashMap; -import static gregtech.api.util.GT_Utility.getScaleCoordinates; import static gregtech.common.GT_Proxy.*; /** diff --git a/src/main/java/gregtech/common/blocks/GT_Block_Casings4.java b/src/main/java/gregtech/common/blocks/GT_Block_Casings4.java index d5930907a5..02940414b3 100644 --- a/src/main/java/gregtech/common/blocks/GT_Block_Casings4.java +++ b/src/main/java/gregtech/common/blocks/GT_Block_Casings4.java @@ -38,6 +38,7 @@ public class GT_Block_Casings4 GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".12.name", "Tungstensteel Turbine Casing"); GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".13.name", "Engine Intake Casing"); GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".14.name", "Mining Osmiridium Casing"); + GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".15.name", "Firebricks"); ItemList.Casing_RobustTungstenSteel.set(new ItemStack(this, 1, 0)); ItemList.Casing_CleanStainlessSteel.set(new ItemStack(this, 1, 1)); @@ -52,6 +53,7 @@ public class GT_Block_Casings4 ItemList.Casing_Turbine3.set(new ItemStack(this, 1, 12)); ItemList.Casing_EngineIntake.set(new ItemStack(this, 1, 13)); ItemList.Casing_MiningOsmiridium.set(new ItemStack(this, 1, 14)); + ItemList.Casing_Firebricks.set(new ItemStack(this, 1, 15)); } public IIcon getIcon(int aSide, int aMeta) { @@ -89,7 +91,7 @@ public class GT_Block_Casings4 case 14: return Textures.BlockIcons.MACHINE_CASING_MINING_OSMIRIDIUM.getIcon(); case 15: - return Textures.BlockIcons.MACHINE_CASING_ROBUST_TUNGSTENSTEEL.getIcon(); + return Textures.BlockIcons.MACHINE_CASING_DENSEBRICKS.getIcon(); } return Textures.BlockIcons.MACHINE_CASING_SOLID_STEEL.getIcon(); } diff --git a/src/main/java/gregtech/common/blocks/GT_Block_Casings8.java b/src/main/java/gregtech/common/blocks/GT_Block_Casings8.java index b70ece17a9..b085bbe6a3 100644 --- a/src/main/java/gregtech/common/blocks/GT_Block_Casings8.java +++ b/src/main/java/gregtech/common/blocks/GT_Block_Casings8.java @@ -17,7 +17,7 @@ public class GT_Block_Casings8 Textures.BlockIcons.CASING_BLOCKS[(i + 112)] = new GT_CopiedBlockTexture(this, 6, i);
}
GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".0.name", "Chemically Inert Machine Casing");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".1.name", "PTFE Pipe Machine Casing");
+ GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".1.name", "PTFE Pipe Casing");
ItemList.Casing_Chemically_Inert.set(new ItemStack(this, 1, 0));
ItemList.Casing_Pipe_Polytetrafluoroethylene.set(new ItemStack(this, 1, 1));
diff --git a/src/main/java/gregtech/common/blocks/GT_Block_Machines.java b/src/main/java/gregtech/common/blocks/GT_Block_Machines.java index 42e50794a2..6fc14cb9e8 100644 --- a/src/main/java/gregtech/common/blocks/GT_Block_Machines.java +++ b/src/main/java/gregtech/common/blocks/GT_Block_Machines.java @@ -206,15 +206,25 @@ public class GT_Block_Machines return super.getSelectedBoundingBoxFromPool(aWorld, aX, aY, aZ);
}
- @Override
+ @Override //THIS
public void setBlockBoundsBasedOnState(IBlockAccess blockAccess, int aX, int aY, int aZ) {
TileEntity tTileEntity = blockAccess.getTileEntity(aX, aY, aZ);
if (((tTileEntity instanceof IGregTechTileEntity)) && (((IGregTechTileEntity) tTileEntity).getMetaTileEntity() != null)) {
- AxisAlignedBB bbb = ((IGregTechTileEntity) tTileEntity).getCollisionBoundingBoxFromPool(((IGregTechTileEntity) tTileEntity).getWorld(), aX, aY, aZ).getOffsetBoundingBox(-aX, -aY, -aZ);
- setBlockBounds((float) bbb.minX, (float) bbb.minY, (float) bbb.minZ, (float) bbb.maxX, (float) bbb.maxY, (float) bbb.maxZ);
+ AxisAlignedBB bbb=((IGregTechTileEntity)tTileEntity).getCollisionBoundingBoxFromPool(((IGregTechTileEntity)tTileEntity).getWorld(), 0, 0, 0);
+ minX=bbb.minX;//This essentially sets block bounds
+ minY=bbb.minY;
+ minZ=bbb.minZ;
+ maxX=bbb.maxX;
+ maxY=bbb.maxY;
+ maxZ=bbb.maxZ;
return;
}
- super.setBlockBoundsBasedOnState(blockAccess, aX, aY, aZ);
+ super.setBlockBoundsBasedOnState(blockAccess,aX,aY,aZ);
+ }
+
+ @Override
+ public void setBlockBoundsForItemRender() {
+ super.setBlockBounds(0,0,0,1,1,1);
}
public void onEntityCollidedWithBlock(World aWorld, int aX, int aY, int aZ, Entity collider) {
diff --git a/src/main/java/gregtech/common/blocks/GT_Block_Reinforced.java b/src/main/java/gregtech/common/blocks/GT_Block_Reinforced.java index c63882e944..38452e12a6 100644 --- a/src/main/java/gregtech/common/blocks/GT_Block_Reinforced.java +++ b/src/main/java/gregtech/common/blocks/GT_Block_Reinforced.java @@ -14,13 +14,10 @@ import gregtech.api.objects.MaterialStack; import gregtech.api.util.GT_LanguageManager; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; -import ic2.core.block.EntityIC2Explosive; -import ic2.core.block.EntityItnt; import net.minecraft.block.Block; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.EnumCreatureType; import net.minecraft.entity.boss.EntityWither; import net.minecraft.entity.item.EntityTNTPrimed; diff --git a/src/main/java/gregtech/common/blocks/GT_Item_Casings1.java b/src/main/java/gregtech/common/blocks/GT_Item_Casings1.java index 81b865d4fe..1182b64b51 100644 --- a/src/main/java/gregtech/common/blocks/GT_Item_Casings1.java +++ b/src/main/java/gregtech/common/blocks/GT_Item_Casings1.java @@ -1,7 +1,5 @@ package gregtech.common.blocks;
-import java.util.List;
-
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.Block;
@@ -9,6 +7,8 @@ import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumChatFormatting;
+import java.util.List;
+
public class GT_Item_Casings1
extends GT_Item_Casings_Abstract {
public GT_Item_Casings1(Block par1) {
diff --git a/src/main/java/gregtech/common/blocks/GT_Item_Casings5.java b/src/main/java/gregtech/common/blocks/GT_Item_Casings5.java index 36e7fea047..09d79b75dc 100644 --- a/src/main/java/gregtech/common/blocks/GT_Item_Casings5.java +++ b/src/main/java/gregtech/common/blocks/GT_Item_Casings5.java @@ -1,13 +1,13 @@ package gregtech.common.blocks; -import java.util.List; - import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.block.Block; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; +import java.util.List; + public class GT_Item_Casings5 extends GT_Item_Casings_Abstract { public GT_Item_Casings5(Block par1) { diff --git a/src/main/java/gregtech/common/blocks/GT_Item_Casings_Abstract.java b/src/main/java/gregtech/common/blocks/GT_Item_Casings_Abstract.java index e7298154dc..66e4b7dc0d 100644 --- a/src/main/java/gregtech/common/blocks/GT_Item_Casings_Abstract.java +++ b/src/main/java/gregtech/common/blocks/GT_Item_Casings_Abstract.java @@ -1,7 +1,5 @@ package gregtech.common.blocks;
-import java.util.List;
-
import gregtech.api.GregTech_API;
import gregtech.api.util.GT_LanguageManager;
import net.minecraft.block.Block;
@@ -9,6 +7,8 @@ import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
+import java.util.List;
+
public abstract class GT_Item_Casings_Abstract
extends ItemBlock {
protected final String mNoMobsToolTip = GT_LanguageManager.addStringLocalization("gt.nomobspawnsonthisblock", "Mobs cannot Spawn on this Block");
diff --git a/src/main/java/gregtech/common/blocks/GT_Item_Machines.java b/src/main/java/gregtech/common/blocks/GT_Item_Machines.java index 8189a8a52b..4fff514672 100644 --- a/src/main/java/gregtech/common/blocks/GT_Item_Machines.java +++ b/src/main/java/gregtech/common/blocks/GT_Item_Machines.java @@ -12,7 +12,6 @@ import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
-import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.EnumChatFormatting;
import net.minecraft.world.World;
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Arm.java b/src/main/java/gregtech/common/covers/GT_Cover_Arm.java index 240ca3667d..814360ce5a 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_Arm.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_Arm.java @@ -3,7 +3,6 @@ package gregtech.common.covers; import gregtech.api.interfaces.tileentity.ICoverable;
import gregtech.api.interfaces.tileentity.IMachineProgress;
import gregtech.api.util.GT_CoverBehavior;
-import gregtech.api.util.GT_LanguageManager;
import gregtech.api.util.GT_Utility;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.tileentity.TileEntity;
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Fluidfilter.java b/src/main/java/gregtech/common/covers/GT_Cover_Fluidfilter.java index 9d54e83569..2d271ffccf 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_Fluidfilter.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_Fluidfilter.java @@ -1,23 +1,11 @@ package gregtech.common.covers; -import gregtech.api.GregTech_API; import gregtech.api.interfaces.tileentity.ICoverable; -import gregtech.api.interfaces.tileentity.IMachineProgress; -import gregtech.api.objects.ItemData; import gregtech.api.util.GT_CoverBehavior; -import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; -import net.minecraftforge.common.util.ForgeDirection; -import net.minecraftforge.fluids.Fluid; -import net.minecraftforge.fluids.FluidContainerRegistry; -import net.minecraftforge.fluids.FluidRegistry; -import net.minecraftforge.fluids.FluidContainerRegistry.FluidContainerData; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fluids.FluidTankInfo; -import net.minecraftforge.fluids.IFluidContainerItem; -import net.minecraftforge.fluids.IFluidHandler; +import net.minecraftforge.fluids.*; public class GT_Cover_Fluidfilter diff --git a/src/main/java/gregtech/common/covers/GT_Cover_NeedMaintainance.java b/src/main/java/gregtech/common/covers/GT_Cover_NeedMaintainance.java index 4c0f47751f..e61324ff44 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_NeedMaintainance.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_NeedMaintainance.java @@ -74,8 +74,8 @@ public class GT_Cover_NeedMaintainance extends GT_CoverBehavior { case 7: GT_Utility.sendChatToPlayer(aPlayer, trans("063", "Emit if 4 Maintenance Needed(inverted)")); break; case 8: GT_Utility.sendChatToPlayer(aPlayer, trans("064", "Emit if 5 Maintenance Needed")); break; case 9: GT_Utility.sendChatToPlayer(aPlayer, trans("065", "Emit if 5 Maintenance Needed(inverted)")); break; - case 10: GT_Utility.sendChatToPlayer(aPlayer, trans("066", "Emit if rotor needs maintainance")); break; - case 11: GT_Utility.sendChatToPlayer(aPlayer, trans("067", "Emit if rotor needs maintainance(inverted)")); break; + case 10: GT_Utility.sendChatToPlayer(aPlayer, trans("066", "Emit if rotor needs maintenance")); break; + case 11: GT_Utility.sendChatToPlayer(aPlayer, trans("067", "Emit if rotor needs maintenance(inverted)")); break; } return aCoverVariable; } diff --git a/src/main/java/gregtech/common/covers/GT_Cover_PlayerDetector.java b/src/main/java/gregtech/common/covers/GT_Cover_PlayerDetector.java index 9e6c764170..09d990feb6 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_PlayerDetector.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_PlayerDetector.java @@ -57,8 +57,8 @@ public class GT_Cover_PlayerDetector extends GT_CoverBehavior { if(aCoverVariable <0){aCoverVariable = 2;} switch(aCoverVariable) { case 0: GT_Utility.sendChatToPlayer(aPlayer, trans("068", "Emit if any Player is close")); break; - case 1: GT_Utility.sendChatToPlayer(aPlayer, trans("069", "Emit if other Player is close")); break; - case 2: GT_Utility.sendChatToPlayer(aPlayer, trans("070", "Emit if you are close")); break; + case 1: GT_Utility.sendChatToPlayer(aPlayer, trans("070", "Emit if you are close")); break; + case 2: GT_Utility.sendChatToPlayer(aPlayer, trans("069", "Emit if other Player is close")); break; } return aCoverVariable; } diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Shutter.java b/src/main/java/gregtech/common/covers/GT_Cover_Shutter.java index 0bc513c2d6..10c06ca73e 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_Shutter.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_Shutter.java @@ -20,7 +20,7 @@ public class GT_Cover_Shutter case 0: GT_Utility.sendChatToPlayer(aPlayer, trans("082", "Open if work enabled")); break;
case 1: GT_Utility.sendChatToPlayer(aPlayer, trans("083", "Open if work disabled")); break;
case 2: GT_Utility.sendChatToPlayer(aPlayer, trans("084", "Only Output allowed")); break;
- case 3: GT_Utility.sendChatToPlayer(aPlayer, trans("085", "Only Intput allowed")); break;
+ case 3: GT_Utility.sendChatToPlayer(aPlayer, trans("085", "Only Input allowed")); break;
}
return aCoverVariable;
}
diff --git a/src/main/java/gregtech/common/gui/GT_Container_Filter.java b/src/main/java/gregtech/common/gui/GT_Container_Filter.java index 9e5e2195fc..824432b0c4 100644 --- a/src/main/java/gregtech/common/gui/GT_Container_Filter.java +++ b/src/main/java/gregtech/common/gui/GT_Container_Filter.java @@ -3,7 +3,6 @@ package gregtech.common.gui; import gregtech.api.gui.GT_ContainerMetaTile_Machine;
import gregtech.api.gui.GT_Slot_Holo;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_Utility;
import gregtech.common.tileentities.automation.GT_MetaTileEntity_Filter;
import net.minecraft.entity.player.EntityPlayer;
diff --git a/src/main/java/gregtech/common/gui/GT_Container_PrimitiveBlastFurnace.java b/src/main/java/gregtech/common/gui/GT_Container_PrimitiveBlastFurnace.java new file mode 100644 index 0000000000..647c1b99f8 --- /dev/null +++ b/src/main/java/gregtech/common/gui/GT_Container_PrimitiveBlastFurnace.java @@ -0,0 +1,33 @@ +package gregtech.common.gui;
+
+import gregtech.api.gui.GT_ContainerMetaTile_Machine;
+import gregtech.api.gui.GT_Slot_Output;
+import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
+import gregtech.common.tileentities.machines.multi.GT_MetaTileEntity_PrimitiveBlastFurnace;
+import net.minecraft.entity.player.InventoryPlayer;
+import net.minecraft.inventory.Slot;
+
+public class GT_Container_PrimitiveBlastFurnace extends GT_ContainerMetaTile_Machine {
+
+ public GT_Container_PrimitiveBlastFurnace(InventoryPlayer inventoryPlayer, IGregTechTileEntity tileEntity) {
+ super(inventoryPlayer, tileEntity);
+ }
+
+ public void addSlots(InventoryPlayer aInventoryPlayer) {
+ for (int i = 0; i < GT_MetaTileEntity_PrimitiveBlastFurnace.INPUT_SLOTS; i++) {
+ addSlotToContainer(new Slot(this.mTileEntity, i, 34, 16 + 18 * i));
+ }
+ for (int i = 0; i < GT_MetaTileEntity_PrimitiveBlastFurnace.OUTPUT_SLOTS; i++) {
+ addSlotToContainer(new GT_Slot_Output(mTileEntity, GT_MetaTileEntity_PrimitiveBlastFurnace.INPUT_SLOTS + i, 86 + i * 18, 25));
+ }
+ }
+
+ public int getSlotCount() {
+ return GT_MetaTileEntity_PrimitiveBlastFurnace.INPUT_SLOTS
+ + GT_MetaTileEntity_PrimitiveBlastFurnace.OUTPUT_SLOTS;
+ }
+
+ public int getShiftClickSlotCount() {
+ return GT_MetaTileEntity_PrimitiveBlastFurnace.INPUT_SLOTS;
+ }
+}
diff --git a/src/main/java/gregtech/common/gui/GT_Container_Regulator.java b/src/main/java/gregtech/common/gui/GT_Container_Regulator.java index b4e8e7aebb..6a3d7b2f47 100644 --- a/src/main/java/gregtech/common/gui/GT_Container_Regulator.java +++ b/src/main/java/gregtech/common/gui/GT_Container_Regulator.java @@ -5,7 +5,6 @@ import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.gui.GT_ContainerMetaTile_Machine;
import gregtech.api.gui.GT_Slot_Holo;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.util.GT_LanguageManager;
import gregtech.api.util.GT_Utility;
import gregtech.common.tileentities.automation.GT_MetaTileEntity_Regulator;
import net.minecraft.entity.player.EntityPlayer;
diff --git a/src/main/java/gregtech/common/gui/GT_GUIContainer_PrimitiveBlastFurnace.java b/src/main/java/gregtech/common/gui/GT_GUIContainer_PrimitiveBlastFurnace.java new file mode 100644 index 0000000000..5798d67175 --- /dev/null +++ b/src/main/java/gregtech/common/gui/GT_GUIContainer_PrimitiveBlastFurnace.java @@ -0,0 +1,31 @@ +package gregtech.common.gui;
+
+import gregtech.api.gui.GT_GUIContainerMetaTile_Machine;
+import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
+import net.minecraft.entity.player.InventoryPlayer;
+
+public class GT_GUIContainer_PrimitiveBlastFurnace extends GT_GUIContainerMetaTile_Machine {
+ private String name;
+
+ public GT_GUIContainer_PrimitiveBlastFurnace(InventoryPlayer inventoryPlayer, IGregTechTileEntity tileEntity, String name) {
+ super(new GT_Container_PrimitiveBlastFurnace(inventoryPlayer, tileEntity),
+ String.format("gregtech:textures/gui/%s.png", name.replace(" ", "")));
+ this.name = name;
+ }
+
+ protected void drawGuiContainerForegroundLayer(int par1, int par2) {
+ this.fontRendererObj.drawString(name, 8, 4, 4210752);
+ }
+
+ protected void drawGuiContainerBackgroundLayer(float par1, int par2, int par3) {
+ super.drawGuiContainerBackgroundLayer(par1, par2, par3);
+ int x = (this.width - this.xSize) / 2;
+ int y = (this.height - this.ySize) / 2;
+ drawTexturedModalRect(x, y, 0, 0, this.xSize, this.ySize);
+ if ((this.mContainer != null) && (this.mContainer.mProgressTime > 0)) {
+ drawTexturedModalRect(x + 58, y + 28, 176, 0, Math.max(0, Math.min(20, (1)
+ + this.mContainer.mProgressTime * 20 / (this.mContainer.mMaxProgressTime < 1 ? 1 : this.mContainer.mMaxProgressTime))),
+ 11);
+ }
+ }
+}
diff --git a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java index 46e9a368ec..8f491ac5e0 100644 --- a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java +++ b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java @@ -104,6 +104,9 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 { GT_ModHandler.addCraftingRecipe(ItemList.Component_Minecart_Wheels_Iron.get(1L, new Object[0]), GT_ModHandler.RecipeBits.BUFFERED | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{" h ", "RSR", " w ", 'R', OrePrefixes.ring.get(Materials.AnyIron), 'S', OrePrefixes.stick.get(Materials.AnyIron)});
GT_ModHandler.addCraftingRecipe(ItemList.Component_Minecart_Wheels_Steel.get(1L, new Object[0]), GT_ModHandler.RecipeBits.BUFFERED | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{" h ", "RSR", " w ", 'R', OrePrefixes.ring.get(Materials.Steel), 'S', OrePrefixes.stick.get(Materials.Steel)});
+ ItemList.CompressedFireclay.set(addItem(tLastID = 110, "Compressed Fireclay", "Brick-shaped"));
+ ItemList.Firebrick.set(addItem(tLastID = 111, "Firebrick", "Heat resistant"));
+
ItemList.Arrow_Head_Glass_Emtpy.set(addItem(tLastID = 200, "Empty Glass Arrow Head", "Fill with Potions before use", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.TELUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.VACUOS, 1L)}));
ItemList.Arrow_Head_Glass_Poison.set(addItem(tLastID = 201, "Poison Glass Arrow Head", "Glass Arrow filled with Poison", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.TELUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.VENENUM, 1L)}));
ItemList.Arrow_Head_Glass_Poison_Long.set(addItem(tLastID = 202, "Poison Glass Arrow Head", "Glass Arrow filled with stretched Poison", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.TELUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.VENENUM, 1L)}));
@@ -506,11 +509,11 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 { ItemList.Rotor_UV.set(ItemList.Rotor_ZPM.get(1L, new Object[0]));**/
GT_ModHandler.addCraftingRecipe(ItemList.Electric_Pump_LV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"SXO", "dPw", "OMW", 'M', ItemList.Electric_Motor_LV, 'O', OrePrefixes.ring.get(Materials.Paper ), 'X', OrePrefixes.rotor.get(Materials.Tin), 'S', OrePrefixes.screw.get(Materials.Tin), 'W', OrePrefixes.cableGt01.get(Materials.Tin), 'P', OrePrefixes.pipeMedium.get(Materials.Bronze)});
- GT_ModHandler.addCraftingRecipe(ItemList.Electric_Pump_LV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"SXO", "dPw", "OMW", 'M', ItemList.Electric_Motor_LV, 'O', OrePrefixes.ring.get(Materials.Rubber), 'X', OrePrefixes.rotor.get(Materials.Tin), 'S', OrePrefixes.screw.get(Materials.Tin), 'W', OrePrefixes.cableGt01.get(Materials.Tin), 'P', OrePrefixes.pipeMedium.get(Materials.Bronze)});
- GT_ModHandler.addCraftingRecipe(ItemList.Electric_Pump_MV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"SXO", "dPw", "OMW", 'M', ItemList.Electric_Motor_MV, 'O', OrePrefixes.ring.get(Materials.Rubber), 'X', OrePrefixes.rotor.get(Materials.Bronze), 'S', OrePrefixes.screw.get(Materials.Bronze), 'W', OrePrefixes.cableGt01.get(Materials.AnyCopper), 'P', OrePrefixes.pipeMedium.get(Materials.Steel)});
- GT_ModHandler.addCraftingRecipe(ItemList.Electric_Pump_HV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"SXO", "dPw", "OMW", 'M', ItemList.Electric_Motor_HV, 'O', OrePrefixes.ring.get(Materials.Rubber), 'X', OrePrefixes.rotor.get(Materials.Steel), 'S', OrePrefixes.screw.get(Materials.Steel), 'W', OrePrefixes.cableGt01.get(Materials.Gold), 'P', OrePrefixes.pipeMedium.get(Materials.StainlessSteel)});
- GT_ModHandler.addCraftingRecipe(ItemList.Electric_Pump_EV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"SXO", "dPw", "OMW", 'M', ItemList.Electric_Motor_EV, 'O', OrePrefixes.ring.get(Materials.Silicone), 'X', OrePrefixes.rotor.get(Materials.StainlessSteel), 'S', OrePrefixes.screw.get(Materials.StainlessSteel), 'W', OrePrefixes.cableGt01.get(Materials.Aluminium), 'P', OrePrefixes.pipeMedium.get(Materials.Titanium)});
- GT_ModHandler.addCraftingRecipe(ItemList.Electric_Pump_IV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"SXO", "dPw", "OMW", 'M', ItemList.Electric_Motor_IV, 'O', OrePrefixes.ring.get(Materials.Silicone), 'X', OrePrefixes.rotor.get(Materials.TungstenSteel), 'S', OrePrefixes.screw.get(Materials.TungstenSteel), 'W', OrePrefixes.cableGt01.get(Materials.Tungsten), 'P', OrePrefixes.pipeMedium.get(Materials.TungstenSteel)});
+ GT_ModHandler.addCraftingRecipe(ItemList.Electric_Pump_LV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"SXO", "dPw", "OMW", 'M', ItemList.Electric_Motor_LV, 'O', OrePrefixes.ring.get(Materials.AnyRubber), 'X', OrePrefixes.rotor.get(Materials.Tin), 'S', OrePrefixes.screw.get(Materials.Tin), 'W', OrePrefixes.cableGt01.get(Materials.Tin), 'P', OrePrefixes.pipeMedium.get(Materials.Bronze)});
+ GT_ModHandler.addCraftingRecipe(ItemList.Electric_Pump_MV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"SXO", "dPw", "OMW", 'M', ItemList.Electric_Motor_MV, 'O', OrePrefixes.ring.get(Materials.AnyRubber), 'X', OrePrefixes.rotor.get(Materials.Bronze), 'S', OrePrefixes.screw.get(Materials.Bronze), 'W', OrePrefixes.cableGt01.get(Materials.AnyCopper), 'P', OrePrefixes.pipeMedium.get(Materials.Steel)});
+ GT_ModHandler.addCraftingRecipe(ItemList.Electric_Pump_HV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"SXO", "dPw", "OMW", 'M', ItemList.Electric_Motor_HV, 'O', OrePrefixes.ring.get(Materials.AnyRubber), 'X', OrePrefixes.rotor.get(Materials.Steel), 'S', OrePrefixes.screw.get(Materials.Steel), 'W', OrePrefixes.cableGt01.get(Materials.Gold), 'P', OrePrefixes.pipeMedium.get(Materials.StainlessSteel)});
+ GT_ModHandler.addCraftingRecipe(ItemList.Electric_Pump_EV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"SXO", "dPw", "OMW", 'M', ItemList.Electric_Motor_EV, 'O', OrePrefixes.ring.get(Materials.AnySyntheticRubber), 'X', OrePrefixes.rotor.get(Materials.StainlessSteel), 'S', OrePrefixes.screw.get(Materials.StainlessSteel), 'W', OrePrefixes.cableGt01.get(Materials.Aluminium), 'P', OrePrefixes.pipeMedium.get(Materials.Titanium)});
+ GT_ModHandler.addCraftingRecipe(ItemList.Electric_Pump_IV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"SXO", "dPw", "OMW", 'M', ItemList.Electric_Motor_IV, 'O', OrePrefixes.ring.get(Materials.AnySyntheticRubber), 'X', OrePrefixes.rotor.get(Materials.TungstenSteel), 'S', OrePrefixes.screw.get(Materials.TungstenSteel), 'W', OrePrefixes.cableGt01.get(Materials.Tungsten), 'P', OrePrefixes.pipeMedium.get(Materials.TungstenSteel)});
ItemList.Conveyor_Module_LV.set(addItem(tLastID = 630, "Conveyor Module (LV)", "1 Stack every 20 secs (as Cover)", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.ITER, 1L)}));
ItemList.Conveyor_Module_MV.set(addItem(tLastID = 631, "Conveyor Module (MV)", "1 Stack every 5 secs (as Cover)", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.ITER, 2L)}));
@@ -521,11 +524,11 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 { ItemList.Conveyor_Module_ZPM.set(addItem(tLastID = 637, "Conveyor Module (ZPM)", "1 Stack every 1/20 sec (as Cover)", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.ITER, 16L)}));
ItemList.Conveyor_Module_UV.set(addItem(tLastID = 638, "Conveyor Module (UV)", "1 Stack every 1/20 sec (as Cover)", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.ITER, 16L)}));
- GT_ModHandler.addCraftingRecipe(ItemList.Conveyor_Module_LV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"RRR", "MCM", "RRR", 'M', ItemList.Electric_Motor_LV, 'C', OrePrefixes.cableGt01.get(Materials.Tin), 'R', OrePrefixes.plate.get(Materials.Rubber)});
- GT_ModHandler.addCraftingRecipe(ItemList.Conveyor_Module_MV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"RRR", "MCM", "RRR", 'M', ItemList.Electric_Motor_MV, 'C', OrePrefixes.cableGt01.get(Materials.AnyCopper), 'R', OrePrefixes.plate.get(Materials.Rubber)});
- GT_ModHandler.addCraftingRecipe(ItemList.Conveyor_Module_HV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"RRR", "MCM", "RRR", 'M', ItemList.Electric_Motor_HV, 'C', OrePrefixes.cableGt01.get(Materials.Gold), 'R', OrePrefixes.plate.get(Materials.Rubber)});
- GT_ModHandler.addCraftingRecipe(ItemList.Conveyor_Module_EV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"RRR", "MCM", "RRR", 'M', ItemList.Electric_Motor_EV, 'C', OrePrefixes.cableGt01.get(Materials.Aluminium), 'R', OrePrefixes.plate.get(Materials.Rubber)});
- GT_ModHandler.addCraftingRecipe(ItemList.Conveyor_Module_IV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"RRR", "MCM", "RRR", 'M', ItemList.Electric_Motor_IV, 'C', OrePrefixes.cableGt01.get(Materials.Tungsten), 'R', OrePrefixes.plate.get(Materials.Rubber)});
+ GT_ModHandler.addCraftingRecipe(ItemList.Conveyor_Module_LV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"RRR", "MCM", "RRR", 'M', ItemList.Electric_Motor_LV, 'C', OrePrefixes.cableGt01.get(Materials.Tin), 'R', OrePrefixes.plate.get(Materials.AnyRubber)});
+ GT_ModHandler.addCraftingRecipe(ItemList.Conveyor_Module_MV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"RRR", "MCM", "RRR", 'M', ItemList.Electric_Motor_MV, 'C', OrePrefixes.cableGt01.get(Materials.AnyCopper), 'R', OrePrefixes.plate.get(Materials.AnyRubber)});
+ GT_ModHandler.addCraftingRecipe(ItemList.Conveyor_Module_HV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"RRR", "MCM", "RRR", 'M', ItemList.Electric_Motor_HV, 'C', OrePrefixes.cableGt01.get(Materials.Gold), 'R', OrePrefixes.plate.get(Materials.AnyRubber)});
+ GT_ModHandler.addCraftingRecipe(ItemList.Conveyor_Module_EV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"RRR", "MCM", "RRR", 'M', ItemList.Electric_Motor_EV, 'C', OrePrefixes.cableGt01.get(Materials.Aluminium), 'R', OrePrefixes.plate.get(Materials.AnySyntheticRubber)});
+ GT_ModHandler.addCraftingRecipe(ItemList.Conveyor_Module_IV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.DISMANTLEABLE | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[]{"RRR", "MCM", "RRR", 'M', ItemList.Electric_Motor_IV, 'C', OrePrefixes.cableGt01.get(Materials.Tungsten), 'R', OrePrefixes.plate.get(Materials.AnySyntheticRubber)});
GregTech_API.registerCover(ItemList.Conveyor_Module_LV.get(1L, new Object[0]), new GT_MultiTexture(new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[1][0], new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_CONVEYOR)}), new GT_Cover_Conveyor(400));
GregTech_API.registerCover(ItemList.Conveyor_Module_MV.get(1L, new Object[0]), new GT_MultiTexture(new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[2][0], new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_CONVEYOR)}), new GT_Cover_Conveyor(100));
@@ -763,7 +766,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 { GT_ModHandler.addShapelessCraftingRecipe(ItemList.Cover_RedstoneTransmitterExternal.get(1L, new Object[0]), new Object[]{ItemList.Cover_RedstoneTransmitterInternal.get(1L, new Object[0])});
GT_ModHandler.addShapelessCraftingRecipe(ItemList.Cover_RedstoneReceiverExternal.get(1L, new Object[0]), new Object[]{ItemList.Cover_RedstoneReceiverInternal.get(1L, new Object[0])});
- ItemList.Cover_NeedsMaintainance.set(addItem(tLastID = 748, "Needs Maintainance Cover", "Attach to Multiblock Controller. Emits Redstone Signal if needs Maintainance", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 1L)}));
+ ItemList.Cover_NeedsMaintainance.set(addItem(tLastID = 748, "Needs Maintenance Cover", "Attach to Multiblock Controller. Emits Redstone Signal if needs Maintenance", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 1L)}));
GregTech_API.registerCover(ItemList.Cover_NeedsMaintainance.get(1L, new Object[0]), new GT_MultiTexture(new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[2][0], new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_ACTIVITYDETECTOR)}), new GT_Cover_NeedMaintainance());
GT_Values.RA.addAssemblerRecipe(ItemList.Emitter_MV.get(1L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Aluminium, 1L), ItemList.Cover_NeedsMaintainance.get(1L, new Object[0]), 600, 24);
diff --git a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_02.java b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_02.java index 28f82cbd5a..bf138bb19f 100644 --- a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_02.java +++ b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_02.java @@ -289,6 +289,7 @@ public class GT_MetaGenerated_Item_02 extends GT_MetaGenerated_Item_X32 { ItemList.Crop_Drop_Grapes.set(addItem(tLastID = 554, "Grapes", "Source of Wine", new Object[]{"cropGrape", new GT_FoodStat(2, 0.3F, EnumAction.eat, null, false, true, false, new int[0]), new TC_Aspects.TC_AspectStack(TC_Aspects.MESSIS, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.HERBA, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.FAMES, 1L)}));
ItemList.Crop_Drop_Onion.set(addItem(tLastID = 555, "Onion", "Taking over the whole Taste", new Object[]{"cropOnion", new GT_FoodStat(2, 0.2F, EnumAction.eat, null, false, true, false, new int[0]), new TC_Aspects.TC_AspectStack(TC_Aspects.MESSIS, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.HERBA, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.FAMES, 1L)}));
ItemList.Crop_Drop_Cucumber.set(addItem(tLastID = 556, "Cucumber", "Not a Sea Cucumber!", new Object[]{"cropCucumber", new GT_FoodStat(1, 0.2F, EnumAction.eat, null, false, true, false, new int[0]), new TC_Aspects.TC_AspectStack(TC_Aspects.MESSIS, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.HERBA, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.FAMES, 1L)}));
+ ItemList.Crop_Drop_Rape.set(addItem(tLastID = 557, "Rape", "Time to oil up!", new Object[]{new TC_Aspects.TC_AspectStack(TC_Aspects.MESSIS, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.HERBA, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 1L)}));
ItemList.Food_Cheese.set(addItem(tLastID = 558, "Cheese", "Click the Cheese", new Object[]{"foodCheese", new GT_FoodStat(3, 0.6F, EnumAction.eat, null, false, true, false, new int[0]), new TC_Aspects.TC_AspectStack(TC_Aspects.FAMES, 2L)}));
ItemList.Food_Dough.set(addItem(tLastID = 559, "Dough", "For making Breads", new Object[]{"foodDough", new GT_FoodStat(1, 0.1F, EnumAction.eat, null, false, true, false, new int[0]), new TC_Aspects.TC_AspectStack(TC_Aspects.HERBA, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.FAMES, 1L)}));
@@ -340,6 +341,7 @@ public class GT_MetaGenerated_Item_02 extends GT_MetaGenerated_Item_X32 { GT_ModHandler.addCompressionRecipe(ItemList.Crop_Drop_OilBerry.get(8L, new Object[0]), ItemList.IC2_PlantballCompressed.get(1L, new Object[0]));
GT_ModHandler.addCompressionRecipe(ItemList.Crop_Drop_BobsYerUncleRanks.get(8L, new Object[0]), ItemList.IC2_PlantballCompressed.get(1L, new Object[0]));
GT_ModHandler.addCompressionRecipe(ItemList.Crop_Drop_Tine.get(4L, new Object[0]), ItemList.IC2_PlantballCompressed.get(1L, new Object[0]));
+ GT_ModHandler.addCompressionRecipe(ItemList.Crop_Drop_Rape.get(8L, new Object[0]), ItemList.IC2_PlantballCompressed.get(1L, new Object[0]));
GT_ModHandler.addCompressionRecipe(new ItemStack(Blocks.red_flower, 8, 32767), ItemList.IC2_PlantballCompressed.get(1L, new Object[0]));
GT_ModHandler.addCompressionRecipe(new ItemStack(Blocks.yellow_flower, 8, 32767), ItemList.IC2_PlantballCompressed.get(1L, new Object[0]));
diff --git a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_03.java b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_03.java index b773b4d78d..92b670891f 100644 --- a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_03.java +++ b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_03.java @@ -1,20 +1,10 @@ package gregtech.common.items;
-import gregtech.api.enums.GT_Values;
import gregtech.api.enums.ItemList;
import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
import gregtech.api.enums.SubTag;
import gregtech.api.items.GT_MetaGenerated_Item_X32;
-import gregtech.api.util.GT_ModHandler;
-import gregtech.api.util.GT_OreDictUnificator;
-import gregtech.api.util.GT_Utility;
-import ic2.core.IC2;
-import net.minecraft.init.Blocks;
-import net.minecraft.init.Items;
-import net.minecraft.item.ItemStack;
-import net.minecraftforge.fluids.FluidRegistry;
-import net.minecraftforge.fluids.FluidStack;
public class GT_MetaGenerated_Item_03
extends GT_MetaGenerated_Item_X32 {
diff --git a/src/main/java/gregtech/common/items/armor/ArmorCalculation.java b/src/main/java/gregtech/common/items/armor/ArmorCalculation.java index 7c8100db62..8ecc5766ba 100644 --- a/src/main/java/gregtech/common/items/armor/ArmorCalculation.java +++ b/src/main/java/gregtech/common/items/armor/ArmorCalculation.java @@ -1,16 +1,9 @@ package gregtech.common.items.armor; -import cpw.mods.fml.common.Loader; -import gregtech.api.enums.ItemList; -import gregtech.api.enums.Materials; -import gregtech.api.enums.OrePrefixes; -import gregtech.api.objects.ItemData; import gregtech.api.util.GT_ModHandler; -import gregtech.api.util.GT_OreDictUnificator; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraftforge.fluids.FluidStack; -import thaumcraft.api.nodes.IRevealer; public class ArmorCalculation { public static float[] calculateArmor(ItemStack[] parts) { diff --git a/src/main/java/gregtech/common/items/armor/ArmorData.java b/src/main/java/gregtech/common/items/armor/ArmorData.java index 00ec76aeea..52265a2b33 100644 --- a/src/main/java/gregtech/common/items/armor/ArmorData.java +++ b/src/main/java/gregtech/common/items/armor/ArmorData.java @@ -1,18 +1,6 @@ package gregtech.common.items.armor; -import java.text.DecimalFormat; -import java.text.DecimalFormatSymbols; -import java.text.NumberFormat; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Locale; -import java.util.Map; -import java.util.Random; - -import gregtech.api.damagesources.GT_DamageSources; import gregtech.api.util.GT_LanguageManager; -import gregtech.api.util.GT_Utility; import gregtech.common.items.armor.components.ArmorComponent; import gregtech.common.items.armor.components.StatType; import gregtech.common.items.armor.gui.ContainerBasicArmor; @@ -21,12 +9,13 @@ import gregtech.common.items.armor.gui.InventoryArmor; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.nbt.NBTTagList; -import net.minecraft.util.DamageSource; -import net.minecraftforge.fluids.Fluid; -import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; +import java.text.DecimalFormat; +import java.text.DecimalFormatSymbols; +import java.text.NumberFormat; +import java.util.*; + public class ArmorData { public int type; // 0 = helmet; 1 = chestplate; 2 = leggings; 3 = boots; diff --git a/src/main/java/gregtech/common/items/armor/ElectricModularArmor1.java b/src/main/java/gregtech/common/items/armor/ElectricModularArmor1.java index 5d8bfd82f0..d310fa4c96 100644 --- a/src/main/java/gregtech/common/items/armor/ElectricModularArmor1.java +++ b/src/main/java/gregtech/common/items/armor/ElectricModularArmor1.java @@ -1,12 +1,7 @@ package gregtech.common.items.armor; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; -import net.minecraft.world.World; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fluids.IFluidContainerItem; public class ElectricModularArmor1 extends ModularArmor_Item{ diff --git a/src/main/java/gregtech/common/items/armor/ModularArmor_Item.java b/src/main/java/gregtech/common/items/armor/ModularArmor_Item.java index 761f263d79..745a63fbf1 100644 --- a/src/main/java/gregtech/common/items/armor/ModularArmor_Item.java +++ b/src/main/java/gregtech/common/items/armor/ModularArmor_Item.java @@ -1,5 +1,11 @@ package gregtech.common.items.armor; +import cpw.mods.fml.common.FMLCommonHandler; +import cpw.mods.fml.common.Optional; +import cpw.mods.fml.common.eventhandler.SubscribeEvent; +import cpw.mods.fml.common.registry.GameRegistry; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.damagesources.GT_DamageSources; import gregtech.api.enums.GT_Values; import gregtech.common.items.armor.components.StatType; @@ -7,20 +13,6 @@ import gregtech.common.items.armor.gui.ContainerBasicArmor; import gregtech.common.items.armor.gui.ContainerModularArmor; import gregtech.common.items.armor.gui.InventoryArmor; import ic2.core.IC2; - -import java.util.ArrayList; -import java.util.LinkedList; -import java.util.List; -import java.util.Random; - -import cpw.mods.fml.common.FMLCommonHandler; -import cpw.mods.fml.common.Optional; -import thaumcraft.api.IGoggles; -import thaumcraft.api.nodes.IRevealer; -import cpw.mods.fml.common.eventhandler.SubscribeEvent; -import cpw.mods.fml.common.registry.GameRegistry; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.client.settings.GameSettings; @@ -29,21 +21,23 @@ import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.init.Items; -import net.minecraft.inventory.IInventory; import net.minecraft.item.Item; import net.minecraft.item.ItemArmor; import net.minecraft.item.ItemStack; -import net.minecraft.item.ItemArmor.ArmorMaterial; import net.minecraft.potion.Potion; import net.minecraft.potion.PotionEffect; import net.minecraft.util.AxisAlignedBB; import net.minecraft.util.DamageSource; -import net.minecraft.util.MathHelper; import net.minecraft.world.World; import net.minecraftforge.common.ISpecialArmor; import net.minecraftforge.common.MinecraftForge; -import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.event.entity.living.LivingFallEvent; +import thaumcraft.api.IGoggles; +import thaumcraft.api.nodes.IRevealer; + +import java.util.LinkedList; +import java.util.List; +import java.util.Random; @Optional.InterfaceList(value = { @Optional.Interface(iface = "thaumcraft.api.IGoggles", modid = "Thaumcraft", striprefs = true), @Optional.Interface(iface = "thaumcraft.api.nodes.IRevealer", modid = "Thaumcraft", striprefs = true) }) diff --git a/src/main/java/gregtech/common/items/armor/Vector3.java b/src/main/java/gregtech/common/items/armor/Vector3.java index 590f544546..2f79ff4c69 100644 --- a/src/main/java/gregtech/common/items/armor/Vector3.java +++ b/src/main/java/gregtech/common/items/armor/Vector3.java @@ -1,8 +1,7 @@ package gregtech.common.items.armor; -import java.math.BigDecimal; -import java.math.MathContext; -import java.math.RoundingMode; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.entity.Entity; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.AxisAlignedBB; @@ -10,8 +9,10 @@ import net.minecraft.util.Vec3; import org.lwjgl.opengl.GL11; import org.lwjgl.util.vector.Vector3f; import org.lwjgl.util.vector.Vector4f; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; + +import java.math.BigDecimal; +import java.math.MathContext; +import java.math.RoundingMode; public class Vector3 { public static Vector3 zero = new Vector3(); diff --git a/src/main/java/gregtech/common/items/armor/components/ArmorComponent.java b/src/main/java/gregtech/common/items/armor/components/ArmorComponent.java index 1d65f973ed..ea2f0184dd 100644 --- a/src/main/java/gregtech/common/items/armor/components/ArmorComponent.java +++ b/src/main/java/gregtech/common/items/armor/components/ArmorComponent.java @@ -1,20 +1,15 @@ package gregtech.common.items.armor.components; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - import cpw.mods.fml.common.registry.GameRegistry; -import cpw.mods.fml.common.registry.GameRegistry.UniqueIdentifier; import gregtech.api.GregTech_API; -import gregtech.api.objects.ItemData; -import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; import gregtech.common.items.armor.ArmorData; import net.minecraft.item.ItemStack; import net.minecraftforge.oredict.OreDictionary; +import java.util.HashMap; +import java.util.Map; + public abstract class ArmorComponent implements IArmorComponent { public ItemStack mStack; public String mOreDict; diff --git a/src/main/java/gregtech/common/items/armor/components/LoadArmorComponents.java b/src/main/java/gregtech/common/items/armor/components/LoadArmorComponents.java index d6d37fd935..bea0e2b5b4 100644 --- a/src/main/java/gregtech/common/items/armor/components/LoadArmorComponents.java +++ b/src/main/java/gregtech/common/items/armor/components/LoadArmorComponents.java @@ -6,7 +6,6 @@ import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; -import ic2.core.Ic2Items; import net.minecraft.init.Blocks; import net.minecraft.item.ItemStack; diff --git a/src/main/java/gregtech/common/items/armor/components/StatType.java b/src/main/java/gregtech/common/items/armor/components/StatType.java index 80fe5cc6d4..aacb997f9b 100644 --- a/src/main/java/gregtech/common/items/armor/components/StatType.java +++ b/src/main/java/gregtech/common/items/armor/components/StatType.java @@ -1,9 +1,5 @@ package gregtech.common.items.armor.components; -import java.util.List; - -import net.minecraftforge.fluids.FluidStack; - public enum StatType { ELECTRIC, ELECTRIC2, diff --git a/src/main/java/gregtech/common/items/armor/gui/ContainerModularArmor.java b/src/main/java/gregtech/common/items/armor/gui/ContainerModularArmor.java index 0258a3eb3c..1f63afac5e 100644 --- a/src/main/java/gregtech/common/items/armor/gui/ContainerModularArmor.java +++ b/src/main/java/gregtech/common/items/armor/gui/ContainerModularArmor.java @@ -4,9 +4,7 @@ import gregtech.common.items.armor.ArmorData; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.inventory.Container; -import net.minecraft.inventory.IInventory; import net.minecraft.inventory.Slot; -import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraftforge.oredict.OreDictionary; diff --git a/src/main/java/gregtech/common/items/armor/gui/FluidSync.java b/src/main/java/gregtech/common/items/armor/gui/FluidSync.java index 8f1aef56d1..0e17a82ee8 100644 --- a/src/main/java/gregtech/common/items/armor/gui/FluidSync.java +++ b/src/main/java/gregtech/common/items/armor/gui/FluidSync.java @@ -1,14 +1,5 @@ package gregtech.common.items.armor.gui; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.WorldServer; -import net.minecraftforge.common.DimensionManager; -import net.minecraftforge.fluids.FluidRegistry; -import net.minecraftforge.fluids.FluidStack; - -import com.google.common.base.Charsets; -import com.google.common.io.ByteArrayDataInput; import com.google.common.io.ByteArrayDataOutput; import com.google.common.io.ByteStreams; diff --git a/src/main/java/gregtech/common/items/armor/gui/FluidSync2.java b/src/main/java/gregtech/common/items/armor/gui/FluidSync2.java index 75c3c6d363..6882e67268 100644 --- a/src/main/java/gregtech/common/items/armor/gui/FluidSync2.java +++ b/src/main/java/gregtech/common/items/armor/gui/FluidSync2.java @@ -1,15 +1,5 @@ package gregtech.common.items.armor.gui; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.WorldServer; -import net.minecraftforge.common.DimensionManager; -import net.minecraftforge.fluids.FluidRegistry; -import net.minecraftforge.fluids.FluidStack; - -import com.google.common.base.Charsets; -import com.google.common.io.ByteArrayDataInput; import com.google.common.io.ByteArrayDataOutput; import com.google.common.io.ByteStreams; diff --git a/src/main/java/gregtech/common/items/armor/gui/GuiElectricArmor1.java b/src/main/java/gregtech/common/items/armor/gui/GuiElectricArmor1.java index dec19e0308..b1e08bc708 100644 --- a/src/main/java/gregtech/common/items/armor/gui/GuiElectricArmor1.java +++ b/src/main/java/gregtech/common/items/armor/gui/GuiElectricArmor1.java @@ -1,11 +1,14 @@ package gregtech.common.items.armor.gui; -import gregtech.api.enums.GT_Values; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.util.GT_LanguageManager; -import gregtech.api.util.GT_Utility; -import gregtech.common.GT_Network; -import gregtech.common.items.armor.ArmorData; import gregtech.common.items.armor.components.StatType; +import net.minecraft.client.gui.inventory.GuiContainer; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.inventory.Slot; +import net.minecraft.util.ResourceLocation; +import org.lwjgl.opengl.GL11; import java.text.DecimalFormat; import java.text.DecimalFormatSymbols; @@ -14,23 +17,6 @@ import java.util.ArrayList; import java.util.List; import java.util.Locale; -import org.lwjgl.opengl.GL11; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import net.minecraft.client.gui.inventory.GuiContainer; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; -import net.minecraft.inventory.Container; -import net.minecraft.inventory.Slot; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.fluids.Fluid; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fluids.IFluidContainerItem; - @SideOnly(Side.CLIENT) public class GuiElectricArmor1 extends GuiContainer { ContainerModularArmor cont; diff --git a/src/main/java/gregtech/common/items/armor/gui/GuiModularArmor.java b/src/main/java/gregtech/common/items/armor/gui/GuiModularArmor.java index ae2ba88013..9d552f4d2c 100644 --- a/src/main/java/gregtech/common/items/armor/gui/GuiModularArmor.java +++ b/src/main/java/gregtech/common/items/armor/gui/GuiModularArmor.java @@ -1,19 +1,16 @@ package gregtech.common.items.armor.gui; -import gregtech.api.util.GT_LanguageManager; -import gregtech.common.items.armor.components.StatType; - -import java.util.ArrayList; -import java.util.List; - -import org.lwjgl.opengl.GL11; - import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import gregtech.api.util.GT_LanguageManager; +import gregtech.common.items.armor.components.StatType; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.inventory.Container; import net.minecraft.util.ResourceLocation; +import org.lwjgl.opengl.GL11; + +import java.util.ArrayList; +import java.util.List; @SideOnly(Side.CLIENT) public class GuiModularArmor extends GuiContainer { diff --git a/src/main/java/gregtech/common/items/armor/gui/InventoryArmor.java b/src/main/java/gregtech/common/items/armor/gui/InventoryArmor.java index ff77584314..2a4ca46f4a 100644 --- a/src/main/java/gregtech/common/items/armor/gui/InventoryArmor.java +++ b/src/main/java/gregtech/common/items/armor/gui/InventoryArmor.java @@ -1,20 +1,16 @@ package gregtech.common.items.armor.gui; -import gregtech.api.util.GT_Utility; import gregtech.common.items.armor.ArmorData; import gregtech.common.items.armor.ModularArmor_Item; - -import java.util.Random; - import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.inventory.Container; import net.minecraft.inventory.IInventory; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagList; -import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.oredict.OreDictionary; +import java.util.Random; + public class InventoryArmor implements IInventory { public ItemStack[] parts; diff --git a/src/main/java/gregtech/common/items/armor/gui/SlotFluid.java b/src/main/java/gregtech/common/items/armor/gui/SlotFluid.java index a3d2bdaf09..63e8873df9 100644 --- a/src/main/java/gregtech/common/items/armor/gui/SlotFluid.java +++ b/src/main/java/gregtech/common/items/armor/gui/SlotFluid.java @@ -1,16 +1,9 @@ package gregtech.common.items.armor.gui; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import scala.reflect.internal.Trees.This; -import net.minecraft.client.renderer.texture.TextureMap; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.IInventory; import net.minecraft.inventory.Slot; import net.minecraft.item.ItemStack; -import net.minecraft.util.IIcon; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.fluids.FluidRegistry; public class SlotFluid extends Slot{ diff --git a/src/main/java/gregtech/common/items/behaviors/Behaviour_Plunger_Fluid.java b/src/main/java/gregtech/common/items/behaviors/Behaviour_Plunger_Fluid.java index 0b9dcdf3c2..bd866ba994 100644 --- a/src/main/java/gregtech/common/items/behaviors/Behaviour_Plunger_Fluid.java +++ b/src/main/java/gregtech/common/items/behaviors/Behaviour_Plunger_Fluid.java @@ -5,7 +5,6 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.items.GT_MetaBase_Item;
import gregtech.api.items.GT_MetaGenerated_Tool;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicBatteryBuffer;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicTank;
import gregtech.api.util.GT_LanguageManager;
import gregtech.api.util.GT_Utility;
diff --git a/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Bronze.java b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Bronze.java index c725634030..70f85673c4 100644 --- a/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Bronze.java +++ b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Bronze.java @@ -14,7 +14,6 @@ import gregtech.common.GT_Pollution; import gregtech.common.gui.GT_Container_Boiler; import gregtech.common.gui.GT_GUIContainer_Boiler; import net.minecraft.entity.player.InventoryPlayer; -import net.minecraft.world.ChunkPosition; import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.fluids.IFluidHandler; diff --git a/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Lava.java b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Lava.java index 8aef783b6b..352a9c66a3 100644 --- a/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Lava.java +++ b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Lava.java @@ -14,7 +14,6 @@ import gregtech.common.GT_Pollution; import gregtech.common.gui.GT_Container_Boiler;
import gregtech.common.gui.GT_GUIContainer_Boiler;
import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.world.ChunkPosition;
import net.minecraftforge.common.util.ForgeDirection;
import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.fluids.IFluidHandler;
diff --git a/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Steel.java b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Steel.java index 208c4d4e91..b4b8da0d14 100644 --- a/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Steel.java +++ b/src/main/java/gregtech/common/tileentities/boilers/GT_MetaTileEntity_Boiler_Steel.java @@ -14,7 +14,6 @@ import gregtech.common.GT_Pollution; import gregtech.common.gui.GT_Container_Boiler;
import gregtech.common.gui.GT_GUIContainer_Boiler;
import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.world.ChunkPosition;
import net.minecraftforge.common.util.ForgeDirection;
import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.fluids.IFluidHandler;
diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_AdvSeismicProspector.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_AdvSeismicProspector.java index 24eaf87292..d0ba25a327 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_AdvSeismicProspector.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_AdvSeismicProspector.java @@ -1,25 +1,15 @@ package gregtech.common.tileentities.machines.basic; -import java.util.ArrayList; -import java.util.Collections; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.TreeMap; - import gregtech.api.GregTech_API; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; -import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.Textures; import gregtech.api.interfaces.ITexture; -import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine; import gregtech.api.objects.GT_RenderedTexture; import gregtech.api.objects.ItemData; -import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; import gregtech.common.GT_UndergroundOil; @@ -36,6 +26,9 @@ import net.minecraft.world.ChunkCoordIntPair; import net.minecraft.world.ChunkPosition; import net.minecraftforge.fluids.FluidStack; +import java.util.HashMap; +import java.util.Map; + public class GT_MetaTileEntity_AdvSeismicProspector extends GT_MetaTileEntity_BasicMachine { boolean ready = false; int radius; diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_CuringOven.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_CuringOven.java index fcddee5bb3..e2663a15e4 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_CuringOven.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_CuringOven.java @@ -1,8 +1,6 @@ package gregtech.common.tileentities.machines.basic; -import java.util.Iterator; - import gregtech.api.enums.ItemList; import gregtech.api.enums.Textures; import gregtech.api.gui.GT_Container_1by1; @@ -11,8 +9,8 @@ import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.items.GT_MetaGenerated_Tool; import gregtech.api.metatileentity.MetaTileEntity; -import gregtech.api.objects.GT_RenderedTexture; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine; +import gregtech.api.objects.GT_RenderedTexture; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Miner.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Miner.java new file mode 100644 index 0000000000..13f16a2b99 --- /dev/null +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Miner.java @@ -0,0 +1,199 @@ +package gregtech.common.tileentities.machines.basic; + +import gregtech.api.enums.Textures; +import gregtech.api.interfaces.ITexture; +import gregtech.api.interfaces.metatileentity.IMetaTileEntity; +import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine; +import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.objects.ItemData; +import gregtech.api.util.GT_ModHandler; +import gregtech.api.util.GT_OreDictUnificator; +import gregtech.api.util.GT_Utility; +import gregtech.common.blocks.GT_Block_Ores_Abstract; +import gregtech.common.blocks.GT_TileEntity_Ores; +import net.minecraft.block.Block; +import net.minecraft.init.Blocks; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.tileentity.TileEntity; + +import java.util.ArrayList; + +public class GT_MetaTileEntity_Miner extends GT_MetaTileEntity_BasicMachine { + private static final ItemStack MINING_PIPE = GT_ModHandler.getIC2Item("miningPipe", 0); + private static final Block MINING_PIPE_BLOCK = GT_Utility.getBlockFromStack(MINING_PIPE); + private static final Block MINING_PIPE_TIP_BLOCK = GT_Utility.getBlockFromStack(GT_ModHandler.getIC2Item("miningPipeTip", 0)); + + int drillX, drillY, drillZ; + boolean isPickingPipes; + boolean waitMiningPipe; + final static int[] RADIUS = new int[]{8, 8, 16, 24}; //Miner radius per tier + final static int[] SPEED = new int[]{160, 160, 80, 40}; //Miner cycle time per tier + final static int[] ENERGY = new int[]{8, 8, 32, 128}; //Miner energy consumption per tier + + public GT_MetaTileEntity_Miner(int aID, String aName, String aNameRegional, int aTier) { + super(aID, aName, aNameRegional, aTier, 1, "Digging ore instead of you", 2, 2, "Miner.png", "", new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/miner/OVERLAY_SIDE_ACTIVE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/miner/OVERLAY_SIDE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/miner/OVERLAY_FRONT_ACTIVE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/miner/OVERLAY_FRONT")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/miner/OVERLAY_TOP_ACTIVE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/miner/OVERLAY_TOP")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/miner/OVERLAY_BOTTOM_ACTIVE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/miner/OVERLAY_BOTTOM"))); + } + + public GT_MetaTileEntity_Miner(String aName, int aTier, String aDescription, ITexture[][][] aTextures, String aGUIName, String aNEIName) { + super(aName, aTier, 1, aDescription, aTextures, 1, 1, aGUIName, aNEIName); + } + + public GT_MetaTileEntity_Miner(String aName, int aTier, String[] aDescription, ITexture[][][] aTextures, String aGUIName, String aNEIName) { + super(aName, aTier, 1, aDescription, aTextures, 2, 2, aGUIName, aNEIName); + } + + @Override + public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { + return new GT_MetaTileEntity_Miner(mName, mTier, mDescriptionArray, mTextures, mGUIName, mNEIName); + } + + public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) { + return (super.allowPutStack(aBaseMetaTileEntity, aIndex, aSide, aStack)) && (aStack.getItem() == MINING_PIPE.getItem()); + } + + public boolean hasFreeSpace() { + for (int i = getOutputSlot(); i < getOutputSlot() + 2; i++) { + if (mInventory[i] != null) { + return false; + } + } + return true; + } + + @Override + public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) { + super.onPostTick(aBaseMetaTileEntity, aTick); + if (aBaseMetaTileEntity.isServerSide()) { + if (aBaseMetaTileEntity.isAllowedToWork() && aBaseMetaTileEntity.isUniversalEnergyStored(ENERGY[mTier] * (SPEED[mTier] - mProgresstime)) && hasFreeSpace()) { + miningPipe: + if (waitMiningPipe) { + mMaxProgresstime = 0; + for (int i = 0; i < mInputSlotCount; i++) { + ItemStack s = getInputAt(i); + if (s != null && s.getItem() == MINING_PIPE.getItem() && s.stackSize > 0) { + waitMiningPipe = false; + break miningPipe; + } + } + return; + } + aBaseMetaTileEntity.decreaseStoredEnergyUnits(ENERGY[mTier], true); + mMaxProgresstime = SPEED[mTier]; + } else { + mMaxProgresstime = 0; + return; + } + if (mProgresstime == SPEED[mTier] - 1) { + if (isPickingPipes) { + if (drillY == 0) { + aBaseMetaTileEntity.disableWorking(); + isPickingPipes = false; + } else if (aBaseMetaTileEntity.getBlockOffset(0, drillY, 0) == MINING_PIPE_TIP_BLOCK || aBaseMetaTileEntity.getBlockOffset(0, drillY, 0) == MINING_PIPE_BLOCK) { + mOutputItems[0] = MINING_PIPE.copy(); + mOutputItems[0].stackSize = 1; + aBaseMetaTileEntity.getWorld().setBlockToAir(aBaseMetaTileEntity.getXCoord(), aBaseMetaTileEntity.getYCoord() + drillY, aBaseMetaTileEntity.getZCoord()); + drillY++; + } + return; + } + if (drillY == 0) { + moveOneDown(aBaseMetaTileEntity); + return; + } + if (drillZ > RADIUS[mTier]) { + moveOneDown(aBaseMetaTileEntity); + return; + } + while (drillZ <= RADIUS[mTier]) { + while (drillX <= RADIUS[mTier]) { + Block block = aBaseMetaTileEntity.getBlockOffset(drillX, drillY, drillZ); + int blockMeta = aBaseMetaTileEntity.getMetaIDOffset(drillX, drillY, drillZ); + if (block instanceof GT_Block_Ores_Abstract) { + TileEntity tTileEntity = getBaseMetaTileEntity().getTileEntityOffset(drillX, drillY, drillZ); + if (tTileEntity != null && tTileEntity instanceof GT_TileEntity_Ores && ((GT_TileEntity_Ores) tTileEntity).mNatural) { + mineBlock(aBaseMetaTileEntity, drillX, drillY, drillZ); + return; + } + } else { + ItemData association = GT_OreDictUnificator.getAssociation(new ItemStack(block, 1, blockMeta)); + if (association != null && association.mPrefix.toString().startsWith("ore")) { + mineBlock(aBaseMetaTileEntity, drillX, drillY, drillZ); + return; + } + } + drillX++; + } + drillX = -RADIUS[mTier]; + drillZ++; + } + } + } + } + + public boolean moveOneDown(IGregTechTileEntity aBaseMetaTileEntity) { + if (aBaseMetaTileEntity.getYCoord() + drillY - 1 < 0 || aBaseMetaTileEntity.getBlockOffset(0, drillY - 1, 0) == Blocks.bedrock) { + isPickingPipes = true; + return false; + } + if (aBaseMetaTileEntity.getBlockOffset(0, drillY, 0) == MINING_PIPE_TIP_BLOCK) { + aBaseMetaTileEntity.getWorld().setBlock(aBaseMetaTileEntity.getXCoord(), aBaseMetaTileEntity.getYCoord() + drillY, aBaseMetaTileEntity.getZCoord(), MINING_PIPE_BLOCK); + } + miningPipes: + { + for (int i = 0; i < mInputSlotCount; i++) { + ItemStack s = getInputAt(i); + if (s != null && s.getItem() == MINING_PIPE.getItem() && s.stackSize > 0) { + s.stackSize--; + if (s.stackSize == 0) { + mInventory[getInputSlot() + i] = null; + } + break miningPipes; + } + } + waitMiningPipe = true; + return false; + } + if (aBaseMetaTileEntity.getBlockOffset(0, drillY - 1, 0) != Blocks.air) { + mineBlock(aBaseMetaTileEntity, 0, drillY - 1, 0); + } + aBaseMetaTileEntity.getWorld().setBlock(aBaseMetaTileEntity.getXCoord(), aBaseMetaTileEntity.getYCoord() + drillY - 1, aBaseMetaTileEntity.getZCoord(), MINING_PIPE_TIP_BLOCK); + drillY--; + drillZ = -RADIUS[mTier]; + drillX = -RADIUS[mTier]; + return true; + } + + public void mineBlock(IGregTechTileEntity aBaseMetaTileEntity, int x, int y, int z) { + ArrayList<ItemStack> drops = getBlockDrops(aBaseMetaTileEntity.getBlockOffset(x, y, z), aBaseMetaTileEntity.getXCoord() + x, aBaseMetaTileEntity.getYCoord() + y, aBaseMetaTileEntity.getZCoord() + z); + if (drops.size() > 0) + mOutputItems[0] = drops.get(0); + if (drops.size() > 1) + mOutputItems[1] = drops.get(1); + aBaseMetaTileEntity.getWorld().setBlockToAir(aBaseMetaTileEntity.getXCoord() + x, aBaseMetaTileEntity.getYCoord() + y, aBaseMetaTileEntity.getZCoord() + z); + } + + private ArrayList<ItemStack> getBlockDrops(final Block oreBlock, int posX, int posY, int posZ) { + final int blockMeta = getBaseMetaTileEntity().getMetaID(posX, posY, posZ); + return oreBlock.getDrops(getBaseMetaTileEntity().getWorld(), posX, posY, posZ, blockMeta, 1); + } + + @Override + public void saveNBTData(NBTTagCompound aNBT) { + super.saveNBTData(aNBT); + aNBT.setBoolean("isPickingPipe", isPickingPipes); + aNBT.setInteger("drillX", drillX); + aNBT.setInteger("drillY", drillY); + aNBT.setInteger("drillZ", drillZ); + } + + @Override + public void loadNBTData(NBTTagCompound aNBT) { + super.loadNBTData(aNBT); + isPickingPipes = aNBT.getBoolean("isPickingPipe"); + drillX = aNBT.getInteger("drillX"); + drillY = aNBT.getInteger("drillY"); + drillZ = aNBT.getInteger("drillZ"); + } +} diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Scanner.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Scanner.java index f71027d63d..b7539e63d8 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Scanner.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Scanner.java @@ -11,18 +11,13 @@ import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine;
import gregtech.api.objects.GT_RenderedTexture;
import gregtech.api.objects.ItemData;
-import gregtech.api.util.GT_LanguageManager;
-import gregtech.api.util.GT_Log;
-import gregtech.api.util.GT_OreDictUnificator;
-import gregtech.api.util.GT_Recipe;
-import gregtech.api.util.GT_Utility;
+import gregtech.api.util.*;
import gregtech.common.items.behaviors.Behaviour_DataOrb;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraft.nbt.NBTTagString;
-import scala.tools.nsc.symtab.SymbolLoadersStats;
public class GT_MetaTileEntity_Scanner
extends GT_MetaTileEntity_BasicMachine {
@@ -116,7 +111,7 @@ public class GT_MetaTileEntity_Scanner if (ItemList.Tool_DataStick.isStackEqual(getSpecialSlot(), false, true)) {
if (ItemList.Tool_DataStick.isStackEqual(aStack, false, true)) {
aStack.stackSize -= 1;
- this.mOutputItems[0] = GT_Utility.copyAmount(1L, new Object[]{getSpecialSlot()});
+ this.mOutputItems[0] = GT_Utility.copyAmount(1L, new Object[]{ItemList.Tool_DataStick.get(1, new Object[]{})});
this.mMaxProgresstime = (128 / (1 << this.mTier - 1));
this.mEUt = (32 * (1 << this.mTier - 1) * (1 << this.mTier - 1));
return 2;
diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Teleporter.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Teleporter.java index aa4e5645a0..28ca45080f 100644 --- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Teleporter.java +++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Teleporter.java @@ -22,7 +22,6 @@ import net.minecraft.entity.boss.EntityDragonPart; import net.minecraft.entity.effect.EntityWeatherEffect; import net.minecraft.entity.item.*; import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.entity.projectile.EntityArrow; import net.minecraft.entity.projectile.EntityFireball; @@ -36,6 +35,7 @@ import net.minecraft.util.AxisAlignedBB; import net.minecraft.world.World; import net.minecraftforge.common.DimensionManager; import net.minecraftforge.fluids.FluidStack; + import static gregtech.api.enums.GT_Values.V; public class GT_MetaTileEntity_Teleporter extends GT_MetaTileEntity_BasicTank { diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_AssemblyLine.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_AssemblyLine.java index aee44e4cae..64359518b3 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_AssemblyLine.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_AssemblyLine.java @@ -1,5 +1,6 @@ package gregtech.common.tileentities.machines.multi; +import java.util.ArrayList; import gregtech.api.GregTech_API; import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; @@ -8,6 +9,8 @@ import gregtech.api.gui.GT_GUIContainer_MultiMachine; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch; +import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_DataAccess; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; import gregtech.api.util.GT_Recipe; @@ -20,6 +23,9 @@ import net.minecraftforge.fluids.FluidStack; public class GT_MetaTileEntity_AssemblyLine extends GT_MetaTileEntity_MultiBlockBase { + + public ArrayList<GT_MetaTileEntity_Hatch_DataAccess> mDataAccessHatches = new ArrayList<GT_MetaTileEntity_Hatch_DataAccess>(); + public GT_MetaTileEntity_AssemblyLine(int aID, String aName, String aNameRegional) { super(aID, aName, aNameRegional); } @@ -40,9 +46,10 @@ public class GT_MetaTileEntity_AssemblyLine "Middle: Reinforced Glass, Assembly Line, Reinforced Glass", "UpMiddle: Grate Machine Casing,", " Assembler Machine Casing,", - " Grate Machine Casing (or Controller)", + " Grate Machine Casing (or Controller or Data Access Hatch)", "Top: Steel Casing(or Energy Hatch)", - "Up to 16 repeating slices, last is Output Bus"}; + "Up to 16 repeating slices, last is Output Bus", + "Optional 1x Data Access Hatch next to the Controller"}; } public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) { @@ -70,53 +77,76 @@ public class GT_MetaTileEntity_AssemblyLine public boolean checkRecipe(ItemStack aStack) { if(GT_Values.D1)System.out.println("Start ALine recipe check"); - if (!GT_Utility.isStackValid(mInventory[1]) || !ItemList.Tool_DataStick.isStackEqual(mInventory[1], false, true)) - return false; - if(GT_Values.D1)System.out.println("Stick accepted"); + ArrayList<ItemStack> tDataStickList = getDataItems(2); + if (tDataStickList.size() == 0) return false; + if(GT_Values.D1)System.out.println("Stick accepted, " + tDataStickList.size() + " Data Sticks found"); - NBTTagCompound tTag = mInventory[1].getTagCompound(); - if (tTag == null) return false; ItemStack tStack[] = new ItemStack[15]; - for (int i = 0; i < 15; i++) { - if (!tTag.hasKey("" + i)) continue; - if (mInputBusses.get(i) == null) return false; - tStack[i] = GT_Utility.loadItem(tTag, "" + i); - if (tStack[i] == null) continue; - if(GT_Values.D1)System.out.println("Item "+i+" : "+tStack[i].getUnlocalizedName()); - ItemStack stackInSlot = mInputBusses.get(i).getBaseMetaTileEntity().getStackInSlot(0); - if (!GT_Utility.areStacksEqual(tStack[i], stackInSlot, true) || tStack[i].stackSize > stackInSlot.stackSize) { - if(GT_Values.D1)System.out.println(i +" not accepted"); - return false; + FluidStack[] tFluids = new FluidStack[4]; + boolean recipeNA = false; + boolean findRecipe = false; + for (ItemStack tDataStick : tDataStickList){ + recipeNA = false; + NBTTagCompound tTag = tDataStick.getTagCompound(); + if (tTag == null) continue; + for (int i = 0; i < 15; i++) { + if (!tTag.hasKey("" + i)) continue; + if (mInputBusses.get(i) == null) { + recipeNA = true; + break; + } + tStack[i] = GT_Utility.loadItem(tTag, "" + i); + if (tStack[i] == null) continue; + if(GT_Values.D1)System.out.println("Item "+i+" : "+tStack[i].getUnlocalizedName()); + ItemStack stackInSlot = mInputBusses.get(i).getBaseMetaTileEntity().getStackInSlot(0); + if (!GT_Utility.areStacksEqual(tStack[i], stackInSlot, true) || tStack[i].stackSize > stackInSlot.stackSize) { + if(GT_Values.D1)System.out.println(i +" not accepted"); + recipeNA = true; + break; + } + if(GT_Values.D1)System.out.println(i+" accepted"); } - if(GT_Values.D1)System.out.println(i+" accepted"); - } - if(GT_Values.D1)System.out.println("All Items done, start fluid check"); - FluidStack[] tFluids = new FluidStack[4]; - for (int i = 0; i < 4; i++) { - if (!tTag.hasKey("f" + i)) continue; - tFluids[i] = GT_Utility.loadFluid(tTag, "f" + i); - if (tFluids[i] == null) continue; - if(GT_Values.D1)System.out.println("Fluid "+i+" "+tFluids[i].getUnlocalizedName()); - if (mInputHatches.get(i) == null) return false; - FluidStack fluidInHatch = mInputHatches.get(i).mFluid; - if (fluidInHatch == null || !GT_Utility.areFluidsEqual(fluidInHatch, tFluids[i], true) || fluidInHatch.amount < tFluids[i].amount) { - if(GT_Values.D1)System.out.println(i+" not accepted"); - return false; + if (recipeNA) continue; + + if(GT_Values.D1)System.out.println("All Items done, start fluid check"); + for (int i = 0; i < 4; i++) { + if (!tTag.hasKey("f" + i)) continue; + tFluids[i] = GT_Utility.loadFluid(tTag, "f" + i); + if (tFluids[i] == null) continue; + if(GT_Values.D1)System.out.println("Fluid "+i+" "+tFluids[i].getUnlocalizedName()); + if (mInputHatches.get(i) == null) { + recipeNA = true; + break; + } + FluidStack fluidInHatch = mInputHatches.get(i).mFluid; + if (fluidInHatch == null || !GT_Utility.areFluidsEqual(fluidInHatch, tFluids[i], true) || fluidInHatch.amount < tFluids[i].amount) { + if(GT_Values.D1)System.out.println(i+" not accepted"); + recipeNA = true; + break; + } + if(GT_Values.D1)System.out.println(i+" accepted"); } - if(GT_Values.D1)System.out.println(i+" accepted"); - } - if(GT_Values.D1)System.out.println("Input accepted, check other values"); - if (!tTag.hasKey("output")) return false; - mOutputItems = new ItemStack[]{GT_Utility.loadItem(tTag, "output")}; - if (mOutputItems[0] == null || !GT_Utility.isStackValid(mOutputItems[0])) - return false; - - if (!tTag.hasKey("time")) return false; - mMaxProgresstime = tTag.getInteger("time"); - if (mMaxProgresstime <= 0) return false; - - if (!tTag.hasKey("eu")) return false; - mEUt = tTag.getInteger("eu"); + if (recipeNA) continue; + + if(GT_Values.D1)System.out.println("Input accepted, check other values"); + if (!tTag.hasKey("output")) continue; + mOutputItems = new ItemStack[]{GT_Utility.loadItem(tTag, "output")}; + if (mOutputItems[0] == null || !GT_Utility.isStackValid(mOutputItems[0])) + continue; + + if (!tTag.hasKey("time")) continue; + mMaxProgresstime = tTag.getInteger("time"); + if (mMaxProgresstime <= 0) continue; + + if (!tTag.hasKey("eu")) continue; + mEUt = tTag.getInteger("eu"); + + if(GT_Values.D1)System.out.println("Find avaiable recipe"); + findRecipe = true; + break; + } + if (!findRecipe) return false; + if(GT_Values.D1)System.out.println("All checked start consuming inputs"); for (int i = 0; i < 15; i++) { if (tStack[i] == null) continue; @@ -168,13 +198,16 @@ public class GT_MetaTileEntity_AssemblyLine for (int r = 0; r <= 16; r++) { int i = r * xDir; + IGregTechTileEntity tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(0, 0, i); if (i != 0 && !(aBaseMetaTileEntity.getBlockOffset(0, 0, i) == GregTech_API.sBlockCasings3 && aBaseMetaTileEntity.getMetaIDOffset(0, 0, i) == 10)) { - return false; + if(r == 1 && !addDataAccessToMachineList(tTileEntity, 16)){ + return false; + } } if (!aBaseMetaTileEntity.getBlockOffset(0, -1, i).getUnlocalizedName().equals("blockAlloyGlass")) { return false; } - IGregTechTileEntity tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(0, -2, i); + tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(0, -2, i); if ((!addMaintenanceToMachineList(tTileEntity, 16)) && (!addInputToMachineList(tTileEntity, 16))) { if (aBaseMetaTileEntity.getBlockOffset(0, -2, i) != GregTech_API.sBlockCasings2) { return false; @@ -225,13 +258,16 @@ public class GT_MetaTileEntity_AssemblyLine for (int r = 0; r <= 16; r++) { int i = r * -zDir; + IGregTechTileEntity tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(i, 0, 0); if (i != 0 && !(aBaseMetaTileEntity.getBlockOffset(i, 0, 0) == GregTech_API.sBlockCasings3 && aBaseMetaTileEntity.getMetaIDOffset(i, 0, 0) == 10)) { - return false; + if(r == 1 && !addDataAccessToMachineList(tTileEntity, 16)){ + return false; + } } if (!aBaseMetaTileEntity.getBlockOffset(i, -1, 0).getUnlocalizedName().equals("blockAlloyGlass")) { return false; } - IGregTechTileEntity tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(i, -2, 0); + tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(i, -2, 0); if ((!addMaintenanceToMachineList(tTileEntity, 16)) && (!addInputToMachineList(tTileEntity, 16))) { if (aBaseMetaTileEntity.getBlockOffset(i, -2, 0) != GregTech_API.sBlockCasings2) { return false; @@ -281,6 +317,47 @@ public class GT_MetaTileEntity_AssemblyLine } return false; } + + /** + * @param state using bitmask, 1 for IntegratedCircuit, 2 for DataStick, 4 for DataOrb + */ + private boolean isCorrectDataItem(ItemStack aStack, int state){ + if ((state & 1) != 0 && ItemList.Circuit_Integrated.isStackEqual(aStack, false, true)) return true; + if ((state & 2) != 0 && ItemList.Tool_DataStick.isStackEqual(aStack, false, true)) return true; + if ((state & 4) != 0 && ItemList.Tool_DataOrb.isStackEqual(aStack, false, true)) return true; + return false; + } + + /** + * @param state using bitmask, 1 for IntegratedCircuit, 2 for DataStick, 4 for DataOrb + */ + public ArrayList<ItemStack> getDataItems(int state) { + ArrayList<ItemStack> rList = new ArrayList<ItemStack>(); + if (GT_Utility.isStackValid(mInventory[1]) && isCorrectDataItem(mInventory[1], state)) { + rList.add(mInventory[1]); + } + for (GT_MetaTileEntity_Hatch_DataAccess tHatch : mDataAccessHatches) { + if (isValidMetaTileEntity(tHatch)) { + for (int i = 0; i < tHatch.getBaseMetaTileEntity().getSizeInventory(); i++) { + if (tHatch.getBaseMetaTileEntity().getStackInSlot(i) != null + && isCorrectDataItem(tHatch.getBaseMetaTileEntity().getStackInSlot(i), state)) + rList.add(tHatch.getBaseMetaTileEntity().getStackInSlot(i)); + } + } + } + return rList; + } + + public boolean addDataAccessToMachineList(IGregTechTileEntity aTileEntity, int aBaseCasingIndex) { + if (aTileEntity == null) return false; + IMetaTileEntity aMetaTileEntity = aTileEntity.getMetaTileEntity(); + if (aMetaTileEntity == null) return false; + if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch_DataAccess) { + ((GT_MetaTileEntity_Hatch) aMetaTileEntity).mMachineBlock = (byte) aBaseCasingIndex; + return mDataAccessHatches.add((GT_MetaTileEntity_Hatch_DataAccess) aMetaTileEntity); + } + return false; + } public int getMaxEfficiency(ItemStack aStack) { return 10000; @@ -297,4 +374,4 @@ public class GT_MetaTileEntity_AssemblyLine public boolean explodesOnComponentBreak(ItemStack aStack) { return false; } -}
\ No newline at end of file +} diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BrickedBlastFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BrickedBlastFurnace.java new file mode 100644 index 0000000000..5d6712235b --- /dev/null +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BrickedBlastFurnace.java @@ -0,0 +1,58 @@ +package gregtech.common.tileentities.machines.multi;
+
+import gregtech.api.GregTech_API;
+import gregtech.api.enums.Textures;
+import gregtech.api.interfaces.ITexture;
+import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
+import gregtech.api.metatileentity.MetaTileEntity;
+import gregtech.api.objects.GT_RenderedTexture;
+import net.minecraft.block.Block;
+
+public class GT_MetaTileEntity_BrickedBlastFurnace extends GT_MetaTileEntity_PrimitiveBlastFurnace{
+ private static final ITexture[] FACING_SIDE = {new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_DENSEBRICKS)};
+ private static final ITexture[] FACING_FRONT = {new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_BRICKEDBLASTFURNACE_INACTIVE)};
+ private static final ITexture[] FACING_ACTIVE = {new GT_RenderedTexture(Textures.BlockIcons.MACHINE_CASING_BRICKEDBLASTFURNACE_ACTIVE)};
+
+ public GT_MetaTileEntity_BrickedBlastFurnace(int aID, String aName, String aNameRegional) {
+ super(aID, aName, aNameRegional);
+ }
+
+ public GT_MetaTileEntity_BrickedBlastFurnace(String aName) {
+ super(aName);
+ }
+
+ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
+ return new GT_MetaTileEntity_BrickedBlastFurnace(this.mName);
+ }
+
+ public String[] getDescription() {
+ return new String[]{
+ "Controller Block for the Bricked Blast Furnace",
+ "Useable for Steel and general Pyrometallurgy",
+ "Size(WxHxD): 3x4x3 (Hollow, with opening on top)",
+ "Built from 32 Firebrick blocks",
+ "Causes 50 Pollution per second"};
+ }
+
+ public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
+ if (aSide == aFacing) {
+ return aActive ? FACING_ACTIVE : FACING_FRONT;
+ }
+ return FACING_SIDE;
+ }
+
+ @Override
+ protected boolean isCorrectCasingBlock(Block block) {
+ return block == GregTech_API.sBlockCasings4;
+ }
+
+ @Override
+ protected boolean isCorrectCasingMetaID(int metaID) {
+ return metaID == 15;
+ }
+
+ @Override
+ public String getName() {
+ return "Bricked Blast Furnace";
+ }
+}
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BronzeBlastFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BronzeBlastFurnace.java index 3b287d9ca4..2d3df80447 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BronzeBlastFurnace.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_BronzeBlastFurnace.java @@ -1,57 +1,37 @@ package gregtech.common.tileentities.machines.multi;
-import gregtech.GT_Mod;
import gregtech.api.GregTech_API;
-import gregtech.api.enums.Materials;
-import gregtech.api.enums.OrePrefixes;
import gregtech.api.enums.Textures;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.MetaTileEntity;
-import gregtech.api.objects.GT_ItemStack;
import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.objects.XSTR;
-import gregtech.api.util.GT_OreDictUnificator;
-import gregtech.api.util.GT_Utility;
-import gregtech.common.GT_Pollution;
-import gregtech.common.gui.GT_Container_BronzeBlastFurnace;
-import gregtech.common.gui.GT_GUIContainer_BronzeBlastFurnace;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.init.Blocks;
-import net.minecraft.init.Items;
-import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.NBTTagCompound;
-import net.minecraft.world.ChunkPosition;
-import net.minecraft.world.World;
-import net.minecraftforge.common.util.ForgeDirection;
+import net.minecraft.block.Block;
public class GT_MetaTileEntity_BronzeBlastFurnace
- extends MetaTileEntity {
+ extends GT_MetaTileEntity_PrimitiveBlastFurnace {
private static final ITexture[] FACING_SIDE = {new GT_RenderedTexture(Textures.BlockIcons.MACHINE_BRONZEPLATEDBRICKS)};
private static final ITexture[] FACING_FRONT = {new GT_RenderedTexture(Textures.BlockIcons.MACHINE_BRONZEBLASTFURNACE)};
private static final ITexture[] FACING_ACTIVE = {new GT_RenderedTexture(Textures.BlockIcons.MACHINE_BRONZEBLASTFURNACE_ACTIVE)};
- public int mMaxProgresstime = 0;
- public int mUpdate = 5;
- public int mProgresstime = 0;
- public boolean mMachine = false;
- public ItemStack mOutputItem1;
- public ItemStack mOutputItem2;
public GT_MetaTileEntity_BronzeBlastFurnace(int aID, String aName, String aNameRegional) {
- super(aID, aName, aNameRegional, 4);
+ super(aID, aName, aNameRegional);
}
public GT_MetaTileEntity_BronzeBlastFurnace(String aName) {
- super(aName, 4);
+ super(aName);
}
+ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
+ return new GT_MetaTileEntity_BronzeBlastFurnace(this.mName);
+ }
+
public String[] getDescription() {
return new String[]{
"Controller Block for the Bronze Blast Furnace",
- "How to get your first Steel",
+ "Useable for Steel and general Pyrometallurgy",
"Size(WxHxD): 3x4x3 (Hollow, with opening on top)",
- "Bronze Plated Bricks for the rest (32 at least!)",
+ "Built from 32 Bronze Plated Bricks",
"Causes 50 Pollution per second"};
}
@@ -62,296 +42,20 @@ public class GT_MetaTileEntity_BronzeBlastFurnace return FACING_SIDE;
}
- public boolean isSteampowered() {
- return false;
- }
-
- public boolean isElectric() {
- return false;
- }
-
- public boolean isPneumatic() {
- return false;
- }
-
- public boolean isEnetInput() {
- return false;
- }
-
- public boolean isEnetOutput() {
- return false;
- }
-
- public boolean isInputFacing(byte aSide) {
- return false;
- }
-
- public boolean isOutputFacing(byte aSide) {
- return false;
- }
-
- public boolean isTeleporterCompatible() {
- return false;
- }
-
- public boolean isFacingValid(byte aFacing) {
- return aFacing > 1;
- }
-
- public boolean isAccessAllowed(EntityPlayer aPlayer) {
- return true;
- }
-
- public int getProgresstime() {
- return this.mProgresstime;
- }
-
- public int maxProgresstime() {
- return this.mMaxProgresstime;
- }
-
- public int increaseProgress(int aProgress) {
- this.mProgresstime += aProgress;
- return this.mMaxProgresstime - this.mProgresstime;
- }
-
- public boolean allowCoverOnSide(byte aSide, GT_ItemStack aCoverID) {
- return (GregTech_API.getCoverBehavior(aCoverID.toStack()).isSimpleCover()) && (super.allowCoverOnSide(aSide, aCoverID));
- }
-
- public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
- return new GT_MetaTileEntity_BronzeBlastFurnace(this.mName);
- }
-
- public void saveNBTData(NBTTagCompound aNBT) {
- aNBT.setInteger("mProgresstime", this.mProgresstime);
- aNBT.setInteger("mMaxProgresstime", this.mMaxProgresstime);
- if (this.mOutputItem1 != null) {
- NBTTagCompound tNBT = new NBTTagCompound();
- this.mOutputItem1.writeToNBT(tNBT);
- aNBT.setTag("mOutputItem1", tNBT);
- }
- if (this.mOutputItem2 != null) {
- NBTTagCompound tNBT = new NBTTagCompound();
- this.mOutputItem2.writeToNBT(tNBT);
- aNBT.setTag("mOutputItem2", tNBT);
- }
- }
-
- public void loadNBTData(NBTTagCompound aNBT) {
- this.mUpdate = 5;
- this.mProgresstime = aNBT.getInteger("mProgresstime");
- this.mMaxProgresstime = aNBT.getInteger("mMaxProgresstime");
- this.mOutputItem1 = GT_Utility.loadItem(aNBT, "mOutputItem1");
- this.mOutputItem2 = GT_Utility.loadItem(aNBT, "mOutputItem2");
- }
+ @Override
+ protected boolean isCorrectCasingBlock(Block block) {
+ return block == GregTech_API.sBlockCasings1;
+ }
- public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer) {
- if (aBaseMetaTileEntity.isClientSide()) {
- return true;
- }
- aBaseMetaTileEntity.openGUI(aPlayer);
- return true;
- }
+ @Override
+ protected boolean isCorrectCasingMetaID(int metaID) {
+ return metaID == 10;
+ }
- public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new GT_Container_BronzeBlastFurnace(aPlayerInventory, aBaseMetaTileEntity);
- }
-
- public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
- return new GT_GUIContainer_BronzeBlastFurnace(aPlayerInventory, aBaseMetaTileEntity);
- }
+ @Override
+ public String getName() {
+ return "Bronze Blast Furnace";
+ }
- private boolean checkMachine() {
- int xDir = ForgeDirection.getOrientation(getBaseMetaTileEntity().getBackFacing()).offsetX;
- int zDir = ForgeDirection.getOrientation(getBaseMetaTileEntity().getBackFacing()).offsetZ;
- for (int i = -1; i < 2; i++) {
- for (int j = -1; j < 3; j++) {
- for (int k = -1; k < 2; k++) {
- if ((xDir + i != 0) || (j != 0) || (zDir + k != 0)) {
- if ((i != 0) || (j == -1) || (k != 0)) {
- if ((getBaseMetaTileEntity().getBlockOffset(xDir + i, j, zDir + k) != GregTech_API.sBlockCasings1) || (getBaseMetaTileEntity().getMetaIDOffset(xDir + i, j, zDir + k) != 10)) {
- return false;
- }
- } else if ((!GT_Utility.arrayContains(getBaseMetaTileEntity().getBlockOffset(xDir + i, j, zDir + k), new Object[]{Blocks.lava, Blocks.flowing_lava, null})) && (!getBaseMetaTileEntity().getAirOffset(xDir + i, j, zDir + k))) {
- return false;
- }
- }
- }
- }
- }
- return true;
- }
-
- public void onMachineBlockUpdate() {
- this.mUpdate = 5;
- }
-
- public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTimer) {
- if (aBaseMetaTileEntity.isServerSide()) {
- if (this.mUpdate-- == 0) {
- this.mMachine = checkMachine();
- }
- if (this.mMachine) {
- if (this.mMaxProgresstime > 0) {
- if (++this.mProgresstime >= this.mMaxProgresstime) {
- addOutputProducts();
- this.mOutputItem1 = null;
- this.mOutputItem2 = null;
- this.mProgresstime = 0;
- this.mMaxProgresstime = 0;
- GT_Mod.instance.achievements.issueAchievement(aBaseMetaTileEntity.getWorld().getPlayerEntityByName(aBaseMetaTileEntity.getOwnerName()), "steel");
- }
- } else if (aBaseMetaTileEntity.isAllowedToWork()) {
- checkRecipe();
- }
- }
- if(this.mMaxProgresstime>0 && (aTimer % 20L == 0L)){
- GT_Pollution.addPollution(getBaseMetaTileEntity(), 50);
- }
-
- aBaseMetaTileEntity.setActive((this.mMaxProgresstime > 0) && (this.mMachine));
- if (aBaseMetaTileEntity.isActive()) {
- if (aBaseMetaTileEntity.getAir(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1), aBaseMetaTileEntity.getYCoord(), aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1))) {
- aBaseMetaTileEntity.getWorld().setBlock(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1), aBaseMetaTileEntity.getYCoord(), aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1), Blocks.lava, 1, 2);
- this.mUpdate = 1;
- }
- if (aBaseMetaTileEntity.getAir(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1), aBaseMetaTileEntity.getYCoord() + 1, aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1))) {
- aBaseMetaTileEntity.getWorld().setBlock(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1), aBaseMetaTileEntity.getYCoord() + 1, aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1), Blocks.lava, 1, 2);
- this.mUpdate = 1;
- }
- } else {
- if (aBaseMetaTileEntity.getBlock(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1), aBaseMetaTileEntity.getYCoord(), aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1)) == Blocks.lava) {
- aBaseMetaTileEntity.getWorld().setBlock(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1), aBaseMetaTileEntity.getYCoord(), aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1), Blocks.air, 0, 2);
- this.mUpdate = 1;
- }
- if (aBaseMetaTileEntity.getBlock(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1), aBaseMetaTileEntity.getYCoord() + 1, aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1)) == Blocks.lava) {
- aBaseMetaTileEntity.getWorld().setBlock(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1), aBaseMetaTileEntity.getYCoord() + 1, aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1), Blocks.air, 0, 2);
- this.mUpdate = 1;
- }
- }
- }else if(aBaseMetaTileEntity.isActive()){
- World aWorld=aBaseMetaTileEntity.getWorld();
- double xPos=aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1);
- double yPos=aBaseMetaTileEntity.getOffsetY(aBaseMetaTileEntity.getBackFacing(), 1)+0.05F;
- double zPos=aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1);
- XSTR floatGen=new XSTR();
- aWorld.spawnParticle("largesmoke", xPos + floatGen.nextFloat(), yPos, zPos + floatGen.nextFloat(), 0.0D, 0.3D, 0.0D);
- //Pollution particles intensify
- if(GT_Pollution.getPollution(getBaseMetaTileEntity())>GT_Mod.gregtechproxy.mPollutionSmogLimit){
- aWorld.spawnParticle("largesmoke", xPos + floatGen.nextFloat(), yPos, zPos + floatGen.nextFloat(), 0.0D, 0.45D, 0.0D);
- aWorld.spawnParticle("largesmoke", xPos + floatGen.nextFloat(), yPos, zPos + floatGen.nextFloat(), 0.0D, 0.6D, 0.0D);
- }
- }
-}
-
- private void addOutputProducts() {
- if (this.mOutputItem1 != null) {
- if (this.mInventory[2] == null) {
- this.mInventory[2] = GT_Utility.copy(new Object[]{this.mOutputItem1});
- } else if (GT_Utility.areStacksEqual(this.mInventory[2], this.mOutputItem1)) {
- this.mInventory[2].stackSize = Math.min(this.mOutputItem1.getMaxStackSize(), this.mOutputItem1.stackSize + this.mInventory[2].stackSize);
- }
- }
- if (this.mOutputItem2 != null) {
- if (this.mInventory[3] == null) {
- this.mInventory[3] = GT_Utility.copy(new Object[]{this.mOutputItem2});
- } else if (GT_Utility.areStacksEqual(this.mInventory[3], this.mOutputItem2)) {
- this.mInventory[3].stackSize = Math.min(this.mOutputItem2.getMaxStackSize(), this.mOutputItem2.stackSize + this.mInventory[3].stackSize);
- }
- }
- }
-
- private boolean spaceForOutput(ItemStack aStack1, ItemStack aStack2) {
- if (((this.mInventory[2] == null) || (aStack1 == null) || ((this.mInventory[2].stackSize + aStack1.stackSize <= this.mInventory[2].getMaxStackSize()) && (GT_Utility.areStacksEqual(this.mInventory[2], aStack1)))) && (
- (this.mInventory[3] == null) || (aStack2 == null) || ((this.mInventory[3].stackSize + aStack2.stackSize <= this.mInventory[3].getMaxStackSize()) && (GT_Utility.areStacksEqual(this.mInventory[3], aStack2))))) {
- return true;
- }
- return false;
- }
-
- private boolean checkRecipe() {
- if (!this.mMachine) {
- return false;
- }
- if ((this.mInventory[0] != null) && (this.mInventory[1] != null) && (this.mInventory[0].stackSize >= 1)) {
- if ((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[0], "dustIron")) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[0], "ingotIron"))) {
- if ((this.mInventory[1].getItem() == Items.coal) && (this.mInventory[1].stackSize >= 4) && (spaceForOutput(this.mOutputItem1 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 1L), this.mOutputItem2 = GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 4L)))) {
- getBaseMetaTileEntity().decrStackSize(0, 1);
- getBaseMetaTileEntity().decrStackSize(1, 4);
- this.mMaxProgresstime = 7200;
- return true;
- }
- if ((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[1], "fuelCoke")) && (this.mInventory[1].stackSize >= 2) && (spaceForOutput(this.mOutputItem1 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 1L), this.mOutputItem2 = GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Ash, 4L)))) {
- getBaseMetaTileEntity().decrStackSize(0, 1);
- getBaseMetaTileEntity().decrStackSize(1, 2);
- this.mMaxProgresstime = 4800;
- return true;
- }
- if ((this.mInventory[0].stackSize >= 9) && ((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[1], "blockCoal")) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[1], "blockCharcoal"))) && (this.mInventory[1].stackSize >= 4) && (spaceForOutput(this.mOutputItem1 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 9L), this.mOutputItem2 = GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 4L)))) {
- getBaseMetaTileEntity().decrStackSize(0, 9);
- getBaseMetaTileEntity().decrStackSize(1, 4);
- this.mMaxProgresstime = 64800;
- return true;
- }
- } else if (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[0], "dustSteel")) {
- if ((this.mInventory[1].getItem() == Items.coal) && (this.mInventory[1].stackSize >= 2) && (spaceForOutput(this.mOutputItem1 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 1L), this.mOutputItem2 = GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 2L)))) {
- getBaseMetaTileEntity().decrStackSize(0, 1);
- getBaseMetaTileEntity().decrStackSize(1, 2);
- this.mMaxProgresstime = 3600;
- return true;
- }
- if ((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[1], "fuelCoke")) && (this.mInventory[1].stackSize >= 1) && (spaceForOutput(this.mOutputItem1 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 1L), this.mOutputItem2 = GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Ash, 2L)))) {
- getBaseMetaTileEntity().decrStackSize(0, 1);
- getBaseMetaTileEntity().decrStackSize(1, 1);
- this.mMaxProgresstime = 2400;
- return true;
- }
- if ((this.mInventory[0].stackSize >= 9) && ((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[1], "blockCoal")) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[1], "blockCharcoal"))) && (this.mInventory[1].stackSize >= 2) && (spaceForOutput(this.mOutputItem1 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 9L), this.mOutputItem2 = GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 2L)))) {
- getBaseMetaTileEntity().decrStackSize(0, 9);
- getBaseMetaTileEntity().decrStackSize(1, 2);
- this.mMaxProgresstime = 32400;
- return true;
- }
- } else if (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[0], "blockIron")) {
- if ((this.mInventory[1].getItem() == Items.coal) && (this.mInventory[1].stackSize >= 36) && (spaceForOutput(this.mOutputItem1 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 9L), this.mOutputItem2 = GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 4L)))) {
- getBaseMetaTileEntity().decrStackSize(0, 1);
- getBaseMetaTileEntity().decrStackSize(1, 36);
- this.mMaxProgresstime = 64800;
- return true;
- }
- if ((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[1], "fuelCoke")) && (this.mInventory[1].stackSize >= 18) && (spaceForOutput(this.mOutputItem1 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 9L), this.mOutputItem2 = GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 4L)))) {
- getBaseMetaTileEntity().decrStackSize(0, 1);
- getBaseMetaTileEntity().decrStackSize(1, 18);
- this.mMaxProgresstime = 43200;
- return true;
- }
- if (((GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[1], "blockCoal")) || (GT_OreDictUnificator.isItemStackInstanceOf(this.mInventory[1], "blockCharcoal"))) && (this.mInventory[1].stackSize >= 4) && (spaceForOutput(this.mOutputItem1 = GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 9L), this.mOutputItem2 = GT_OreDictUnificator.get(OrePrefixes.dust, Materials.DarkAsh, 4L)))) {
- getBaseMetaTileEntity().decrStackSize(0, 1);
- getBaseMetaTileEntity().decrStackSize(1, 4);
- this.mMaxProgresstime = 64800;
- return true;
- }
- }
- }
- this.mOutputItem1 = null;
- this.mOutputItem2 = null;
- return false;
- }
-
- public boolean isGivingInformation() {
- return false;
- }
-
- public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return aIndex > 1;
- }
-
- public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
- return !GT_Utility.areStacksEqual(aStack, this.mInventory[0]);
- }
-
- public byte getTileEntityBaseType() {
- return 0;
- }
+
}
\ No newline at end of file diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DistillationTower.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DistillationTower.java index 09eb4d72ab..4105c2495b 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DistillationTower.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_DistillationTower.java @@ -9,6 +9,7 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Output; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; +import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.block.Block; @@ -19,11 +20,11 @@ import net.minecraftforge.fluids.FluidStack; import org.apache.commons.lang3.ArrayUtils; import java.util.ArrayList; -import java.util.Arrays; public class GT_MetaTileEntity_DistillationTower extends GT_MetaTileEntity_MultiBlockBase { - private static boolean controller; + private static final int CASING_INDEX = 49; + private short controllerY; public GT_MetaTileEntity_DistillationTower(int aID, String aName, String aNameRegional) { super(aID, aName, aNameRegional); @@ -40,20 +41,23 @@ public class GT_MetaTileEntity_DistillationTower public String[] getDescription() { return new String[]{ "Controller Block for the Distillation Tower", - "Size(WxHxD): 3x6x3 (Hollow), Controller (Front bottom)", + "Size(WxHxD): 3xhx3 (Hollow), with h ranging from 3 to 12", + "Controller (Front bottom)", "1x Input Hatch (Any bottom layer casing)", - "5x Output Hatch (Any casing besides bottom layer)", + "2-11x Output Hatch (One per layer except bottom layer)", "1x Output Bus (Any bottom layer casing)", "1x Maintenance Hatch (Any casing)", "1x Energy Hatch (Any casing)", - "Clean Stainless Steel Machine Casings for the rest (36 at least!)"}; + "Fluids are only put out at the correct height", + "The correct height equals the slot number in the NEI recipe", + "Clean Stainless Steel Machine Casings for the rest (7 x h - 5 at least!)"}; } public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) { if (aSide == aFacing) { - return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[49], new GT_RenderedTexture(aActive ? Textures.BlockIcons.OVERLAY_FRONT_DISTILLATION_TOWER_ACTIVE : Textures.BlockIcons.OVERLAY_FRONT_DISTILLATION_TOWER)}; + return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[CASING_INDEX], new GT_RenderedTexture(aActive ? Textures.BlockIcons.OVERLAY_FRONT_DISTILLATION_TOWER_ACTIVE : Textures.BlockIcons.OVERLAY_FRONT_DISTILLATION_TOWER)}; } - return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[49]}; + return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[CASING_INDEX]}; } public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) { @@ -115,7 +119,6 @@ public class GT_MetaTileEntity_DistillationTower this.mMaxProgresstime = Math.max(1, this.mMaxProgresstime); this.mOutputItems = new ItemStack[]{tRecipe.getOutput(0)}; this.mOutputFluids = tRecipe.mFluidOutputs.clone(); - ArrayUtils.reverse(mOutputFluids); updateSlots(); return true; } @@ -127,64 +130,64 @@ public class GT_MetaTileEntity_DistillationTower } public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) { + controllerY = aBaseMetaTileEntity.getYCoord(); int xDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetX; int zDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetZ; - if (!aBaseMetaTileEntity.getAirOffset(xDir, 1, zDir)) { - return false; + int y = 0; //height + int casingAmount = 0; + boolean reachedTop = false; + + for (int x = xDir - 1; x <= xDir + 1; x++) { //x=width + for (int z = zDir - 1; z <= zDir + 1; z++) { //z=depth + if (x != 0 || z != 0) { + IGregTechTileEntity tileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(x, y, z); + Block block = aBaseMetaTileEntity.getBlockOffset(x, y, z); + if (!addInputToMachineList(tileEntity, CASING_INDEX) + && !addOutputToMachineList(tileEntity, CASING_INDEX) + && !addMaintenanceToMachineList(tileEntity, CASING_INDEX) + && !addEnergyInputToMachineList(tileEntity, CASING_INDEX)) { + if (block == GregTech_API.sBlockCasings4 && aBaseMetaTileEntity.getMetaIDOffset(x, y, z) == 1) { + casingAmount++; + } else { + return false; + } + } + } + } + } + y++; + + while (y < 12 && !reachedTop) { + for (int x = xDir - 1; x <= xDir + 1; x++) { //x=width + for (int z = zDir - 1; z <= zDir + 1; z++) { //z=depth + IGregTechTileEntity tileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(x, y, z); + Block block = aBaseMetaTileEntity.getBlockOffset(x, y, z); + if (aBaseMetaTileEntity.getAirOffset(x, y, z)) { + if (x != xDir || z != zDir) { + return false; + } + } else { + if (x == xDir && z == zDir) { + reachedTop = true; + } + if (!addOutputToMachineList(tileEntity, CASING_INDEX) + && !addMaintenanceToMachineList(tileEntity, CASING_INDEX) + && !addEnergyInputToMachineList(tileEntity, CASING_INDEX)) { + if (block == GregTech_API.sBlockCasings4 && aBaseMetaTileEntity.getMetaIDOffset(x, y, z) == 1) { + casingAmount++; + } else { + return false; + } + } + } + } + } + y++; } - int tAmount = 0; - controller = false; - for (int i = -1; i < 2; i++) { - for (int j = -1; j < 2; j++) { - for (int h = 0; h < 6; h++) { - if (!(i == 0 && j == 0 && (h > 0 && h < 5)))//((h > 0)&&(h<5)) || (((xDir + i != 0) || (zDir + j != 0)) && ((i != 0) || (j != 0))) - { - IGregTechTileEntity tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(xDir + i, h, zDir + j); - if ((!addMaintenanceToMachineList(tTileEntity, 49)) && (!addInputToMachineList(tTileEntity, 49)) && (!addOutputToMachineList(tTileEntity, 49)) && (!addEnergyInputToMachineList(tTileEntity, 49)) && (!ignoreController(aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j)))) { - if (aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j) != GregTech_API.sBlockCasings4) { - return false; - } - if (aBaseMetaTileEntity.getMetaIDOffset(xDir + i, h, zDir + j) != 1) { - return false; - } - tAmount++; - } - } - } - } - } - if (this.mOutputBusses.size() != 1 || this.mInputBusses.size() != 0 || this.mOutputHatches.size() != 5) { - return false; - } - int height = this.getBaseMetaTileEntity().getYCoord(); - if (this.mInputHatches.get(0).getBaseMetaTileEntity().getYCoord() != height || this.mOutputBusses.get(0).getBaseMetaTileEntity().getYCoord() != height) { - return false; - } - GT_MetaTileEntity_Hatch_Output[] tmpHatches = new GT_MetaTileEntity_Hatch_Output[5]; - int mOutputHatches_sS=this.mOutputHatches.size(); - for (int i = 0; i < mOutputHatches_sS; i++) { - int hatchNumber = this.mOutputHatches.get(i).getBaseMetaTileEntity().getYCoord() - 1 - height; - if (tmpHatches[hatchNumber] == null) { - tmpHatches[hatchNumber] = this.mOutputHatches.get(i); - } else { - return false; - } - } - this.mOutputHatches.clear(); - for (int i = 0; i < tmpHatches.length; i++) { - this.mOutputHatches.add(tmpHatches[i]); - } - if(this.mMaintenanceHatches.size()!=1)return false; - return tAmount >= 36; - } - - public boolean ignoreController(Block tTileEntity) { - if (!controller && tTileEntity == GregTech_API.sBlockMachines) { - return true; - } - return false; + + return casingAmount >= 7 * y - 5 && y >= 3 && y <= 12 && reachedTop; } - + public int getMaxEfficiency(ItemStack aStack) { return 10000; } @@ -197,8 +200,39 @@ public class GT_MetaTileEntity_DistillationTower return 0; } - public boolean explodesOnComponentBreak(ItemStack aStack) { return false; } + + @Override + public boolean addOutput(FluidStack aLiquid) { + if (aLiquid == null) return false; + FluidStack tLiquid = aLiquid.copy(); + for (GT_MetaTileEntity_Hatch_Output tHatch : mOutputHatches) { + if (isValidMetaTileEntity(tHatch) && GT_ModHandler.isSteam(aLiquid) ? tHatch.outputsSteam() : tHatch.outputsLiquids()) { + if (tHatch.getBaseMetaTileEntity().getYCoord() == this.controllerY + 1) { + int tAmount = tHatch.fill(tLiquid, false); + if (tAmount >= tLiquid.amount) { + return tHatch.fill(tLiquid, true) >= tLiquid.amount; + } else if (tAmount > 0) { + tLiquid.amount = tLiquid.amount - tHatch.fill(tLiquid, true); + } + } + } + } + return false; + } + + @Override + protected void addFluidOutputs(FluidStack[] mOutputFluids2) { + for (int i = 0; i < mOutputFluids2.length; i++) { + if (mOutputHatches.size() > i && mOutputHatches.get(i) != null && mOutputFluids2[i] != null && isValidMetaTileEntity(mOutputHatches.get(i))) { + if (mOutputHatches.get(i).getBaseMetaTileEntity().getYCoord() == this.controllerY + 1 + i) { + mOutputHatches.get(i).fill(mOutputFluids2[i], true); + } + } + } + + } + }
\ No newline at end of file diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ElectricBlastFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ElectricBlastFurnace.java index 0f07a3e743..3823e38a0b 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ElectricBlastFurnace.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ElectricBlastFurnace.java @@ -16,7 +16,6 @@ import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.FluidStack;
import java.util.ArrayList;
-import java.util.Arrays;
public class GT_MetaTileEntity_ElectricBlastFurnace
extends GT_MetaTileEntity_MultiBlockBase {
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer.java index b34b2dc85b..82384bd054 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_FusionComputer.java @@ -9,7 +9,10 @@ import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity; -import gregtech.api.metatileentity.implementations.*; +import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Energy; +import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Input; +import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Output; +import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_ItemStack; import gregtech.api.objects.GT_RenderedTexture; import gregtech.api.util.GT_Recipe; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java index d91b7efcb5..631b311720 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ImplosionCompressor.java @@ -16,7 +16,6 @@ import net.minecraft.item.ItemStack; import net.minecraftforge.common.util.ForgeDirection;
import java.util.ArrayList;
-import java.util.Arrays;
public class GT_MetaTileEntity_ImplosionCompressor
extends GT_MetaTileEntity_MultiBlockBase {
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeChemicalReactor.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeChemicalReactor.java index f75d723786..18cd5bd74a 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeChemicalReactor.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeChemicalReactor.java @@ -1,8 +1,5 @@ package gregtech.common.tileentities.machines.multi; -import java.util.ArrayList; -import java.util.Arrays; - import gregtech.api.GregTech_API; import gregtech.api.enums.Textures; import gregtech.api.interfaces.ITexture; @@ -10,7 +7,6 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.util.GT_Log; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; import net.minecraft.block.Block; @@ -18,6 +14,8 @@ import net.minecraft.item.ItemStack; import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.FluidStack; +import java.util.ArrayList; + public class GT_MetaTileEntity_LargeChemicalReactor extends GT_MetaTileEntity_MultiBlockBase { private static final int CASING_INDEX = 112; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java index 48ac31ade6..548cb0c677 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_LargeTurbine_Plasma.java @@ -11,9 +11,8 @@ import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; import net.minecraft.block.Block; import net.minecraft.item.ItemStack; -import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.fluids.FluidRegistry; - +import net.minecraftforge.fluids.FluidStack; import java.util.ArrayList; import java.util.Collection; diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java index 71fcfceaa2..edd4696335 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_MultiFurnace.java @@ -1,7 +1,5 @@ package gregtech.common.tileentities.machines.multi;
-import java.util.ArrayList;
-
import gregtech.api.GregTech_API;
import gregtech.api.enums.Textures;
import gregtech.api.gui.GT_GUIContainer_MultiMachine;
@@ -17,6 +15,8 @@ import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.item.ItemStack;
import net.minecraftforge.common.util.ForgeDirection;
+import java.util.ArrayList;
+
public class GT_MetaTileEntity_MultiFurnace
extends GT_MetaTileEntity_MultiBlockBase {
private int mLevel = 0;
diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilCracker.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilCracker.java index 0a4168c7ce..dc04602d0f 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilCracker.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilCracker.java @@ -1,7 +1,5 @@ package gregtech.common.tileentities.machines.multi; -import java.util.ArrayList; - import gregtech.api.GregTech_API; import gregtech.api.enums.Materials; import gregtech.api.enums.Textures; @@ -9,6 +7,7 @@ import gregtech.api.gui.GT_GUIContainer_MultiMachine; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_Input; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase; import gregtech.api.objects.GT_RenderedTexture; import gregtech.api.util.GT_ModHandler; @@ -19,11 +18,12 @@ import net.minecraft.item.ItemStack; import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.FluidStack; -public class GT_MetaTileEntity_OilCracker extends GT_MetaTileEntity_MultiBlockBase { - private final FluidStack fluidToDecreaseEu = GT_ModHandler.getSteam(128); - private final FluidStack fluidToIncreaseOutput = Materials.Hydrogen.getGas(64); - +import java.util.ArrayList; +public class GT_MetaTileEntity_OilCracker extends GT_MetaTileEntity_MultiBlockBase { + private ForgeDirection orientation; + private int controllerX, controllerZ; + public GT_MetaTileEntity_OilCracker(int aID, String aName, String aNameRegional) { super(aID, aName, aNameRegional); } @@ -35,16 +35,15 @@ public class GT_MetaTileEntity_OilCracker extends GT_MetaTileEntity_MultiBlockBa public String[] getDescription() { return new String[]{ "Controller Block for the Oil Cracking Unit", - "Cracks heavy oil into lighter parts", + "Thermally cracks heavy hydrocarbons into lighter fractions", "Size(WxHxD): 5x3x3 (Hollow), Controller (Front center)", "Ring of 8 Cupronickel Coils (Each side of Controller)", - "1x Input Hatch (Any left side casing)", - "1x Input Hatch (Any middle ring casing)", - "1x Output Hatch (Any right side casing)", + "1x Hydrocarbon Input Bus/Hatch (Any left side casing)", + "1x Steam/Hydrogen Input Hatch (Any middle ring casing)", + "1x Cracked Hydrocarbon Output Hatch (Any right side casing)", "1x Maintenance Hatch (Any middle ring casing)", "1x Energy Hatch (Any middle ring casing)", - "Clean Stainless Steel Machine Casings for the rest (18 at least!)", - "Optional Steam(50% less EU/t) or Hydrogen(30% more output)"}; + "Clean Stainless Steel Machine Casings for the rest (18 at least!)"}; } public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) { @@ -62,47 +61,38 @@ public class GT_MetaTileEntity_OilCracker extends GT_MetaTileEntity_MultiBlockBa @Override public boolean checkRecipe(ItemStack aStack) { ArrayList<FluidStack> tInputList = getStoredFluids(); - for (FluidStack tInput : tInputList) { - long tVoltage = getMaxInputVoltage(); - byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage)); - - GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sCrakingRecipes.findRecipe(getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[tTier], new FluidStack[]{tInput}, new ItemStack[]{}); - if (tRecipe != null) { - if (tRecipe.isRecipeInputEqual(true, new FluidStack[]{tInput}, new ItemStack[]{})) { - boolean needDecreaseEu = depleteInput(fluidToDecreaseEu); - boolean needIncreaseOutput = !needDecreaseEu && depleteInput(fluidToIncreaseOutput); - - this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); - this.mEfficiencyIncrease = 10000; - if (tRecipe.mEUt <= 16) { - this.mEUt = (tRecipe.mEUt * (1 << tTier - 1) * (1 << tTier - 1)); - this.mMaxProgresstime = (tRecipe.mDuration / (1 << tTier - 1)); - } else { - this.mEUt = tRecipe.mEUt; - this.mMaxProgresstime = tRecipe.mDuration; - while (this.mEUt <= gregtech.api.enums.GT_Values.V[(tTier - 1)]) { - this.mEUt *= 4; - this.mMaxProgresstime /= 2; - } - } - if (needDecreaseEu) this.mEUt = this.mEUt / 2; - if (this.mEUt > 0) { - this.mEUt = (-this.mEUt); - } - this.mMaxProgresstime = Math.max(1, this.mMaxProgresstime); - this.mOutputFluids = new FluidStack[]{tRecipe.getFluidOutput(0)}; - if (needIncreaseOutput) this.mOutputFluids[0].amount = this.mOutputFluids[0].amount * 130 / 100; - return true; - } + FluidStack[] tFluidInputs = tInputList.toArray(new FluidStack[tInputList.size()]); + long tVoltage = getMaxInputVoltage(); + byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage)); + + GT_Recipe tRecipe = GT_Recipe.GT_Recipe_Map.sCrakingRecipes.findRecipe( + getBaseMetaTileEntity(), false, gregtech.api.enums.GT_Values.V[tTier], tFluidInputs ,new ItemStack[]{mInventory[1]}); + if (tRecipe != null && tRecipe.isRecipeInputEqual(true, tFluidInputs, new ItemStack[]{mInventory[1]})) { + this.mEfficiency = (10000 - (getIdealStatus() - getRepairStatus()) * 1000); + this.mEfficiencyIncrease = 10000; + this.mEUt = tRecipe.mEUt; + this.mMaxProgresstime = tRecipe.mDuration; + while (this.mEUt <= gregtech.api.enums.GT_Values.V[(tTier - 1)]) { + this.mEUt *= 4; + this.mMaxProgresstime /= 2; + } + if (this.mEUt > 0) { + this.mEUt = (-this.mEUt); } + this.mMaxProgresstime = Math.max(1, this.mMaxProgresstime); + this.mOutputFluids = new FluidStack[]{tRecipe.getFluidOutput(0)}; + return true; } return false; } @Override public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) { - int xDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetX; - int zDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetZ; + this.orientation = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()); + this.controllerX = aBaseMetaTileEntity.getXCoord(); + this.controllerZ = aBaseMetaTileEntity.getZCoord(); + int xDir = this.orientation.offsetX; + int zDir = this.orientation.offsetZ; int amount = 0; replaceDeprecatedCoils(aBaseMetaTileEntity); if (xDir != 0) { @@ -252,4 +242,33 @@ public class GT_MetaTileEntity_OilCracker extends GT_MetaTileEntity_MultiBlockBa } } } + + @Override + public ArrayList<FluidStack> getStoredFluids() { + ArrayList<FluidStack> rList = new ArrayList<FluidStack>(); + for (GT_MetaTileEntity_Hatch_Input tHatch : mInputHatches) { + tHatch.mRecipeMap = getRecipeMap(); + if (isValidMetaTileEntity(tHatch) && tHatch.getFillableStack() != null) { + FluidStack tStack = tHatch.getFillableStack(); + if (tStack.isFluidEqual(GT_ModHandler.getSteam(1000)) || tStack.isFluidEqual(Materials.Hydrogen.getGas(1000))) { + if (isHatchInMiddleRing(tHatch)) { + rList.add(tStack); + } + } else { + if (!isHatchInMiddleRing(tHatch)) { + rList.add(tStack); + } + } + } + } + return rList; + } + + private boolean isHatchInMiddleRing(GT_MetaTileEntity_Hatch_Input inputHatch){ + if (orientation == ForgeDirection.NORTH || orientation == ForgeDirection.SOUTH) { + return inputHatch.getBaseMetaTileEntity().getXCoord() == this.controllerX; + } else { + return inputHatch.getBaseMetaTileEntity().getZCoord() == this.controllerZ; + } + } } diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilDrill.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilDrill.java index 7d6fe5935c..56d1d8875a 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilDrill.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OilDrill.java @@ -81,18 +81,12 @@ public class GT_MetaTileEntity_OilDrill extends GT_MetaTileEntity_MultiBlockBase return false; } if (getYOfPumpHead() > 0 && getBaseMetaTileEntity().getBlockOffset(ForgeDirection.getOrientation(getBaseMetaTileEntity().getBackFacing()).offsetX, getYOfPumpHead() - 1 - getBaseMetaTileEntity().getYCoord(), ForgeDirection.getOrientation(getBaseMetaTileEntity().getBackFacing()).offsetZ) != Blocks.bedrock) { - if (completedCycle) { moveOneDown(); } tFluid = null; if (mEnergyHatches.size() > 0 && mEnergyHatches.get(0).getEUVar() > (512 + getMaxInputVoltage() * 4)) completedCycle = true; - } else if (tFluid.amount < 5000) { - stopMachine(); - return false; - } else { - tFluid.amount = tFluid.amount / 5000; } long tVoltage = getMaxInputVoltage(); byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage)); diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OreDrillingPlantBase.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OreDrillingPlantBase.java index f25d2d304c..3d8dbb02bd 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OreDrillingPlantBase.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_OreDrillingPlantBase.java @@ -82,7 +82,7 @@ public abstract class GT_MetaTileEntity_OreDrillingPlantBase extends GT_MetaTile @Override public void saveNBTData(NBTTagCompound aNBT) { super.saveNBTData(aNBT); - aNBT.setBoolean("isPickingPipe", isPickingPipes); + aNBT.setBoolean("isPickingPipes", isPickingPipes); } @Override diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java new file mode 100644 index 0000000000..3b8d49989f --- /dev/null +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PrimitiveBlastFurnace.java @@ -0,0 +1,324 @@ +package gregtech.common.tileentities.machines.multi;
+
+import gregtech.GT_Mod;
+import gregtech.api.GregTech_API;
+import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
+import gregtech.api.metatileentity.MetaTileEntity;
+import gregtech.api.objects.GT_ItemStack;
+import gregtech.api.objects.XSTR;
+import gregtech.api.util.GT_Recipe;
+import gregtech.api.util.GT_Utility;
+import gregtech.common.GT_Pollution;
+import gregtech.common.gui.GT_Container_PrimitiveBlastFurnace;
+import gregtech.common.gui.GT_GUIContainer_PrimitiveBlastFurnace;
+import net.minecraft.block.Block;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.entity.player.InventoryPlayer;
+import net.minecraft.init.Blocks;
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+import net.minecraft.world.ChunkPosition;
+import net.minecraftforge.common.util.ForgeDirection;
+
+public abstract class GT_MetaTileEntity_PrimitiveBlastFurnace extends MetaTileEntity {
+ public static final int INPUT_SLOTS = 3, OUTPUT_SLOTS = 3;
+
+ public int mMaxProgresstime = 0;
+ public int mUpdate = 5;
+ public int mProgresstime = 0;
+ public boolean mMachine = false;
+
+ public ItemStack[] mOutputItems = new ItemStack[OUTPUT_SLOTS];
+
+ @Deprecated
+ public ItemStack mOutputItem1;
+ @Deprecated
+ public ItemStack mOutputItem2;
+
+ public GT_MetaTileEntity_PrimitiveBlastFurnace(int aID, String aName, String aNameRegional) {
+ super(aID, aName, aNameRegional, INPUT_SLOTS + OUTPUT_SLOTS);
+ }
+
+ public GT_MetaTileEntity_PrimitiveBlastFurnace(String aName) {
+ super(aName, INPUT_SLOTS + OUTPUT_SLOTS);
+ }
+
+ public boolean isSteampowered() {
+ return false;
+ }
+
+ public boolean isElectric() {
+ return false;
+ }
+
+ public boolean isPneumatic() {
+ return false;
+ }
+
+ public boolean isEnetInput() {
+ return false;
+ }
+
+ public boolean isEnetOutput() {
+ return false;
+ }
+
+ public boolean isInputFacing(byte aSide) {
+ return false;
+ }
+
+ public boolean isOutputFacing(byte aSide) {
+ return false;
+ }
+
+ public boolean isTeleporterCompatible() {
+ return false;
+ }
+
+ public boolean isFacingValid(byte aFacing) {
+ return aFacing > 1;
+ }
+
+ public boolean isAccessAllowed(EntityPlayer aPlayer) {
+ return true;
+ }
+
+ public int getProgresstime() {
+ return this.mProgresstime;
+ }
+
+ public int maxProgresstime() {
+ return this.mMaxProgresstime;
+ }
+
+ public int increaseProgress(int aProgress) {
+ this.mProgresstime += aProgress;
+ return this.mMaxProgresstime - this.mProgresstime;
+ }
+
+ public boolean allowCoverOnSide(byte aSide, GT_ItemStack aCoverID) {
+ return (GregTech_API.getCoverBehavior(aCoverID.toStack()).isSimpleCover()) && (super.allowCoverOnSide(aSide, aCoverID));
+ }
+
+ public abstract MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity);
+
+ public void saveNBTData(NBTTagCompound aNBT) {
+ aNBT.setInteger("mProgresstime", this.mProgresstime);
+ aNBT.setInteger("mMaxProgresstime", this.mMaxProgresstime);
+ if (this.mOutputItems != null) {
+ for (int i = 0; i < mOutputItems.length; i++) {
+ if (this.mOutputItems[i] != null) {
+ NBTTagCompound tNBT = new NBTTagCompound();
+ this.mOutputItems[i].writeToNBT(tNBT);
+ aNBT.setTag("mOutputItem" + i, tNBT);
+ }
+ }
+ }
+ }
+
+ public void loadNBTData(NBTTagCompound aNBT) {
+ this.mUpdate = 5;
+ this.mProgresstime = aNBT.getInteger("mProgresstime");
+ this.mMaxProgresstime = aNBT.getInteger("mMaxProgresstime");
+ this.mOutputItems = new ItemStack[OUTPUT_SLOTS];
+ for (int i = 0; i < OUTPUT_SLOTS; i++) {
+ this.mOutputItems[i] = GT_Utility.loadItem(aNBT, "mOutputItem" + i);
+ }
+ }
+
+ public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer) {
+ if (aBaseMetaTileEntity.isClientSide()) {
+ return true;
+ }
+ aBaseMetaTileEntity.openGUI(aPlayer);
+ return true;
+ }
+
+ public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
+ return new GT_Container_PrimitiveBlastFurnace(aPlayerInventory, aBaseMetaTileEntity);
+ }
+
+ public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
+ return new GT_GUIContainer_PrimitiveBlastFurnace(aPlayerInventory, aBaseMetaTileEntity, getName());
+ }
+
+ private boolean checkMachine() {
+ int xDir = ForgeDirection.getOrientation(getBaseMetaTileEntity().getBackFacing()).offsetX;
+ int zDir = ForgeDirection.getOrientation(getBaseMetaTileEntity().getBackFacing()).offsetZ;
+ for (int i = -1; i < 2; i++) {
+ for (int j = -1; j < 3; j++) {
+ for (int k = -1; k < 2; k++) {
+ if ((xDir + i != 0) || (j != 0) || (zDir + k != 0)) {
+ if ((i != 0) || (j == -1) || (k != 0)) {
+ if (!isCorrectCasingBlock(getBaseMetaTileEntity().getBlockOffset(xDir + i, j, zDir + k))
+ || !isCorrectCasingMetaID(getBaseMetaTileEntity().getMetaIDOffset(xDir + i, j, zDir + k))) {
+ return false;
+ }
+ } else if ((!GT_Utility.arrayContains(getBaseMetaTileEntity().getBlockOffset(xDir + i, j, zDir + k),
+ new Object[] { Blocks.lava, Blocks.flowing_lava, null }))
+ && (!getBaseMetaTileEntity().getAirOffset(xDir + i, j, zDir + k))) {
+ return false;
+ }
+ }
+ }
+ }
+ }
+ return true;
+ }
+
+ protected abstract boolean isCorrectCasingBlock(Block block);
+
+ protected abstract boolean isCorrectCasingMetaID(int metaID);
+
+ public void onMachineBlockUpdate() {
+ this.mUpdate = 5;
+ }
+
+ public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTimer) {
+ if ((aBaseMetaTileEntity.isClientSide()) && (aBaseMetaTileEntity.isActive())) {
+ aBaseMetaTileEntity.getWorld().spawnParticle("largesmoke",
+ aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1) + (new XSTR()).nextFloat(),
+ aBaseMetaTileEntity.getOffsetY(aBaseMetaTileEntity.getBackFacing(), 1),
+ aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1) + (new XSTR()).nextFloat(), 0.0D, 0.3D, 0.0D);
+ }
+ if (aBaseMetaTileEntity.isServerSide()) {
+ if (this.mUpdate-- == 0) {
+ this.mMachine = checkMachine();
+ }
+ if (this.mMachine) {
+ if (this.mMaxProgresstime > 0) {
+ if (++this.mProgresstime >= this.mMaxProgresstime) {
+ addOutputProducts();
+ this.mOutputItems = null;
+ this.mProgresstime = 0;
+ this.mMaxProgresstime = 0;
+ GT_Mod.achievements.issueAchievement(
+ aBaseMetaTileEntity.getWorld().getPlayerEntityByName(aBaseMetaTileEntity.getOwnerName()), "steel");
+ }
+ } else if (aBaseMetaTileEntity.isAllowedToWork()) {
+ checkRecipe();
+ }
+ }
+ if (this.mMaxProgresstime > 0 && (aTimer % 20L == 0L)) {
+ GT_Pollution.addPollution(this.getBaseMetaTileEntity().getWorld(),
+ new ChunkPosition(this.getBaseMetaTileEntity().getXCoord(), this.getBaseMetaTileEntity().getYCoord(),
+ this.getBaseMetaTileEntity().getZCoord()),
+ 50);
+ }
+
+ aBaseMetaTileEntity.setActive((this.mMaxProgresstime > 0) && (this.mMachine));
+ if (aBaseMetaTileEntity.isActive()) {
+ if (aBaseMetaTileEntity.getAir(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1),
+ aBaseMetaTileEntity.getYCoord(), aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1))) {
+ aBaseMetaTileEntity.getWorld().setBlock(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1),
+ aBaseMetaTileEntity.getYCoord(), aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1),
+ Blocks.lava, 1, 2);
+ this.mUpdate = 1;
+ }
+ if (aBaseMetaTileEntity.getAir(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1),
+ aBaseMetaTileEntity.getYCoord() + 1, aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1))) {
+ aBaseMetaTileEntity.getWorld().setBlock(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1),
+ aBaseMetaTileEntity.getYCoord() + 1, aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1),
+ Blocks.lava, 1, 2);
+ this.mUpdate = 1;
+ }
+ } else {
+ if (aBaseMetaTileEntity.getBlock(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1),
+ aBaseMetaTileEntity.getYCoord(),
+ aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1)) == Blocks.lava) {
+ aBaseMetaTileEntity.getWorld().setBlock(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1),
+ aBaseMetaTileEntity.getYCoord(), aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1),
+ Blocks.air, 0, 2);
+ this.mUpdate = 1;
+ }
+ if (aBaseMetaTileEntity.getBlock(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1),
+ aBaseMetaTileEntity.getYCoord() + 1,
+ aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1)) == Blocks.lava) {
+ aBaseMetaTileEntity.getWorld().setBlock(aBaseMetaTileEntity.getOffsetX(aBaseMetaTileEntity.getBackFacing(), 1),
+ aBaseMetaTileEntity.getYCoord() + 1, aBaseMetaTileEntity.getOffsetZ(aBaseMetaTileEntity.getBackFacing(), 1),
+ Blocks.air, 0, 2);
+ this.mUpdate = 1;
+ }
+ }
+ }
+ }
+
+ private void addOutputProducts() {
+ if (this.mOutputItems == null) {
+ return;
+ }
+ int limit = Math.min(mOutputItems.length, OUTPUT_SLOTS);
+ for (int i = 0; i < limit; i++) {
+ int absi = INPUT_SLOTS + i;
+ if (this.mInventory[absi] == null) {
+ this.mInventory[absi] = GT_Utility.copy(this.mOutputItems[i]);
+ } else if (GT_Utility.areStacksEqual(this.mInventory[absi], this.mOutputItems[i])) {
+ this.mInventory[absi].stackSize = Math.min(this.mInventory[absi].getMaxStackSize(),
+ this.mInventory[absi].stackSize + this.mOutputItems[i].stackSize);
+ }
+ }
+ }
+
+ private boolean spaceForOutput(ItemStack outputStack, int relativeOutputSlot) {
+ int absoluteSlot = relativeOutputSlot + INPUT_SLOTS;
+ if (this.mInventory[absoluteSlot] == null || outputStack == null) {
+ return true;
+ }
+ if (((this.mInventory[absoluteSlot].stackSize + outputStack.stackSize <= this.mInventory[absoluteSlot].getMaxStackSize())
+ && (GT_Utility.areStacksEqual(this.mInventory[absoluteSlot], outputStack)))) {
+ return true;
+ }
+ return false;
+ }
+
+ private boolean checkRecipe() {
+ if (!this.mMachine) {
+ return false;
+ }
+ ItemStack[] inputs = new ItemStack[INPUT_SLOTS];
+ System.arraycopy(mInventory, 0, inputs, 0, INPUT_SLOTS);
+ GT_Recipe recipe = GT_Recipe.GT_Recipe_Map.sPrimitiveBlastRecipes.findRecipe(getBaseMetaTileEntity(), false, 0, null, inputs);
+ if (recipe == null) {
+ this.mOutputItems = null;
+ return false;
+ }
+ for (int i = 0; i < OUTPUT_SLOTS; i++) {
+ if (!spaceForOutput(recipe.getOutput(i), i)) {
+ this.mOutputItems = null;
+ return false;
+ }
+ }
+
+ if (!recipe.isRecipeInputEqual(true, null, inputs)) {
+ this.mOutputItems = null;
+ return false;
+ }
+ for (int i = 0; i < INPUT_SLOTS; i++) {
+ if (mInventory[i] != null && mInventory[i].stackSize == 0) {
+ mInventory[i] = null;
+ }
+ }
+
+ this.mMaxProgresstime = recipe.mDuration;
+ this.mOutputItems = recipe.mOutputs;
+ return true;
+ }
+
+ public boolean isGivingInformation() {
+ return false;
+ }
+
+ public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ return aIndex > INPUT_SLOTS;
+ }
+
+ public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
+ return !GT_Utility.areStacksEqual(aStack, this.mInventory[0]);
+ }
+
+ public byte getTileEntityBaseType() {
+ return 0;
+ }
+
+ public abstract String getName();
+}
\ No newline at end of file diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java index 5811743432..8d2de6d54a 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_ProcessingArray.java @@ -16,13 +16,12 @@ import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.FluidStack; import org.apache.commons.lang3.ArrayUtils; -import static gregtech.api.enums.GT_Values.V; - import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; +import static gregtech.api.enums.GT_Values.V; import static gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine.isValidForLowGravity; public class GT_MetaTileEntity_ProcessingArray extends GT_MetaTileEntity_MultiBlockBase { diff --git a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java index 02b7ed427a..fec06b7d77 100644 --- a/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java +++ b/src/main/java/gregtech/common/tileentities/machines/multi/GT_MetaTileEntity_PyrolyseOven.java @@ -1,7 +1,5 @@ package gregtech.common.tileentities.machines.multi; -import java.util.ArrayList; - import gregtech.api.GregTech_API; import gregtech.api.enums.Textures; import gregtech.api.gui.GT_GUIContainer_MultiMachine; @@ -17,6 +15,8 @@ import net.minecraft.item.ItemStack; import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.FluidStack; +import java.util.ArrayList; + public class GT_MetaTileEntity_PyrolyseOven extends GT_MetaTileEntity_MultiBlockBase { public GT_MetaTileEntity_PyrolyseOven(int aID, String aName, String aNameRegional) { diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Bronze.java index 3863c59d0f..67bde86f16 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Bronze.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Bronze.java @@ -8,11 +8,9 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Bronze;
import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.item.ItemStack;
public class GT_MetaTileEntity_Compressor_Bronze
extends GT_MetaTileEntity_BasicMachine_Bronze {
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Steel.java index 6bf91a7447..10d1f71d0d 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Steel.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Compressor_Steel.java @@ -8,11 +8,9 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Steel;
import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.item.ItemStack;
public class GT_MetaTileEntity_Compressor_Steel
extends GT_MetaTileEntity_BasicMachine_Steel {
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Bronze.java index a5e6ae74ac..f1d4ae1b86 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Bronze.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Bronze.java @@ -8,11 +8,9 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Bronze;
import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.item.ItemStack;
public class GT_MetaTileEntity_Extractor_Bronze
extends GT_MetaTileEntity_BasicMachine_Bronze {
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Steel.java index 9a18312871..9aa892a4fc 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Steel.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Extractor_Steel.java @@ -8,11 +8,9 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Steel;
import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.item.ItemStack;
public class GT_MetaTileEntity_Extractor_Steel
extends GT_MetaTileEntity_BasicMachine_Steel {
diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java index 573af14373..07e2c4722c 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Bronze.java @@ -8,7 +8,6 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Bronze; import gregtech.api.objects.GT_RenderedTexture; -import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Recipe.GT_Recipe_Map; import gregtech.api.util.GT_Utility; diff --git a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java index d83711ac95..65e05c898d 100644 --- a/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java +++ b/src/main/java/gregtech/common/tileentities/machines/steam/GT_MetaTileEntity_Macerator_Steel.java @@ -8,7 +8,6 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Steel;
import gregtech.api.objects.GT_RenderedTexture;
-import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Recipe.GT_Recipe_Map;
import gregtech.api.util.GT_Utility;
diff --git a/src/main/java/gregtech/common/tools/GT_Tool_Chainsaw_LV.java b/src/main/java/gregtech/common/tools/GT_Tool_Chainsaw_LV.java index 93722c52f7..043fe93347 100644 --- a/src/main/java/gregtech/common/tools/GT_Tool_Chainsaw_LV.java +++ b/src/main/java/gregtech/common/tools/GT_Tool_Chainsaw_LV.java @@ -1,9 +1,5 @@ package gregtech.common.tools;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Random;
-
import gregtech.GT_Mod;
import gregtech.api.GregTech_API;
import gregtech.api.enums.OrePrefixes;
@@ -13,7 +9,6 @@ import gregtech.api.items.GT_MetaGenerated_Tool; import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.entity.EntityLivingBase;
-import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
@@ -24,6 +19,9 @@ import net.minecraft.world.World; import net.minecraftforge.common.IShearable;
import net.minecraftforge.event.world.BlockEvent;
+import java.util.ArrayList;
+import java.util.List;
+
public class GT_Tool_Chainsaw_LV
extends GT_Tool_Saw {
public int getToolDamagePerBlockBreak() {
diff --git a/src/main/java/gregtech/loaders/misc/GT_Achievements.java b/src/main/java/gregtech/loaders/misc/GT_Achievements.java index 7da9910295..7d560f0a96 100644 --- a/src/main/java/gregtech/loaders/misc/GT_Achievements.java +++ b/src/main/java/gregtech/loaders/misc/GT_Achievements.java @@ -15,6 +15,7 @@ import gregtech.api.objects.ItemData; import gregtech.api.util.GT_Log; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; +import gregtech.api.util.GT_Recipe; import gregtech.common.items.GT_MetaGenerated_Tool_01; import ic2.core.Ic2Items; import net.minecraft.entity.player.EntityPlayer; @@ -39,6 +40,7 @@ public class GT_Achievements { public static List<Materials> oreList = new ArrayList<Materials>(); public static List<Integer[]> oreStats = new ArrayList<Integer[]>(); public static int oreReg = -1; + public static int assReg=-1; public ConcurrentHashMap<String, Achievement> achievementList; public ConcurrentHashMap<String, Boolean> issuedAchievements; public int adjX = 5; @@ -47,7 +49,7 @@ public class GT_Achievements { public GT_Achievements() { this.achievementList = new ConcurrentHashMap(); this.issuedAchievements = new ConcurrentHashMap(); - int oreList_sS=oreList.size(); + int oreList_sS = oreList.size(); for (int i = 0; i < oreList_sS; i++) { if (oreList.get(i) != null) { if (GT_Values.D1 && this.achievementList.get(oreList.get(i).mName) == null) { @@ -74,6 +76,10 @@ public class GT_Achievements { registerOreAchievement(oreList.get(i)); } } + + for(GT_Recipe recipe: GT_Recipe.GT_Recipe_Map.sAssemblylineVisualRecipes.mRecipeList) + registerAssAchievement(recipe); + registerAchievement("flintpick", 0, 0, GT_MetaGenerated_Tool_01.INSTANCE.getToolWithStats(GT_MetaGenerated_Tool_01.PICKAXE, 1, Materials.Flint, Materials.Wood, null), "", false); registerAchievement("crops", -4, 0, GT_ModHandler.getIC2Item("crop", 1L), "flintpick", false); registerAchievement("havestlead", -4, 2, ItemList.Crop_Drop_Plumbilia.get(1, new Object[]{}), "crops", false); @@ -99,10 +105,10 @@ public class GT_Achievements { registerAchievement("cleandust", 0, 10, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L), "crushed", false); registerAchievement("washing", -2, 6, GT_OreDictUnificator.get(OrePrefixes.crushedPurified, Materials.Iron, 1L), "crushed", false); registerAchievement("spinit", -4, 6, GT_OreDictUnificator.get(OrePrefixes.crushedCentrifuged, Materials.Redstone, 1L), "crushed", false); - if(!GregTech_API.mIC2Classic){ - registerAchievement("newfuel", -4, 8, ItemList.ThoriumCell_4.get(1, new Object[]{}), "spinit", false); - registerAchievement("newmetal", -4, 10, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lutetium, 1L), "newfuel", false); - registerAchievement("reflect", -2, 9, ItemList.Neutron_Reflector.get(1, new Object[]{}), "newfuel", false); + if (!GregTech_API.mIC2Classic) { + registerAchievement("newfuel", -4, 8, ItemList.ThoriumCell_4.get(1, new Object[]{}), "spinit", false); + registerAchievement("newmetal", -4, 10, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lutetium, 1L), "newfuel", false); + registerAchievement("reflect", -2, 9, ItemList.Neutron_Reflector.get(1, new Object[]{}), "newfuel", false); } registerAchievement("bronze", 2, 0, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Bronze, 1L), "flintpick", false); registerAchievement("simplyeco", 2, 2, ItemList.Machine_Bronze_Boiler_Solar.get(1, new Object[]{}), "bronze", false); @@ -111,7 +117,7 @@ public class GT_Achievements { registerAchievement("macerator", 0, -2, ItemList.Machine_Bronze_Macerator.get(1, new Object[]{}), "firststeam", false); registerAchievement("extract", 0, -4, ItemList.Machine_Bronze_Extractor.get(1, new Object[]{}), "alloysmelter", false); - registerAchievement("smallparts", 0, -5, ItemList.Circuit_Primitive.get(1, new Object[]{}), "alloysmelter", false); + registerAchievement("smallparts", 0, -5, ItemList.Circuit_Primitive.get(1, new Object[]{}), "alloysmelter", false); registerAchievement("gtbasiccircuit", 0, -8, Ic2Items.electronicCircuit.copy(), "smallparts", false); registerAchievement("bettercircuits", 0, -9, ItemList.Circuit_Good.get(1, new Object[]{}), "gtbasiccircuit", false); registerAchievement("stepforward", -2, -9, Ic2Items.advancedCircuit.copy(), "bettercircuits", false); @@ -124,7 +130,7 @@ public class GT_Achievements { registerAchievement("gtcrystalprocessor", -11, -12, ItemList.Circuit_Crystalprocessor.get(1, new Object[]{}), "gtquantumprocessor", false); registerAchievement("gtwetware", -9, -12, ItemList.Circuit_Neuroprocessor.get(1, new Object[]{}), "gtcrystalprocessor", false); registerAchievement("gtwetmain", -7, -12, ItemList.Circuit_Wetwaremainframe.get(1, new Object[]{}), "gtwetware", false); - + registerAchievement("orbs", -10, -14, ItemList.Energy_LapotronicOrb.get(1, new Object[]{}), "energyflow", false); registerAchievement("thatspower", -8, -14, ItemList.Energy_LapotronicOrb2.get(1, new Object[]{}), "orbs", false); registerAchievement("datasaving", -2, -12, ItemList.Tool_DataOrb.get(1, new Object[]{}), "stepforward", false); @@ -269,6 +275,15 @@ public class GT_Achievements { return null; } + public Achievement registerAssAchievement(GT_Recipe recipe) { + if (this.achievementList.get(recipe.getOutput(0).getUnlocalizedName()) == null) { + assReg++; + return registerAchievement(recipe.getOutput(0).getUnlocalizedName(), -(11 + assReg % 5), ((assReg) / 5) - 8, recipe.getOutput(0) + , AchievementList.openInventory, false); + } + return null; + } + public void issueAchievement(EntityPlayer entityplayer, String textId) { if (entityplayer == null || !GT_Mod.gregtechproxy.mAchievements) { return; @@ -352,7 +367,9 @@ public class GT_Achievements { if (player == null || stack == null) { return; } - if(stack.getItem()==Items.paper){player.inventory.addItemStackToInventory(new ItemStack(Blocks.stone_slab,2));} + if (stack.getItem() == Items.paper) { + player.inventory.addItemStackToInventory(new ItemStack(Blocks.stone_slab, 2)); + } ItemData data = GT_OreDictUnificator.getItemData(stack); if (data != null) { if (data.mPrefix == OrePrefixes.dust && data.mMaterial.mMaterial == Materials.Bronze) { @@ -405,7 +422,7 @@ public class GT_Achievements { } else if (stack.getUnlocalizedName().equals("gt.blockmachines.bronzemachine.alloysmelter")) { issueAchievement(player, "alloysmelter"); issueAchievement(player, "buildElecFurnace"); - if(stack.getUnlocalizedName().equals("gt.blockmachines.bronzemachine.alloysmelter.tier.3")){ + if (stack.getUnlocalizedName().equals("gt.blockmachines.bronzemachine.alloysmelter.tier.3")) { issueAchievement(player, "buildIndFurnace"); } } else if (stack.getUnlocalizedName().equals("gt.blockmachines.bronzemachine.extractor")) { @@ -423,7 +440,7 @@ public class GT_Achievements { } else if (stack.getUnlocalizedName().startsWith("gt.blockmachines.automation.chestbuffer.tier.")) { issueAchievement(player, "buffer"); issueAchievement(player, "buildBatBox"); - if(stack.getUnlocalizedName().startsWith("gt.blockmachines.automation.chestbuffer.tier.3")){ + if (stack.getUnlocalizedName().startsWith("gt.blockmachines.automation.chestbuffer.tier.3")) { issueAchievement(player, "buildMFE"); } } else if (stack.getUnlocalizedName().startsWith("gt.blockmachines.basicgenerator.steamturbine.tier.")) { @@ -506,22 +523,22 @@ public class GT_Achievements { return; } ItemData data = GT_OreDictUnificator.getItemData(stack); - if (data != null && data.mPrefix!=null) { + if (data != null && data.mPrefix != null) { if (data.mPrefix == OrePrefixes.dust) { if (data.mMaterial.mMaterial == Materials.Lutetium) { issueAchievement(player, "newmetal"); } - if(data.mMaterial.mMaterial != Materials.Gunpowder){ + if (data.mMaterial.mMaterial != Materials.Gunpowder) { issueAchievement(player, "cleandust"); } } else if (data.mPrefix.name().startsWith("ore")) { - int data_getAllMaterialStacks_sS=data.getAllMaterialStacks().size(); + int data_getAllMaterialStacks_sS = data.getAllMaterialStacks().size(); for (int i = 0; i < data_getAllMaterialStacks_sS; i++) { issueAchievement(player, data.getAllMaterialStacks().get(i).mMaterial.mName); if (data.getAllMaterialStacks().get(i).mMaterial == Materials.AnyIron) { issueAchievement(player, "iron"); } - if(data.getAllMaterialStacks().get(i).mMaterial == Materials.Copper||data.getAllMaterialStacks().get(i).mMaterial == Materials.Tin){ + if (data.getAllMaterialStacks().get(i).mMaterial == Materials.Copper || data.getAllMaterialStacks().get(i).mMaterial == Materials.Tin) { issueAchievement(event.entityPlayer, "mineOre"); } @@ -588,17 +605,30 @@ public class GT_Achievements { issueAchievement(player, "gtlogiccircuit"); } else if (stack.getUnlocalizedName().equals("gt.metaitem.03.32085")) { issueAchievement(player, "gtquantumprocessor"); - } else if (stack.getUnlocalizedName().equals("gt.metaitem.03.32089")) { + } else if (stack.getUnlocalizedName().equals("gt.metaitem.03.32089")) { issueAchievement(player, "gtcrystalprocessor"); - } else if (stack.getUnlocalizedName().equals("gt.metaitem.03.32092")) { + } else if (stack.getUnlocalizedName().equals("gt.metaitem.03.32092")) { issueAchievement(player, "gtwetware"); - } else if (stack.getUnlocalizedName().equals("gt.metaitem.03.32095")) { + } else if (stack.getUnlocalizedName().equals("gt.metaitem.03.32095")) { issueAchievement(player, "gtwetmain"); - } + } } else if (stack.getUnlocalizedName().equals("gt.Thoriumcell")) { issueAchievement(player, "newfuel"); - }else if ((stack.getItem() == Ic2Items.quantumBodyarmor.getItem()) || (stack.getItem() == Ic2Items.quantumBoots.getItem()) || + } else if ((stack.getItem() == Ic2Items.quantumBodyarmor.getItem()) || (stack.getItem() == Ic2Items.quantumBoots.getItem()) || (stack.getItem() == Ic2Items.quantumHelmet.getItem()) || (stack.getItem() == Ic2Items.quantumLeggings.getItem())) { - issueAchievement(player, "buildQArmor");} + issueAchievement(player, "buildQArmor"); + } + if(player.capabilities.isCreativeMode && stack.getUnlocalizedName().equals("gt.metaitem.01.32761")){//Debug Scanner pickup shows all assline recipes. + for(GT_Recipe recipe: GT_Recipe.GT_Recipe_Map.sAssemblylineVisualRecipes.mRecipeList) { + issueAchievement(player, recipe.getOutput(0).getUnlocalizedName()); + recipe.mHidden=false; + } + } + for(GT_Recipe recipe: GT_Recipe.GT_Recipe_Map.sAssemblylineVisualRecipes.mRecipeList){ + if(recipe.getOutput(0).getUnlocalizedName().equals(stack.getUnlocalizedName())) { + issueAchievement(player, recipe.getOutput(0).getUnlocalizedName()); + recipe.mHidden=false; + } + } } }
\ No newline at end of file diff --git a/src/main/java/gregtech/loaders/misc/GT_BeeDefinition.java b/src/main/java/gregtech/loaders/misc/GT_BeeDefinition.java index d7b36cac5b..cd57a7e610 100644 --- a/src/main/java/gregtech/loaders/misc/GT_BeeDefinition.java +++ b/src/main/java/gregtech/loaders/misc/GT_BeeDefinition.java @@ -9,9 +9,7 @@ import forestry.apiculture.genetics.Bee; import forestry.apiculture.genetics.BeeDefinition; import forestry.apiculture.genetics.BeeVariation; import forestry.apiculture.genetics.IBeeDefinition; -//import forestry.apiculture.items.EnumHoneyComb; import forestry.core.genetics.alleles.AlleleHelper; -//import forestry.plugins.PluginApiculture; import gregtech.api.GregTech_API; import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; @@ -19,12 +17,14 @@ import gregtech.api.util.GT_ModHandler; import gregtech.common.items.CombType; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; - import org.apache.commons.lang3.text.WordUtils; import java.util.Arrays; import java.util.Locale; +//import forestry.apiculture.items.EnumHoneyComb; +//import forestry.plugins.PluginApiculture; + public enum GT_BeeDefinition implements IBeeDefinition { CLAY(GT_BranchDefinition.ORGANIC, "Clay", true, 0x19d0ec, 0xffdc16) { @Override diff --git a/src/main/java/gregtech/loaders/misc/GT_Bees.java b/src/main/java/gregtech/loaders/misc/GT_Bees.java index 8635d9c8c5..227e948fda 100644 --- a/src/main/java/gregtech/loaders/misc/GT_Bees.java +++ b/src/main/java/gregtech/loaders/misc/GT_Bees.java @@ -1,12 +1,6 @@ package gregtech.loaders.misc; import cpw.mods.fml.common.Loader; -import forestry.api.apiculture.BeeManager; -import forestry.api.apiculture.EnumBeeChromosome; -import forestry.api.genetics.IAllele; -import forestry.api.genetics.IClassification; -import forestry.core.genetics.alleles.AlleleHelper; -import forestry.core.genetics.alleles.EnumAllele; import gregtech.GT_Mod; import gregtech.common.items.ItemComb; diff --git a/src/main/java/gregtech/loaders/misc/GT_BranchDefinition.java b/src/main/java/gregtech/loaders/misc/GT_BranchDefinition.java index ffb6b59b54..c357d1b64c 100644 --- a/src/main/java/gregtech/loaders/misc/GT_BranchDefinition.java +++ b/src/main/java/gregtech/loaders/misc/GT_BranchDefinition.java @@ -2,11 +2,9 @@ package gregtech.loaders.misc; import forestry.api.apiculture.BeeManager; import forestry.api.apiculture.EnumBeeChromosome; -import forestry.api.genetics.AlleleManager; import forestry.api.genetics.IAllele; import forestry.api.genetics.IClassification; import forestry.apiculture.genetics.alleles.AlleleEffect; -import forestry.core.genetics.alleles.Allele; import forestry.core.genetics.alleles.AlleleHelper; import forestry.core.genetics.alleles.EnumAllele; diff --git a/src/main/java/gregtech/loaders/misc/GT_CoverLoader.java b/src/main/java/gregtech/loaders/misc/GT_CoverLoader.java index 55d2e1afbe..eb670b7120 100644 --- a/src/main/java/gregtech/loaders/misc/GT_CoverLoader.java +++ b/src/main/java/gregtech/loaders/misc/GT_CoverLoader.java @@ -1,7 +1,6 @@ package gregtech.loaders.misc;
import gregtech.api.GregTech_API;
-import gregtech.api.enums.GT_Values;
import gregtech.api.enums.Textures;
import gregtech.api.objects.GT_CopiedBlockTexture;
import gregtech.api.objects.GT_RenderedTexture;
diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCircuit.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCircuit.java index b006872c3f..1108ab61fd 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCircuit.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCircuit.java @@ -1,9 +1,7 @@ package gregtech.loaders.oreprocessing; -import gregtech.api.enums.GT_Values; import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; -import gregtech.api.enums.OreDictNames; import gregtech.api.enums.OrePrefixes; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrafting.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrafting.java index 6d5e5335ee..572ce9d2b1 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrafting.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrafting.java @@ -1,6 +1,9 @@ package gregtech.loaders.oreprocessing; -import gregtech.api.enums.*; +import gregtech.api.enums.GT_Values; +import gregtech.api.enums.ItemList; +import gregtech.api.enums.Materials; +import gregtech.api.enums.OrePrefixes; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrushedOre.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrushedOre.java index ba4264f7dd..31cd0d5568 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrushedOre.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingCrushedOre.java @@ -1,6 +1,5 @@ package gregtech.loaders.oreprocessing; -import cpw.mods.fml.common.Loader; import gregtech.GT_Mod; import gregtech.api.GregTech_API; import gregtech.api.enums.GT_Values; diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingDirty.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingDirty.java index 7bdad8500b..af71f70f77 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingDirty.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingDirty.java @@ -1,5 +1,6 @@ package gregtech.loaders.oreprocessing; +import gregtech.GT_Mod; import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; @@ -25,12 +26,12 @@ public class ProcessingDirty implements gregtech.api.interfaces.IOreRecipeRegist if (aMaterial.contains(SubTag.WASHING_MERCURY)) GT_Values.RA.addChemicalBathRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), Materials.Mercury.getFluid(1000L), GT_OreDictUnificator.get(aPrefix == OrePrefixes.crushed ? OrePrefixes.crushedPurified : OrePrefixes.dustPure, aMaterial, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), new int[]{10000, 7000, 4000}, 800, 8); if (aMaterial.contains(SubTag.WASHING_SODIUMPERSULFATE)) - GT_Values.RA.addChemicalBathRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), Materials.SodiumPersulfate.getFluid(1000L), GT_OreDictUnificator.get(aPrefix == OrePrefixes.crushed ? OrePrefixes.crushedPurified : OrePrefixes.dustPure, aMaterial, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), new int[]{10000, 7000, 4000}, 800, 8); + GT_Values.RA.addChemicalBathRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), Materials.SodiumPersulfate.getFluid(GT_Mod.gregtechproxy.mReenableSimplifiedChemicalRecipes ? 1000L : 100L), GT_OreDictUnificator.get(aPrefix == OrePrefixes.crushed ? OrePrefixes.crushedPurified : OrePrefixes.dustPure, aMaterial, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial.mMacerateInto, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), new int[]{10000, 7000, 4000}, 800, 8); for (Materials tMaterial : aMaterial.mOreByProducts) { if (tMaterial.contains(SubTag.WASHING_MERCURY)) GT_Values.RA.addChemicalBathRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), Materials.Mercury.getFluid(1000L), GT_OreDictUnificator.get(aPrefix == OrePrefixes.crushed ? OrePrefixes.crushedPurified : OrePrefixes.dustPure, aMaterial, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, tMaterial.mMacerateInto, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), new int[]{10000, 7000, 4000}, 800, 8); if (tMaterial.contains(SubTag.WASHING_SODIUMPERSULFATE)) - GT_Values.RA.addChemicalBathRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), Materials.SodiumPersulfate.getFluid(1000L), GT_OreDictUnificator.get(aPrefix == OrePrefixes.crushed ? OrePrefixes.crushedPurified : OrePrefixes.dustPure, aMaterial, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, tMaterial.mMacerateInto, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), new int[]{10000, 7000, 4000}, 800, 8); + GT_Values.RA.addChemicalBathRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), Materials.SodiumPersulfate.getFluid(GT_Mod.gregtechproxy.mReenableSimplifiedChemicalRecipes ? 1000L : 100L), GT_OreDictUnificator.get(aPrefix == OrePrefixes.crushed ? OrePrefixes.crushedPurified : OrePrefixes.dustPure, aMaterial, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, tMaterial.mMacerateInto, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Stone, 1L), new int[]{10000, 7000, 4000}, 800, 8); } } } diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingFoil.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingFoil.java index ce46671fdb..ae3e28b0b9 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingFoil.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingFoil.java @@ -4,7 +4,6 @@ import gregtech.api.GregTech_API; import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; -import gregtech.api.enums.SubTag; import gregtech.api.interfaces.IOreRecipeRegistrator; import gregtech.api.objects.GT_RenderedTexture; import gregtech.api.util.GT_OreDictUnificator; diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingFood.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingFood.java index a4292aa990..7d5f976bd6 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingFood.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingFood.java @@ -20,6 +20,7 @@ public class ProcessingFood implements gregtech.api.interfaces.IOreRecipeRegistr case "foodCheese": GT_Values.RA.addSlicerRecipe(aStack, ItemList.Shape_Slicer_Flat.get(0L, new Object[0]), ItemList.Food_Sliced_Cheese.get(4L, new Object[0]), 64, 4); GT_OreDictUnificator.addItemData(aStack, new gregtech.api.objects.ItemData(Materials.Cheese, 3628800L, new MaterialStack[0])); + break; case "foodDough": GT_ModHandler.removeFurnaceSmelting(aStack); GT_Values.RA.addBenderRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), ItemList.Food_Flat_Dough.get(1L, new Object[0]), 16, 4); diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingToolOther.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingToolOther.java index c766c287bd..7550e87456 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingToolOther.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingToolOther.java @@ -15,7 +15,7 @@ public class ProcessingToolOther implements gregtech.api.interfaces.IOreRecipeRe public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) { if ((aMaterial != Materials.Stone) && (aMaterial != Materials.Flint)) { if (aMaterial != Materials.Rubber) { - GT_ModHandler.addCraftingRecipe(GT_MetaGenerated_Tool_01.INSTANCE.getToolWithStats(GT_MetaGenerated_Tool_01.PLUNGER, 1, aMaterial, aMaterial, null), GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"xRR", " SR", "S f", 'S', OrePrefixes.stick.get(aMaterial), 'R', OrePrefixes.plate.get(Materials.Rubber)}); + GT_ModHandler.addCraftingRecipe(GT_MetaGenerated_Tool_01.INSTANCE.getToolWithStats(GT_MetaGenerated_Tool_01.PLUNGER, 1, aMaterial, aMaterial, null), GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"xRR", " SR", "S f", 'S', OrePrefixes.stick.get(aMaterial), 'R', OrePrefixes.plate.get(Materials.AnyRubber)}); } if ((!aMaterial.contains(SubTag.WOOD)) && (!aMaterial.contains(SubTag.BOUNCY)) && (!aMaterial.contains(SubTag.NO_SMASHING))) { GT_ModHandler.addCraftingRecipe(GT_MetaGenerated_Tool_01.INSTANCE.getToolWithStats(GT_MetaGenerated_Tool_01.WRENCH, 1, aMaterial, aMaterial, null), GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"IhI", "III", " I ", 'I', OrePrefixes.ingot.get(aMaterial)}); @@ -26,7 +26,7 @@ public class ProcessingToolOther implements gregtech.api.interfaces.IOreRecipeRe GT_ModHandler.addCraftingRecipe(GT_MetaGenerated_Tool_01.INSTANCE.getToolWithStats(GT_MetaGenerated_Tool_01.BRANCHCUTTER, 1, aMaterial, aMaterial, null), GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"PfP", "PdP", "STS", 'S', OrePrefixes.stick.get(aMaterial), 'P', OrePrefixes.plate.get(aMaterial), 'T', OrePrefixes.screw.get(aMaterial)}); GT_ModHandler.addCraftingRecipe(GT_MetaGenerated_Tool_01.INSTANCE.getToolWithStats(GT_MetaGenerated_Tool_01.KNIFE, 1, aMaterial, aMaterial, null), GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"fPh", " S ", 'S', OrePrefixes.stick.get(aMaterial), 'P', OrePrefixes.plate.get(aMaterial)}); GT_ModHandler.addCraftingRecipe(GT_MetaGenerated_Tool_01.INSTANCE.getToolWithStats(GT_MetaGenerated_Tool_01.BUTCHERYKNIFE, 1, aMaterial, aMaterial, null), GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"PPf", "PP ", "Sh ", 'S', OrePrefixes.stick.get(aMaterial), 'P', OrePrefixes.plate.get(aMaterial)}); - GT_ModHandler.addCraftingRecipe(GT_MetaGenerated_Tool_01.INSTANCE.getToolWithStats(GT_MetaGenerated_Tool_01.SOLDERING_IRON_LV, 1, aMaterial, Materials.Rubber, new long[]{100000L, 32L, 1L, -1L}), GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"LBf", "Sd ", "P ", 'B', OrePrefixes.bolt.get(aMaterial), 'P', OrePrefixes.plate.get(Materials.Rubber), 'S', OrePrefixes.stick.get(Materials.Iron), 'L', ItemList.Battery_RE_LV_Lithium.get(1L, new Object[0])}); + GT_ModHandler.addCraftingRecipe(GT_MetaGenerated_Tool_01.INSTANCE.getToolWithStats(GT_MetaGenerated_Tool_01.SOLDERING_IRON_LV, 1, aMaterial, Materials.Rubber, new long[]{100000L, 32L, 1L, -1L}), GT_ModHandler.RecipeBits.DO_NOT_CHECK_FOR_COLLISIONS | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"LBf", "Sd ", "P ", 'B', OrePrefixes.bolt.get(aMaterial), 'P', OrePrefixes.plate.get(Materials.AnyRubber), 'S', OrePrefixes.stick.get(Materials.Iron), 'L', ItemList.Battery_RE_LV_Lithium.get(1L, new Object[0])}); } } } diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingWire.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingWire.java index 1932329c98..391b806a29 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingWire.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingWire.java @@ -1,9 +1,16 @@ package gregtech.loaders.oreprocessing; +import java.util.ArrayList; + import appeng.api.config.TunnelType; import appeng.core.Api; import gregtech.GT_Mod; -import gregtech.api.enums.*; +import gregtech.api.enums.GT_Values; +import gregtech.api.enums.ItemList; +import gregtech.api.enums.Materials; +import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.SubTag; +import gregtech.api.util.GT_Log; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; @@ -13,7 +20,12 @@ import net.minecraft.init.Items; import net.minecraft.item.ItemStack; public class ProcessingWire implements gregtech.api.interfaces.IOreRecipeRegistrator { - public ProcessingWire() { + + private Materials[] dielectrics = {Materials.PolyvinylChloride, Materials.Polydimethylsiloxane}; + private Materials[] rubbers = {Materials.Rubber, Materials.StyreneButadieneRubber, Materials.Silicone}; + private Materials[] syntheticRubbers = {Materials.StyreneButadieneRubber, Materials.Silicone}; + + public ProcessingWire() { OrePrefixes.wireGt01.add(this); OrePrefixes.wireGt02.add(this); OrePrefixes.wireGt04.add(this); @@ -23,23 +35,12 @@ public class ProcessingWire implements gregtech.api.interfaces.IOreRecipeRegistr } public void registerOre(OrePrefixes aPrefix, Materials aMaterial, String aOreDictName, String aModName, ItemStack aStack) { + int cableWidth; + OrePrefixes correspondingCable; switch (aPrefix) { case wireGt01: - switch (aMaterial.mName){ - case "Cobalt": case "Lead": case "Tin": case "Zinc":case "SolderingAlloy": - GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, aMaterial, 1L), new Object[]{aOreDictName, new ItemStack(Blocks.carpet, 1, 15), new ItemStack(Items.string, 1)}); - GT_Values.RA.addBoxingRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), new ItemStack(Blocks.carpet, 1, 15), GT_OreDictUnificator.get(OrePrefixes.cableGt01, aMaterial, 1L), 100, 8); - GT_Values.RA.addUnboxingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, aMaterial, 1L), GT_Utility.copyAmount(1L, new Object[]{aStack}), new ItemStack(Blocks.carpet, 1, 15), 100, 8); - break; - case "RedAlloy": - GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, aMaterial, 1L), new Object[]{aOreDictName, OrePrefixes.plate.get(Materials.Paper)}); - GT_Values.RA.addBoxingRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 1L), GT_OreDictUnificator.get(OrePrefixes.cableGt01, aMaterial, 1L), 100, 8); - GT_Values.RA.addUnboxingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, aMaterial, 1L), GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 1L), 100, 8); - break; - default: - GT_Values.RA.addAssemblerRecipe(aStack, ItemList.Circuit_Integrated.getWithDamage(0L, 24L, new Object[0]), Materials.Rubber.getMolten(144L), GT_OreDictUnificator.get(OrePrefixes.cableGt01, aMaterial, 1L), 100, 8); - GT_Values.RA.addUnboxingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt01, aMaterial, 1L), GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Rubber, 1L), 100, 8); - } + cableWidth = 1; + correspondingCable = OrePrefixes.cableGt01; if (!aMaterial.contains(gregtech.api.enums.SubTag.NO_SMASHING)) { GT_Values.RA.addBenderRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.springSmall, aMaterial, 2L), 100, 8); GT_Values.RA.addWiremillRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.wireFine, aMaterial, 4L), 200, 8); @@ -53,107 +54,35 @@ public class ProcessingWire implements gregtech.api.interfaces.IOreRecipeRegistr GT_Values.RA.addAssemblerRecipe(GT_Utility.copyAmount(8L, new Object[]{aStack}), ItemList.Circuit_Integrated.getWithDamage(0L, 8L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.wireGt08, aMaterial, 1L), 300, 8); GT_Values.RA.addAssemblerRecipe(GT_Utility.copyAmount(12L, new Object[]{aStack}), ItemList.Circuit_Integrated.getWithDamage(0L, 12L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.wireGt12, aMaterial, 1L), 400, 8); GT_Values.RA.addAssemblerRecipe(GT_Utility.copyAmount(16L, new Object[]{aStack}), ItemList.Circuit_Integrated.getWithDamage(0L, 16L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.wireGt16, aMaterial, 1L), 500, 8); - - if (GT_Mod.gregtechproxy.mAE2Integration) { - Api.INSTANCE.registries().p2pTunnel().addNewAttunement(aStack, TunnelType.IC2_POWER); - Api.INSTANCE.registries().p2pTunnel().addNewAttunement(GT_OreDictUnificator.get(OrePrefixes.cableGt01, aMaterial, 1L), TunnelType.IC2_POWER); - } break; case wireGt02: - switch (aMaterial.mName){ - case "Cobalt": case "Lead": case "Tin": case "Zinc":case "SolderingAlloy": - GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt02, aMaterial, 1L), new Object[]{aOreDictName, new ItemStack(Blocks.carpet, 1, 15), new ItemStack(Items.string, 1)}); - GT_Values.RA.addBoxingRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), new ItemStack(Blocks.carpet, 1, 15), GT_OreDictUnificator.get(OrePrefixes.cableGt02, aMaterial, 1L), 100, 8); - GT_Values.RA.addUnboxingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt02, aMaterial, 1L), GT_Utility.copyAmount(1L, new Object[]{aStack}), new ItemStack(Blocks.carpet, 1, 15), 100, 8); - break; - case "RedAlloy": - GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt02, aMaterial, 1L), new Object[]{aOreDictName, OrePrefixes.plate.get(Materials.Paper)}); - GT_Values.RA.addBoxingRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 1L), GT_OreDictUnificator.get(OrePrefixes.cableGt02, aMaterial, 1L), 100, 8); - GT_Values.RA.addUnboxingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt02, aMaterial, 1L), GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 1L), 100, 8); - break; - default: - GT_Values.RA.addAssemblerRecipe(aStack, ItemList.Circuit_Integrated.getWithDamage(0L, 24L, new Object[0]), Materials.Rubber.getMolten(144L), GT_OreDictUnificator.get(OrePrefixes.cableGt02, aMaterial, 1L), 100, 8); - GT_Values.RA.addUnboxingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt02, aMaterial, 1L), GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Rubber, 1L), 100, 8); - } + cableWidth = 2; + correspondingCable = OrePrefixes.cableGt02; GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 2L), new Object[]{aOreDictName}); GT_ModHandler.addShapelessCraftingRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), new Object[]{OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial)}); - - if (GT_Mod.gregtechproxy.mAE2Integration) { - Api.INSTANCE.registries().p2pTunnel().addNewAttunement(aStack, TunnelType.IC2_POWER); - Api.INSTANCE.registries().p2pTunnel().addNewAttunement(GT_OreDictUnificator.get(OrePrefixes.cableGt02, aMaterial, 1L), TunnelType.IC2_POWER); - } break; case wireGt04: - switch (aMaterial.mName){ - case "Cobalt": case "Lead": case "Tin": case "Zinc":case "SolderingAlloy": - GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt04, aMaterial, 1L), new Object[]{aOreDictName, new ItemStack(Blocks.carpet, 1, 15), new ItemStack(Blocks.carpet, 1, 15), new ItemStack(Items.string, 1)}); - GT_Values.RA.addBoxingRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), new ItemStack(Blocks.carpet, 2, 15), GT_OreDictUnificator.get(OrePrefixes.cableGt04, aMaterial, 1L), 100, 8); - GT_Values.RA.addUnboxingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt04, aMaterial, 1L), GT_Utility.copyAmount(1L, new Object[]{aStack}), new ItemStack(Blocks.carpet, 2, 15), 100, 8); - break; - case "RedAlloy": - GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt04, aMaterial, 1L), new Object[]{aOreDictName, OrePrefixes.plate.get(Materials.Paper), OrePrefixes.plate.get(Materials.Paper)}); - GT_Values.RA.addBoxingRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 2L), GT_OreDictUnificator.get(OrePrefixes.cableGt04, aMaterial, 1L), 100, 8); - GT_Values.RA.addUnboxingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt04, aMaterial, 1L), GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 2L), 100, 8); - break; - default: - GT_Values.RA.addAssemblerRecipe(aStack, ItemList.Circuit_Integrated.getWithDamage(0L, 24L, new Object[0]), Materials.Rubber.getMolten(288L), GT_OreDictUnificator.get(OrePrefixes.cableGt04, aMaterial, 1L), 100, 8); - GT_Values.RA.addUnboxingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt04, aMaterial, 1L), GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Rubber, 2L), 100, 8); - } + cableWidth = 4; + correspondingCable = OrePrefixes.cableGt04; GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 4L), new Object[]{aOreDictName}); + GT_ModHandler.addShapelessCraftingRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), + new Object[]{OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial)}); GT_ModHandler.addShapelessCraftingRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), new Object[]{OrePrefixes.wireGt02.get(aMaterial), OrePrefixes.wireGt02.get(aMaterial)}); - - if (GT_Mod.gregtechproxy.mAE2Integration) { - Api.INSTANCE.registries().p2pTunnel().addNewAttunement(aStack, TunnelType.IC2_POWER); - Api.INSTANCE.registries().p2pTunnel().addNewAttunement(GT_OreDictUnificator.get(OrePrefixes.cableGt04, aMaterial, 1L), TunnelType.IC2_POWER); - } break; case wireGt08: - switch (aMaterial.mName){ - case "Cobalt": case "Lead": case "Tin": case "Zinc":case "SolderingAlloy": - GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt08, aMaterial, 1L), new Object[]{aOreDictName, new ItemStack(Blocks.carpet, 1, 15), new ItemStack(Blocks.carpet, 1, 15), new ItemStack(Blocks.carpet, 1, 15), new ItemStack(Items.string, 1)}); - GT_Values.RA.addBoxingRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), new ItemStack(Blocks.carpet, 3, 15), GT_OreDictUnificator.get(OrePrefixes.cableGt08, aMaterial, 1L), 100, 8); - GT_Values.RA.addUnboxingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt08, aMaterial, 1L), GT_Utility.copyAmount(1L, new Object[]{aStack}), new ItemStack(Blocks.carpet, 3, 15), 100, 8); - break; - case "RedAlloy": - GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt08, aMaterial, 1L), new Object[]{aOreDictName, OrePrefixes.plate.get(Materials.Paper), OrePrefixes.plate.get(Materials.Paper), OrePrefixes.plate.get(Materials.Paper)}); - GT_Values.RA.addBoxingRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 3L), GT_OreDictUnificator.get(OrePrefixes.cableGt08, aMaterial, 1L), 100, 8); - GT_Values.RA.addUnboxingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt08, aMaterial, 1L), GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 3L), 100, 8); - break; - default: - GT_Values.RA.addAssemblerRecipe(aStack, ItemList.Circuit_Integrated.getWithDamage(0L, 24L, new Object[0]), Materials.Rubber.getMolten(432L), GT_OreDictUnificator.get(OrePrefixes.cableGt08, aMaterial, 1L), 100, 8); - GT_Values.RA.addUnboxingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt08, aMaterial, 1L), GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Rubber, 3L), 100, 8); - } + cableWidth = 8; + correspondingCable = OrePrefixes.cableGt08; GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 8L), new Object[]{aOreDictName}); + GT_ModHandler.addShapelessCraftingRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), + new Object[]{OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial), + OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial), OrePrefixes.wireGt01.get(aMaterial)}); GT_ModHandler.addShapelessCraftingRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), new Object[]{OrePrefixes.wireGt04.get(aMaterial), OrePrefixes.wireGt04.get(aMaterial)}); - - if (GT_Mod.gregtechproxy.mAE2Integration) { - Api.INSTANCE.registries().p2pTunnel().addNewAttunement(aStack, TunnelType.IC2_POWER); - Api.INSTANCE.registries().p2pTunnel().addNewAttunement(GT_OreDictUnificator.get(OrePrefixes.cableGt08, aMaterial, 1L), TunnelType.IC2_POWER); - } break; case wireGt12: - switch (aMaterial.mName){ - case "Cobalt": case "Lead": case "Tin": case "Zinc":case "SolderingAlloy": - GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt12, aMaterial, 1L), new Object[]{aOreDictName, new ItemStack(Blocks.carpet, 1, 15), new ItemStack(Blocks.carpet, 1, 15), new ItemStack(Blocks.carpet, 1, 15), new ItemStack(Blocks.carpet, 1, 15), new ItemStack(Items.string, 1)}); - GT_Values.RA.addBoxingRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), new ItemStack(Blocks.carpet, 4, 15), GT_OreDictUnificator.get(OrePrefixes.cableGt12, aMaterial, 1L), 100, 8); - GT_Values.RA.addUnboxingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt12, aMaterial, 1L), GT_Utility.copyAmount(1L, new Object[]{aStack}), new ItemStack(Blocks.carpet, 4, 15), 100, 8); - break; - case "RedAlloy": - GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt12, aMaterial, 1L), new Object[]{aOreDictName, OrePrefixes.plate.get(Materials.Paper), OrePrefixes.plate.get(Materials.Paper), OrePrefixes.plate.get(Materials.Paper), OrePrefixes.plate.get(Materials.Paper)}); - GT_Values.RA.addBoxingRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 4L), GT_OreDictUnificator.get(OrePrefixes.cableGt12, aMaterial, 1L), 100, 8); - GT_Values.RA.addUnboxingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt12, aMaterial, 1L), GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, 4L), 100, 8); - break; - default: - GT_Values.RA.addAssemblerRecipe(aStack, ItemList.Circuit_Integrated.getWithDamage(0L, 24L, new Object[0]), Materials.Rubber.getMolten(576L), GT_OreDictUnificator.get(OrePrefixes.cableGt12, aMaterial, 1L), 100, 8); - GT_Values.RA.addUnboxingRecipe(GT_OreDictUnificator.get(OrePrefixes.cableGt12, aMaterial, 1L), GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Rubber, 4L), 100, 8); - } + cableWidth = 12; + correspondingCable = OrePrefixes.cableGt12; GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 12L), new Object[]{aOreDictName}); GT_ModHandler.addShapelessCraftingRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), new Object[]{OrePrefixes.wireGt08.get(aMaterial), OrePrefixes.wireGt04.get(aMaterial)}); - - if (GT_Mod.gregtechproxy.mAE2Integration) { - Api.INSTANCE.registries().p2pTunnel().addNewAttunement(aStack, TunnelType.IC2_POWER); - Api.INSTANCE.registries().p2pTunnel().addNewAttunement(GT_OreDictUnificator.get(OrePrefixes.cableGt12, aMaterial, 1L), TunnelType.IC2_POWER); - } break; case wireGt16: GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(OrePrefixes.wireGt01, aMaterial, 16L), new Object[]{aOreDictName}); @@ -163,7 +92,73 @@ public class ProcessingWire implements gregtech.api.interfaces.IOreRecipeRegistr if (GT_Mod.gregtechproxy.mAE2Integration) { Api.INSTANCE.registries().p2pTunnel().addNewAttunement(aStack, TunnelType.IC2_POWER); } - break; + return; + default: + GT_Log.err.println("OrePrefix " + aPrefix.name() + " cannot be registered as a cable for Material " + aMaterial.mName); + return; } - } + + int costMultiplier = cableWidth / 4 + 1; + + switch (aMaterial.mName){ + case "RedAlloy": + ArrayList<Object> craftingListPaper = new ArrayList<Object>(); + craftingListPaper.add(aOreDictName); + for (int i = 0; i < costMultiplier; i++) { + craftingListPaper.add(OrePrefixes.plate.get(Materials.Paper)); + } + GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), craftingListPaper.toArray()); + GT_Values.RA.addBoxingRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Paper, costMultiplier), GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), 100, 8); + case "Cobalt": case "Lead": case "Tin": case "Zinc":case "SolderingAlloy": + ArrayList<Object> craftingListCarpet = new ArrayList<Object>(); + craftingListCarpet.add(aOreDictName); + for (int i = 0; i < costMultiplier; i++) { + craftingListCarpet.add(new ItemStack(Blocks.carpet, 1, 15)); + } + craftingListCarpet.add(new ItemStack(Items.string, 1)); + GT_ModHandler.addShapelessCraftingRecipe(GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), craftingListCarpet.toArray()); + GT_Values.RA.addBoxingRecipe(GT_Utility.copyAmount(1L, new Object[]{aStack}), new ItemStack(Blocks.carpet, costMultiplier, 15), GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), 100, 8); + case "Iron": case "Nickel": case "Cupronickel": case "Copper": case "AnnealedCopper": + case "Kanthal": case "Gold": case "Electrum": case "Silver": case "Blue Alloy": + for (Materials rubber : rubbers) { + GT_Values.RA.addAssemblerRecipe(aStack, ItemList.Circuit_Integrated.getWithDamage(0L, 24L, new Object[0]), + rubber.getMolten(144 * costMultiplier), GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), 100, 8); + } + for (Materials dielectric : dielectrics) { + for (Materials syntheticRubber : syntheticRubbers) { + GT_Values.RA.addAssemblerRecipe(new ItemStack[]{aStack, dielectric.getDustSmall(costMultiplier)}, + syntheticRubber.getMolten(costMultiplier * 36), GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), 100, 8); + } + } + break; + default: + if (GT_Mod.gregtechproxy.mEasierEVPlusCables) { + for (Materials rubber : rubbers) { + GT_Values.RA.addAssemblerRecipe(aStack, ItemList.Circuit_Integrated.getWithDamage(0L, 24L, new Object[0]), + rubber.getMolten(144 * costMultiplier), GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), 100, 8); + } + for (Materials dielectric : dielectrics) { + for (Materials syntheticRubber : syntheticRubbers) { + GT_Values.RA.addAssemblerRecipe(new ItemStack[]{aStack, dielectric.getDustSmall(costMultiplier)}, + syntheticRubber.getMolten(costMultiplier * 36), GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), 100, 8); + } + } + } else { + for (Materials dielectric : dielectrics) { + for (Materials syntheticRubber : syntheticRubbers) { + GT_Values.RA.addAssemblerRecipe(new ItemStack[]{aStack, dielectric.getDustSmall(costMultiplier), GT_OreDictUnificator.get(OrePrefixes.foil, aMaterial, costMultiplier)}, + syntheticRubber.getMolten(costMultiplier * 36), GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), 100, 8); + GT_Values.RA.addAssemblerRecipe(new ItemStack[]{aStack, dielectric.getDustSmall(costMultiplier), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.PolyphenyleneSulfide, costMultiplier)}, + syntheticRubber.getMolten(costMultiplier * 36), GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), 100, 8); + } + } + } + break; + } + GT_Values.RA.addUnboxingRecipe(GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), GT_Utility.copyAmount(1L, new Object[]{aStack}), null, 100, 8); + if (GT_Mod.gregtechproxy.mAE2Integration) { + Api.INSTANCE.registries().p2pTunnel().addNewAttunement(aStack, TunnelType.IC2_POWER); + Api.INSTANCE.registries().p2pTunnel().addNewAttunement(GT_OreDictUnificator.get(correspondingCable, aMaterial, 1L), TunnelType.IC2_POWER); + } + } } diff --git a/src/main/java/gregtech/loaders/postload/GT_CraftingRecipeLoader.java b/src/main/java/gregtech/loaders/postload/GT_CraftingRecipeLoader.java index c59a583f1d..c9f793c6be 100644 --- a/src/main/java/gregtech/loaders/postload/GT_CraftingRecipeLoader.java +++ b/src/main/java/gregtech/loaders/postload/GT_CraftingRecipeLoader.java @@ -775,5 +775,7 @@ public class GT_CraftingRecipeLoader implements Runnable { GT_ModHandler.addCraftingRecipe(ItemList.ModularElectric2Leggings.getWildcard(1), bits, new Object[]{"BCB", "A A", "A A", 'A', OrePrefixes.stick.get(Materials.TungstenSteel), 'B', OrePrefixes.plateAlloy.get(Materials.Carbon), 'C', OrePrefixes.battery.get(Materials.Master)}); GT_ModHandler.addCraftingRecipe(ItemList.ModularElectric2Boots.getWildcard(1), bits, new Object[]{"A A", "BCB", "A A", 'A', OrePrefixes.stick.get(Materials.TungstenSteel), 'B', OrePrefixes.plateAlloy.get(Materials.Carbon), 'C', OrePrefixes.battery.get(Materials.Master)}); + GT_ModHandler.addShapelessCraftingRecipe(Materials.Fireclay.getDust(2), new Object[]{Materials.Brick.getDust(1), Materials.Clay.getDust(1)}); + } } diff --git a/src/main/java/gregtech/loaders/postload/GT_CropLoader.java b/src/main/java/gregtech/loaders/postload/GT_CropLoader.java index 1ba7cd0839..b94d4d95ab 100644 --- a/src/main/java/gregtech/loaders/postload/GT_CropLoader.java +++ b/src/main/java/gregtech/loaders/postload/GT_CropLoader.java @@ -64,12 +64,13 @@ public class GT_CropLoader new GT_BaseCrop(169, "Quantaria", "unknown", null, 12, 4, 1000, 1, 4, 4, 0, 0, 1, 0, new String[]{"Metal", "Iridium", "Reed"}, Materials.Iridium, ItemList.Crop_Drop_Iridium.get(1, new Object[0]), new ItemStack[]{ItemList.Crop_Drop_Osmium.get(1, new Object[0])}); new GT_BaseCrop(170, "Stargatium", "unknown", null, 12, 4, 1500, 1, 4, 4, 0, 0, 2, 0, new String[]{"Metal", "Heavy", "Alien", "Naquadah"}, Materials.Naquadah, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Endstone, 1L), new ItemStack[]{ItemList.Crop_Drop_Naquadah.get(1, new Object[0])}); new GT_BaseCrop(171, "Lemon", "unknown", null, 4, 4, 0, 1, 4, 1, 1, 0, 2, 0, new String[]{"Food", "Tree", "Sour"}, ItemList.Crop_Drop_Lemon.get(1, new Object[0]), null); - new GT_BaseCrop(172, "Chilly", "unknown", null, 4, 4, 0, 1, 4, 1, 1, 0, 2, 0, new String[]{"Food", "Spicy"}, ItemList.Crop_Drop_Chilly.get(1, new Object[0]), null); + new GT_BaseCrop(172, "Chilly", "unknown", null, 4, 4, 0, 1, 4, 1, 1, 0, 2, 0, new String[]{"Food", "Spicy"}, ItemList.Crop_Drop_Chilly.get(1, new Object[0]), null); new GT_BaseCrop(173, "Tomato", "unknown", null, 4, 4, 0, 1, 4, 1, 1, 0, 2, 0, new String[]{"Food"}, ItemList.Crop_Drop_Tomato.get(1, new Object[0]), new ItemStack[]{ItemList.Crop_Drop_MTomato.get(1, new Object[0])}); new GT_BaseCrop(174, "Grape", "unknown", null, 4, 4, 0, 1, 4, 1, 1, 0, 2, 0, new String[]{"Food"}, ItemList.Crop_Drop_Grapes.get(1, new Object[0]), null); new GT_BaseCrop(175, "Onion", "unknown", null, 4, 4, 0, 1, 4, 1, 1, 0, 2, 0, new String[]{"Food"}, ItemList.Crop_Drop_Onion.get(1, new Object[0]), null); new GT_BaseCrop(176, "Cucumber", "unknown", null, 4, 4, 0, 1, 4, 1, 1, 0, 2, 0, new String[]{"Food"}, ItemList.Crop_Drop_Cucumber.get(1, new Object[0]), null); - new GT_BaseCrop(177, "Tea", "unknown", null, 4, 4, 0, 1, 4, 1, 1, 0, 2, 0, new String[]{"Food"}, ItemList.Crop_Drop_TeaLeaf.get(1, new Object[0]), null); + new GT_BaseCrop(177, "Tea", "unknown", null, 4, 4, 0, 1, 4, 1, 1, 0, 2, 0, new String[]{"Food"}, ItemList.Crop_Drop_TeaLeaf.get(1, new Object[0]), null); + new GT_BaseCrop(178, "Rape", "unknown", null, 4, 4, 0, 1, 4, 1, 1, 0, 2, 0, new String[]{"Food", "Oil"}, ItemList.Crop_Drop_Rape.get(1, new Object[0]), null); } catch (Throwable e) { GT_Log.err.println("GT_Mod: Failed to register Crops to IC2."); e.printStackTrace(GT_Log.err); diff --git a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java index 92e1168c2d..ea7781c7fb 100644 --- a/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java +++ b/src/main/java/gregtech/loaders/postload/GT_MachineRecipeLoader.java @@ -1,5 +1,6 @@ package gregtech.loaders.postload; +import codechicken.nei.api.API; import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.registry.GameRegistry; import gregtech.GT_Mod; @@ -8,7 +9,6 @@ import gregtech.api.enums.*; import gregtech.api.objects.MaterialStack; import gregtech.api.util.*; import gregtech.common.GT_DummyWorld; -import gregtech.common.GT_Proxy; import gregtech.common.items.GT_MetaGenerated_Item_03; import ic2.api.recipe.ILiquidHeatExchangerManager.HeatExchangeProperty; import ic2.api.recipe.Recipes; @@ -27,8 +27,6 @@ import java.util.Arrays; import java.util.Iterator; import java.util.Map; -import codechicken.nei.api.API; - public class GT_MachineRecipeLoader implements Runnable { private final MaterialStack[][] mAlloySmelterList = {{new MaterialStack(Materials.Tetrahedrite, 3L), new MaterialStack(Materials.Tin, 1L), new MaterialStack(Materials.Bronze, 3L)}, {new MaterialStack(Materials.Tetrahedrite, 3L), new MaterialStack(Materials.Zinc, 1L), new MaterialStack(Materials.Brass, 3L)}, {new MaterialStack(Materials.Copper, 3L), new MaterialStack(Materials.Tin, 1L), new MaterialStack(Materials.Bronze, 4L)}, {new MaterialStack(Materials.Copper, 3L), new MaterialStack(Materials.Zinc, 1L), new MaterialStack(Materials.Brass, 4L)}, {new MaterialStack(Materials.Copper, 1L), new MaterialStack(Materials.Nickel, 1L), new MaterialStack(Materials.Cupronickel, 2L)}, {new MaterialStack(Materials.Copper, 1L), new MaterialStack(Materials.Redstone, 4L), new MaterialStack(Materials.RedAlloy, 1L)}, {new MaterialStack(Materials.AnnealedCopper, 3L), new MaterialStack(Materials.Tin, 1L), new MaterialStack(Materials.Bronze, 4L)}, {new MaterialStack(Materials.AnnealedCopper, 3L), new MaterialStack(Materials.Zinc, 1L), new MaterialStack(Materials.Brass, 4L)}, {new MaterialStack(Materials.AnnealedCopper, 1L), new MaterialStack(Materials.Nickel, 1L), new MaterialStack(Materials.Cupronickel, 2L)}, {new MaterialStack(Materials.AnnealedCopper, 1L), new MaterialStack(Materials.Redstone, 4L), new MaterialStack(Materials.RedAlloy, 1L)}, {new MaterialStack(Materials.Iron, 1L), new MaterialStack(Materials.Tin, 1L), new MaterialStack(Materials.TinAlloy, 2L)}, {new MaterialStack(Materials.WroughtIron, 1L), new MaterialStack(Materials.Tin, 1L), new MaterialStack(Materials.TinAlloy, 2L)}, {new MaterialStack(Materials.Iron, 2L), new MaterialStack(Materials.Nickel, 1L), new MaterialStack(Materials.Invar, 3L)}, {new MaterialStack(Materials.WroughtIron, 2L), new MaterialStack(Materials.Nickel, 1L), new MaterialStack(Materials.Invar, 3L)}, {new MaterialStack(Materials.Tin, 9L), new MaterialStack(Materials.Antimony, 1L), new MaterialStack(Materials.SolderingAlloy, 10L)}, {new MaterialStack(Materials.Lead, 4L), new MaterialStack(Materials.Antimony, 1L), new MaterialStack(Materials.BatteryAlloy, 5L)}, {new MaterialStack(Materials.Gold, 1L), new MaterialStack(Materials.Silver, 1L), new MaterialStack(Materials.Electrum, 2L)}, {new MaterialStack(Materials.Magnesium, 1L), new MaterialStack(Materials.Aluminium, 2L), new MaterialStack(Materials.Magnalium, 3L)}, {new MaterialStack(Materials.Silver, 1L), new MaterialStack(Materials.Nikolite, 4L), new MaterialStack(Materials.BlueAlloy, 1L)}}; private final static String aTextAE = "appliedenergistics2"; private final static String aTextAEMM = "item.ItemMultiMaterial"; private final static String aTextForestry = "Forestry"; @@ -48,13 +46,14 @@ public class GT_MachineRecipeLoader implements Runnable { GT_Utility.removeIC2BottleRecipe(GT_ModHandler.getIC2Item("fuelRod", 1), GT_ModHandler.getIC2Item("UranFuel", 1), ic2.api.recipe.Recipes.cannerBottle.getRecipes(), GT_ModHandler.getIC2Item("reactorUraniumSimple", 1, 1)); GT_Utility.removeIC2BottleRecipe(GT_ModHandler.getIC2Item("fuelRod", 1), GT_ModHandler.getIC2Item("MOXFuel", 1), ic2.api.recipe.Recipes.cannerBottle.getRecipes(), GT_ModHandler.getIC2Item("reactorMOXSimple", 1, 1)); - GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.wheat_seeds, 1, 32767), GT_Values.NI, Materials.SeedOil.getFluid(5L), 10000, 32, 2); - GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.melon_seeds, 1, 32767), GT_Values.NI, Materials.SeedOil.getFluid(3L), 10000, 32, 2); - GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.pumpkin_seeds, 1, 32767), GT_Values.NI, Materials.SeedOil.getFluid(6L), 10000, 32, 2); + GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.wheat_seeds, 1, 32767), GT_Values.NI, Materials.SeedOil.getFluid(10), 10000, 32, 2); + GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.melon_seeds, 1, 32767), GT_Values.NI, Materials.SeedOil.getFluid(10), 10000, 32, 2); + GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.pumpkin_seeds, 1, 32767), GT_Values.NI, Materials.SeedOil.getFluid(10), 10000, 32, 2); + GT_Values.RA.addFluidExtractionRecipe(ItemList.Crop_Drop_Rape.get(1, new Object[0]), null, Materials.SeedOil.getFluid(50), 10000, 32, 2); try { GT_DummyWorld tWorld = (GT_DummyWorld) GT_Values.DW; while (tWorld.mRandom.mIterationStep > 0) { - GT_Values.RA.addFluidExtractionRecipe(GT_Utility.copyAmount(1L, new Object[]{ForgeHooks.getGrassSeed(tWorld)}), GT_Values.NI, Materials.SeedOil.getFluid(5L), 10000, 64, 2); + GT_Values.RA.addFluidExtractionRecipe(GT_Utility.copyAmount(1L, new Object[]{ForgeHooks.getGrassSeed(tWorld)}), GT_Values.NI, Materials.SeedOil.getFluid(10), 10000, 64, 2); } } catch (Throwable e) { GT_Log.out.println("GT_Mod: failed to iterate somehow, maybe it's your Forge Version causing it. But it's not that important\n"); @@ -97,6 +96,8 @@ public class GT_MachineRecipeLoader implements Runnable { GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Saltpeter, 2L), GT_OreDictUnificator.get(tPrefix, Materials.Sulfur, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Carbon, 3L), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.Gunpowder, 6L * tPrefix.mMaterialAmount), (int) (600L * tPrefix.mMaterialAmount / 3628800L), 8); GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Indium, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Gallium, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Phosphor, 1L), null, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.IndiumGalliumPhosphide, 3L * tPrefix.mMaterialAmount), (int) (200L * tPrefix.mMaterialAmount / 3628800L), 8); + + GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(tPrefix, Materials.Brick, 1L), GT_OreDictUnificator.get(tPrefix, Materials.Clay, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.getDust(Materials.Fireclay, 2L * tPrefix.mMaterialAmount), (int) (200L * tPrefix.mMaterialAmount / 3628800L), 8); } GT_Values.RA.addMixerRecipe(new ItemStack(Items.rotten_flesh, 1, 0), new ItemStack(Items.fermented_spider_eye, 1, 0), ItemList.IC2_Scrap.get(1L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.MeatRaw, 1L), FluidRegistry.getFluidStack("potion.purpledrink", 750), FluidRegistry.getFluidStack("sludge", 1000), ItemList.Food_Chum.get(4L, new Object[0]), 128, 24); GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wheat, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.Water.getFluid(1000L), GT_Values.NF, ItemList.Food_Dough.get(2L, new Object[0]), 32, 8); @@ -183,10 +184,6 @@ public class GT_MachineRecipeLoader implements Runnable { GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Charcoal,1), ItemList.MSFMixture.get(4, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.HeavyFuel.getFluid(1200), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Coal,1), ItemList.MSFMixture.get(2, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.HeavyFuel.getFluid(750), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Lignite,1), ItemList.MSFMixture.get(6, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.LPG.getFluid(1500), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Charcoal,1), ItemList.MSFMixture.get(4, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.LPG.getFluid(1200), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Coal,1), ItemList.MSFMixture.get(2, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.LPG.getFluid(750), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); }} GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Lignite,1), ItemList.SFMixture.get(6, new Object[]{}), null, null, Materials.NitroFuel.getFluid(1000), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); @@ -197,18 +194,12 @@ public class GT_MachineRecipeLoader implements Runnable { GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Charcoal,1), ItemList.SFMixture.get(4, new Object[]{}), null, null, Materials.HeavyFuel.getFluid(1200), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Coal,1), ItemList.SFMixture.get(2, new Object[]{}), null, null, Materials.HeavyFuel.getFluid(750), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Lignite,1), ItemList.SFMixture.get(6, new Object[]{}), null, null, Materials.LPG.getFluid(1500), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Charcoal,1), ItemList.SFMixture.get(4, new Object[]{}), null, null, Materials.LPG.getFluid(1200), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Coal,1), ItemList.SFMixture.get(2, new Object[]{}), null, null, Materials.LPG.getFluid(750), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); - if(Loader.isModLoaded("Railcraft")){ GT_Values.RA.addMixerRecipe(EnumCube.COKE_BLOCK.getItem(), ItemList.SFMixture.get(1, new Object[]{}), null, null, Materials.NitroFuel.getFluid(250), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); GT_Values.RA.addMixerRecipe(EnumCube.COKE_BLOCK.getItem(), ItemList.SFMixture.get(1, new Object[]{}), null, null, Materials.HeavyFuel.getFluid(375), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(EnumCube.COKE_BLOCK.getItem(), ItemList.SFMixture.get(1, new Object[]{}), null, null, Materials.LPG.getFluid(375), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); if(Loader.isModLoaded("Thaumcraft")){ GT_Values.RA.addMixerRecipe(EnumCube.COKE_BLOCK.getItem(), ItemList.MSFMixture.get(1, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.NitroFuel.getFluid(250), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); GT_Values.RA.addMixerRecipe(EnumCube.COKE_BLOCK.getItem(), ItemList.MSFMixture.get(1, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.HeavyFuel.getFluid(375), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); - GT_Values.RA.addMixerRecipe(EnumCube.COKE_BLOCK.getItem(), ItemList.MSFMixture.get(1, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.LPG.getFluid(375), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); }} GT_Values.RA.addExtruderRecipe(ItemList.FR_Wax.get(1L, new Object[0]), ItemList.Shape_Extruder_Cell.get(0L, new Object[0]), ItemList.FR_WaxCapsule.get(1L, new Object[0]), 64, 16); GT_Values.RA.addExtruderRecipe(ItemList.FR_RefractoryWax.get(1L, new Object[0]), ItemList.Shape_Extruder_Cell.get(0L, new Object[0]), ItemList.FR_RefractoryCapsule.get(1L, new Object[0]), 128, 16); @@ -278,7 +269,7 @@ if(Loader.isModLoaded("Railcraft")){ GT_Values.RA.addChemicalBathRecipe(ItemList.Food_Raw_Fries.get(1L, new Object[0]), Materials.FryingOilHot.getFluid(10L), ItemList.Food_Fries.get(1L, new Object[0]), GT_Values.NI, GT_Values.NI, null, 16, 4); GT_Values.RA.addChemicalBathRecipe(GT_ModHandler.getIC2Item("dynamite", 1L), Materials.Glue.getFluid(10L), GT_ModHandler.getIC2Item("stickyDynamite", 1L), GT_Values.NI, GT_Values.NI, null, 16, 4); - GT_Values.RA.addChemicalRecipe(new ItemStack(Items.paper,1), new ItemStack(Items.string,1), Materials.Glyceryl.getFluid(150), GT_Values.NF, GT_ModHandler.getIC2Item("dynamite", 1L), 160, 4); + GT_Values.RA.addChemicalRecipe(new ItemStack(Items.paper,1), new ItemStack(Items.string,1), Materials.Glyceryl.getFluid(500), GT_Values.NF, GT_ModHandler.getIC2Item("dynamite", 1L), 160, 4); GT_Values.RA.addChemicalBathRecipe(GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Steel, 1L), Materials.Concrete.getMolten(144L), GT_ModHandler.getIC2Item("reinforcedStone", 1L), GT_Values.NI, GT_Values.NI, null, 200, 4); GT_Values.RA.addChemicalBathRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 1L), Materials.Water.getFluid(125L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HydratedCoal, 1L), GT_Values.NI, GT_Values.NI, null, 12, 4); GT_Values.RA.addChemicalBathRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 1L), Materials.Water.getFluid(100L), new ItemStack(Items.paper, 1, 0), GT_Values.NI, GT_Values.NI, null, 200, 4); @@ -370,10 +361,10 @@ if(Loader.isModLoaded("Railcraft")){ GT_Values.RA.addFluidExtractionRecipe(ItemList.Crop_Drop_OilBerry.get(1L, new Object[0]), GT_Values.NI, Materials.Oil.getFluid(100L), 10000, 128, 4); GT_Values.RA.addFluidExtractionRecipe(ItemList.Crop_Drop_UUMBerry.get(1L, new Object[0]), GT_Values.NI, Materials.UUMatter.getFluid(4L), 10000, 128, 4); GT_Values.RA.addFluidExtractionRecipe(ItemList.Crop_Drop_UUABerry.get(1L, new Object[0]), GT_Values.NI, Materials.UUAmplifier.getFluid(4L), 10000, 128, 4); - GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.fish, 1, 0), GT_Values.NI, Materials.FishOil.getFluid(4L), 10000, 16, 4); - GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.fish, 1, 1), GT_Values.NI, Materials.FishOil.getFluid(6L), 10000, 16, 4); - GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.fish, 1, 2), GT_Values.NI, Materials.FishOil.getFluid(7L), 10000, 16, 4); - GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.fish, 1, 3), GT_Values.NI, Materials.FishOil.getFluid(3L), 10000, 16, 4); + GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.fish, 1, 0), GT_Values.NI, Materials.FishOil.getFluid(40), 10000, 16, 4); + GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.fish, 1, 1), GT_Values.NI, Materials.FishOil.getFluid(60), 10000, 16, 4); + GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.fish, 1, 2), GT_Values.NI, Materials.FishOil.getFluid(70), 10000, 16, 4); + GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.fish, 1, 3), GT_Values.NI, Materials.FishOil.getFluid(30), 10000, 16, 4); GT_Values.RA.addFluidExtractionRecipe(new ItemStack(Items.coal, 1, 1), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ash, 1L), Materials.WoodTar.getFluid(100L), 1000, 128, 4); GT_Values.RA.addFluidExtractionRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Wood, 1L), ItemList.IC2_Plantball.get(1L, new Object[0]), Materials.Creosote.getFluid(5L), 100, 16, 4); GT_Values.RA.addFluidExtractionRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.HydratedCoal, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Coal, 1L), Materials.Water.getFluid(100L), 10000, 32, 4); @@ -454,8 +445,9 @@ if(Loader.isModLoaded("Railcraft")){ GT_ModHandler.addCraftingRecipe(ItemList.Circuit_Parts_Coil.get(1,o), new Object[]{"WWW","WDW","WWW",'G',new ItemStack(Blocks.glass_pane),'D',ItemList.IC2_Item_Casing_Steel.get(1,o),'W',OrePrefixes.wireFine.get(Materials.Copper)}); GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Silicon, 1), GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Tin, 6),Materials.Plastic.getMolten(144), ItemList.Circuit_Parts_Transistor.get(8, o), 80, 24); GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Gallium, 1), GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.AnnealedCopper, 6),Materials.Plastic.getMolten(288), ItemList.Circuit_Parts_TransistorSMD.get(32, o), 80, 96); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Plastic, 2), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Aluminium, 1), ItemList.Circuit_Parts_Capacitor.get(2, o), 80, 96); - GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Silicone, 2), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Aluminium, 1),Materials.Plastic.getMolten(72), ItemList.Circuit_Parts_CapacitorSMD.get(4, o), 100, 480); + GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Plastic, 1), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Aluminium, 2), ItemList.Circuit_Parts_Capacitor.get(2, o), 80, 96); + GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Silicone, 8), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Aluminium, 2),Materials.Plastic.getMolten(72), ItemList.Circuit_Parts_CapacitorSMD.get(8, o), 100, 480); + GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.foil, Materials.PolyvinylChloride, 8), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Aluminium, 2),Materials.Plastic.getMolten(72), ItemList.Circuit_Parts_CapacitorSMD.get(8, o), 100, 480); GT_Values.RA.addLaserEngraverRecipe(ItemList.Circuit_Silicon_Wafer2.get(1, new Object[0]), GT_Utility.copyAmount(0,GT_OreDictUnificator.get(OrePrefixes.lens, Materials.EnderPearl, 1)), ItemList.Circuit_Wafer_NAND.get(1, new Object[0]), 500, 480, true); GT_Values.RA.addLaserEngraverRecipe(ItemList.Circuit_Silicon_Wafer3.get(1, new Object[0]), GT_Utility.copyAmount(0,GT_OreDictUnificator.get(OrePrefixes.lens, Materials.EnderPearl, 1)), ItemList.Circuit_Wafer_NAND.get(4, new Object[0]), 200, 1920, true); @@ -645,27 +637,23 @@ if(Loader.isModLoaded("Railcraft")){ GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Iron, 2L), new ItemStack(Items.iron_door, 1), ItemList.Cover_Shutter.get(2L, new Object[0]), 800, 16); GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.WroughtIron, 2L), new ItemStack(Items.iron_door, 1), ItemList.Cover_Shutter.get(2L, new Object[0]), 800, 16); - GT_Values.RA.addUniversalDistillationRecipe(Materials.OilLight.getFluid(150), new FluidStack[]{Materials.SulfuricGas.getGas(240), Materials.SulfuricNaphtha.getFluid(30), Materials.SulfuricLightFuel.getFluid(20), Materials.SulfuricHeavyFuel.getFluid(10)}, null, 20, 96); - GT_Values.RA.addUniversalDistillationRecipe(Materials.OilMedium.getFluid(100), new FluidStack[]{Materials.SulfuricGas.getGas(60), Materials.SulfuricNaphtha.getFluid(20), Materials.SulfuricLightFuel.getFluid(50), Materials.SulfuricHeavyFuel.getFluid(15)}, null, 20, 96); - GT_Values.RA.addUniversalDistillationRecipe(Materials.Oil.getFluid(50L), new FluidStack[]{Materials.SulfuricGas.getGas(60), Materials.SulfuricNaphtha.getFluid(20), Materials.SulfuricLightFuel.getFluid(50), Materials.SulfuricHeavyFuel.getFluid(15)}, null, 20, 96); + GT_Values.RA.addUniversalDistillationRecipe(Materials.OilLight.getFluid(150), new FluidStack[]{ Materials.SulfuricHeavyFuel.getFluid(10), Materials.SulfuricLightFuel.getFluid(20), Materials.SulfuricNaphtha.getFluid(30), Materials.SulfuricGas.getGas(240)}, null, 20, 96); + GT_Values.RA.addUniversalDistillationRecipe(Materials.OilMedium.getFluid(100), new FluidStack[]{Materials.SulfuricHeavyFuel.getFluid(15), Materials.SulfuricLightFuel.getFluid(50), Materials.SulfuricNaphtha.getFluid(20), Materials.SulfuricGas.getGas(60)}, null, 20, 96); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Oil.getFluid(50L), new FluidStack[]{ Materials.SulfuricHeavyFuel.getFluid(15), Materials.SulfuricLightFuel.getFluid(50), Materials.SulfuricNaphtha.getFluid(20), Materials.SulfuricGas.getGas(60)}, null, 20, 96); + GT_Values.RA.addUniversalDistillationRecipe(Materials.OilHeavy.getFluid(100), new FluidStack[]{ Materials.SulfuricHeavyFuel.getFluid(250), Materials.SulfuricLightFuel.getFluid(45), Materials.SulfuricNaphtha.getFluid(15), Materials.SulfuricGas.getGas(60)}, null, 20, 288); if (FluidRegistry.getFluid("oilgc") != null) { - GT_Values.RA.addUniversalDistillationRecipe(new FluidStack(FluidRegistry.getFluid("oilgc"), 50), new FluidStack[]{Materials.SulfuricGas.getGas(60), Materials.SulfuricNaphtha.getFluid(20), Materials.SulfuricLightFuel.getFluid(50), Materials.SulfuricHeavyFuel.getFluid(15)}, null, 20, 96); + GT_Values.RA.addUniversalDistillationRecipe(new FluidStack(FluidRegistry.getFluid("oilgc"), 50), new FluidStack[]{Materials.SulfuricHeavyFuel.getFluid(15), Materials.SulfuricLightFuel.getFluid(50), Materials.SulfuricNaphtha.getFluid(20), Materials.SulfuricGas.getGas(60)}, null, 20, 96); } - GT_Values.RA.addUniversalDistillationRecipe(Materials.OilHeavy.getFluid(100), new FluidStack[]{Materials.SulfuricGas.getGas(60), Materials.SulfuricNaphtha.getFluid(15), Materials.SulfuricLightFuel.getFluid(45), Materials.SulfuricHeavyFuel.getFluid(250)}, null, 20, 288); - GT_Values.RA.addUniversalDistillationRecipe(Materials.CrackedLightFuel.getFluid(192), new FluidStack[]{Materials.Gas.getGas(480), Materials.Naphtha.getFluid(60), Materials.HeavyFuel.getFluid(20), new FluidStack(ItemList.sToluene,20)}, null, 16, 120); - GT_Values.RA.addUniversalDistillationRecipe(Materials.CrackedHeavyFuel.getFluid(192), new FluidStack[]{Materials.Gas.getGas(160), Materials.Naphtha.getFluid(20), Materials.LightFuel.getFluid(80), new FluidStack(ItemList.sToluene,60), Materials.Lubricant.getFluid(10)}, GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.HydratedCoal, 1L), 16, 120); + GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), new FluidStack(ItemList.sOilExtraHeavy,10), Materials.OilHeavy.getFluid(15), 16, 24, false); - - GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), Materials.HeavyFuel.getFluid(10L), new FluidStack(ItemList.sToluene,4), 16, 24, false); - GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), new FluidStack(ItemList.sToluene,30), Materials.LightFuel.getFluid(30L), 16, 24, false); GT_Values.RA.addFluidSolidifierRecipe(ItemList.Shape_Mold_Ball.get(0L, new Object[0]), new FluidStack(ItemList.sToluene,100), ItemList.GelledToluene.get(1, new Object[0]), 100, 16); GT_Values.RA.addChemicalRecipe(ItemList.GelledToluene.get(4, new Object[0]), GT_Values.NI, Materials.SulfuricAcid.getFluid(250), GT_Values.NF, new ItemStack(Blocks.tnt,1), 200, 24); GT_Values.RA.addChemicalRecipe(new ItemStack(Items.sugar), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Plastic, 1), new FluidStack(ItemList.sToluene, 133), GT_Values.NF, ItemList.GelledToluene.get(2, new Object[0]), 140, 192); - GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.cell,Materials.SulfuricAcid, 1), null, null, null, new FluidStack(ItemList.sNitricAcid,1000), new FluidStack(ItemList.sNitrationMixture, 1000), ItemList.Cell_Empty.get(1, new Object[0]), 480, 2); - GT_Values.RA.addChemicalRecipe(ItemList.GelledToluene.get(4, new Object[0]), GT_Values.NI, new FluidStack(ItemList.sNitrationMixture,250), GT_Values.NF, GT_ModHandler.getIC2Item("industrialTnt", 1L), 80, 480); + GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.cell,Materials.SulfuricAcid, 1), null, null, null, new FluidStack(ItemList.sNitricAcid,1000), new FluidStack(ItemList.sNitrationMixture, 2000), ItemList.Cell_Empty.get(1, new Object[0]), 480, 2); + GT_Values.RA.addChemicalRecipe(ItemList.GelledToluene.get(4, new Object[0]), GT_Values.NI, new FluidStack(ItemList.sNitrationMixture,500), Materials.DilutedSulfuricAcid.getFluid(500), GT_ModHandler.getIC2Item("industrialTnt", 1L), 80, 480); GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2L), GT_Values.NI, Materials.NatruralGas.getGas(16000), Materials.Gas.getGas(16000), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HydricSulfide, 1L), Materials.Empty.getCells(1), 160); GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.NatruralGas, 16L), GT_Values.NI, Materials.Hydrogen.getGas(2000), Materials.HydricSulfide.getGas(1000), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Gas, 16L), 160); @@ -678,14 +666,9 @@ if(Loader.isModLoaded("Railcraft")){ GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2L), GT_Values.NI, Materials.SulfuricHeavyFuel.getFluid(8000), Materials.HeavyFuel.getFluid(8000), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HydricSulfide, 1L), Materials.Empty.getCells(1), 160); GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SulfuricHeavyFuel, 8L), GT_Values.NI, Materials.Hydrogen.getGas(2000), Materials.HydricSulfide.getGas(1000), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HeavyFuel, 8L), 160); - GT_Values.RA.addCentrifugeRecipe(ItemList.Cell_Empty.get(4, new Object[0]), null, Materials.Gas.getGas(8000), Materials.Methane.getGas(4000), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LPG, 4), null, null, null, null, null, new int[]{10000}, 200, 5); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Saltpeter, 1L), null, Materials.Naphtha.getFluid(576), Materials.Polycaprolactam.getMolten(1296), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Potassium, 1), 640); GT_Values.RA.addWiremillRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Polycaprolactam, 1L), new ItemStack(Items.string, 32), 80, 48); - GT_Values.RA.addCrackingRecipe(Materials.LightFuel.getFluid(128), Materials.CrackedLightFuel.getFluid(192), 16, 320); - GT_Values.RA.addCrackingRecipe(Materials.HeavyFuel.getFluid(128), Materials.CrackedHeavyFuel.getFluid(192), 16, 320); - GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 4L, new Object[0]), Materials.Creosote.getFluid(3L), Materials.Lubricant.getFluid(1L), 16, 24, false); GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 4L, new Object[0]), Materials.SeedOil.getFluid(4L), Materials.Lubricant.getFluid(1L), 16, 24, false); GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 4L, new Object[0]), Materials.FishOil.getFluid(3L), Materials.Lubricant.getFluid(1L), 16, 24, false); @@ -811,10 +794,7 @@ if(Loader.isModLoaded("Railcraft")){ GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.wheatyhopsjuice", 50), FluidRegistry.getFluidStack("potion.beer", 25), 1024, false); GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.hopsjuice", 50), FluidRegistry.getFluidStack("potion.darkbeer", 25), 1024, false); GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.darkbeer", 50), FluidRegistry.getFluidStack("potion.dragonblood", 10), 2048, true); - GT_Values.RA.addFermentingRecipe(Materials.Biomass.getFluid(125), Materials.FermentedBiomass.getFluid(100), 640, false); - GT_Values.RA.addFermentingRecipe(new FluidStack(FluidRegistry.getFluid("ic2biomass"), 125), Materials.FermentedBiomass.getFluid(100), 640, false); - GT_Values.RA.addFermentingRecipe(Materials.FermentedBiomass.getFluid(50), FluidRegistry.getFluidStack("potion.vinegar", 25), 2048, false); GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.beer", 75), FluidRegistry.getFluidStack("potion.vinegar", 50), 2048, false); GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.cider", 75), FluidRegistry.getFluidStack("potion.vinegar", 50), 2048, false); GT_Values.RA.addFermentingRecipe(FluidRegistry.getFluidStack("potion.goldencider", 75), FluidRegistry.getFluidStack("potion.vinegar", 50), 2048, true); @@ -932,6 +912,10 @@ if(Loader.isModLoaded("Railcraft")){ GT_ModHandler.addCompressionRecipe(new ItemStack(Items.quartz, 4, 0), new ItemStack(Blocks.quartz_block, 1, 0)); GT_ModHandler.addCompressionRecipe(new ItemStack(Items.wheat, 9, 0), new ItemStack(Blocks.hay_block, 1, 0)); GT_ModHandler.addCompressionRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glowstone, 4L), new ItemStack(Blocks.glowstone, 1)); + GT_ModHandler.addCompressionRecipe(Materials.Fireclay.getDust(1), ItemList.CompressedFireclay.get(1)); + + GameRegistry.addSmelting(ItemList.CompressedFireclay.get(1, new Object[0]), ItemList.Firebrick.get(1, new Object[0]), 0); + GT_Values.RA.addCutterRecipe(GT_OreDictUnificator.get(OrePrefixes.block, Materials.Graphite, 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Graphite, 9L), GT_Values.NI, 500, 48); GT_ModHandler.removeFurnaceSmelting(GT_OreDictUnificator.get(OrePrefixes.ore, Materials.Graphite, 1L)); GT_ModHandler.addSmeltingRecipe(GT_OreDictUnificator.get(OrePrefixes.ore, Materials.Graphite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Graphite, 1L)); @@ -953,24 +937,33 @@ if(Loader.isModLoaded("Railcraft")){ GT_ModHandler.addPulverisationRecipe(new ItemStack(Items.item_frame, 1, 32767), new ItemStack(Items.leather, 1), GT_OreDictUnificator.getDust(Materials.Wood, OrePrefixes.stick.mMaterialAmount * 4L), 95, false); GT_ModHandler.addPulverisationRecipe(new ItemStack(Items.bow, 1, 0), new ItemStack(Items.string, 3), GT_OreDictUnificator.getDust(Materials.Wood, OrePrefixes.stick.mMaterialAmount * 3L), 95, false); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.stonebrick, 1, 0), new ItemStack(Blocks.stonebrick, 1, 2), 16, 10); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.stone, 1, 0), new ItemStack(Blocks.cobblestone, 1, 0), 16, 10); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.cobblestone, 1, 0), new ItemStack(Blocks.gravel, 1, 0), 16, 10); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.gravel, 1, 0), new ItemStack(Blocks.sand, 1, 0), 16, 10); + GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.stonebrick, 1, 0), new ItemStack(Blocks.stonebrick, 1, 2), 10, 16); + GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.stone, 1, 0), new ItemStack(Blocks.cobblestone, 1, 0), 10, 16); + GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.cobblestone, 1, 0), new ItemStack(Blocks.gravel, 1, 0), 10, 16); + GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.gravel, 1, 0), new ItemStack(Blocks.sand, 1, 0), 10, 16); GT_Values.RA.addSifterRecipe(new ItemStack(Blocks.gravel, 1, 0), new ItemStack[] {new ItemStack(Items.flint, 1, 0)}, new int[] {10000}, 800, 16); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.sandstone, 1, 32767), new ItemStack(Blocks.sand, 1, 0), 16, 10); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.ice, 1, 0), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ice, 1L), 16, 10); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.packed_ice, 1, 0), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ice, 2L), 16, 10); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.hardened_clay, 1, 0), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Clay, 1L), 16, 10); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.stained_hardened_clay, 1, 32767), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Clay, 1L), 16, 10); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.brick_block, 1, 0), new ItemStack(Items.brick, 3, 0), 16, 10); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.nether_brick, 1, 0), new ItemStack(Items.netherbrick, 3, 0), 16, 10); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.stained_glass, 1, 32767), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glass, 1L), 16, 10); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.glass, 1, 32767), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glass, 1L), 16, 10); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.stained_glass_pane, 1, 32767), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3L), 16, 10); - GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.glass_pane, 1, 32767), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3L), 16, 10); - - GT_Values.RA.addForgeHammerRecipe(GT_ModHandler.getModItem("HardcoreEnderExpansion", "endium_ore", 1), GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Endium, 1), 16, 10); + GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.sandstone, 1, 32767), new ItemStack(Blocks.sand, 1, 0), 10, 16); + GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.ice, 1, 0), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ice, 1L), 10, 16); + GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.packed_ice, 1, 0), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ice, 2L), 10, 16); + GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.hardened_clay, 1, 0), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Clay, 1L), 10, 16); + GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.stained_hardened_clay, 1, 32767), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Clay, 1L), 10, 16); + GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.brick_block, 1, 0), new ItemStack(Items.brick, 3, 0), 10, 16); + GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.nether_brick, 1, 0), new ItemStack(Items.netherbrick, 3, 0), 10, 16); + GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.stained_glass, 1, 32767), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glass, 1L), 10, 16); + GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.glass, 1, 32767), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Glass, 1L), 10, 16); + GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.stained_glass_pane, 1, 32767), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3L), 10, 16); + GT_Values.RA.addForgeHammerRecipe(new ItemStack(Blocks.glass_pane, 1, 32767), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Glass, 3L), 10, 16); + GT_Values.RA.addForgeHammerRecipe(Materials.Brick.getIngots(1), Materials.Brick.getDustSmall(1), 10, 16); + GT_Values.RA.addForgeHammerRecipe(ItemList.Firebrick.get(1, new Object[0]), Materials.Brick.getDust(1), 10, 16); + GT_Values.RA.addForgeHammerRecipe(ItemList.Casing_Firebricks.get(1, new Object[0]), ItemList.Firebrick.get(3, new Object[0]), 10, 16); + + GT_ModHandler.addPulverisationRecipe(Materials.Brick.getIngots(1), Materials.Brick.getDustSmall(1)); + GT_ModHandler.addPulverisationRecipe(ItemList.CompressedFireclay.get(1, new Object[0]), Materials.Fireclay.getDustSmall(1)); + GT_ModHandler.addPulverisationRecipe(ItemList.Firebrick.get(1, new Object[0]), Materials.Brick.getDust(1)); + GT_ModHandler.addPulverisationRecipe(ItemList.Casing_Firebricks.get(1, new Object[0]), Materials.Brick.getDust(4)); + GT_ModHandler.addPulverisationRecipe(ItemList.Machine_Bricked_BlastFurnace.get(1, new Object[0]), Materials.Brick.getDust(8), Materials.Iron.getDust(1), true); + + GT_Values.RA.addForgeHammerRecipe(GT_ModHandler.getModItem("HardcoreEnderExpansion", "endium_ore", 1), GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Endium, 1), 10, 16); GT_ModHandler.addPulverisationRecipe(GT_ModHandler.getModItem("HardcoreEnderExpansion", "endium_ore", 1), GT_OreDictUnificator.get(OrePrefixes.crushed, Materials.Endium, 2), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Endstone, 1), 50, GT_Values.NI, 0, true); GT_OreDictUnificator.set(OrePrefixes.ingot, Materials.Endium, GT_ModHandler.getModItem("HardcoreEnderExpansion", "endium_ingot", 1), true, true); @@ -990,11 +983,11 @@ if(Loader.isModLoaded("Railcraft")){ GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Iron, 1L), GT_OreDictUnificator.get(OrePrefixes.gem, Materials.EnderPearl, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.PhasedIron, 1L), null, Materials.PulsatingIron.mBlastFurnaceTemp / 10, 120, Materials.PulsatingIron.mBlastFurnaceTemp); GT_Values.RA.addAlloySmelterRecipe(new ItemStack(Blocks.soul_sand), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Gold, 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Soularium, 1L), 400, 24); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tungsten, 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.TungstenSteel, 2L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.DarkAsh, 1L), (int) Math.max(Materials.TungstenSteel.getMass() / 80L, 1L) * Materials.TungstenSteel.mBlastFurnaceTemp, 480, Materials.TungstenSteel.mBlastFurnaceTemp); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tungsten, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.TungstenCarbide, 1L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.Ash, 2L), (int) Math.max(Materials.TungstenCarbide.getMass() / 40L, 1L) * Materials.TungstenCarbide.mBlastFurnaceTemp, 480, Materials.TungstenCarbide.mBlastFurnaceTemp); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Vanadium, 3L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Gallium, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.VanadiumGallium, 4L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.DarkAsh, 2L), (int) Math.max(Materials.VanadiumGallium.getMass() / 40L, 1L) * Materials.VanadiumGallium.mBlastFurnaceTemp, 480, Materials.VanadiumGallium.mBlastFurnaceTemp); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Niobium, 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Titanium, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.NiobiumTitanium, 2L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.DarkAsh, 1L), (int) Math.max(Materials.NiobiumTitanium.getMass() / 80L, 1L) * Materials.NiobiumTitanium.mBlastFurnaceTemp, 480, Materials.NiobiumTitanium.mBlastFurnaceTemp); - GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Nickel, 4L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Chrome, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.Nichrome, 5L), GT_OreDictUnificator.get(OrePrefixes.dustSmall, Materials.DarkAsh, 2L), (int) Math.max(Materials.Nichrome.getMass() / 32L, 1L) * Materials.Nichrome.mBlastFurnaceTemp, 480, Materials.Nichrome.mBlastFurnaceTemp); + GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tungsten, 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Steel, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.TungstenSteel, 2L), GT_Values.NI, (int) Math.max(Materials.TungstenSteel.getMass() / 80L, 1L) * Materials.TungstenSteel.mBlastFurnaceTemp, 480, Materials.TungstenSteel.mBlastFurnaceTemp); + GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tungsten, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.TungstenCarbide, 2L), GT_Values.NI, (int) Math.max(Materials.TungstenCarbide.getMass() / 40L, 1L) * Materials.TungstenCarbide.mBlastFurnaceTemp, 480, Materials.TungstenCarbide.mBlastFurnaceTemp); + GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Vanadium, 3L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Gallium, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.VanadiumGallium, 4L), GT_Values.NI, (int) Math.max(Materials.VanadiumGallium.getMass() / 40L, 1L) * Materials.VanadiumGallium.mBlastFurnaceTemp, 480, Materials.VanadiumGallium.mBlastFurnaceTemp); + GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Niobium, 1L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Titanium, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.NiobiumTitanium, 2L), GT_Values.NI, (int) Math.max(Materials.NiobiumTitanium.getMass() / 80L, 1L) * Materials.NiobiumTitanium.mBlastFurnaceTemp, 480, Materials.NiobiumTitanium.mBlastFurnaceTemp); + GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Nickel, 4L), GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Chrome, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.ingotHot, Materials.Nichrome, 5L), GT_Values.NI, (int) Math.max(Materials.Nichrome.getMass() / 32L, 1L) * Materials.Nichrome.mBlastFurnaceTemp, 480, Materials.Nichrome.mBlastFurnaceTemp); GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Ruby, 1L), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Aluminium, 3L), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L), 400, 100, 1200); GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.gem, Materials.Ruby, 1L), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Aluminium, 3L), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L), 320, 100, 1200); GT_Values.RA.addBlastRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.GreenSapphire, 1L), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.nugget, Materials.Aluminium, 3L), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.DarkAsh, 1L), 400, 100, 1200); @@ -1097,8 +1090,8 @@ if(Loader.isModLoaded("Railcraft")){ GT_Values.RA.addFuel(GT_ModHandler.getModItem("ThaumicTinkerer", "kamiResource", 1L, 6), null, 720, 5); GT_Values.RA.addFuel(GT_ModHandler.getModItem("ThaumicTinkerer", "kamiResource", 1L, 7), null, 720, 5); - GT_Values.RA.addElectrolyzerRecipe(GT_Values.NI, ItemList.Cell_Empty.get(1L, new Object[0]), Materials.Water.getFluid(3000L), Materials.Hydrogen.getGas(2000L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 1500, 30); - GT_Values.RA.addElectrolyzerRecipe(GT_Values.NI, ItemList.Cell_Empty.get(1L, new Object[0]), GT_ModHandler.getDistilledWater(3000L), Materials.Hydrogen.getGas(2000L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 1500, 30); + GT_Values.RA.addElectrolyzerRecipe(GT_Values.NI, ItemList.Cell_Empty.get(1L, new Object[0]), Materials.Water.getFluid(3000L), Materials.Hydrogen.getGas(2000L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 2000, 30); + GT_Values.RA.addElectrolyzerRecipe(GT_Values.NI, ItemList.Cell_Empty.get(1L, new Object[0]), GT_ModHandler.getDistilledWater(3000L), Materials.Hydrogen.getGas(2000L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 2000, 30); GT_Values.RA.addElectrolyzerRecipe(GT_ModHandler.getIC2Item("electrolyzedWaterCell", 3L), 0, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 2L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 30, 30); GT_Values.RA.addElectrolyzerRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Water, 1L), 0, GT_ModHandler.getIC2Item("electrolyzedWaterCell", 1L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, 490, 30); GT_Values.RA.addElectrolyzerRecipe(ItemList.Dye_Bonemeal.get(3L, new Object[0]), 0, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, 98, 26); @@ -1119,14 +1112,6 @@ if(Loader.isModLoaded("Railcraft")){ GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uraninite, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Magnesium, 1L), GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Uranium, 1L), 1000); GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcium, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L), Materials.Oxygen.getGas(3000L), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Calcite, 5L), 500); GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L), GT_Values.NI, Materials.Hydrogen.getGas(4000L), Materials.Methane.getGas(1000L), GT_Values.NI, 200); - //TODO implement realistic recipe for Sodium Persulfate - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), Materials.Oxygen.getGas(4000L), Materials.SodiumPersulfate.getFluid(6000L), GT_Values.NI, 8000); - //TODO implement realistic recipe for Nitroglycerin - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Nitrogen, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L), Materials.Water.getFluid(2000L), Materials.Glyceryl.getFluid(4000L), ItemList.Cell_Empty.get(1L, new Object[0]), 2700); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Fuel, 1L), GT_Values.NI, Materials.Glyceryl.getFluid(250L), Materials.NitroFuel.getFluid(1000L), ItemList.Cell_Empty.get(1L, new Object[0]), 250); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Glyceryl, 1L), GT_Values.NI, Materials.Fuel.getFluid(4000L), Materials.NitroFuel.getFluid(4000L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LightFuel, 1L), GT_Values.NI, Materials.Glyceryl.getFluid(250L), Materials.NitroFuel.getFluid(1250L), ItemList.Cell_Empty.get(1L, new Object[0]), 250); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Glyceryl, 1L), GT_Values.NI, Materials.LightFuel.getFluid(4000L), Materials.NitroFuel.getFluid(5000L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000); GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Oxygen, 1L), GT_Values.NI, Materials.Hydrogen.getGas(2000L), GT_ModHandler.getDistilledWater(1000L), ItemList.Cell_Empty.get(1L, new Object[0]), 10); GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 1L), GT_Values.NI, Materials.Oxygen.getGas(500L), GT_ModHandler.getDistilledWater(500L), ItemList.Cell_Empty.get(1L, new Object[0]), 5); GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Tin, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Saltpeter, 1L), Materials.Glass.getMolten(864L), GT_Values.NF, GT_ModHandler.getModItem("Railcraft", "tile.railcraft.glass", 6L), 50); @@ -1645,10 +1630,16 @@ if(Loader.isModLoaded("Railcraft")){ addRecipesApril2017ChemistryUpdate(); if (GT_Mod.gregtechproxy.mReenableSimplifiedChemicalRecipes) { addSimplifiedChemicalRecipes(); + } else { + GT_Values.RA.addChemicalRecipe(Materials.Sodium.getDust(2), Materials.Sulfur.getDust(1), Materials.SodiumSulfide.getDust(1), 60); + GT_Values.RA.addChemicalRecipe(Materials.HydricSulfide.getCells(1), GT_Values.NI, Materials.Water.getFluid(1000), Materials.DilutedSulfuricAcid.getFluid(750), Materials.Empty.getCells(1), 60); + GT_Values.RA.addChemicalRecipe(Materials.Water.getCells(1), GT_Values.NI, Materials.HydricSulfide.getGas(1000), Materials.DilutedSulfuricAcid.getFluid(750), Materials.Empty.getCells(1), 60); } GT_Values.RA.addAutoclaveRecipe(Materials.SiliconDioxide.getDust(1), Materials.Water.getFluid(200L), Materials.Quartzite.getGems(1), 750, 2000, 24); GT_Values.RA.addAutoclaveRecipe(Materials.SiliconDioxide.getDust(1), GT_ModHandler.getDistilledWater(200L), Materials.Quartzite.getGems(1), 1000, 1500, 24); + addRecipesMay2017OilRefining(); + addPrimitiveBlastFurnaceRecipes(); } public void addProcess(ItemStack tCrop, Materials aMaterial, int chance, boolean aMainOutput) { @@ -1692,42 +1683,6 @@ if(Loader.isModLoaded("Railcraft")){ } private void run2(){ - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.golden_apple, 1, 1), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(9216L), new ItemStack(Items.gold_ingot, 64), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 9216, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.golden_apple, 1, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), new ItemStack(Items.gold_ingot, 7), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 9216, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.golden_carrot, 1, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), new ItemStack(Items.gold_nugget, 6), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 9216, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.speckled_melon, 1, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), new ItemStack(Items.gold_nugget, 6), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 9216, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.mushroom_stew, 16, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), new ItemStack(Items.bowl, 16, 0), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.apple, 32, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.bread, 64, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.porkchop, 12, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.cooked_porkchop, 16, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.beef, 12, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.cooked_beef, 16, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.fish, 12, 32767), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.cooked_fished, 16, 32767), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.chicken, 12, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.cooked_chicken, 16, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.melon, 64, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Blocks.pumpkin, 16, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.rotten_flesh, 16, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.spider_eye, 32, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.carrot, 16, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(ItemList.Food_Raw_Potato.get(16L, new Object[0]), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(ItemList.Food_Poisonous_Potato.get(12L, new Object[0]), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(ItemList.Food_Baked_Potato.get(24L, new Object[0]), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.cookie, 64, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.cake, 8, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Blocks.brown_mushroom_block, 12, 32767), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Blocks.red_mushroom_block, 12, 32767), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Blocks.brown_mushroom, 32, 32767), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Blocks.red_mushroom, 32, 32767), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.nether_wart, 32, 32767), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(GT_ModHandler.getIC2Item("terraWart", 16L), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(GT_ModHandler.getModItem("TwilightForest", "item.meefRaw", 12L, 32767), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(GT_ModHandler.getModItem("TwilightForest", "item.meefSteak", 16L, 32767), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(GT_ModHandler.getModItem("TwilightForest", "item.venisonRaw", 12L, 32767), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(GT_ModHandler.getModItem("TwilightForest", "item.venisonCooked", 16L, 32767), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(1152L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); - GT_Values.RA.addCentrifugeRecipe(new ItemStack(Blocks.sand, 1, 1), GT_Values.NI, GT_Values.NF, GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Iron, 1L), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Diamond, 1L), new ItemStack(Blocks.sand, 1), GT_Values.NI, GT_Values.NI, GT_Values.NI, new int[]{5000, 100, 5000}, 50, 30); GT_Values.RA.addCentrifugeRecipe(new ItemStack(Blocks.dirt, 1, 32767), GT_Values.NI, GT_Values.NF, GT_Values.NF, ItemList.IC2_Plantball.get(1L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Clay, 1L), new ItemStack(Blocks.sand, 1), GT_Values.NI, GT_Values.NI, GT_Values.NI, new int[]{1250, 5000, 5000}, 250, 30); GT_Values.RA.addCentrifugeRecipe(new ItemStack(Blocks.grass, 1, 32767), GT_Values.NI, GT_Values.NF, GT_Values.NF, ItemList.IC2_Plantball.get(1L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.dustTiny, Materials.Clay, 1L), new ItemStack(Blocks.sand, 1), GT_Values.NI, GT_Values.NI, GT_Values.NI, new int[]{2500, 5000, 5000}, 250, 30); @@ -1831,7 +1786,7 @@ if(Loader.isModLoaded("Railcraft")){ GT_OreDictUnificator.get(OrePrefixes.ring, Materials.HSSG, 4L), GT_OreDictUnificator.get(OrePrefixes.round, Materials.HSSG, 32L), GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.YttriumBariumCuprate, 2L)}, new FluidStack[]{ - Materials.Rubber.getMolten(1440), + Materials.StyreneButadieneRubber.getMolten(1440), Materials.Lubricant.getFluid(250)}, ItemList.Conveyor_Module_LuV.get(1, new Object[]{}), 600, 6000); GT_Values.RA.addAssemblylineRecipe(ItemList.Conveyor_Module_LuV.get(1, new Object(){}),144000,new ItemStack[]{ @@ -1840,7 +1795,7 @@ if(Loader.isModLoaded("Railcraft")){ GT_OreDictUnificator.get(OrePrefixes.ring, Materials.HSSE, 4L), GT_OreDictUnificator.get(OrePrefixes.round, Materials.HSSE, 32L), GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.VanadiumGallium, 2L)}, new FluidStack[]{ - Materials.Rubber.getMolten(2880), + Materials.StyreneButadieneRubber.getMolten(2880), Materials.Lubricant.getFluid(750)}, ItemList.Conveyor_Module_ZPM.get(1, new Object[]{}), 600, 24000); GT_Values.RA.addAssemblylineRecipe(ItemList.Conveyor_Module_ZPM.get(1, new Object(){}),288000,new ItemStack[]{ @@ -1849,7 +1804,7 @@ if(Loader.isModLoaded("Railcraft")){ GT_OreDictUnificator.get(OrePrefixes.ring, Materials.Neutronium, 4L), GT_OreDictUnificator.get(OrePrefixes.round, Materials.Neutronium, 32L), GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.NiobiumTitanium, 2L)}, new FluidStack[]{ - Materials.Rubber.getMolten(2880), + Materials.StyreneButadieneRubber.getMolten(2880), Materials.Lubricant.getFluid(2000)}, ItemList.Conveyor_Module_UV.get(1, new Object[]{}), 600, 100000); // Piston @@ -1900,9 +1855,9 @@ if(Loader.isModLoaded("Railcraft")){ GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.HSSG, 3L), ItemList.Electric_Motor_LuV.get(2, new Object(){}), ItemList.Electric_Piston_LuV.get(1, new Object(){}), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Master, 2L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Elite, 2L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 6L), + ItemList.Circuit_Masterquantumcomputer.get(2, null), + ItemList.Circuit_Quantumcomputer.get(2, null), + ItemList.Circuit_Nanoprocessor.get(6,null), GT_OreDictUnificator.get(OrePrefixes.cableGt01, Materials.YttriumBariumCuprate, 6L)}, new FluidStack[]{ Materials.SolderingAlloy.getMolten(576), Materials.Lubricant.getFluid(250)}, ItemList.Robot_Arm_LuV.get(1, new Object[]{}), 600, 6000); @@ -1913,9 +1868,9 @@ if(Loader.isModLoaded("Railcraft")){ GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.HSSE, 3L), ItemList.Electric_Motor_ZPM.get(2, new Object(){}), ItemList.Electric_Piston_ZPM.get(1, new Object(){}), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Master, 4L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Elite, 4L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 12L), + ItemList.Circuit_Masterquantumcomputer.get(4, null), + ItemList.Circuit_Quantumcomputer.get(4, null), + ItemList.Circuit_Nanoprocessor.get(12,null), GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.VanadiumGallium, 6L)}, new FluidStack[]{ Materials.SolderingAlloy.getMolten(1152), Materials.Lubricant.getFluid(750)}, ItemList.Robot_Arm_ZPM.get(1, new Object[]{}), 600, 24000); @@ -1926,9 +1881,9 @@ if(Loader.isModLoaded("Railcraft")){ GT_OreDictUnificator.get(OrePrefixes.gearGtSmall, Materials.Neutronium, 3L), ItemList.Electric_Motor_UV.get(2, new Object(){}), ItemList.Electric_Piston_UV.get(1, new Object(){}), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Master, 8L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Elite, 8L), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 24L), + ItemList.Circuit_Crystalcomputer.get(8, null), + ItemList.Circuit_Crystalprocessor.get(8, null), + ItemList.Circuit_Nanoprocessor.get(24,null), GT_OreDictUnificator.get(OrePrefixes.cableGt04, Materials.NiobiumTitanium, 6L)}, new FluidStack[]{ Materials.SolderingAlloy.getMolten(2304), Materials.Lubricant.getFluid(2000)}, ItemList.Robot_Arm_UV.get(1, new Object[]{}), 600, 100000); @@ -1941,7 +1896,7 @@ if(Loader.isModLoaded("Railcraft")){ ItemList.Emitter_IV.get(1, new Object(){}), ItemList.Emitter_EV.get(2, new Object(){}), ItemList.Emitter_HV.get(4, new Object(){}), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 7L), + ItemList.Circuit_Nanoprocessor.get(7,null), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Electrum, 64L), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Electrum, 64L), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Electrum, 64L), @@ -1954,7 +1909,7 @@ if(Loader.isModLoaded("Railcraft")){ ItemList.Emitter_LuV.get(1, new Object(){}), ItemList.Emitter_IV.get(2, new Object(){}), ItemList.Emitter_EV.get(4, new Object(){}), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Elite, 7L), + ItemList.Circuit_Quantumcomputer.get(7, null), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Platinum, 64L), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Platinum, 64L), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Platinum, 64L), @@ -1967,7 +1922,7 @@ if(Loader.isModLoaded("Railcraft")){ ItemList.Emitter_ZPM.get(1, new Object(){}), ItemList.Emitter_LuV.get(2, new Object(){}), ItemList.Emitter_IV.get(4, new Object(){}), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Master, 7L), + ItemList.Circuit_Crystalcomputer.get(7, null), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Osmiridium, 64L), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Osmiridium, 64L), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Osmiridium, 64L), @@ -1982,7 +1937,7 @@ if(Loader.isModLoaded("Railcraft")){ ItemList.Sensor_IV.get(1, new Object(){}), ItemList.Sensor_EV.get(2, new Object(){}), ItemList.Sensor_HV.get(4, new Object(){}), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Advanced, 7L), + ItemList.Circuit_Nanoprocessor.get(7,null), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Electrum, 64L), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Electrum, 64L), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Electrum, 64L), @@ -1995,7 +1950,7 @@ if(Loader.isModLoaded("Railcraft")){ ItemList.Sensor_LuV.get(1, new Object(){}), ItemList.Sensor_IV.get(2, new Object(){}), ItemList.Sensor_EV.get(4, new Object(){}), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Elite, 7L), + ItemList.Circuit_Quantumcomputer.get(7, null), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Platinum, 64L), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Platinum, 64L), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Platinum, 64L), @@ -2008,7 +1963,7 @@ if(Loader.isModLoaded("Railcraft")){ ItemList.Sensor_ZPM.get(1, new Object(){}), ItemList.Sensor_LuV.get(2, new Object(){}), ItemList.Sensor_IV.get(4, new Object(){}), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Master, 7L), + ItemList.Circuit_Crystalcomputer.get(7, null), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Osmiridium, 64L), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Osmiridium, 64L), GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Osmiridium, 64L), @@ -2023,7 +1978,7 @@ if(Loader.isModLoaded("Railcraft")){ GT_OreDictUnificator.get(OrePrefixes.plate, Materials.HSSG, 6L), ItemList.QuantumStar.get(1, new Object(){}), ItemList.Emitter_LuV.get(4, new Object(){}), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Master, 8L), + ItemList.Circuit_Masterquantumcomputer.get(8, null), GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Osmium, 64L), GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Osmium, 64L), GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Osmium, 64L), @@ -2037,7 +1992,7 @@ if(Loader.isModLoaded("Railcraft")){ GT_OreDictUnificator.get(OrePrefixes.plate, Materials.HSSE, 6L), ItemList.QuantumStar.get(4, new Object(){}), ItemList.Emitter_ZPM.get(4, new Object(){}), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Master, 16L), + ItemList.Circuit_Crystalcomputer.get(16, null), GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Osmium, 64L), GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Osmium, 64L), GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Osmium, 64L), @@ -2055,7 +2010,7 @@ if(Loader.isModLoaded("Railcraft")){ GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium, 6L), ItemList.Gravistar.get(1, new Object(){}), ItemList.Emitter_UV.get(4, new Object(){}), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Master, 64L), + ItemList.Circuit_Neuroprocessor.get(64, null), GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Osmium, 64L), GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Osmium, 64L), GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Osmium, 64L), @@ -2072,7 +2027,7 @@ if(Loader.isModLoaded("Railcraft")){ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item("quantumHelmet", 1L)); GT_Values.RA.addAssemblylineRecipe(GT_ModHandler.getIC2Item("nanoHelmet", 1L, GT_Values.W), 144000, new ItemStack[]{ GT_ModHandler.getIC2Item("nanoHelmet", 1L, GT_Values.W), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Master, 2), + ItemList.Circuit_Masterquantumcomputer.get(2, null), GT_OreDictUnificator.get(OrePrefixes.plateAlloy, Materials.Iridium, 4), ItemList.Energy_LapotronicOrb.get(1, new Object[]{}), ItemList.Sensor_IV.get(1, new Object[]{}), @@ -2086,7 +2041,7 @@ if(Loader.isModLoaded("Railcraft")){ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item("quantumBodyarmor", 1L)); GT_Values.RA.addAssemblylineRecipe(Loader.isModLoaded("GraviSuite") ? GT_ModHandler.getModItem("GraviSuite", "advNanoChestPlate", 1, GT_Values.W) : GT_ModHandler.getIC2Item("nanoBodyarmor", 1L, GT_Values.W), 144000, new ItemStack[]{ Loader.isModLoaded("GraviSuite") ? GT_ModHandler.getModItem("GraviSuite", "advNanoChestPlate", 1, GT_Values.W) : GT_ModHandler.getIC2Item("nanoBodyarmor", 1L, GT_Values.W), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Master, 2), + ItemList.Circuit_Masterquantumcomputer.get(2, null), GT_OreDictUnificator.get(OrePrefixes.plateAlloy, Materials.Iridium, 6), ItemList.Energy_LapotronicOrb.get(1, new Object[]{}), ItemList.Field_Generator_HV.get(2, new Object[]{}), @@ -2100,7 +2055,7 @@ if(Loader.isModLoaded("Railcraft")){ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item("quantumLeggings", 1L)); GT_Values.RA.addAssemblylineRecipe(GT_ModHandler.getIC2Item("nanoLeggings", 1L, GT_Values.W), 144000, new ItemStack[]{ GT_ModHandler.getIC2Item("nanoLeggings", 1L, GT_Values.W), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Master, 2), + ItemList.Circuit_Masterquantumcomputer.get(2, null), GT_OreDictUnificator.get(OrePrefixes.plateAlloy, Materials.Iridium, 6), ItemList.Energy_LapotronicOrb.get(1, new Object[]{}), ItemList.Field_Generator_HV.get(2, new Object[]{}), @@ -2114,7 +2069,7 @@ if(Loader.isModLoaded("Railcraft")){ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item("quantumBoots", 1L)); GT_Values.RA.addAssemblylineRecipe(GT_ModHandler.getIC2Item("nanoBoots", 1L, GT_Values.W), 144000, new ItemStack[]{ GT_ModHandler.getIC2Item("nanoBoots", 1L, GT_Values.W), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Master, 2), + ItemList.Circuit_Masterquantumcomputer.get(2, null), GT_OreDictUnificator.get(OrePrefixes.plateAlloy, Materials.Iridium, 4), ItemList.Energy_LapotronicOrb.get(1, new Object[]{}), ItemList.Field_Generator_HV.get(1, new Object[]{}), @@ -2130,7 +2085,7 @@ if(Loader.isModLoaded("Railcraft")){ GT_Values.RA.addAssemblylineRecipe(GT_ModHandler.getIC2Item("quantumBodyarmor", 1L, GT_Values.W), 144000, new ItemStack[]{ GT_ModHandler.getIC2Item("quantumBodyarmor", 1L, GT_Values.W), GT_ModHandler.getModItem("GraviSuite", "ultimateLappack", 1, GT_Values.W), - GT_OreDictUnificator.get(OrePrefixes.circuit, Materials.Ultimate, 2), + ItemList.Circuit_Ultimatecrystalcomputer.get(2, null), GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Duranium, 6), ItemList.Energy_LapotronicOrb2.get(1, new Object[]{}), ItemList.Field_Generator_IV.get(2, new Object[]{}), @@ -2533,15 +2488,15 @@ if(Loader.isModLoaded("Railcraft")){ * Instrumental materials are not mentioned here. */ private void addRecipesApril2017ChemistryUpdate(){ - GT_Values.RA.addElectrolyzerRecipe(GT_Values.NI, GT_Values.NI, Materials.SaltWater.getFluid(1000), Materials.SodiumHydroxide.getFluid(1000), Materials.Chlorine.getCells(1), Materials.Hydrogen.getCells(1), GT_Values.NI, GT_Values.NI,GT_Values.NI, GT_Values.NI, null, 30, 600); + GT_Values.RA.addElectrolyzerRecipe(Materials.Empty.getCells(1), GT_Values.NI, Materials.SaltWater.getFluid(1000), Materials.Chlorine.getGas(1000), Materials.SodiumHydroxide.getDust(1), Materials.Hydrogen.getCells(1), GT_Values.NI, GT_Values.NI,GT_Values.NI, GT_Values.NI, null, 30, 600); GT_Values.RA.addChemicalRecipe(Materials.Potassium.getDust(1), Materials.Oxygen.getCells(3), Materials.Nitrogen.getGas(1000), GT_Values.NF, Materials.Saltpeter.getDust(1), Materials.Empty.getCells(3), 180); GT_Values.RA.addChemicalRecipe(Materials.Potassium.getDust(1), Materials.Nitrogen.getCells(1), Materials.Oxygen.getGas(3000), GT_Values.NF, Materials.Saltpeter.getDust(1), Materials.Empty.getCells(1), 180); GT_Values.RA.addMixerRecipe(Materials.Salt.getDust(1), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.Water.getFluid(1000), Materials.SaltWater.getFluid(1000), GT_Values.NI, 40, 8); - GT_Recipe.GT_Recipe_Map.sDistilleryRecipes.addRecipe(true, new ItemStack[]{GT_Utility.getIntegratedCircuit(1)}, new ItemStack[]{Materials.Salt.getDust(1)}, null, null, new FluidStack[]{Materials.SaltWater.getFluid(1000)}, new FluidStack[]{GT_ModHandler.getDistilledWater(1000)}, 1000, 16, 0); + GT_Values.RA.addDistilleryRecipe(1, Materials.SaltWater.getFluid(1000), GT_ModHandler.getDistilledWater(1000), Materials.Salt.getDust(1), 3200, 16, false); - GT_Values.RA.addUniversalDistillationRecipe(FluidRegistry.getFluidStack("potion.vinegar", 40), new FluidStack[]{Materials.Water.getFluid(35), Materials.AceticAcid.getFluid(5)}, GT_Values.NI, 20, 64); + GT_Values.RA.addUniversalDistillationRecipe(FluidRegistry.getFluidStack("potion.vinegar", 40), new FluidStack[]{Materials.AceticAcid.getFluid(5), Materials.Water.getFluid(35)}, GT_Values.NI, 20, 64); GT_Values.RA.addMixerRecipe(Materials.Calcite.getDust(1), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.AceticAcid.getFluid(2000), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.dust,Materials.CalciumAcetate, 3), 240, 16); GT_Values.RA.addMixerRecipe(Materials.Calcium.getDust(1), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.AceticAcid.getFluid(2000), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.dust,Materials.CalciumAcetate, 3), 80, 16); GameRegistry.addSmelting(Materials.CalciumAcetate.getCells(1), Materials.Acetone.getCells(1), 0); @@ -2571,24 +2526,43 @@ if(Loader.isModLoaded("Railcraft")){ GT_Values.RA.addChemicalRecipe(Materials.Methanol.getCells(1), GT_Values.NI, Materials.CarbonMonoxide.getGas(1000), Materials.AceticAcid.getFluid(1000), Materials.Empty.getCells(1), 300); GT_Values.RA.addChemicalRecipe(Materials.CarbonMonoxide.getCells(1), GT_Values.NI, Materials.Methanol.getFluid(1000), Materials.AceticAcid.getFluid(1000), Materials.Empty.getCells(1), 300); - GT_Values.RA.addChemicalRecipe(Materials.Ethylene.getCells(1), GT_Values.NI, Materials.Oxygen.getGas(2000), Materials.AceticAcid.getFluid(1000), Materials.Empty.getCells(1), 100); - GT_Values.RA.addChemicalRecipe(Materials.Oxygen.getCells(2), GT_Values.NI, Materials.Ethylene.getGas(1000), Materials.AceticAcid.getFluid(1000), Materials.Empty.getCells(2), 100); - GT_Values.RA.addChemicalRecipe(Materials.Oxygen.getCells(2), Materials.Ethylene.getCells(1), GT_Values.NF, Materials.AceticAcid.getFluid(1000), Materials.Empty.getCells(3), 100); + GT_Values.RA.addChemicalRecipe(Materials.Ethylene.getCells(1), GT_Utility.getIntegratedCircuit(10), Materials.Oxygen.getGas(2000), Materials.AceticAcid.getFluid(1000), Materials.Empty.getCells(1), 100); + GT_Values.RA.addChemicalRecipe(Materials.Oxygen.getCells(2), GT_Utility.getIntegratedCircuit(10), Materials.Ethylene.getGas(1000), Materials.AceticAcid.getFluid(1000), Materials.Empty.getCells(2), 100); + GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Oxygen.getCells(2), Materials.Ethylene.getCells(1), GT_Values.NF, Materials.AceticAcid.getFluid(1000), Materials.Empty.getCells(3), GT_Values.NI, 100, 30); - GT_Values.RA.addDistillationTowerRecipe(Materials.FermentedBiomass.getFluid(500), new FluidStack[]{Materials.Methane.getGas(700), Materials.Methanol.getFluid(25), Materials.Ethanol.getFluid(100), Materials.AceticAcid.getFluid(15), Materials.Water.getFluid(185)}, GT_Values.NI, 40, 360); - GT_Values.RA.addDistilleryRecipe(1, Materials.FermentedBiomass.getFluid(100), Materials.Methane.getGas(140), 160, 8, false); - GT_Values.RA.addDistilleryRecipe(2, Materials.FermentedBiomass.getFluid(100), Materials.Methanol.getFluid(5), 160, 8, false); - GT_Values.RA.addDistilleryRecipe(3, Materials.FermentedBiomass.getFluid(100), Materials.Ethanol.getFluid(20), 160, 8, false); - GT_Values.RA.addDistilleryRecipe(4, Materials.FermentedBiomass.getFluid(100), Materials.AceticAcid.getFluid(3), 160, 8, false); - GT_Values.RA.addDistilleryRecipe(5, Materials.FermentedBiomass.getFluid(100), Materials.Water.getFluid(37), 160, 8, false); + GT_Values.RA.addFermentingRecipe(Materials.Biomass.getFluid(100), Materials.FermentedBiomass.getFluid(100), 150, false); + GT_Values.RA.addFermentingRecipe(new FluidStack(FluidRegistry.getFluid("ic2biomass"), 100), Materials.FermentedBiomass.getFluid(100), 150, false); + + GT_Values.RA.addDistillationTowerRecipe(Materials.FermentedBiomass.getFluid(1000), new FluidStack[]{ + Materials.AceticAcid.getFluid(25), Materials.Water.getFluid(375), Materials.Ethanol.getFluid(150), + Materials.Methanol.getFluid(150),Materials.Ammonia.getGas(50), Materials.CarbonDioxide.getGas(400), + Materials.Methane.getGas(600)}, ItemList.IC2_Fertilizer.get(1, new Object[0]), 75, 360); + GT_Values.RA.addDistilleryRecipe(1, Materials.FermentedBiomass.getFluid(1000), Materials.AceticAcid.getFluid(25), ItemList.IC2_Fertilizer.get(1, new Object[0]), 1500, 8, false); + GT_Values.RA.addDistilleryRecipe(2, Materials.FermentedBiomass.getFluid(1000), Materials.Water.getFluid(375), ItemList.IC2_Fertilizer.get(1, new Object[0]), 1500, 8, false); + GT_Values.RA.addDistilleryRecipe(3, Materials.FermentedBiomass.getFluid(1000), Materials.Ethanol.getFluid(150), ItemList.IC2_Fertilizer.get(1, new Object[0]), 1500, 8, false); + GT_Values.RA.addDistilleryRecipe(4, Materials.FermentedBiomass.getFluid(1000), Materials.Methanol.getFluid(150), ItemList.IC2_Fertilizer.get(1, new Object[0]), 1500, 8, false); + GT_Values.RA.addDistilleryRecipe(5, Materials.FermentedBiomass.getFluid(1000), Materials.Ammonia.getGas(50), ItemList.IC2_Fertilizer.get(1, new Object[0]), 1500, 8, false); + GT_Values.RA.addDistilleryRecipe(6, Materials.FermentedBiomass.getFluid(1000), Materials.CarbonDioxide.getGas(400), ItemList.IC2_Fertilizer.get(1, new Object[0]), 1500, 8, false); + GT_Values.RA.addDistilleryRecipe(7, Materials.FermentedBiomass.getFluid(1000), Materials.Methane.getGas(600), ItemList.IC2_Fertilizer.get(1, new Object[0]), 1500, 8, false); + + GT_Values.RA.addDistilleryRecipe(17, Materials.FermentedBiomass.getFluid(1000), new FluidStack(FluidRegistry.getFluid("ic2biogas"), 1800), ItemList.IC2_Fertilizer.get(1, new Object[0]), 1600, 8, false); + GT_Values.RA.addDistilleryRecipe(1, Materials.Methane.getGas(1000), new FluidStack(FluidRegistry.getFluid("ic2biogas"), 3000), GT_Values.NI, 160, 8, false); GT_Values.RA.addPyrolyseRecipe(Materials.Sugar.getDust(23), GT_Values.NF, 1, Materials.Charcoal.getDust(12), Materials.Water.getFluid(1500), 320, 64); GT_Values.RA.addPyrolyseRecipe(Materials.Sugar.getDust(23), Materials.Nitrogen.getGas(500), 2, Materials.Charcoal.getDust(12), Materials.Water.getFluid(1500), 160, 96); - GT_Values.RA.addUniversalDistillationRecipe(Materials.CharcoalByproducts.getGas(800), new FluidStack[]{Materials.WoodGas.getGas(200), Materials.WoodVinegar.getFluid(400), Materials.WoodTar.getFluid(200)}, Materials.Charcoal.getDustSmall(1), 64, 64); - GT_Values.RA.addUniversalDistillationRecipe(Materials.WoodGas.getGas(200), new FluidStack[]{Materials.CarbonDioxide.getGas(95),Materials.CarbonMonoxide.getGas(65), Materials.Methane.getGas(30), Materials.Hydrogen.getGas(5), Materials.Ethylene.getGas(5)}, GT_Values.NI, 16, 64); - GT_Values.RA.addUniversalDistillationRecipe(Materials.WoodVinegar.getFluid(200), new FluidStack[]{Materials.Water.getFluid(100), Materials.Methanol.getFluid(60), Materials.AceticAcid.getFluid(15), Materials.Acetone.getFluid(15), Materials.MethylAcetate.getFluid(10)}, GT_Values.NI, 16, 64); - GT_Values.RA.addUniversalDistillationRecipe(Materials.WoodTar.getFluid(200), new FluidStack[]{Materials.Creosote.getFluid(100), Materials.Benzene.getFluid(30), Materials.Phenol.getFluid(30), new FluidStack(ItemList.sToluene, 20), Materials.Glue.getFluid(20)}, GT_Values.NI, 16, 64); + GT_Values.RA.addUniversalDistillationRecipe(Materials.CharcoalByproducts.getGas(1000), + new FluidStack[]{Materials.WoodTar.getFluid(250), Materials.WoodVinegar.getFluid(500), Materials.WoodGas.getGas(250)}, + Materials.Charcoal.getDustSmall(1), 200, 64); + GT_Values.RA.addUniversalDistillationRecipe(Materials.WoodGas.getGas(1000), + new FluidStack[]{Materials.CarbonDioxide.getGas(490), Materials.Ethylene.getGas(20), Materials.Methane.getGas(130), Materials.CarbonMonoxide.getGas(340), Materials.Hydrogen.getGas(20)}, + GT_Values.NI, 200, 64); + GT_Values.RA.addUniversalDistillationRecipe(Materials.WoodVinegar.getFluid(1000), + new FluidStack[]{Materials.AceticAcid.getFluid(100), Materials.Water.getFluid(500), Materials.Ethanol.getFluid(10), Materials.Methanol.getFluid(300), Materials.Acetone.getFluid(50), Materials.MethylAcetate.getFluid(10)}, + GT_Values.NI, 200, 64); + GT_Values.RA.addUniversalDistillationRecipe(Materials.WoodTar.getFluid(1000), + new FluidStack[]{Materials.Creosote.getFluid(500), Materials.Phenol.getFluid(75), Materials.Benzene.getFluid(350), Materials.Toluene.getFluid(75)}, + GT_Values.NI, 200, 64); GT_Values.RA.addChemicalRecipe(Materials.Ethylene.getCells(1), Materials.AceticAcid.getCells(1), Materials.Oxygen.getGas(1000), Materials.VinylAcetate.getFluid(1000),Materials.Water.getCells(1), Materials.Empty.getCells(1), 180); GT_Values.RA.addChemicalRecipe(Materials.AceticAcid.getCells(1),Materials.Oxygen.getCells(1), Materials.Ethylene.getGas(1000), Materials.VinylAcetate.getFluid(1000),Materials.Water.getCells(1), Materials.Empty.getCells(1), 180); @@ -2596,14 +2570,11 @@ if(Loader.isModLoaded("Railcraft")){ GT_Values.RA.addDefaultPolymerizationRecipes(Materials.VinylAcetate.mFluid, Materials.PolyvinylAcetate.mFluid); - GT_Values.RA.addDistilleryRecipe(1, Materials.Naphtha.getFluid(100), Materials.Ethylene.getGas(50), 40, 16, false); - GT_Values.RA.addDistilleryRecipe(2, Materials.Naphtha.getFluid(100), Materials.Propene.getGas(25), 40, 16, false); - - GT_Values.RA.addChemicalRecipe(Materials.Ethanol.getCells(1), GT_Values.NI, Materials.SulfuricAcid.getFluid(1000), Materials.Ethylene.getGas(1000), Materials.Water.getCells(1), 1200, 120); + GT_Values.RA.addChemicalRecipe(Materials.Ethanol.getCells(1), GT_Values.NI, Materials.SulfuricAcid.getFluid(1000), Materials.Ethylene.getGas(1000), Materials.DilutedSulfuricAcid.getCells(1), 1200, 120); GT_Values.RA.addDefaultPolymerizationRecipes(Materials.Ethylene.mGas, Materials.Plastic.mStandardMoltenFluid); - GT_Values.RA.addChemicalRecipe(Materials.Sodium.getDust(1), Materials.Empty.getCells(1), Materials.Water.getFluid(1000), Materials.SodiumHydroxide.getFluid(1000), Materials.Hydrogen.getCells(1), 40, 8); + GT_Values.RA.addChemicalRecipe(Materials.Sodium.getDust(1), GT_Values.NI, Materials.Water.getFluid(1000), Materials.Hydrogen.getGas(1000), Materials.SodiumHydroxide.getDust(1), 40, 8); GT_Values.RA.addChemicalRecipe(Materials.Chlorine.getCells(1), GT_Utility.getIntegratedCircuit(1), Materials.Hydrogen.getGas(1000), Materials.HydrochloricAcid.getFluid(1000), Materials.Empty.getCells(1), 60, 8); GT_Values.RA.addChemicalRecipe(Materials.Hydrogen.getCells(1), GT_Utility.getIntegratedCircuit(1), Materials.Chlorine.getGas(1000), Materials.HydrochloricAcid.getFluid(1000), Materials.Empty.getCells(1), 60, 8); @@ -2615,9 +2586,8 @@ if(Loader.isModLoaded("Railcraft")){ GT_Values.RA.addChemicalRecipe(Materials.Water.getCells(10), Materials.Mercury.getCells(1), Materials.Chlorine.getGas(10000), Materials.HypochlorousAcid.getFluid(10000), Materials.Empty.getCells(11), 600, 8); GT_Values.RA.addChemicalRecipe(Materials.Chlorine.getCells(1), Materials.Water.getCells(1), Materials.Mercury.getFluid(100), Materials.HypochlorousAcid.getFluid(1000), Materials.Empty.getCells(2), 60, 8); - GT_Values.RA.addChemicalRecipe(Materials.AllylChloride.getCells(1), Materials.HypochlorousAcid.getCells(1), Materials.SodiumHydroxide.getFluid(1000), Materials.Epichlorohydrin.getFluid(1000), Materials.SaltWater.getCells(1), Materials.Empty.getCells(1), 480); - GT_Values.RA.addChemicalRecipe(Materials.HypochlorousAcid.getCells(1), Materials.SodiumHydroxide.getCells(1), Materials.AllylChloride.getFluid(1000), Materials.Epichlorohydrin.getFluid(1000), Materials.SaltWater.getCells(1), Materials.Empty.getCells(1), 480); - GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getCells(1), Materials.AllylChloride.getCells(1), Materials.HypochlorousAcid.getFluid(1000), Materials.Epichlorohydrin.getFluid(1000), Materials.SaltWater.getCells(1), Materials.Empty.getCells(1), 480); + GT_Values.RA.addChemicalRecipe(Materials.HypochlorousAcid.getCells(1), Materials.SodiumHydroxide.getDust(1), Materials.AllylChloride.getFluid(1000), Materials.Epichlorohydrin.getFluid(1000), Materials.SaltWater.getCells(1), 480); + GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getDust(1), Materials.AllylChloride.getCells(1), Materials.HypochlorousAcid.getFluid(1000), Materials.Epichlorohydrin.getFluid(1000), Materials.SaltWater.getCells(1), 480); GT_Values.RA.addDistilleryRecipe(2, Materials.HeavyFuel.getFluid(100), Materials.Benzene.getFluid(40), 160, 24, false); GT_Values.RA.addDistilleryRecipe(3, Materials.HeavyFuel.getFluid(100), Materials.Phenol.getFluid(25), 160, 24, false); @@ -2633,9 +2603,8 @@ if(Loader.isModLoaded("Railcraft")){ GT_Values.RA.addChemicalRecipe(Materials.Cumene.getCells(1), GT_Values.NI, Materials.Oxygen.getGas(1000), Materials.Acetone.getFluid(1000), Materials.Phenol.getCells(1), 160); GT_Values.RA.addChemicalRecipe(Materials.Oxygen.getCells(1), GT_Values.NI, Materials.Cumene.getFluid(1000),Materials.Phenol.getFluid(1000), Materials.Acetone.getCells(1), 160); - GT_Values.RA.addChemicalRecipe(Materials.BisphenolA.getCells(1), Materials.SodiumHydroxide.getCells(1), Materials.Epichlorohydrin.getFluid(1000), Materials.Epoxid.getMolten(1000), Materials.SaltWater.getCells(1), Materials.Empty.getCells(1), 200); - GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getCells(1), Materials.Epichlorohydrin.getCells(1), Materials.BisphenolA.getFluid(1000), Materials.Epoxid.getMolten(1000), Materials.SaltWater.getCells(1), Materials.Empty.getCells(1), 200); - GT_Values.RA.addChemicalRecipe(Materials.Epichlorohydrin.getCells(1), Materials.BisphenolA.getCells(1), Materials.SodiumHydroxide.getFluid(1000), Materials.Epoxid.getMolten(1000), Materials.SaltWater.getCells(1), Materials.Empty.getCells(1), 200); + GT_Values.RA.addChemicalRecipe(Materials.BisphenolA.getCells(1), Materials.SodiumHydroxide.getDust(1), Materials.Epichlorohydrin.getFluid(1000), Materials.Epoxid.getMolten(1000), Materials.SaltWater.getCells(1), 200); + GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getDust(1), Materials.Epichlorohydrin.getCells(1), Materials.BisphenolA.getFluid(1000), Materials.Epoxid.getMolten(1000), Materials.SaltWater.getCells(1), 200); GT_Values.RA.addChemicalRecipe(Materials.Acetone.getCells(1), Materials.Phenol.getCells(2), Materials.HydrochloricAcid.getFluid(1000), Materials.BisphenolA.getFluid(1000), Materials.Water.getCells(1), Materials.Empty.getCells(2), 160); GT_Values.RA.addChemicalRecipe(Materials.HydrochloricAcid.getCells(1), Materials.Acetone.getCells(1), Materials.Phenol.getFluid(2000), Materials.BisphenolA.getFluid(1000), Materials.Water.getCells(1), Materials.Empty.getCells(1), 160); @@ -2657,9 +2626,11 @@ if(Loader.isModLoaded("Railcraft")){ GT_Values.RA.addChemicalRecipe(Materials.Silicon.getDust(1), GT_Values.NI, Materials.Chloromethane.getGas(2000), Materials.Dimethyldichlorosilane.getFluid(1000), GT_Values.NI, 240, 96); - GT_Values.RA.addChemicalRecipe(Materials.Dimethyldichlorosilane.getCells(1), Materials.Empty.getCells(1), Materials.Water.getFluid(1000), Materials.Silicone.getMolten(1000), Materials.HydrochloricAcid.getCells(2), 240, 96); - GT_Values.RA.addChemicalRecipe(Materials.Water.getCells(1), Materials.Empty.getCells(1), Materials.Dimethyldichlorosilane.getFluid(1000), Materials.Silicone.getMolten(1000), Materials.HydrochloricAcid.getCells(2), 240, 96); - GT_Values.RA.addChemicalRecipe(Materials.Dimethyldichlorosilane.getCells(1), Materials.Water.getCells(1), GT_Values.NF, Materials.Silicone.getMolten(1000), Materials.HydrochloricAcid.getCells(2), 240, 96); + GT_Values.RA.addChemicalRecipe(Materials.Dimethyldichlorosilane.getCells(1), GT_Values.NI, Materials.Water.getFluid(1000), Materials.HydrochloricAcid.getFluid(2000), Materials.Polydimethylsiloxane.getDust(3), Materials.Empty.getCells(1), 240, 96); + GT_Values.RA.addChemicalRecipe(Materials.Water.getCells(1), GT_Values.NI, Materials.Dimethyldichlorosilane.getFluid(1000), Materials.HydrochloricAcid.getFluid(2000), Materials.Polydimethylsiloxane.getDust(3), Materials.Empty.getCells(1), 240, 96); + GT_Values.RA.addChemicalRecipe(Materials.Dimethyldichlorosilane.getCells(1), Materials.Water.getCells(1), GT_Values.NF, Materials.HydrochloricAcid.getFluid(2000), Materials.Polydimethylsiloxane.getDust(3), Materials.Empty.getCells(2), 240, 96); + + GT_Values.RA.addChemicalRecipe(Materials.Polydimethylsiloxane.getDust(9), Materials.Sulfur.getDust(1), GT_Values.NF, Materials.Silicone.getMolten(1296), GT_Values.NI, 600); GT_Values.RA.addChemicalRecipe(Materials.Nitrogen.getCells(1), GT_Values.NI, Materials.Hydrogen.getGas(3000), Materials.Ammonia.getGas(1000), Materials.Empty.getCells(1), 640, 384); GT_Values.RA.addChemicalRecipe(Materials.Hydrogen.getCells(3), GT_Values.NI, Materials.Nitrogen.getGas(1000), Materials.Ammonia.getGas(1000), Materials.Empty.getCells(3), 640, 384); @@ -2695,7 +2666,7 @@ if(Loader.isModLoaded("Railcraft")){ GT_Values.RA.addChemicalRecipe(Materials.Sulfur.getDust(1), GT_Values.NI, Materials.Hydrogen.getGas(2000), Materials.HydricSulfide.getGas(1000), GT_Values.NI, 60, 8); - GT_Values.RA.addChemicalRecipe(Materials.Sulfur.getDust(1), GT_Values.NI, Materials.Oxygen.getGas(2000), Materials.SulfurDioxide.getGas(1000), GT_Values.NI, 60, 8); + GT_Values.RA.addChemicalRecipe(Materials.Sulfur.getDust(1), GT_Utility.getIntegratedCircuit(2), Materials.Oxygen.getGas(2000), Materials.SulfurDioxide.getGas(1000), GT_Values.NI, 60, 8); GT_Values.RA.addChemicalRecipe(Materials.HydricSulfide.getCells(1), GT_Values.NI, Materials.Oxygen.getGas(3000), Materials.SulfurDioxide.getGas(1000), Materials.Water.getCells(1), 120); GT_Values.RA.addChemicalRecipe(Materials.Oxygen.getCells(3), GT_Values.NI, Materials.HydricSulfide.getGas(1000), Materials.Water.getFluid(1000), Materials.SulfurDioxide.getCells(1), 120); @@ -2707,6 +2678,8 @@ if(Loader.isModLoaded("Railcraft")){ GT_Values.RA.addChemicalRecipe(Materials.Water.getCells(1), GT_Values.NI, Materials.SulfurTrioxide.getGas(1000), Materials.SulfuricAcid.getFluid(1000), Materials.Empty.getCells(1), 320, 8); + GT_Values.RA.addUniversalDistillationRecipe(Materials.DilutedSulfuricAcid.getFluid(3000), new FluidStack[]{Materials.SulfuricAcid.getFluid(2000), Materials.Water.getFluid(1000)}, GT_Values.NI, 600, 120); + GT_Values.RA.addChemicalRecipe(Materials.Chlorine.getCells(2), GT_Values.NI, Materials.Ethylene.getGas(1000), Materials.VinylChloride.getGas(1000), Materials.HydrochloricAcid.getCells(1), Materials.Empty.getCells(1), 160); GT_Values.RA.addChemicalRecipe(Materials.Ethylene.getCells(1), GT_Values.NI, Materials.Chlorine.getGas(2000), Materials.HydrochloricAcid.getFluid(1000), Materials.VinylChloride.getCells(1), 160); @@ -2716,8 +2689,63 @@ if(Loader.isModLoaded("Railcraft")){ GT_Values.RA.addDefaultPolymerizationRecipes(Materials.VinylChloride.mGas, Materials.PolyvinylChloride.mStandardMoltenFluid); - GT_Values.RA.addMixerRecipe(Materials.Sugar.getDust(4), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.SulfuricAcid.getFluid(250), GT_Values.NF, Materials.Charcoal.getGems(1), 1200, 2); - GT_Values.RA.addMixerRecipe(Materials.Wood.getDust(4), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.SulfuricAcid.getFluid(250), GT_Values.NF, Materials.Charcoal.getGems(1), 1200, 2); + GT_Values.RA.addMixerRecipe(Materials.Sugar.getDust(4), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.SulfuricAcid.getFluid(1000), Materials.DilutedSulfuricAcid.getFluid(1000), Materials.Charcoal.getGems(1), 1200, 2); + GT_Values.RA.addMixerRecipe(Materials.Wood.getDust(4), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.SulfuricAcid.getFluid(1000), Materials.DilutedSulfuricAcid.getFluid(1000), Materials.Charcoal.getGems(1), 1200, 2); + + GT_Values.RA.addUniversalDistillationRecipe(Materials.Acetone.getFluid(1000), new FluidStack[]{Materials.Ethenone.getGas(1000), Materials.Methane.getGas(1000)}, GT_Values.NI, 80, 640); + GameRegistry.addSmelting(Materials.Acetone.getCells(1), Materials.Ethenone.getCells(1), 0); + GT_Values.RA.addChemicalRecipe(Materials.AceticAcid.getCells(1), GT_Values.NI, Materials.SulfuricAcid.getFluid(1000), Materials.DilutedSulfuricAcid.getFluid(1000), Materials.Ethenone.getCells(1), 160, 120); + GT_Values.RA.addChemicalRecipe(Materials.SulfuricAcid.getCells(1), GT_Values.NI, Materials.AceticAcid.getFluid(1000), Materials.Ethenone.getGas(1000), Materials.DilutedSulfuricAcid.getCells(1), 160, 120); + + GT_Values.RA.addChemicalRecipe(Materials.Ethenone.getCells(1), Materials.Empty.getCells(1), Materials.NitricAcid.getFluid(8000), Materials.Water.getFluid(9000), Materials.Tetranitromethane.getCells(2), 480, 16); + GT_Values.RA.addChemicalRecipe(Materials.NitricAcid.getCells(8), Materials.Empty.getCells(1), Materials.Ethenone.getGas(1000), Materials.Tetranitromethane.getFluid(2000), Materials.Water.getCells(9), 480, 16); + GT_Values.RA.addChemicalRecipe(Materials.Ethenone.getCells(1), Materials.NitricAcid.getCells(8), GT_Values.NF, Materials.Tetranitromethane.getFluid(2000), Materials.Water.getCells(9), 480, 16); + + GT_Values.RA.addMixerRecipe(Materials.LightFuel.getCells(1), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.Tetranitromethane.getFluid(20), Materials.NitroFuel.getFluid(1000), Materials.Empty.getCells(1), 80, 8); + GT_Values.RA.addMixerRecipe(Materials.Fuel.getCells(2), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.Tetranitromethane.getFluid(20), Materials.NitroFuel.getFluid(1000), Materials.Empty.getCells(2), 80, 8); + GT_Values.RA.addMixerRecipe(Materials.BioDiesel.getCells(4), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.Tetranitromethane.getFluid(60), Materials.NitroFuel.getFluid(3000), Materials.Empty.getCells(4), 80, 8); + + GT_Values.RA.addChemicalRecipe(Materials.Propene.getCells(1), GT_Values.NI, Materials.Ethylene.getGas(1000), Materials.Hydrogen.getGas(2000), Materials.Isoprene.getCells(1), 120); + GT_Values.RA.addChemicalRecipe(Materials.Ethylene.getCells(1), Materials.Empty.getCells(1), Materials.Propene.getGas(1000), Materials.Isoprene.getFluid(1000), Materials.Hydrogen.getCells(2), 120); + GT_Values.RA.addChemicalRecipe(GT_Utility.getIntegratedCircuit(2), Materials.Empty.getCells(1), Materials.Propene.getGas(2000), Materials.Isoprene.getFluid(1000), Materials.Methane.getCells(1), 120); + + GT_Values.RA.addChemicalRecipe(ItemList.Cell_Air.get(2, new Object[0]), GT_Utility.getIntegratedCircuit(1), Materials.Isoprene.getFluid(144), GT_Values.NF, Materials.RawRubber.getDust(1), Materials.Empty.getCells(2), 160); + GT_Values.RA.addChemicalRecipe(Materials.Oxygen.getCells(4), GT_Utility.getIntegratedCircuit(1), Materials.Isoprene.getFluid(288), GT_Values.NF, Materials.RawRubber.getDust(3), Materials.Empty.getCells(4), 320); + GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(2)}, new FluidStack[]{Materials.Isoprene.getFluid(1728), Materials.Air.getGas(12000), Materials.Titaniumtetrachloride.getFluid(80)}, null, new ItemStack[]{Materials.RawRubber.getDust(18)}, 640, 30); + GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(2)}, new FluidStack[]{Materials.Isoprene.getFluid(1728), Materials.Oxygen.getGas(12000), Materials.Titaniumtetrachloride.getFluid(80)}, null, new ItemStack[]{Materials.RawRubber.getDust(24)}, 640, 30); + + GT_Values.RA.addChemicalRecipe(Materials.Benzene.getCells(1), GT_Values.NI, Materials.Ethylene.getGas(1000), Materials.Hydrogen.getGas(2000), Materials.Styrene.getCells(1), 120); + GT_Values.RA.addChemicalRecipe(Materials.Ethylene.getCells(1), Materials.Empty.getCells(1), Materials.Benzene.getFluid(1000), Materials.Styrene.getFluid(1000), Materials.Hydrogen.getCells(2), 120); + + GT_Values.RA.addDefaultPolymerizationRecipes(Materials.Styrene.mFluid, Materials.Polystyrene.mStandardMoltenFluid); + + GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(3)}, new FluidStack[]{Materials.Styrene.getFluid(36), Materials.Butadiene.getGas(108), Materials.Air.getGas(2000)}, null, new ItemStack[]{Materials.RawStyreneButadieneRubber.getDust(1)}, 160, 240); + GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(3)}, new FluidStack[]{Materials.Styrene.getFluid(72), Materials.Butadiene.getGas(216), Materials.Oxygen.getGas(4000)}, null, new ItemStack[]{Materials.RawStyreneButadieneRubber.getDust(3)}, 160, 240); + GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(4)}, new FluidStack[]{Materials.Styrene.getFluid(540), Materials.Butadiene.getGas(1620), Materials.Titaniumtetrachloride.getFluid(100), Materials.Air.getGas(15000)}, null, new ItemStack[]{Materials.RawStyreneButadieneRubber.getDust(22), Materials.RawStyreneButadieneRubber.getDustSmall(2)}, 640, 240); + GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(4)}, new FluidStack[]{Materials.Styrene.getFluid(540), Materials.Butadiene.getGas(1620), Materials.Titaniumtetrachloride.getFluid(100), Materials.Oxygen.getGas(15000)}, null, new ItemStack[]{Materials.RawStyreneButadieneRubber.getDust(30)}, 640, 240); + + GT_Values.RA.addChemicalRecipe(Materials.RawStyreneButadieneRubber.getDust(9), Materials.Sulfur.getDust(1), GT_Values.NF, Materials.StyreneButadieneRubber.getMolten(1296), GT_Values.NI, 600); + + GT_Values.RA.addChemicalRecipe(Materials.Benzene.getCells(1), GT_Utility.getIntegratedCircuit(2), Materials.Chlorine.getGas(4000), Materials.HydrochloricAcid.getFluid(2000), Materials.Dichlorobenzene.getCells(1), 240); + GT_Values.RA.addChemicalRecipe(Materials.Chlorine.getCells(4), GT_Utility.getIntegratedCircuit(2), Materials.Benzene.getFluid(1000), Materials.Dichlorobenzene.getFluid(1000), Materials.HydrochloricAcid.getCells(2), Materials.Empty.getCells(2), 240); + + GT_Values.RA.addChemicalRecipe(Materials.SodiumSulfide.getDust(1), GT_Values.NI, Materials.Dichlorobenzene.getFluid(1000), Materials.PolyphenyleneSulfide.getMolten(1000), Materials.Salt.getDust(2), 240, 360); + + GT_Values.RA.addChemicalRecipe(Materials.Salt.getDust(1), GT_Utility.getIntegratedCircuit(1), Materials.SulfuricAcid.getFluid(1000), Materials.HydrochloricAcid.getFluid(1000), Materials.SodiumBisulfate.getDust(1), 60); + GT_Values.RA.addElectrolyzerRecipe(Materials.SodiumBisulfate.getDust(2), Materials.Empty.getCells(2), null, Materials.SodiumPersulfate.getFluid(1000), Materials.Hydrogen.getCells(2), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 600, 30); + + GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getDustTiny(1), Materials.Methanol.getCells(1), Materials.SeedOil.getFluid(6000), Materials.BioDiesel.getFluid(6000), Materials.Glycerol.getCells(1), 600); + GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getDustTiny(1), Materials.SeedOil.getCells(6), Materials.Methanol.getFluid(1000), Materials.Glycerol.getFluid(1000), Materials.BioDiesel.getCells(6), 600); + GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getDustTiny(1), Materials.Methanol.getCells(1), Materials.FishOil.getFluid(6000), Materials.BioDiesel.getFluid(6000), Materials.Glycerol.getCells(1), 600); + GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getDustTiny(1), Materials.FishOil.getCells(6), Materials.Methanol.getFluid(1000), Materials.Glycerol.getFluid(1000), Materials.BioDiesel.getCells(6), 600); + + GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getDustTiny(1), Materials.Ethanol.getCells(1), Materials.SeedOil.getFluid(6000), Materials.BioDiesel.getFluid(6000), Materials.Glycerol.getCells(1), 600); + GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getDustTiny(1), Materials.SeedOil.getCells(6), Materials.Ethanol.getFluid(1000), Materials.Glycerol.getFluid(1000), Materials.BioDiesel.getCells(6), 600); + GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getDustTiny(1), Materials.Ethanol.getCells(1), Materials.FishOil.getFluid(6000), Materials.BioDiesel.getFluid(6000), Materials.Glycerol.getCells(1), 600); + GT_Values.RA.addChemicalRecipe(Materials.SodiumHydroxide.getDustTiny(1), Materials.FishOil.getCells(6), Materials.Ethanol.getFluid(1000), Materials.Glycerol.getFluid(1000), Materials.BioDiesel.getCells(6), 600); + + GT_Values.RA.addChemicalRecipe(Materials.Glycerol.getCells(1), null, Materials.NitrationMixture.getFluid(3000), Materials.DilutedSulfuricAcid.getFluid(3000), Materials.Glyceryl.getCells(1), 180); + GT_Values.RA.addChemicalRecipe(Materials.NitrationMixture.getCells(3), null, Materials.Glycerol.getFluid(1000), Materials.Glyceryl.getFluid(1000), Materials.DilutedSulfuricAcid.getCells(3), 180); } private void addSimplifiedChemicalRecipes() { @@ -2739,10 +2767,77 @@ if(Loader.isModLoaded("Railcraft")){ GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Chlorine, 1L), Materials.LPG.getFluid(432), new FluidStack(ItemList.sEpichlorhydrin, 432), ItemList.Cell_Empty.get(1, new Object[0]), 480, 30); GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Naphtha, 3L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Fluorine, 1L), new FluidStack(ItemList.sEpichlorhydrin, 432), Materials.Polytetrafluoroethylene.getMolten(432), ItemList.Cell_Empty.get(4, new Object[0]), 240, 256); - GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1L), null, new FluidStack(ItemList.sEpichlorhydrin, 144), Materials.Silicone.getMolten(144), null, 240, 96); + GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Silicon, 1L), null, new FluidStack(ItemList.sEpichlorhydrin, 144), Materials.Silicone.getMolten(144), GT_Values.NI, 240, 96); GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.NitrogenDioxide, 1L), GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 3L), Materials.Air.getGas(500), new FluidStack(ItemList.sRocketFuel,3000), ItemList.Cell_Water.get(4, new Object[0]), 1000, 388); + GT_Values.RA.addCentrifugeRecipe(ItemList.Cell_Empty.get(4, new Object[0]), GT_Values.NI, Materials.Gas.getGas(8000), GT_Values.NF, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LPG, 4), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, new int[]{10000}, 200, 5); + + FluidStack tFD = FluidRegistry.getFluidStack("fluiddeath", 10); + if(Loader.isModLoaded("Thaumcraft") && tFD!=null&&tFD.getFluid()!=null && tFD.amount>0){ + GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Lignite,1), ItemList.MSFMixture.get(6, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.LPG.getFluid(1500), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); + GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Charcoal,1), ItemList.MSFMixture.get(4, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.LPG.getFluid(1200), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); + GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Coal,1), ItemList.MSFMixture.get(2, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.LPG.getFluid(750), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); + } + if (Loader.isModLoaded("Railcraft")) { + GT_Values.RA.addMixerRecipe(EnumCube.COKE_BLOCK.getItem(), ItemList.SFMixture.get(1, new Object[]{}), null, null, Materials.LPG.getFluid(375), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); + if (Loader.isModLoaded("Thaumcraft")) { + GT_Values.RA.addMixerRecipe(EnumCube.COKE_BLOCK.getItem(), ItemList.MSFMixture.get(1, new Object[]{}), GT_ModHandler.getModItem("Thaumcraft", "ItemResource", 4), null, Materials.LPG.getFluid(375), null, ItemList.Block_MSSFUEL.get(1, new Object[]{}), 120, 96); + } + } + GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Lignite,1), ItemList.SFMixture.get(6, new Object[]{}), null, null, Materials.LPG.getFluid(1500), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); + GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Charcoal,1), ItemList.SFMixture.get(4, new Object[]{}), null, null, Materials.LPG.getFluid(1200), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); + GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.block,Materials.Coal,1), ItemList.SFMixture.get(2, new Object[]{}), null, null, Materials.LPG.getFluid(750), null, ItemList.Block_SSFUEL.get(1, new Object[]{}), 120, 96); + + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.golden_apple, 1, 1), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(4608L), new ItemStack(Items.gold_ingot, 64), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 9216, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.golden_apple, 1, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), new ItemStack(Items.gold_ingot, 7), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 9216, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.golden_carrot, 1, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), new ItemStack(Items.gold_nugget, 6), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 9216, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.speckled_melon, 1, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), new ItemStack(Items.gold_nugget, 6), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 9216, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.mushroom_stew, 16, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), new ItemStack(Items.bowl, 16, 0), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.apple, 32, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.bread, 64, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.porkchop, 12, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.cooked_porkchop, 16, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.beef, 12, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.cooked_beef, 16, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.fish, 12, 32767), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.cooked_fished, 16, 32767), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.chicken, 12, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.cooked_chicken, 16, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.melon, 64, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Blocks.pumpkin, 16, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.rotten_flesh, 16, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.spider_eye, 32, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.carrot, 16, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(ItemList.Food_Raw_Potato.get(16L, new Object[0]), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(ItemList.Food_Poisonous_Potato.get(12L, new Object[0]), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(ItemList.Food_Baked_Potato.get(24L, new Object[0]), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.cookie, 64, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.cake, 8, 0), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Blocks.brown_mushroom_block, 12, 32767), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Blocks.red_mushroom_block, 12, 32767), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Blocks.brown_mushroom, 32, 32767), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Blocks.red_mushroom, 32, 32767), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(new ItemStack(Items.nether_wart, 32, 32767), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(GT_ModHandler.getIC2Item("terraWart", 16L), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(GT_ModHandler.getModItem("TwilightForest", "item.meefRaw", 12L, 32767), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(GT_ModHandler.getModItem("TwilightForest", "item.meefSteak", 16L, 32767), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(GT_ModHandler.getModItem("TwilightForest", "item.venisonRaw", 12L, 32767), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + GT_Values.RA.addCentrifugeRecipe(GT_ModHandler.getModItem("TwilightForest", "item.venisonCooked", 16L, 32767), GT_Values.NI, GT_Values.NF, Materials.Methane.getGas(576L), GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, GT_Values.NI, null, 4608, 5); + + GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), Materials.HeavyFuel.getFluid(10L), new FluidStack(ItemList.sToluene,4), 16, 24, false); + GT_Values.RA.addDistilleryRecipe(ItemList.Circuit_Integrated.getWithDamage(0L, 1L, new Object[0]), new FluidStack(ItemList.sToluene,30), Materials.LightFuel.getFluid(30L), 16, 24, false); + + GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Fuel, 1L), GT_Values.NI, Materials.Glyceryl.getFluid(250L), Materials.NitroFuel.getFluid(1000L), ItemList.Cell_Empty.get(1L, new Object[0]), 250); + GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Glyceryl, 1L), GT_Values.NI, Materials.Fuel.getFluid(4000L), Materials.NitroFuel.getFluid(4000L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000); + GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LightFuel, 1L), GT_Values.NI, Materials.Glyceryl.getFluid(250L), Materials.NitroFuel.getFluid(1250L), ItemList.Cell_Empty.get(1L, new Object[0]), 250); + GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Glyceryl, 1L), GT_Values.NI, Materials.LightFuel.getFluid(4000L), Materials.NitroFuel.getFluid(5000L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000); + + GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sulfur, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 1L), Materials.Oxygen.getGas(4000L), Materials.SodiumPersulfate.getFluid(6000L), GT_Values.NI, 8000); + GT_Values.RA.addMixerRecipe(Materials.Sodium.getDust(2), Materials.Sulfur.getDust(1), GT_Utility.getIntegratedCircuit(2), null, null, null, Materials.SodiumSulfide.getDust(1), 60, 30); + + GT_Values.RA.addChemicalRecipe(GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Nitrogen, 1L), GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Carbon, 1L), Materials.Water.getFluid(2000L), Materials.Glyceryl.getFluid(4000L), ItemList.Cell_Empty.get(1L, new Object[0]), 2700); + if(!GregTech_API.mIC2Classic){ GT_Values.RA.addDistillationTowerRecipe(new FluidStack(FluidRegistry.getFluid("ic2biomass"), 250), new FluidStack[]{new FluidStack(FluidRegistry.getFluid("ic2biogas"), 8000), Materials.Water.getFluid(125L)}, ItemList.IC2_Fertilizer.get(1, new Object[0]), 250, 480); GT_Values.RA.addFuel(GT_ModHandler.getIC2Item("biogasCell", 1L), null, 32, 1); @@ -2756,6 +2851,233 @@ if(Loader.isModLoaded("Railcraft")){ } + private void addRecipesMay2017OilRefining() { + GT_Values.RA.addUniversalDistillationRecipe(Materials.Gas.getGas(1000), + new FluidStack[]{Materials.Butane.getGas(60), Materials.Propane.getGas(70), Materials.Ethane.getGas(100), Materials.Methane.getGas(750), Materials.Helium.getGas(20)}, + GT_Values.NI, 240, 120); + + GT_Values.RA.addCentrifugeRecipe(null, null, Materials.Propane.getGas(320), Materials.LPG.getFluid(290), null, null, null, null, null, null, null, 20, 5); + GT_Values.RA.addCentrifugeRecipe(null, null, Materials.Butane.getGas(320), Materials.LPG.getFluid(370), null, null, null, null, null, null, null, 20, 5); + + GT_Values.RA.addUniversalDistillationRecipe(Materials.Ethylene.getLightlyHydroCracked(1000), + new FluidStack[]{Materials.Ethane.getGas(1000)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Ethylene.getModeratelyHydroCracked(1000), + new FluidStack[]{Materials.Methane.getGas(2000)}, + null, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Ethylene.getSeverelyHydroCracked(1000), + new FluidStack[]{Materials.Methane.getGas(2000), Materials.Hydrogen.getGas(2000)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Ethylene.getLightlySteamCracked(1000), + new FluidStack[]{Materials.Methane.getGas(1000)}, + Materials.Carbon.getDust(1), 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Ethylene.getModeratelySteamCracked(1000), + new FluidStack[]{Materials.Methane.getGas(1000)}, + Materials.Carbon.getDust(1), 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Ethylene.getSeverelySteamCracked(1000), + new FluidStack[]{Materials.Methane.getGas(1000)}, + Materials.Carbon.getDust(1), 120, 120); + + GT_Values.RA.addUniversalDistillationRecipe(Materials.Ethane.getLightlyHydroCracked(1000), + new FluidStack[]{Materials.Methane.getGas(2000)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Ethane.getModeratelyHydroCracked(1000), + new FluidStack[]{Materials.Methane.getGas(2000), Materials.Hydrogen.getGas(2000)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Ethane.getSeverelyHydroCracked(1000), + new FluidStack[]{Materials.Methane.getGas(2000), Materials.Hydrogen.getGas(4000)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Ethane.getLightlySteamCracked(1000), + new FluidStack[]{Materials.Ethylene.getGas(250), Materials.Methane.getGas(1250)}, + Materials.Carbon.getDustSmall(1), 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Ethane.getModeratelySteamCracked(2000), + new FluidStack[]{Materials.Ethylene.getGas(250), Materials.Methane.getGas(2750)}, + Materials.Carbon.getDustSmall(3), 240, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Ethane.getSeverelySteamCracked(1000), + new FluidStack[]{Materials.Methane.getGas(1500)}, + Materials.Carbon.getDustSmall(2), 120, 120); + + GT_Values.RA.addUniversalDistillationRecipe(Materials.Propene.getLightlyHydroCracked(1000), + new FluidStack[]{Materials.Propane.getGas(500), Materials.Ethylene.getGas(500), Materials.Methane.getGas(500)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Propene.getModeratelyHydroCracked(1000), + new FluidStack[]{Materials.Ethane.getGas(1000), Materials.Methane.getGas(1000)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Propene.getSeverelyHydroCracked(1000), + new FluidStack[]{Materials.Methane.getGas(3000)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Propene.getLightlySteamCracked(1000), + new FluidStack[]{Materials.Ethylene.getGas(1000), Materials.Methane.getGas(500)}, + Materials.Carbon.getDustSmall(2), 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Propene.getModeratelySteamCracked(1000), + new FluidStack[]{Materials.Ethylene.getGas(750), Materials.Methane.getGas(750)}, + Materials.Carbon.getDustSmall(3), 180, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Propene.getSeverelySteamCracked(1000), + new FluidStack[]{Materials.Methane.getGas(1500)}, + Materials.Carbon.getDustSmall(6), 180, 120); + + GT_Values.RA.addUniversalDistillationRecipe(Materials.Propane.getLightlyHydroCracked(1000), + new FluidStack[]{Materials.Ethane.getGas(1000), Materials.Methane.getGas(1000)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Propane.getModeratelyHydroCracked(1000), + new FluidStack[]{Materials.Methane.getGas(3000)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Propane.getSeverelyHydroCracked(1000), + new FluidStack[]{Materials.Methane.getGas(3000), Materials.Hydrogen.getGas(2000)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Propane.getLightlySteamCracked(2000), + new FluidStack[]{Materials.Ethylene.getGas(1500), Materials.Methane.getGas(2500)}, + Materials.Carbon.getDustSmall(1), 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Propane.getModeratelySteamCracked(1000), + new FluidStack[]{Materials.Ethylene.getGas(500), Materials.Methane.getGas(1500)}, + Materials.Carbon.getDustSmall(1), 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Propane.getSeverelySteamCracked(2000), + new FluidStack[]{Materials.Ethylene.getGas(500), Materials.Methane.getGas(3500)}, + Materials.Carbon.getDustSmall(3), 120, 120); + + GT_Values.RA.addUniversalDistillationRecipe(Materials.Butadiene.getLightlyHydroCracked(750), + new FluidStack[]{Materials.Butene.getGas(500), Materials.Ethylene.getGas(500)}, + GT_Values.NI, 90, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Butadiene.getModeratelyHydroCracked(900), + new FluidStack[]{Materials.Butane.getGas(200), Materials.Propene.getGas(200), Materials.Ethane.getGas(400), Materials.Ethylene.getGas(400), Materials.Methane.getGas(200)}, + GT_Values.NI, 108, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Butadiene.getSeverelyHydroCracked(270), + new FluidStack[]{Materials.Propane.getGas(70), Materials.Ethane.getGas(250), Materials.Ethylene.getGas(105), Materials.Methane.getGas(720)}, + GT_Values.NI, 30, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Butadiene.getLightlySteamCracked(2000), + new FluidStack[]{Materials.Propene.getGas(1500), Materials.Ethylene.getGas(375), Materials.Methane.getGas(375)}, + Materials.Carbon.getDustSmall(6), 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Butadiene.getModeratelySteamCracked(2000), + new FluidStack[]{Materials.Propene.getGas(250), Materials.Ethylene.getGas(2250), Materials.Methane.getGas(375)}, + Materials.Carbon.getDustSmall(6), 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Butadiene.getSeverelySteamCracked(2000), + new FluidStack[]{Materials.Propene.getGas(250), Materials.Ethylene.getGas(375), Materials.Methane.getGas(2250)}, + Materials.Carbon.getDust(2), 120, 120); + + GT_Values.RA.addUniversalDistillationRecipe(Materials.Butene.getLightlyHydroCracked(750), + new FluidStack[]{Materials.Butane.getGas(250), Materials.Propene.getGas(250), Materials.Ethane.getGas(250), Materials.Ethylene.getGas(250), Materials.Methane.getGas(250)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Butene.getModeratelyHydroCracked(900), + new FluidStack[]{Materials.Propane.getGas(350), Materials.Ethane.getGas(500), Materials.Ethylene.getGas(300), Materials.Methane.getGas(950)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Butene.getSeverelyHydroCracked(1000), + new FluidStack[]{Materials.Ethane.getGas(1000), Materials.Methane.getGas(2000)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Butene.getLightlySteamCracked(1000), + new FluidStack[]{Materials.Propene.getGas(750), Materials.Ethylene.getGas(500), Materials.Methane.getGas(250)}, + Materials.Carbon.getDustSmall(1), 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Butene.getModeratelySteamCracked(2000), + new FluidStack[]{Materials.Propene.getGas(250), Materials.Ethylene.getGas(1625), Materials.Methane.getGas(500)}, + Materials.Carbon.getDustSmall(2), 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Butene.getSeverelySteamCracked(2000), + new FluidStack[]{Materials.Propene.getGas(250), Materials.Ethylene.getGas(625), Materials.Methane.getGas(3000)}, + Materials.Carbon.getDust(3), 120, 120); + + GT_Values.RA.addUniversalDistillationRecipe(Materials.Butane.getLightlyHydroCracked(750), + new FluidStack[]{Materials.Propane.getGas(500), Materials.Ethane.getGas(500), Materials.Methane.getGas(500)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Butane.getModeratelyHydroCracked(1000), + new FluidStack[]{Materials.Ethane.getGas(1000), Materials.Methane.getGas(2000)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Butane.getSeverelyHydroCracked(1000), + new FluidStack[]{Materials.Methane.getGas(4000)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Butane.getLightlySteamCracked(4000), + new FluidStack[]{Materials.Propane.getGas(3000), Materials.Ethane.getGas(500), Materials.Ethylene.getGas(500), Materials.Methane.getGas(4250)}, + Materials.Carbon.getDustSmall(3), 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Butane.getModeratelySteamCracked(4000), + new FluidStack[]{Materials.Propane.getGas(500), Materials.Ethane.getGas(3000), Materials.Ethylene.getGas(3000), Materials.Methane.getGas(1750)}, + Materials.Carbon.getDustSmall(3), 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Butane.getSeverelySteamCracked(2000), + new FluidStack[]{Materials.Propane.getGas(250), Materials.Ethane.getGas(250), Materials.Ethylene.getGas(250), Materials.Methane.getGas(4000)}, + Materials.Carbon.getDustSmall(9), 120, 120); + + GT_Values.RA.addUniversalDistillationRecipe(Materials.Gas.getLightlyHydroCracked(1000), + new FluidStack[]{Materials.Methane.getGas(1400), Materials.Hydrogen.getGas(1340), Materials.Helium.getGas(20)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Gas.getModeratelyHydroCracked(1000), + new FluidStack[]{Materials.Methane.getGas(1400), Materials.Hydrogen.getGas(3340), Materials.Helium.getGas(20)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Gas.getSeverelyHydroCracked(1000), + new FluidStack[]{Materials.Methane.getGas(1400), Materials.Hydrogen.getGas(4340), Materials.Helium.getGas(20)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Gas.getLightlySteamCracked(2500), + new FluidStack[]{Materials.Propene.getGas(113), Materials.Ethane.getGas(19), Materials.Ethylene.getGas(213), Materials.Methane.getGas(2566), Materials.Helium.getGas(50)}, + Materials.Carbon.getDustTiny(1), 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Gas.getModeratelySteamCracked(1700), + new FluidStack[]{Materials.Propene.getGas(13), Materials.Ethane.getGas(77), Materials.Ethylene.getGas(157), Materials.Methane.getGas(1732), Materials.Helium.getGas(34)}, + Materials.Carbon.getDustTiny(1), 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Gas.getSeverelySteamCracked(800), + new FluidStack[]{Materials.Propene.getGas(6), Materials.Ethane.getGas(6), Materials.Ethylene.getGas(20), Materials.Methane.getGas(914), Materials.Helium.getGas(16)}, + Materials.Carbon.getDustTiny(1), 120, 120); + + GT_Values.RA.addUniversalDistillationRecipe(Materials.Naphtha.getLightlyHydroCracked(1000), + new FluidStack[]{Materials.Butane.getGas(800), Materials.Propane.getGas(300), Materials.Ethane.getGas(250), Materials.Methane.getGas(250)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Naphtha.getModeratelyHydroCracked(1000), + new FluidStack[]{Materials.Butane.getGas(200), Materials.Propane.getGas(1100), Materials.Ethane.getGas(400), Materials.Methane.getGas(400)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Naphtha.getSeverelyHydroCracked(1000), + new FluidStack[]{Materials.Butane.getGas(125), Materials.Propane.getGas(125), Materials.Ethane.getGas(1500), Materials.Methane.getGas(1500)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Naphtha.getLightlySteamCracked(1000), + new FluidStack[]{Materials.HeavyFuel.getFluid(75), Materials.LightFuel.getFluid(150), Materials.Toluene.getFluid(40), Materials.Benzene.getFluid(150), Materials.Butene.getGas(80), + Materials.Butadiene.getGas(60), Materials.Propane.getGas(15), Materials.Propene.getGas(200), Materials.Ethane.getGas(35), Materials.Ethylene.getGas(200), Materials.Methane.getGas(200)}, + Materials.Carbon.getDustTiny(1), 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Naphtha.getModeratelySteamCracked(1000), + new FluidStack[]{Materials.HeavyFuel.getFluid(50), Materials.LightFuel.getFluid(100), Materials.Toluene.getFluid(30), Materials.Benzene.getFluid(125), Materials.Butene.getGas(65), + Materials.Butadiene.getGas(50), Materials.Propane.getGas(30), Materials.Propene.getGas(300), Materials.Ethane.getGas(50), Materials.Ethylene.getGas(350), Materials.Methane.getGas(350)}, + Materials.Carbon.getDustTiny(2), 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.Naphtha.getSeverelySteamCracked(1000), + new FluidStack[]{Materials.HeavyFuel.getFluid(25), Materials.LightFuel.getFluid(50), Materials.Toluene.getFluid(20), Materials.Benzene.getFluid(100), Materials.Butene.getGas(50), + Materials.Butadiene.getGas(40), Materials.Propane.getGas(15), Materials.Propene.getGas(200), Materials.Ethane.getGas(65), Materials.Ethylene.getGas(500), Materials.Methane.getGas(500)}, + Materials.Carbon.getDustTiny(3), 120, 120); + + GT_Values.RA.addUniversalDistillationRecipe(Materials.LightFuel.getLightlyHydroCracked(1000), + new FluidStack[]{Materials.Naphtha.getFluid(800), Materials.Butane.getGas(150), Materials.Propane.getGas(200), Materials.Ethane.getGas(125), Materials.Methane.getGas(125)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.LightFuel.getModeratelyHydroCracked(1000), + new FluidStack[]{Materials.Naphtha.getFluid(500), Materials.Butane.getGas(200), Materials.Propane.getGas(1100), Materials.Ethane.getGas(400), Materials.Methane.getGas(400)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.LightFuel.getSeverelyHydroCracked(1000), + new FluidStack[]{Materials.Naphtha.getFluid(200), Materials.Butane.getGas(125), Materials.Propane.getGas(125), Materials.Ethane.getGas(1500), Materials.Methane.getGas(1500)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.LightFuel.getLightlySteamCracked(1000), + new FluidStack[]{Materials.HeavyFuel.getFluid(150), Materials.Naphtha.getFluid(400), Materials.Toluene.getFluid(40), Materials.Benzene.getFluid(200), Materials.Butene.getGas(75), + Materials.Butadiene.getGas(60), Materials.Propane.getGas(20), Materials.Propene.getGas(250), Materials.Ethane.getGas(10), Materials.Ethylene.getGas(50), Materials.Methane.getGas(50)}, + Materials.Carbon.getDustTiny(1), 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.LightFuel.getModeratelySteamCracked(1000), + new FluidStack[]{Materials.HeavyFuel.getFluid(100), Materials.Naphtha.getFluid(250), Materials.Toluene.getFluid(50), Materials.Benzene.getFluid(300), Materials.Butene.getGas(90), + Materials.Butadiene.getGas(75), Materials.Propane.getGas(35), Materials.Propene.getGas(400), Materials.Ethane.getGas(30), Materials.Ethylene.getGas(150), Materials.Methane.getGas(150)}, + Materials.Carbon.getDustTiny(2), 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.LightFuel.getSeverelySteamCracked(1000), + new FluidStack[]{Materials.HeavyFuel.getFluid(50), Materials.Naphtha.getFluid(100), Materials.Toluene.getFluid(30), Materials.Benzene.getFluid(150), Materials.Butene.getGas(65), + Materials.Butadiene.getGas(50), Materials.Propane.getGas(20), Materials.Propene.getGas(250), Materials.Ethane.getGas(50), Materials.Ethylene.getGas(250), Materials.Methane.getGas(250)}, + Materials.Carbon.getDustTiny(3), 120, 120); + + GT_Values.RA.addUniversalDistillationRecipe(Materials.HeavyFuel.getLightlyHydroCracked(1000), + new FluidStack[]{Materials.LightFuel.getFluid(600), Materials.Naphtha.getFluid(100), Materials.Butane.getGas(100), Materials.Propane.getGas(100), Materials.Ethane.getGas(75), Materials.Methane.getGas(75)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.HeavyFuel.getModeratelyHydroCracked(1000), + new FluidStack[]{Materials.LightFuel.getFluid(400), Materials.Naphtha.getFluid(400), Materials.Butane.getGas(150), Materials.Propane.getGas(150), Materials.Ethane.getGas(100), Materials.Methane.getGas(100)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.HeavyFuel.getSeverelyHydroCracked(1000), + new FluidStack[]{Materials.LightFuel.getFluid(200), Materials.Naphtha.getFluid(250), Materials.Butane.getGas(300), Materials.Propane.getGas(300), Materials.Ethane.getGas(175), Materials.Methane.getGas(175)}, + GT_Values.NI, 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.HeavyFuel.getLightlySteamCracked(1000), + new FluidStack[]{Materials.LightFuel.getFluid(300), Materials.Naphtha.getFluid(50), Materials.Toluene.getFluid(25), Materials.Benzene.getFluid(125), Materials.Butene.getGas(25), + Materials.Butadiene.getGas(15), Materials.Propane.getGas(3), Materials.Propene.getGas(30), Materials.Ethane.getGas(5), Materials.Ethylene.getGas(50), Materials.Methane.getGas(50)}, + Materials.Carbon.getDustTiny(1), 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.HeavyFuel.getModeratelySteamCracked(1000), + new FluidStack[]{Materials.LightFuel.getFluid(200), Materials.Naphtha.getFluid(200), Materials.Toluene.getFluid(40), Materials.Benzene.getFluid(200), Materials.Butene.getGas(40), + Materials.Butadiene.getGas(25), Materials.Propane.getGas(5), Materials.Propene.getGas(50), Materials.Ethane.getGas(7), Materials.Ethylene.getGas(75), Materials.Methane.getGas(75)}, + Materials.Carbon.getDustTiny(2), 120, 120); + GT_Values.RA.addUniversalDistillationRecipe(Materials.HeavyFuel.getSeverelySteamCracked(1000), + new FluidStack[]{Materials.LightFuel.getFluid(100), Materials.Naphtha.getFluid(125), Materials.Toluene.getFluid(80), Materials.Benzene.getFluid(400), Materials.Butene.getGas(80), + Materials.Butadiene.getGas(50), Materials.Propane.getGas(10), Materials.Propene.getGas(100), Materials.Ethane.getGas(15), Materials.Ethylene.getGas(150), Materials.Methane.getGas(150)}, + Materials.Carbon.getDustTiny(3), 120, 120); + } + public void addPotionRecipes(String aName,ItemStack aItem){ //normal GT_Values.RA.addBrewingRecipe(aItem, FluidRegistry.getFluid("potion.awkward"), FluidRegistry.getFluid("potion."+aName), false); @@ -2773,4 +3095,13 @@ if(Loader.isModLoaded("Railcraft")){ if(!(FluidRegistry.getFluid("potion."+aName+".long")==null||FluidRegistry.getFluid("potion."+aName+".long.splash")==null)) GT_Values.RA.addMixerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Gunpowder, 1L), null, null, null, new FluidStack(FluidRegistry.getFluid("potion."+aName+".long"),750), new FluidStack(FluidRegistry.getFluid("potion."+aName+".long.splash"),750), null, 200, 24); } + + private void addPrimitiveBlastFurnaceRecipes() { + GT_Values.RA.addPrimitiveBlastRecipe(Materials.Iron.getIngots(1), GT_Values.NI, 4, Materials.Steel.getIngots(1), GT_Values.NI, 7200); + GT_Values.RA.addPrimitiveBlastRecipe(Materials.Iron.getDust(1), GT_Values.NI, 4, Materials.Steel.getIngots(1), GT_Values.NI, 7200); + GT_Values.RA.addPrimitiveBlastRecipe(Materials.Iron.getBlocks(1), GT_Values.NI, 36, Materials.Steel.getIngots(9), GT_Values.NI, 64800); + GT_Values.RA.addPrimitiveBlastRecipe(Materials.Steel.getDust(1), GT_Values.NI, 2, Materials.Steel.getIngots(1), GT_Values.NI, 7200); + + } + } diff --git a/src/main/java/gregtech/loaders/preload/GT_Loader_ItemData.java b/src/main/java/gregtech/loaders/preload/GT_Loader_ItemData.java index 5997e8dae2..bfb9f2467c 100644 --- a/src/main/java/gregtech/loaders/preload/GT_Loader_ItemData.java +++ b/src/main/java/gregtech/loaders/preload/GT_Loader_ItemData.java @@ -47,7 +47,7 @@ public class GT_Loader_ItemData GT_OreDictUnificator.addItemData(new ItemStack(Blocks.clay, 1, 32767), new ItemData(Materials.Clay, 7257600L, new MaterialStack[0]));
GT_OreDictUnificator.addItemData(new ItemStack(Blocks.hardened_clay, 1, 32767), new ItemData(Materials.Clay, 3628800L, new MaterialStack[0]));
GT_OreDictUnificator.addItemData(new ItemStack(Blocks.stained_hardened_clay, 1, 32767), new ItemData(Materials.Clay, 3628800L, new MaterialStack[0]));
- GT_OreDictUnificator.addItemData(new ItemStack(Blocks.brick_block, 1, 32767), new ItemData(Materials.Clay, 3628800L, new MaterialStack[0]));
+ GT_OreDictUnificator.addItemData(new ItemStack(Blocks.brick_block, 1, 32767), new ItemData(Materials.Brick, 3628800L, new MaterialStack[0]));
GT_OreDictUnificator.addItemData(GT_ModHandler.getIC2Item("Uran238", 1L), new ItemData(Materials.Uranium, 3628800L, new MaterialStack[0]));
GT_OreDictUnificator.addItemData(GT_ModHandler.getIC2Item("Uran235", 1L), new ItemData(Materials.Uranium235, 3628800L, new MaterialStack[0]));
GT_OreDictUnificator.addItemData(GT_ModHandler.getIC2Item("Plutonium", 1L), new ItemData(Materials.Plutonium, 3628800L, new MaterialStack[0]));
diff --git a/src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java b/src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java index 67f27f4389..6d1e84a21d 100644 --- a/src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java +++ b/src/main/java/gregtech/loaders/preload/GT_Loader_Item_Block_And_Fluid.java @@ -113,7 +113,7 @@ public class GT_Loader_Item_Block_And_Fluid ItemList.ThoriumCell_1.set(new GT_RadioactiveCellIC_Item("Thoriumcell", "Fuel Rod (Thorium)", 1, 50000, 0.4F, 0, 0.25F, ItemList.Depleted_Thorium_1.get(1, new Object[0]),false));
- ItemList.ThoriumCell_2.set(new GT_RadioactiveCellIC_Item("Double_Thoriumcell", "Double Fuel Rod (Thorium)", 2, 50000, 0.4F, 0, 0.25F, ItemList.Depleted_Thorium_2.get(1, new Object[0]),false));
+ ItemList.ThoriumCell_2.set(new GT_RadioactiveCellIC_Item("Double_Thoriumcell", "Dual Fuel Rod (Thorium)", 2, 50000, 0.4F, 0, 0.25F, ItemList.Depleted_Thorium_2.get(1, new Object[0]),false));
GT_ModHandler.addCraftingRecipe(ItemList.ThoriumCell_2.get(1L, new Object[0]), GT_ModHandler.RecipeBits.BUFFERED | GT_ModHandler.RecipeBits.NOT_REMOVABLE, new Object[]{"RPR", " ", " ", 'R', ItemList.ThoriumCell_1, 'P', OrePrefixes.plate.get(Materials.Iron)});
ItemList.ThoriumCell_4.set(new GT_RadioactiveCellIC_Item("Quad_Thoriumcell", "Quad Fuel Rod (Thorium)", 4, 50000, 0.4F, 0, 0.25F, ItemList.Depleted_Thorium_4.get(1, new Object[0]),false));
@@ -125,7 +125,7 @@ public class GT_Loader_Item_Block_And_Fluid ItemList.NaquadahCell_1.set(new GT_RadioactiveCellIC_Item("Naquadahcell", "Fuel Rod (Naquadah)", 1, 100000, 2F, 1, 1F, ItemList.Depleted_Naquadah_1.get(1, new Object[0]),true));
- ItemList.NaquadahCell_2.set(new GT_RadioactiveCellIC_Item("Double_Naquadahcell", "Double Fuel Rod (Naquadah)", 2, 100000, 2F, 1, 1F, ItemList.Depleted_Naquadah_2.get(1, new Object[0]),true));
+ ItemList.NaquadahCell_2.set(new GT_RadioactiveCellIC_Item("Double_Naquadahcell", "Dual Fuel Rod (Naquadah)", 2, 100000, 2F, 1, 1F, ItemList.Depleted_Naquadah_2.get(1, new Object[0]),true));
GT_ModHandler.addCraftingRecipe(ItemList.NaquadahCell_2.get(1L, new Object[0]), GT_ModHandler.RecipeBits.BUFFERED | GT_ModHandler.RecipeBits.NOT_REMOVABLE, new Object[]{"RPR", " ", " ", 'R', ItemList.NaquadahCell_1, 'P', OrePrefixes.plate.get(Materials.Iron)});
ItemList.NaquadahCell_4.set(new GT_RadioactiveCellIC_Item("Quad_Naquadahcell", "Quad Fuel Rod (Naquadah)", 4, 100000, 2F, 1, 1F, ItemList.Depleted_Naquadah_4.get(1, new Object[0]),true));
@@ -403,7 +403,8 @@ public class GT_Loader_Item_Block_And_Fluid GT_Mod.gregtechproxy.addFluid("Methane", "Methane", Materials.Methane, 2, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Methane, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
GT_Mod.gregtechproxy.addFluid("Nitrogen", "Nitrogen", Materials.Nitrogen, 2, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Nitrogen, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
GT_Mod.gregtechproxy.addFluid("NitrogenDioxide", "Nitrogen Dioxide", Materials.NitrogenDioxide, 2, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.NitrogenDioxide, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
- GT_Mod.gregtechproxy.addFluid("Steam", "Steam", Materials.Water, 2, 375);
+ GT_Mod.gregtechproxy.addFluid("Steam", "Steam", Materials.Water, 2, 375, GT_ModHandler.getIC2Item("steamCell", 1), Materials.Empty.getCells(1), 1000); + GT_Values.RA.addFluidCannerRecipe(Materials.Empty.getCells(1), GT_ModHandler.getIC2Item("steamCell", 1), GT_ModHandler.getSteam(1000), null); Materials.Ice.mGas = Materials.Water.mGas;
Materials.Water.mGas.setTemperature(375).setGaseous(true);
@@ -411,7 +412,7 @@ public class GT_Loader_Item_Block_And_Fluid ItemList.sEpichlorhydrin = GT_Mod.gregtechproxy.addFluid("liquid_epichlorhydrin", "Epichlorohydrin", Materials.Epichlorohydrin, 1, 295, Materials.Epichlorohydrin.getCells(1), Materials.Empty.getCells(1), 1000);
ItemList.sDrillingFluid = GT_Mod.gregtechproxy.addFluid("liquid_drillingfluid", "Drilling Fluid", null, 1, 295);
ItemList.sToluene = GT_Mod.gregtechproxy.addFluid("liquid_toluene", "Toluene", Materials.Toluene, 1, 295, Materials.Toluene.getCells(1), Materials.Empty.getCells(1), 1000);
- ItemList.sNitrationMixture = GT_Mod.gregtechproxy.addFluid("liquid_nitrationmixture", "Nitration Mixture", null, 1, 295);
+ ItemList.sNitrationMixture = GT_Mod.gregtechproxy.addFluid("liquid_nitrationmixture", "Nitration Mixture", Materials.NitrationMixture, 1, 295, Materials.NitrationMixture.getCells(1), Materials.Empty.getCells(1), 1000); GT_Mod.gregtechproxy.addFluid("liquid_heavy_oil", "Heavy Oil", Materials.OilHeavy, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.OilHeavy, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
GT_Mod.gregtechproxy.addFluid("liquid_medium_oil", "Raw Oil", Materials.OilMedium, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.OilMedium, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
@@ -427,8 +428,6 @@ public class GT_Loader_Item_Block_And_Fluid GT_Mod.gregtechproxy.addFluid("liquid_light_fuel", "Light Fuel", Materials.LightFuel, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LightFuel, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
GT_Mod.gregtechproxy.addFluid("liquid_heavy_fuel", "Heavy Fuel", Materials.HeavyFuel, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.HeavyFuel, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
GT_Mod.gregtechproxy.addFluid("liquid_lpg", "LPG", Materials.LPG, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LPG, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
- GT_Mod.gregtechproxy.addFluid("liquid_cracked_light_fuel", "Cracked Light Fuel", Materials.CrackedLightFuel, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.CrackedLightFuel, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
- GT_Mod.gregtechproxy.addFluid("liquid_cracked_heavy_fuel", "Cracked Heavy Fuel", Materials.CrackedHeavyFuel, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.CrackedHeavyFuel, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
GT_Mod.gregtechproxy.addFluid("charcoal_byproducts", "molten.autogenerated", "Charcoal Byproducts", Materials.CharcoalByproducts, Materials.CharcoalByproducts.mRGBa, 2, 775, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.CharcoalByproducts, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
GT_Mod.gregtechproxy.addFluid("molten.bisphenol_a", "molten.autogenerated", "Molten Bisphenol A", Materials.BisphenolA, Materials.BisphenolA.mRGBa, 1, 432, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.BisphenolA, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
@@ -436,7 +435,7 @@ public class GT_Loader_Item_Block_And_Fluid GT_Mod.gregtechproxy.addFluid("UUAmplifier", "UU Amplifier", Materials.UUAmplifier, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.UUAmplifier, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
GT_Mod.gregtechproxy.addFluid("Chlorine", "Chlorine", Materials.Chlorine, 2, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Chlorine, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
GT_Mod.gregtechproxy.addFluid("Mercury", "Mercury", Materials.Mercury, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Mercury, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
- GT_Mod.gregtechproxy.addFluid("NitroFuel", "Nitro Diesel", Materials.NitroFuel, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.NitroFuel, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
+ GT_Mod.gregtechproxy.addFluid("NitroFuel", "Cetane-Boosted Diesel", Materials.NitroFuel, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.NitroFuel, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000); GT_Mod.gregtechproxy.addFluid("SodiumPersulfate", "Sodium Persulfate", Materials.SodiumPersulfate, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.SodiumPersulfate, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
GT_Mod.gregtechproxy.addFluid("Glyceryl", "Glyceryl Trinitrate", Materials.Glyceryl, 1, 295, GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Glyceryl, 1L), ItemList.Cell_Empty.get(1L, new Object[0]), 1000);
@@ -501,6 +500,10 @@ public class GT_Loader_Item_Block_And_Fluid if (tMaterial.hasCorrespondingGas()) {
GT_Mod.gregtechproxy.addAutoGeneratedCorrespondingGas(tMaterial);
}
+ if (tMaterial.canBeCracked()) { + GT_Mod.gregtechproxy.addAutoGeneratedHydroCrackedFluids(tMaterial); + GT_Mod.gregtechproxy.addAutoGeneratedSteamCrackedFluids(tMaterial); + } }
GT_Mod.gregtechproxy.addFluid("potion.awkward", "Awkward Brew", null, 1, 295, new ItemStack(Items.potionitem, 1, 16), ItemList.Bottle_Empty.get(1L, new Object[0]), 250);
GT_Mod.gregtechproxy.addFluid("potion.thick", "Thick Brew", null, 1, 295, new ItemStack(Items.potionitem, 1, 32), ItemList.Bottle_Empty.get(1L, new Object[0]), 250);
diff --git a/src/main/java/gregtech/loaders/preload/GT_Loader_MetaTileEntities.java b/src/main/java/gregtech/loaders/preload/GT_Loader_MetaTileEntities.java index c3f8753b5f..fe5ec446ed 100644 --- a/src/main/java/gregtech/loaders/preload/GT_Loader_MetaTileEntities.java +++ b/src/main/java/gregtech/loaders/preload/GT_Loader_MetaTileEntities.java @@ -1,7 +1,7 @@ package gregtech.loaders.preload;
-import cpw.mods.fml.common.Loader;
import codechicken.nei.api.API;
+import cpw.mods.fml.common.Loader;
import gregtech.GT_Mod;
import gregtech.api.GregTech_API;
import gregtech.api.enums.*;
@@ -70,7 +70,7 @@ public class GT_Loader_MetaTileEntities implements Runnable { GT_ModHandler.addCraftingRecipe(ItemList.Casing_Pipe_Steel.get(2L, new Object[0]), bits, new Object[]{"PIP", "IFI", "PIP", 'P', OrePrefixes.plate.get(Materials.Steel), 'F', OrePrefixes.frameGt.get(Materials.Steel), 'I', OrePrefixes.pipeMedium.get(Materials.Steel)});
GT_ModHandler.addCraftingRecipe(ItemList.Casing_Pipe_Titanium.get(2L, new Object[0]), bits, new Object[]{"PIP", "IFI", "PIP", 'P', OrePrefixes.plate.get(Materials.Titanium), 'F', OrePrefixes.frameGt.get(Materials.Titanium), 'I', OrePrefixes.pipeMedium.get(Materials.Titanium)});
GT_ModHandler.addCraftingRecipe(ItemList.Casing_Pipe_TungstenSteel.get(2L, new Object[0]), bits, new Object[]{"PIP", "IFI", "PIP", 'P', OrePrefixes.plate.get(Materials.TungstenSteel), 'F', OrePrefixes.frameGt.get(Materials.TungstenSteel), 'I', OrePrefixes.pipeMedium.get(Materials.TungstenSteel)});
- GT_ModHandler.addCraftingRecipe(ItemList.Casing_Pipe_Polytetrafluoroethylene.get(2L, new Object[0]), bits, new Object[]{"PIP", "IFI", "PIP", 'P', OrePrefixes.plate.get(Materials.Polytetrafluoroethylene), 'F', OrePrefixes.frameGt.get(Materials.Polytetrafluoroethylene), 'I', OrePrefixes.pipeMedium.get(Materials.Polytetrafluoroethylene)}); + GT_ModHandler.addCraftingRecipe(ItemList.Casing_Pipe_Polytetrafluoroethylene.get(2L, new Object[0]), bits, new Object[]{"PIP", "IFI", "PIP", 'P', OrePrefixes.plate.get(Materials.Polytetrafluoroethylene), 'F', OrePrefixes.frameGt.get(Materials.Polytetrafluoroethylene), 'I', OrePrefixes.pipeMedium.get(Materials.Polytetrafluoroethylene)});
GT_ModHandler.addCraftingRecipe(ItemList.Casing_Gearbox_Bronze.get(2L, new Object[0]), bits, new Object[]{"PhP", "GFG", aTextPlateWrench, 'P', OrePrefixes.plate.get(Materials.Bronze), 'F', OrePrefixes.frameGt.get(Materials.Bronze), 'G', OrePrefixes.gearGt.get(Materials.Bronze)});
GT_ModHandler.addCraftingRecipe(ItemList.Casing_Gearbox_Steel.get(2L, new Object[0]), bits, new Object[]{"PhP", "GFG", aTextPlateWrench, 'P', OrePrefixes.plate.get(Materials.Steel), 'F', OrePrefixes.frameGt.get(Materials.Steel), 'G', OrePrefixes.gearGt.get(Materials.Steel)});
GT_ModHandler.addCraftingRecipe(ItemList.Casing_Gearbox_Titanium.get(2L, new Object[0]), bits, new Object[]{"PhP", "GFG", aTextPlateWrench, 'P', OrePrefixes.plate.get(Materials.Steel), 'F', OrePrefixes.frameGt.get(Materials.Titanium), 'G', OrePrefixes.gearGt.get(Materials.Titanium)});
@@ -116,6 +116,8 @@ public class GT_Loader_MetaTileEntities implements Runnable { GT_ModHandler.addShapelessCraftingRecipe(ItemList.Casing_Coil_Kanthal.get(1L, new Object[0]), bits, new Object[] {ItemList.Casing_Coil_Kanthal_Deprecated});
GT_ModHandler.addShapelessCraftingRecipe(ItemList.Casing_Coil_Nichrome.get(1L, new Object[0]), bits, new Object[] {ItemList.Casing_Coil_Nichrome_Deprecated});
+ GT_ModHandler.addCraftingRecipe(ItemList.Casing_Firebricks.get(1L, new Object[0]), bits, new Object[] {"BB", "BB", 'B', ItemList.Firebrick.get(1, new Object[0])});
+
ItemList.Hull_Bronze.set(new GT_MetaTileEntity_BasicHull_Bronze(1, "hull.bronze", "Bronze Hull", 0, "For your first Steam Machines").getStackForm(1L));
ItemList.Hull_Bronze_Bricks.set(new GT_MetaTileEntity_BasicHull_BronzeBricks(2, "hull.bronze_bricked", "Bricked Bronze Hull", 0, "For your first Steam Machines").getStackForm(1L));
ItemList.Hull_Steel.set(new GT_MetaTileEntity_BasicHull_Steel(3, "hull.steel", "Steel Hull", 0, "For improved Steam Machines").getStackForm(1L));
@@ -355,6 +357,12 @@ public class GT_Loader_MetaTileEntities implements Runnable { GT_ModHandler.addCraftingRecipe(ItemList.Hatch_AutoMaintenance.get(1L, new Object[0]), bitsd, new Object[]{"CHC", "AMA", "CHC", 'M', ItemList.Hull_IV,'H',ItemList.Hatch_Maintenance,'A',ItemList.Robot_Arm_IV,'C',OrePrefixes.circuit.get(Materials.Master)});
+ ItemList.Hatch_DataAccess_EV.set(new GT_MetaTileEntity_Hatch_DataAccess(131, "hatch.dataaccess", "Data Access Hatch", 4).getStackForm(1L));
+ ItemList.Hatch_DataAccess_LuV.set(new GT_MetaTileEntity_Hatch_DataAccess(132, "hatch.dataaccess.adv", "Advanced Data Access Hatch", 6).getStackForm(1L));
+
+ GT_ModHandler.addCraftingRecipe(ItemList.Hatch_DataAccess_EV.get(1L, new Object[0]), bitsd, new Object[]{"COC", "OMO", "COC", 'M', ItemList.Hull_EV, 'O', ItemList.Tool_DataStick , 'C' ,OrePrefixes.circuit.get(Materials.Elite)});
+ GT_ModHandler.addCraftingRecipe(ItemList.Hatch_DataAccess_LuV.get(1L, new Object[0]), bitsd, new Object[]{"COC", "OMO", "COC", 'M', ItemList.Hull_LuV, 'O', ItemList.Tool_DataOrb , 'C' ,OrePrefixes.circuit.get(Materials.Ultimate)});
+
ItemList.Hatch_Muffler_LV.set(new GT_MetaTileEntity_Hatch_Muffler(91, "hatch.muffler.tier.01", "Muffler Hatch (LV)", 1).getStackForm(1L));
ItemList.Hatch_Muffler_MV.set(new GT_MetaTileEntity_Hatch_Muffler(92, "hatch.muffler.tier.02", "Muffler Hatch (MV)", 2).getStackForm(1L));
ItemList.Hatch_Muffler_HV.set(new GT_MetaTileEntity_Hatch_Muffler(93, "hatch.muffler.tier.03", "Muffler Hatch (HV)", 3).getStackForm(1L));
@@ -390,6 +398,12 @@ public class GT_Loader_MetaTileEntities implements Runnable { if (!Loader.isModLoaded("terrafirmacraft")) {
GT_ModHandler.addCraftingRecipe(ItemList.Machine_Bronze_BlastFurnace.get(1L, new Object[0]), bits, new Object[]{"PFP", "FwF", "PFP", 'P', OrePrefixes.plate.get(Materials.Bronze), 'F', OreDictNames.craftingFurnace});
}
+
+ ItemList.Machine_Bricked_BlastFurnace.set(new GT_MetaTileEntity_BrickedBlastFurnace(130, "multimachine.brickedblastfurnace", "Bricked Blast Furnace").getStackForm(1L));
+ if (GT_Mod.gregtechproxy.mBrickedBlastFurnace) {
+ GT_ModHandler.addCraftingRecipe(ItemList.Machine_Bricked_BlastFurnace.get(1L, new Object[0]), GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.BUFFERED, new Object[]{"BBB", "BPB", "BBB", 'B', ItemList.Firebrick, 'P', Materials.Iron.getPlates(1)});
+ }
+
ItemList.Machine_Bronze_Furnace.set(new GT_MetaTileEntity_Furnace_Bronze(103, "bronzemachine.furnace", "Steam Furnace").getStackForm(1L));
ItemList.Machine_Steel_Furnace.set(new GT_MetaTileEntity_Furnace_Steel(104, "steelmachine.furnace", "High Pressure Furnace").getStackForm(1L));
ItemList.Machine_Bronze_Macerator.set(new GT_MetaTileEntity_Macerator_Bronze(106, "bronzemachine.macerator", "Steam Macerator").getStackForm(1L));
@@ -562,14 +576,14 @@ public class GT_Loader_MetaTileEntities implements Runnable { ItemList.Machine_ZPM_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(207, "basicmachine.alloysmelter.tier.07", "Advanced Alloy Smelter VI", 7, "HighTech combination Smelter", GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L));
ItemList.Machine_UV_AlloySmelter.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(208, "basicmachine.alloysmelter.tier.08", "Advanced Alloy Smelter VII", 8, "HighTech combination Smelter", GT_Recipe.GT_Recipe_Map.sAlloySmelterRecipes, 2, 1, 0, 0, 1, "AlloySmelter.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(208)), aBoolConst_0, aBoolConst_0, 0, "ALLOY_SMELTER", new Object[]{"ECE", aTextCableHull, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING_DOUBLE}).getStackForm(1L));
- ItemList.Machine_LV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(211, "basicmachine.assembler.tier.01", "Basic Assembling Machine", 1, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 2, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L));
- ItemList.Machine_MV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(212, "basicmachine.assembler.tier.02", "Advanced Assembling Machine", 2, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 2, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L));
- ItemList.Machine_HV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(213, "basicmachine.assembler.tier.03", "Advanced Assembling Machine II", 3, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 2, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L));
- ItemList.Machine_EV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(214, "basicmachine.assembler.tier.04", "Advanced Assembling Machine III", 4, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 2, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L));
- ItemList.Machine_IV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(215, "basicmachine.assembler.tier.05", "Advanced Assembling Machine IV", 5, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 2, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L));
- ItemList.Machine_LuV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(216, "basicmachine.assembler.tier.06", "Advanced Assembling Machine V", 6, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 2, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L));
- ItemList.Machine_ZPM_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(217, "basicmachine.assembler.tier.07", "Advanced Assembling Machine VI", 7, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 2, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L));
- ItemList.Machine_UV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(218, "basicmachine.assembler.tier.08", "Advanced Assembling Machine VII", 8, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 2, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L));
+ ItemList.Machine_LV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(211, "basicmachine.assembler.tier.01", "Basic Assembling Machine", 1, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L));
+ ItemList.Machine_MV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(212, "basicmachine.assembler.tier.02", "Advanced Assembling Machine", 2, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L));
+ ItemList.Machine_HV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(213, "basicmachine.assembler.tier.03", "Advanced Assembling Machine II", 3, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L));
+ ItemList.Machine_EV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(214, "basicmachine.assembler.tier.04", "Advanced Assembling Machine III", 4, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L));
+ ItemList.Machine_IV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(215, "basicmachine.assembler.tier.05", "Advanced Assembling Machine IV", 5, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L));
+ ItemList.Machine_LuV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(216, "basicmachine.assembler.tier.06", "Advanced Assembling Machine V", 6, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L));
+ ItemList.Machine_ZPM_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(217, "basicmachine.assembler.tier.07", "Advanced Assembling Machine VI", 7, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L));
+ ItemList.Machine_UV_Assembler.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(218, "basicmachine.assembler.tier.08", "Advanced Assembling Machine VII", 8, "Avengers, Assemble!", GT_Recipe.GT_Recipe_Map.sAssemblerRecipes, 6, 1, 16000, 0, 1, "Assembler.png", "", aBoolConst_0, aBoolConst_0, 0, "ASSEMBLER", new Object[]{"ACA", "VMV", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'A', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L));
ItemList.Machine_LV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(221, "basicmachine.bender.tier.01", "Basic Bending Machine", 1, "Boo, he's bad! We want BENDER!!!", GT_Recipe.GT_Recipe_Map.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L));
ItemList.Machine_MV_Bender.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(222, "basicmachine.bender.tier.02", "Advanced Bending Machine", 2, "Boo, he's bad! We want BENDER!!!", GT_Recipe.GT_Recipe_Map.sBenderRecipes, 2, 1, 0, 0, 1, "Bender.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(203)), aBoolConst_0, aBoolConst_0, 0, "BENDER", new Object[]{aTextPlateWrench, aTextCableHull, aTextMotorWire, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PISTON, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE}).getStackForm(1L));
@@ -769,14 +783,14 @@ public class GT_Loader_MetaTileEntities implements Runnable { ItemList.Machine_ZPM_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(417, "basicmachine.unboxinator.tier.07", "Unboxinator", 7, "Grabs things out of Boxes", GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L));
ItemList.Machine_UV_Unboxinator.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(418, "basicmachine.unboxinator.tier.08", "Unboxinator", 8, "Grabs things out of Boxes", GT_Recipe.GT_Recipe_Map.sUnboxinatorRecipes, 1, 2, 0, 0, 1, "Unpackager.png", "", aBoolConst_0, aBoolConst_0, 0, "UNBOXINATOR", new Object[]{"BCB", "VMR", aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROBOT_ARM, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'B', OreDictNames.craftingChest}).getStackForm(1L));
- ItemList.Machine_LV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(421, "basicmachine.chemicalreactor.tier.01", "Basic Chemical Reactor", 1, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L)); - ItemList.Machine_MV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(422, "basicmachine.chemicalreactor.tier.02", "Advanced Chemical Reactor", 2, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeMedium.get(Materials.Plastic)}).getStackForm(1L)); - ItemList.Machine_HV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(423, "basicmachine.chemicalreactor.tier.03", "Advanced Chemical Reactor II", 3, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeMedium.get(Materials.Plastic)}).getStackForm(1L)); - ItemList.Machine_EV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(424, "basicmachine.chemicalreactor.tier.04", "Advanced Chemical Reactor III", 4, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeLarge.get(Materials.Plastic)}).getStackForm(1L)); - ItemList.Machine_IV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(425, "basicmachine.chemicalreactor.tier.05", "Advanced Chemical Reactor IV", 5, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L)); - ItemList.Machine_LuV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(426, "basicmachine.chemicalreactor.tier.06", "Advanced Chemical Reactor V", 6, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L)); - ItemList.Machine_ZPM_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(427, "basicmachine.chemicalreactor.tier.07", "Advanced Chemical Reactor VI", 7, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L)); - ItemList.Machine_UV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(428, "basicmachine.chemicalreactor.tier.08", "Advanced Chemical Reactor VII", 8, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L)); + ItemList.Machine_LV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(421, "basicmachine.chemicalreactor.tier.01", "Basic Chemical Reactor", 1, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L));
+ ItemList.Machine_MV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(422, "basicmachine.chemicalreactor.tier.02", "Advanced Chemical Reactor", 2, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L));
+ ItemList.Machine_HV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(423, "basicmachine.chemicalreactor.tier.03", "Advanced Chemical Reactor II", 3, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeMedium.get(Materials.Plastic)}).getStackForm(1L));
+ ItemList.Machine_EV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(424, "basicmachine.chemicalreactor.tier.04", "Advanced Chemical Reactor III", 4, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeLarge.get(Materials.Plastic)}).getStackForm(1L));
+ ItemList.Machine_IV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(425, "basicmachine.chemicalreactor.tier.05", "Advanced Chemical Reactor IV", 5, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L));
+ ItemList.Machine_LuV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(426, "basicmachine.chemicalreactor.tier.06", "Advanced Chemical Reactor V", 6, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L));
+ ItemList.Machine_ZPM_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(427, "basicmachine.chemicalreactor.tier.07", "Advanced Chemical Reactor VI", 7, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L));
+ ItemList.Machine_UV_ChemicalReactor.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(428, "basicmachine.chemicalreactor.tier.08", "Advanced Chemical Reactor VII", 8, "Letting Chemicals react with each other", GT_Recipe.GT_Recipe_Map.sChemicalRecipes, 2, 2, 16000, 0, 1, "ChemicalReactor.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "CHEMICAL_REACTOR", new Object[]{"GRG", "WEW", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'R', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.ROTOR, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.MOTOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', OrePrefixes.pipeHuge.get(Materials.Plastic)}).getStackForm(1L));
ItemList.Machine_LV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(431, "basicmachine.fluidcanner.tier.01", "Basic Fluid Canner", 1, "Puts Fluids into and out of Containers", GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes, 1, 1, 16000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L));
ItemList.Machine_MV_FluidCanner.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(432, "basicmachine.fluidcanner.tier.02", "Advanced Fluid Canner", 2, "Puts Fluids into and out of Containers", GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes, 1, 1, 32000, 0, 1, "FluidCanner.png", "", true, aBoolConst_0, 0, "FLUID_CANNER", new Object[]{"GCG", aTextPlateMotor, aTextWireCoil, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L));
@@ -913,14 +927,14 @@ public class GT_Loader_MetaTileEntities implements Runnable { ItemList.Machine_ZPM_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(527, "basicmachine.fluidsolidifier.tier.07", "Advanced Fluid Solidifier VI", 7, "Cools Fluids down to form Solids", GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L));
ItemList.Machine_UV_FluidSolidifier.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(528, "basicmachine.fluidsolidifier.tier.08", "Advanced Fluid Solidifier VII", 8, "Cools Fluids down to form Solids", GT_Recipe.GT_Recipe_Map.sFluidSolidficationRecipes, 1, 1, 16000, 0, 1, "FluidSolidifier.png", "", aBoolConst_0, aBoolConst_0, 0, "FLUID_SOLIDIFIER", new Object[]{"PGP", aTextWireHull, "CBC", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS, 'B', OreDictNames.craftingChest}).getStackForm(1L));
- ItemList.Machine_LV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(531, "basicmachine.distillery.tier.01", "Basic Distillery", 1, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 0, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L));
- ItemList.Machine_MV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(532, "basicmachine.distillery.tier.02", "Advanced Distillery", 2, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 0, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L));
- ItemList.Machine_HV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(533, "basicmachine.distillery.tier.03", "Advanced Distillery II", 3, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 0, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L));
- ItemList.Machine_EV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(534, "basicmachine.distillery.tier.04", "Advanced Distillery III", 4, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 0, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L));
- ItemList.Machine_IV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(535, "basicmachine.distillery.tier.05", "Advanced Distillery IV", 5, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 0, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L));
- ItemList.Machine_LuV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(536, "basicmachine.distillery.tier.06", "Advanced Distillery V", 6, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 0, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L));
- ItemList.Machine_ZPM_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(537, "basicmachine.distillery.tier.07", "Advanced Distillery VI", 7, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 0, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L));
- ItemList.Machine_UV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(538, "basicmachine.distillery.tier.08", "Advanced Distillery VII", 8, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 0, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L));
+ ItemList.Machine_LV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(531, "basicmachine.distillery.tier.01", "Basic Distillery", 1, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L));
+ ItemList.Machine_MV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(532, "basicmachine.distillery.tier.02", "Advanced Distillery", 2, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L));
+ ItemList.Machine_HV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(533, "basicmachine.distillery.tier.03", "Advanced Distillery II", 3, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L));
+ ItemList.Machine_EV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(534, "basicmachine.distillery.tier.04", "Advanced Distillery III", 4, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L));
+ ItemList.Machine_IV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(535, "basicmachine.distillery.tier.05", "Advanced Distillery IV", 5, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L));
+ ItemList.Machine_LuV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(536, "basicmachine.distillery.tier.06", "Advanced Distillery V", 6, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L));
+ ItemList.Machine_ZPM_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(537, "basicmachine.distillery.tier.07", "Advanced Distillery VI", 7, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L));
+ ItemList.Machine_UV_Distillery.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(538, "basicmachine.distillery.tier.08", "Advanced Distillery VII", 8, "Extracting the most relevant Parts of Fluids", GT_Recipe.GT_Recipe_Map.sDistilleryRecipes, 1, 1, 1000, 0, 1, "Distillery.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(200)), aBoolConst_0, aBoolConst_0, 0, "DISTILLERY", new Object[]{"GBG", aTextCableHull, aTextWirePump, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'B', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.STICK_DISTILLATION, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L));
ItemList.Machine_LV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(541, "basicmachine.chemicalbath.tier.01", "Basic Chemical Bath", 1, "Bathing Ores in Chemicals to separate them", GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L));
ItemList.Machine_MV_ChemicalBath.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(542, "basicmachine.chemicalbath.tier.02", "Advanced Chemical Bath", 2, "Bathing Ores in Chemicals to separate them", GT_Recipe.GT_Recipe_Map.sChemicalBathRecipes, 1, 3, 8000, 0, 1, "ChemicalBath.png", "", aBoolConst_0, true, 0, "CHEMICAL_BATH", new Object[]{"VGW", "PGV", aTextCableHull, 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'P', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.PUMP, 'V', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CONVEYOR, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'G', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.GLASS}).getStackForm(1L));
@@ -1047,6 +1061,12 @@ public class GT_Loader_MetaTileEntities implements Runnable { ItemList.Machine_LuV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(676, "basicmachine.e_oven.tier.06", "Advanced Electric Oven V", 6, "Just a Furnace with a different Design", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L));
ItemList.Machine_ZPM_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(677, "basicmachine.e_oven.tier.07", "Advanced Electric Oven VI", 7, "Just a Furnace with a different Design", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L));
ItemList.Machine_UV_Oven.set(new GT_MetaTileEntity_BasicMachine_GT_Recipe(678, "basicmachine.e_oven.tier.08", "Advanced Electric Oven VII", 8, "Just a Furnace with a different Design", GT_Recipe.GT_Recipe_Map.sFurnaceRecipes, 1, 1, 0, 0, 1, "E_Oven.png", (String) GregTech_API.sSoundList.get(Integer.valueOf(207)), aBoolConst_0, aBoolConst_0, 0, "ELECTRIC_OVEN", new Object[]{"CEC", aTextCableHull, "WEW", 'M', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.HULL, 'E', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.CIRCUIT, 'W', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.WIRE, 'C', GT_MetaTileEntity_BasicMachine_GT_Recipe.X.COIL_HEATING}).getStackForm(1L));
+
+ ItemList.Machine_LV_Miner.set(new GT_MetaTileEntity_Miner(679, "basicmachine.miner.tier.01", "Basic miner", 1).getStackForm(1L));
+ ItemList.Machine_MV_Miner.set(new GT_MetaTileEntity_Miner(680, "basicmachine.miner.tier.02", "Advanced miner", 2).getStackForm(1L));
+
+ GT_ModHandler.addCraftingRecipe(ItemList.Machine_LV_Miner.get(1L), bitsd, new Object[]{"EEE", aTextWireHull, "CSC", 'M', ItemList.Hull_LV, 'E', ItemList.Electric_Motor_LV, 'C', OrePrefixes.circuit.get(Materials.Basic), 'W', OrePrefixes.cableGt01.get(Materials.Tin), 'S', ItemList.Sensor_LV});
+ GT_ModHandler.addCraftingRecipe(ItemList.Machine_MV_Miner.get(1L), bitsd, new Object[]{"EEE", aTextWireHull, "CSC", 'M', ItemList.Hull_MV, 'E', ItemList.Electric_Motor_MV, 'C', OrePrefixes.circuit.get(Materials.Good), 'W', OrePrefixes.cableGt01.get(Materials.Copper), 'S', ItemList.Sensor_MV});
}
private static void run3() {
@@ -1280,14 +1300,14 @@ public class GT_Loader_MetaTileEntities implements Runnable { GT_ModHandler.addCraftingRecipe(ItemList.Machine_EV_LightningRod.get(1L, new Object[0]), bitsd, new Object[]{"LTL", "TMT", "LTL", 'M', ItemList.Hull_ZPM, 'L', ItemList.Energy_LapotronicOrb2, 'T', ItemList.Transformer_UV_ZPM});
ItemList.Machine_IV_LightningRod.set(new GT_MetaTileEntity_LightningRod(1176, "basicgenerator.lightningrod.05", "Lightning Rod III", 5).getStackForm(1));
GT_ModHandler.addCraftingRecipe(ItemList.Machine_IV_LightningRod.get(1L, new Object[0]), bitsd, new Object[]{"LTL", "TMT", "LTL", 'M', ItemList.Hull_UV, 'L', ItemList.ZPM2, 'T', ItemList.Transformer_MAX_UV});
- - ItemList.Machine_Multi_LargeChemicalReactor.set(new GT_MetaTileEntity_LargeChemicalReactor(1169, "multimachine.chemicalreactor", "Large Chemical Reactor").getStackForm(1)); - GT_ModHandler.addCraftingRecipe(ItemList.Machine_Multi_LargeChemicalReactor.get(1L, new Object[0]), bitsd, new Object[]{"CRC", "PMP", "CBC", - 'C', OrePrefixes.circuit.get(Materials.Advanced), - 'R', OrePrefixes.rotor.get(Materials.StainlessSteel), - 'P', OrePrefixes.pipeLarge.get(Materials.Polytetrafluoroethylene), - 'M', ItemList.Electric_Motor_HV, - 'B', ItemList.Hull_HV}); +
+ ItemList.Machine_Multi_LargeChemicalReactor.set(new GT_MetaTileEntity_LargeChemicalReactor(1169, "multimachine.chemicalreactor", "Large Chemical Reactor").getStackForm(1));
+ GT_ModHandler.addCraftingRecipe(ItemList.Machine_Multi_LargeChemicalReactor.get(1L, new Object[0]), bitsd, new Object[]{"CRC", "PMP", "CBC",
+ 'C', OrePrefixes.circuit.get(Materials.Advanced),
+ 'R', OrePrefixes.rotor.get(Materials.StainlessSteel),
+ 'P', OrePrefixes.pipeLarge.get(Materials.Polytetrafluoroethylene),
+ 'M', ItemList.Electric_Motor_HV,
+ 'B', ItemList.Hull_HV});
}
private static void run4() {
@@ -1394,7 +1414,7 @@ public class GT_Loader_MetaTileEntities implements Runnable { GT_OreDictUnificator.registerOre(OrePrefixes.pipeMedium.get(Materials.Plastic), new GT_MetaPipeEntity_Fluid(5172, "GT_Pipe_Plastic", "Plastic Fluid Pipe", 0.5F, Materials.Plastic, 360, 350, true).getStackForm(1L));
GT_OreDictUnificator.registerOre(OrePrefixes.pipeLarge.get(Materials.Plastic), new GT_MetaPipeEntity_Fluid(5173, "GT_Pipe_Plastic_Large", "Large Plastic Fluid Pipe", 0.75F, Materials.Plastic, 720, 350, true).getStackForm(1L));
GT_OreDictUnificator.registerOre(OrePrefixes.pipeHuge.get(Materials.Plastic), new GT_MetaPipeEntity_Fluid(5174, "GT_Pipe_Plastic_Huge", "Huge Plastic Fluid Pipe", 0.875F, Materials.Plastic, 1440, 350, true).getStackForm(1L));
- generateFluidPipes(Materials.Polytetrafluoroethylene, Materials.Polytetrafluoroethylene.mName, "PTFE", 5175, 480, 600, true); + generateFluidPipes(Materials.Polytetrafluoroethylene, Materials.Polytetrafluoroethylene.mName, "PTFE", 5175, 480, 600, true);
GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.pipeSmall, Materials.TungstenSteel, 1L), ItemList.Electric_Pump_EV.get(1L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.pipeSmall, Materials.Ultimate, 1L), 300, 96);
GT_Values.RA.addAssemblerRecipe(GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.TungstenSteel, 1L), ItemList.Electric_Pump_IV.get(1L, new Object[0]), GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Ultimate, 1L), 400, 148);
@@ -1427,7 +1447,7 @@ public class GT_Loader_MetaTileEntities implements Runnable { GT_OreDictUnificator.registerOre(OrePrefixes.pipeRestrictiveMedium.get(Materials.Osmium), new GT_MetaPipeEntity_Item(5637, "GT_Pipe_Restrictive_Osmium", "Restrictive Osmium Item Pipe", 0.5F, Materials.Osmium, 8, 409600, true).getStackForm(1L));
GT_OreDictUnificator.registerOre(OrePrefixes.pipeRestrictiveLarge.get(Materials.Osmium), new GT_MetaPipeEntity_Item(5638, "GT_Pipe_Restrictive_Osmium_Large", "Large Restrictive Osmium Item Pipe", 0.75F, Materials.Osmium, 16, 204800, true).getStackForm(1L));
GT_OreDictUnificator.registerOre(OrePrefixes.pipeRestrictiveHuge.get(Materials.Osmium), new GT_MetaPipeEntity_Item(5639, "GT_Pipe_Restrictive_Osmium_Huge", "Huge Restrictive Osmium Item Pipe", 0.875F, Materials.Osmium, 32, 102400, true).getStackForm(1L));
- generateItemPipes(Materials.PolyvinylChloride, Materials.PolyvinylChloride.mName, "PVC", 5640, 4); + generateItemPipes(Materials.PolyvinylChloride, Materials.PolyvinylChloride.mName, "PVC", 5640, 4);
ItemList.Automation_ChestBuffer_ULV.set(new GT_MetaTileEntity_ChestBuffer(9230, "automation.chestbuffer.tier.00", "Ultra Low Voltage Chest Buffer", 0).getStackForm(1L));
diff --git a/src/main/java/gregtech/nei/GT_NEI_AssLineHandler.java b/src/main/java/gregtech/nei/GT_NEI_AssLineHandler.java index c917bb9e71..a2fad03c6f 100644 --- a/src/main/java/gregtech/nei/GT_NEI_AssLineHandler.java +++ b/src/main/java/gregtech/nei/GT_NEI_AssLineHandler.java @@ -10,6 +10,7 @@ import codechicken.nei.recipe.GuiRecipe; import codechicken.nei.recipe.GuiUsageRecipe; import codechicken.nei.recipe.TemplateRecipeHandler; import cpw.mods.fml.common.event.FMLInterModComms; +import gregtech.GT_Mod; import gregtech.api.enums.GT_Values; import gregtech.api.enums.OrePrefixes; import gregtech.api.gui.GT_GUIContainer_BasicMachine; @@ -31,6 +32,8 @@ import java.util.ArrayList; import java.util.Iterator; import java.util.List; +import static gregtech.api.util.GT_Utility.trans; + public class GT_NEI_AssLineHandler extends TemplateRecipeHandler { public static final int sOffsetX = 5; @@ -212,22 +215,36 @@ public class GT_NEI_AssLineHandler public void drawExtras(int aRecipeIndex) { int tEUt = ((CachedDefaultRecipe) this.arecipes.get(aRecipeIndex)).mRecipe.mEUt; int tDuration = ((CachedDefaultRecipe) this.arecipes.get(aRecipeIndex)).mRecipe.mDuration; - if (tEUt != 0) { - drawText(10, 73, "Total: " + tDuration * tEUt + " EU", -16777216); - drawText(10, 83, "Usage: " + tEUt + " EU/t", -16777216); - if (this.mRecipeMap.mShowVoltageAmperageInNEI) { - drawText(10, 93, "Voltage: " + tEUt / this.mRecipeMap.mAmperage + " EU", -16777216); - drawText(10, 103, "Amperage: " + this.mRecipeMap.mAmperage, -16777216); - } else { - drawText(10, 93, "Voltage: unspecified", -16777216); - drawText(10, 103, "Amperage: unspecified", -16777216); + String[] recipeDesc = ((CachedDefaultRecipe) this.arecipes.get(aRecipeIndex)).mRecipe.getNeiDesc(); + if (recipeDesc == null) { + if (tEUt != 0) { + drawText(10, 73, trans("152","Total: ") + tDuration * tEUt + " EU", -16777216); + drawText(10, 83, trans("153","Usage: ") + tEUt + " EU/t", -16777216); + if (this.mRecipeMap.mShowVoltageAmperageInNEI) { + drawText(10, 93, trans("154","Voltage: ") + tEUt / this.mRecipeMap.mAmperage + " EU", -16777216); + drawText(10, 103, trans("155","Amperage: ") + this.mRecipeMap.mAmperage, -16777216); + } else { + drawText(10, 93, trans("156","Voltage: unspecified"), -16777216); + drawText(10, 103, trans("157","Amperage: unspecified"), -16777216); + } + } + if (tDuration > 0) { + drawText(10, 113, trans("158","Time: ")+String.format("%.2f " + trans("161"," secs"), 0.05F * tDuration), -16777216); + } + int tSpecial = ((CachedDefaultRecipe) this.arecipes.get(aRecipeIndex)).mRecipe.mSpecialValue; + if (tSpecial == -100 && GT_Mod.gregtechproxy.mLowGravProcessing) { + drawText(10, 123, trans("159","Needs Low Gravity"), -16777216); + } else if (tSpecial == -200 && GT_Mod.gregtechproxy.mEnableCleanroom) { + drawText(10, 123, trans("160","Needs Cleanroom"), -16777216); + } else if ((GT_Utility.isStringValid(this.mRecipeMap.mNEISpecialValuePre)) || (GT_Utility.isStringValid(this.mRecipeMap.mNEISpecialValuePost))) { + drawText(10, 123, this.mRecipeMap.mNEISpecialValuePre + tSpecial * this.mRecipeMap.mNEISpecialValueMultiplier + this.mRecipeMap.mNEISpecialValuePost, -16777216); + } + } else { + int i = 0; + for (String descLine : recipeDesc) { + drawText(10, 73 + 10 * i, descLine, -16777216); + i++; } - } - if (tDuration > 0) { - drawText(10, 113, "Time: " + (tDuration < 20 ? "< 1" : Integer.valueOf(tDuration / 20)) + " secs", -16777216); - } - if ((GT_Utility.isStringValid(this.mRecipeMap.mNEISpecialValuePre)) || (GT_Utility.isStringValid(this.mRecipeMap.mNEISpecialValuePost))) { - drawText(10, 123, this.mRecipeMap.mNEISpecialValuePre + ((CachedDefaultRecipe) this.arecipes.get(aRecipeIndex)).mRecipe.mSpecialValue * this.mRecipeMap.mNEISpecialValueMultiplier + this.mRecipeMap.mNEISpecialValuePost, -16777216); } } diff --git a/src/main/java/gregtech/nei/GT_NEI_DefaultHandler.java b/src/main/java/gregtech/nei/GT_NEI_DefaultHandler.java index 1425dba1e9..975c00e0c2 100644 --- a/src/main/java/gregtech/nei/GT_NEI_DefaultHandler.java +++ b/src/main/java/gregtech/nei/GT_NEI_DefaultHandler.java @@ -29,7 +29,9 @@ import net.minecraftforge.fluids.FluidStack; import org.lwjgl.opengl.GL11;
import java.awt.*;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Iterator;
import java.util.List;
public class GT_NEI_DefaultHandler
diff --git a/src/main/java/speiger/src/crops/api/ICropCardInfo.java b/src/main/java/speiger/src/crops/api/ICropCardInfo.java index 34d35edc12..7f1a76f611 100644 --- a/src/main/java/speiger/src/crops/api/ICropCardInfo.java +++ b/src/main/java/speiger/src/crops/api/ICropCardInfo.java @@ -1,9 +1,9 @@ package speiger.src.crops.api; -import java.util.List; - import net.minecraft.item.ItemStack; +import java.util.List; + /** * * @author Speiger diff --git a/src/main/resources/assets/gregtech/lang/en_US.lang b/src/main/resources/assets/gregtech/lang/en_US.lang index bbd488d7e2..970e5fd07c 100644 --- a/src/main/resources/assets/gregtech/lang/en_US.lang +++ b/src/main/resources/assets/gregtech/lang/en_US.lang @@ -411,6 +411,98 @@ achievement.denseaspossible.desc=Produce Neutronium achievement.whatnow=What now? achievement.whatnow.desc=Craft a Ultimate Battery +achievement.gt.metaitem.01.32606=Electric Motor LuV tier +achievement.gt.metaitem.01.32606.desc=Pickup this item to see the recipe in NEI +achievement.gt.metaitem.01.32607=Electric Motor ZPM tier +achievement.gt.metaitem.01.32607.desc=Pickup this item to see the recipe in NEI +achievement.gt.metaitem.01.32608=Electric Motor UV tier +achievement.gt.metaitem.01.32608.desc=Pickup this item to see the recipe in NEI + +achievement.gt.metaitem.01.32615=Electric Pump LuV tier +achievement.gt.metaitem.01.32615.desc=Pickup this item to see the recipe in NEI +achievement.gt.metaitem.01.32616=Electric Pump ZPM tier +achievement.gt.metaitem.01.32616.desc=Pickup this item to see the recipe in NEI +achievement.gt.metaitem.01.32617=Electric Pump UV tier +achievement.gt.metaitem.01.32617.desc=Pickup this item to see the recipe in NEI + +achievement.gt.metaitem.01.32635=Conveyor Module LuV tier +achievement.gt.metaitem.01.32635.desc=Pickup this item to see the recipe in NEI +achievement.gt.metaitem.01.32636=Conveyor Module ZPM tier +achievement.gt.metaitem.01.32636.desc=Pickup this item to see the recipe in NEI +achievement.gt.metaitem.01.32637=Conveyor Module UV tier +achievement.gt.metaitem.01.32637.desc=Pickup this item to see the recipe in NEI + +achievement.gt.metaitem.01.32645=Electric Piston LuV tier +achievement.gt.metaitem.01.32645.desc=Pickup this item to see the recipe in NEI +achievement.gt.metaitem.01.32646=Electric Piston ZPM tier +achievement.gt.metaitem.01.32646.desc=Pickup this item to see the recipe in NEI +achievement.gt.metaitem.01.32647=Electric Piston UV tier +achievement.gt.metaitem.01.32647.desc=Pickup this item to see the recipe in NEI + +achievement.gt.metaitem.01.32655=Robot Arm LuV tier +achievement.gt.metaitem.01.32655.desc=Pickup this item to see the recipe in NEI +achievement.gt.metaitem.01.32656=Robot Arm ZPM tier +achievement.gt.metaitem.01.32656.desc=Pickup this item to see the recipe in NEI +achievement.gt.metaitem.01.32657=Robot Arm UV tier +achievement.gt.metaitem.01.32657.desc=Pickup this item to see the recipe in NEI + +achievement.gt.metaitem.01.32675=Field Generator tier VI +achievement.gt.metaitem.01.32675.desc=Pickup this item to see the recipe in NEI +achievement.gt.metaitem.01.32676=Field Generator tier VII +achievement.gt.metaitem.01.32676.desc=Pickup this item to see the recipe in NEI +achievement.gt.metaitem.01.32677=Field Generator tier VIII +achievement.gt.metaitem.01.32677.desc=Pickup this item to see the recipe in NEI + +achievement.gt.metaitem.01.32685=Emitter LuV tier +achievement.gt.metaitem.01.32685.desc=Pickup this item to see the recipe in NEI +achievement.gt.metaitem.01.32686=Emitter ZPM tier +achievement.gt.metaitem.01.32686.desc=Pickup this item to see the recipe in NEI +achievement.gt.metaitem.01.32687=Emitter UV tier +achievement.gt.metaitem.01.32687.desc=Pickup this item to see the recipe in NEI + +achievement.gt.metaitem.01.32695=Sensor LuV tier +achievement.gt.metaitem.01.32695.desc=Pickup this item to see the recipe in NEI +achievement.gt.metaitem.01.32696=Sensor ZPM tier +achievement.gt.metaitem.01.32696.desc=Pickup this item to see the recipe in NEI +achievement.gt.metaitem.01.32697=Sensor UV tier +achievement.gt.metaitem.01.32697.desc=Pickup this item to see the recipe in NEI + +achievement.gt.blockmachines.fusioncomputer.tier.06=Fusion Computer Mark I +achievement.gt.blockmachines.fusioncomputer.tier.06.desc=Pickup this item to see the recipe in NEI +achievement.gt.blockmachines.fusioncomputer.tier.07=Fusion Computer Mark II +achievement.gt.blockmachines.fusioncomputer.tier.07.desc=Pickup this item to see the recipe in NEI +achievement.gt.blockmachines.fusioncomputer.tier.08=Fusion Computer Mark III +achievement.gt.blockmachines.fusioncomputer.tier.08.desc=Pickup this item to see the recipe in NEI + +achievement.gt.metaitem.03.32072=Neuro Processing Unit +achievement.gt.metaitem.03.32072.desc=Pickup this item to see the recipe in NEI +achievement.gt.metaitem.03.32095=Wetware Mainframe +achievement.gt.metaitem.03.32095.desc=Pickup this item to see the recipe in NEI + +achievement.item.NanoCircuit=Nano Circuit +achievement.item.NanoCircuit.desc=Pickup this item to see the recipe in NEI +achievement.item.PikoCircuit=Piko Circuit +achievement.item.PikoCircuit.desc=Pickup this item to see the recipe in NEI +achievement.item.QuantumCircuit=Quantum Circuit +achievement.item.QuantumCircuit.desc=Pickup this item to see the recipe in NEI + +achievement.gt.metaitem.01.32605=Ultimate Battery +achievement.gt.metaitem.01.32605.desc=Pickup this item to see the recipe in NEI +achievement.gt.metaitem.01.32609=Really Ultimate Battery +achievement.gt.metaitem.01.32609.desc=Pickup this item to see the recipe in NEI + +achievement.ic2.itemArmorQuantumHelmet=Quantum Helmet +achievement.ic2.itemArmorQuantumHelmet.desc=Pickup this item to see the recipe in NEI +achievement.ic2.itemArmorQuantumChestplate=Quantum Chestplate +achievement.ic2.itemArmorQuantumChestplate.desc=Pickup this item to see the recipe in NEI +achievement.ic2.itemArmorQuantumLegs=Quantum Leggings +achievement.ic2.itemArmorQuantumLegs.desc=Pickup this item to see the recipe in NEI +achievement.ic2.itemArmorQuantumBoots=Quantum Boots +achievement.ic2.itemArmorQuantumBoots.desc=Pickup this item to see the recipe in NEI + +achievement.item.graviChestPlate=Gravi Chestplate +achievement.item.graviChestPlate.desc=Pickup this item to see the recipe in NEI + for.bees.species.clay=Clay for.bees.species.slimeball=Slimeball for.bees.species.peat=Peat @@ -444,3 +536,4 @@ for.bees.species.iridium=Iridium for.bees.species.uranium=Uranium for.bees.species.plutonium=Plutonium for.bees.species.naquadah=Naquadah + diff --git a/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_BOTTOM.png b/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_BOTTOM.png Binary files differnew file mode 100644 index 0000000000..6c7e63b924 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_BOTTOM.png diff --git a/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_BOTTOM_ACTIVE.png b/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_BOTTOM_ACTIVE.png Binary files differnew file mode 100644 index 0000000000..6c7e63b924 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_BOTTOM_ACTIVE.png diff --git a/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_FRONT.png b/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_FRONT.png Binary files differnew file mode 100644 index 0000000000..71b4efec65 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_FRONT.png diff --git a/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_FRONT_ACTIVE.png b/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_FRONT_ACTIVE.png Binary files differnew file mode 100644 index 0000000000..9e46f30b5b --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_FRONT_ACTIVE.png diff --git a/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_SIDE.png b/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_SIDE.png Binary files differnew file mode 100644 index 0000000000..6c7e63b924 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_SIDE.png diff --git a/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_SIDE_ACTIVE.png b/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_SIDE_ACTIVE.png Binary files differnew file mode 100644 index 0000000000..6c7e63b924 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_SIDE_ACTIVE.png diff --git a/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_TOP.png b/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_TOP.png Binary files differnew file mode 100644 index 0000000000..fe23843580 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_TOP.png diff --git a/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_TOP_ACTIVE.png b/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_TOP_ACTIVE.png Binary files differnew file mode 100644 index 0000000000..ee39a79a98 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_TOP_ACTIVE.png diff --git a/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_TOP_ACTIVE.png.mcmeta b/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_TOP_ACTIVE.png.mcmeta new file mode 100644 index 0000000000..60af678259 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/blocks/basicmachines/miner/OVERLAY_TOP_ACTIVE.png.mcmeta @@ -0,0 +1,5 @@ +{ + "animation":{ + "frametime":4 + } +}
\ No newline at end of file diff --git a/src/main/resources/assets/gregtech/textures/blocks/iconsets/MACHINE_CASING_BRICKEDBLASTFURNACE_ACTIVE.png b/src/main/resources/assets/gregtech/textures/blocks/iconsets/MACHINE_CASING_BRICKEDBLASTFURNACE_ACTIVE.png Binary files differnew file mode 100644 index 0000000000..c3b3523c8d --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/blocks/iconsets/MACHINE_CASING_BRICKEDBLASTFURNACE_ACTIVE.png diff --git a/src/main/resources/assets/gregtech/textures/blocks/iconsets/MACHINE_CASING_BRICKEDBLASTFURNACE_INACTIVE.png b/src/main/resources/assets/gregtech/textures/blocks/iconsets/MACHINE_CASING_BRICKEDBLASTFURNACE_INACTIVE.png Binary files differnew file mode 100644 index 0000000000..8a09b069f3 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/blocks/iconsets/MACHINE_CASING_BRICKEDBLASTFURNACE_INACTIVE.png diff --git a/src/main/resources/assets/gregtech/textures/blocks/iconsets/MACHINE_CASING_DENSEBRICKS.png b/src/main/resources/assets/gregtech/textures/blocks/iconsets/MACHINE_CASING_DENSEBRICKS.png Binary files differnew file mode 100644 index 0000000000..a5e7b0e3d1 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/blocks/iconsets/MACHINE_CASING_DENSEBRICKS.png diff --git a/src/main/resources/assets/gregtech/textures/blocks/iconsets/OVERLAY_DATA_ACCESS.png b/src/main/resources/assets/gregtech/textures/blocks/iconsets/OVERLAY_DATA_ACCESS.png Binary files differnew file mode 100644 index 0000000000..4fe71fe547 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/blocks/iconsets/OVERLAY_DATA_ACCESS.png diff --git a/src/main/resources/assets/gregtech/textures/gui/BrickedBlastFurnace.png b/src/main/resources/assets/gregtech/textures/gui/BrickedBlastFurnace.png Binary files differnew file mode 100644 index 0000000000..558db61062 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/gui/BrickedBlastFurnace.png diff --git a/src/main/resources/assets/gregtech/textures/gui/BronzeBlastFurnace.png b/src/main/resources/assets/gregtech/textures/gui/BronzeBlastFurnace.png Binary files differindex bac737bde8..9642624d6e 100644 --- a/src/main/resources/assets/gregtech/textures/gui/BronzeBlastFurnace.png +++ b/src/main/resources/assets/gregtech/textures/gui/BronzeBlastFurnace.png diff --git a/src/main/resources/assets/gregtech/textures/gui/DataAccess2by2.png b/src/main/resources/assets/gregtech/textures/gui/DataAccess2by2.png Binary files differnew file mode 100644 index 0000000000..99cf426016 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/gui/DataAccess2by2.png diff --git a/src/main/resources/assets/gregtech/textures/gui/DataAccess4by4.png b/src/main/resources/assets/gregtech/textures/gui/DataAccess4by4.png Binary files differnew file mode 100644 index 0000000000..8755bacc85 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/gui/DataAccess4by4.png diff --git a/src/main/resources/assets/gregtech/textures/gui/basicmachines/Assembler.png b/src/main/resources/assets/gregtech/textures/gui/basicmachines/Assembler.png Binary files differindex 871a39386e..7ab09c5f2e 100644 --- a/src/main/resources/assets/gregtech/textures/gui/basicmachines/Assembler.png +++ b/src/main/resources/assets/gregtech/textures/gui/basicmachines/Assembler.png diff --git a/src/main/resources/assets/gregtech/textures/gui/basicmachines/DistillationTower.png b/src/main/resources/assets/gregtech/textures/gui/basicmachines/DistillationTower.png Binary files differnew file mode 100644 index 0000000000..0fb00229d7 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/gui/basicmachines/DistillationTower.png diff --git a/src/main/resources/assets/gregtech/textures/gui/basicmachines/Miner.png b/src/main/resources/assets/gregtech/textures/gui/basicmachines/Miner.png Binary files differnew file mode 100644 index 0000000000..a9d7978b69 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/gui/basicmachines/Miner.png diff --git a/src/main/resources/assets/gregtech/textures/gui/basicmachines/NineXNine.png b/src/main/resources/assets/gregtech/textures/gui/basicmachines/NineXNine.png Binary files differnew file mode 100644 index 0000000000..628d86f05f --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/gui/basicmachines/NineXNine.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.metaitem.01/110.png b/src/main/resources/assets/gregtech/textures/items/gt.metaitem.01/110.png Binary files differnew file mode 100644 index 0000000000..f834df88be --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.metaitem.01/110.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.metaitem.01/111.png b/src/main/resources/assets/gregtech/textures/items/gt.metaitem.01/111.png Binary files differnew file mode 100644 index 0000000000..0182e14739 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.metaitem.01/111.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.metaitem.02/557.png b/src/main/resources/assets/gregtech/textures/items/gt.metaitem.02/557.png Binary files differnew file mode 100644 index 0000000000..8efdced399 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.metaitem.02/557.png diff --git a/src/main/resources/assets/ic2/textures/blocks/crop/blockCrop.Rape.1.png b/src/main/resources/assets/ic2/textures/blocks/crop/blockCrop.Rape.1.png Binary files differnew file mode 100644 index 0000000000..131fd33c02 --- /dev/null +++ b/src/main/resources/assets/ic2/textures/blocks/crop/blockCrop.Rape.1.png diff --git a/src/main/resources/assets/ic2/textures/blocks/crop/blockCrop.Rape.2.png b/src/main/resources/assets/ic2/textures/blocks/crop/blockCrop.Rape.2.png Binary files differnew file mode 100644 index 0000000000..f54e4f31dd --- /dev/null +++ b/src/main/resources/assets/ic2/textures/blocks/crop/blockCrop.Rape.2.png diff --git a/src/main/resources/assets/ic2/textures/blocks/crop/blockCrop.Rape.3.png b/src/main/resources/assets/ic2/textures/blocks/crop/blockCrop.Rape.3.png Binary files differnew file mode 100644 index 0000000000..e9216ac272 --- /dev/null +++ b/src/main/resources/assets/ic2/textures/blocks/crop/blockCrop.Rape.3.png diff --git a/src/main/resources/assets/ic2/textures/blocks/crop/blockCrop.Rape.4.png b/src/main/resources/assets/ic2/textures/blocks/crop/blockCrop.Rape.4.png Binary files differnew file mode 100644 index 0000000000..ee0f0d0a6d --- /dev/null +++ b/src/main/resources/assets/ic2/textures/blocks/crop/blockCrop.Rape.4.png |