Compare commits
653 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 2bca23d75d | |||
| b47543d166 | |||
| a340925d98 | |||
| b8e53adf40 | |||
| 44544c598f | |||
| 0be7322c2c | |||
| a521e827db | |||
| bcee2ec427 | |||
| 17648633fe | |||
| fcbebd4ffc | |||
| 9e41d543f5 | |||
| 81cc0b804d | |||
| e1fc9908b3 | |||
| 9ed1535477 | |||
| 1ef345d4a4 | |||
| ff7d1b9719 | |||
| 88c9370e4f | |||
| f2aae3ef0f | |||
| 12739f1e66 | |||
| 81d2170ada | |||
| 0f469e9df6 | |||
| 0f34f09b32 | |||
| 8e54a8fed9 | |||
| ca007a3737 | |||
| 92b6650022 | |||
| e1cd3bba25 | |||
| 689bf6e8d9 | |||
| c8a5049d71 | |||
| 10a1a6d855 | |||
| d9bb81a00f | |||
| 39e038d916 | |||
| 575a625f75 | |||
| 89ea923c43 | |||
| 5d818eb03e | |||
| 12ca8d109a | |||
| e34126458b | |||
| 0ac918c363 | |||
| b6160e40bc | |||
| cf103b06c1 | |||
| f0d0595c8f | |||
| b756d68be1 | |||
| 60b07e5ca5 | |||
| 7c99fca789 | |||
| ab393b0ed1 | |||
| 957bc4c5cc | |||
| 133ed1f09d | |||
| e90dd2f9c6 | |||
| 9719c7ffc3 | |||
| 319d92a371 | |||
| db9ec2b070 | |||
| 5d33005aaf | |||
| 87cf070b33 | |||
| 3a0552c56e | |||
| b1a55f3a79 | |||
| 226e9596ee | |||
| 5cab9c8799 | |||
| 1d2ac29742 | |||
| cbe6012b98 | |||
| 8a0dd192e5 | |||
| 1842febf86 | |||
| a97b35f3d0 | |||
| 00d4c20d9f | |||
| d2b69671f5 | |||
| 1394ab0863 | |||
| 5efc085693 | |||
| 359e3f7e63 | |||
| fa3e41e687 | |||
| 4e86c92720 | |||
| 159f4c7f14 | |||
| aff94cec8c | |||
| 07dfa3db2e | |||
| e0e139900f | |||
| 9942f2d32c | |||
| 858826d1fa | |||
| 90ad345672 | |||
| 9a81ebfa50 | |||
| da9fa3d697 | |||
| ee7fe9f40d | |||
| 2184d03d0b | |||
| cae1621613 | |||
| e8574d03ea | |||
| d28f33d198 | |||
| 7df5bf4076 | |||
| 66760865a3 | |||
| e4a08ba99d | |||
| f11e9e2a4c | |||
| 7a469c1a1d | |||
| e256a4f664 | |||
| 73cc3f8998 | |||
| 9c9a49f9e7 | |||
| 44c0931c02 | |||
| 874f46ed4d | |||
| b7949e4134 | |||
| ea95913ec8 | |||
| 423ab81813 | |||
| d82c713112 | |||
| 45cbc40177 | |||
| 33d7f02323 | |||
| 4e42b17e81 | |||
| 0e7e9313ee | |||
| 2bba843313 | |||
| a0949297d5 | |||
| 420fb272b4 | |||
| debd2de42e | |||
| 3fb813a81b | |||
| ab05f5fec9 | |||
| 9e4f51db6e | |||
| b8d4f0cffa | |||
| fc0f8eab56 | |||
| 74480502b1 | |||
| 7e1bfdb5ac | |||
| 41b7900706 | |||
| 1f9707e256 | |||
| 7656157b0d | |||
| 954ce1442e | |||
| 739277ab64 | |||
| cf656e1540 | |||
| ab6f46077b | |||
| e9c7312e98 | |||
| 006cf2f8c1 | |||
| 636dce66e3 | |||
| 2787796cd3 | |||
| ee67c5ea50 | |||
| 506c516384 | |||
| 011455e327 | |||
| 11d772a32b | |||
| f20f0e003e | |||
| 0f100341d3 | |||
| 73735c5cd5 | |||
| c1713f1682 | |||
| b1feeca41c | |||
| 7d43d79682 | |||
| 5cd148ab5a | |||
| 6c544f2211 | |||
| f455fd1994 | |||
| 1657c88681 | |||
| fd67e0e5c6 | |||
| 0a2f03aa92 | |||
| b03a249da3 | |||
| 6f0fc7d189 | |||
| fd8eecbe93 | |||
| 0a60b3ebb2 | |||
| 15522f5ce7 | |||
| 964559baa1 | |||
| 87c2c94bd4 | |||
| 06f30b3daa | |||
| 68a02ed64b | |||
| c59a6e34eb | |||
| 5b4f450fc3 | |||
| ff0d38d56a | |||
| d591a1492c | |||
| d1ba26311b | |||
| 8733c2c11f | |||
| 4230fc7325 | |||
| 484af8baf3 | |||
| 9456f639d4 | |||
| fe753c540b | |||
| 2fabab3a6a | |||
| 6f39bd8fe8 | |||
| c7d3877129 | |||
| 89058448cf | |||
| 3c737d8d1e | |||
| a807b4e3ad | |||
| 8f740be431 | |||
| 77e07e9b3b | |||
| d04cd2a001 | |||
| 8f2b7fe16b | |||
| 239f8d027a | |||
| c4c4d20303 | |||
| e7c57c0f61 | |||
| 822249dda8 | |||
| 1404806d3d | |||
| 12e3fa9127 | |||
| 8617dc8340 | |||
| 9bc844738c | |||
| eab6483bd7 | |||
| 7ca9405c8b | |||
| 39959145a3 | |||
| 184fe8c1fc | |||
| 6f4722b393 | |||
| 22f552217f | |||
| 8f0e408772 | |||
| 62bbc32763 | |||
| 414b01bddb | |||
| 63c251294e | |||
| 872d8d33cb | |||
| 1801302d8f | |||
| 541f07a7e3 | |||
| 1693271660 | |||
| 3a12fa4843 | |||
| ba85da2c72 | |||
| 469a1e205b | |||
| d238f6e8e4 | |||
| c0fa8ab2dc | |||
| a85ffec9f9 | |||
| 3e5787be76 | |||
| 52ec63413f | |||
| 62ac6a0052 | |||
| 7f7b794c0b | |||
| a97ebaf40d | |||
| 5fca946ef3 | |||
| 80375c436d | |||
| f8446209ce | |||
| 9ce4a65203 | |||
| f5aee56a0b | |||
| 088627aedf | |||
| 2655620fd0 | |||
| 3c86f2eae4 | |||
| cdba0b04fb | |||
| c8d08f9726 | |||
| 259d932946 | |||
| a6fb17b008 | |||
| 1b31185cdb | |||
| d66986df85 | |||
| 4fa78a2add | |||
| 3d1a919e69 | |||
| 98e9faa262 | |||
| 80710cc818 | |||
| b8c63df11b | |||
| 20fd760274 | |||
| 27cdbfb7f3 | |||
| 33d247fec8 | |||
| 75dd1d4bb6 | |||
| a8e79826bd | |||
| b9ece3a18a | |||
| a628a469ce | |||
| 2fca330ff1 | |||
| 3802eace7a | |||
| 2b9c997191 | |||
| 1cb32517ae | |||
| b3b7547325 | |||
| 307a6817d4 | |||
| 0beab559a6 | |||
| a65be62cd1 | |||
| e640918ca0 | |||
| 84e6aaa122 | |||
| 780f68952b | |||
| 49296915c9 | |||
| 0fdc46b358 | |||
| c7980907ed | |||
| 56ecda5173 | |||
| 662dbca3e1 | |||
| 6cb6c21495 | |||
| 79e9a3913a | |||
| 7e89317dd5 | |||
| 59e40ccbd9 | |||
| 774f88ee90 | |||
| 0528879833 | |||
| b6110e4f4a | |||
| 5b82e59264 | |||
| 3a4b171443 | |||
| 8306f5bf0a | |||
| 2ac27fd9ce | |||
| 5bf05f6cb1 | |||
| d01aa28cdc | |||
| 9fcfbf31be | |||
| 21aa5ce33b | |||
| f7ef6eb772 | |||
| 10037a9ac5 | |||
| 888de430ba | |||
| 83d661ab2a | |||
| 1933b4b10d | |||
| 019f570331 | |||
| a537bcf0ee | |||
| 590e435ad6 | |||
| 8d92a51e4f | |||
| 4322910614 | |||
| ebe589a714 | |||
| 6187e6a7bb | |||
| d5f113eb35 | |||
| 9ad5bb21c0 | |||
| 1c88ea7b78 | |||
| 5a976ebfae | |||
| b45669bb82 | |||
| e52cc40dbf | |||
| 8a20d3c1d7 | |||
| 749ebeb91d | |||
| 82586732e3 | |||
| e023d83e62 | |||
| de7cbc4949 | |||
| 71a91e51fb | |||
| 223163aa0a | |||
| bdd22093c3 | |||
| 0367b35ce0 | |||
| 755ac12b8a | |||
| d053c9b1bc | |||
| be4fdfed85 | |||
| e1f9e01404 | |||
| 7121426fc9 | |||
| a94e8504f8 | |||
| 9275bfe001 | |||
| 19802b96e8 | |||
| 5b3c4aef79 | |||
| 4a289470e2 | |||
| d79c0f642c | |||
| 9ecad8749f | |||
| 1e20cd8c08 | |||
| 15d4583c56 | |||
| e8b57c6dc5 | |||
| 8142eb90a6 | |||
| 08abd4a770 | |||
| b8722dbbc0 | |||
| 1ac6d5d967 | |||
| 5c290789e0 | |||
| 38f6bf16f2 | |||
| 0c5c23e9ff | |||
| 4953509255 | |||
| 832d4bb527 | |||
| 62b02d3faf | |||
| 188f105730 | |||
| 006316603d | |||
| 9bb23bcac8 | |||
| 06735f5c39 | |||
| e8143d3618 | |||
| 0d43ca15be | |||
| d18eabe1fc | |||
| d9d491d51c | |||
| 9a5bd114a4 | |||
| 1bd4bd00a8 | |||
| 30cc8c8abc | |||
| 815094e5bf | |||
| 2944873431 | |||
| 1eaddef694 | |||
| 450299cb67 | |||
| 235fc2e81f | |||
| 92fb39d53a | |||
| f8ee4bb1f2 | |||
| 5eece068ba | |||
| 9220ca0048 | |||
| eb0e4289b3 | |||
| ebbb5b1059 | |||
| 1478e4c378 | |||
| d4a1590b51 | |||
| bd1d9701a9 | |||
| 4b3a232add | |||
| b8aa810a5f | |||
| 22facb9748 | |||
| ef3cc8a0a0 | |||
| 55b3dc0823 | |||
| 5982f094ec | |||
| eb93ffc8d8 | |||
| 7b21aa2b07 | |||
| 9445fad5a6 | |||
| fee1c18afe | |||
| 295e720d37 | |||
| 1a7bac1fcc | |||
| 19dee8d339 | |||
| a4f66c5923 | |||
| fe439bfb23 | |||
| 25da0b7357 | |||
| a2344f52e1 | |||
| 75234415ac | |||
| bafc65d3a8 | |||
| 4e8296d3e7 | |||
| 26eeeb4c75 | |||
| c7b1ab756b | |||
| 2dd2b5d034 | |||
| dd9346e53f | |||
| 3b4302583d | |||
| f573b52b1b | |||
| a1042384e3 | |||
| 3dd9aa09d3 | |||
| 2642ced86b | |||
| f2e3d81fd7 | |||
| 1ce82cc3b9 | |||
| 7dffbf78ce | |||
| 0f11c1e0a4 | |||
| 77b544ce4f | |||
| 8e031ca8d6 | |||
| 996d387525 | |||
| 1cda087c03 | |||
| 007c7ceb56 | |||
| c67dba2f13 | |||
| 400fcdb633 | |||
| fba157a707 | |||
| 538965e74a | |||
| 0a56c724ed | |||
| 8d8d3dd2d7 | |||
| d17f8cec92 | |||
| d0acc9ccf1 | |||
| 17b919a171 | |||
| 529d03fa9e | |||
| c0a4762ffc | |||
| 003ef8672c | |||
| eaf2873649 | |||
| 66d00a4600 | |||
| d79d284690 | |||
| 3337eb9ae3 | |||
| ca104912d6 | |||
| 7233b11284 | |||
| d5491549eb | |||
| f943106419 | |||
| 57fa5576af | |||
| 346e58ff25 | |||
| 42c2be5c05 | |||
| 0d63f560d3 | |||
| 312abce956 | |||
| 6379cfe3a2 | |||
| 208cd70725 | |||
| 130fc74768 | |||
| 6bbea481b8 | |||
| 55d7ac82e5 | |||
| 3df93fc66d | |||
| f5412152a4 | |||
| 46955643b9 | |||
| fee5b7fdfc | |||
| 7c28a71e10 | |||
| 7f049e099d | |||
| 37ce6b262e | |||
| b79cd732b2 | |||
| 80fbb58d4f | |||
| 4ee44970b6 | |||
| ba71a82288 | |||
| e323e08192 | |||
| 3faab6ae25 | |||
| 3c53fddd8e | |||
| d638d083c2 | |||
| 136c204421 | |||
| 6cda95b979 | |||
| f3233d948b | |||
| 000cb555e3 | |||
| 82af7e6dde | |||
| d5eb16a6b0 | |||
| 200ca8d9cc | |||
| fe8bebe1c3 | |||
| d8928070fd | |||
| fd1dd982c1 | |||
| d7a09f70ef | |||
| deaddb8e82 | |||
| 4e3eb89f84 | |||
| 3e56311f2f | |||
| cb62d3a706 | |||
| adf1bd0191 | |||
| f32289d881 | |||
| 26bb08ddb5 | |||
| b4471b1abb | |||
| abe3334488 | |||
| 45dd8930d3 | |||
| 195cbecdb3 | |||
| c4b5100283 | |||
| 8350ae5f45 | |||
| 3e0bfec882 | |||
| bfa574ed21 | |||
| 5367315fd3 | |||
| 9d8e23a2ea | |||
| 094ee93dbc | |||
| 00e794f03f | |||
| e1131bd1e2 | |||
| 9ab91cd98b | |||
| 8606bd5c61 | |||
| 8ed68d9c74 | |||
| ee086366ed | |||
| dd371c2c7f | |||
| 2ed64f4944 | |||
| 25413c58f6 | |||
| 6d76bb989c | |||
| afe98cbe04 | |||
| 300e26a372 | |||
| 434386a7ff | |||
| daaac300b8 | |||
| fcdd0bc378 | |||
| bed724b1ce | |||
| 2f8cffdd93 | |||
| 2458f9c890 | |||
| 0a9e53d78c | |||
| cd49869df7 | |||
| f14a32809e | |||
| ff65e3936a | |||
| a3284ffdab | |||
| fe215f0a91 | |||
| fb31fab2cc | |||
| f2a9d8c806 | |||
| 3faa3db2b6 | |||
| f733a73d62 | |||
| 268ed4c753 | |||
| 43c06131c6 | |||
| 608e3a020c | |||
| f63adf1eca | |||
| 749742a8aa | |||
| c6af3d9a70 | |||
| ec6f331168 | |||
| fa1ea8582d | |||
| 98d6740bb2 | |||
| 10ab5d0d5a | |||
| 65d4f2fd1a | |||
| 91f6fedf3a | |||
| c6437465b7 | |||
| 52da8bdb67 | |||
| e9e06fa7ee | |||
| ef85c284c6 | |||
| 5225ea426b | |||
| 5304b3febe | |||
| 8cc1cab725 | |||
| d1622afa38 | |||
| d9f039e1f4 | |||
| 5f401bf548 | |||
| 4759a6d204 | |||
| f6f8ac20e8 | |||
| a005f1c2e8 | |||
| 27c5498935 | |||
| 783a7a62a7 | |||
| a23b35ed63 | |||
| d50dcc31fa | |||
| 2356a38898 | |||
| 69c9407796 | |||
| 0232e83196 | |||
| d43e8d19dd | |||
| bdd522e8d9 | |||
| 129b8f5a2b | |||
| 669fad0497 | |||
| 8e8cbca57b | |||
| 42651ed087 | |||
| cbbb9d1ade | |||
| 20e9eb66b2 | |||
| 85a503e65d | |||
| fd7ed5bbf0 | |||
| 9b19f5b0e2 | |||
| 3cb9695026 | |||
| 048c2d0b46 | |||
| f5a56682dd | |||
| 190060754d | |||
| 5ec07dc4fe | |||
| 2003506fd1 | |||
| 90a282bf05 | |||
| 194fa38b9f | |||
| 9599a31893 | |||
| 8e1d90a873 | |||
| 3989dbd860 | |||
| a620245bbe | |||
| 2e41d44964 | |||
| d8660a53be | |||
| eb883219a9 | |||
| d13bbe06ac | |||
| 0db7e70722 | |||
| b9381fc2e1 | |||
| 26184c3190 | |||
| a4b16c21a3 | |||
| 5ec9600177 | |||
| 2b36df9ebf | |||
| 832d517e98 | |||
| 94226f3219 | |||
| e83429e1bb | |||
| 65482357f7 | |||
| ae69ad6d8a | |||
| d449ee47c4 | |||
| c45a15e13b | |||
| 5cda370746 | |||
| 9bde4dd899 | |||
| d37345ccfe | |||
| ecbcc56997 | |||
| 8ccc114f92 | |||
| 19e7fd3544 | |||
| 1393b4c9dd | |||
| 8c45807ecd | |||
| 5f416bcca2 | |||
| 702bab1a12 | |||
| bd16641638 | |||
| 3e206ee544 | |||
| e1b66a2a1c | |||
| 0f41d4b60c | |||
| 962bd3af32 | |||
| ddd51c419c | |||
| 4513d33c13 | |||
| 0466539c1c | |||
| df06aaf271 | |||
| 7d3ecd580e | |||
| 97e065ea1f | |||
| 4b11b8857b | |||
| b2afa0398c | |||
| 679ea1c332 | |||
| e2c62f0e27 | |||
| 7693be3ec5 | |||
| 23b6e195ac | |||
| 7715f605eb | |||
| 2bed72bb79 | |||
| 61d0781099 | |||
| 1c7a28c606 | |||
| 2dc2f90d5b | |||
| 6011b2dd49 | |||
| 53fc345e88 | |||
| 46b1d1ffdc | |||
| 97f04922b9 | |||
| 70418b0bb2 | |||
| ff042a394b | |||
| bb453b0d35 | |||
| c411a800f6 | |||
| 476c310de6 | |||
| d0b8a5f33f | |||
| 51e82587c7 | |||
| 70444999b9 | |||
| 2139b810d0 | |||
| c402390282 | |||
| 237463dd94 | |||
| 6eb2a9504a | |||
| 64651feb3c | |||
| 1e2e34ac54 | |||
| 36eb8c807e | |||
| 58afa6539f | |||
| 1056629545 | |||
| 2de3a2ecee | |||
| cf9ab8a13b | |||
| 3e78c713d1 | |||
| 2f50568237 | |||
| 92fa237ce0 | |||
| 7747804385 | |||
| fb4995da62 | |||
| 3f5c299d09 | |||
| 404ef5624b | |||
| d32dbfd3c8 | |||
| 7483314190 | |||
| 6b40fda793 | |||
| 19cdea7eb5 | |||
| d4c9e5c490 | |||
| fc300745cd | |||
| 9f63859769 | |||
| 271e8889a1 | |||
| 36af72faeb | |||
| 2a1ba12516 | |||
| 260b2d1c92 | |||
| dffea9a167 | |||
| 086b9ab1e3 | |||
| 17f73f214d | |||
| 423aaf0762 | |||
| adfc2577ed | |||
| c1f260d95f | |||
| 848f4238d2 | |||
| e7dadcddbe | |||
| d6157d78a1 | |||
| 5cdeff01be | |||
| 077ff17078 | |||
| 6a88728544 | |||
| fdd67bbba4 | |||
| ec3b464655 | |||
| 16d6d55d7f | |||
| 0ea86c939c | |||
| 2cbff91ab0 | |||
| 3dff3a5d54 | |||
| f3349b0a2d | |||
| f667e9a5f0 | |||
| 2c0a2975de | |||
| 2e3d6b721a | |||
| 94e294f4e9 | |||
| 91620a0042 | |||
| ffc79b5494 | |||
| ce7c29d0ac | |||
| 6ece190ac4 | |||
| 00a596ea8f | |||
| 1fc1d5517d | |||
| d5fc7a5b21 | |||
| 1f85d0f607 | |||
| 5efa6d6251 | |||
| 4269a66a4b | |||
| df2a7c1858 |
@@ -0,0 +1,3 @@
|
||||
* text=auto eol=lf
|
||||
*.java text diff=java eol=lf
|
||||
*.gradle text diff=java eol=lf
|
||||
+13
-78
@@ -15,27 +15,7 @@ Applied Energistics 2 crashing, have a suggestion, found a bug? Create an issue
|
||||
* If it is already possible with vanilla and AE2 itself, the suggestion will be considered invalid.
|
||||
* Asking for a smaller version, more compact version, or more efficient version of something will also be considered invalid.
|
||||
2. Go to [the issues page](https://github.com/AppliedEnergistics/Applied-Energistics-2/issues) and click [new issue](https://github.com/AppliedEnergistics/Applied-Energistics-2/issues/new)
|
||||
3. Enter your a title of your issue (something that summarizes your issue), and then create a detailed description of the issue.
|
||||
* Do not tag it with something like `[Feature]`, `[Bug]`, or a version.
|
||||
* Restrict it to a single bug or feature, it makes managing them way easier for us.
|
||||
* The following details are required. Also refer to the issue template when creating one.
|
||||
* Forge version
|
||||
* AE2 version
|
||||
* Crash log, when reporting a crash (Please make sure to use [pastebin](http://pastebin.com/))
|
||||
* Never post an excerpt of what you consider important
|
||||
* Always post the full log
|
||||
* Other mods and their version, when reporting an issue between AE and another mod
|
||||
* Also consider updating these before submitting a new issue, it might be already fixed
|
||||
* A detailed description of the bug or feature
|
||||
* To further help in resolving your issues please try to include the follow if applicable:
|
||||
* What was expected?
|
||||
* How to reproduce the problem?
|
||||
* This is usually a great detail and allows us to fix it way faster
|
||||
* Server or Single Player?
|
||||
* Screen shots or Pictures of the problem
|
||||
* Mod Pack using and version?
|
||||
* Keep in mind that some mods might use an outdated version of AE2
|
||||
* If so you should report it to your modpack
|
||||
3. If applicable, use on of the provided templates. It will also contain further details about required or useful information to add.
|
||||
4. Click `Submit New Issue`, and wait for feedback!
|
||||
|
||||
Providing as many details as possible does help us to find and resolve the issue faster and also you getting a fixed version as fast as possible.
|
||||
@@ -47,17 +27,19 @@ Please note that we might close any issue not matching these requirements.
|
||||
* Submit an issue to the github project, assuming one does not already exist.
|
||||
* Clearly describe the issue including steps to reproduce when it is a bug.
|
||||
* Make sure you fill in the earliest version that you know has the issue.
|
||||
* Waiting for feedback is suggested.
|
||||
* Fork the repository on GitHub
|
||||
* Create a topic branch from where you want to base your work.
|
||||
* This is revison branch that is under active development.
|
||||
* This `master` branch that is under active development.
|
||||
* Only target release branches if you are certain your fix must be on that
|
||||
branch.
|
||||
* To quickly create a topic branch based on the development branch; `git
|
||||
checkout -b fix/master/my_contribution branch`. Please avoid working
|
||||
directly on the `active development` branch.
|
||||
checkout -b my_contribution_branch`. Please avoid working
|
||||
directly on the `master` branch.
|
||||
* Make commits of logical units.
|
||||
* Check for unnecessary whitespace with `git diff --check` before committing.
|
||||
* Make sure your commit messages are in the proper format.
|
||||
* You can either use the gradle `spotlessCheck` and `spotlessApply` tasks or use the provided eclipse formatter config in `/codeformat`
|
||||
|
||||
````
|
||||
(#12345) Make the example in CONTRIBUTING imperative and concrete
|
||||
@@ -72,20 +54,18 @@ Please note that we might close any issue not matching these requirements.
|
||||
from our issue tracker. The body describes the behavior without the patch,
|
||||
why this is a problem, and how the patch fixes the problem when applied.
|
||||
````
|
||||
* Always fully test your changes. If they are large engouh in scope, then fully test AE2.
|
||||
* Always fully test your changes. If they are large enough in scope, then fully test AE2.
|
||||
* Describing the process you used to test your changes in detail will help speed up this process.
|
||||
|
||||
## Making Trivial Changes
|
||||
|
||||
### Documentation
|
||||
|
||||
For changes of a trivial nature to comments and documentation, it is not
|
||||
always necessary to create a new issue. In this case, it is
|
||||
appropriate to start the first line of a commit with '(doc)' instead of
|
||||
a ticket number.
|
||||
For changes of a trivial nature to comments and documentation, it is not always necessary to create a new issue.
|
||||
We usually use `squash and merge`. This allows us to easily append the PR number for future reference.
|
||||
|
||||
````
|
||||
(doc) Add documentation commit example to CONTRIBUTING
|
||||
Add documentation commit example to CONTRIBUTING
|
||||
|
||||
There is no example for contributing a documentation commit
|
||||
to the Puppet repository. This is a problem because the contributor
|
||||
@@ -112,56 +92,11 @@ the styling guidelines used by AE.
|
||||
|
||||
PRs that do not conform to these standards will be rejected.
|
||||
|
||||
You can find presets for Eclipse and IntelliJ IDEA in the `codeformat` folder.
|
||||
We try to keep them up to date. Please report any case of maintaining the correct formatting.
|
||||
You can find presets for Eclipse in the `codeformat` folder. For IntelliJ IDEA we recommend the eclipse formatter plugin.
|
||||
|
||||
### Whitespace
|
||||
There is also a gradle task available to check for syntax errors (`spotlessCheck`) as well as applying the fixes (`spotlessApply`).
|
||||
|
||||
#### Tabs or spaces
|
||||
Configure your IDE to use tabs as padding whitespace. Ensure that there is no extra whitespace
|
||||
at the end of lines, or on blank lines.
|
||||
|
||||
#### Pad parenthes with whitespace
|
||||
````
|
||||
if( item.equals( newItem )
|
||||
|
||||
public void DeleteItem( item )
|
||||
|
||||
catch( Throwable )
|
||||
````
|
||||
|
||||
### Braces
|
||||
|
||||
Place opening and closing braces on a new line. Always include open and close braces, even if
|
||||
the body is a single line.
|
||||
|
||||
````
|
||||
if( item.equals( newItem )
|
||||
{
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public void DeleteItem( item )
|
||||
{
|
||||
|
||||
}
|
||||
````
|
||||
|
||||
## Submitting Changes
|
||||
|
||||
* Push your changes to a topic branch in your fork of the repository.
|
||||
* Submit a pull request to the repository in the puppetlabs organization.
|
||||
* Update your issue to mark that you have submitted code and are ready for it to be reviewed.
|
||||
* Include a link to the pull request in the ticket.
|
||||
* The core team looks at Pull Requests on a regular basis.
|
||||
* There are many reasons why it will take a long time to pull your PR. Be patient, we'll
|
||||
get to it.
|
||||
* After feedback has been given we expect responses within two weeks. After two
|
||||
weeks will may close the pull request if it isn't showing any activity.
|
||||
We try to keep them up to date. Please report any problem with maintaining the correct formatting.
|
||||
|
||||
# Additional Resources
|
||||
|
||||
|
||||
@@ -1,16 +1,13 @@
|
||||
<!-- Provide a summary of the issue in the Title above, please do not "[Tag]" it -->
|
||||
<!-- Provide a summary of the issue in the Title above, please do not "[Tag]" it. -->
|
||||
|
||||
#### Description
|
||||
<!-- Always use the most recent version from ae-mod.info, it might already be fixed -->
|
||||
<!-- When describing a bug, tell us what was expected and what the actual behaviour is -->
|
||||
<!-- When suggesting a feature, tell us how it should work and why it should be considered -->
|
||||
**Describe the issue**
|
||||
<!-- Always use the most recent version from ae-mod.info, it might already be fixed. -->
|
||||
<!-- When describing a bug, tell us what was expected and what the actual behaviour is. -->
|
||||
<!-- When suggesting a feature, tell us how it should work and why it should be considered. -->
|
||||
|
||||
#### Environment
|
||||
**Environment**
|
||||
<!-- Include as many relevant details about the environment -->
|
||||
<!-- Like the used version, SP/MP, other mods and their version, crashlogs etc -->
|
||||
<!-- Please use pastebin or gist for posting the complete crashlog, no excerpt -->
|
||||
<!-- The following ones are required, please note "latest" is not a version -->
|
||||
<!-- A forced crash report by pressing F3+c for 10 seconds. Use pastebin, gist, etc. -->
|
||||
<!-- Without it, we will automatically close the issue. -->
|
||||
|
||||
- Minecraft Version:
|
||||
- AE2 Version:
|
||||
- Forge Version:
|
||||
- Environment:
|
||||
@@ -22,9 +22,7 @@ about: You found a bug or encountered a crash? Please report it here.
|
||||
|
||||
**Environment**
|
||||
<!-- Include as many relevant details about the environment -->
|
||||
<!-- Like the used version, SP/MP, other mods and their version -->
|
||||
<!-- The following ones are required, please note "latest" is not a version -->
|
||||
<!-- A forced crash report by pressing F3+c for 10 seconds. Use pastebin, gist, etc. -->
|
||||
<!-- Without it, we will automatically close the issue. -->
|
||||
|
||||
- Minecraft Version:
|
||||
- AE2 Version:
|
||||
- Forge Version:
|
||||
- Environment:
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
name: 'Build branches'
|
||||
|
||||
on:
|
||||
push:
|
||||
branches-ignore: [ master ]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Set up JDK 1.8
|
||||
uses: actions/setup-java@v1
|
||||
with:
|
||||
java-version: 1.8
|
||||
- name: Grant execute permission for gradlew
|
||||
run: chmod +x gradlew
|
||||
- name: Use gradle cache for faster builds
|
||||
uses: actions/cache@v1
|
||||
with:
|
||||
path: ~/.gradle/caches
|
||||
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
|
||||
- name: Generate Resources
|
||||
run: ./gradlew generateData
|
||||
- name: Build
|
||||
run: ./gradlew build
|
||||
- uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: dist
|
||||
path: build/libs/
|
||||
@@ -0,0 +1,15 @@
|
||||
name: 'Lock threads'
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 0 * * *'
|
||||
|
||||
jobs:
|
||||
lock:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: dessant/lock-threads@v2
|
||||
with:
|
||||
github-token: ${{ github.token }}
|
||||
issue-lock-inactive-days: '180'
|
||||
pr-lock-inactive-days: '180'
|
||||
@@ -0,0 +1,33 @@
|
||||
name: 'Build master'
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ master ]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Set up JDK 1.8
|
||||
uses: actions/setup-java@v1
|
||||
with:
|
||||
java-version: 1.8
|
||||
- name: Grant execute permission for gradlew
|
||||
run: chmod +x gradlew
|
||||
- name: Use gradle cache for faster builds
|
||||
uses: actions/cache@v1
|
||||
with:
|
||||
path: ~/.gradle/caches
|
||||
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
|
||||
- name: Clean gradle
|
||||
run: ./gradlew clean --no-daemon --max-workers 1
|
||||
- name: Validate no assets
|
||||
run: test ! -d ./src/generated
|
||||
- name: Generate assets
|
||||
run: ./gradlew runData --no-daemon --max-workers 1
|
||||
- name: Validate assets
|
||||
run: test -d ./src/generated -a -f ./src/generated/resources/.cache/cache
|
||||
- name: Build with Gradle
|
||||
run: ./gradlew build --no-daemon --max-workers 1
|
||||
@@ -0,0 +1,39 @@
|
||||
name: 'Build PRs'
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches: [ master ]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Set up JDK 1.8
|
||||
uses: actions/setup-java@v1
|
||||
with:
|
||||
java-version: 1.8
|
||||
- name: Grant execute permission for gradlew
|
||||
run: chmod +x gradlew
|
||||
- name: Use gradle cache for faster builds
|
||||
uses: actions/cache@v1
|
||||
with:
|
||||
path: ~/.gradle/caches
|
||||
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
|
||||
- name: Clean gradle
|
||||
run: ./gradlew clean --no-daemon --max-workers 1
|
||||
- name: Validate no assets
|
||||
run: test ! -d ./src/generated
|
||||
- name: Generate assets
|
||||
run: ./gradlew runData --no-daemon --max-workers 1
|
||||
- name: Validate assets
|
||||
run: test -d ./src/generated -a -f ./src/generated/resources/.cache/cache
|
||||
- name: Build with Gradle
|
||||
env:
|
||||
PR_NUMBER: ${{ github.event.pull_request.number }}
|
||||
run: ./gradlew build --no-daemon --max-workers 1
|
||||
- uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: dist
|
||||
path: build/libs/
|
||||
@@ -0,0 +1,58 @@
|
||||
name: 'Release'
|
||||
|
||||
on:
|
||||
create:
|
||||
tags:
|
||||
- fabric/v*
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Export current tag as environment variable
|
||||
env:
|
||||
TAG: ${{ github.event.ref }}
|
||||
run: echo "::set-env name=TAG::${TAG}"
|
||||
- uses: actions/checkout@v2
|
||||
- name: Set up JDK 1.8
|
||||
uses: actions/setup-java@v1
|
||||
with:
|
||||
java-version: 1.8
|
||||
- name: Grant execute permission for gradlew
|
||||
run: chmod +x gradlew
|
||||
- name: Validate no assets
|
||||
run: test ! -d ./src/generated
|
||||
- name: Generate resources
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
run: ./gradlew generateData
|
||||
- name: Build with Gradle
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
run: ./gradlew build
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: dist
|
||||
path: build/libs/
|
||||
- name: Publish to github packages
|
||||
env:
|
||||
KEY_STORE_PASS: ${{ secrets.KEY_STORE_PASS }}
|
||||
KEY_STORE_ALIAS: ${{ secrets.KEY_STORE_ALIAS }}
|
||||
KEY_STORE_KEY_PASS: ${{ secrets.KEY_STORE_KEY_PASS }}
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
run: ./gradlew publishMavenPublicationToGitHubPackagesRepository --no-daemon --max-workers 1
|
||||
- name: Publish to modmaven
|
||||
env:
|
||||
KEY_STORE_PASS: ${{ secrets.KEY_STORE_PASS }}
|
||||
KEY_STORE_ALIAS: ${{ secrets.KEY_STORE_ALIAS }}
|
||||
KEY_STORE_KEY_PASS: ${{ secrets.KEY_STORE_KEY_PASS }}
|
||||
MODMAVEN_USER: ${{ secrets.MODMAVEN_USER }}
|
||||
MODMAVEN_PASSWORD: ${{ secrets.MODMAVEN_PASSWORD }}
|
||||
run: ./gradlew publishMavenPublicationToModmavenRepository --no-daemon --max-workers 1
|
||||
- name: Upload to curseforge
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
CURSEFORGE: ${{ secrets.CURSEFORGE }}
|
||||
run: ./gradlew curseforge
|
||||
+3
-1
@@ -14,12 +14,14 @@
|
||||
!README.md
|
||||
!LICENSE
|
||||
|
||||
# include sourcecode
|
||||
# include sourcecode except generated
|
||||
!src/
|
||||
src/generated
|
||||
|
||||
# include git important files
|
||||
!.gitmodules
|
||||
!.gitignore
|
||||
!.gitattributes
|
||||
|
||||
# code format to reduce noise in git commits
|
||||
!codeformat/
|
||||
|
||||
-33
@@ -1,33 +0,0 @@
|
||||
sudo: required
|
||||
dist: trusty
|
||||
|
||||
language: java
|
||||
jdk:
|
||||
- oraclejdk8
|
||||
- openjdk8
|
||||
|
||||
before_cache:
|
||||
- rm -f $HOME/.gradle/caches/modules-2/modules-2.lock
|
||||
- rm -fr $HOME/.gradle/caches/*/plugin-resolution/
|
||||
- rm -f $HOME/.gradle/caches/minecraft/ForgeVersion.json
|
||||
- rm -f $HOME/.gradle/caches/minecraft/ForgeVersion.json.etag
|
||||
- rm -fr $HOME/.gradle/caches/minecraft/deobfedDeps
|
||||
- rm -f $HOME/.gradle/caches/*/fileHashes/fileHashes.bin
|
||||
- rm -f $HOME/.gradle/caches/*/fileHashes/fileHashes.lock
|
||||
|
||||
cache:
|
||||
directories:
|
||||
- '$HOME/.m2/repository'
|
||||
- '$HOME/.sonar/cache'
|
||||
- '$HOME/.gradle/wrapper'
|
||||
- '$HOME/.gradle/caches'
|
||||
|
||||
addons:
|
||||
sonarcloud:
|
||||
organization: "appliedenergistics"
|
||||
|
||||
install: "./gradlew setupCIWorkspace"
|
||||
script:
|
||||
- "./gradlew build"
|
||||
- "./gradlew test"
|
||||
- "./gradlew sonarqube"
|
||||
@@ -1,5 +1,6 @@
|
||||
[](https://travis-ci.org/AppliedEnergistics/Applied-Energistics-2)
|
||||
[](https://github.com/AppliedEnergistics/Applied-Energistics-2/releases)
|
||||
[](https://github.com/AppliedEnergistics/Applied-Energistics-2/actions?query=workflow%3A%22Build+master%22)
|
||||
[](https://github.com/AppliedEnergistics/Applied-Energistics-2/releases)
|
||||
[](https://github.com/AppliedEnergistics/Applied-Energistics-2/releases)
|
||||
|
||||
# Applied Energistics 2
|
||||
|
||||
@@ -11,10 +12,9 @@
|
||||
* [Downloads](#downloads)
|
||||
* [Installation](#installation)
|
||||
* [Issues](#issues)
|
||||
* [API](#applied-energistics-2-api)
|
||||
* [Building](#building)
|
||||
* [Contribution](#contribution)
|
||||
* [API](#applied-energistics-2-api)
|
||||
* [CraftTweaker](#applied-energistics-2-crafttweaker)
|
||||
* [Localization](#applied-energistics-2-localization)
|
||||
* [Credits](#credits)
|
||||
|
||||
@@ -32,20 +32,20 @@ A Mod about Matter, Energy and using them to conquer the world..
|
||||
## License
|
||||
|
||||
* Applied Energistics 2 API
|
||||
- (c) 2013 - 2018 AlgorithmX2 et al
|
||||
- (c) 2013 - 2020 AlgorithmX2 et al
|
||||
- [](http://opensource.org/licenses/MIT)
|
||||
* Applied Energistics 2
|
||||
- (c) 2013 - 2018 AlgorithmX2 et al
|
||||
- (c) 2013 - 2020 AlgorithmX2 et al
|
||||
- [](https://raw.githubusercontent.com/AppliedEnergistics/Applied-Energistics-2/rv2/LICENSE)
|
||||
* Textures and Models
|
||||
- (c) 2013 - 2018 AlgorithmX2 et al
|
||||
- (c) 2013 - 2020 AlgorithmX2 et al
|
||||
- [](https://creativecommons.org/licenses/by-nc-sa/3.0/)
|
||||
* Text and Translations
|
||||
- [](https://creativecommons.org/publicdomain/zero/1.0/)
|
||||
|
||||
## Downloads
|
||||
|
||||
Downloads can be found on [CurseForge](http://www.curse.com/mc-mods/minecraft/223794-applied-energistics-2) or on the [official website](http://ae-mod.info/Downloads/).
|
||||
Downloads can be found on [CurseForge](https://www.curseforge.com/minecraft/mc-mods/applied-energistics-2) or on the [official website](http://ae-mod.info/Downloads/).
|
||||
|
||||
## Installation
|
||||
|
||||
@@ -59,49 +59,76 @@ Applied Energistics 2 crashing, have a suggestion, found a bug? Create an issue
|
||||
* If it is already possible with vanilla and AE2 itself, the suggestion will be considered invalid.
|
||||
* Asking for a smaller version, more compact version, or more efficient version of something will also be considered invalid.
|
||||
2. Go to [the issues page](https://github.com/AppliedEnergistics/Applied-Energistics-2/issues) and click [new issue](https://github.com/AppliedEnergistics/Applied-Energistics-2/issues/new)
|
||||
3. Enter your a title of your issue (something that summarizes your issue), and then create a detailed description of the issue.
|
||||
* Do not tag it with something like `[Feature]`, `[Bug]`, or a version.
|
||||
* Restrict it to a single bug or feature, it makes managing them way easier for us.
|
||||
* The following details are required. Also refer to the issue template when creating one.
|
||||
* Forge version
|
||||
* AE2 version
|
||||
* Crash log, when reporting a crash (Please make sure to use [pastebin](http://pastebin.com/))
|
||||
* Never post an excerpt of what you consider important
|
||||
* Always post the full log
|
||||
* Other mods and their version, when reporting an issue between AE and another mod
|
||||
* Also consider updating these before submitting a new issue, it might be already fixed
|
||||
* A detailed description of the bug or feature
|
||||
* To further help in resolving your issues please try to include the follow if applicable:
|
||||
* What was expected?
|
||||
* How to reproduce the problem?
|
||||
* This is usually a great detail and allows us to fix it way faster
|
||||
* Server or Single Player?
|
||||
* Screen shots or Pictures of the problem
|
||||
* Mod Pack using and version?
|
||||
* Keep in mind that some mods might use an outdated version of AE2
|
||||
* If so you should report it to your modpack
|
||||
3. If applicable, use on of the provided templates. It will also contain further details about required or useful information to add.
|
||||
4. Click `Submit New Issue`, and wait for feedback!
|
||||
|
||||
Providing as many details as possible does help us to find and resolve the issue faster and also you getting a fixed version as fast as possible.
|
||||
|
||||
Please note that we might close any issue not matching these requirements.
|
||||
|
||||
## Applied Energistics 2 API
|
||||
|
||||
The API for Applied Energistics 2. It is open source to discuss changes, improve documentation, and provide better add-on support in general.
|
||||
|
||||
### Maven
|
||||
|
||||
Our authoritative Maven repository is Github Packages, which you can also use in your builds. Use of Github Packages
|
||||
[requires special setup](https://docs.github.com/en/packages/using-github-packages-with-your-projects-ecosystem/configuring-gradle-for-use-with-github-packages#authenticating-to-github-packages)
|
||||
to authenticate with your personal access token.
|
||||
|
||||
AE2 is also available without authentication from Modmaven.
|
||||
|
||||
You can use the following snippet as example on how to add a repository to your gradle build file.
|
||||
|
||||
repositories {
|
||||
maven {
|
||||
name "Modmaven"
|
||||
url "https://modmaven.k-4u.nl/"
|
||||
// For Gradle 5.1 and above, limit it to just AE2
|
||||
content {
|
||||
includeGroup 'appeng'
|
||||
}
|
||||
}
|
||||
|
||||
// Required for libblockattributes
|
||||
maven {
|
||||
name = "BuildCraft"
|
||||
url = "https://mod-buildcraft.com/maven"
|
||||
content {
|
||||
includeGroup "alexiil.mc.lib"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
When compiling against the AE2 API you can use gradle dependencies, just add
|
||||
|
||||
dependencies {
|
||||
modCompileOnly "appeng:appliedenergistics2-fabric:VERSION:api"
|
||||
|
||||
// Include only if you want AE2 at runtime
|
||||
modRuntimeOnly "appeng:appliedenergistics2-fabric:VERSION"
|
||||
}
|
||||
|
||||
or add the `compileOnly` line to your existing dependencies task to your build.gradle.
|
||||
|
||||
Replace `VERSION` with the desired one. With 1.15+ we switched to using [semver](https://semver.org/).
|
||||
It is highly recommended following its specification and further considering an upper bound for the dependency version.
|
||||
A change of the `MAJOR` version will be an API break and can lead to various crashes. Better to inform a player about the addon not supporting the new version until it could be tested or updated.
|
||||
|
||||
An example string would be `appeng:appliedenergistics2:7.0.0-alpha.6:api` for the API only or `appeng:appliedenergistics2:7.0.0-alpha.6` for the whole mod.
|
||||
|
||||
Builds obtained [here](https://github.com/AppliedEnergistics/Applied-Energistics-2/releases) or via [maven](https://github.com/AppliedEnergistics/Applied-Energistics-2/packages) should work in a development environment.
|
||||
However the dependency might need to be wrapped in `fg.deobf()` like `runtimeOnly fg.deobf("appeng:appliedenergistics2:VERSION:api")`
|
||||
|
||||
## Building
|
||||
|
||||
1. Clone this repository via
|
||||
- SSH `git clone git@github.com:AppliedEnergistics/Applied-Energistics-2.git` or
|
||||
- HTTPS `git clone https://github.com/AppliedEnergistics/Applied-Energistics-2.git`
|
||||
2. Setup workspace
|
||||
- Decompiled source `gradlew setupDecompWorkspace`
|
||||
- Obfuscated source `gradlew setupDevWorkspace`
|
||||
- CI server `gradlew setupCIWorkspace`
|
||||
3. Build `gradlew build`. Jar will be in `build/libs`
|
||||
4. For core developer: Setup IDE
|
||||
- IntelliJ: Import into IDE, execute `gradlew genIntellijRuns` and change RunConfiguration to `*_main` as quickfix for [ForgeGradle](https://github.com/MinecraftForge/ForgeGradle/issues/357)
|
||||
- Eclipse: execute `gradlew eclipse`
|
||||
5. For add-on developer: Core-Mod Detection
|
||||
- In order to have FML detect AE from your dev environment, add the following VM Option to your run profile
|
||||
- `-Dfml.coreMods.load=appeng.coremod.AppEngCore`
|
||||
2. Build using the `gradlew runData build` command. Jar will be in `build/libs`
|
||||
3. For core developer: Setup IDE
|
||||
- IntelliJ: Import as gradle project
|
||||
- Eclipse: Import as gradle project or execute gradle task `eclipse` and potentially `genEclipseRuns`
|
||||
|
||||
## Contribution
|
||||
|
||||
@@ -127,86 +154,16 @@ Here are a few things to keep in mind that will help get your PR approved.
|
||||
* SSH `git clone git@github.com:<your username>/Applied-Energistics-2.git` or
|
||||
* HTTPS `git clone https://github.com/<your username>/Applied-Energistics-2.git`
|
||||
3. Change code base
|
||||
4. Add changes to git `git add -A`
|
||||
5. Commit changes to your clone `git commit -m "<summery of made changes>"`
|
||||
6. Push to your fork `git push`
|
||||
7. Create a Pull-Request on GitHub
|
||||
8. Wait for review
|
||||
9. Squash commits for cleaner history
|
||||
4. Run `gradlew spotlessApply` to apply automatic code formatting
|
||||
5. Add changes to git `git add -A`
|
||||
6. Commit changes to your clone `git commit -m "<summary of made changes>"`
|
||||
7. Push to your fork `git push`
|
||||
8. Create a Pull-Request on GitHub
|
||||
9. Wait for review
|
||||
10. Squash commits for cleaner history
|
||||
|
||||
If you are only doing single file pull requests, GitHub supports using a quick way without the need of cloning your fork. Also read up about [synching](https://help.github.com/articles/syncing-a-fork) if you plan to contribute on regular basis.
|
||||
|
||||
## Applied Energistics 2 API
|
||||
|
||||
The API for Applied Energistics 2. It is open source to discuss changes, improve documentation, and provide better add-on support in general.
|
||||
|
||||
Universal builds obtained [Here](http://ae2.ae-mod.info/Downloads/) should work in a development environment.
|
||||
|
||||
### Maven
|
||||
|
||||
When compiling against the AE2 API you can use gradle dependencies, just add
|
||||
|
||||
dependencies {
|
||||
compile "appeng:appliedenergistics2:rv_-_____-__:api"
|
||||
}
|
||||
|
||||
or add the compile line to your existing dependencies task to your build.gradle
|
||||
|
||||
Where the __ are filled in with the correct version criteria; AE2 is available from the default forge maven so no additional repositories are necessary.
|
||||
|
||||
An example string would be `appeng:appliedenergistics2:rv5-stable-1:api` for the API only or `appeng:appliedenergistics2:rv5-stable-1` for the whole mod.
|
||||
|
||||
## Applied Energistics 2 CraftTweaker
|
||||
|
||||
### Inscriber
|
||||
Add a recipe. When `inscribe` is true the bottom and top inputs are not consumed.
|
||||
|
||||
mods.appliedenergistics2.Inscriber.addRecipe(ItemStack output, ItemStack input, boolean inscribe,
|
||||
@Optional ItemStack topInput, @Optional ItemStack bottomInput );
|
||||
|
||||
Remove all recipes for this output stack.
|
||||
|
||||
mods.appliedenergistics2.Inscriber.removeRecipe(ItemStack output);
|
||||
|
||||
### Grindstone
|
||||
Add a recipe.
|
||||
|
||||
mods.appliedenergistics2.Grinder.addRecipe( ItemStack output, ItemStack input, int turns,
|
||||
@Optional ItemStack secondary1Output, @Optional float secondary1Chance,
|
||||
@Optional ItemStack secondary2Output, @Optional float secondary2Chance);
|
||||
|
||||
Remove recipes for this input.
|
||||
|
||||
mods.appliedenergistics2.Grinder.removeRecipe(ItemStack input);
|
||||
|
||||
### Spatial
|
||||
Whitelist a TileEntity class for Spatial IO.
|
||||
|
||||
mods.appliedenergistics2.Spatial.whitelistEntity( String fullEntityClassName );
|
||||
|
||||
### Attunement
|
||||
Attune a ItemStack or ModID to a specific P2P-Tunnel type. ModID's are used as fallback when no ItemStack was found.
|
||||
|
||||
mods.appliedenergistics2.Attunement.attuneME( ItemStack itemStack );
|
||||
mods.appliedenergistics2.Attunement.attuneME( String modID );
|
||||
mods.appliedenergistics2.Attunement.attuneItem( ItemStack itemStack );
|
||||
mods.appliedenergistics2.Attunement.attuneItem( String modID );
|
||||
mods.appliedenergistics2.Attunement.attuneFluid( ItemStack itemStack );
|
||||
mods.appliedenergistics2.Attunement.attuneFluid( String modID );
|
||||
mods.appliedenergistics2.Attunement.attuneRedstone( ItemStack itemStack );
|
||||
mods.appliedenergistics2.Attunement.attuneRedstone( String modID );
|
||||
mods.appliedenergistics2.Attunement.attuneRF( ItemStack itemStack );
|
||||
mods.appliedenergistics2.Attunement.attuneRF( String modID );
|
||||
mods.appliedenergistics2.Attunement.attuneIC2( ItemStack itemStack );
|
||||
mods.appliedenergistics2.Attunement.attuneIC2( String modID );
|
||||
mods.appliedenergistics2.Attunement.attuneLight( ItemStack itemStack );
|
||||
mods.appliedenergistics2.Attunement.attuneLight( String modID );
|
||||
|
||||
### Cannon
|
||||
Add ammo types for the matter cannon.
|
||||
|
||||
mods.appliedenergistics2.Cannon.registerAmmo( ItemStack itemStack, double weight );
|
||||
|
||||
## Applied Energistics 2 Localization
|
||||
|
||||
### English Text
|
||||
|
||||
+191
-71
@@ -16,40 +16,42 @@
|
||||
* along with Applied Energistics 2. If not, see <http://www.gnu.org/licenses/lgpl>.
|
||||
*/
|
||||
|
||||
buildscript {
|
||||
repositories {
|
||||
mavenLocal()
|
||||
jcenter()
|
||||
mavenCentral()
|
||||
maven {
|
||||
name = "forge"
|
||||
url = "http://files.minecraftforge.net/maven"
|
||||
}
|
||||
}
|
||||
dependencies {
|
||||
classpath 'net.minecraftforge.gradle:ForgeGradle:2.3-SNAPSHOT'
|
||||
}
|
||||
}
|
||||
|
||||
plugins {
|
||||
id "org.sonarqube" version "2.6"
|
||||
id 'java'
|
||||
id 'fabric-loom'
|
||||
id 'maven-publish'
|
||||
id "com.diffplug.gradle.spotless" version "4.3.0"
|
||||
id "com.matthewprenger.cursegradle" version "1.4.0"
|
||||
id "org.sonarqube" version "2.8"
|
||||
id "jacoco"
|
||||
}
|
||||
|
||||
apply plugin: 'net.minecraftforge.gradle.forge'
|
||||
apply plugin: 'jacoco'
|
||||
|
||||
repositories {
|
||||
mavenLocal()
|
||||
jcenter()
|
||||
mavenCentral()
|
||||
maven { url = "https://maven.fabricmc.net/" }
|
||||
maven {
|
||||
name = "BuildCraft"
|
||||
url = "https://mod-buildcraft.com/maven"
|
||||
content {
|
||||
includeGroup "alexiil.mc.lib"
|
||||
}
|
||||
}
|
||||
maven {
|
||||
name = "HYWLA"
|
||||
url = "https://maven.tehnut.info/"
|
||||
content {
|
||||
includeGroup "mcp.mobius.waila"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
apply from: 'gradle/scripts/dependencies.gradle'
|
||||
apply from: 'gradle/scripts/artifacts.gradle'
|
||||
apply from: 'gradle/scripts/optional.gradle'
|
||||
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
targetCompatibility = JavaVersion.VERSION_1_8
|
||||
sourceCompatibility = targetCompatibility = JavaVersion.VERSION_1_8
|
||||
compileJava {
|
||||
sourceCompatibility = targetCompatibility = JavaVersion.VERSION_1_8
|
||||
options.deprecation = false
|
||||
}
|
||||
|
||||
// ensure everything uses UTF-8 and not some random codepage chosen by gradle
|
||||
compileJava.options.encoding = 'UTF-8'
|
||||
@@ -57,65 +59,183 @@ tasks.withType(JavaCompile) {
|
||||
options.encoding = 'UTF-8'
|
||||
}
|
||||
|
||||
version = aeversion + "-" + aechannel + "-" + aebuild
|
||||
group = aegroup
|
||||
archivesBaseName = aebasename
|
||||
|
||||
// Add Coremod Manifest
|
||||
jar {
|
||||
manifest {
|
||||
attributes 'FMLAT': 'appeng_at.cfg'
|
||||
}
|
||||
|
||||
from sourceSets.api.output
|
||||
dependsOn apiClasses
|
||||
|
||||
// specify which files are really included, can control which APIs should be in
|
||||
include "appeng/**"
|
||||
include "assets/**"
|
||||
include "mcmod.info"
|
||||
include "pack.mcmeta"
|
||||
include "META-INF/appeng_at.cfg"
|
||||
// Create version number
|
||||
ext.pr = System.getenv('PR_NUMBER') ?: ""
|
||||
if (ext.pr) {
|
||||
version = version + "+pr." + ext.pr
|
||||
}
|
||||
|
||||
minecraft {
|
||||
version = minecraft_version + "-" + forge_version
|
||||
|
||||
replaceIn "AEConfig.java"
|
||||
replaceIn "package-info.java"
|
||||
|
||||
replace "@version@", project.version
|
||||
replace "@aeversion@", aeversion
|
||||
replace "@aechannel@", aechannel
|
||||
replace "@aebuild@", aebuild
|
||||
|
||||
// used when launching minecraft in dev env
|
||||
runDir = "run"
|
||||
mappings = mcp_mappings
|
||||
ext.branch = System.getenv('BRANCH') ?: ""
|
||||
if (ext.branch) {
|
||||
version = version + "+branch." + ext.branch
|
||||
}
|
||||
|
||||
ext.tag = System.getenv('TAG') ?: ""
|
||||
if (ext.tag && ext.tag.startsWith("fabric/v")) {
|
||||
version = ext.tag.substring("fabric/v".length())
|
||||
// Validate that the rest is a semver version
|
||||
if (version ==~ /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/) {
|
||||
println("::set-env name=VERSION::${version}")
|
||||
} else {
|
||||
throw new GradleException("Invalid semver: $version")
|
||||
}
|
||||
}
|
||||
|
||||
// Maven group and artifact name
|
||||
group = artifact_group
|
||||
archivesBaseName = artifact_basename
|
||||
|
||||
sourceSets {
|
||||
api
|
||||
main
|
||||
main {
|
||||
compileClasspath += sourceSets.api.output
|
||||
runtimeClasspath += sourceSets.api.output
|
||||
resources {
|
||||
srcDir 'src/generated/resources'
|
||||
}
|
||||
}
|
||||
datagen {
|
||||
compileClasspath += sourceSets.api.output
|
||||
runtimeClasspath += sourceSets.api.output
|
||||
compileClasspath += sourceSets.main.output
|
||||
runtimeClasspath += sourceSets.main.output
|
||||
}
|
||||
test {
|
||||
compileClasspath += sourceSets.api.output
|
||||
runtimeClasspath += sourceSets.api.output
|
||||
}
|
||||
siteexport {
|
||||
compileClasspath += sourceSets.api.output
|
||||
runtimeClasspath += sourceSets.api.output
|
||||
compileClasspath += sourceSets.main.output
|
||||
runtimeClasspath += sourceSets.main.output
|
||||
}
|
||||
}
|
||||
|
||||
processResources
|
||||
{
|
||||
// this will ensure that this task is redone when the versions change.
|
||||
configurations {
|
||||
apiCompile.extendsFrom(compileClasspath)
|
||||
datagenCompile.extendsFrom(compileClasspath)
|
||||
siteexportCompile.extendsFrom(compileClasspath)
|
||||
siteexportRuntime.extendsFrom(runtimeClasspath)
|
||||
}
|
||||
|
||||
apply from: 'gradle/scripts/spotless.gradle'
|
||||
|
||||
minecraft {
|
||||
accessWidener "src/main/resources/appliedenergistics2.accesswidener"
|
||||
}
|
||||
|
||||
dependencies {
|
||||
minecraft "com.mojang:minecraft:${project.minecraft_version}"
|
||||
mappings "net.fabricmc:yarn:${project.yarn_mappings}:v2"
|
||||
modImplementation "net.fabricmc:fabric-loader:${project.loader_version}"
|
||||
|
||||
//Fabric api
|
||||
modImplementation "net.fabricmc.fabric-api:fabric-api:${fabric_version}"
|
||||
|
||||
modImplementation "alexiil.mc.lib:libblockattributes-core:${libblockattributes_version}"
|
||||
modImplementation "alexiil.mc.lib:libblockattributes-items:${libblockattributes_version}"
|
||||
modImplementation "alexiil.mc.lib:libblockattributes-fluids:${libblockattributes_version}"
|
||||
include "alexiil.mc.lib:libblockattributes-core:${libblockattributes_version}"
|
||||
include "alexiil.mc.lib:libblockattributes-items:${libblockattributes_version}"
|
||||
include "alexiil.mc.lib:libblockattributes-fluids:${libblockattributes_version}"
|
||||
|
||||
// Energy API
|
||||
modApi "teamreborn:energy:${tr_energy_version}"
|
||||
include "teamreborn:energy:${tr_energy_version}"
|
||||
|
||||
modCompileOnly("me.shedaniel:RoughlyEnoughItems:${rei_version}") {
|
||||
exclude group: "net.fabricmc.fabric-api"
|
||||
}
|
||||
modCompileOnly("mcp.mobius.waila:Hwyla:1.16.1-1.9.22-75") {
|
||||
exclude group: "net.fabricmc.fabric-api"
|
||||
}
|
||||
modRuntime("me.shedaniel:RoughlyEnoughItems:${rei_version}") {
|
||||
exclude group: "net.fabricmc.fabric-api"
|
||||
}
|
||||
modRuntime("TechReborn:TechReborn-1.16:3.5.1+build.101") {
|
||||
exclude group: "net.fabricmc.fabric-api"
|
||||
}
|
||||
// modRuntimeOnly "mcp.mobius.waila:Hwyla:1.16.1-1.9.22-75"
|
||||
|
||||
implementation 'com.google.code.findbugs:jsr305:3.0.2'
|
||||
|
||||
// unit test dependencies
|
||||
testCompile "junit:junit:4.13"
|
||||
}
|
||||
|
||||
processResources {
|
||||
inputs.property "version", project.version
|
||||
inputs.property "mcversion", project.minecraft.version
|
||||
|
||||
// replace stuff in mcmod.info, nothing else
|
||||
from(sourceSets.main.resources.srcDirs) {
|
||||
include 'mcmod.info'
|
||||
expand 'version': project.version, 'mcversion': project.minecraft.version
|
||||
include "fabric.mod.json"
|
||||
expand "version": project.version
|
||||
}
|
||||
|
||||
// copy everything else, thats not the mcmod.info
|
||||
from(sourceSets.main.resources.srcDirs) {
|
||||
exclude 'mcmod.info'
|
||||
exclude "fabric.mod.json"
|
||||
}
|
||||
|
||||
// move access transformer to META-INF
|
||||
rename '(.+_at.cfg)', 'META-INF/$1'
|
||||
}
|
||||
|
||||
apply from: 'gradle/scripts/artifacts.gradle'
|
||||
apply from: 'gradle/scripts/curseforge.gradle'
|
||||
|
||||
// configure the maven publication
|
||||
publishing {
|
||||
if (!version.endsWith("-SNAPSHOT")) {
|
||||
publications {
|
||||
maven(MavenPublication) {
|
||||
groupId = project.group
|
||||
artifactId = 'appliedenergistics2-fabric'
|
||||
version = project.version
|
||||
|
||||
// add all the jars that should be included when publishing to maven
|
||||
artifact(remapJar) {
|
||||
builtBy remapJar
|
||||
}
|
||||
artifact(sourcesJar) {
|
||||
builtBy remapSourcesJar
|
||||
}
|
||||
artifact javadocJar
|
||||
artifact apiJar
|
||||
}
|
||||
}
|
||||
}
|
||||
repositories {
|
||||
maven {
|
||||
credentials {
|
||||
username System.getenv("GITHUB_ACTOR")
|
||||
password System.getenv("GITHUB_TOKEN")
|
||||
}
|
||||
name = "GitHubPackages"
|
||||
url = "https://maven.pkg.github.com/AppliedEnergistics/Applied-Energistics-2"
|
||||
}
|
||||
maven {
|
||||
credentials {
|
||||
username System.getenv("MODMAVEN_USER")
|
||||
password System.getenv("MODMAVEN_PASSWORD")
|
||||
}
|
||||
name = "modmaven"
|
||||
url = "https://modmaven.k-4u.nl/artifactory/local-releases/"
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
import net.fabricmc.loom.task.RunClientTask;
|
||||
|
||||
task generateData(type: RunClientTask, dependsOn: downloadAssets, group: "ae2", description: "Generates various JSON assets for the mod") {
|
||||
classpath = configurations.runtimeClasspath
|
||||
classpath sourceSets.api.output
|
||||
classpath sourceSets.main.output
|
||||
classpath sourceSets.datagen.output
|
||||
systemProperty "appeng.generateData", "true"
|
||||
}
|
||||
build.dependsOn generateData
|
||||
|
||||
task runSiteExport(type: RunClientTask, dependsOn: downloadAssets, group: "ae2", description: "Export game assets for the website") {
|
||||
classpath = configurations.runtimeClasspath
|
||||
classpath sourceSets.api.output
|
||||
classpath sourceSets.main.output
|
||||
classpath sourceSets.siteexport.output
|
||||
}
|
||||
|
||||
Binary file not shown.
@@ -1,92 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE module PUBLIC "-//Puppy Crawl//DTD Check Configuration 1.3//EN" "http://www.puppycrawl.com/dtds/configuration_1_3.dtd">
|
||||
|
||||
<!--
|
||||
This configuration file was written by the eclipse-cs plugin configuration editor
|
||||
-->
|
||||
<!--
|
||||
Checkstyle-Configuration: AE2
|
||||
Description: none
|
||||
-->
|
||||
<module name="Checker">
|
||||
<property name="severity" value="warning"/>
|
||||
<module name="TreeWalker">
|
||||
<property name="tabWidth" value="4"/>
|
||||
<module name="ConstantName"/>
|
||||
<module name="LocalFinalVariableName"/>
|
||||
<module name="LocalVariableName"/>
|
||||
<module name="MemberName"/>
|
||||
<module name="MethodName"/>
|
||||
<module name="PackageName"/>
|
||||
<module name="ParameterName"/>
|
||||
<module name="StaticVariableName"/>
|
||||
<module name="TypeName"/>
|
||||
<module name="AvoidStarImport"/>
|
||||
<module name="IllegalImport"/>
|
||||
<module name="RedundantImport"/>
|
||||
<module name="UnusedImports"/>
|
||||
<module name="EmptyForIteratorPad"/>
|
||||
<module name="MethodParamPad"/>
|
||||
<module name="NoWhitespaceAfter">
|
||||
<property name="tokens" value="BNOT,DEC,DOT,INC,LNOT,UNARY_MINUS,UNARY_PLUS"/>
|
||||
</module>
|
||||
<module name="NoWhitespaceBefore"/>
|
||||
<module name="OperatorWrap"/>
|
||||
<module name="ParenPad">
|
||||
<property name="option" value="space"/>
|
||||
</module>
|
||||
<module name="TypecastParenPad">
|
||||
<property name="option" value="space"/>
|
||||
<property name="tokens" value="RPAREN,TYPECAST"/>
|
||||
</module>
|
||||
<module name="WhitespaceAfter"/>
|
||||
<module name="WhitespaceAround"/>
|
||||
<module name="ModifierOrder"/>
|
||||
<module name="RedundantModifier"/>
|
||||
<module name="AvoidNestedBlocks"/>
|
||||
<module name="EmptyBlock">
|
||||
<property name="severity" value="ignore"/>
|
||||
<metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
|
||||
</module>
|
||||
<module name="LeftCurly">
|
||||
<property name="option" value="nl"/>
|
||||
</module>
|
||||
<module name="NeedBraces"/>
|
||||
<module name="RightCurly">
|
||||
<property name="option" value="alone"/>
|
||||
</module>
|
||||
<module name="AvoidInlineConditionals">
|
||||
<property name="severity" value="ignore"/>
|
||||
<metadata name="net.sf.eclipsecs.core.lastEnabledSeverity" value="inherit"/>
|
||||
</module>
|
||||
<module name="EmptyStatement"/>
|
||||
<module name="EqualsHashCode"/>
|
||||
<module name="HiddenField"/>
|
||||
<module name="IllegalInstantiation"/>
|
||||
<module name="InnerAssignment"/>
|
||||
<module name="MagicNumber"/>
|
||||
<module name="MissingSwitchDefault"/>
|
||||
<module name="RedundantThrows">
|
||||
<property name="suppressLoadErrors" value="true"/>
|
||||
</module>
|
||||
<module name="SimplifyBooleanExpression"/>
|
||||
<module name="SimplifyBooleanReturn"/>
|
||||
<module name="FinalClass"/>
|
||||
<module name="HideUtilityClassConstructor"/>
|
||||
<module name="InterfaceIsType"/>
|
||||
<module name="VisibilityModifier"/>
|
||||
<module name="ArrayTypeStyle"/>
|
||||
<module name="FinalParameters"/>
|
||||
<module name="UpperEll"/>
|
||||
</module>
|
||||
<module name="Translation"/>
|
||||
<module name="RegexpSingleline">
|
||||
<property name="format" value="\s+$"/>
|
||||
<property name="message" value="Line has trailing spaces."/>
|
||||
</module>
|
||||
<module name="Header">
|
||||
<property name="severity" value="error"/>
|
||||
<property name="headerFile" value="${config_loc}/copyright.txt"/>
|
||||
<property name="fileExtensions" value="java"/>
|
||||
</module>
|
||||
</module>
|
||||
@@ -0,0 +1,365 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<profiles version="18">
|
||||
<profile kind="CodeFormatterProfile" name="AE2" version="18">
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_ellipsis" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_logical_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_imports" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.format_javadoc_comments" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indentation.size" value="4"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_default" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.align_with_spaces" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.disabling_tag" value="@formatter:off"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.continuation_indentation" value="2"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_before_code_block" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_switch_case_expressions" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_enum_constants" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_imports" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_method_body" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_package" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.indent_root_tags" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.enabling_tag" value="@formatter:on"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_case" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_logical_operator" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_annotation_declaration_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_statements_compare_to_block" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.align_tags_descriptions_grouped" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.line_length" value="80"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.use_on_off_tags" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_method_body_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_loop_body_block_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_method_declaration" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_abstract_method" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_enum_constant_declaration_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.align_variable_declarations_on_columns" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_type_declaration_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_additive_operator" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_relational_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_multiplicative_operator" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_anonymous_type_declaration_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_switch_case_expressions" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_shift_operator" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_lambda_body" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_code_block" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.compact_else_if" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_bitwise_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_type_parameters" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_compact_loops" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_simple_for_body_on_same_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_relational_operator" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_unary_operator" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_ellipsis" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_additive_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.format_line_comments" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.text_block_indentation" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.align_type_members_on_columns" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_assignment" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_module_statements" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_after_code_block" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.align_tags_names_descriptions" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_if_then_body_block_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_conditional_expression" value="80"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block_in_case" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_default" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_between_different_tags" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_conditional_expression_chain" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.format_header" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_additive_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_method_declaration" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.join_wrapped_lines" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_conditional_operator" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_shift_operator" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines" value="2147483647"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_bitwise_operator" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_resources_in_try" value="80"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_code_block_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.tabulation.size" value="4"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_bitwise_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.format_source_code" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_field" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer" value="2"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_method" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_assignment_operator" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_not_operator" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_switch" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.format_html" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_compact_if" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_lambda_body_block_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_empty_lines" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_type_arguments" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_unary_operator" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_label" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_case" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_member_type" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_logical_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_relational_operator" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.format_block_comments" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.indent_tag_description" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_string_concatenation" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_last_class_body_declaration" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_statements_compare_to_body" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_multiple_fields" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_simple_while_body_on_same_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_array_initializer" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_logical_operator" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_shift_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_statement_group_in_switch" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_shift_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_simple_do_while_body_on_same_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_enum_declaration_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_enum_constant" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_type_declaration" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_package" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_additive_operator" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_simple_getter_setter_on_one_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.join_lines_in_comments" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.indent_parameter_description" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_code_block" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.tabulation.char" value="space"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_relational_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_string_concatenation" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_import_groups" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.lineSplit" value="120"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch" value="insert"/>
|
||||
</profile>
|
||||
</profiles>
|
||||
@@ -1,5 +1,5 @@
|
||||
This file is part of Applied Energistics 2.
|
||||
Copyright (c) 2013 - $today.year, AlgorithmX2, All rights reserved.
|
||||
Copyright (c) 2013 - $YEAR, AlgorithmX2, All rights reserved.
|
||||
|
||||
Applied Energistics 2 is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
|
||||
@@ -1,314 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<profiles version="13">
|
||||
<profile kind="CodeFormatterProfile" name="AE2" version="13">
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_ellipsis" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_imports" value="2"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.format_javadoc_comments" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indentation.size" value="4"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.disabling_tag" value="@formatter:off"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.continuation_indentation" value="2"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_enum_constants" value="80"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_imports" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_package" value="2"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_binary_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.indent_root_tags" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.enabling_tag" value="@formatter:on"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations" value="2"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.compiler.problem.enumIdentifier" value="error"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_statements_compare_to_block" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration" value="next_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.line_length" value="120"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.use_on_off_tags" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_method_declaration" value="next_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_binary_expression" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block" value="next_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration" value="next_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_lambda_body" value="next_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.compact_else_if" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_type_parameters" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.compiler.problem.assertIdentifier" value="error"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_binary_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_unary_operator" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_ellipsis" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.format_line_comments" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.align_type_members_on_columns" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_assignment" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_conditional_expression" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration" value="next_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block_in_case" value="next_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.format_header" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode" value="enabled"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_method_declaration" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.join_wrapped_lines" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_conditional_operator" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines" value="2147483647"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration" value="next_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_resources_in_try" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation" value="80"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.compiler.source" value="1.8"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.tabulation.size" value="4"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.format_source_code" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_field" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer" value="2"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_method" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_assignment_operator" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.compiler.codegen.targetPlatform" value="1.8"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_switch" value="next_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.format_html" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_compact_if" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_empty_lines" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_type_arguments" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_unary_operator" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_label" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_member_type" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.format_block_comments" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_statements_compare_to_body" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_multiple_fields" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_array_initializer" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_binary_operator" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.compiler.compliance" value="1.8"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_enum_constant" value="next_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_type_declaration" value="next_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_package" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.join_lines_in_comments" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.indent_parameter_description" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.tabulation.char" value="tab"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_import_groups" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.lineSplit" value="160"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch" value="do not insert"/>
|
||||
</profile>
|
||||
</profiles>
|
||||
+26
-28
@@ -1,35 +1,33 @@
|
||||
aeversion=rv6
|
||||
aechannel=alpha
|
||||
aebuild=0
|
||||
aegroup=appeng
|
||||
aebasename=appliedenergistics2
|
||||
version=0.0.0-SNAPSHOT
|
||||
|
||||
#########################################################
|
||||
# Versions #
|
||||
#########################################################
|
||||
minecraft_version=1.12.2
|
||||
mcp_mappings=snapshot_20171003
|
||||
forge_version=14.23.5.2768
|
||||
artifact_group=appeng
|
||||
artifact_basename=appliedenergistics2-fabric
|
||||
|
||||
#########################################################
|
||||
# Installable #
|
||||
#########################################################
|
||||
hwyla_version=1.8.26-B41_1.12.2
|
||||
kotlin.code.style=official
|
||||
org.gradle.jvmargs=-Xmx2G
|
||||
|
||||
#########################################################
|
||||
# Provided APIs #
|
||||
#########################################################
|
||||
jei_version=4.13.0.219
|
||||
tesla_version=1.0.63
|
||||
ic2_version=2.8.73-ex112
|
||||
top_version=1.12-1.4.23-16
|
||||
cofhcore_version=1.12.2-4.5.2.19
|
||||
crafttweaker_version=4.1.8.9
|
||||
inventorytweaks_version=1.63
|
||||
ctm_version=MC1.12.2-0.3.1.16
|
||||
# Fabric Properties
|
||||
# Check these on https://modmuss50.me/fabric.html
|
||||
|
||||
minecraft_version=1.16.2
|
||||
yarn_mappings=1.16.2+build.6
|
||||
loader_version=0.9.2+build.206
|
||||
|
||||
#Fabric api
|
||||
fabric_version=0.20.1+build.401-1.16
|
||||
|
||||
loom_version=0.4-SNAPSHOT
|
||||
|
||||
# Kotlin
|
||||
kotlin_version=1.3.61
|
||||
fabric_kotlin_version=1.3.61+build.1
|
||||
|
||||
# Dependencies
|
||||
libblockattributes_version=0.8.0
|
||||
tr_energy_version=0.1.0
|
||||
rei_version=5.2.10
|
||||
|
||||
#########################################################
|
||||
# Deployment #
|
||||
#########################################################
|
||||
website_version=1.12.2
|
||||
curse_versions=1.12.2
|
||||
curseforge_project=223794
|
||||
|
||||
@@ -15,53 +15,64 @@
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with Applied Energistics 2. If not, see <http://www.gnu.org/licenses/lgpl>.
|
||||
*/
|
||||
|
||||
// Suppresses warnings/errors when building javadocs
|
||||
allprojects {
|
||||
tasks.withType(Javadoc) {
|
||||
options.addStringOption('Xdoclint:none', '-quiet')
|
||||
}
|
||||
|
||||
processResources {
|
||||
exclude '.cache'
|
||||
}
|
||||
|
||||
javadoc {
|
||||
options.encoding = 'UTF-8'
|
||||
options.charSet = 'UTF-8'
|
||||
jar {
|
||||
finalizedBy 'remapJar'
|
||||
|
||||
from sourceSets.main.output.classesDirs
|
||||
from sourceSets.api.output.classesDirs
|
||||
from sourceSets.main.output.resourcesDir
|
||||
from sourceSets.api.output.resourcesDir
|
||||
|
||||
manifest {
|
||||
attributes([
|
||||
"Specification-Title": "Applied Energistics 2",
|
||||
"Specification-Vendor": "TeamAppliedEnergistics",
|
||||
"Specification-Version": "${project.version}",
|
||||
"Implementation-Title": "${project.name}",
|
||||
"Implementation-Version": "${project.version}",
|
||||
"Implementation-Vendor" :"TeamAppliedEnergistics",
|
||||
"Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ"),
|
||||
])
|
||||
}
|
||||
}
|
||||
|
||||
task javadocs(type: Javadoc) {
|
||||
source = sourceSets.api.java
|
||||
include "appeng/api/**"
|
||||
classpath = sourceSets.main.compileClasspath
|
||||
source = sourceSets.api.java
|
||||
include "appeng/api/**"
|
||||
|
||||
// Due to ForgeGradle having to be a special snowflake,
|
||||
// we have to add some custom configurations to the normal compile configuration and hope it does not break.
|
||||
classpath = configurations.compile + configurations.forgeGradleMc + configurations.forgeGradleMcDeps
|
||||
options.addStringOption('Xdoclint:none', '-quiet')
|
||||
options.encoding = 'UTF-8'
|
||||
options.charSet = 'UTF-8'
|
||||
}
|
||||
|
||||
task javadocJar(type: Jar, dependsOn: javadocs) {
|
||||
from javadoc.destinationDir
|
||||
classifier = "javadoc"
|
||||
from javadoc.destinationDir
|
||||
}
|
||||
|
||||
classifier = 'javadoc'
|
||||
// Loom will automatically attach sourcesJar to a RemapSourcesJar task and to the "build" task
|
||||
// if it is present.
|
||||
// If you remove this task, sources will not be generated.
|
||||
task sourcesJar(type: Jar, dependsOn: classes) {
|
||||
classifier = "sources"
|
||||
from sourceSets.main.allSource
|
||||
from sourceSets.api.allSource
|
||||
}
|
||||
|
||||
task apiJar(type: Jar) {
|
||||
from sourceSets.api.java
|
||||
include "appeng/api/**"
|
||||
|
||||
from sourceSets.api.output
|
||||
include "appeng/api/**"
|
||||
|
||||
classifier = 'api'
|
||||
}
|
||||
|
||||
task sourceJar(type: Jar, overwrite: true) {
|
||||
from sourceSets.api.allSource
|
||||
from sourceSets.main.allSource
|
||||
|
||||
classifier = 'sources'
|
||||
classifier = "api"
|
||||
from sourceSets.api.output
|
||||
include "appeng/api/**"
|
||||
}
|
||||
|
||||
artifacts {
|
||||
archives apiJar
|
||||
archives javadocJar
|
||||
archives sourceJar
|
||||
}
|
||||
archives javadocJar
|
||||
archives sourcesJar
|
||||
archives apiJar
|
||||
}
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
/*
|
||||
* This file is part of Applied Energistics 2.
|
||||
* Copyright (c) 2020, TeamAppliedEnergistics, All rights reserved.
|
||||
*
|
||||
* Applied Energistics 2 is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Lesser General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* Applied Energistics 2 is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
*g GNU Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with Applied Energistics 2. If not, see <http://www.gnu.org/licenses/lgpl>.
|
||||
*/
|
||||
|
||||
def isAlpha = project.version.contains("alpha")
|
||||
def isBeta = project.version.contains("beta")
|
||||
|
||||
def cfReleaseType = "release"
|
||||
if (isAlpha) {
|
||||
cfReleaseType = "alpha"
|
||||
} else if (isBeta) {
|
||||
cfReleaseType = "beta"
|
||||
}
|
||||
|
||||
if (System.getenv("CURSEFORGE") && !version.endsWith("-SNAPSHOT")) {
|
||||
curseforge {
|
||||
apiKey = System.getenv("CURSEFORGE")
|
||||
project {
|
||||
id = project.curseforge_project
|
||||
changelogType = "markdown"
|
||||
changelog = System.getenv("CHANGELOG") ?: "Please visit our [releases](https://github.com/AppliedEnergistics/Applied-Energistics-2/releases) for a changelog"
|
||||
releaseType = cfReleaseType
|
||||
addGameVersion project.minecraft_version
|
||||
addGameVersion "Fabric"
|
||||
mainArtifact(remapJar.archiveFile) {
|
||||
displayName = "${project.version} [FABRIC]"
|
||||
}
|
||||
}
|
||||
options {
|
||||
forgeGradleIntegration = false
|
||||
}
|
||||
afterEvaluate {
|
||||
tasks.getByName("curseforge${project.curseforge_project}").dependsOn remapJar
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -19,86 +19,24 @@
|
||||
repositories {
|
||||
mavenLocal()
|
||||
|
||||
maven {
|
||||
name "Mobius"
|
||||
url "http://mobiusstrip.eu/maven"
|
||||
maven { // modmaven, maven proxy
|
||||
name 'modmaven'
|
||||
url "https://modmaven.k-4u.nl/"
|
||||
}
|
||||
|
||||
maven {
|
||||
name = "JEI repo"
|
||||
url "http://dvs1.progwml6.com/files/maven"
|
||||
}
|
||||
|
||||
maven {
|
||||
name = "Tesla repo"
|
||||
url "http://maven.mcmoddev.com"
|
||||
}
|
||||
|
||||
maven {
|
||||
name = "IC2 repo"
|
||||
url = "http://maven.ic2.player.to"
|
||||
}
|
||||
|
||||
maven {
|
||||
name = "CoFH Maven"
|
||||
url = "http://maven.covers1624.net"
|
||||
}
|
||||
|
||||
maven { // TheOneProbe
|
||||
name 'tterrag maven'
|
||||
url "http://maven.tterrag.com/"
|
||||
}
|
||||
|
||||
maven { // McJtyLib
|
||||
name 'mcjty'
|
||||
url "http://maven.k-4u.nl/"
|
||||
}
|
||||
|
||||
maven { // Hwyla
|
||||
name 'tehnut'
|
||||
url "http://tehnut.info/maven"
|
||||
}
|
||||
|
||||
maven { // CraftTweaker
|
||||
name 'jared maven'
|
||||
url "http://maven.blamejared.com/"
|
||||
}
|
||||
|
||||
//maven { // modmaven, maven proxy
|
||||
// name 'modmaven'
|
||||
// url "https://modmaven.k-4u.nl/"
|
||||
//}
|
||||
|
||||
maven {
|
||||
name = "CurseForge"
|
||||
url = "https://minecraft.curseforge.com/api/maven/"
|
||||
}
|
||||
}
|
||||
|
||||
configurations {
|
||||
mods
|
||||
}
|
||||
|
||||
dependencies {
|
||||
// installable runtime dependencies
|
||||
mods "mcp.mobius.waila:Hwyla:${hwyla_version}"
|
||||
mods "net.industrial-craft:industrialcraft-2:${ic2_version}:dev"
|
||||
mods "mcjty.theoneprobe:TheOneProbe-${minecraft_version}:${top_version}"
|
||||
minecraft "net.minecraftforge:forge:${minecraft_version}-${forge_version}"
|
||||
|
||||
// compile against provided APIs
|
||||
compileOnly "mezz.jei:jei_${minecraft_version}:${jei_version}:api"
|
||||
compileOnly "mcp.mobius.waila:Hwyla:${hwyla_version}"
|
||||
compileOnly "net.darkhax.tesla:Tesla-1.12.2:${tesla_version}"
|
||||
compileOnly "net.industrial-craft:industrialcraft-2:${ic2_version}:api"
|
||||
compileOnly "mcjty.theoneprobe:TheOneProbe-1.12:${top_version}:api"
|
||||
compileOnly "cofh:CoFHCore:${cofhcore_version}:deobf"
|
||||
compileOnly "CraftTweaker2:CraftTweaker2-API:${crafttweaker_version}"
|
||||
compileOnly "inventory-tweaks:InventoryTweaks:${inventorytweaks_version}:api"
|
||||
compileOnly "team.chisel.ctm:CTM:${ctm_version}"
|
||||
compileOnly "mezz.jei:jei-${jei_minecraft_version}:${jei_version}:api"
|
||||
compileOnly "mcjty.theoneprobe:TheOneProbe-${minecraft_release}:${minecraft_release}-${top_version}:api"
|
||||
|
||||
// at runtime, use the full JEI jar
|
||||
runtime "mezz.jei:jei_${minecraft_version}:${jei_version}"
|
||||
// Runtime, Mods
|
||||
runtimeOnly fg.deobf("mezz.jei:jei-${jei_minecraft_version}:${jei_version}")
|
||||
runtimeOnly fg.deobf("mcjty.theoneprobe:TheOneProbe-${minecraft_release}:${minecraft_release}-${top_version}")
|
||||
//runtimeOnly fg.deobf("team.chisel.ctm:CTM:${ctm_version}")
|
||||
|
||||
// unit test dependencies
|
||||
testCompile "junit:junit:4.12"
|
||||
testCompile "junit:junit:4.13"
|
||||
}
|
||||
|
||||
@@ -1,55 +0,0 @@
|
||||
/*
|
||||
* This file is part of Applied Energistics 2.
|
||||
* Copyright (c) 2013 - 2014, AlgorithmX2, All rights reserved.
|
||||
*
|
||||
* Applied Energistics 2 is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Lesser General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* Applied Energistics 2 is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with Applied Energistics 2. If not, see <http://www.gnu.org/licenses/lgpl>.
|
||||
*/
|
||||
|
||||
task wrapper(type: Wrapper) {
|
||||
gradleVersion = "2.14"
|
||||
}
|
||||
|
||||
// HWYLA
|
||||
task installHwyla(type: Copy, dependsOn: "deinstallHwyla") {
|
||||
from { configurations.mods }
|
||||
include "**/*Hwyla*.jar"
|
||||
into file(minecraft.runDir + "/mods")
|
||||
}
|
||||
|
||||
task deinstallHwyla(type: Delete) {
|
||||
delete fileTree(dir: minecraft.runDir + "/mods", include: "*Hwyla*.jar")
|
||||
}
|
||||
|
||||
// IC2
|
||||
task installIC2(type: Copy, dependsOn: "deinstallIC2") {
|
||||
from { configurations.mods }
|
||||
include "**/*industrialcraft-2*.jar"
|
||||
into file(minecraft.runDir + "/mods")
|
||||
}
|
||||
|
||||
task deinstallIC2(type: Delete) {
|
||||
delete fileTree(dir: minecraft.runDir + "/mods", include: "*industrialcraft-2*.jar")
|
||||
}
|
||||
|
||||
// TOP
|
||||
task installTop(type: Copy, dependsOn: ["deinstallTop"]) {
|
||||
from { configurations.mods }
|
||||
include "**/*TheOneProbe*.jar"
|
||||
into file(minecraft.runDir + "/mods")
|
||||
}
|
||||
|
||||
task deinstallTop(type: Delete) {
|
||||
delete fileTree(dir: minecraft.runDir + "/mods", include: "*TheOneProbe*.jar")
|
||||
}
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
/*
|
||||
* This file is part of Applied Energistics 2.
|
||||
* Copyright (c) 2013 - 2020, AlgorithmX2, All rights reserved.
|
||||
*
|
||||
* Applied Energistics 2 is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Lesser General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* Applied Energistics 2 is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
*g GNU Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with Applied Energistics 2. If not, see <http://www.gnu.org/licenses/lgpl>.
|
||||
*/
|
||||
|
||||
spotless {
|
||||
java {
|
||||
target 'src/*/java/appeng/**/*.java'
|
||||
|
||||
indentWithSpaces()
|
||||
eclipse().configFile 'codeformat/codeformat.xml'
|
||||
importOrderFile 'codeformat/ae2.importorder'
|
||||
}
|
||||
format 'json', {
|
||||
target 'src/*/resources/**/*.json'
|
||||
targetExclude 'src/generated/resources/**'
|
||||
prettier().config(['parser': 'json'])
|
||||
}
|
||||
}
|
||||
Vendored
BIN
Binary file not shown.
+1
-1
@@ -1,5 +1,5 @@
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-6.3-bin.zip
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-4.8-bin.zip
|
||||
|
||||
@@ -1,5 +1,21 @@
|
||||
#!/usr/bin/env sh
|
||||
|
||||
#
|
||||
# Copyright 2015 the original author or authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# https://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
|
||||
##############################################################################
|
||||
##
|
||||
## Gradle start up script for UN*X
|
||||
@@ -28,7 +44,7 @@ APP_NAME="Gradle"
|
||||
APP_BASE_NAME=`basename "$0"`
|
||||
|
||||
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||
DEFAULT_JVM_OPTS=""
|
||||
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
|
||||
|
||||
# Use the maximum available, or set MAX_FD != -1 to use that value.
|
||||
MAX_FD="maximum"
|
||||
@@ -109,8 +125,8 @@ if $darwin; then
|
||||
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
|
||||
fi
|
||||
|
||||
# For Cygwin, switch paths to Windows format before running java
|
||||
if $cygwin ; then
|
||||
# For Cygwin or MSYS, switch paths to Windows format before running java
|
||||
if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
|
||||
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
|
||||
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
|
||||
JAVACMD=`cygpath --unix "$JAVACMD"`
|
||||
@@ -138,19 +154,19 @@ if $cygwin ; then
|
||||
else
|
||||
eval `echo args$i`="\"$arg\""
|
||||
fi
|
||||
i=$((i+1))
|
||||
i=`expr $i + 1`
|
||||
done
|
||||
case $i in
|
||||
(0) set -- ;;
|
||||
(1) set -- "$args0" ;;
|
||||
(2) set -- "$args0" "$args1" ;;
|
||||
(3) set -- "$args0" "$args1" "$args2" ;;
|
||||
(4) set -- "$args0" "$args1" "$args2" "$args3" ;;
|
||||
(5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
|
||||
(6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
|
||||
(7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
|
||||
(8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
|
||||
(9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
|
||||
0) set -- ;;
|
||||
1) set -- "$args0" ;;
|
||||
2) set -- "$args0" "$args1" ;;
|
||||
3) set -- "$args0" "$args1" "$args2" ;;
|
||||
4) set -- "$args0" "$args1" "$args2" "$args3" ;;
|
||||
5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
|
||||
6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
|
||||
7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
|
||||
8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
|
||||
9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
|
||||
esac
|
||||
fi
|
||||
|
||||
@@ -159,14 +175,9 @@ save () {
|
||||
for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
|
||||
echo " "
|
||||
}
|
||||
APP_ARGS=$(save "$@")
|
||||
APP_ARGS=`save "$@"`
|
||||
|
||||
# Collect all arguments for the java command, following the shell quoting and substitution rules
|
||||
eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
|
||||
|
||||
# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
|
||||
if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
|
||||
cd "$(dirname "$0")"
|
||||
fi
|
||||
|
||||
exec "$JAVACMD" "$@"
|
||||
|
||||
Vendored
+20
-1
@@ -1,3 +1,19 @@
|
||||
@rem
|
||||
@rem Copyright 2015 the original author or authors.
|
||||
@rem
|
||||
@rem Licensed under the Apache License, Version 2.0 (the "License");
|
||||
@rem you may not use this file except in compliance with the License.
|
||||
@rem You may obtain a copy of the License at
|
||||
@rem
|
||||
@rem https://www.apache.org/licenses/LICENSE-2.0
|
||||
@rem
|
||||
@rem Unless required by applicable law or agreed to in writing, software
|
||||
@rem distributed under the License is distributed on an "AS IS" BASIS,
|
||||
@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
@rem See the License for the specific language governing permissions and
|
||||
@rem limitations under the License.
|
||||
@rem
|
||||
|
||||
@if "%DEBUG%" == "" @echo off
|
||||
@rem ##########################################################################
|
||||
@rem
|
||||
@@ -13,8 +29,11 @@ if "%DIRNAME%" == "" set DIRNAME=.
|
||||
set APP_BASE_NAME=%~n0
|
||||
set APP_HOME=%DIRNAME%
|
||||
|
||||
@rem Resolve any "." and ".." in APP_HOME to make it shorter.
|
||||
for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
|
||||
|
||||
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||
set DEFAULT_JVM_OPTS=
|
||||
set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
|
||||
|
||||
@rem Find java.exe
|
||||
if defined JAVA_HOME goto findJavaFromJavaHome
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
pluginManagement {
|
||||
repositories {
|
||||
jcenter()
|
||||
maven {
|
||||
name = "Fabric"
|
||||
url = "https://maven.fabricmc.net/"
|
||||
}
|
||||
gradlePluginPortal()
|
||||
}
|
||||
|
||||
plugins {
|
||||
id "fabric-loom" version loom_version
|
||||
id "org.jetbrains.kotlin.jvm" version kotlin_version
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
/*
|
||||
* This file is part of Applied Energistics 2.
|
||||
* Copyright (c) 2013 - 2014, AlgorithmX2, All rights reserved.
|
||||
*
|
||||
* Applied Energistics 2 is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Lesser General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* Applied Energistics 2 is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with Applied Energistics 2. If not, see <http://www.gnu.org/licenses/lgpl>.
|
||||
*/
|
||||
|
||||
package appeng.api;
|
||||
|
||||
import java.lang.annotation.Documented;
|
||||
import java.lang.annotation.ElementType;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.annotation.Target;
|
||||
|
||||
/**
|
||||
* Use this annotation on a class in your Mod to have it instantiated during the
|
||||
* initialization phase of Applied Energistics.
|
||||
* <p>
|
||||
* The class also needs to implement {@link IAEAddon}.
|
||||
* <p>
|
||||
* AE expects your class to have a single constructor without any parameters.
|
||||
* <p>
|
||||
* This is the only way to get access to the public {@link IAppEngApi} instance.
|
||||
*/
|
||||
@Target(ElementType.TYPE)
|
||||
@Retention(RetentionPolicy.CLASS)
|
||||
@Documented
|
||||
public @interface AEAddon {
|
||||
}
|
||||
@@ -1,78 +0,0 @@
|
||||
/*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2013 AlgorithmX2
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
* this software and associated documentation files (the "Software"), to deal in
|
||||
* the Software without restriction, including without limitation the rights to
|
||||
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
* the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
* subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in all
|
||||
* copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
package appeng.api;
|
||||
|
||||
|
||||
import java.lang.reflect.Field;
|
||||
|
||||
import appeng.api.exceptions.CoreInaccessibleException;
|
||||
|
||||
|
||||
/**
|
||||
* Entry point for api.
|
||||
*
|
||||
* Available IMCs:
|
||||
*/
|
||||
public enum AEApi
|
||||
{
|
||||
;
|
||||
|
||||
private static final String CORE_API_FQN = "appeng.core.Api";
|
||||
private static final String CORE_API_FIELD = "INSTANCE";
|
||||
private static final IAppEngApi HELD_API;
|
||||
|
||||
static
|
||||
{
|
||||
try
|
||||
{
|
||||
final Class<?> apiClass = Class.forName( CORE_API_FQN );
|
||||
final Field apiField = apiClass.getField( CORE_API_FIELD );
|
||||
|
||||
HELD_API = (IAppEngApi) apiField.get( apiClass );
|
||||
}
|
||||
catch( final ClassNotFoundException e )
|
||||
{
|
||||
throw new CoreInaccessibleException( "AE2 API tried to access the " + CORE_API_FQN + " class, without it being declared." );
|
||||
}
|
||||
catch( final NoSuchFieldException e )
|
||||
{
|
||||
throw new CoreInaccessibleException( "AE2 API tried to access the " + CORE_API_FIELD + " field in " + CORE_API_FQN + " without it being declared." );
|
||||
}
|
||||
catch( final IllegalAccessException e )
|
||||
{
|
||||
throw new CoreInaccessibleException( "AE2 API tried to access the " + CORE_API_FIELD + " field in " + CORE_API_FQN + " without enough access permissions." );
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* API Entry Point.
|
||||
*
|
||||
* @return the {@link IAppEngApi}
|
||||
*/
|
||||
public static IAppEngApi instance()
|
||||
{
|
||||
return HELD_API;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,34 +0,0 @@
|
||||
/*
|
||||
* This file is part of Applied Energistics 2.
|
||||
* Copyright (c) 2013 - 2014, AlgorithmX2, All rights reserved.
|
||||
*
|
||||
* Applied Energistics 2 is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Lesser General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* Applied Energistics 2 is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with Applied Energistics 2. If not, see <http://www.gnu.org/licenses/lgpl>.
|
||||
*/
|
||||
|
||||
package appeng.api;
|
||||
|
||||
|
||||
import java.lang.annotation.ElementType;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.annotation.Target;
|
||||
|
||||
|
||||
/**
|
||||
* Marks interfaces that can be used as injectable constructor arguments for an {@link AEPlugin}.
|
||||
*/
|
||||
@Target( ElementType.TYPE )
|
||||
@Retention( RetentionPolicy.RUNTIME )
|
||||
public @interface AEInjectable
|
||||
{}
|
||||
@@ -1,39 +0,0 @@
|
||||
/*
|
||||
* This file is part of Applied Energistics 2.
|
||||
* Copyright (c) 2013 - 2014, AlgorithmX2, All rights reserved.
|
||||
*
|
||||
* Applied Energistics 2 is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Lesser General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* Applied Energistics 2 is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with Applied Energistics 2. If not, see <http://www.gnu.org/licenses/lgpl>.
|
||||
*/
|
||||
|
||||
package appeng.api;
|
||||
|
||||
|
||||
import java.lang.annotation.Documented;
|
||||
import java.lang.annotation.ElementType;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.annotation.Target;
|
||||
|
||||
|
||||
/**
|
||||
* Use this annotation on a class in your Mod to have it instantiated during the initialization phase of Applied
|
||||
* Energistics.
|
||||
* AE expects your class to have a single constructor and can supply certain arguments to your constructor using
|
||||
* dependency injection.
|
||||
*/
|
||||
@Target( ElementType.TYPE )
|
||||
@Retention( RetentionPolicy.RUNTIME )
|
||||
@Documented
|
||||
public @interface AEPlugin
|
||||
{}
|
||||
@@ -0,0 +1,45 @@
|
||||
/*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 TeamAppliedEnergistics
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
* this software and associated documentation files (the "Software"), to deal in
|
||||
* the Software without restriction, including without limitation the rights to
|
||||
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
* the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
* subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in all
|
||||
* copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
package appeng.api;
|
||||
|
||||
/**
|
||||
* Every AE2 addon requiring access to {@link IAppEngApi}, needs to provide at
|
||||
* least one class implementing this interface.
|
||||
* <p>
|
||||
* Further it requires the class to be annotated with {@link AEAddon}.
|
||||
*/
|
||||
public interface IAEAddon {
|
||||
|
||||
/**
|
||||
* This gets called once the API is successfully constructed and ready to be
|
||||
* used.
|
||||
* <p>
|
||||
* Each addon is responsible to maintain a reference to {@link IAppEngApi} for
|
||||
* future use. Otherwise there is no alternative to access it later.
|
||||
*
|
||||
* @param api The API instance when ready.
|
||||
*/
|
||||
void onAPIAvailable(IAppEngApi api);
|
||||
|
||||
}
|
||||
@@ -23,47 +23,50 @@
|
||||
|
||||
package appeng.api;
|
||||
|
||||
|
||||
import appeng.api.client.IClientHelper;
|
||||
import appeng.api.crafting.ICraftingHelper;
|
||||
import appeng.api.definitions.IDefinitions;
|
||||
import appeng.api.features.IRegistryContainer;
|
||||
import appeng.api.networking.IGridHelper;
|
||||
import appeng.api.networking.IGridNode;
|
||||
import appeng.api.parts.IPartHelper;
|
||||
import appeng.api.storage.IStorageHelper;
|
||||
import appeng.api.util.IClientHelper;
|
||||
|
||||
public interface IAppEngApi {
|
||||
|
||||
@AEInjectable
|
||||
public interface IAppEngApi
|
||||
{
|
||||
/**
|
||||
* @return Registry Container for the numerous registries in AE2.
|
||||
*/
|
||||
IRegistryContainer registries();
|
||||
/**
|
||||
* @return An accessible list of all AE definitions
|
||||
*/
|
||||
IDefinitions definitions();
|
||||
|
||||
/**
|
||||
* @return A helper for working with storage data types.
|
||||
*/
|
||||
IStorageHelper storage();
|
||||
/**
|
||||
* @return Registry Container for the numerous registries in AE2.
|
||||
*/
|
||||
IRegistryContainer registries();
|
||||
|
||||
/**
|
||||
* @return A helper to create {@link IGridNode} and other grid related objects.
|
||||
*/
|
||||
IGridHelper grid();
|
||||
/**
|
||||
* @return A helper for working with storage data types.
|
||||
*/
|
||||
IStorageHelper storage();
|
||||
|
||||
/**
|
||||
* @return A helper for working with grids, and buses.
|
||||
*/
|
||||
IPartHelper partHelper();
|
||||
/**
|
||||
* @return A helper for working with crafting related tasks.
|
||||
*/
|
||||
ICraftingHelper crafting();
|
||||
|
||||
/**
|
||||
* @return An accessible list of all AE definitions
|
||||
*/
|
||||
IDefinitions definitions();
|
||||
/**
|
||||
* @return A helper to create {@link IGridNode} and other grid related objects.
|
||||
*/
|
||||
IGridHelper grid();
|
||||
|
||||
/**
|
||||
* @return Utility methods primarily useful for client side stuff
|
||||
*/
|
||||
IClientHelper client();
|
||||
/**
|
||||
* @return A helper for working with grids, and buses.
|
||||
*/
|
||||
IPartHelper partHelper();
|
||||
|
||||
/**
|
||||
* @return Utility methods primarily useful for client side stuff
|
||||
*/
|
||||
IClientHelper client();
|
||||
|
||||
}
|
||||
@@ -0,0 +1,89 @@
|
||||
/*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 TeamAppliedEnergistics
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
* this software and associated documentation files (the "Software"), to deal in
|
||||
* the Software without restriction, including without limitation the rights to
|
||||
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
* the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
* subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in all
|
||||
* copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
package appeng.api.client;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.util.Identifier;
|
||||
|
||||
/**
|
||||
* A registry for 3D models used to render storage cells in the world, when they
|
||||
* are inserted into a drive or similar machines.
|
||||
*/
|
||||
public interface ICellModelRegistry {
|
||||
|
||||
/**
|
||||
* Register a new model for a storage cell item.
|
||||
*
|
||||
* <p>
|
||||
* You are responsible for ensuring that the given model is actually loaded by
|
||||
* the game. See
|
||||
* {@see net.minecraftforge.client.model.ModelLoader#addSpecialModel}.
|
||||
* <p>
|
||||
* This method only maps an {@link Item} to a {@link Identifier} which can be
|
||||
* looked up from the
|
||||
* {@link net.minecraft.client.render.model.BakedModelManager}. No validation
|
||||
* about missing models will be done.
|
||||
* <p>
|
||||
* Will throw an exception in case a model is already registered for an item.
|
||||
* <p>
|
||||
* For examples look at our cell part models within the drive model directory.
|
||||
*
|
||||
* @param item The cell item
|
||||
* @param model The {@link net.minecraft.util.Identifier} representing the
|
||||
* model.
|
||||
* @return
|
||||
*/
|
||||
void registerModel(@Nonnull Item item, @Nonnull Identifier model);
|
||||
|
||||
/**
|
||||
* The {@link Identifier} of the model used to render the given storage cell
|
||||
* {@link Item} when inserted into a drive or similar.
|
||||
*
|
||||
* @param item
|
||||
* @return null, if no model is registered.
|
||||
*/
|
||||
@Nullable
|
||||
Identifier model(@Nonnull Item item);
|
||||
|
||||
/**
|
||||
* An unmodifiable map of all registered mappings.
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Nonnull
|
||||
Map<Item, Identifier> models();
|
||||
|
||||
/**
|
||||
* Returns the default model, which can be used when no explicit model is
|
||||
* registered.
|
||||
*/
|
||||
@Nonnull
|
||||
Identifier getDefaultModel();
|
||||
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
/*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 AlgorithmX2
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
* this software and associated documentation files (the "Software"), to deal in
|
||||
* the Software without restriction, including without limitation the rights to
|
||||
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
* the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
* subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in all
|
||||
* copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
package appeng.api.client;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import net.minecraft.text.Text;
|
||||
|
||||
import appeng.api.storage.cells.ICellInventoryHandler;
|
||||
import appeng.api.storage.data.IAEStack;
|
||||
|
||||
public interface IClientHelper {
|
||||
/**
|
||||
* Add cell information to the provided list. Used for tooltip content.
|
||||
*
|
||||
* @param handler Cell handler.
|
||||
* @param lines List of lines to add to.
|
||||
*/
|
||||
<T extends IAEStack<T>> void addCellInformation(ICellInventoryHandler<T> handler, List<Text> lines);
|
||||
|
||||
/**
|
||||
* A helper to work with clientside related tasks for cells.
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
ICellModelRegistry cells();
|
||||
|
||||
}
|
||||
@@ -23,51 +23,42 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
public enum AccessRestriction {
|
||||
NO_ACCESS(0), READ(1), WRITE(2), READ_WRITE(3);
|
||||
|
||||
public enum AccessRestriction
|
||||
{
|
||||
NO_ACCESS( 0 ), READ( 1 ), WRITE( 2 ), READ_WRITE( 3 );
|
||||
private final int permissionBit;
|
||||
|
||||
private final int permissionBit;
|
||||
AccessRestriction(final int v) {
|
||||
this.permissionBit = v;
|
||||
}
|
||||
|
||||
AccessRestriction( final int v )
|
||||
{
|
||||
this.permissionBit = v;
|
||||
}
|
||||
public boolean hasPermission(final AccessRestriction ar) {
|
||||
return (this.permissionBit & ar.permissionBit) == ar.permissionBit;
|
||||
}
|
||||
|
||||
public boolean hasPermission( final AccessRestriction ar )
|
||||
{
|
||||
return ( this.permissionBit & ar.permissionBit ) == ar.permissionBit;
|
||||
}
|
||||
public AccessRestriction restrictPermissions(final AccessRestriction ar) {
|
||||
return this.getPermByBit(this.permissionBit & ar.permissionBit);
|
||||
}
|
||||
|
||||
public AccessRestriction restrictPermissions( final AccessRestriction ar )
|
||||
{
|
||||
return this.getPermByBit( this.permissionBit & ar.permissionBit );
|
||||
}
|
||||
private AccessRestriction getPermByBit(final int bit) {
|
||||
switch (bit) {
|
||||
default:
|
||||
case 0:
|
||||
return NO_ACCESS;
|
||||
case 1:
|
||||
return READ;
|
||||
case 2:
|
||||
return WRITE;
|
||||
case 3:
|
||||
return READ_WRITE;
|
||||
}
|
||||
}
|
||||
|
||||
private AccessRestriction getPermByBit( final int bit )
|
||||
{
|
||||
switch( bit )
|
||||
{
|
||||
default:
|
||||
case 0:
|
||||
return NO_ACCESS;
|
||||
case 1:
|
||||
return READ;
|
||||
case 2:
|
||||
return WRITE;
|
||||
case 3:
|
||||
return READ_WRITE;
|
||||
}
|
||||
}
|
||||
public AccessRestriction addPermissions(final AccessRestriction ar) {
|
||||
return this.getPermByBit(this.permissionBit | ar.permissionBit);
|
||||
}
|
||||
|
||||
public AccessRestriction addPermissions( final AccessRestriction ar )
|
||||
{
|
||||
return this.getPermByBit( this.permissionBit | ar.permissionBit );
|
||||
}
|
||||
|
||||
public AccessRestriction removePermissions( final AccessRestriction ar )
|
||||
{
|
||||
return this.getPermByBit( this.permissionBit & ( ~ar.permissionBit ) );
|
||||
}
|
||||
public AccessRestriction removePermissions(final AccessRestriction ar) {
|
||||
return this.getPermByBit(this.permissionBit & (~ar.permissionBit));
|
||||
}
|
||||
}
|
||||
@@ -23,8 +23,6 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
|
||||
public enum ActionItems
|
||||
{
|
||||
WRENCH, CLOSE, STASH, ENCODE, SUBSTITUTION
|
||||
public enum ActionItems {
|
||||
WRENCH, CLOSE, STASH, ENCODE, ENABLE_SUBSTITUTION, DISABLE_SUBSTITUTION
|
||||
}
|
||||
@@ -23,16 +23,15 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
public enum Actionable {
|
||||
/**
|
||||
* Perform the intended action.
|
||||
*/
|
||||
MODULATE,
|
||||
|
||||
public enum Actionable
|
||||
{
|
||||
/**
|
||||
* Perform the intended action.
|
||||
*/
|
||||
MODULATE,
|
||||
/**
|
||||
* Pretend to perform the action.
|
||||
*/
|
||||
SIMULATE
|
||||
|
||||
/**
|
||||
* Pretend to perform the action.
|
||||
*/
|
||||
SIMULATE
|
||||
}
|
||||
|
||||
@@ -23,16 +23,14 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
public enum CondenserOutput {
|
||||
|
||||
public enum CondenserOutput
|
||||
{
|
||||
TRASH, // 0
|
||||
|
||||
TRASH, // 0
|
||||
MATTER_BALLS, // 256
|
||||
|
||||
MATTER_BALLS, // 256
|
||||
SINGULARITY; // 250,000
|
||||
|
||||
SINGULARITY; // 250,000
|
||||
|
||||
public int requiredPower = 0;
|
||||
public int requiredPower = 0;
|
||||
|
||||
}
|
||||
@@ -23,8 +23,6 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
|
||||
public enum CopyMode
|
||||
{
|
||||
CLEAR_ON_REMOVE, KEEP_ON_REMOVE
|
||||
public enum CopyMode {
|
||||
CLEAR_ON_REMOVE, KEEP_ON_REMOVE
|
||||
}
|
||||
|
||||
@@ -23,8 +23,6 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
|
||||
public enum FullnessMode
|
||||
{
|
||||
EMPTY, HALF, FULL
|
||||
public enum FullnessMode {
|
||||
EMPTY, HALF, FULL
|
||||
}
|
||||
@@ -23,28 +23,20 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
public enum FuzzyMode {
|
||||
// Note that percentage damaged, is the inverse of percentage durability.
|
||||
IGNORE_ALL(-1), PERCENT_99(0), PERCENT_75(25), PERCENT_50(50), PERCENT_25(75);
|
||||
|
||||
public enum FuzzyMode
|
||||
{
|
||||
// Note that percentage damaged, is the inverse of percentage durability.
|
||||
IGNORE_ALL( -1 ),
|
||||
PERCENT_99( 0 ),
|
||||
PERCENT_75( 25 ),
|
||||
PERCENT_50( 50 ),
|
||||
PERCENT_25( 75 );
|
||||
public final float breakPoint;
|
||||
public final float percentage;
|
||||
|
||||
public final float breakPoint;
|
||||
public final float percentage;
|
||||
FuzzyMode(final float p) {
|
||||
this.percentage = p;
|
||||
this.breakPoint = p / 100.0f;
|
||||
}
|
||||
|
||||
FuzzyMode( final float p )
|
||||
{
|
||||
this.percentage = p;
|
||||
this.breakPoint = p / 100.0f;
|
||||
}
|
||||
|
||||
public int calculateBreakPoint( final int maxDamage )
|
||||
{
|
||||
return (int) ( ( this.percentage * maxDamage ) / 100.0f );
|
||||
}
|
||||
public int calculateBreakPoint(final int maxDamage) {
|
||||
return (int) ((this.percentage * maxDamage) / 100.0f);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -23,8 +23,6 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
|
||||
public enum IncludeExclude
|
||||
{
|
||||
WHITELIST, BLACKLIST
|
||||
public enum IncludeExclude {
|
||||
WHITELIST, BLACKLIST
|
||||
}
|
||||
@@ -1,30 +0,0 @@
|
||||
/*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2015 AlgorithmX2
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
* this software and associated documentation files (the "Software"), to deal in
|
||||
* the Software without restriction, including without limitation the rights to
|
||||
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
* the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
* subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in all
|
||||
* copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
|
||||
public enum ItemSubstitution
|
||||
{
|
||||
ENABLED, DISABLED;
|
||||
}
|
||||
@@ -23,12 +23,10 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
public enum LevelEmitterMode {
|
||||
|
||||
public enum LevelEmitterMode
|
||||
{
|
||||
STORED_AMOUNT,
|
||||
|
||||
STORED_AMOUNT,
|
||||
|
||||
STORABLE_AMOUNT
|
||||
STORABLE_AMOUNT
|
||||
|
||||
}
|
||||
@@ -23,12 +23,10 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
public enum LevelType {
|
||||
|
||||
public enum LevelType
|
||||
{
|
||||
ITEM_LEVEL,
|
||||
|
||||
ITEM_LEVEL,
|
||||
|
||||
ENERGY_LEVEL
|
||||
ENERGY_LEVEL
|
||||
|
||||
}
|
||||
@@ -23,8 +23,6 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
|
||||
public enum ModSettings
|
||||
{
|
||||
public enum ModSettings {
|
||||
|
||||
}
|
||||
|
||||
@@ -23,14 +23,12 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
public enum NetworkEmitterMode {
|
||||
|
||||
public enum NetworkEmitterMode
|
||||
{
|
||||
POWER_LEVEL,
|
||||
|
||||
POWER_LEVEL,
|
||||
BOOTING,
|
||||
|
||||
BOOTING,
|
||||
|
||||
CHANNEL_ERROR
|
||||
CHANNEL_ERROR
|
||||
|
||||
}
|
||||
@@ -23,8 +23,6 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
|
||||
public enum OperationMode
|
||||
{
|
||||
FILL, EMPTY
|
||||
public enum OperationMode {
|
||||
FILL, EMPTY
|
||||
}
|
||||
@@ -23,8 +23,6 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
|
||||
public enum OutputMode
|
||||
{
|
||||
EXPORT_ONLY, EXPORT_OR_CRAFT, CRAFT_ONLY
|
||||
public enum OutputMode {
|
||||
EXPORT_ONLY, EXPORT_OR_CRAFT, CRAFT_ONLY
|
||||
}
|
||||
|
||||
@@ -23,23 +23,19 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
public enum PowerMultiplier {
|
||||
ONE, CONFIG;
|
||||
|
||||
public enum PowerMultiplier
|
||||
{
|
||||
ONE, CONFIG;
|
||||
/**
|
||||
* please do not edit this value, it is set when AE loads its config files.
|
||||
*/
|
||||
public double multiplier = 1.0;
|
||||
|
||||
/**
|
||||
* please do not edit this value, it is set when AE loads its config files.
|
||||
*/
|
||||
public double multiplier = 1.0;
|
||||
public double multiply(final double in) {
|
||||
return in * this.multiplier;
|
||||
}
|
||||
|
||||
public double multiply( final double in )
|
||||
{
|
||||
return in * this.multiplier;
|
||||
}
|
||||
|
||||
public double divide( final double in )
|
||||
{
|
||||
return in / this.multiplier;
|
||||
}
|
||||
public double divide(final double in) {
|
||||
return in / this.multiplier;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,42 +23,55 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
import net.minecraft.text.Text;
|
||||
import net.minecraft.text.TranslatableText;
|
||||
|
||||
public enum PowerUnits
|
||||
{
|
||||
AE( "gui.appliedenergistics2.units.appliedenergstics" ), // Native Units - AE Energy
|
||||
EU( "gui.appliedenergistics2.units.ic2" ), // IndustrialCraft 2 - Energy Units
|
||||
RF( "gui.appliedenergistics2.units.rf" ); // RF - Redstone Flux
|
||||
public enum PowerUnits {
|
||||
AE("gui.appliedenergistics2.units.appliedenergstics", "AE"), // Native Units - AE Energy
|
||||
EU("gui.appliedenergistics2.units.ic2", "EU"), // IndustrialCraft 2 - Energy Units
|
||||
TR("gui.appliedenergistics2.units.tr", "E"); // TR - TechReborn energy
|
||||
|
||||
/**
|
||||
* unlocalized name for the power unit.
|
||||
*/
|
||||
public final String unlocalizedName;
|
||||
/**
|
||||
* please do not edit this value, it is set when AE loads its config files.
|
||||
*/
|
||||
public double conversionRatio = 1.0;
|
||||
/**
|
||||
* unlocalized name for the power unit.
|
||||
*/
|
||||
public final String unlocalizedName;
|
||||
|
||||
PowerUnits( final String un )
|
||||
{
|
||||
this.unlocalizedName = un;
|
||||
}
|
||||
/**
|
||||
* unlocalized name for the power unit's symbol used to display values.
|
||||
*/
|
||||
public final String symbolName;
|
||||
/**
|
||||
* please do not edit this value, it is set when AE loads its config files.
|
||||
*/
|
||||
public double conversionRatio = 1.0;
|
||||
|
||||
/**
|
||||
* do power conversion using AE's conversion rates.
|
||||
*
|
||||
* Example: PowerUnits.EU.convertTo( PowerUnits.AE, 32 );
|
||||
*
|
||||
* will normally returns 64, as it will convert the EU, to AE with AE's power settings.
|
||||
*
|
||||
* @param target target power unit
|
||||
* @param value value
|
||||
*
|
||||
* @return value converted to target units, from this units.
|
||||
*/
|
||||
public double convertTo( final PowerUnits target, final double value )
|
||||
{
|
||||
return ( value * this.conversionRatio ) / target.conversionRatio;
|
||||
}
|
||||
PowerUnits(final String un, String symbolName) {
|
||||
this.unlocalizedName = un;
|
||||
this.symbolName = symbolName;
|
||||
}
|
||||
|
||||
/**
|
||||
* do power conversion using AE's conversion rates.
|
||||
* <p>
|
||||
* Example: PowerUnits.EU.convertTo( PowerUnits.AE, 32 );
|
||||
* <p>
|
||||
* will normally returns 64, as it will convert the EU, to AE with AE's power
|
||||
* settings.
|
||||
*
|
||||
* @param target target power unit
|
||||
* @param value value
|
||||
* @return value converted to target units, from this units.
|
||||
*/
|
||||
public double convertTo(final PowerUnits target, final double value) {
|
||||
return (value * this.conversionRatio) / target.conversionRatio;
|
||||
}
|
||||
|
||||
public Text textComponent() {
|
||||
return new TranslatableText(unlocalizedName);
|
||||
}
|
||||
|
||||
public String getSymbolName() {
|
||||
return symbolName;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -23,8 +23,6 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
|
||||
public enum RedstoneMode
|
||||
{
|
||||
IGNORE, LOW_SIGNAL, HIGH_SIGNAL, SIGNAL_PULSE
|
||||
public enum RedstoneMode {
|
||||
IGNORE, LOW_SIGNAL, HIGH_SIGNAL, SIGNAL_PULSE
|
||||
}
|
||||
@@ -23,8 +23,6 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
|
||||
public enum RelativeDirection
|
||||
{
|
||||
LEFT, RIGHT, UP, DOW
|
||||
public enum RelativeDirection {
|
||||
LEFT, RIGHT, UP, DOW
|
||||
}
|
||||
@@ -23,8 +23,6 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
|
||||
public enum SchedulingMode
|
||||
{
|
||||
DEFAULT, ROUNDROBIN, RANDOM
|
||||
public enum SchedulingMode {
|
||||
DEFAULT, ROUNDROBIN, RANDOM
|
||||
}
|
||||
|
||||
@@ -23,8 +23,18 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
public enum SearchBoxMode {
|
||||
AUTOSEARCH(false), AUTOSEARCH_KEEP(false), MANUAL_SEARCH(false), MANUAL_SEARCH_KEEP(false), JEI_AUTOSEARCH(true),
|
||||
JEI_AUTOSEARCH_KEEP(true), JEI_MANUAL_SEARCH(true), JEI_MANUAL_SEARCH_KEEP(true);
|
||||
|
||||
private final boolean requiresJei;
|
||||
|
||||
SearchBoxMode(boolean requiresJei) {
|
||||
this.requiresJei = requiresJei;
|
||||
}
|
||||
|
||||
public boolean isRequiresJei() {
|
||||
return requiresJei;
|
||||
}
|
||||
|
||||
public enum SearchBoxMode
|
||||
{
|
||||
AUTOSEARCH, AUTOSEARCH_KEEP, MANUAL_SEARCH, MANUAL_SEARCH_KEEP, JEI_AUTOSEARCH, JEI_AUTOSEARCH_KEEP, JEI_MANUAL_SEARCH, JEI_MANUAL_SEARCH_KEEP
|
||||
}
|
||||
|
||||
@@ -23,49 +23,62 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
import java.util.Locale;
|
||||
|
||||
import net.minecraft.text.Text;
|
||||
import net.minecraft.text.TranslatableText;
|
||||
|
||||
/**
|
||||
* Represent the security systems basic permissions, these are not for anti-griefing, they are part of the mod as a
|
||||
* gameplay feature.
|
||||
* Represent the security systems basic permissions, these are not for
|
||||
* anti-griefing, they are part of the mod as a gameplay feature.
|
||||
*/
|
||||
public enum SecurityPermissions
|
||||
{
|
||||
/**
|
||||
* required to insert items into the network via terminal ( also used for machines based on the owner of the
|
||||
* network, which is determined by its Security Block. )
|
||||
*/
|
||||
INJECT,
|
||||
public enum SecurityPermissions {
|
||||
/**
|
||||
* required to insert items into the network via terminal ( also used for
|
||||
* machines based on the owner of the network, which is determined by its
|
||||
* Security Block. )
|
||||
*/
|
||||
INJECT,
|
||||
|
||||
/**
|
||||
* required to extract items from the network via terminal ( also used for machines based on the owner of the
|
||||
* network, which is determined by its Security Block. )
|
||||
*/
|
||||
EXTRACT,
|
||||
/**
|
||||
* required to extract items from the network via terminal ( also used for
|
||||
* machines based on the owner of the network, which is determined by its
|
||||
* Security Block. )
|
||||
*/
|
||||
EXTRACT,
|
||||
|
||||
/**
|
||||
* required to request crafting from the network via terminal.
|
||||
*/
|
||||
CRAFT,
|
||||
/**
|
||||
* required to request crafting from the network via terminal.
|
||||
*/
|
||||
CRAFT,
|
||||
|
||||
/**
|
||||
* required to modify automation, and make modifications to the networks physical layout.
|
||||
*/
|
||||
BUILD,
|
||||
/**
|
||||
* required to modify automation, and make modifications to the networks
|
||||
* physical layout.
|
||||
*/
|
||||
BUILD,
|
||||
|
||||
/**
|
||||
* required to modify the security blocks settings.
|
||||
*/
|
||||
SECURITY;
|
||||
/**
|
||||
* required to modify the security blocks settings.
|
||||
*/
|
||||
SECURITY;
|
||||
|
||||
private final String unlocalizedName = "gui.appliedenergistics2.security." + this.name().toLowerCase();
|
||||
private final String translationKey = "gui.appliedenergistics2.security." + this.name().toLowerCase(Locale.ROOT);
|
||||
|
||||
public String getUnlocalizedName()
|
||||
{
|
||||
return this.unlocalizedName + ".name";
|
||||
}
|
||||
public String getTranslatedName() {
|
||||
return this.translationKey + ".name";
|
||||
}
|
||||
|
||||
public Text nameText() {
|
||||
return new TranslatableText(getTranslatedName());
|
||||
}
|
||||
|
||||
public String getTranslatedTip() {
|
||||
return this.translationKey + ".tip";
|
||||
}
|
||||
|
||||
public Text tooltipText() {
|
||||
return new TranslatableText(getTranslatedTip());
|
||||
}
|
||||
|
||||
public String getUnlocalizedTip()
|
||||
{
|
||||
return this.unlocalizedName + ".tip";
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,81 +23,73 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
|
||||
public enum Settings {
|
||||
LEVEL_EMITTER_MODE(EnumSet.allOf(LevelEmitterMode.class)),
|
||||
|
||||
public enum Settings
|
||||
{
|
||||
LEVEL_EMITTER_MODE( EnumSet.allOf( LevelEmitterMode.class ) ),
|
||||
REDSTONE_EMITTER(EnumSet.of(RedstoneMode.HIGH_SIGNAL, RedstoneMode.LOW_SIGNAL)),
|
||||
|
||||
REDSTONE_EMITTER( EnumSet.of( RedstoneMode.HIGH_SIGNAL, RedstoneMode.LOW_SIGNAL ) ),
|
||||
REDSTONE_CONTROLLED(EnumSet.allOf(RedstoneMode.class)),
|
||||
|
||||
REDSTONE_CONTROLLED( EnumSet.allOf( RedstoneMode.class ) ),
|
||||
CONDENSER_OUTPUT(EnumSet.allOf(CondenserOutput.class)),
|
||||
|
||||
CONDENSER_OUTPUT( EnumSet.allOf( CondenserOutput.class ) ),
|
||||
POWER_UNITS(EnumSet.of(PowerUnits.AE, PowerUnits.TR)),
|
||||
|
||||
POWER_UNITS( EnumSet.allOf( PowerUnits.class ) ),
|
||||
ACCESS(EnumSet.of(AccessRestriction.READ_WRITE, AccessRestriction.READ, AccessRestriction.WRITE)),
|
||||
|
||||
ACCESS( EnumSet.of( AccessRestriction.READ_WRITE, AccessRestriction.READ, AccessRestriction.WRITE ) ),
|
||||
SORT_DIRECTION(EnumSet.allOf(SortDir.class)),
|
||||
|
||||
SORT_DIRECTION( EnumSet.allOf( SortDir.class ) ),
|
||||
SORT_BY(EnumSet.allOf(SortOrder.class)),
|
||||
|
||||
SORT_BY( EnumSet.allOf( SortOrder.class ) ),
|
||||
SEARCH_TOOLTIPS(EnumSet.of(YesNo.YES, YesNo.NO)),
|
||||
|
||||
SEARCH_TOOLTIPS( EnumSet.of( YesNo.YES, YesNo.NO ) ),
|
||||
VIEW_MODE(EnumSet.allOf(ViewItems.class)),
|
||||
|
||||
VIEW_MODE( EnumSet.allOf( ViewItems.class ) ),
|
||||
SEARCH_MODE(EnumSet.allOf(SearchBoxMode.class)),
|
||||
|
||||
SEARCH_MODE( EnumSet.allOf( SearchBoxMode.class ) ),
|
||||
IO_DIRECTION(EnumSet.of(RelativeDirection.LEFT, RelativeDirection.RIGHT)),
|
||||
|
||||
ACTIONS( EnumSet.allOf( ActionItems.class ) ),
|
||||
BLOCK(EnumSet.of(YesNo.YES, YesNo.NO)),
|
||||
|
||||
IO_DIRECTION( EnumSet.of( RelativeDirection.LEFT, RelativeDirection.RIGHT ) ),
|
||||
OPERATION_MODE(EnumSet.allOf(OperationMode.class)),
|
||||
|
||||
BLOCK( EnumSet.of( YesNo.YES, YesNo.NO ) ),
|
||||
FULLNESS_MODE(EnumSet.allOf(FullnessMode.class)),
|
||||
|
||||
OPERATION_MODE( EnumSet.allOf( OperationMode.class ) ),
|
||||
CRAFT_ONLY(EnumSet.of(YesNo.YES, YesNo.NO)),
|
||||
|
||||
FULLNESS_MODE( EnumSet.allOf( FullnessMode.class ) ),
|
||||
FUZZY_MODE(EnumSet.allOf(FuzzyMode.class)),
|
||||
|
||||
CRAFT_ONLY( EnumSet.of( YesNo.YES, YesNo.NO ) ),
|
||||
LEVEL_TYPE(EnumSet.allOf(LevelType.class)),
|
||||
|
||||
FUZZY_MODE( EnumSet.allOf( FuzzyMode.class ) ),
|
||||
TERMINAL_STYLE(EnumSet.of(TerminalStyle.TALL, TerminalStyle.SMALL)),
|
||||
|
||||
LEVEL_TYPE( EnumSet.allOf( LevelType.class ) ),
|
||||
COPY_MODE(EnumSet.allOf(CopyMode.class)),
|
||||
|
||||
TERMINAL_STYLE( EnumSet.of( TerminalStyle.TALL, TerminalStyle.SMALL ) ),
|
||||
INTERFACE_TERMINAL(EnumSet.of(YesNo.YES, YesNo.NO)),
|
||||
|
||||
COPY_MODE( EnumSet.allOf( CopyMode.class ) ),
|
||||
CRAFT_VIA_REDSTONE(EnumSet.of(YesNo.YES, YesNo.NO)),
|
||||
|
||||
INTERFACE_TERMINAL( EnumSet.of( YesNo.YES, YesNo.NO ) ),
|
||||
STORAGE_FILTER(EnumSet.allOf(StorageFilter.class)),
|
||||
|
||||
CRAFT_VIA_REDSTONE( EnumSet.of( YesNo.YES, YesNo.NO ) ),
|
||||
PLACE_BLOCK(EnumSet.of(YesNo.YES, YesNo.NO)),
|
||||
|
||||
STORAGE_FILTER( EnumSet.allOf( StorageFilter.class ) ),
|
||||
SCHEDULING_MODE(EnumSet.allOf(SchedulingMode.class));
|
||||
|
||||
PLACE_BLOCK( EnumSet.of( YesNo.YES, YesNo.NO ) ),
|
||||
private final EnumSet<? extends Enum<?>> values;
|
||||
|
||||
SCHEDULING_MODE( EnumSet.allOf( SchedulingMode.class ) );
|
||||
Settings(@Nonnull final EnumSet<? extends Enum<?>> possibleOptions) {
|
||||
if (possibleOptions.isEmpty()) {
|
||||
throw new IllegalArgumentException("Tried to instantiate an empty setting.");
|
||||
}
|
||||
|
||||
private final EnumSet<? extends Enum<?>> values;
|
||||
this.values = possibleOptions;
|
||||
}
|
||||
|
||||
Settings( @Nonnull final EnumSet<? extends Enum<?>> possibleOptions )
|
||||
{
|
||||
if( possibleOptions.isEmpty() )
|
||||
{
|
||||
throw new IllegalArgumentException( "Tried to instantiate an empty setting." );
|
||||
}
|
||||
|
||||
this.values = possibleOptions;
|
||||
}
|
||||
|
||||
public EnumSet<? extends Enum<?>> getPossibleValues()
|
||||
{
|
||||
return this.values;
|
||||
}
|
||||
public EnumSet<? extends Enum<?>> getPossibleValues() {
|
||||
return this.values;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -23,8 +23,6 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
|
||||
public enum SortDir
|
||||
{
|
||||
ASCENDING, DESCENDING
|
||||
public enum SortDir {
|
||||
ASCENDING, DESCENDING
|
||||
}
|
||||
@@ -23,8 +23,6 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
|
||||
public enum SortOrder
|
||||
{
|
||||
NAME, AMOUNT, MOD, INVTWEAKS
|
||||
public enum SortOrder {
|
||||
NAME, AMOUNT, MOD
|
||||
}
|
||||
@@ -23,12 +23,10 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
public enum StorageFilter {
|
||||
|
||||
public enum StorageFilter
|
||||
{
|
||||
NONE,
|
||||
|
||||
NONE,
|
||||
|
||||
EXTRACTABLE_ONLY
|
||||
EXTRACTABLE_ONLY
|
||||
|
||||
}
|
||||
|
||||
@@ -23,14 +23,12 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
public enum TerminalStyle {
|
||||
|
||||
public enum TerminalStyle
|
||||
{
|
||||
TALL,
|
||||
|
||||
TALL,
|
||||
FULL,
|
||||
|
||||
FULL,
|
||||
|
||||
SMALL
|
||||
SMALL
|
||||
|
||||
}
|
||||
@@ -23,16 +23,10 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
|
||||
public enum TunnelType
|
||||
{
|
||||
ME, // Network Tunnel
|
||||
IC2_POWER, // EU Tunnel
|
||||
FE_POWER, // Forge Energy tunnel
|
||||
REDSTONE, // Redstone Tunnel
|
||||
FLUID, // Fluid Tunnel
|
||||
ITEM, // Item Tunnel
|
||||
LIGHT, // Light Tunnel
|
||||
BUNDLED_REDSTONE, // Bundled Redstone Tunnel
|
||||
COMPUTER_MESSAGE // Computer Message Tunnel
|
||||
public enum TunnelType {
|
||||
ME, // Network Tunnel
|
||||
REDSTONE, // Redstone Tunnel
|
||||
FLUID, // Fluid Tunnel
|
||||
ITEM, // Item Tunnel
|
||||
LIGHT, // Light Tunnel
|
||||
}
|
||||
|
||||
@@ -23,74 +23,154 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Comparator;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
import net.minecraft.item.ItemStack;
|
||||
import com.google.common.base.Preconditions;
|
||||
|
||||
import appeng.api.definitions.IItemDefinition;
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.item.BlockItem;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemConvertible;
|
||||
import net.minecraft.text.Text;
|
||||
import net.minecraft.text.TranslatableText;
|
||||
|
||||
public enum Upgrades {
|
||||
/**
|
||||
* Gold Tier Upgrades.
|
||||
*/
|
||||
CAPACITY(0), REDSTONE(0), CRAFTING(0),
|
||||
|
||||
public enum Upgrades
|
||||
{
|
||||
/**
|
||||
* Gold Tier Upgrades.
|
||||
*/
|
||||
CAPACITY( 0 ),
|
||||
REDSTONE( 0 ),
|
||||
CRAFTING( 0 ),
|
||||
/**
|
||||
* Diamond Tier Upgrades.
|
||||
*/
|
||||
FUZZY(1), SPEED(1), INVERTER(1);
|
||||
|
||||
/**
|
||||
* Diamond Tier Upgrades.
|
||||
*/
|
||||
FUZZY( 1 ),
|
||||
SPEED( 1 ),
|
||||
INVERTER( 1 );
|
||||
private final int tier;
|
||||
private final List<Supported> supported = new ArrayList<>();
|
||||
private List<Text> supportedTooltipLines;
|
||||
|
||||
private final int tier;
|
||||
private final Map<ItemStack, Integer> supportedMax = new HashMap<>();
|
||||
Upgrades(final int tier) {
|
||||
this.tier = tier;
|
||||
}
|
||||
|
||||
Upgrades( final int tier )
|
||||
{
|
||||
this.tier = tier;
|
||||
}
|
||||
/**
|
||||
* @return list of Items/Blocks that support this upgrade, and how many it
|
||||
* supports.
|
||||
*/
|
||||
public List<Supported> getSupported() {
|
||||
return this.supported;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return list of Items/Blocks that support this upgrade, and how many it supports.
|
||||
*/
|
||||
public Map<ItemStack, Integer> getSupported()
|
||||
{
|
||||
return this.supportedMax;
|
||||
}
|
||||
public void registerItem(final ItemConvertible item, final int maxSupported) {
|
||||
this.registerItem(item, maxSupported, null);
|
||||
}
|
||||
|
||||
/**
|
||||
* Registers a specific amount of this upgrade into a specific machine
|
||||
*
|
||||
* @param item machine in which this upgrade can be installed
|
||||
* @param maxSupported amount how many upgrades can be installed
|
||||
*/
|
||||
public void registerItem( final IItemDefinition item, final int maxSupported )
|
||||
{
|
||||
item.maybeStack( 1 ).ifPresent( is -> this.registerItem( is, maxSupported ) );
|
||||
}
|
||||
/**
|
||||
* Registers a specific amount of this upgrade into a specific machine
|
||||
*
|
||||
* @param item machine in which this upgrade can be installed
|
||||
* @param maxSupported amount how many upgrades can be installed
|
||||
* @param tooltipGroup If more than one item of the same group are supported,
|
||||
* the tooltip will show this translation key instead. If
|
||||
* the items have different maxSupported values, the highest
|
||||
* will be shown.
|
||||
*/
|
||||
public void registerItem(final ItemConvertible item, final int maxSupported, @Nullable String tooltipGroup) {
|
||||
Preconditions.checkNotNull(item);
|
||||
this.supported.add(new Supported(item.asItem(), maxSupported, tooltipGroup));
|
||||
supportedTooltipLines = null; // Reset tooltip
|
||||
}
|
||||
|
||||
/**
|
||||
* Registers a specific amount of this upgrade into a specific machine
|
||||
*
|
||||
* @param stack machine in which this upgrade can be installed
|
||||
* @param maxSupported amount how many upgrades can be installed
|
||||
*/
|
||||
public void registerItem( final ItemStack stack, final int maxSupported )
|
||||
{
|
||||
if( stack != null )
|
||||
{
|
||||
this.supportedMax.put( stack, maxSupported );
|
||||
}
|
||||
}
|
||||
@Environment(EnvType.CLIENT)
|
||||
public List<Text> getTooltipLines() {
|
||||
if (supportedTooltipLines == null) {
|
||||
supported.sort(Comparator.comparingInt(o -> o.maxCount));
|
||||
supportedTooltipLines = new ArrayList<>(supported.size());
|
||||
|
||||
// Use a separate set because the final text will include numbers
|
||||
Set<Text> namesAdded = new HashSet<>();
|
||||
|
||||
for (int i = 0; i < supported.size(); i++) {
|
||||
Supported supported = this.supported.get(i);
|
||||
Text name = supported.item.getName();
|
||||
|
||||
// If the group was already added by a previous item, skip this
|
||||
if (supported.getTooltipGroup() != null && namesAdded.contains(supported.getTooltipGroup())) {
|
||||
continue;
|
||||
}
|
||||
|
||||
// If any of the following items would be of the same group, use the group name
|
||||
// instead
|
||||
if (supported.getTooltipGroup() != null) {
|
||||
for (int j = i + 1; j < this.supported.size(); j++) {
|
||||
Text otherGroup = this.supported.get(j).getTooltipGroup();
|
||||
if (supported.getTooltipGroup().equals(otherGroup)) {
|
||||
name = supported.getTooltipGroup();
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (namesAdded.add(name)) {
|
||||
// append the supported count only if its > 1
|
||||
if (supported.maxCount > 1) {
|
||||
name = name.copy().append(" (" + supported.maxCount + ")");
|
||||
}
|
||||
supportedTooltipLines.add(name);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return supportedTooltipLines;
|
||||
}
|
||||
|
||||
public int getTier() {
|
||||
return this.tier;
|
||||
}
|
||||
|
||||
public static class Supported {
|
||||
private final Item item;
|
||||
private final Block block;
|
||||
private final int maxCount;
|
||||
// Translation key of the tooltip group
|
||||
@Nullable
|
||||
private final String tooltipGroup;
|
||||
|
||||
public Supported(Item item, int maxCount, @Nullable String tooltipGroup) {
|
||||
this.item = item;
|
||||
if (item instanceof BlockItem) {
|
||||
this.block = ((BlockItem) item).getBlock();
|
||||
} else {
|
||||
this.block = null;
|
||||
}
|
||||
this.maxCount = maxCount;
|
||||
this.tooltipGroup = tooltipGroup;
|
||||
}
|
||||
|
||||
public int getMaxCount() {
|
||||
return maxCount;
|
||||
}
|
||||
|
||||
public boolean isSupported(Block block) {
|
||||
return block != null && this.block == block;
|
||||
}
|
||||
|
||||
public boolean isSupported(Item item) {
|
||||
return item != null && this.item == item;
|
||||
}
|
||||
|
||||
public Text getTooltipGroup() {
|
||||
return this.tooltipGroup != null ? new TranslatableText(this.tooltipGroup) : null;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public int getTier()
|
||||
{
|
||||
return this.tier;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,8 +23,6 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
|
||||
public enum ViewItems
|
||||
{
|
||||
ALL, STORED, CRAFTABLE
|
||||
public enum ViewItems {
|
||||
ALL, STORED, CRAFTABLE
|
||||
}
|
||||
@@ -23,8 +23,6 @@
|
||||
|
||||
package appeng.api.config;
|
||||
|
||||
|
||||
public enum YesNo
|
||||
{
|
||||
YES, NO, UNDECIDED
|
||||
public enum YesNo {
|
||||
YES, NO, UNDECIDED
|
||||
}
|
||||
|
||||
@@ -0,0 +1,112 @@
|
||||
/*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2020 TeamAppliedEnergistics
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
* this software and associated documentation files (the "Software"), to deal in
|
||||
* the Software without restriction, including without limitation the rights to
|
||||
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
* the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
* subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in all
|
||||
* copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
package appeng.api.crafting;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.recipe.CraftingRecipe;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import appeng.api.networking.crafting.ICraftingPatternDetails;
|
||||
import appeng.api.storage.data.IAEItemStack;
|
||||
|
||||
public interface ICraftingHelper {
|
||||
|
||||
/**
|
||||
* Checks that the given item stack is an encoded pattern.
|
||||
*/
|
||||
boolean isEncodedPattern(@Nullable IAEItemStack item);
|
||||
|
||||
/**
|
||||
* Checks that the given item stack is an encoded pattern.
|
||||
*/
|
||||
boolean isEncodedPattern(ItemStack item);
|
||||
|
||||
/**
|
||||
* Encodes a processing pattern which represents the ability to convert the
|
||||
* given inputs into the given outputs using some process external to the ME
|
||||
* system.
|
||||
*
|
||||
* @param stack If null, a new item will be created to hold the encoded pattern.
|
||||
* Otherwise the given item must already contains an encoded
|
||||
* pattern that will be overwritten.
|
||||
* @throws IllegalArgumentException If either in or out contain only empty
|
||||
* ItemStacks.
|
||||
* @return A new encoded pattern, or the given stack with the pattern encoded in
|
||||
* it.
|
||||
*/
|
||||
ItemStack encodeProcessingPattern(@Nullable ItemStack stack, ItemStack[] in, ItemStack[] out);
|
||||
|
||||
/**
|
||||
* Encodes a crafting pattern which represents a Vanilla crafting recipe.
|
||||
*
|
||||
* @param stack If null, a new item will be created to hold the
|
||||
* encoded pattern. Otherwise the given item must
|
||||
* already contains an encoded pattern that will be
|
||||
* overwritten.
|
||||
* @param recipe The Vanilla crafting recipe to be encoded.
|
||||
* @param in The items in the crafting grid, which are used to
|
||||
* determine what items are supplied from the ME system
|
||||
* to craft using this pattern.
|
||||
* @param out What is to be expected as the result of this crafting
|
||||
* operation by the ME system.
|
||||
* @param allowSubstitutes Controls whether the ME system will allow the use of
|
||||
* equivalent items to craft this recipe.
|
||||
* @throws IllegalArgumentException If either in or out contain only empty
|
||||
* ItemStacks.
|
||||
*/
|
||||
ItemStack encodeCraftingPattern(@Nullable ItemStack stack, CraftingRecipe recipe, ItemStack[] in, ItemStack out,
|
||||
boolean allowSubstitutes);
|
||||
|
||||
/**
|
||||
* Same as {@link #decodePattern(ItemStack, World, boolean)} with no auto
|
||||
* recovery of changed recipe ids.
|
||||
*/
|
||||
@Nullable
|
||||
default ICraftingPatternDetails decodePattern(@Nonnull ItemStack itemStack, @Nonnull World world) {
|
||||
return decodePattern(itemStack, world, false);
|
||||
}
|
||||
|
||||
/**
|
||||
* Decodes an encoded crafting pattern and returns the pattern details.
|
||||
* <p>
|
||||
* The item backing the {@link ItemStack} needs to be an item returned by the
|
||||
* encode methods of this class.
|
||||
*
|
||||
* @param itemStack pattern
|
||||
* @param world world used to access the
|
||||
* {@link net.minecraft.recipe.RecipeManager}.
|
||||
* @param autoRecovery If true, the method will try to recover from changed
|
||||
* recipe ids by searching the entire recipe manager for a
|
||||
* recipe matching the inputs. If this is successful, the
|
||||
* given item stack will be changed to reflect the new
|
||||
* recipe id.
|
||||
* @return The pattern details if the pattern could be decoded. Otherwise null.
|
||||
*/
|
||||
@Nullable
|
||||
ICraftingPatternDetails decodePattern(@Nonnull ItemStack itemStack, @Nonnull World world, boolean autoRecovery);
|
||||
|
||||
}
|
||||
@@ -18,34 +18,38 @@
|
||||
|
||||
package appeng.api.definitions;
|
||||
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.item.ItemBlock;
|
||||
import net.minecraft.item.BlockItem;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
import net.minecraft.world.BlockView;
|
||||
|
||||
public interface IBlockDefinition extends IItemDefinition {
|
||||
/**
|
||||
* @return the {@link Block} implementation if applicable
|
||||
*/
|
||||
default Optional<Block> maybeBlock() {
|
||||
return Optional.of(block());
|
||||
}
|
||||
|
||||
public interface IBlockDefinition extends IItemDefinition
|
||||
{
|
||||
/**
|
||||
* @return the {@link Block} implementation if applicable
|
||||
*/
|
||||
Optional<Block> maybeBlock();
|
||||
Block block();
|
||||
|
||||
/**
|
||||
* @return the {@link ItemBlock} implementation if applicable
|
||||
*/
|
||||
Optional<ItemBlock> maybeItemBlock();
|
||||
/**
|
||||
* @return the {@link BlockItem} implementation if applicable
|
||||
*/
|
||||
default Optional<BlockItem> maybeBlockItem() {
|
||||
return Optional.of(blockItem());
|
||||
}
|
||||
|
||||
/**
|
||||
* Compare Block with world.
|
||||
*
|
||||
* @param world world of block
|
||||
* @param pos location
|
||||
*
|
||||
* @return if the block is placed in the world at the specific location.
|
||||
*/
|
||||
boolean isSameAs( IBlockAccess world, BlockPos pos );
|
||||
BlockItem blockItem();
|
||||
|
||||
/**
|
||||
* Compare Block with world.
|
||||
*
|
||||
* @param world world of block
|
||||
* @param pos location
|
||||
* @return if the block is placed in the world at the specific location.
|
||||
*/
|
||||
boolean isSameAs(BlockView world, BlockPos pos);
|
||||
}
|
||||
|
||||
@@ -23,169 +23,167 @@
|
||||
|
||||
package appeng.api.definitions;
|
||||
|
||||
|
||||
/**
|
||||
* A list of all blocks in AE
|
||||
*/
|
||||
public interface IBlocks
|
||||
{
|
||||
/*
|
||||
* world gen
|
||||
*/
|
||||
IBlockDefinition quartzOre();
|
||||
public interface IBlocks {
|
||||
/*
|
||||
* world gen
|
||||
*/
|
||||
IBlockDefinition quartzOre();
|
||||
|
||||
IBlockDefinition quartzOreCharged();
|
||||
IBlockDefinition quartzOreCharged();
|
||||
|
||||
IBlockDefinition matrixFrame();
|
||||
IBlockDefinition matrixFrame();
|
||||
|
||||
/*
|
||||
* decorative
|
||||
*/
|
||||
IBlockDefinition quartzBlock();
|
||||
/*
|
||||
* decorative
|
||||
*/
|
||||
IBlockDefinition quartzBlock();
|
||||
|
||||
IBlockDefinition quartzPillar();
|
||||
IBlockDefinition quartzPillar();
|
||||
|
||||
IBlockDefinition chiseledQuartzBlock();
|
||||
IBlockDefinition chiseledQuartzBlock();
|
||||
|
||||
IBlockDefinition quartzGlass();
|
||||
IBlockDefinition quartzGlass();
|
||||
|
||||
IBlockDefinition quartzVibrantGlass();
|
||||
IBlockDefinition quartzVibrantGlass();
|
||||
|
||||
IBlockDefinition quartzFixture();
|
||||
IBlockDefinition quartzFixture();
|
||||
|
||||
IBlockDefinition fluixBlock();
|
||||
IBlockDefinition fluixBlock();
|
||||
|
||||
IBlockDefinition skyStoneBlock();
|
||||
IBlockDefinition skyStoneBlock();
|
||||
|
||||
IBlockDefinition smoothSkyStoneBlock();
|
||||
IBlockDefinition smoothSkyStoneBlock();
|
||||
|
||||
IBlockDefinition skyStoneBrick();
|
||||
IBlockDefinition skyStoneBrick();
|
||||
|
||||
IBlockDefinition skyStoneSmallBrick();
|
||||
IBlockDefinition skyStoneSmallBrick();
|
||||
|
||||
IBlockDefinition skyStoneChest();
|
||||
IBlockDefinition skyStoneChest();
|
||||
|
||||
IBlockDefinition smoothSkyStoneChest();
|
||||
IBlockDefinition smoothSkyStoneChest();
|
||||
|
||||
IBlockDefinition skyCompass();
|
||||
IBlockDefinition skyCompass();
|
||||
|
||||
IBlockDefinition skyStoneStairs();
|
||||
IBlockDefinition skyStoneStairs();
|
||||
|
||||
IBlockDefinition smoothSkyStoneStairs();
|
||||
IBlockDefinition smoothSkyStoneStairs();
|
||||
|
||||
IBlockDefinition skyStoneBrickStairs();
|
||||
IBlockDefinition skyStoneBrickStairs();
|
||||
|
||||
IBlockDefinition skyStoneSmallBrickStairs();
|
||||
IBlockDefinition skyStoneSmallBrickStairs();
|
||||
|
||||
IBlockDefinition fluixStairs();
|
||||
IBlockDefinition fluixStairs();
|
||||
|
||||
IBlockDefinition quartzStairs();
|
||||
IBlockDefinition quartzStairs();
|
||||
|
||||
IBlockDefinition chiseledQuartzStairs();
|
||||
IBlockDefinition chiseledQuartzStairs();
|
||||
|
||||
IBlockDefinition quartzPillarStairs();
|
||||
IBlockDefinition quartzPillarStairs();
|
||||
|
||||
IBlockDefinition skyStoneSlab();
|
||||
IBlockDefinition skyStoneSlab();
|
||||
|
||||
IBlockDefinition smoothSkyStoneSlab();
|
||||
IBlockDefinition smoothSkyStoneSlab();
|
||||
|
||||
IBlockDefinition skyStoneBrickSlab();
|
||||
IBlockDefinition skyStoneBrickSlab();
|
||||
|
||||
IBlockDefinition skyStoneSmallBrickSlab();
|
||||
IBlockDefinition skyStoneSmallBrickSlab();
|
||||
|
||||
IBlockDefinition fluixSlab();
|
||||
IBlockDefinition fluixSlab();
|
||||
|
||||
IBlockDefinition quartzSlab();
|
||||
IBlockDefinition quartzSlab();
|
||||
|
||||
IBlockDefinition chiseledQuartzSlab();
|
||||
IBlockDefinition chiseledQuartzSlab();
|
||||
|
||||
IBlockDefinition quartzPillarSlab();
|
||||
IBlockDefinition quartzPillarSlab();
|
||||
|
||||
/*
|
||||
* misc
|
||||
*/
|
||||
ITileDefinition grindstone();
|
||||
/*
|
||||
* misc
|
||||
*/
|
||||
ITileDefinition grindstone();
|
||||
|
||||
ITileDefinition crank();
|
||||
ITileDefinition crank();
|
||||
|
||||
ITileDefinition inscriber();
|
||||
ITileDefinition inscriber();
|
||||
|
||||
ITileDefinition wirelessAccessPoint();
|
||||
ITileDefinition wirelessAccessPoint();
|
||||
|
||||
ITileDefinition charger();
|
||||
ITileDefinition charger();
|
||||
|
||||
IBlockDefinition tinyTNT();
|
||||
IBlockDefinition tinyTNT();
|
||||
|
||||
ITileDefinition securityStation();
|
||||
ITileDefinition securityStation();
|
||||
|
||||
/*
|
||||
* quantum Network Bridge
|
||||
*/
|
||||
ITileDefinition quantumRing();
|
||||
/*
|
||||
* quantum Network Bridge
|
||||
*/
|
||||
ITileDefinition quantumRing();
|
||||
|
||||
ITileDefinition quantumLink();
|
||||
ITileDefinition quantumLink();
|
||||
|
||||
/*
|
||||
* spatial iO
|
||||
*/
|
||||
ITileDefinition spatialPylon();
|
||||
/*
|
||||
* spatial iO
|
||||
*/
|
||||
ITileDefinition spatialPylon();
|
||||
|
||||
ITileDefinition spatialIOPort();
|
||||
ITileDefinition spatialIOPort();
|
||||
|
||||
/*
|
||||
* Bus / cables
|
||||
*/
|
||||
ITileDefinition multiPart();
|
||||
/*
|
||||
* Bus / cables
|
||||
*/
|
||||
ITileDefinition multiPart();
|
||||
|
||||
/*
|
||||
* machines
|
||||
*/
|
||||
ITileDefinition controller();
|
||||
/*
|
||||
* machines
|
||||
*/
|
||||
ITileDefinition controller();
|
||||
|
||||
ITileDefinition drive();
|
||||
ITileDefinition drive();
|
||||
|
||||
ITileDefinition chest();
|
||||
ITileDefinition chest();
|
||||
|
||||
ITileDefinition iface();
|
||||
ITileDefinition iface();
|
||||
|
||||
ITileDefinition fluidIface();
|
||||
ITileDefinition fluidIface();
|
||||
|
||||
ITileDefinition cellWorkbench();
|
||||
ITileDefinition cellWorkbench();
|
||||
|
||||
ITileDefinition iOPort();
|
||||
ITileDefinition iOPort();
|
||||
|
||||
ITileDefinition condenser();
|
||||
ITileDefinition condenser();
|
||||
|
||||
ITileDefinition energyAcceptor();
|
||||
ITileDefinition energyAcceptor();
|
||||
|
||||
ITileDefinition vibrationChamber();
|
||||
ITileDefinition vibrationChamber();
|
||||
|
||||
ITileDefinition quartzGrowthAccelerator();
|
||||
ITileDefinition quartzGrowthAccelerator();
|
||||
|
||||
ITileDefinition energyCell();
|
||||
ITileDefinition energyCell();
|
||||
|
||||
ITileDefinition energyCellDense();
|
||||
ITileDefinition energyCellDense();
|
||||
|
||||
ITileDefinition energyCellCreative();
|
||||
ITileDefinition energyCellCreative();
|
||||
|
||||
// rv1
|
||||
ITileDefinition craftingUnit();
|
||||
// rv1
|
||||
ITileDefinition craftingUnit();
|
||||
|
||||
ITileDefinition craftingAccelerator();
|
||||
ITileDefinition craftingAccelerator();
|
||||
|
||||
ITileDefinition craftingStorage1k();
|
||||
ITileDefinition craftingStorage1k();
|
||||
|
||||
ITileDefinition craftingStorage4k();
|
||||
ITileDefinition craftingStorage4k();
|
||||
|
||||
ITileDefinition craftingStorage16k();
|
||||
ITileDefinition craftingStorage16k();
|
||||
|
||||
ITileDefinition craftingStorage64k();
|
||||
ITileDefinition craftingStorage64k();
|
||||
|
||||
ITileDefinition craftingMonitor();
|
||||
ITileDefinition craftingMonitor();
|
||||
|
||||
ITileDefinition molecularAssembler();
|
||||
ITileDefinition molecularAssembler();
|
||||
|
||||
ITileDefinition lightDetector();
|
||||
ITileDefinition lightDetector();
|
||||
|
||||
ITileDefinition paint();
|
||||
ITileDefinition paint();
|
||||
}
|
||||
|
||||
@@ -18,10 +18,8 @@
|
||||
|
||||
package appeng.api.definitions;
|
||||
|
||||
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
|
||||
/**
|
||||
* Interface to compare a definition with an itemstack or a block
|
||||
*
|
||||
@@ -29,14 +27,12 @@ import net.minecraft.item.ItemStack;
|
||||
* @version rv2
|
||||
* @since rv2
|
||||
*/
|
||||
public interface IComparableDefinition
|
||||
{
|
||||
/**
|
||||
* Compare {@link ItemStack} with this
|
||||
*
|
||||
* @param comparableStack compared item
|
||||
*
|
||||
* @return true if the item stack is a matching item.
|
||||
*/
|
||||
boolean isSameAs( ItemStack comparableStack );
|
||||
public interface IComparableDefinition {
|
||||
/**
|
||||
* Compare {@link ItemStack} with this
|
||||
*
|
||||
* @param comparableStack compared item
|
||||
* @return true if the item stack is a matching item.
|
||||
*/
|
||||
boolean isSameAs(ItemStack comparableStack);
|
||||
}
|
||||
|
||||
@@ -23,29 +23,27 @@
|
||||
|
||||
package appeng.api.definitions;
|
||||
|
||||
|
||||
/**
|
||||
* All definitions in AE
|
||||
*/
|
||||
public interface IDefinitions
|
||||
{
|
||||
/**
|
||||
* @return an accessible list of all of AE's blocks
|
||||
*/
|
||||
IBlocks blocks();
|
||||
public interface IDefinitions {
|
||||
/**
|
||||
* @return an accessible list of all of AE's blocks
|
||||
*/
|
||||
IBlocks blocks();
|
||||
|
||||
/**
|
||||
* @return an accessible list of all of AE's Items
|
||||
*/
|
||||
IItems items();
|
||||
/**
|
||||
* @return an accessible list of all of AE's Items
|
||||
*/
|
||||
IItems items();
|
||||
|
||||
/**
|
||||
* @return an accessible list of all of AE's materials; materials are items
|
||||
*/
|
||||
IMaterials materials();
|
||||
/**
|
||||
* @return an accessible list of all of AE's materials; materials are items
|
||||
*/
|
||||
IMaterials materials();
|
||||
|
||||
/**
|
||||
* @return an accessible list of all of AE's parts, parts are items
|
||||
*/
|
||||
IParts parts();
|
||||
/**
|
||||
* @return an accessible list of all of AE's parts, parts are items
|
||||
*/
|
||||
IParts parts();
|
||||
}
|
||||
|
||||
@@ -23,36 +23,51 @@
|
||||
|
||||
package appeng.api.definitions;
|
||||
|
||||
|
||||
import java.util.Optional;
|
||||
import java.util.Set;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemConvertible;
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
import appeng.api.features.AEFeature;
|
||||
|
||||
public interface IItemDefinition extends IComparableDefinition
|
||||
{
|
||||
/**
|
||||
* @return the unique name of the definition which will be used to register the underlying structure. Will never be
|
||||
* null
|
||||
*/
|
||||
@Nonnull
|
||||
String identifier();
|
||||
public interface IItemDefinition extends IComparableDefinition, ItemConvertible {
|
||||
/**
|
||||
* @return the unique name of the definition which will be used to register the
|
||||
* underlying structure. Will never be null
|
||||
*/
|
||||
@Nonnull
|
||||
String identifier();
|
||||
|
||||
/**
|
||||
* @return the {@link Item} Implementation if applicable
|
||||
*/
|
||||
Optional<Item> maybeItem();
|
||||
/**
|
||||
* @return the {@link Item} Implementation if applicable
|
||||
*/
|
||||
default Optional<Item> maybeItem() {
|
||||
return Optional.of(item());
|
||||
}
|
||||
|
||||
/**
|
||||
* @return an {@link ItemStack} with specified quantity of this item.
|
||||
*/
|
||||
Optional<ItemStack> maybeStack( int stackSize );
|
||||
Item item();
|
||||
|
||||
/**
|
||||
* @return an {@link ItemStack} with specified quantity of this item.
|
||||
*/
|
||||
default Optional<ItemStack> maybeStack(int stackSize) {
|
||||
return Optional.of(stack(stackSize));
|
||||
}
|
||||
|
||||
ItemStack stack(int stackSize);
|
||||
|
||||
/**
|
||||
* @return an immutable set of the features of this item
|
||||
*/
|
||||
Set<AEFeature> features();
|
||||
|
||||
@Override
|
||||
default Item asItem() {
|
||||
return item();
|
||||
}
|
||||
|
||||
/**
|
||||
* @return <tt>true</tt> if definition is enabled
|
||||
*/
|
||||
boolean isEnabled();
|
||||
}
|
||||
|
||||
@@ -23,95 +23,98 @@
|
||||
|
||||
package appeng.api.definitions;
|
||||
|
||||
|
||||
import appeng.api.util.AEColoredItemDefinition;
|
||||
|
||||
|
||||
/**
|
||||
* A list of all items in AE
|
||||
*/
|
||||
public interface IItems
|
||||
{
|
||||
IItemDefinition certusQuartzAxe();
|
||||
public interface IItems {
|
||||
IItemDefinition certusQuartzAxe();
|
||||
|
||||
IItemDefinition certusQuartzHoe();
|
||||
IItemDefinition certusQuartzHoe();
|
||||
|
||||
IItemDefinition certusQuartzShovel();
|
||||
IItemDefinition certusQuartzShovel();
|
||||
|
||||
IItemDefinition certusQuartzPick();
|
||||
IItemDefinition certusQuartzPick();
|
||||
|
||||
IItemDefinition certusQuartzSword();
|
||||
IItemDefinition certusQuartzSword();
|
||||
|
||||
IItemDefinition certusQuartzWrench();
|
||||
IItemDefinition certusQuartzWrench();
|
||||
|
||||
IItemDefinition certusQuartzKnife();
|
||||
IItemDefinition certusQuartzKnife();
|
||||
|
||||
IItemDefinition netherQuartzAxe();
|
||||
IItemDefinition netherQuartzAxe();
|
||||
|
||||
IItemDefinition netherQuartzHoe();
|
||||
IItemDefinition netherQuartzHoe();
|
||||
|
||||
IItemDefinition netherQuartzShovel();
|
||||
IItemDefinition netherQuartzShovel();
|
||||
|
||||
IItemDefinition netherQuartzPick();
|
||||
IItemDefinition netherQuartzPick();
|
||||
|
||||
IItemDefinition netherQuartzSword();
|
||||
IItemDefinition netherQuartzSword();
|
||||
|
||||
IItemDefinition netherQuartzWrench();
|
||||
IItemDefinition netherQuartzWrench();
|
||||
|
||||
IItemDefinition netherQuartzKnife();
|
||||
IItemDefinition netherQuartzKnife();
|
||||
|
||||
IItemDefinition entropyManipulator();
|
||||
IItemDefinition entropyManipulator();
|
||||
|
||||
IItemDefinition wirelessTerminal();
|
||||
IItemDefinition wirelessTerminal();
|
||||
|
||||
IItemDefinition biometricCard();
|
||||
IItemDefinition biometricCard();
|
||||
|
||||
IItemDefinition chargedStaff();
|
||||
IItemDefinition chargedStaff();
|
||||
|
||||
IItemDefinition massCannon();
|
||||
IItemDefinition massCannon();
|
||||
|
||||
IItemDefinition memoryCard();
|
||||
IItemDefinition memoryCard();
|
||||
|
||||
IItemDefinition networkTool();
|
||||
IItemDefinition networkTool();
|
||||
|
||||
IItemDefinition portableCell();
|
||||
IItemDefinition portableCell();
|
||||
|
||||
IItemDefinition cellCreative();
|
||||
IItemDefinition cellCreative();
|
||||
|
||||
IItemDefinition viewCell();
|
||||
IItemDefinition viewCell();
|
||||
|
||||
IItemDefinition cell1k();
|
||||
IItemDefinition cell1k();
|
||||
|
||||
IItemDefinition cell4k();
|
||||
IItemDefinition cell4k();
|
||||
|
||||
IItemDefinition cell16k();
|
||||
IItemDefinition cell16k();
|
||||
|
||||
IItemDefinition cell64k();
|
||||
IItemDefinition cell64k();
|
||||
|
||||
IItemDefinition fluidCell1k();
|
||||
IItemDefinition fluidCell1k();
|
||||
|
||||
IItemDefinition fluidCell4k();
|
||||
IItemDefinition fluidCell4k();
|
||||
|
||||
IItemDefinition fluidCell16k();
|
||||
IItemDefinition fluidCell16k();
|
||||
|
||||
IItemDefinition fluidCell64k();
|
||||
IItemDefinition fluidCell64k();
|
||||
|
||||
IItemDefinition spatialCell2();
|
||||
IItemDefinition spatialCell2();
|
||||
|
||||
IItemDefinition spatialCell16();
|
||||
IItemDefinition spatialCell16();
|
||||
|
||||
IItemDefinition spatialCell128();
|
||||
IItemDefinition spatialCell128();
|
||||
|
||||
IItemDefinition facade();
|
||||
IItemDefinition facade();
|
||||
|
||||
IItemDefinition crystalSeed();
|
||||
IItemDefinition certusCrystalSeed();
|
||||
|
||||
// rv1
|
||||
IItemDefinition encodedPattern();
|
||||
IItemDefinition fluixCrystalSeed();
|
||||
|
||||
IItemDefinition colorApplicator();
|
||||
IItemDefinition netherQuartzSeed();
|
||||
|
||||
AEColoredItemDefinition coloredPaintBall();
|
||||
IItemDefinition dummyFluidItem();
|
||||
|
||||
AEColoredItemDefinition coloredLumenPaintBall();
|
||||
// rv1
|
||||
IItemDefinition encodedPattern();
|
||||
|
||||
IItemDefinition colorApplicator();
|
||||
|
||||
AEColoredItemDefinition coloredPaintBall();
|
||||
|
||||
AEColoredItemDefinition coloredLumenPaintBall();
|
||||
}
|
||||
|
||||
@@ -23,123 +23,121 @@
|
||||
|
||||
package appeng.api.definitions;
|
||||
|
||||
|
||||
/**
|
||||
* A list of all materials in AE
|
||||
*/
|
||||
public interface IMaterials
|
||||
{
|
||||
IItemDefinition cell2SpatialPart();
|
||||
public interface IMaterials {
|
||||
IItemDefinition cell2SpatialPart();
|
||||
|
||||
IItemDefinition cell16SpatialPart();
|
||||
IItemDefinition cell16SpatialPart();
|
||||
|
||||
IItemDefinition cell128SpatialPart();
|
||||
IItemDefinition cell128SpatialPart();
|
||||
|
||||
IItemDefinition silicon();
|
||||
IItemDefinition silicon();
|
||||
|
||||
IItemDefinition skyDust();
|
||||
IItemDefinition skyDust();
|
||||
|
||||
IItemDefinition calcProcessorPress();
|
||||
IItemDefinition calcProcessorPress();
|
||||
|
||||
IItemDefinition engProcessorPress();
|
||||
IItemDefinition engProcessorPress();
|
||||
|
||||
IItemDefinition logicProcessorPress();
|
||||
IItemDefinition logicProcessorPress();
|
||||
|
||||
IItemDefinition calcProcessorPrint();
|
||||
IItemDefinition calcProcessorPrint();
|
||||
|
||||
IItemDefinition engProcessorPrint();
|
||||
IItemDefinition engProcessorPrint();
|
||||
|
||||
IItemDefinition logicProcessorPrint();
|
||||
IItemDefinition logicProcessorPrint();
|
||||
|
||||
IItemDefinition siliconPress();
|
||||
IItemDefinition siliconPress();
|
||||
|
||||
IItemDefinition siliconPrint();
|
||||
IItemDefinition siliconPrint();
|
||||
|
||||
IItemDefinition namePress();
|
||||
IItemDefinition namePress();
|
||||
|
||||
IItemDefinition logicProcessor();
|
||||
IItemDefinition logicProcessor();
|
||||
|
||||
IItemDefinition calcProcessor();
|
||||
IItemDefinition calcProcessor();
|
||||
|
||||
IItemDefinition engProcessor();
|
||||
IItemDefinition engProcessor();
|
||||
|
||||
IItemDefinition basicCard();
|
||||
IItemDefinition basicCard();
|
||||
|
||||
IItemDefinition advCard();
|
||||
IItemDefinition advCard();
|
||||
|
||||
IItemDefinition purifiedCertusQuartzCrystal();
|
||||
IItemDefinition purifiedCertusQuartzCrystal();
|
||||
|
||||
IItemDefinition purifiedNetherQuartzCrystal();
|
||||
IItemDefinition purifiedNetherQuartzCrystal();
|
||||
|
||||
IItemDefinition purifiedFluixCrystal();
|
||||
IItemDefinition purifiedFluixCrystal();
|
||||
|
||||
IItemDefinition cell1kPart();
|
||||
IItemDefinition cell1kPart();
|
||||
|
||||
IItemDefinition cell4kPart();
|
||||
IItemDefinition cell4kPart();
|
||||
|
||||
IItemDefinition cell16kPart();
|
||||
IItemDefinition cell16kPart();
|
||||
|
||||
IItemDefinition cell64kPart();
|
||||
IItemDefinition cell64kPart();
|
||||
|
||||
IItemDefinition emptyStorageCell();
|
||||
IItemDefinition emptyStorageCell();
|
||||
|
||||
IItemDefinition cardRedstone();
|
||||
IItemDefinition cardRedstone();
|
||||
|
||||
IItemDefinition cardSpeed();
|
||||
IItemDefinition cardSpeed();
|
||||
|
||||
IItemDefinition cardCapacity();
|
||||
IItemDefinition cardCapacity();
|
||||
|
||||
IItemDefinition cardFuzzy();
|
||||
IItemDefinition cardFuzzy();
|
||||
|
||||
IItemDefinition cardInverter();
|
||||
IItemDefinition cardInverter();
|
||||
|
||||
IItemDefinition cardCrafting();
|
||||
IItemDefinition cardCrafting();
|
||||
|
||||
IItemDefinition enderDust();
|
||||
IItemDefinition enderDust();
|
||||
|
||||
IItemDefinition flour();
|
||||
IItemDefinition flour();
|
||||
|
||||
IItemDefinition goldDust();
|
||||
IItemDefinition goldDust();
|
||||
|
||||
IItemDefinition ironDust();
|
||||
IItemDefinition ironDust();
|
||||
|
||||
IItemDefinition fluixDust();
|
||||
IItemDefinition fluixDust();
|
||||
|
||||
IItemDefinition certusQuartzDust();
|
||||
IItemDefinition certusQuartzDust();
|
||||
|
||||
IItemDefinition netherQuartzDust();
|
||||
IItemDefinition netherQuartzDust();
|
||||
|
||||
IItemDefinition matterBall();
|
||||
IItemDefinition matterBall();
|
||||
|
||||
IItemDefinition certusQuartzCrystal();
|
||||
IItemDefinition certusQuartzCrystal();
|
||||
|
||||
IItemDefinition certusQuartzCrystalCharged();
|
||||
IItemDefinition certusQuartzCrystalCharged();
|
||||
|
||||
IItemDefinition fluixCrystal();
|
||||
IItemDefinition fluixCrystal();
|
||||
|
||||
IItemDefinition fluixPearl();
|
||||
IItemDefinition fluixPearl();
|
||||
|
||||
IItemDefinition woodenGear();
|
||||
IItemDefinition woodenGear();
|
||||
|
||||
IItemDefinition wirelessReceiver();
|
||||
IItemDefinition wirelessReceiver();
|
||||
|
||||
IItemDefinition wirelessBooster();
|
||||
IItemDefinition wirelessBooster();
|
||||
|
||||
IItemDefinition annihilationCore();
|
||||
IItemDefinition annihilationCore();
|
||||
|
||||
IItemDefinition formationCore();
|
||||
IItemDefinition formationCore();
|
||||
|
||||
IItemDefinition singularity();
|
||||
IItemDefinition singularity();
|
||||
|
||||
IItemDefinition qESingularity();
|
||||
IItemDefinition qESingularity();
|
||||
|
||||
IItemDefinition blankPattern();
|
||||
IItemDefinition blankPattern();
|
||||
|
||||
IItemDefinition fluidCell1kPart();
|
||||
IItemDefinition fluidCell1kPart();
|
||||
|
||||
IItemDefinition fluidCell4kPart();
|
||||
IItemDefinition fluidCell4kPart();
|
||||
|
||||
IItemDefinition fluidCell16kPart();
|
||||
IItemDefinition fluidCell16kPart();
|
||||
|
||||
IItemDefinition fluidCell64kPart();
|
||||
IItemDefinition fluidCell64kPart();
|
||||
}
|
||||
|
||||
@@ -23,104 +23,87 @@
|
||||
|
||||
package appeng.api.definitions;
|
||||
|
||||
|
||||
import appeng.api.util.AEColoredItemDefinition;
|
||||
|
||||
|
||||
/**
|
||||
* A list of all parts in AE
|
||||
*/
|
||||
public interface IParts
|
||||
{
|
||||
AEColoredItemDefinition cableSmart();
|
||||
public interface IParts {
|
||||
AEColoredItemDefinition cableSmart();
|
||||
|
||||
AEColoredItemDefinition cableCovered();
|
||||
AEColoredItemDefinition cableCovered();
|
||||
|
||||
AEColoredItemDefinition cableGlass();
|
||||
AEColoredItemDefinition cableGlass();
|
||||
|
||||
AEColoredItemDefinition cableDenseCovered();
|
||||
AEColoredItemDefinition cableDenseCovered();
|
||||
|
||||
AEColoredItemDefinition cableDenseSmart();
|
||||
AEColoredItemDefinition cableDenseSmart();
|
||||
|
||||
AEColoredItemDefinition lumenCableSmart();
|
||||
IItemDefinition quartzFiber();
|
||||
|
||||
AEColoredItemDefinition lumenCableCovered();
|
||||
IItemDefinition toggleBus();
|
||||
|
||||
AEColoredItemDefinition lumenCableGlass();
|
||||
IItemDefinition invertedToggleBus();
|
||||
|
||||
AEColoredItemDefinition lumenDenseCableSmart();
|
||||
IItemDefinition storageBus();
|
||||
|
||||
IItemDefinition quartzFiber();
|
||||
IItemDefinition importBus();
|
||||
|
||||
IItemDefinition toggleBus();
|
||||
IItemDefinition exportBus();
|
||||
|
||||
IItemDefinition invertedToggleBus();
|
||||
IItemDefinition iface();
|
||||
|
||||
IItemDefinition storageBus();
|
||||
IItemDefinition fluidIface();
|
||||
|
||||
IItemDefinition importBus();
|
||||
IItemDefinition levelEmitter();
|
||||
|
||||
IItemDefinition exportBus();
|
||||
IItemDefinition annihilationPlane();
|
||||
|
||||
IItemDefinition iface();
|
||||
IItemDefinition identityAnnihilationPlane();
|
||||
|
||||
IItemDefinition fluidIface();
|
||||
IItemDefinition formationPlane();
|
||||
|
||||
IItemDefinition levelEmitter();
|
||||
IItemDefinition p2PTunnelME();
|
||||
|
||||
IItemDefinition annihilationPlane();
|
||||
IItemDefinition p2PTunnelRedstone();
|
||||
|
||||
IItemDefinition identityAnnihilationPlane();
|
||||
IItemDefinition p2PTunnelItems();
|
||||
|
||||
IItemDefinition formationPlane();
|
||||
IItemDefinition p2PTunnelFluids();
|
||||
|
||||
IItemDefinition p2PTunnelME();
|
||||
IItemDefinition p2PTunnelLight();
|
||||
|
||||
IItemDefinition p2PTunnelRedstone();
|
||||
IItemDefinition cableAnchor();
|
||||
|
||||
IItemDefinition p2PTunnelItems();
|
||||
IItemDefinition monitor();
|
||||
|
||||
IItemDefinition p2PTunnelFluids();
|
||||
IItemDefinition semiDarkMonitor();
|
||||
|
||||
IItemDefinition p2PTunnelEU();
|
||||
IItemDefinition darkMonitor();
|
||||
|
||||
IItemDefinition p2PTunnelFE();
|
||||
IItemDefinition interfaceTerminal();
|
||||
|
||||
IItemDefinition p2PTunnelLight();
|
||||
IItemDefinition patternTerminal();
|
||||
|
||||
// IItemDefinition p2PTunnelOpenComputers();
|
||||
IItemDefinition craftingTerminal();
|
||||
|
||||
IItemDefinition cableAnchor();
|
||||
IItemDefinition terminal();
|
||||
|
||||
IItemDefinition monitor();
|
||||
IItemDefinition storageMonitor();
|
||||
|
||||
IItemDefinition semiDarkMonitor();
|
||||
IItemDefinition conversionMonitor();
|
||||
|
||||
IItemDefinition darkMonitor();
|
||||
IItemDefinition fluidTerminal();
|
||||
|
||||
IItemDefinition interfaceTerminal();
|
||||
IItemDefinition fluidImportBus();
|
||||
|
||||
IItemDefinition patternTerminal();
|
||||
IItemDefinition fluidExportBus();
|
||||
|
||||
IItemDefinition craftingTerminal();
|
||||
IItemDefinition fluidStorageBus();
|
||||
|
||||
IItemDefinition terminal();
|
||||
IItemDefinition fluidLevelEmitter();
|
||||
|
||||
IItemDefinition storageMonitor();
|
||||
IItemDefinition fluidAnnihilationPlane();
|
||||
|
||||
IItemDefinition conversionMonitor();
|
||||
|
||||
IItemDefinition fluidTerminal();
|
||||
|
||||
IItemDefinition fluidImportBus();
|
||||
|
||||
IItemDefinition fluidExportBus();
|
||||
|
||||
IItemDefinition fluidStorageBus();
|
||||
|
||||
IItemDefinition fluidLevelEmitter();
|
||||
|
||||
IItemDefinition fluidAnnihilationPlane();
|
||||
|
||||
IItemDefinition fluidFormationnPlane();
|
||||
IItemDefinition fluidFormationnPlane();
|
||||
}
|
||||
|
||||
@@ -18,16 +18,13 @@
|
||||
|
||||
package appeng.api.definitions;
|
||||
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.block.entity.BlockEntity;
|
||||
|
||||
|
||||
public interface ITileDefinition extends IBlockDefinition
|
||||
{
|
||||
/**
|
||||
* @return the {@link TileEntity} Class if applicable.
|
||||
*/
|
||||
Optional<? extends Class<? extends TileEntity>> maybeEntity();
|
||||
public interface ITileDefinition extends IBlockDefinition {
|
||||
/**
|
||||
* @return the {@link BlockEntity} Class if applicable.
|
||||
*/
|
||||
Optional<? extends Class<? extends BlockEntity>> maybeEntity();
|
||||
}
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
package appeng.api.definitions;
|
||||
|
||||
import net.minecraft.util.Identifier;
|
||||
|
||||
// Private helper class to create AE2 resource locations
|
||||
final class IdHelper {
|
||||
|
||||
private IdHelper() {
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a ResourceLocation namespaced to AE2.
|
||||
*/
|
||||
static Identifier id(String id) {
|
||||
return new Identifier("appliedenergistics2", id);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -23,39 +23,36 @@
|
||||
|
||||
package appeng.api.events;
|
||||
|
||||
|
||||
import net.minecraftforge.fml.common.eventhandler.Event;
|
||||
import net.fabricmc.fabric.api.event.Event;
|
||||
import net.fabricmc.fabric.api.event.EventFactory;
|
||||
|
||||
import appeng.api.features.ILocatable;
|
||||
|
||||
|
||||
/**
|
||||
* Input Event:
|
||||
*
|
||||
* <p>
|
||||
* Used to Notify the Location Registry of objects, and their availability.
|
||||
*/
|
||||
public class LocatableEventAnnounce extends Event
|
||||
{
|
||||
public interface LocatableEventAnnounce {
|
||||
|
||||
public final ILocatable target;
|
||||
public final LocatableEvent change;
|
||||
Event<LocatableEventAnnounce> EVENT = EventFactory.createArrayBacked(LocatableEventAnnounce.class,
|
||||
listeners -> (ILocatable target, LocatableEvent change) -> {
|
||||
for (LocatableEventAnnounce listener : listeners) {
|
||||
listener.onLocatableAnnounce(target, change);
|
||||
}
|
||||
});
|
||||
|
||||
public LocatableEventAnnounce( final ILocatable o, final LocatableEvent ev )
|
||||
{
|
||||
this.target = o;
|
||||
this.change = ev;
|
||||
}
|
||||
void onLocatableAnnounce(final ILocatable target, final LocatableEvent change);
|
||||
|
||||
public enum LocatableEvent
|
||||
{
|
||||
/**
|
||||
* Adds the locatable to the registry
|
||||
*/
|
||||
REGISTER,
|
||||
enum LocatableEvent {
|
||||
/**
|
||||
* Adds the locatable to the registry
|
||||
*/
|
||||
REGISTER,
|
||||
|
||||
/**
|
||||
* Removes the locatable from the registry
|
||||
*/
|
||||
UNREGISTER
|
||||
}
|
||||
/**
|
||||
* Removes the locatable from the registry
|
||||
*/
|
||||
UNREGISTER
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
package appeng.api.events;
|
||||
|
||||
@FunctionalInterface
|
||||
public interface LocatableEventCallback {
|
||||
|
||||
void onLocatable(LocatableEventAnnounce.LocatableEvent evt);
|
||||
|
||||
}
|
||||
@@ -23,14 +23,11 @@
|
||||
|
||||
package appeng.api.exceptions;
|
||||
|
||||
public class AppEngException extends Exception {
|
||||
|
||||
public class AppEngException extends Exception
|
||||
{
|
||||
private static final long serialVersionUID = -9051434206368465494L;
|
||||
|
||||
private static final long serialVersionUID = -9051434206368465494L;
|
||||
|
||||
public AppEngException( final String t )
|
||||
{
|
||||
super( t );
|
||||
}
|
||||
public AppEngException(final String t) {
|
||||
super(t);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,13 +18,10 @@
|
||||
|
||||
package appeng.api.exceptions;
|
||||
|
||||
public class CoreInaccessibleException extends RuntimeException {
|
||||
private static final long serialVersionUID = -7434641554655517242L;
|
||||
|
||||
public class CoreInaccessibleException extends RuntimeException
|
||||
{
|
||||
private static final long serialVersionUID = -7434641554655517242L;
|
||||
|
||||
public CoreInaccessibleException( final String message )
|
||||
{
|
||||
super( message );
|
||||
}
|
||||
public CoreInaccessibleException(final String message) {
|
||||
super(message);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,34 +23,30 @@
|
||||
|
||||
package appeng.api.exceptions;
|
||||
|
||||
|
||||
import appeng.api.networking.IGridNode;
|
||||
|
||||
|
||||
/**
|
||||
* Exception occurred because of an already existing connection between the two {@link IGridNode}s
|
||||
*
|
||||
* Intended to signal an internal exception and not intended to be thrown by
|
||||
* any 3rd party module.
|
||||
* Exception occurred because of an already existing connection between the two
|
||||
* {@link IGridNode}s
|
||||
* <p>
|
||||
* Intended to signal an internal exception and not intended to be thrown by any
|
||||
* 3rd party module.
|
||||
*
|
||||
* @author yueh
|
||||
* @version rv3
|
||||
* @since rv3
|
||||
*/
|
||||
public class ExistingConnectionException extends FailedConnectionException
|
||||
{
|
||||
public class ExistingConnectionException extends FailedConnectionException {
|
||||
|
||||
private static final long serialVersionUID = 2975450379720353182L;
|
||||
private static final String DEFAULT_MESSAGE = "Connection between both nodes already exists.";
|
||||
private static final long serialVersionUID = 2975450379720353182L;
|
||||
private static final String DEFAULT_MESSAGE = "Connection between both nodes already exists.";
|
||||
|
||||
public ExistingConnectionException()
|
||||
{
|
||||
super( DEFAULT_MESSAGE );
|
||||
}
|
||||
public ExistingConnectionException() {
|
||||
super(DEFAULT_MESSAGE);
|
||||
}
|
||||
|
||||
public ExistingConnectionException( String message )
|
||||
{
|
||||
super( message );
|
||||
}
|
||||
public ExistingConnectionException(String message) {
|
||||
super(message);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -23,16 +23,14 @@
|
||||
|
||||
package appeng.api.exceptions;
|
||||
|
||||
|
||||
import appeng.api.networking.IGridNode;
|
||||
|
||||
|
||||
/**
|
||||
* Exception indicating a failed connection between two {@link IGridNode}s.
|
||||
*
|
||||
* Intended to signal an internal exception and not intended to be thrown by
|
||||
* any 3rd party module.
|
||||
*
|
||||
* <p>
|
||||
* Intended to signal an internal exception and not intended to be thrown by any
|
||||
* 3rd party module.
|
||||
* <p>
|
||||
* See any subclass for a more specific reason.
|
||||
*
|
||||
* @author AlgorithmX2
|
||||
@@ -40,17 +38,14 @@ import appeng.api.networking.IGridNode;
|
||||
* @version rv3
|
||||
* @since rv0
|
||||
*/
|
||||
public class FailedConnectionException extends Exception
|
||||
{
|
||||
public class FailedConnectionException extends Exception {
|
||||
|
||||
private static final long serialVersionUID = -2544208090248293753L;
|
||||
private static final long serialVersionUID = -2544208090248293753L;
|
||||
|
||||
public FailedConnectionException()
|
||||
{
|
||||
}
|
||||
public FailedConnectionException() {
|
||||
}
|
||||
|
||||
public FailedConnectionException( String message )
|
||||
{
|
||||
super( message );
|
||||
}
|
||||
public FailedConnectionException(String message) {
|
||||
super(message);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,13 +18,10 @@
|
||||
|
||||
package appeng.api.exceptions;
|
||||
|
||||
public class MissingDefinitionException extends RuntimeException {
|
||||
private static final long serialVersionUID = -6547396584255825761L;
|
||||
|
||||
public class MissingDefinitionException extends RuntimeException
|
||||
{
|
||||
private static final long serialVersionUID = -6547396584255825761L;
|
||||
|
||||
public MissingDefinitionException( final String message )
|
||||
{
|
||||
super( message );
|
||||
}
|
||||
public MissingDefinitionException(final String message) {
|
||||
super(message);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,14 +23,11 @@
|
||||
|
||||
package appeng.api.exceptions;
|
||||
|
||||
public class MissingIngredientException extends Exception {
|
||||
|
||||
public class MissingIngredientException extends Exception
|
||||
{
|
||||
private static final long serialVersionUID = -998858343831371697L;
|
||||
|
||||
private static final long serialVersionUID = -998858343831371697L;
|
||||
|
||||
public MissingIngredientException( final String n )
|
||||
{
|
||||
super( n );
|
||||
}
|
||||
public MissingIngredientException(final String n) {
|
||||
super(n);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,14 +23,11 @@
|
||||
|
||||
package appeng.api.exceptions;
|
||||
|
||||
public class ModNotInstalledException extends Exception {
|
||||
|
||||
public class ModNotInstalledException extends Exception
|
||||
{
|
||||
private static final long serialVersionUID = -9052435206368425494L;
|
||||
|
||||
private static final long serialVersionUID = -9052435206368425494L;
|
||||
|
||||
public ModNotInstalledException( final String t )
|
||||
{
|
||||
super( t );
|
||||
}
|
||||
public ModNotInstalledException(final String t) {
|
||||
super(t);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,31 +23,27 @@
|
||||
|
||||
package appeng.api.exceptions;
|
||||
|
||||
|
||||
/**
|
||||
* Exception due to trying to connect one or more null values.
|
||||
*
|
||||
* Intended to signal an internal exception and not intended to be thrown by
|
||||
* any 3rd party module.
|
||||
* <p>
|
||||
* Intended to signal an internal exception and not intended to be thrown by any
|
||||
* 3rd party module.
|
||||
*
|
||||
* @author yueh
|
||||
* @version rv3
|
||||
* @since rv3
|
||||
*/
|
||||
public class NullNodeConnectionException extends FailedConnectionException
|
||||
{
|
||||
public class NullNodeConnectionException extends FailedConnectionException {
|
||||
|
||||
private static final long serialVersionUID = -2143719383495321764L;
|
||||
private static final String DEFAULT_MESSAGE = "Connection forged between null entities.";
|
||||
private static final long serialVersionUID = -2143719383495321764L;
|
||||
private static final String DEFAULT_MESSAGE = "Connection forged between null entities.";
|
||||
|
||||
public NullNodeConnectionException()
|
||||
{
|
||||
super( DEFAULT_MESSAGE );
|
||||
}
|
||||
public NullNodeConnectionException() {
|
||||
super(DEFAULT_MESSAGE);
|
||||
}
|
||||
|
||||
public NullNodeConnectionException( String message )
|
||||
{
|
||||
super( message );
|
||||
}
|
||||
public NullNodeConnectionException(String message) {
|
||||
super(message);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -23,14 +23,11 @@
|
||||
|
||||
package appeng.api.exceptions;
|
||||
|
||||
public class RecipeException extends Exception {
|
||||
|
||||
public class RecipeException extends Exception
|
||||
{
|
||||
private static final long serialVersionUID = -6602870588617670262L;
|
||||
|
||||
private static final long serialVersionUID = -6602870588617670262L;
|
||||
|
||||
public RecipeException( final String n )
|
||||
{
|
||||
super( n );
|
||||
}
|
||||
public RecipeException(final String n) {
|
||||
super(n);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,14 +23,11 @@
|
||||
|
||||
package appeng.api.exceptions;
|
||||
|
||||
public class RegistrationException extends Exception {
|
||||
|
||||
public class RegistrationException extends Exception
|
||||
{
|
||||
private static final long serialVersionUID = -6602870588617670263L;
|
||||
|
||||
private static final long serialVersionUID = -6602870588617670263L;
|
||||
|
||||
public RegistrationException( final String n )
|
||||
{
|
||||
super( n );
|
||||
}
|
||||
public RegistrationException(final String n) {
|
||||
super(n);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,30 +23,26 @@
|
||||
|
||||
package appeng.api.exceptions;
|
||||
|
||||
|
||||
/**
|
||||
* Exception due to trying to connect different security realms.
|
||||
*
|
||||
* Intended to signal an internal exception and not intended to be thrown by
|
||||
* any 3rd party module.
|
||||
* <p>
|
||||
* Intended to signal an internal exception and not intended to be thrown by any
|
||||
* 3rd party module.
|
||||
*
|
||||
* @author yueh
|
||||
* @version rv3
|
||||
* @since rv3
|
||||
*/
|
||||
public class SecurityConnectionException extends FailedConnectionException
|
||||
{
|
||||
private static final long serialVersionUID = 5048714900434215426L;
|
||||
private static final String DEFAULT_MESSAGE = "Connection failed due to different security realms.";
|
||||
public class SecurityConnectionException extends FailedConnectionException {
|
||||
private static final long serialVersionUID = 5048714900434215426L;
|
||||
private static final String DEFAULT_MESSAGE = "Connection failed due to different security realms.";
|
||||
|
||||
public SecurityConnectionException()
|
||||
{
|
||||
super( DEFAULT_MESSAGE );
|
||||
}
|
||||
public SecurityConnectionException() {
|
||||
super(DEFAULT_MESSAGE);
|
||||
}
|
||||
|
||||
public SecurityConnectionException( String message )
|
||||
{
|
||||
super( message );
|
||||
}
|
||||
public SecurityConnectionException(String message) {
|
||||
super(message);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,439 @@
|
||||
/*
|
||||
* This file is part of Applied Energistics 2.
|
||||
* Copyright (c) 2013 - 2018, AlgorithmX2, All rights reserved.
|
||||
*
|
||||
* Applied Energistics 2 is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Lesser General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* Applied Energistics 2 is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with Applied Energistics 2. If not, see <http://www.gnu.org/licenses/lgpl>.
|
||||
*/
|
||||
|
||||
package appeng.api.features;
|
||||
|
||||
public enum AEFeature {
|
||||
// stuff that has no reason for ever being turned off, or that
|
||||
// is just flat out required by tons of
|
||||
// important stuff.
|
||||
CORE("Core", null, false) {
|
||||
@Override
|
||||
public boolean isVisible() {
|
||||
return false;
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* Worldgen related
|
||||
*/
|
||||
CERTUS_QUARTZ_WORLD_GEN("CertusQuartzWorldGen", Constants.CATEGORY_WORLD, true),
|
||||
|
||||
METEORITE_WORLD_GEN("MeteoriteWorldGen", Constants.CATEGORY_WORLD, true),
|
||||
|
||||
DECORATIVE_LIGHTS("DecorativeLights", Constants.CATEGORY_WORLD, false),
|
||||
|
||||
DECORATIVE_BLOCKS("DecorativeBlocks", Constants.CATEGORY_WORLD, false,
|
||||
"Blocks that are not used in any essential recipes, also slabs and stairs."),
|
||||
|
||||
SKY_STONE_CHESTS("SkyStoneChests", Constants.CATEGORY_WORLD, false),
|
||||
|
||||
SPAWN_PRESSES_IN_METEORITES("SpawnPressesInMeteorites", Constants.CATEGORY_WORLD, true),
|
||||
|
||||
FLOUR("Flour", Constants.CATEGORY_WORLD, false), CHEST_LOOT("ChestLoot", Constants.CATEGORY_WORLD, false),
|
||||
|
||||
VILLAGER_TRADING("VillagerTrading", Constants.CATEGORY_WORLD, true),
|
||||
|
||||
TINY_TNT("TinyTNT", Constants.CATEGORY_WORLD, false),
|
||||
|
||||
CERTUS_ORE("CertusOre", Constants.CATEGORY_WORLD, false),
|
||||
|
||||
CHARGED_CERTUS_ORE("ChargedCertusOre", Constants.CATEGORY_WORLD, false),
|
||||
|
||||
/**
|
||||
* Machines
|
||||
*/
|
||||
GRIND_STONE("GrindStone", Constants.CATEGORY_MACHINES, false),
|
||||
|
||||
INSCRIBER("Inscriber", Constants.CATEGORY_MACHINES, false),
|
||||
|
||||
CHARGER("Charger", Constants.CATEGORY_MACHINES, false),
|
||||
|
||||
CRYSTAL_GROWTH_ACCELERATOR("CrystalGrowthAccelerator", Constants.CATEGORY_MACHINES, false),
|
||||
|
||||
POWER_GEN("VibrationChamber", Constants.CATEGORY_MACHINES, false),
|
||||
|
||||
/**
|
||||
* Tools
|
||||
*/
|
||||
POWERED_TOOLS("PoweredTools", Constants.CATEGORY_TOOLS_CLASSIFICATIONS, false),
|
||||
|
||||
CERTUS_QUARTZ_TOOLS("CertusQuartzTools", Constants.CATEGORY_TOOLS_CLASSIFICATIONS, false),
|
||||
|
||||
NETHER_QUARTZ_TOOLS("NetherQuartzTools", Constants.CATEGORY_TOOLS_CLASSIFICATIONS, false),
|
||||
|
||||
QUARTZ_HOE("QuartzHoe", Constants.CATEGORY_TOOLS, false),
|
||||
|
||||
QUARTZ_SPADE("QuartzSpade", Constants.CATEGORY_TOOLS, false),
|
||||
|
||||
QUARTZ_SWORD("QuartzSword", Constants.CATEGORY_TOOLS, false),
|
||||
|
||||
QUARTZ_PICKAXE("QuartzPickaxe", Constants.CATEGORY_TOOLS, false),
|
||||
|
||||
QUARTZ_AXE("QuartzAxe", Constants.CATEGORY_TOOLS, false),
|
||||
|
||||
QUARTZ_KNIFE("QuartzKnife", Constants.CATEGORY_TOOLS, false),
|
||||
|
||||
QUARTZ_WRENCH("QuartzWrench", Constants.CATEGORY_TOOLS, false),
|
||||
|
||||
CHARGED_STAFF("ChargedStaff", Constants.CATEGORY_TOOLS, false),
|
||||
|
||||
ENTROPY_MANIPULATOR("EntropyManipulator", Constants.CATEGORY_TOOLS, false),
|
||||
|
||||
MATTER_CANNON("MatterCannon", Constants.CATEGORY_TOOLS, false),
|
||||
|
||||
WIRELESS_ACCESS_TERMINAL("WirelessAccessTerminal", Constants.CATEGORY_TOOLS, false),
|
||||
|
||||
COLOR_APPLICATOR("ColorApplicator", Constants.CATEGORY_TOOLS, false),
|
||||
|
||||
PAINT_BALLS("PaintBalls", Constants.CATEGORY_TOOLS, false),
|
||||
|
||||
METEORITE_COMPASS("MeteoriteCompass", Constants.CATEGORY_TOOLS, false),
|
||||
|
||||
LIGHT_DETECTOR("LightDetector", Constants.CATEGORY_MISC, false),
|
||||
|
||||
/**
|
||||
* Network
|
||||
*/
|
||||
SECURITY("Security", Constants.CATEGORY_NETWORK_FEATURES, false),
|
||||
|
||||
SPATIAL_IO("SpatialIO", Constants.CATEGORY_NETWORK_FEATURES, false),
|
||||
|
||||
QUANTUM_NETWORK_BRIDGE("QuantumNetworkBridge", Constants.CATEGORY_NETWORK_FEATURES, false),
|
||||
|
||||
CHANNELS("Channels", Constants.CATEGORY_NETWORK_FEATURES, false),
|
||||
|
||||
/**
|
||||
* Buses and parts
|
||||
*/
|
||||
INTERFACE("Interface", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
FLUID_INTERFACE("FluidInterface", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
LEVEL_EMITTER("LevelEmitter", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
FLUID_LEVEL_EMITTER("FluidLevelEmitter", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
FLUID_TERMINAL("FluidTerminal", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
CRAFTING_TERMINAL("CraftingTerminal", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
TERMINAL("Terminal", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
STORAGE_MONITOR("StorageMonitor", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
P2P_TUNNEL("P2PTunnel", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
FORMATION_PLANE("FormationPlane", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
FLUID_FORMATION_PLANE("FluidFormationPlane", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
ANNIHILATION_PLANE("AnnihilationPlane", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
IDENTITY_ANNIHILATION_PLANE("IdentityAnnihilationPlane", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
FLUID_ANNIHILATION_PLANE("FluidAnnihilationPlane", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
IMPORT_BUS("ImportBus", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
FLUID_IMPORT_BUS("FluidImportBus", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
EXPORT_BUS("ExportBus", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
FLUID_EXPORT_BUS("FluidExportBus", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
STORAGE_BUS("StorageBus", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
FLUID_STORAGE_BUS("FluidStorageBus", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
PART_CONVERSION_MONITOR("PartConversionMonitor", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
TOGGLE_BUS("ToggleBus", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
PANELS("Panels", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
QUARTZ_FIBER("QuartzFiber", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
CABLE_ANCHOR("CableAnchor", Constants.CATEGORY_NETWORK_BUSES, false),
|
||||
|
||||
/**
|
||||
* Portable cells
|
||||
*/
|
||||
PORTABLE_CELL("PortableCell", Constants.CATEGORY_PORTABLE_CELL, false),
|
||||
|
||||
/**
|
||||
* Storage
|
||||
*/
|
||||
STORAGE_CELLS("StorageCells", Constants.CATEGORY_STORAGE, false),
|
||||
|
||||
ME_CHEST("MEChest", Constants.CATEGORY_STORAGE, false),
|
||||
|
||||
ME_DRIVE("MEDrive", Constants.CATEGORY_STORAGE, false),
|
||||
|
||||
IO_PORT("IOPort", Constants.CATEGORY_STORAGE, false),
|
||||
|
||||
CONDENSER("Condenser", Constants.CATEGORY_STORAGE, false),
|
||||
|
||||
/**
|
||||
* Network tools
|
||||
*/
|
||||
NETWORK_TOOL("NetworkTool", Constants.CATEGORY_NETWORK_TOOL, false),
|
||||
|
||||
MEMORY_CARD("MemoryCard", Constants.CATEGORY_NETWORK_TOOL, false),
|
||||
|
||||
/**
|
||||
* Cables
|
||||
*/
|
||||
GLASS_CABLES("GlassCables", Constants.CATEGORY_CABLES, false),
|
||||
|
||||
COVERED_CABLES("CoveredCables", Constants.CATEGORY_CABLES, false),
|
||||
|
||||
SMART_CABLES("SmartCables", Constants.CATEGORY_CABLES, false),
|
||||
|
||||
DENSE_CABLES("DenseCables", Constants.CATEGORY_CABLES, false),
|
||||
|
||||
/**
|
||||
* Energy cells
|
||||
*/
|
||||
ENERGY_CELLS("EnergyCells", Constants.CATEGORY_ENERGY, false),
|
||||
|
||||
ENERGY_ACCEPTOR("EnergyAcceptor", Constants.CATEGORY_ENERGY, false),
|
||||
|
||||
DENSE_ENERGY_CELLS("DenseEnergyCells", Constants.CATEGORY_ENERGY, false),
|
||||
|
||||
/**
|
||||
* P2P Tunnels
|
||||
*/
|
||||
P2P_TUNNEL_ME("P2PTunnelME", Constants.CATEGORY_P2P_TUNNELS, false),
|
||||
|
||||
P2P_TUNNEL_ITEMS("P2PTunnelItems", Constants.CATEGORY_P2P_TUNNELS, false),
|
||||
|
||||
P2P_TUNNEL_REDSTONE("P2PTunnelRedstone", Constants.CATEGORY_P2P_TUNNELS, false),
|
||||
|
||||
P2P_TUNNEL_EU("P2PTunnelEU", Constants.CATEGORY_P2P_TUNNELS, false),
|
||||
|
||||
P2P_TUNNEL_FE("P2PTunnelFE", Constants.CATEGORY_P2P_TUNNELS, false),
|
||||
|
||||
P2P_TUNNEL_FLUIDS("P2PTunnelFluids", Constants.CATEGORY_P2P_TUNNELS, false),
|
||||
|
||||
P2P_TUNNEL_LIGHT("P2PTunnelLight", Constants.CATEGORY_P2P_TUNNELS, false),
|
||||
|
||||
P2P_TUNNEL_OPEN_COMPUTERS("P2PTunnelOpenComputers", Constants.CATEGORY_P2P_TUNNELS, false),
|
||||
|
||||
P2P_TUNNEL_PRESSURE("P2PTunnelPressure", Constants.CATEGORY_P2P_TUNNELS, false),
|
||||
|
||||
/**
|
||||
* Block damage by items or blocks
|
||||
*/
|
||||
MASS_CANNON_BLOCK_DAMAGE("MassCannonBlockDamage", Constants.CATEGORY_BLOCK_FEATURES, false),
|
||||
|
||||
TINY_TNT_BLOCK_DAMAGE("TinyTNTBlockDamage", Constants.CATEGORY_BLOCK_FEATURES, false),
|
||||
|
||||
/**
|
||||
* Facades
|
||||
*/
|
||||
FACADES("Facades", Constants.CATEGORY_FACADES, false),
|
||||
TILE_ENTITY_FACADES("TileEntityFacades", Constants.CATEGORY_FACADES, false, true,
|
||||
"Unsupported: Allows whitelisting TileEntity as facades. Could work, have render issues, or corrupt your world. USE AT YOUR OWN RISK."),
|
||||
|
||||
/**
|
||||
* Debug
|
||||
*/
|
||||
UNSUPPORTED_DEVELOPER_TOOLS("UnsupportedDeveloperTools", Constants.CATEGORY_MISC, false, true),
|
||||
|
||||
CREATIVE("Creative", Constants.CATEGORY_MISC, false),
|
||||
|
||||
GRINDER_LOGGING("GrinderLogging", Constants.CATEGORY_MISC, false, false),
|
||||
|
||||
LOGGING("Logging", Constants.CATEGORY_MISC, false),
|
||||
|
||||
INTEGRATION_LOGGING("IntegrationLogging", Constants.CATEGORY_MISC, false, true),
|
||||
|
||||
WEBSITE_RECIPES("WebsiteRecipes", Constants.CATEGORY_MISC, false, true),
|
||||
|
||||
LOG_SECURITY_AUDITS("LogSecurityAudits", Constants.CATEGORY_MISC, false, true),
|
||||
|
||||
ACHIEVEMENTS("Achievements", Constants.CATEGORY_MISC, false),
|
||||
|
||||
UPDATE_LOGGING("UpdateLogging", Constants.CATEGORY_MISC, false, true),
|
||||
|
||||
PACKET_LOGGING("PacketLogging", Constants.CATEGORY_MISC, false, true),
|
||||
|
||||
CRAFTING_LOG("CraftingLog", Constants.CATEGORY_MISC, false, true),
|
||||
|
||||
DEBUG_LOGGING("DebugLogging", Constants.CATEGORY_MISC, false, true),
|
||||
|
||||
/**
|
||||
* Crafting
|
||||
*/
|
||||
ENABLE_FACADE_CRAFTING("EnableFacadeCrafting", Constants.CATEGORY_CRAFTING, true),
|
||||
|
||||
IN_WORLD_SINGULARITY("InWorldSingularity", Constants.CATEGORY_CRAFTING, true),
|
||||
|
||||
IN_WORLD_FLUIX("InWorldFluix", Constants.CATEGORY_CRAFTING, true),
|
||||
|
||||
IN_WORLD_PURIFICATION("InWorldPurification", Constants.CATEGORY_CRAFTING, true),
|
||||
|
||||
INTERFACE_TERMINAL("InterfaceTerminal", Constants.CATEGORY_CRAFTING, false),
|
||||
|
||||
ENABLE_DISASSEMBLY_CRAFTING("EnableDisassemblyCrafting", Constants.CATEGORY_CRAFTING, true),
|
||||
|
||||
/**
|
||||
* Rendering
|
||||
*/
|
||||
ALPHA_PASS("AlphaPass", Constants.CATEGORY_RENDERING, true),
|
||||
|
||||
/**
|
||||
* Crafting machines
|
||||
*/
|
||||
MOLECULAR_ASSEMBLER("MolecularAssembler", Constants.CATEGORY_CRAFTING_FEATURES, false),
|
||||
|
||||
PATTERNS("Patterns", Constants.CATEGORY_CRAFTING_FEATURES, false),
|
||||
|
||||
CRAFTING_CPU("CraftingCPU", Constants.CATEGORY_CRAFTING_FEATURES, false),
|
||||
|
||||
/**
|
||||
* Upgrades
|
||||
*/
|
||||
BASIC_CARDS("BasicCards", Constants.CATEGORY_UPGRADES, false),
|
||||
|
||||
ADVANCED_CARDS("AdvancedCards", Constants.CATEGORY_UPGRADES, false),
|
||||
|
||||
VIEW_CELL("ViewCell", Constants.CATEGORY_UPGRADES, false),
|
||||
|
||||
CRYSTAL_SEEDS("CrystalSeeds", Constants.CATEGORY_MATERIALS, false),
|
||||
|
||||
PURE_CRYSTALS("PureCrystals", Constants.CATEGORY_MATERIALS, false),
|
||||
|
||||
/**
|
||||
* Materials. Items mostly for crafting
|
||||
*/
|
||||
CERTUS("Certus", Constants.CATEGORY_MATERIALS, false),
|
||||
|
||||
FLUIX("Fluix", Constants.CATEGORY_MATERIALS, false),
|
||||
|
||||
SILICON("Silicon", Constants.CATEGORY_MATERIALS, false),
|
||||
|
||||
DUSTS("Dusts", Constants.CATEGORY_MATERIALS, false),
|
||||
|
||||
NUGGETS("Nuggets", Constants.CATEGORY_MATERIALS, false),
|
||||
|
||||
QUARTZ_GLASS("QuartzGlass", Constants.CATEGORY_MATERIALS, false),
|
||||
|
||||
SKY_STONE("SkyStone", Constants.CATEGORY_MATERIALS, false),
|
||||
|
||||
PROCESSORS("Processors", Constants.CATEGORY_COMPONENTS, false),
|
||||
|
||||
PRINTED_CIRCUITS("PrintedCircuits", Constants.CATEGORY_COMPONENTS, false),
|
||||
|
||||
PRESSES("Presses", Constants.CATEGORY_COMPONENTS, false),
|
||||
|
||||
MATTER_BALL("MatterBall", Constants.CATEGORY_COMPONENTS, false),
|
||||
|
||||
CORES("Cores", Constants.CATEGORY_COMPONENTS, false),
|
||||
|
||||
/**
|
||||
* Server commands
|
||||
*/
|
||||
CHUNK_LOGGER_TRACE("ChunkLoggerTrace", Constants.CATEGORY_COMMANDS, false, true);
|
||||
|
||||
private final String key;
|
||||
private final String category;
|
||||
private final boolean enabled;
|
||||
private final String comment;
|
||||
private final boolean config;
|
||||
|
||||
AEFeature(final String key, final String cat, boolean config) {
|
||||
this(key, cat, true, config);
|
||||
}
|
||||
|
||||
AEFeature(final String key, final String cat, boolean config, final String comment) {
|
||||
this(key, cat, true, config, comment);
|
||||
}
|
||||
|
||||
AEFeature(final String key, final String cat, final boolean enabled, boolean config) {
|
||||
this(key, cat, enabled, config, null);
|
||||
}
|
||||
|
||||
AEFeature(final String key, final String cat, final boolean enabled, boolean config, final String comment) {
|
||||
this.key = key;
|
||||
this.category = cat;
|
||||
this.enabled = enabled;
|
||||
this.comment = comment;
|
||||
this.config = config;
|
||||
}
|
||||
|
||||
/**
|
||||
* override to set visibility
|
||||
*
|
||||
* @return default true
|
||||
*/
|
||||
public boolean isVisible() {
|
||||
return true;
|
||||
}
|
||||
|
||||
public String key() {
|
||||
return this.key;
|
||||
}
|
||||
|
||||
public String category() {
|
||||
return this.category;
|
||||
}
|
||||
|
||||
public boolean isEnabled() {
|
||||
return this.enabled;
|
||||
}
|
||||
|
||||
/**
|
||||
* If exposed as config option.
|
||||
*/
|
||||
public boolean isConfig() {
|
||||
return config;
|
||||
}
|
||||
|
||||
public String comment() {
|
||||
return this.comment;
|
||||
}
|
||||
|
||||
private enum Constants {
|
||||
;
|
||||
|
||||
private static final String CATEGORY_MISC = "Misc";
|
||||
private static final String CATEGORY_CRAFTING = "Crafting";
|
||||
private static final String CATEGORY_WORLD = "World";
|
||||
private static final String CATEGORY_MACHINES = "Machines";
|
||||
private static final String CATEGORY_TOOLS = "Tools";
|
||||
private static final String CATEGORY_TOOLS_CLASSIFICATIONS = "ToolsClassifications";
|
||||
private static final String CATEGORY_NETWORK_BUSES = "NetworkBuses";
|
||||
private static final String CATEGORY_P2P_TUNNELS = "P2PTunnels";
|
||||
private static final String CATEGORY_BLOCK_FEATURES = "BlockFeatures";
|
||||
private static final String CATEGORY_CRAFTING_FEATURES = "CraftingFeatures";
|
||||
private static final String CATEGORY_STORAGE = "Storage";
|
||||
private static final String CATEGORY_CABLES = "Cables";
|
||||
private static final String CATEGORY_NETWORK_FEATURES = "NetworkFeatures";
|
||||
private static final String CATEGORY_COMMANDS = "Commands";
|
||||
private static final String CATEGORY_RENDERING = "Rendering";
|
||||
private static final String CATEGORY_FACADES = "Facades";
|
||||
private static final String CATEGORY_NETWORK_TOOL = "NetworkTool";
|
||||
private static final String CATEGORY_PORTABLE_CELL = "PortableCell";
|
||||
private static final String CATEGORY_ENERGY = "Energy";
|
||||
private static final String CATEGORY_UPGRADES = "Upgrades";
|
||||
private static final String CATEGORY_MATERIALS = "Materials";
|
||||
private static final String CATEGORY_COMPONENTS = "CraftingComponents";
|
||||
}
|
||||
}
|
||||
@@ -23,7 +23,6 @@
|
||||
|
||||
package appeng.api.features;
|
||||
|
||||
|
||||
import javax.annotation.Nonnegative;
|
||||
import javax.annotation.Nonnull;
|
||||
|
||||
@@ -31,54 +30,57 @@ import net.minecraft.item.Item;
|
||||
|
||||
import appeng.api.implementations.items.IAEItemPowerStorage;
|
||||
|
||||
|
||||
/**
|
||||
* A registry to allow mapping {@link Item}s to a specific charge rate when being placed inside a charger.
|
||||
*
|
||||
* The registry is used in favor of an additional method for {@link IAEItemPowerStorage} with a fixed value per item.
|
||||
* This allows more flexibility for other charger like machines to choose their own values when needed.
|
||||
*
|
||||
* There is no guarantee that this is charged per tick, it only represents the value per operation.
|
||||
* By default this is one charging operation every 10 ticks in case of an AE2 charger.
|
||||
*
|
||||
* A registry to allow mapping {@link Item}s to a specific charge rate when
|
||||
* being placed inside a charger.
|
||||
* <p>
|
||||
* The registry is used in favor of an additional method for
|
||||
* {@link IAEItemPowerStorage} with a fixed value per item. This allows more
|
||||
* flexibility for other charger like machines to choose their own values when
|
||||
* needed.
|
||||
* <p>
|
||||
* There is no guarantee that this is charged per tick, it only represents the
|
||||
* value per operation. By default this is one charging operation every 10 ticks
|
||||
* in case of an AE2 charger.
|
||||
*
|
||||
* @author yueh
|
||||
* @version rv5
|
||||
* @since rv5
|
||||
*/
|
||||
public interface IChargerRegistry
|
||||
{
|
||||
public interface IChargerRegistry {
|
||||
|
||||
/**
|
||||
* Fetch a charge rate for a specific item.
|
||||
*
|
||||
* The specific item does not need to have a mapping registered at all.
|
||||
* In this case it will use a default value of 160 AE.
|
||||
*
|
||||
* @param item A {@link Item} implementing {@link IAEItemPowerStorage}.
|
||||
* @return custom rate or default of 160
|
||||
*/
|
||||
@Nonnegative
|
||||
double getChargeRate( @Nonnull Item item );
|
||||
/**
|
||||
* Fetch a charge rate for a specific item.
|
||||
* <p>
|
||||
* The specific item does not need to have a mapping registered at all. In this
|
||||
* case it will use a default value of 160 AE.
|
||||
*
|
||||
* @param item A {@link Item} implementing {@link IAEItemPowerStorage}.
|
||||
* @return custom rate or default of 160
|
||||
*/
|
||||
@Nonnegative
|
||||
double getChargeRate(@Nonnull Item item);
|
||||
|
||||
/**
|
||||
* Register a custom charge rate for a specific item.
|
||||
*
|
||||
* Capped at 16000 to avoid extracting too much energy from a network for each operation.
|
||||
* This is done silently without any feedback or exception.
|
||||
* Further the cap is not fixed, it can change at any time in the future should power issues arise.
|
||||
*
|
||||
* @param item A {@link Item} implementing {@link IAEItemPowerStorage}.
|
||||
* @param chargeRate the custom rate, must be > 0, capped to 16000d
|
||||
*/
|
||||
void addChargeRate( @Nonnull Item item, @Nonnegative double chargeRate );
|
||||
/**
|
||||
* Register a custom charge rate for a specific item.
|
||||
* <p>
|
||||
* Capped at 16000 to avoid extracting too much energy from a network for each
|
||||
* operation. This is done silently without any feedback or exception. Further
|
||||
* the cap is not fixed, it can change at any time in the future should power
|
||||
* issues arise.
|
||||
*
|
||||
* @param item A {@link Item} implementing {@link IAEItemPowerStorage}.
|
||||
* @param chargeRate the custom rate, must be > 0, capped to 16000d
|
||||
*/
|
||||
void addChargeRate(@Nonnull Item item, @Nonnegative double chargeRate);
|
||||
|
||||
/**
|
||||
* Remove the custom rate for a specific item.
|
||||
*
|
||||
* It will revert to the default value afterwards.
|
||||
*
|
||||
* @param item A {@link Item} implementing {@link IAEItemPowerStorage}.
|
||||
*/
|
||||
void removeChargeRate( @Nonnull Item item );
|
||||
/**
|
||||
* Remove the custom rate for a specific item.
|
||||
* <p>
|
||||
* It will revert to the default value afterwards.
|
||||
*
|
||||
* @param item A {@link Item} implementing {@link IAEItemPowerStorage}.
|
||||
*/
|
||||
void removeChargeRate(@Nonnull Item item);
|
||||
|
||||
}
|
||||
|
||||
@@ -1,93 +0,0 @@
|
||||
/*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2013 AlgorithmX2
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
* this software and associated documentation files (the "Software"), to deal in
|
||||
* the Software without restriction, including without limitation the rights to
|
||||
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
* the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
* subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in all
|
||||
* copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
package appeng.api.features;
|
||||
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
|
||||
/**
|
||||
* Registration Records for {@link IGrinderRegistry}
|
||||
*/
|
||||
public interface IGrinderRecipe
|
||||
{
|
||||
|
||||
/**
|
||||
* the current input
|
||||
*
|
||||
* @return input that the grinder will accept.
|
||||
*/
|
||||
@Nonnull
|
||||
ItemStack getInput();
|
||||
|
||||
/**
|
||||
* gets the current output
|
||||
*
|
||||
* @return output that the grinder will produce
|
||||
*/
|
||||
@Nonnull
|
||||
ItemStack getOutput();
|
||||
|
||||
/**
|
||||
* gets the current output
|
||||
*
|
||||
* @return output that the grinder will produce
|
||||
*/
|
||||
@Nonnull
|
||||
Optional<ItemStack> getOptionalOutput();
|
||||
|
||||
/**
|
||||
* gets the current output
|
||||
*
|
||||
* @return output that the grinder will produce
|
||||
*/
|
||||
Optional<ItemStack> getSecondOptionalOutput();
|
||||
|
||||
/**
|
||||
* 0.0 - 1.0 the chance that the optional output will be generated.
|
||||
*
|
||||
* @return chance of optional output
|
||||
*/
|
||||
@Nonnull
|
||||
float getOptionalChance();
|
||||
|
||||
/**
|
||||
* 0.0 - 1.0 the chance that the optional output will be generated.
|
||||
*
|
||||
* @return second optional output chance
|
||||
*/
|
||||
float getSecondOptionalChance();
|
||||
|
||||
/**
|
||||
* Amount of turns required to process the item.
|
||||
*
|
||||
* @return number of turns it takes to produce the output from the input.
|
||||
*/
|
||||
int getRequiredTurns();
|
||||
|
||||
}
|
||||
@@ -1,115 +0,0 @@
|
||||
/*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2013 AlgorithmX2
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
* this software and associated documentation files (the "Software"), to deal in
|
||||
* the Software without restriction, including without limitation the rights to
|
||||
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
* the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
* subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in all
|
||||
* copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
package appeng.api.features;
|
||||
|
||||
|
||||
import javax.annotation.Nonnegative;
|
||||
import javax.annotation.Nonnull;
|
||||
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
|
||||
/**
|
||||
* Builder for a grinder recipe.
|
||||
*
|
||||
* The only default value provided are turns at a value of 8.
|
||||
*
|
||||
* @author yueh
|
||||
* @version rv5
|
||||
* @since rv5
|
||||
*/
|
||||
public interface IGrinderRecipeBuilder
|
||||
{
|
||||
|
||||
/**
|
||||
* Creates an grinder recipe with inputs.
|
||||
* Needs to be invoked.
|
||||
*
|
||||
* @param input new input for the recipe
|
||||
*
|
||||
* @return currently used builder
|
||||
*/
|
||||
@Nonnull
|
||||
IGrinderRecipeBuilder withInput( @Nonnull ItemStack input );
|
||||
|
||||
/**
|
||||
* Creates an grinder recipe with output.
|
||||
* Needs to be invoked.
|
||||
*
|
||||
* @param output new output for the recipe
|
||||
*
|
||||
* @return currently used builder
|
||||
*/
|
||||
@Nonnull
|
||||
IGrinderRecipeBuilder withOutput( @Nonnull ItemStack output );
|
||||
|
||||
/**
|
||||
* Creates an grinder recipe with the first optional output and its chance.
|
||||
*
|
||||
* @param optional new first optional for the recipe
|
||||
* @param chance chance for the first optional output, must be within 0.0 - 1.0
|
||||
*
|
||||
* @return currently used builder
|
||||
*/
|
||||
@Nonnull
|
||||
IGrinderRecipeBuilder withFirstOptional( @Nonnull ItemStack optional, float chance );
|
||||
|
||||
/**
|
||||
* Creates an grinder recipe with the second optional output and its chance.
|
||||
*
|
||||
* @param optional new second optional for the recipe
|
||||
* @param chance chance for the second optional output, must be within 0.0 - 1.0
|
||||
*
|
||||
* @return currently used builder
|
||||
*/
|
||||
@Nonnull
|
||||
IGrinderRecipeBuilder withSecondOptional( @Nonnull ItemStack optional, float chance );
|
||||
|
||||
/**
|
||||
* Creates an grinder recipe with the amount of turns as cost.
|
||||
*
|
||||
* Defaults to 8 when not called.
|
||||
*
|
||||
* @param turns new turns for the recipe, must be > 0
|
||||
*
|
||||
* @return currently used builder
|
||||
*/
|
||||
@Nonnull
|
||||
IGrinderRecipeBuilder withTurns( @Nonnegative int turns );
|
||||
|
||||
/**
|
||||
* Finalizes the process of making the recipe.
|
||||
* Needs to be invoked to fetch grinder recipe.
|
||||
*
|
||||
* @return valid grinder recipe
|
||||
*
|
||||
* @throws IllegalStateException when input is not defined
|
||||
* @throws IllegalStateException when input has no size
|
||||
* @throws IllegalStateException when output is not defined
|
||||
* @throws IllegalStateException when both optionals are not defined
|
||||
* @throws IllegalStateException when process type is not defined
|
||||
*/
|
||||
@Nonnull
|
||||
IGrinderRecipe build();
|
||||
}
|
||||
@@ -1,101 +0,0 @@
|
||||
/*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2013 AlgorithmX2
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
* this software and associated documentation files (the "Software"), to deal in
|
||||
* the Software without restriction, including without limitation the rights to
|
||||
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
* the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
* subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in all
|
||||
* copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
package appeng.api.features;
|
||||
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
|
||||
/**
|
||||
* Lets you manipulate Grinder Recipes, by adding or editing existing ones.
|
||||
*/
|
||||
public interface IGrinderRegistry
|
||||
{
|
||||
|
||||
/**
|
||||
* Extensible way to create a grinder recipe.
|
||||
*
|
||||
* @return builder for grinder recipes
|
||||
*/
|
||||
@Nonnull
|
||||
IGrinderRecipeBuilder builder();
|
||||
|
||||
/**
|
||||
* An immutable list of the currently registered recipes.
|
||||
*
|
||||
* @return currentlyRegisteredRecipes
|
||||
*/
|
||||
@Nonnull
|
||||
Collection<IGrinderRecipe> getRecipes();
|
||||
|
||||
/**
|
||||
* Add a new recipe to the registry.
|
||||
*/
|
||||
boolean addRecipe( IGrinderRecipe recipe );
|
||||
|
||||
/**
|
||||
* Remove the specific from the recipe list.
|
||||
*
|
||||
* @param recipe The recipe to be removed.
|
||||
* @return true, if it was removed
|
||||
*/
|
||||
boolean removeRecipe( @Nonnull IGrinderRecipe recipe );
|
||||
|
||||
/**
|
||||
* Searches for a recipe for a given input, and returns it.
|
||||
*
|
||||
* @param input The {@link ItemStack} to be grinded.
|
||||
*
|
||||
* @return identified recipe or null
|
||||
*/
|
||||
@Nullable
|
||||
IGrinderRecipe getRecipeForInput( @Nonnull ItemStack input );
|
||||
|
||||
/**
|
||||
* Allows do add a custom ratio from an ore to dust when being grinded.
|
||||
*
|
||||
* The default ratio is 1 ore to 2 dusts.
|
||||
*
|
||||
* These have to be added before any recipe is registered. Otherwise it will use the default value.
|
||||
*
|
||||
* @param oredictName The name of the ore;
|
||||
* @param ratio The amount, must be > 0;
|
||||
*/
|
||||
void addDustRatio( @Nonnull String oredictName, int ratio );
|
||||
|
||||
/**
|
||||
* Remove a custom ratio for a specific ore name.
|
||||
*
|
||||
* Will use the default of 2 value afterwards.
|
||||
*
|
||||
* @param oredictName The name of the ore;
|
||||
*/
|
||||
boolean removeDustRatio( @Nonnull String oredictName );
|
||||
|
||||
}
|
||||
@@ -1,83 +0,0 @@
|
||||
/*
|
||||
* This file is part of Applied Energistics 2.
|
||||
* Copyright (c) 2013 - 2014, AlgorithmX2, All rights reserved.
|
||||
*
|
||||
* Applied Energistics 2 is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Lesser General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* Applied Energistics 2 is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with Applied Energistics 2. If not, see <http://www.gnu.org/licenses/lgpl>.
|
||||
*/
|
||||
|
||||
package appeng.api.features;
|
||||
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
|
||||
/**
|
||||
* Registration Records for {@link IInscriberRegistry}
|
||||
*
|
||||
* You have to pay attention though, that recipes are not mirrored,
|
||||
* where the top and bottom slots are switching places.
|
||||
*
|
||||
* This is applied on runtime.
|
||||
*
|
||||
* @author thatsIch
|
||||
* @version rv2
|
||||
* @since rv2
|
||||
*/
|
||||
public interface IInscriberRecipe
|
||||
{
|
||||
/**
|
||||
* the current inputs
|
||||
*
|
||||
* @return inputs the inscriber will accept
|
||||
*/
|
||||
@Nonnull
|
||||
List<ItemStack> getInputs();
|
||||
|
||||
/**
|
||||
* gets the current output
|
||||
*
|
||||
* @return output that the recipe will produce
|
||||
*/
|
||||
@Nonnull
|
||||
ItemStack getOutput();
|
||||
|
||||
/**
|
||||
* gets the top optional
|
||||
*
|
||||
* @return item which is used top
|
||||
*/
|
||||
@Nonnull
|
||||
Optional<ItemStack> getTopOptional();
|
||||
|
||||
/**
|
||||
* gets the bottom optional
|
||||
*
|
||||
* @return item which is used bottom
|
||||
*/
|
||||
@Nonnull
|
||||
Optional<ItemStack> getBottomOptional();
|
||||
|
||||
/**
|
||||
* type of inscriber process
|
||||
*
|
||||
* @return type of process the inscriber is doing
|
||||
*/
|
||||
@Nonnull
|
||||
InscriberProcessType getProcessType();
|
||||
}
|
||||
@@ -1,107 +0,0 @@
|
||||
/*
|
||||
* This file is part of Applied Energistics 2.
|
||||
* Copyright (c) 2013 - 2014, AlgorithmX2, All rights reserved.
|
||||
*
|
||||
* Applied Energistics 2 is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Lesser General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* Applied Energistics 2 is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* along with Applied Energistics 2. If not, see <http://www.gnu.org/licenses/lgpl>.
|
||||
*/
|
||||
|
||||
package appeng.api.features;
|
||||
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
|
||||
/**
|
||||
* Builder for an inscriber recipe
|
||||
*
|
||||
* @author thatsIch
|
||||
* @version rv2
|
||||
* @since rv2
|
||||
*/
|
||||
public interface IInscriberRecipeBuilder
|
||||
{
|
||||
/**
|
||||
* Creates an inscriber recipe with inputs.
|
||||
* Needs to be invoked.
|
||||
*
|
||||
* @param inputs new inputs for the recipe
|
||||
*
|
||||
* @return currently used builder
|
||||
*/
|
||||
@Nonnull
|
||||
IInscriberRecipeBuilder withInputs( @Nonnull Collection<ItemStack> inputs );
|
||||
|
||||
/**
|
||||
* Creates an inscriber recipe with output.
|
||||
* Needs to be invoked.
|
||||
*
|
||||
* @param output new output for the recipe
|
||||
*
|
||||
* @return currently used builder
|
||||
*/
|
||||
@Nonnull
|
||||
IInscriberRecipeBuilder withOutput( @Nonnull ItemStack output );
|
||||
|
||||
/**
|
||||
* Creates an inscriber recipe with top.
|
||||
* Either this or bot needs to be invoked.
|
||||
*
|
||||
* @param topOptional new top for the recipe
|
||||
*
|
||||
* @return currently used builder
|
||||
*/
|
||||
@Nonnull
|
||||
IInscriberRecipeBuilder withTopOptional( @Nonnull ItemStack topOptional );
|
||||
|
||||
/**
|
||||
* Creates an inscriber recipe with bot.
|
||||
* Either this or top needs to be invoked.
|
||||
*
|
||||
* @param bottomOptional new bot for the recipe
|
||||
*
|
||||
* @return currently used builder
|
||||
*/
|
||||
@Nonnull
|
||||
IInscriberRecipeBuilder withBottomOptional( @Nonnull ItemStack bottomOptional );
|
||||
|
||||
/**
|
||||
* Creates an inscriber recipe with type.
|
||||
* Needs to be invoked.
|
||||
*
|
||||
* @param type new type for the recipe
|
||||
*
|
||||
* @return currently used builder
|
||||
*/
|
||||
@Nonnull
|
||||
IInscriberRecipeBuilder withProcessType( @Nonnull InscriberProcessType type );
|
||||
|
||||
/**
|
||||
* Finalizes the process of making the recipe.
|
||||
* Needs to be invoked to fetch inscriber recipe.
|
||||
*
|
||||
* @return legal inscriber recipe
|
||||
*
|
||||
* @throws IllegalStateException when input is not defined
|
||||
* @throws IllegalStateException when input has no size
|
||||
* @throws IllegalStateException when output is not defined
|
||||
* @throws IllegalStateException when both optionals are not defined
|
||||
* @throws IllegalStateException when process type is not defined
|
||||
*/
|
||||
@Nonnull
|
||||
IInscriberRecipe build();
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user