Compare commits
636 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| bd97a6edd5 | |||
| 6b90c70755 | |||
| 1832be3118 | |||
| a9c5019554 | |||
| 3c7d91b73e | |||
| ee0bfb9a3a | |||
| c23f11d8a1 | |||
| f598fb3cc4 | |||
| 6e6e51dc20 | |||
| 344958aefb | |||
| 623e9eea3c | |||
| 59544993bd | |||
| 0bbf898709 | |||
| bbf77dc65f | |||
| 3600c72709 | |||
| 2a206594cf | |||
| b977ee89ee | |||
| 057754c851 | |||
| 9235170bf1 | |||
| 7d3464abf9 | |||
| 23f8497dea | |||
| b175c71b84 | |||
| ab974828b0 | |||
| dafa0e85c9 | |||
| 581822b234 | |||
| 0dcdc2e265 | |||
| 31ce7882b8 | |||
| a1ae91af76 | |||
| 30a978b614 | |||
| 364872d75b | |||
| 0177f14051 | |||
| 83ac99da74 | |||
| 87cebc3e3f | |||
| 4b607d8fc8 | |||
| 5b4c3cfdc7 | |||
| ec4bc86266 | |||
| 5578aba8c8 | |||
| de3a4afac1 | |||
| a72c97e666 | |||
| 433d575fd4 | |||
| 6cdcd8ccc9 | |||
| d432a6eb89 | |||
| c333da8fa3 | |||
| 1786a3c069 | |||
| 35542207d8 | |||
| e5decb1325 | |||
| 41b8754130 | |||
| dacce3e7bd | |||
| c427fa04a7 | |||
| eac94ac6b7 | |||
| 4102f7b8f5 | |||
| efaf308a94 | |||
| b679079a5a | |||
| 8e7dadf7e9 | |||
| ea8c02b591 | |||
| 9c69352f9a | |||
| 877f87afe4 | |||
| c590e7f6e6 | |||
| 070b35f3db | |||
| 7c8ee24f8c | |||
| 7761a37d59 | |||
| 202dff3a96 | |||
| cfbc6b4543 | |||
| e82641760b | |||
| 2b1c11b0bb | |||
| 69e1c5433f | |||
| 55d66be929 | |||
| 5de15d5b2c | |||
| 3f6607028d | |||
| 6369cef465 | |||
| 8e7d63dccb | |||
| 0ed8a4c3e8 | |||
| d9885bd4a8 | |||
| 04ec9ba749 | |||
| 0b261aac24 | |||
| 8df692053a | |||
| b8344da734 | |||
| 04e4fd10a5 | |||
| 4cb7a9e6f4 | |||
| 2e2bb12671 | |||
| 9b51d54403 | |||
| ac0f32b21f | |||
| 0720d50f2f | |||
| 8ee6f58656 | |||
| 744ac69fb7 | |||
| de4acb6098 | |||
| 9eb093d865 | |||
| 03c3dfc3c8 | |||
| f0e3c6eae9 | |||
| 2e6f15655c | |||
| ce454e99be | |||
| 8087b58851 | |||
| ecc447ab2c | |||
| 21f4d5e6b6 | |||
| 5493757d25 | |||
| 6933173957 | |||
| 044a9f3b8e | |||
| af6310b13e | |||
| 2ab1fc0adf | |||
| 62f224d77b | |||
| 0a7df79952 | |||
| 8c8bd03c0b | |||
| e1237d6b46 | |||
| e3ab7488ff | |||
| a59cef87de | |||
| f316c93e38 | |||
| a22cc2cedc | |||
| 18ea568e2a | |||
| c19d9d49f9 | |||
| badf123946 | |||
| d4b85cde75 | |||
| fdee124875 | |||
| 0408aadabc | |||
| 895a1a18d8 | |||
| b4ab401f98 | |||
| 84ac312ba9 | |||
| 7cdbe431e5 | |||
| 1d0606947b | |||
| 754a1f1de3 | |||
| 882f240307 | |||
| 8666936646 | |||
| e1455df108 | |||
| fdd75ef3a8 | |||
| 928f623f7e | |||
| dde6e9b9d4 | |||
| 2de1842445 | |||
| 71396637e3 | |||
| 035dc244ff | |||
| 2e7efb3660 | |||
| 329d34f8e5 | |||
| 93145750c0 | |||
| 067da3fec0 | |||
| 7ae4cc86c7 | |||
| 860636d067 | |||
| f185bc07a6 | |||
| 2d1d29eb37 | |||
| 1102b89009 | |||
| 86e4da8a7b | |||
| a8c5e729d4 | |||
| d48e7e1f6d | |||
| 653ba814cc | |||
| 7584d00681 | |||
| dc88dda1f2 | |||
| 39a3f51d27 | |||
| 05f4f6ed92 | |||
| 9c561d550b | |||
| 11625ea240 | |||
| d79514e4a0 | |||
| 6a5add38e2 | |||
| 5b6ed0cfd0 | |||
| f35a951b09 | |||
| 99b73957c1 | |||
| 73b9e83b9f | |||
| 9246639709 | |||
| 3403e47b02 | |||
| 418e44390d | |||
| 1c93cc8f15 | |||
| 7e027da804 | |||
| 0b756708d4 | |||
| 5313d61490 | |||
| 77cb3d8b92 | |||
| 81984b3ad7 | |||
| 5465527ea0 | |||
| 974b910acc | |||
| 154f9d9ebb | |||
| cafacc8dd4 | |||
| 77dff3ab32 | |||
| f0ee7939a2 | |||
| cb9185fb3f | |||
| 63a311f601 | |||
| 730f5c5d6d | |||
| bff03d695b | |||
| 686832ebf8 | |||
| b42300a4da | |||
| fb04890a50 | |||
| 1246eb8bdf | |||
| b62d3ec139 | |||
| 0fe53a0d0e | |||
| 7c4e810c8d | |||
| 71a88aa668 | |||
| a5398240a0 | |||
| 0ab4309c52 | |||
| 9fe692c9bd | |||
| 96a9e2f558 | |||
| b28d468935 | |||
| 0316c1de58 | |||
| f3e10b1851 | |||
| 576923a2f2 | |||
| d1ccb126b6 | |||
| 210d5d2602 | |||
| c6b9926d7f | |||
| ea6c892ec0 | |||
| 5211bf4c98 | |||
| 85cf7d7981 | |||
| c0b0687fd3 | |||
| 0df62abebd | |||
| dbaa0a9310 | |||
| e1e649caf7 | |||
| d65263f319 | |||
| d831d1302f | |||
| e276aa682f | |||
| c2a239a12f | |||
| 6f2bbfab4c | |||
| 66df324ef0 | |||
| 999401c50c | |||
| 255083e00c | |||
| 86083712ad | |||
| d010fc9737 | |||
| 0e2183d234 | |||
| 3b7d1685c5 | |||
| d109878821 | |||
| 588b5d91cc | |||
| 0c4cb295f3 | |||
| d7f32a985d | |||
| 8b9743f2bf | |||
| c70915ffb0 | |||
| b31e5f5356 | |||
| 3d2ba425ec | |||
| 153b38b74c | |||
| 4abc60cf8e | |||
| 25a5108944 | |||
| 845d4da353 | |||
| 838691d924 | |||
| 115f73de2e | |||
| 026de7d590 | |||
| 785e40ce3e | |||
| 63f426336b | |||
| 24ddc0e574 | |||
| a422de6adb | |||
| 7f923d7f25 | |||
| 5a7d099413 | |||
| 53fd4de0cc | |||
| 8882c16cbf | |||
| f2cceda471 | |||
| 92b931434e | |||
| 8ddff3f459 | |||
| 2208083b03 | |||
| 3d1d2a3468 | |||
| 746bca8c40 | |||
| 6aeec56dc0 | |||
| d68a7d316c | |||
| dc7ddfe107 | |||
| 8c5d85d52a | |||
| 7a653675de | |||
| 4eccb1e770 | |||
| 524dc52dd6 | |||
| d64a63992c | |||
| 0809ac5625 | |||
| 63fb23d1b6 | |||
| 2e577edc3d | |||
| 9f96b86938 | |||
| e24d166f6a | |||
| 0be0635a8f | |||
| a2cad01c01 | |||
| d98f1e8dc3 | |||
| f1aab0f8ef | |||
| 571db6b48b | |||
| 4c4bdff55c | |||
| 03aa59521c | |||
| 92753a432a | |||
| 84cfd4c9fc | |||
| b7b5d2590c | |||
| 44c86849b8 | |||
| 8acee98b8f | |||
| 05aa6972c4 | |||
| 5498eb6d7c | |||
| d9725a7d9b | |||
| 2918a1110b | |||
| a4cf557b65 | |||
| a122f939e0 | |||
| 57771d3a81 | |||
| 69e41e283d | |||
| 98bded8653 | |||
| 0c61a316ed | |||
| f3374ba509 | |||
| ca21da1421 | |||
| aff3941729 | |||
| 8383715892 | |||
| 78a3cf90ee | |||
| 372d2a8386 | |||
| 169624f45e | |||
| 89a0f12dc4 | |||
| fdfc373181 | |||
| fdd16d8876 | |||
| cff5e7b388 | |||
| 62aa13751b | |||
| 927ecc015b | |||
| 977c9ea70f | |||
| b62ff9898f | |||
| 02ac8cf220 | |||
| 242c05266f | |||
| f84b9a7e1d | |||
| e08ab38c52 | |||
| 98234f9935 | |||
| 7134e851e4 | |||
| e5d6a40511 | |||
| ab689f2a48 | |||
| 68c3ea5ae9 | |||
| 72923cadb4 | |||
| 377c7a1c39 | |||
| 71afa9bf53 | |||
| 2e51ea5f78 | |||
| 4a486673f6 | |||
| a6ee559723 | |||
| 99215e1701 | |||
| 15664b2822 | |||
| c9e8a6e939 | |||
| e94a0cfccf | |||
| f054bd699b | |||
| 3a0eafce3c | |||
| daf2587140 | |||
| 18bf78b379 | |||
| f2d9a7312b | |||
| f9835e589a | |||
| 18d10e4cc4 | |||
| 9fd183900a | |||
| e922bf02d4 | |||
| faaff58fde | |||
| 2521f11a40 | |||
| 1e7126f98e | |||
| 888b3e5600 | |||
| 7dee5699cf | |||
| ebda927fb5 | |||
| efecd4b8c1 | |||
| 2f65d41cd1 | |||
| 8b3a954f73 | |||
| 059523f543 | |||
| dca09fe0a6 | |||
| 3a30ca7570 | |||
| 71223a9d58 | |||
| 2d71b0e34a | |||
| 430b33b7a3 | |||
| 9d35f65e76 | |||
| 209298bb4d | |||
| 3b495c35d7 | |||
| c96cf10c86 | |||
| 03073081f8 | |||
| 174818c6d8 | |||
| 97b7583ff2 | |||
| 73f928d57a | |||
| 0d25b76b77 | |||
| cdcba63c2d | |||
| ef6bc3e58f | |||
| 0ce551589e | |||
| f89f79d71c | |||
| 0d312f91af | |||
| 468cb4e9df | |||
| 6a2056562b | |||
| 84fa5a38e0 | |||
| 621952e37d | |||
| 20a6e7631f | |||
| 851878cf18 | |||
| 3a6001e18f | |||
| 29a55f914b | |||
| 8fc62faf30 | |||
| 465f9efbd5 | |||
| d26caa5f8b | |||
| b0504f4141 | |||
| 6488119318 | |||
| b0bb793a0e | |||
| 2a5d26b349 | |||
| 95b50748d2 | |||
| 67213462db | |||
| c5848fe323 | |||
| 373fa522be | |||
| 432724623e | |||
| 33e2eb5a74 | |||
| 37f51db0d9 | |||
| 0d6f80e813 | |||
| bcb4c0bc02 | |||
| c978bf90f8 | |||
| b013f3a8fa | |||
| e5ee4e0e61 | |||
| 5d34b4e182 | |||
| d866b6c167 | |||
| accfc1221f | |||
| ca97a7a5e3 | |||
| b39a51a870 | |||
| 8be68e9b22 | |||
| 59dbfb1452 | |||
| 8b921a7b79 | |||
| e21dab14e5 | |||
| 4e863e7d90 | |||
| 0e378d8ad4 | |||
| b20afd0ffa | |||
| 28c30c44c5 | |||
| cc78153fe4 | |||
| 94ac69ce37 | |||
| ed47a23156 | |||
| 07a4a8505b | |||
| 863b57fc3b | |||
| a62d9bfcbf | |||
| 51ed55510c | |||
| 97f23cf955 | |||
| 3b5b9b68ce | |||
| 13d40c922b | |||
| de260b5283 | |||
| efafaedf68 | |||
| d2563de6c3 | |||
| c3e11c6cca | |||
| 8861811c93 | |||
| e6eb58bcf5 | |||
| 03eec78d6f | |||
| 0cd25428e6 | |||
| 6d510d3912 | |||
| 41b8150ef4 | |||
| 20f72cae04 | |||
| a95b9962b9 | |||
| 38afde724b | |||
| 17465e68e8 | |||
| b0348fb888 | |||
| 7a731ec658 | |||
| 3a9296f453 | |||
| 4ac8a0add0 | |||
| 6e76690835 | |||
| 776d68bb03 | |||
| e2b870f1f1 | |||
| 4befdecd25 | |||
| 98fe4680c1 | |||
| 2d7917de14 | |||
| 6e881fac2d | |||
| 0076f2ea51 | |||
| 523548373d | |||
| 58bdeb134c | |||
| 2722057c81 | |||
| d6f29464c6 | |||
| 5105a2b1fb | |||
| c00962b044 | |||
| 858f73c439 | |||
| ade5e23458 | |||
| 61dfc05ae0 | |||
| 25fd03cb88 | |||
| e7fe8b60de | |||
| f16ae9c80b | |||
| ed1f327c57 | |||
| 4a19ea4c68 | |||
| 0ec1d728e5 | |||
| 57eb4c0a71 | |||
| ecf2f3fdaf | |||
| f3db010303 | |||
| 1a1316072a | |||
| 020740bf43 | |||
| 682c674696 | |||
| 7fa7502770 | |||
| 962c7c0a92 | |||
| 12e0efa3e1 | |||
| a349e1a277 | |||
| b72c766c16 | |||
| 72eab029ab | |||
| 3613c235be | |||
| 880ea762e5 | |||
| 83c9c0efcb | |||
| 733a53ec6d | |||
| 8c500c4016 | |||
| abdd6e1915 | |||
| 209333989e | |||
| 2803a671d1 | |||
| 1cf2e8d43e | |||
| e7746dc037 | |||
| 72195ea784 | |||
| f102c3b468 | |||
| f0215ca56a | |||
| 0f9ca7885a | |||
| 124d14d3c3 | |||
| f9e25b5a33 | |||
| 72d85aecc9 | |||
| 0bfb7b7ed3 | |||
| e82e8a039b | |||
| e626355aef | |||
| 192848e383 | |||
| 6339be5a06 | |||
| 4b5fd35056 | |||
| 1137b11550 | |||
| 6636718ef7 | |||
| e40f68d3fa | |||
| 96e79e9d9c | |||
| 3f5ed8ed7f | |||
| fdd44f4633 | |||
| 0085909914 | |||
| 5c301238cd | |||
| 30ba43e672 | |||
| afb9bb4379 | |||
| 3863e2c900 | |||
| b0249244cc | |||
| 77873e135f | |||
| 35997d58bb | |||
| 82efa151cc | |||
| 71569cadb5 | |||
| 1d737c3167 | |||
| 168038c595 | |||
| e99680d59b | |||
| 18503ac526 | |||
| 22f7345147 | |||
| b6b76d145b | |||
| 7c9b734948 | |||
| 16c0fbe3c1 | |||
| b8f22202d4 | |||
| 513292cd08 | |||
| d8ac614a17 | |||
| 8dd0991a7d | |||
| 5832e2d828 | |||
| c451a25c7f | |||
| 9d4fd64c58 | |||
| 42c7cca64f | |||
| 7f61ebebc8 | |||
| 7f14faeaa3 | |||
| f193c2adc4 | |||
| b748a1982f | |||
| a44369a272 | |||
| 25a3573a76 | |||
| 9845e2a463 | |||
| 3d5fd2c5e8 | |||
| dbacb566bb | |||
| 96576a7fc5 | |||
| 81464d7de1 | |||
| dd8e1d1faf | |||
| 00248f574a | |||
| e6e1771349 | |||
| 0a0a788c1c | |||
| 74c0fd92ae | |||
| 34665d94df | |||
| 7e681dc1d9 | |||
| c158519f37 | |||
| de069980ce | |||
| 1710894edc | |||
| 65d0ae9290 | |||
| 1baed48b0a | |||
| da6b31cdb1 | |||
| 013c8d882c | |||
| 503d325021 | |||
| 875214c166 | |||
| 2eec5309ac | |||
| a9ec31d72f | |||
| e392ecd08d | |||
| 03f9436ef9 | |||
| 8917a331eb | |||
| 8fbb317f6e | |||
| f15561c4dc | |||
| ee431b3269 | |||
| ba97dacfdd | |||
| ce6a2e8487 | |||
| 64ed05a1b4 | |||
| 23aa8fd72d | |||
| 332ea089e3 | |||
| 106003ebf9 | |||
| 8271597394 | |||
| 9210069d9b | |||
| f364359905 | |||
| fb618b939f | |||
| 43a47f8971 | |||
| e85acf2bee | |||
| bbde2443e1 | |||
| ad2f63ba0d | |||
| ee977720ca | |||
| ca953f4596 | |||
| 2adc055536 | |||
| 399934ac2b | |||
| 9451106c81 | |||
| 8e75de8fb9 | |||
| eca598516e | |||
| 2c5a54c210 | |||
| 1ac2ab0c10 | |||
| 199b17b9c6 | |||
| f582c8081b | |||
| 77d66b1817 | |||
| df370396b1 | |||
| ceeb84a439 | |||
| 9af6b50347 | |||
| d151313253 | |||
| 6d935cc8ae | |||
| 1396dbf600 | |||
| 8087a43df5 | |||
| c2cd395ca1 | |||
| a6e2975677 | |||
| 3783ae8619 | |||
| be17616836 | |||
| 36c72d641f | |||
| f878a7598d | |||
| 071ae6d680 | |||
| cc29230ce5 | |||
| b282e5d968 | |||
| 3410db7b45 | |||
| 800c30e91c | |||
| 817163dbf6 | |||
| d164e279ef | |||
| 4f9b8db6fc | |||
| b58c92ebb6 | |||
| 2667b8eac6 | |||
| 235fad439d | |||
| fcea444041 | |||
| 80f56d4359 | |||
| f14bfa7d53 | |||
| a7d55ee520 | |||
| 7382897e8e | |||
| aac2b598ea | |||
| 0f31cd43d2 | |||
| 788de6d432 | |||
| 04a6a683bc | |||
| 25e433f7bd | |||
| fbc44f47c8 | |||
| 06bca227d0 | |||
| 8321a5fe1c | |||
| 1bb8de3570 | |||
| 8666937117 | |||
| eaf57bedf6 | |||
| a30ef4679c | |||
| 0ee2ca72ac | |||
| 881bb919da | |||
| 5ecd68d5b6 | |||
| e2d0e5d424 | |||
| e3bf7d63c0 | |||
| 3fedcf273b | |||
| 8042dbb3db | |||
| e7e397c412 | |||
| ecc472a692 | |||
| 9790d9fd93 | |||
| f3f89344b4 | |||
| bac94b67b8 | |||
| ba1afcca38 | |||
| bb1c341c95 | |||
| 2ef04f1303 | |||
| 632d048ee2 | |||
| adea6b3dec | |||
| 5416ea2365 | |||
| a081a4f066 | |||
| b54676793e | |||
| d34c988c88 | |||
| 4ff1631f89 | |||
| dc6a325392 | |||
| 4f364a46df | |||
| c699ed44aa | |||
| 6bd4472229 | |||
| c9d67e40af | |||
| 9a7329598e | |||
| 278cfc076b | |||
| 2a89bdf52a |
@@ -11,20 +11,32 @@ top of things.
|
||||
|
||||
Applied Energistics 2 crashing, have a suggestion, found a bug? Create an issue now!
|
||||
|
||||
1. Make sure your issue hasn't already been answered or fixed. Also think about whether your issue is a valid one before submitting it.
|
||||
2. Go to [the issues page](https://github.com/AppliedEnergistics/Applied-Energistics-2/issues)
|
||||
3. Click new issue
|
||||
4. Enter your Issue's title (something that summarizes your issue), and then create a detailed description of the issue.
|
||||
* To help in resolving your issues please try to include the follow if applicable:
|
||||
* The problem that is happening?
|
||||
* What was expected?
|
||||
* How to reproduce the problem?
|
||||
* Server or Single Player?
|
||||
* Mod Pack using and version?
|
||||
* Crash log (Please make sure to use [pastebin](http://pastebin.com/) for the log file)
|
||||
* Screen shots or Pictures of the problem
|
||||
1. Make sure your issue has not already been answered or fixed and you are using the latest version. Also think about whether your issue is a valid one before submitting it.
|
||||
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]` or `[Bug]`. When it is applicable, we will take care of it.
|
||||
* The following details are required. Not including them can cause the issue to be closed.
|
||||
* Forge version
|
||||
* AE2 version
|
||||
* Crash log, when reporting a crash (Please make sure to use [pastebin](http://pastebin.com/))
|
||||
* Do not post an excerpt of what you consider important, instead:
|
||||
* 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
|
||||
5. 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.
|
||||
|
||||
### Submitting Changes
|
||||
|
||||
* Submit an issue to the github project, assuming one does not already exist.
|
||||
@@ -55,10 +67,8 @@ Applied Energistics 2 crashing, have a suggestion, found a bug? Create an issue
|
||||
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.
|
||||
* Describing the process you used to test your changes in detail will help speed
|
||||
up this process.
|
||||
* Always fully test your changes. If they are large engouh 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
|
||||
|
||||
@@ -97,6 +107,9 @@ 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, but in case you find them not formatting it correctly, then please report it
|
||||
|
||||
### Whitespace
|
||||
|
||||
#### Tabs or spaces
|
||||
@@ -0,0 +1,16 @@
|
||||
<!-- 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 -->
|
||||
|
||||
#### 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 -->
|
||||
|
||||
- Minecraft Version:
|
||||
- AE2 Version:
|
||||
- Forge Version:
|
||||
+7
-3
@@ -7,11 +7,12 @@
|
||||
!gradlew
|
||||
!gradlew.bat
|
||||
!build.gradle
|
||||
!build.properties
|
||||
!gradle.properties
|
||||
!.travis.yml
|
||||
|
||||
# include markdowns
|
||||
!README.md
|
||||
!License.md
|
||||
!LICENSE
|
||||
|
||||
# include sourcecode
|
||||
!src/
|
||||
@@ -21,4 +22,7 @@
|
||||
!.gitignore
|
||||
|
||||
# code format to reduce noise in git commits
|
||||
!codeformat/
|
||||
!codeformat/
|
||||
|
||||
# Github specific files and directories
|
||||
!.github/
|
||||
+20
@@ -0,0 +1,20 @@
|
||||
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/deobfedDeps/providedDummy.jar
|
||||
- rm -f $HOME/.gradle/caches/minecraft/deobfedDeps/compileDummy.jar
|
||||
cache:
|
||||
directories:
|
||||
- $HOME/.gradle/caches/
|
||||
- $HOME/.gradle/wrapper/
|
||||
|
||||
install: "./gradlew setupCIWorkspace"
|
||||
script: "./gradlew build test"
|
||||
@@ -1,3 +1,7 @@
|
||||
[](https://travis-ci.org/AppliedEnergistics/Applied-Energistics-2)
|
||||
[](https://github.com/AppliedEnergistics/Applied-Energistics-2/tags)
|
||||
[](https://github.com/AppliedEnergistics/Applied-Energistics-2/releases)
|
||||
|
||||
# Applied Energistics 2
|
||||
|
||||
## Table of Contents
|
||||
@@ -6,6 +10,7 @@
|
||||
* [Contacts](#contacts)
|
||||
* [License](#license)
|
||||
* [Downloads](#downloads)
|
||||
* [Nightly Builds](#nightly-builds)
|
||||
* [Installation](#installation)
|
||||
* [Issues](#issues)
|
||||
* [Building](#building)
|
||||
@@ -26,17 +31,30 @@ A Mod about Matter, Energy and using them to conquer the world..
|
||||
|
||||
## License
|
||||
|
||||
Applied Energistics 2 API is (c) 2013 - 2014 AlgorithmX2 and licensed under MIT.
|
||||
|
||||
Applied Energistics 2 is (c) 2013 - 2014 AlgorithmX2 and licensed under LGPL v3.
|
||||
See the LICENSE.txt for details or go to http://www.gnu.org/licenses/lgpl-3.0.txt for more information.
|
||||
|
||||
Textures and Models are licensed under [Creative Commons, Attribution-NonCommercial-ShareAlike 3.0]( https://creativecommons.org/licenses/by-nc-sa/3.0/).
|
||||
* Applied Energistics 2 API
|
||||
- (c) 2013 - 2015 AlgorithmX2 et al
|
||||
- [](http://opensource.org/licenses/MIT)
|
||||
* Applied Energistics 2
|
||||
- (c) 2013 - 2015 AlgorithmX2 et al
|
||||
- [](https://raw.githubusercontent.com/AppliedEnergistics/Applied-Energistics-2/rv2/LICENSE)
|
||||
* Textures and Models
|
||||
- (c) 2013 - 2015 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/).
|
||||
|
||||
## Nightly Builds
|
||||
|
||||
[](https://ci.appveyor.com/project/shartte/applied-energistics-2/history)
|
||||
|
||||
[Download Latest Nightly Build](https://ci.appveyor.com/api/projects/shartte/applied-energistics-2/artifacts/ae2-rv4-nightly.zip?branch=master)
|
||||
|
||||
Nightly builds for the Minecraft 1.10.2 branch of AE2 (rv4-alpha) are available from [AppVeyor](https://ci.appveyor.com/api/projects/shartte/applied-energistics-2/history). These builds are only for testing purposes and might lead to loss of data, and will contain significant bugs. Please see below on how you can report bugs you find during testing.
|
||||
|
||||
## Installation
|
||||
|
||||
You install this mod by putting it into the `minecraft/mods/` folder. It has no additional hard dependencies.
|
||||
@@ -45,20 +63,32 @@ You install this mod by putting it into the `minecraft/mods/` folder. It has no
|
||||
|
||||
Applied Energistics 2 crashing, have a suggestion, found a bug? Create an issue now!
|
||||
|
||||
1. Make sure your issue hasn't already been answered or fixed. Also think about whether your issue is a valid one before submitting it.
|
||||
2. Go to [the issues page](https://github.com/AppliedEnergistics/Applied-Energistics-2/issues)
|
||||
3. Click new issue
|
||||
4. Enter your Issue's title (something that summarizes your issue), and then create a detailed description of the issue.
|
||||
* To help in resolving your issues please try to include the follow if applicable:
|
||||
* The problem that is happening?
|
||||
* What was expected?
|
||||
* How to reproduce the problem?
|
||||
* Server or Single Player?
|
||||
* Mod Pack using and version?
|
||||
* Crash log (Please make sure to use [pastebin](http://pastebin.com/) for the log file)
|
||||
* Screen shots or Pictures of the problem
|
||||
1. Make sure your issue has not already been answered or fixed and you are using the latest version. Also think about whether your issue is a valid one before submitting it.
|
||||
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]` or `[Bug]`. When it is applicable, we will take care of it.
|
||||
* The following details are required. Not including them can cause the issue to be closed.
|
||||
* Forge version
|
||||
* AE2 version
|
||||
* Crash log, when reporting a crash (Please make sure to use [pastebin](http://pastebin.com/))
|
||||
* Do not post an excerpt of what you consider important, instead:
|
||||
* 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
|
||||
5. 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.
|
||||
|
||||
## Building
|
||||
|
||||
1. Clone this repository via
|
||||
@@ -70,7 +100,7 @@ Applied Energistics 2 crashing, have a suggestion, found a bug? Create an issue
|
||||
- CI server `gradlew setupCIWorkspace`
|
||||
3. Build `gradlew build`. Jar will be in `build/libs`
|
||||
4. For core developer: Setup IDE
|
||||
- IntelliJ: Import into IDE and execute `gradlew genIntellijRuns` afterwards
|
||||
- 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
|
||||
@@ -81,6 +111,8 @@ Applied Energistics 2 crashing, have a suggestion, found a bug? Create an issue
|
||||
Before you want to add major changes, you might want to discuss them with us first, before wasting your time.
|
||||
If you are still willing to contribute to this project, you can contribute via [Pull-Request](https://help.github.com/articles/creating-a-pull-request).
|
||||
|
||||
The [guidelines for contributing](https://github.com/AppliedEnergistics/Applied-Energistics-2/blob/master/CONTRIBUTING.md) contain more detailed information about topics like the used code style and should also be considered.
|
||||
|
||||
Here are a few things to keep in mind that will help get your PR approved.
|
||||
|
||||
* A PR should be focused on content. Any PRs where the changes are only syntax will be rejected.
|
||||
@@ -103,7 +135,7 @@ Getting Started
|
||||
6. Push to your fork `git push`
|
||||
7. Create a Pull-Request on GitHub
|
||||
8. Wait for review
|
||||
9. Suqash commits for cleaner history
|
||||
9. 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.
|
||||
|
||||
@@ -118,7 +150,7 @@ Development and standard builds can be obtained [Here](http://ae2.ae-mod.info/Do
|
||||
When compiling against the AE2 API you can use gradle dependencies, just add
|
||||
|
||||
dependencies {
|
||||
compile "appeng:appliedenergistics2:rv_-_____-__:dev"
|
||||
compile "appeng:appliedenergistics2:rv_-_____-__:dev"
|
||||
}
|
||||
|
||||
or add the compile line to your existing dependencies task to your build.gradle
|
||||
@@ -137,13 +169,17 @@ An example string would be `appeng:appliedenergistics2:rv2-alpha-30:dev`
|
||||
|
||||
Files must be encoded as UTF-8.
|
||||
|
||||
### License
|
||||
### New or updated Translations
|
||||
|
||||
All Text and Translations submitted here can be used for any purpose, and may be re-distributed or used without any limitations.
|
||||
The language files are located in `/src/main/resources/assets/appliedenergistics2/lang/` and use the [appropriate locale code](http://minecraft.gamepedia.com/Language) as name and `.lang` as extension.
|
||||
|
||||
### New Translations
|
||||
To update an translation edit the corresponding file and improve/correct the existing entry. Or copy any entries from `en_US.lang` for missing translation.
|
||||
|
||||
You can provide any additional languages by creating a new file with the [appropriate language code](http://download1.parallels.com/SiteBuilder/Windows/docs/3.2/en_US/sitebulder-3.2-win-sdk-localization-pack-creation-guide/30801.htm).
|
||||
To create a new translation, copy the contents of `en_US.lang`, create a new file with appropriate filename, and translate it to your language.
|
||||
|
||||
Please keep in mind that we use [String format](https://docs.oracle.com/javase/8/docs/api/java/util/Formatter.html) to pass additional data to the text for displaying.
|
||||
Therefore you should preserve parts like `%s` or `%1$d%%`, which allows us to replace them with the correct values while you still have the option to change their order for match the rules of grammar.
|
||||
This might not be possible for some languages. Should this be the case, please contact us.
|
||||
|
||||
### Final Note
|
||||
|
||||
|
||||
+48
-40
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* This file is part of Applied Energistics 2.
|
||||
* Copyright (c) 2013 - 2014, AlgorithmX2, All rights reserved.
|
||||
* Copyright (c) 2013 - 2015, 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
|
||||
@@ -16,56 +16,43 @@
|
||||
* along with Applied Energistics 2. If not, see <http://www.gnu.org/licenses/lgpl>.
|
||||
*/
|
||||
|
||||
apply plugin: 'forge'
|
||||
|
||||
apply from: 'gradle/scripts/propertyloader.gradle'
|
||||
apply from: 'gradle/scripts/dependencies.gradle'
|
||||
apply from: 'gradle/scripts/artifacts.gradle'
|
||||
apply from: 'gradle/scripts/autoinstallruntime.gradle'
|
||||
|
||||
buildscript {
|
||||
repositories {
|
||||
mavenLocal()
|
||||
jcenter()
|
||||
mavenCentral()
|
||||
|
||||
maven {
|
||||
name = "forge"
|
||||
url = "http://files.minecraftforge.net/maven"
|
||||
}
|
||||
|
||||
maven {
|
||||
name = "sonatype"
|
||||
url = "https://oss.sonatype.org/content/repositories/snapshots/"
|
||||
}
|
||||
}
|
||||
|
||||
dependencies {
|
||||
classpath 'net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT'
|
||||
classpath 'net.minecraftforge.gradle:ForgeGradle:2.2-SNAPSHOT'
|
||||
}
|
||||
}
|
||||
apply plugin: 'net.minecraftforge.gradle.forge'
|
||||
|
||||
configurations.all {
|
||||
resolutionStrategy.cacheDynamicVersionsFor 7200, 'hours'
|
||||
repositories {
|
||||
mavenLocal()
|
||||
jcenter()
|
||||
mavenCentral()
|
||||
}
|
||||
|
||||
sourceCompatibility = JavaVersion.VERSION_1_6
|
||||
targetCompatibility = JavaVersion.VERSION_1_6
|
||||
apply from: 'gradle/scripts/dependencies.gradle'
|
||||
apply from: 'gradle/scripts/artifacts.gradle'
|
||||
apply from: 'gradle/scripts/integration.gradle'
|
||||
apply from: 'gradle/scripts/optional.gradle'
|
||||
|
||||
version = config.version + "-" + config.aechannel + "-" + config.build
|
||||
group = config.group
|
||||
archivesBaseName = config.archivesBaseName
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
targetCompatibility = JavaVersion.VERSION_1_8
|
||||
|
||||
// If TeamCity is running this build, lets set the version info
|
||||
if (hasProperty("teamcity")) {
|
||||
version = teamcity["build.number"]
|
||||
|
||||
// Fix for main branch being built
|
||||
version = version.replaceAll("/", "-")
|
||||
}
|
||||
version = aeversion + "-" + aechannel + "-" + aebuild
|
||||
group = aegroup
|
||||
archivesBaseName = aebasename
|
||||
|
||||
// Add Coremod Manifest
|
||||
jar {
|
||||
manifest {
|
||||
attributes 'FMLCorePlugin': 'appeng.transformer.AppEngCore'
|
||||
attributes 'FMLCorePluginContainsFMLMod': 'true'
|
||||
}
|
||||
|
||||
@@ -77,14 +64,21 @@ jar {
|
||||
}
|
||||
|
||||
minecraft {
|
||||
version = config.minecraft_version + "-" + config.forge_version
|
||||
coreMod = "appeng.transformer.AppEngCore"
|
||||
|
||||
version = minecraft_version + "-" + forge_version
|
||||
|
||||
replaceIn "AEConfig.java"
|
||||
replaceIn "package-info.java"
|
||||
|
||||
replace "@version@", project.version
|
||||
replace "@aechannel@", config.aechannel
|
||||
replace "@aeversion@", aeversion
|
||||
replace "@aechannel@", aechannel
|
||||
replace "@aebuild@", aebuild
|
||||
|
||||
// used when launching minecraft in dev env
|
||||
runDir = "run"
|
||||
mappings = mcp_mappings
|
||||
}
|
||||
|
||||
sourceSets {
|
||||
@@ -96,20 +90,34 @@ sourceSets {
|
||||
|
||||
resources {
|
||||
srcDir "src/main/resources/"
|
||||
include "assets/appliedenergistics2/recipes/*.recipe",
|
||||
include "assets/appliedenergistics2/recipes/**/*.recipe",
|
||||
"assets/appliedenergistics2/recipes/README.html",
|
||||
"assets/appliedenergistics2/lang/*.lang",
|
||||
"assets/appliedenergistics2/textures/blocks/*",
|
||||
"assets/appliedenergistics2/textures/guis/*",
|
||||
"assets/appliedenergistics2/textures/models/*",
|
||||
"assets/appliedenergistics2/textures/items/*"
|
||||
"assets/appliedenergistics2/blockstates/**/*.json",
|
||||
"assets/appliedenergistics2/models/**/*.json",
|
||||
"assets/appliedenergistics2/textures/**/*.png",
|
||||
"assets/appliedenergistics2/textures/**/*.mcmeta",
|
||||
"assets/appliedenergistics2/meta/*",
|
||||
"mcmod.info",
|
||||
"pack.mcmeta"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
processResources {
|
||||
processResources
|
||||
{
|
||||
// this will ensure that this task is redone when the versions change.
|
||||
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': config.minecraft_version
|
||||
expand 'version': project.version, 'mcversion': project.minecraft.version
|
||||
}
|
||||
|
||||
// copy everything else, thats not the mcmod.info
|
||||
from(sourceSets.main.resources.srcDirs) {
|
||||
exclude 'mcmod.info'
|
||||
}
|
||||
}
|
||||
@@ -1,41 +0,0 @@
|
||||
version=rv2
|
||||
aechannel=beta
|
||||
build=0
|
||||
group=appeng
|
||||
archivesBaseName=appliedenergistics2
|
||||
|
||||
#########################################################
|
||||
# Versions #
|
||||
#########################################################
|
||||
minecraft_version=1.7.10
|
||||
forge_version=10.13.2.1291
|
||||
|
||||
#########################################################
|
||||
# APIs used for development #
|
||||
#########################################################
|
||||
cb_minecraft_version=1.7.10
|
||||
fmp_version=1.1.1.324
|
||||
code_chicken_lib_version=1.1.3.127
|
||||
code_chicken_core_version=1.0.4.35
|
||||
nei_version=1.0.4.90
|
||||
bc_version=6.4.3
|
||||
|
||||
#########################################################
|
||||
# API Stubs #
|
||||
# Note: Do not edit these version numbers as they are #
|
||||
# not the version of the mod, but stub code for AE2 to #
|
||||
# compile #
|
||||
#########################################################
|
||||
api_betterstorage_version=1
|
||||
api_coloredlightscore_version=1
|
||||
api_craftguide_version=1
|
||||
api_ic2_version=1
|
||||
api_immibis_version=1
|
||||
api_invtweaks_version=1
|
||||
api_mekansim_version=1.7.10-8.0.1.198
|
||||
api_mfr_version=1
|
||||
api_railcraft_version=1
|
||||
api_rblocks_version=1
|
||||
api_rf_version=2
|
||||
api_rotarycraft_version=V5c
|
||||
api_waila_version=1.5.10_1.7.10
|
||||
Binary file not shown.
@@ -1,10 +0,0 @@
|
||||
#Organize Import Order
|
||||
#Thu Oct 09 12:52:21 CEST 2014
|
||||
6=
|
||||
5=cpw
|
||||
4=net
|
||||
3=io
|
||||
2=org
|
||||
1=com
|
||||
0=java
|
||||
7=appeng
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<profiles version="12">
|
||||
<profile kind="CodeFormatterProfile" name="Algo" version="12">
|
||||
<profile kind="CodeFormatterProfile" name="AE2" version="12">
|
||||
<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"/>
|
||||
@@ -22,7 +22,7 @@
|
||||
<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="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"/>
|
||||
@@ -37,13 +37,13 @@
|
||||
<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.insert_space_before_parenthesized_expression_in_return" value="insert"/>
|
||||
<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="do not 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"/>
|
||||
@@ -72,14 +72,14 @@
|
||||
<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="true"/>
|
||||
<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="insert"/>
|
||||
<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.insert_space_after_comma_in_parameterized_type_reference" value="insert"/>
|
||||
@@ -96,7 +96,7 @@
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_lambda_body" value="end_of_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="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"/>
|
||||
@@ -106,7 +106,7 @@
|
||||
<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="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"/>
|
||||
@@ -122,13 +122,13 @@
|
||||
<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="do not 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="do not insert"/>
|
||||
<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"/>
|
||||
@@ -138,7 +138,7 @@
|
||||
<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.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"/>
|
||||
@@ -147,7 +147,7 @@
|
||||
<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="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"/>
|
||||
@@ -182,7 +182,7 @@
|
||||
<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="insert"/>
|
||||
<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.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"/>
|
||||
@@ -215,7 +215,7 @@
|
||||
<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="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"/>
|
||||
@@ -231,7 +231,7 @@
|
||||
<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="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"/>
|
||||
@@ -267,8 +267,8 @@
|
||||
<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="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_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.insert_space_after_opening_paren_in_while" value="insert"/>
|
||||
@@ -283,13 +283,13 @@
|
||||
<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="true"/>
|
||||
<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="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch" value="do not insert"/>
|
||||
</profile>
|
||||
</profiles>
|
||||
@@ -0,0 +1,11 @@
|
||||
#Organize Import Order
|
||||
#Sat Jun 13 15:22:41 CEST 2015
|
||||
8=appeng
|
||||
7=
|
||||
6=cpw
|
||||
5=net
|
||||
4=io
|
||||
3=org
|
||||
2=com
|
||||
1=javax
|
||||
0=java
|
||||
@@ -0,0 +1,24 @@
|
||||
aeversion=rv4
|
||||
aechannel=alpha
|
||||
aebuild=0
|
||||
aegroup=appeng
|
||||
aebasename=appliedenergistics2
|
||||
|
||||
#########################################################
|
||||
# Versions #
|
||||
#########################################################
|
||||
minecraft_version=1.10.2
|
||||
mcp_mappings=snapshot_20161018
|
||||
forge_version=12.18.2.2104
|
||||
|
||||
#########################################################
|
||||
# Installable #
|
||||
#########################################################
|
||||
waila_version=1.7.0-B3_1.9.4
|
||||
|
||||
#########################################################
|
||||
# Provided APIs #
|
||||
#########################################################
|
||||
jei_version=3.12.7.312
|
||||
tesla_version=1.10.2-1.2.1.49
|
||||
ic2_version=2.6.96-ex110
|
||||
@@ -1,29 +1,45 @@
|
||||
task myJavadocs(type: Javadoc) {
|
||||
/*
|
||||
* 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>.
|
||||
*/
|
||||
|
||||
// Suppresses warnings/errors when building javadocs
|
||||
allprojects {
|
||||
tasks.withType(Javadoc) {
|
||||
options.addStringOption('Xdoclint:none', '-quiet')
|
||||
}
|
||||
}
|
||||
|
||||
javadoc {
|
||||
options.encoding = 'UTF-8'
|
||||
options.charSet = 'UTF-8'
|
||||
}
|
||||
|
||||
task javadocs(type: Javadoc) {
|
||||
source = sourceSets.api.java
|
||||
include "appeng/api/**"
|
||||
|
||||
classpath = configurations.compile
|
||||
// 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
|
||||
}
|
||||
|
||||
task javadocJar(type: Jar, dependsOn: myJavadocs) {
|
||||
task javadocJar(type: Jar, dependsOn: javadocs) {
|
||||
from javadoc.destinationDir
|
||||
classifier = 'javadoc'
|
||||
from 'build/docs/javadoc/'
|
||||
}
|
||||
|
||||
task devJar(type: Jar) {
|
||||
|
||||
manifest {
|
||||
attributes 'FMLCorePlugin': 'appeng.transformer.AppEngCore'
|
||||
attributes 'FMLCorePluginContainsFMLMod': 'true'
|
||||
}
|
||||
|
||||
from(sourceSets.main.output) {
|
||||
include "appeng/**"
|
||||
include "assets/**"
|
||||
include 'mcmod.info'
|
||||
}
|
||||
|
||||
classifier = 'dev'
|
||||
}
|
||||
|
||||
task apiJar(type: Jar) {
|
||||
@@ -37,7 +53,7 @@ task apiJar(type: Jar) {
|
||||
}
|
||||
|
||||
artifacts {
|
||||
archives devJar
|
||||
archives apiJar
|
||||
archives javadocJar
|
||||
archives sourceJar
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
// searches for NEI and Chicken stuff from compile set
|
||||
// and adds them to the mods in run dir
|
||||
task copyChicken(type: Copy, dependsOn: "extractUserDev") {
|
||||
from { configurations.compile }
|
||||
include "**/*Chicken*.jar", "**/*NotEnoughItems*.jar"
|
||||
exclude "**/CodeChickenLib*" // because CCC downloads it anyways.. -_-
|
||||
into file(minecraft.runDir + "/mods")
|
||||
mustRunAfter "deobfBinJar"
|
||||
mustRunAfter "repackMinecraft"
|
||||
}
|
||||
tasks.setupDevWorkspace.dependsOn copyChicken
|
||||
tasks.setupDecompWorkspace.dependsOn copyChicken
|
||||
@@ -16,49 +16,48 @@
|
||||
* along with Applied Energistics 2. If not, see <http://www.gnu.org/licenses/lgpl>.
|
||||
*/
|
||||
|
||||
|
||||
|
||||
repositories {
|
||||
mavenLocal()
|
||||
|
||||
maven {
|
||||
name 'CB Maven FS'
|
||||
url "http://chickenbones.net/maven/"
|
||||
}
|
||||
|
||||
maven {
|
||||
name "Waila Mobius Repo"
|
||||
name "Mobius"
|
||||
url "http://mobiusstrip.eu/maven"
|
||||
}
|
||||
|
||||
maven {
|
||||
name "FireBall API Depot"
|
||||
url "http://dl.tsr.me/artifactory/libs-release-local"
|
||||
name = "JEI repo"
|
||||
url "http://dvs1.progwml6.com/files/maven"
|
||||
}
|
||||
|
||||
maven {
|
||||
name = "Tesla repo"
|
||||
url "http://maven.epoxide.xyz"
|
||||
}
|
||||
|
||||
maven {
|
||||
name = "IC2 repo"
|
||||
url = "http://maven.ic2.player.to"
|
||||
}
|
||||
}
|
||||
|
||||
dependencies {
|
||||
|
||||
compile "codechicken:ForgeMultipart:${config.cb_minecraft_version}-${config.fmp_version}:dev"
|
||||
compile "codechicken:CodeChickenLib:${config.cb_minecraft_version}-${config.code_chicken_lib_version}:dev"
|
||||
compile "codechicken:CodeChickenCore:${config.cb_minecraft_version}-${config.code_chicken_core_version}:dev"
|
||||
compile "codechicken:NotEnoughItems:${config.cb_minecraft_version}-${config.nei_version}:dev"
|
||||
|
||||
compile "com.mod-buildcraft:buildcraft:${config.bc_version}:dev"
|
||||
|
||||
// self compiled APIs
|
||||
compile(group: 'api', name: 'betterstorage', version: "${config.api_betterstorage_version}")
|
||||
compile(group: 'api', name: 'coloredlightscore', version: "${config.api_coloredlightscore_version}")
|
||||
compile(group: 'api', name: 'craftguide', version: "${config.api_craftguide_version}")
|
||||
compile(group: 'api', name: 'ic2', version: "${config.api_ic2_version}")
|
||||
compile(group: 'api', name: 'immibis', version: "${config.api_immibis_version}")
|
||||
compile(group: 'api', name: 'invtweaks', version: "${config.api_invtweaks_version}")
|
||||
compile(group: 'api', name: 'mfr', version: "${config.api_mfr_version}")
|
||||
compile(group: 'api', name: 'railcraft', version: "${config.api_railcraft_version}")
|
||||
compile(group: 'api', name: 'rblocks', version: "${config.api_rblocks_version}")
|
||||
compile(group: 'api', name: 'rf', version: "${config.api_rf_version}")
|
||||
compile "appeng:Waila:${config.api_waila_version}:api"
|
||||
compile "appeng:RotaryCraft:${config.api_rotarycraft_version}:api"
|
||||
compile "appeng:mekanism:${config.api_mekansim_version}:api"
|
||||
|
||||
testCompile "junit:junit:4.11"
|
||||
configurations {
|
||||
mods
|
||||
}
|
||||
|
||||
dependencies {
|
||||
// installable runtime dependencies
|
||||
mods "mcp.mobius.waila:Waila:${waila_version}"
|
||||
mods "net.industrial-craft:industrialcraft-2:${ic2_version}:dev"
|
||||
|
||||
// compile against provided APIs
|
||||
compileOnly "mezz.jei:jei_${minecraft_version}:${jei_version}:api"
|
||||
compileOnly "mcp.mobius.waila:Waila:${waila_version}"
|
||||
compileOnly "net.darkhax.tesla:Tesla:${tesla_version}"
|
||||
compileOnly "net.industrial-craft:industrialcraft-2:${ic2_version}:api"
|
||||
|
||||
// at runtime, use the full JEI jar
|
||||
runtime "mezz.jei:jei_${minecraft_version}:${jei_version}"
|
||||
|
||||
// unit test dependencies
|
||||
testCompile "junit:junit:4.12"
|
||||
}
|
||||
|
||||
+9
-14
@@ -16,19 +16,14 @@
|
||||
* along with Applied Energistics 2. If not, see <http://www.gnu.org/licenses/lgpl>.
|
||||
*/
|
||||
|
||||
package appeng.integration;
|
||||
// Should be provided by ForgeGradle, some idea user should confirm it.
|
||||
apply plugin: 'idea'
|
||||
|
||||
public abstract class BaseModule implements IIntegrationModule {
|
||||
idea {
|
||||
module {
|
||||
inheritOutputDirs = true
|
||||
|
||||
protected void testClassExistence( Class<?> clz )
|
||||
{
|
||||
clz.isInstance(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public abstract void init() throws Throwable;
|
||||
|
||||
@Override
|
||||
public abstract void postInit();
|
||||
|
||||
}
|
||||
// excludes integration due to not being available upon port
|
||||
excludeDirs += file('src/main/java/appeng/parts/layers/')
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
/*
|
||||
* 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"
|
||||
}
|
||||
|
||||
// WAILA
|
||||
task installWaila(type: Copy, dependsOn: "deinstallWaila") {
|
||||
from { configurations.mods }
|
||||
include "**/*Waila*.jar"
|
||||
into file(minecraft.runDir + "/mods")
|
||||
}
|
||||
|
||||
task deinstallWaila(type: Delete) {
|
||||
delete fileTree(dir: minecraft.runDir + "/mods", include: "*Waila*.jar")
|
||||
}
|
||||
|
||||
// IC²
|
||||
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")
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
// define the properties file
|
||||
ext.configFile = file "build.properties"
|
||||
|
||||
configFile.withReader {
|
||||
// read config. it shall from now on be referenced as simply config or as project.config
|
||||
def prop = new Properties()
|
||||
prop.load(it)
|
||||
project.ext.config = new ConfigSlurper().parse prop
|
||||
}
|
||||
Vendored
BIN
Binary file not shown.
+2
-2
@@ -1,6 +1,6 @@
|
||||
#Sat Sep 13 21:58:22 CEST 2014
|
||||
#Fri Sep 16 14:56:32 CEST 2016
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-2.1-all.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-2.14-bin.zip
|
||||
|
||||
@@ -6,12 +6,30 @@
|
||||
##
|
||||
##############################################################################
|
||||
|
||||
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||
DEFAULT_JVM_OPTS=""
|
||||
# Attempt to set APP_HOME
|
||||
# Resolve links: $0 may be a link
|
||||
PRG="$0"
|
||||
# Need this for relative symlinks.
|
||||
while [ -h "$PRG" ] ; do
|
||||
ls=`ls -ld "$PRG"`
|
||||
link=`expr "$ls" : '.*-> \(.*\)$'`
|
||||
if expr "$link" : '/.*' > /dev/null; then
|
||||
PRG="$link"
|
||||
else
|
||||
PRG=`dirname "$PRG"`"/$link"
|
||||
fi
|
||||
done
|
||||
SAVED="`pwd`"
|
||||
cd "`dirname \"$PRG\"`/" >/dev/null
|
||||
APP_HOME="`pwd -P`"
|
||||
cd "$SAVED" >/dev/null
|
||||
|
||||
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=""
|
||||
|
||||
# Use the maximum available, or set MAX_FD != -1 to use that value.
|
||||
MAX_FD="maximum"
|
||||
|
||||
@@ -30,6 +48,7 @@ die ( ) {
|
||||
cygwin=false
|
||||
msys=false
|
||||
darwin=false
|
||||
nonstop=false
|
||||
case "`uname`" in
|
||||
CYGWIN* )
|
||||
cygwin=true
|
||||
@@ -40,31 +59,11 @@ case "`uname`" in
|
||||
MINGW* )
|
||||
msys=true
|
||||
;;
|
||||
NONSTOP* )
|
||||
nonstop=true
|
||||
;;
|
||||
esac
|
||||
|
||||
# For Cygwin, ensure paths are in UNIX format before anything is touched.
|
||||
if $cygwin ; then
|
||||
[ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
|
||||
fi
|
||||
|
||||
# Attempt to set APP_HOME
|
||||
# Resolve links: $0 may be a link
|
||||
PRG="$0"
|
||||
# Need this for relative symlinks.
|
||||
while [ -h "$PRG" ] ; do
|
||||
ls=`ls -ld "$PRG"`
|
||||
link=`expr "$ls" : '.*-> \(.*\)$'`
|
||||
if expr "$link" : '/.*' > /dev/null; then
|
||||
PRG="$link"
|
||||
else
|
||||
PRG=`dirname "$PRG"`"/$link"
|
||||
fi
|
||||
done
|
||||
SAVED="`pwd`"
|
||||
cd "`dirname \"$PRG\"`/" >&-
|
||||
APP_HOME="`pwd -P`"
|
||||
cd "$SAVED" >&-
|
||||
|
||||
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
|
||||
|
||||
# Determine the Java command to use to start the JVM.
|
||||
@@ -90,7 +89,7 @@ location of your Java installation."
|
||||
fi
|
||||
|
||||
# Increase the maximum file descriptors if we can.
|
||||
if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
|
||||
if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
|
||||
MAX_FD_LIMIT=`ulimit -H -n`
|
||||
if [ $? -eq 0 ] ; then
|
||||
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
|
||||
@@ -114,6 +113,7 @@ fi
|
||||
if $cygwin ; then
|
||||
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
|
||||
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
|
||||
JAVACMD=`cygpath --unix "$JAVACMD"`
|
||||
|
||||
# We build the pattern for arguments to be converted via cygpath
|
||||
ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
|
||||
|
||||
Vendored
+4
-4
@@ -8,14 +8,14 @@
|
||||
@rem Set local scope for the variables with windows NT shell
|
||||
if "%OS%"=="Windows_NT" setlocal
|
||||
|
||||
@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 DIRNAME=%~dp0
|
||||
if "%DIRNAME%" == "" set DIRNAME=.
|
||||
set APP_BASE_NAME=%~n0
|
||||
set APP_HOME=%DIRNAME%
|
||||
|
||||
@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=
|
||||
|
||||
@rem Find java.exe
|
||||
if defined JAVA_HOME goto findJavaFromJavaHome
|
||||
|
||||
@@ -46,7 +46,7 @@ echo location of your Java installation.
|
||||
goto fail
|
||||
|
||||
:init
|
||||
@rem Get command-line arguments, handling Windowz variants
|
||||
@rem Get command-line arguments, handling Windows variants
|
||||
|
||||
if not "%OS%" == "Windows_NT" goto win9xME_args
|
||||
if "%@eval[2+2]" == "4" goto 4NT_args
|
||||
|
||||
@@ -51,17 +51,17 @@ public enum AEApi
|
||||
|
||||
HELD_API = (IAppEngApi) apiField.get( apiClass );
|
||||
}
|
||||
catch ( ClassNotFoundException e )
|
||||
catch( final ClassNotFoundException e )
|
||||
{
|
||||
throw new CoreInaccessibleException( "AE2 API tried to access the " + CORE_API_FQN + " class, without it being declared." );
|
||||
throw new CoreInaccessibleException( "AE2 API tried to access the " + CORE_API_FQN + " class, without it being declared." );
|
||||
}
|
||||
catch ( NoSuchFieldException e )
|
||||
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 ( IllegalAccessException e )
|
||||
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.");
|
||||
throw new CoreInaccessibleException( "AE2 API tried to access the " + CORE_API_FIELD + " field in " + CORE_API_FQN + " without enough access permissions." );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+12
-14
@@ -16,21 +16,19 @@
|
||||
* along with Applied Energistics 2. If not, see <http://www.gnu.org/licenses/lgpl>.
|
||||
*/
|
||||
|
||||
package appeng.block.stair;
|
||||
package appeng.api;
|
||||
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
|
||||
import appeng.block.AEBaseStairBlock;
|
||||
import appeng.core.features.AEFeature;
|
||||
import java.lang.annotation.ElementType;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.annotation.Target;
|
||||
|
||||
|
||||
public class QuartzPillarStairBlock extends AEBaseStairBlock
|
||||
{
|
||||
public QuartzPillarStairBlock( Block block )
|
||||
{
|
||||
super( block, 0, EnumSet.of( AEFeature.DecorativeQuartzBlocks ) );
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Marks interfaces that can be used as injectable constructor arguments for an {@link AEPlugin}.
|
||||
*/
|
||||
@Target( ElementType.TYPE )
|
||||
@Retention( RetentionPolicy.RUNTIME )
|
||||
public @interface AEInjectable
|
||||
{}
|
||||
@@ -0,0 +1,39 @@
|
||||
/*
|
||||
* 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
|
||||
{}
|
||||
@@ -24,11 +24,7 @@
|
||||
package appeng.api;
|
||||
|
||||
|
||||
import appeng.api.definitions.Blocks;
|
||||
import appeng.api.definitions.IDefinitions;
|
||||
import appeng.api.definitions.Items;
|
||||
import appeng.api.definitions.Materials;
|
||||
import appeng.api.definitions.Parts;
|
||||
import appeng.api.exceptions.FailedConnection;
|
||||
import appeng.api.features.IRegistryContainer;
|
||||
import appeng.api.networking.IGridBlock;
|
||||
@@ -37,10 +33,9 @@ import appeng.api.networking.IGridNode;
|
||||
import appeng.api.parts.IPartHelper;
|
||||
import appeng.api.storage.IStorageHelper;
|
||||
|
||||
|
||||
@AEInjectable
|
||||
public interface IAppEngApi
|
||||
{
|
||||
|
||||
/**
|
||||
* @return Registry Container for the numerous registries in AE2.
|
||||
*/
|
||||
@@ -56,38 +51,6 @@ public interface IAppEngApi
|
||||
*/
|
||||
IPartHelper partHelper();
|
||||
|
||||
/**
|
||||
* @return an accessible list of all of AE's Items
|
||||
*
|
||||
* @deprecated use {@link appeng.api.definitions.IDefinitions#items()}
|
||||
*/
|
||||
@Deprecated
|
||||
Items items();
|
||||
|
||||
/**
|
||||
* @return an accessible list of all of AE's materials; materials are items
|
||||
*
|
||||
* @deprecated use {@link appeng.api.definitions.IDefinitions#materials()}
|
||||
*/
|
||||
@Deprecated
|
||||
Materials materials();
|
||||
|
||||
/**
|
||||
* @return an accessible list of all of AE's blocks
|
||||
*
|
||||
* @deprecated use {@link appeng.api.definitions.IDefinitions#blocks()}
|
||||
*/
|
||||
@Deprecated
|
||||
Blocks blocks();
|
||||
|
||||
/**
|
||||
* @return an accessible list of all of AE's parts, parts are items
|
||||
*
|
||||
* @deprecated use {@link appeng.api.definitions.IDefinitions#parts()}
|
||||
*/
|
||||
@Deprecated
|
||||
Parts parts();
|
||||
|
||||
/**
|
||||
* @return an accessible list of all AE definitions
|
||||
*/
|
||||
|
||||
@@ -0,0 +1,64 @@
|
||||
/*
|
||||
* 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.client;
|
||||
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.google.common.collect.ImmutableList;
|
||||
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.client.renderer.block.model.IBakedModel;
|
||||
import net.minecraft.util.EnumFacing;
|
||||
|
||||
/**
|
||||
* TODO: Needs to be moved to an internal class. API is only allowed to contain interfaces and/or data.
|
||||
*
|
||||
* @deprecated
|
||||
*/
|
||||
@Deprecated
|
||||
public class BakingPipeline<F, T> implements BakingPipelineElement<F, T>
|
||||
{
|
||||
|
||||
private final ImmutableList<BakingPipelineElement<?, ?>> pipeline;
|
||||
|
||||
public BakingPipeline( BakingPipelineElement<?, ?>... pipeline )
|
||||
{
|
||||
this.pipeline = ImmutableList.copyOf( pipeline );
|
||||
}
|
||||
|
||||
/**
|
||||
* TODO: fix generics
|
||||
*/
|
||||
@Override
|
||||
public List pipe( List things, IBakedModel parent, IBlockState state, EnumFacing side, long rand )
|
||||
{
|
||||
for( BakingPipelineElement pipe : pipeline )
|
||||
{
|
||||
things = pipe.pipe( things, parent, state, side, rand );
|
||||
}
|
||||
return things;
|
||||
}
|
||||
|
||||
}
|
||||
+8
-9
@@ -21,20 +21,19 @@
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
package appeng.api.implementations.tiles;
|
||||
package appeng.api.client;
|
||||
|
||||
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
import java.util.List;
|
||||
|
||||
import appeng.api.networking.security.BaseActionSource;
|
||||
import appeng.api.storage.IStorageMonitorable;
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.client.renderer.block.model.IBakedModel;
|
||||
import net.minecraft.util.EnumFacing;
|
||||
|
||||
|
||||
/**
|
||||
* Implemented on inventories that can share their inventories with other networks, best example, ME Interface.
|
||||
*/
|
||||
public interface ITileStorageMonitorable
|
||||
public interface BakingPipelineElement<F, T>
|
||||
{
|
||||
|
||||
IStorageMonitorable getMonitorable( ForgeDirection side, BaseActionSource src );
|
||||
public List<T> pipe( List<F> elements, IBakedModel parent, IBlockState state, EnumFacing side, long rand );
|
||||
|
||||
}
|
||||
@@ -30,33 +30,24 @@ public enum AccessRestriction
|
||||
|
||||
private final int permissionBit;
|
||||
|
||||
AccessRestriction( int v ) {
|
||||
AccessRestriction( final int v )
|
||||
{
|
||||
this.permissionBit = v;
|
||||
}
|
||||
|
||||
public boolean hasPermission( AccessRestriction ar )
|
||||
public boolean hasPermission( final AccessRestriction ar )
|
||||
{
|
||||
return ( this.permissionBit & ar.permissionBit ) == ar.permissionBit;
|
||||
}
|
||||
|
||||
public AccessRestriction restrictPermissions( AccessRestriction ar )
|
||||
public AccessRestriction restrictPermissions( final AccessRestriction ar )
|
||||
{
|
||||
return this.getPermByBit( this.permissionBit & ar.permissionBit );
|
||||
}
|
||||
|
||||
public AccessRestriction addPermissions( AccessRestriction ar )
|
||||
private AccessRestriction getPermByBit( final int bit )
|
||||
{
|
||||
return this.getPermByBit( this.permissionBit | ar.permissionBit );
|
||||
}
|
||||
|
||||
public AccessRestriction removePermissions( AccessRestriction ar )
|
||||
{
|
||||
return this.getPermByBit( this.permissionBit & ( ~ar.permissionBit ) );
|
||||
}
|
||||
|
||||
private AccessRestriction getPermByBit( int bit )
|
||||
{
|
||||
switch ( bit )
|
||||
switch( bit )
|
||||
{
|
||||
default:
|
||||
case 0:
|
||||
@@ -69,4 +60,14 @@ public enum AccessRestriction
|
||||
return READ_WRITE;
|
||||
}
|
||||
}
|
||||
|
||||
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 ) );
|
||||
}
|
||||
}
|
||||
@@ -27,17 +27,22 @@ 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 );
|
||||
IGNORE_ALL( -1 ),
|
||||
PERCENT_99( 0 ),
|
||||
PERCENT_75( 25 ),
|
||||
PERCENT_50( 50 ),
|
||||
PERCENT_25( 75 );
|
||||
|
||||
final public float breakPoint;
|
||||
final public float percentage;
|
||||
public final float breakPoint;
|
||||
public final float percentage;
|
||||
|
||||
FuzzyMode( float p ) {
|
||||
FuzzyMode( final float p )
|
||||
{
|
||||
this.percentage = p;
|
||||
this.breakPoint = p / 100.0f;
|
||||
}
|
||||
|
||||
public int calculateBreakPoint( int maxDamage )
|
||||
public int calculateBreakPoint( final int maxDamage )
|
||||
{
|
||||
return (int) ( ( this.percentage * maxDamage ) / 100.0f );
|
||||
}
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
/*
|
||||
* 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;
|
||||
}
|
||||
@@ -33,12 +33,12 @@ public enum PowerMultiplier
|
||||
*/
|
||||
public double multiplier = 1.0;
|
||||
|
||||
public double multiply( double in )
|
||||
public double multiply( final double in )
|
||||
{
|
||||
return in * this.multiplier;
|
||||
}
|
||||
|
||||
public double divide( double in )
|
||||
public double divide( final double in )
|
||||
{
|
||||
return in / this.multiplier;
|
||||
}
|
||||
|
||||
@@ -28,23 +28,21 @@ public enum PowerUnits
|
||||
{
|
||||
AE( "gui.appliedenergistics2.units.appliedenergstics" ), // Native Units - AE Energy
|
||||
EU( "gui.appliedenergistics2.units.ic2" ), // IndustrialCraft 2 - Energy Units
|
||||
WA( "gui.appliedenergistics2.units.rotarycraft" ), // RotaryCraft - Watts
|
||||
RF( "gui.appliedenergistics2.units.thermalexpansion" ), // ThermalExpansion - Redstone Flux
|
||||
MK( "gui.appliedenergistics2.units.mekanism" ); // Mekanism - Joules
|
||||
|
||||
PowerUnits( String un ) {
|
||||
this.unlocalizedName = un;
|
||||
}
|
||||
RF( "gui.appliedenergistics2.units.rf" ); // RF - Redstone Flux
|
||||
|
||||
/**
|
||||
* 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.
|
||||
*/
|
||||
final public String unlocalizedName;
|
||||
PowerUnits( final String un )
|
||||
{
|
||||
this.unlocalizedName = un;
|
||||
}
|
||||
|
||||
/**
|
||||
* do power conversion using AE's conversion rates.
|
||||
@@ -54,11 +52,11 @@ public enum PowerUnits
|
||||
* 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
|
||||
* @param value value
|
||||
*
|
||||
* @return value converted to target units, from this units.
|
||||
*/
|
||||
public double convertTo( PowerUnits target, double value )
|
||||
public double convertTo( final PowerUnits target, final double value )
|
||||
{
|
||||
return ( value * this.conversionRatio ) / target.conversionRatio;
|
||||
}
|
||||
|
||||
+3
-3
@@ -21,10 +21,10 @@
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
package appeng.api.parts;
|
||||
package appeng.api.config;
|
||||
|
||||
|
||||
public interface ISimplifiedBundle
|
||||
public enum SchedulingMode
|
||||
{
|
||||
|
||||
DEFAULT, ROUNDROBIN, RANDOM
|
||||
}
|
||||
@@ -26,5 +26,5 @@ package appeng.api.config;
|
||||
|
||||
public enum SearchBoxMode
|
||||
{
|
||||
AUTOSEARCH, MANUAL_SEARCH, NEI_AUTOSEARCH, NEI_MANUAL_SEARCH
|
||||
AUTOSEARCH, MANUAL_SEARCH, JEI_AUTOSEARCH, JEI_MANUAL_SEARCH
|
||||
}
|
||||
|
||||
@@ -57,7 +57,7 @@ public enum SecurityPermissions
|
||||
*/
|
||||
SECURITY;
|
||||
|
||||
final private String unlocalizedName = "gui.appliedenergistics2.security." + this.name().toLowerCase();
|
||||
private final String unlocalizedName = "gui.appliedenergistics2.security." + this.name().toLowerCase();
|
||||
|
||||
public String getUnlocalizedName()
|
||||
{
|
||||
|
||||
@@ -26,6 +26,8 @@ package appeng.api.config;
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
|
||||
|
||||
public enum Settings
|
||||
{
|
||||
@@ -53,20 +55,25 @@ public enum Settings
|
||||
|
||||
INTERFACE_TERMINAL( EnumSet.of( YesNo.YES, YesNo.NO ) ), CRAFT_VIA_REDSTONE( EnumSet.of( YesNo.YES, YesNo.NO ) ),
|
||||
|
||||
STORAGE_FILTER( EnumSet.allOf( StorageFilter.class ) ), PLACE_BLOCK( EnumSet.of( YesNo.YES, YesNo.NO ) );
|
||||
STORAGE_FILTER( EnumSet.allOf( StorageFilter.class ) ), PLACE_BLOCK( EnumSet.of( YesNo.YES, YesNo.NO ) ),
|
||||
|
||||
private final EnumSet values;
|
||||
SCHEDULING_MODE( EnumSet.allOf( SchedulingMode.class ) );
|
||||
|
||||
public EnumSet getPossibleValues()
|
||||
private final EnumSet<? extends Enum<?>> values;
|
||||
|
||||
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;
|
||||
}
|
||||
|
||||
Settings( EnumSet set )
|
||||
{
|
||||
if ( set == null || set.isEmpty() )
|
||||
throw new RuntimeException( "Invalid configuration." );
|
||||
this.values = set;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -29,10 +29,7 @@ import java.util.Map;
|
||||
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
import com.google.common.base.Optional;
|
||||
|
||||
import appeng.api.definitions.IItemDefinition;
|
||||
import appeng.api.util.AEItemDefinition;
|
||||
|
||||
|
||||
public enum Upgrades
|
||||
@@ -47,19 +44,10 @@ public enum Upgrades
|
||||
*/
|
||||
FUZZY( 1 ), SPEED( 1 ), INVERTER( 1 );
|
||||
|
||||
/**
|
||||
* @deprecated use {@link Upgrades#getTier()}
|
||||
*/
|
||||
@Deprecated
|
||||
public final int tier;
|
||||
private final int tier;
|
||||
private final Map<ItemStack, Integer> supportedMax = new HashMap<>();
|
||||
|
||||
/**
|
||||
* @deprecated use {@link Upgrades#getSupported()}
|
||||
*/
|
||||
@Deprecated
|
||||
private final Map<ItemStack, Integer> supportedMax = new HashMap<ItemStack, Integer>();
|
||||
|
||||
Upgrades( int tier )
|
||||
Upgrades( final int tier )
|
||||
{
|
||||
this.tier = tier;
|
||||
}
|
||||
@@ -78,35 +66,9 @@ public enum Upgrades
|
||||
* @param item machine in which this upgrade can be installed
|
||||
* @param maxSupported amount how many upgrades can be installed
|
||||
*/
|
||||
public void registerItem( IItemDefinition item, int maxSupported )
|
||||
public void registerItem( final IItemDefinition item, final int maxSupported )
|
||||
{
|
||||
final Optional<ItemStack> maybeStack = item.maybeStack( 1 );
|
||||
for ( ItemStack stack : maybeStack.asSet() )
|
||||
{
|
||||
this.registerItem( stack, 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
|
||||
*
|
||||
* @deprecated use {@link Upgrades#registerItem(IItemDefinition, int)}
|
||||
*/
|
||||
@Deprecated
|
||||
public void registerItem( AEItemDefinition item, int maxSupported )
|
||||
{
|
||||
if ( item != null )
|
||||
{
|
||||
final ItemStack stack = item.stack( 1 );
|
||||
|
||||
if ( stack != null )
|
||||
{
|
||||
this.registerItem( stack, maxSupported );
|
||||
}
|
||||
}
|
||||
item.maybeStack( 1 ).ifPresent( is -> this.registerItem( is, maxSupported ) );
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -115,9 +77,9 @@ public enum Upgrades
|
||||
* @param stack machine in which this upgrade can be installed
|
||||
* @param maxSupported amount how many upgrades can be installed
|
||||
*/
|
||||
public void registerItem( ItemStack stack, int maxSupported )
|
||||
public void registerItem( final ItemStack stack, final int maxSupported )
|
||||
{
|
||||
if ( stack != null )
|
||||
if( stack != null )
|
||||
{
|
||||
this.supportedMax.put( stack, maxSupported );
|
||||
}
|
||||
|
||||
@@ -1,131 +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.definitions;
|
||||
|
||||
|
||||
import appeng.api.util.AEItemDefinition;
|
||||
|
||||
|
||||
/**
|
||||
* @deprecated use {@link IBlocks} now
|
||||
*/
|
||||
@Deprecated
|
||||
public class Blocks
|
||||
{
|
||||
public AEItemDefinition blockQuartzOre;
|
||||
|
||||
public AEItemDefinition blockQuartzOreCharged;
|
||||
|
||||
public AEItemDefinition blockMatrixFrame;
|
||||
|
||||
public AEItemDefinition blockQuartz;
|
||||
|
||||
public AEItemDefinition blockQuartzPillar;
|
||||
|
||||
public AEItemDefinition blockQuartzChiseled;
|
||||
|
||||
public AEItemDefinition blockQuartzGlass;
|
||||
|
||||
public AEItemDefinition blockQuartzVibrantGlass;
|
||||
|
||||
public AEItemDefinition blockQuartzTorch;
|
||||
|
||||
public AEItemDefinition blockFluix;
|
||||
|
||||
public AEItemDefinition blockSkyStone;
|
||||
|
||||
public AEItemDefinition blockSkyChest;
|
||||
|
||||
public AEItemDefinition blockSkyCompass;
|
||||
|
||||
public AEItemDefinition blockGrindStone;
|
||||
|
||||
public AEItemDefinition blockCrankHandle;
|
||||
|
||||
public AEItemDefinition blockInscriber;
|
||||
|
||||
public AEItemDefinition blockWireless;
|
||||
|
||||
public AEItemDefinition blockCharger;
|
||||
|
||||
public AEItemDefinition blockTinyTNT;
|
||||
|
||||
public AEItemDefinition blockSecurity;
|
||||
|
||||
public AEItemDefinition blockQuantumRing;
|
||||
|
||||
public AEItemDefinition blockQuantumLink;
|
||||
|
||||
public AEItemDefinition blockSpatialPylon;
|
||||
|
||||
public AEItemDefinition blockSpatialIOPort;
|
||||
|
||||
public AEItemDefinition blockMultiPart;
|
||||
|
||||
public AEItemDefinition blockController;
|
||||
|
||||
public AEItemDefinition blockDrive;
|
||||
|
||||
public AEItemDefinition blockChest;
|
||||
|
||||
public AEItemDefinition blockInterface;
|
||||
|
||||
public AEItemDefinition blockCellWorkbench;
|
||||
|
||||
public AEItemDefinition blockIOPort;
|
||||
|
||||
public AEItemDefinition blockCondenser;
|
||||
|
||||
public AEItemDefinition blockEnergyAcceptor;
|
||||
|
||||
public AEItemDefinition blockVibrationChamber;
|
||||
|
||||
public AEItemDefinition blockQuartzGrowthAccelerator;
|
||||
|
||||
public AEItemDefinition blockEnergyCell;
|
||||
|
||||
public AEItemDefinition blockEnergyCellDense;
|
||||
|
||||
public AEItemDefinition blockEnergyCellCreative;
|
||||
|
||||
public AEItemDefinition blockCraftingUnit;
|
||||
|
||||
public AEItemDefinition blockCraftingAccelerator;
|
||||
|
||||
public AEItemDefinition blockCraftingStorage1k;
|
||||
|
||||
public AEItemDefinition blockCraftingStorage4k;
|
||||
|
||||
public AEItemDefinition blockCraftingStorage16k;
|
||||
|
||||
public AEItemDefinition blockCraftingStorage64k;
|
||||
|
||||
public AEItemDefinition blockCraftingMonitor;
|
||||
|
||||
public AEItemDefinition blockMolecularAssembler;
|
||||
|
||||
public AEItemDefinition blockLightDetector;
|
||||
|
||||
public AEItemDefinition blockPaint;
|
||||
}
|
||||
@@ -1,10 +1,30 @@
|
||||
/*
|
||||
* 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.definitions;
|
||||
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.item.ItemBlock;
|
||||
|
||||
import com.google.common.base.Optional;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
||||
|
||||
public interface IBlockDefinition extends IItemDefinition
|
||||
@@ -18,4 +38,14 @@ public interface IBlockDefinition extends IItemDefinition
|
||||
* @return the {@link ItemBlock} implementation if applicable
|
||||
*/
|
||||
Optional<ItemBlock> maybeItemBlock();
|
||||
|
||||
/**
|
||||
* 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 );
|
||||
}
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
* 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.definitions;
|
||||
|
||||
|
||||
@@ -40,58 +41,82 @@ public interface IBlocks
|
||||
/*
|
||||
* decorative
|
||||
*/
|
||||
IBlockDefinition quartz();
|
||||
IBlockDefinition quartzBlock();
|
||||
|
||||
IBlockDefinition quartzPillar();
|
||||
|
||||
IBlockDefinition quartzChiseled();
|
||||
IBlockDefinition chiseledQuartzBlock();
|
||||
|
||||
IBlockDefinition quartzGlass();
|
||||
|
||||
IBlockDefinition quartzVibrantGlass();
|
||||
|
||||
IBlockDefinition quartzTorch();
|
||||
IBlockDefinition quartzFixture();
|
||||
|
||||
IBlockDefinition fluix();
|
||||
IBlockDefinition fluixBlock();
|
||||
|
||||
IBlockDefinition skyStone();
|
||||
IBlockDefinition skyStoneBlock();
|
||||
|
||||
IBlockDefinition skyChest();
|
||||
IBlockDefinition smoothSkyStoneBlock();
|
||||
|
||||
IBlockDefinition skyStoneBrick();
|
||||
|
||||
IBlockDefinition skyStoneSmallBrick();
|
||||
|
||||
IBlockDefinition skyStoneChest();
|
||||
|
||||
IBlockDefinition smoothSkyStoneChest();
|
||||
|
||||
IBlockDefinition skyCompass();
|
||||
|
||||
IBlockDefinition skyStoneStair();
|
||||
IBlockDefinition skyStoneStairs();
|
||||
|
||||
IBlockDefinition skyStoneBlockStair();
|
||||
IBlockDefinition smoothSkyStoneStairs();
|
||||
|
||||
IBlockDefinition skyStoneBrickStair();
|
||||
IBlockDefinition skyStoneBrickStairs();
|
||||
|
||||
IBlockDefinition skyStoneSmallBrickStair();
|
||||
IBlockDefinition skyStoneSmallBrickStairs();
|
||||
|
||||
IBlockDefinition fluixStair();
|
||||
IBlockDefinition fluixStairs();
|
||||
|
||||
IBlockDefinition quartzStair();
|
||||
IBlockDefinition quartzStairs();
|
||||
|
||||
IBlockDefinition chiseledQuartzStair();
|
||||
IBlockDefinition chiseledQuartzStairs();
|
||||
|
||||
IBlockDefinition quartzPillarStair();
|
||||
IBlockDefinition quartzPillarStairs();
|
||||
|
||||
IBlockDefinition skyStoneSlab();
|
||||
|
||||
IBlockDefinition smoothSkyStoneSlab();
|
||||
|
||||
IBlockDefinition skyStoneBrickSlab();
|
||||
|
||||
IBlockDefinition skyStoneSmallBrickSlab();
|
||||
|
||||
IBlockDefinition fluixSlab();
|
||||
|
||||
IBlockDefinition quartzSlab();
|
||||
|
||||
IBlockDefinition chiseledQuartzSlab();
|
||||
|
||||
IBlockDefinition quartzPillarSlab();
|
||||
|
||||
/*
|
||||
* misc
|
||||
*/
|
||||
ITileDefinition grindStone();
|
||||
ITileDefinition grindstone();
|
||||
|
||||
ITileDefinition crankHandle();
|
||||
ITileDefinition crank();
|
||||
|
||||
ITileDefinition inscriber();
|
||||
|
||||
ITileDefinition wireless();
|
||||
ITileDefinition wirelessAccessPoint();
|
||||
|
||||
ITileDefinition charger();
|
||||
|
||||
ITileDefinition tinyTNT();
|
||||
IBlockDefinition tinyTNT();
|
||||
|
||||
ITileDefinition security();
|
||||
ITileDefinition securityStation();
|
||||
|
||||
/*
|
||||
* quantum Network Bridge
|
||||
|
||||
@@ -1,12 +1,33 @@
|
||||
/*
|
||||
* 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.definitions;
|
||||
|
||||
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
|
||||
|
||||
/**
|
||||
* Interface to compare a definition with an itemstack or a block
|
||||
*
|
||||
* @author thatsIch
|
||||
* @version rv2
|
||||
* @since rv2
|
||||
*/
|
||||
public interface IComparableDefinition
|
||||
{
|
||||
@@ -14,19 +35,8 @@ 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 );
|
||||
|
||||
/**
|
||||
* Compare Block with world.
|
||||
*
|
||||
* @param world world of block
|
||||
* @param x x pos of block
|
||||
* @param y y pos of block
|
||||
* @param z z pos of block
|
||||
*
|
||||
* @return if the block is placed in the world at the specific location.
|
||||
*/
|
||||
boolean isSameAs( IBlockAccess world, int x, int y, int z );
|
||||
}
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
* 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.definitions;
|
||||
|
||||
|
||||
|
||||
@@ -1,14 +1,46 @@
|
||||
/*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2013 - 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.definitions;
|
||||
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
import com.google.common.base.Optional;
|
||||
|
||||
|
||||
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();
|
||||
|
||||
/**
|
||||
* @return the {@link Item} Implementation if applicable
|
||||
*/
|
||||
@@ -17,5 +49,10 @@ public interface IItemDefinition extends IComparableDefinition
|
||||
/**
|
||||
* @return an {@link ItemStack} with specified quantity of this item.
|
||||
*/
|
||||
Optional<ItemStack> maybeStack(int stackSize);
|
||||
Optional<ItemStack> maybeStack( int stackSize );
|
||||
|
||||
/**
|
||||
* @return <tt>true</tt> if definition is enabled
|
||||
*/
|
||||
boolean isEnabled();
|
||||
}
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
* 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.definitions;
|
||||
|
||||
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
* 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.definitions;
|
||||
|
||||
|
||||
@@ -122,7 +123,7 @@ public interface IMaterials
|
||||
|
||||
IItemDefinition woodenGear();
|
||||
|
||||
IItemDefinition wireless();
|
||||
IItemDefinition wirelessReceiver();
|
||||
|
||||
IItemDefinition wirelessBooster();
|
||||
|
||||
|
||||
@@ -66,6 +66,8 @@ public interface IParts
|
||||
|
||||
IItemDefinition annihilationPlane();
|
||||
|
||||
IItemDefinition identityAnnihilationPlane();
|
||||
|
||||
IItemDefinition formationPlane();
|
||||
|
||||
IItemDefinition p2PTunnelME();
|
||||
@@ -76,12 +78,14 @@ public interface IParts
|
||||
|
||||
IItemDefinition p2PTunnelLiquids();
|
||||
|
||||
IItemDefinition p2PTunnelEU();
|
||||
// IItemDefinition p2PTunnelEU();
|
||||
|
||||
IItemDefinition p2PTunnelRF();
|
||||
// IItemDefinition p2PTunnelRF();
|
||||
|
||||
IItemDefinition p2PTunnelLight();
|
||||
|
||||
// IItemDefinition p2PTunnelOpenComputers();
|
||||
|
||||
IItemDefinition cableAnchor();
|
||||
|
||||
IItemDefinition monitor();
|
||||
|
||||
@@ -1,9 +1,27 @@
|
||||
/*
|
||||
* 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.definitions;
|
||||
|
||||
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import java.util.Optional;
|
||||
|
||||
import com.google.common.base.Optional;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
|
||||
|
||||
public interface ITileDefinition extends IBlockDefinition
|
||||
|
||||
@@ -1,110 +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.definitions;
|
||||
|
||||
|
||||
import appeng.api.util.AEColoredItemDefinition;
|
||||
import appeng.api.util.AEItemDefinition;
|
||||
|
||||
|
||||
/**
|
||||
* @deprecated use {@link IItems}
|
||||
*/
|
||||
@Deprecated
|
||||
public class Items
|
||||
{
|
||||
public AEItemDefinition itemCertusQuartzAxe;
|
||||
|
||||
public AEItemDefinition itemCertusQuartzHoe;
|
||||
|
||||
public AEItemDefinition itemCertusQuartzShovel;
|
||||
|
||||
public AEItemDefinition itemCertusQuartzPick;
|
||||
|
||||
public AEItemDefinition itemCertusQuartzSword;
|
||||
|
||||
public AEItemDefinition itemCertusQuartzWrench;
|
||||
|
||||
public AEItemDefinition itemCertusQuartzKnife;
|
||||
|
||||
public AEItemDefinition itemNetherQuartzAxe;
|
||||
|
||||
public AEItemDefinition itemNetherQuartzHoe;
|
||||
|
||||
public AEItemDefinition itemNetherQuartzShovel;
|
||||
|
||||
public AEItemDefinition itemNetherQuartzPick;
|
||||
|
||||
public AEItemDefinition itemNetherQuartzSword;
|
||||
|
||||
public AEItemDefinition itemNetherQuartzWrench;
|
||||
|
||||
public AEItemDefinition itemNetherQuartzKnife;
|
||||
|
||||
public AEItemDefinition itemEntropyManipulator;
|
||||
|
||||
public AEItemDefinition itemWirelessTerminal;
|
||||
|
||||
public AEItemDefinition itemBiometricCard;
|
||||
|
||||
public AEItemDefinition itemChargedStaff;
|
||||
|
||||
public AEItemDefinition itemMassCannon;
|
||||
|
||||
public AEItemDefinition itemMemoryCard;
|
||||
|
||||
public AEItemDefinition itemNetworkTool;
|
||||
|
||||
public AEItemDefinition itemPortableCell;
|
||||
|
||||
public AEItemDefinition itemCellCreative;
|
||||
|
||||
public AEItemDefinition itemViewCell;
|
||||
|
||||
public AEItemDefinition itemCell1k;
|
||||
|
||||
public AEItemDefinition itemCell4k;
|
||||
|
||||
public AEItemDefinition itemCell16k;
|
||||
|
||||
public AEItemDefinition itemCell64k;
|
||||
|
||||
public AEItemDefinition itemSpatialCell2;
|
||||
|
||||
public AEItemDefinition itemSpatialCell16;
|
||||
|
||||
public AEItemDefinition itemSpatialCell128;
|
||||
|
||||
public AEItemDefinition itemFacade;
|
||||
|
||||
public AEItemDefinition itemCrystalSeed;
|
||||
|
||||
public AEItemDefinition itemEncodedPattern;
|
||||
|
||||
public AEItemDefinition itemColorApplicator;
|
||||
|
||||
public AEColoredItemDefinition itemPaintBall;
|
||||
|
||||
public AEColoredItemDefinition itemLumenPaintBall;
|
||||
}
|
||||
@@ -1,143 +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.definitions;
|
||||
|
||||
|
||||
import appeng.api.util.AEItemDefinition;
|
||||
|
||||
|
||||
/**
|
||||
* @deprecated use {@link IMaterials}
|
||||
*/
|
||||
@Deprecated
|
||||
public class Materials
|
||||
{
|
||||
public AEItemDefinition materialCell2SpatialPart;
|
||||
|
||||
public AEItemDefinition materialCell16SpatialPart;
|
||||
|
||||
public AEItemDefinition materialCell128SpatialPart;
|
||||
|
||||
public AEItemDefinition materialSilicon;
|
||||
|
||||
public AEItemDefinition materialSkyDust;
|
||||
|
||||
public AEItemDefinition materialCalcProcessorPress;
|
||||
|
||||
public AEItemDefinition materialEngProcessorPress;
|
||||
|
||||
public AEItemDefinition materialLogicProcessorPress;
|
||||
|
||||
public AEItemDefinition materialCalcProcessorPrint;
|
||||
|
||||
public AEItemDefinition materialEngProcessorPrint;
|
||||
|
||||
public AEItemDefinition materialLogicProcessorPrint;
|
||||
|
||||
public AEItemDefinition materialSiliconPress;
|
||||
|
||||
public AEItemDefinition materialSiliconPrint;
|
||||
|
||||
public AEItemDefinition materialNamePress;
|
||||
|
||||
public AEItemDefinition materialLogicProcessor;
|
||||
|
||||
public AEItemDefinition materialCalcProcessor;
|
||||
|
||||
public AEItemDefinition materialEngProcessor;
|
||||
|
||||
public AEItemDefinition materialBasicCard;
|
||||
|
||||
public AEItemDefinition materialAdvCard;
|
||||
|
||||
public AEItemDefinition materialPurifiedCertusQuartzCrystal;
|
||||
|
||||
public AEItemDefinition materialPurifiedNetherQuartzCrystal;
|
||||
|
||||
public AEItemDefinition materialPurifiedFluixCrystal;
|
||||
|
||||
public AEItemDefinition materialCell1kPart;
|
||||
|
||||
public AEItemDefinition materialCell4kPart;
|
||||
|
||||
public AEItemDefinition materialCell16kPart;
|
||||
|
||||
public AEItemDefinition materialCell64kPart;
|
||||
|
||||
public AEItemDefinition materialEmptyStorageCell;
|
||||
|
||||
public AEItemDefinition materialCardRedstone;
|
||||
|
||||
public AEItemDefinition materialCardSpeed;
|
||||
|
||||
public AEItemDefinition materialCardCapacity;
|
||||
|
||||
public AEItemDefinition materialCardFuzzy;
|
||||
|
||||
public AEItemDefinition materialCardInverter;
|
||||
|
||||
public AEItemDefinition materialCardCrafting;
|
||||
|
||||
public AEItemDefinition materialEnderDust;
|
||||
|
||||
public AEItemDefinition materialFlour;
|
||||
|
||||
public AEItemDefinition materialGoldDust;
|
||||
|
||||
public AEItemDefinition materialIronDust;
|
||||
|
||||
public AEItemDefinition materialFluixDust;
|
||||
|
||||
public AEItemDefinition materialCertusQuartzDust;
|
||||
|
||||
public AEItemDefinition materialNetherQuartzDust;
|
||||
|
||||
public AEItemDefinition materialMatterBall;
|
||||
|
||||
public AEItemDefinition materialIronNugget;
|
||||
|
||||
public AEItemDefinition materialCertusQuartzCrystal;
|
||||
|
||||
public AEItemDefinition materialCertusQuartzCrystalCharged;
|
||||
|
||||
public AEItemDefinition materialFluixCrystal;
|
||||
|
||||
public AEItemDefinition materialFluixPearl;
|
||||
|
||||
public AEItemDefinition materialWoodenGear;
|
||||
|
||||
public AEItemDefinition materialWireless;
|
||||
|
||||
public AEItemDefinition materialWirelessBooster;
|
||||
|
||||
public AEItemDefinition materialAnnihilationCore;
|
||||
|
||||
public AEItemDefinition materialFormationCore;
|
||||
|
||||
public AEItemDefinition materialSingularity;
|
||||
|
||||
public AEItemDefinition materialQESingularity;
|
||||
|
||||
public AEItemDefinition materialBlankPattern;
|
||||
}
|
||||
@@ -1,106 +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.definitions;
|
||||
|
||||
|
||||
import appeng.api.util.AEColoredItemDefinition;
|
||||
import appeng.api.util.AEItemDefinition;
|
||||
|
||||
|
||||
/**
|
||||
* @deprecated use {@link IParts}
|
||||
*/
|
||||
@Deprecated
|
||||
public class Parts
|
||||
{
|
||||
public AEColoredItemDefinition partCableSmart;
|
||||
|
||||
public AEColoredItemDefinition partCableCovered;
|
||||
|
||||
public AEColoredItemDefinition partCableGlass;
|
||||
|
||||
public AEColoredItemDefinition partCableDense;
|
||||
|
||||
public AEColoredItemDefinition partLumenCableSmart;
|
||||
|
||||
public AEColoredItemDefinition partLumenCableCovered;
|
||||
|
||||
public AEColoredItemDefinition partLumenCableGlass;
|
||||
|
||||
public AEColoredItemDefinition partLumenCableDense;
|
||||
|
||||
public AEItemDefinition partQuartzFiber;
|
||||
|
||||
public AEItemDefinition partToggleBus;
|
||||
|
||||
public AEItemDefinition partInvertedToggleBus;
|
||||
|
||||
public AEItemDefinition partStorageBus;
|
||||
|
||||
public AEItemDefinition partImportBus;
|
||||
|
||||
public AEItemDefinition partExportBus;
|
||||
|
||||
public AEItemDefinition partInterface;
|
||||
|
||||
public AEItemDefinition partLevelEmitter;
|
||||
|
||||
public AEItemDefinition partAnnihilationPlane;
|
||||
|
||||
public AEItemDefinition partFormationPlane;
|
||||
|
||||
public AEItemDefinition partP2PTunnelME;
|
||||
|
||||
public AEItemDefinition partP2PTunnelRedstone;
|
||||
|
||||
public AEItemDefinition partP2PTunnelItems;
|
||||
|
||||
public AEItemDefinition partP2PTunnelLiquids;
|
||||
|
||||
public AEItemDefinition partP2PTunnelEU;
|
||||
|
||||
public AEItemDefinition partP2PTunnelRF;
|
||||
|
||||
public AEItemDefinition partP2PTunnelLight;
|
||||
|
||||
public AEItemDefinition partCableAnchor;
|
||||
|
||||
public AEItemDefinition partMonitor;
|
||||
|
||||
public AEItemDefinition partSemiDarkMonitor;
|
||||
|
||||
public AEItemDefinition partDarkMonitor;
|
||||
|
||||
public AEItemDefinition partInterfaceTerminal;
|
||||
|
||||
public AEItemDefinition partPatternTerminal;
|
||||
|
||||
public AEItemDefinition partCraftingTerminal;
|
||||
|
||||
public AEItemDefinition partTerminal;
|
||||
|
||||
public AEItemDefinition partStorageMonitor;
|
||||
|
||||
public AEItemDefinition partConversionMonitor;
|
||||
}
|
||||
@@ -24,32 +24,38 @@
|
||||
package appeng.api.events;
|
||||
|
||||
|
||||
import cpw.mods.fml.common.eventhandler.Event;
|
||||
import net.minecraftforge.fml.common.eventhandler.Event;
|
||||
|
||||
import appeng.api.features.ILocatable;
|
||||
|
||||
|
||||
/**
|
||||
* Input Event:
|
||||
*
|
||||
*
|
||||
* Used to Notify the Location Registry of objects, and their availability.
|
||||
*/
|
||||
public class LocatableEventAnnounce extends Event
|
||||
{
|
||||
|
||||
public enum LocatableEvent
|
||||
{
|
||||
Register, // Adds the locatable to the registry
|
||||
Unregister // Removes the locatable from the registry
|
||||
}
|
||||
public final ILocatable target;
|
||||
public final LocatableEvent change;
|
||||
|
||||
|
||||
final public ILocatable target;
|
||||
final public LocatableEvent change;
|
||||
|
||||
public LocatableEventAnnounce( ILocatable o, LocatableEvent ev )
|
||||
public LocatableEventAnnounce( final ILocatable o, final LocatableEvent ev )
|
||||
{
|
||||
this.target = o;
|
||||
this.change = ev;
|
||||
}
|
||||
|
||||
public enum LocatableEvent
|
||||
{
|
||||
/**
|
||||
* Adds the locatable to the registry
|
||||
*/
|
||||
REGISTER,
|
||||
|
||||
/**
|
||||
* Removes the locatable from the registry
|
||||
*/
|
||||
UNREGISTER
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,7 +29,7 @@ public class AppEngException extends Exception
|
||||
|
||||
private static final long serialVersionUID = -9051434206368465494L;
|
||||
|
||||
public AppEngException( String t )
|
||||
public AppEngException( final String t )
|
||||
{
|
||||
super( t );
|
||||
}
|
||||
|
||||
@@ -1,9 +1,27 @@
|
||||
/*
|
||||
* 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.exceptions;
|
||||
|
||||
|
||||
public class CoreInaccessibleException extends RuntimeException
|
||||
{
|
||||
public CoreInaccessibleException( String message )
|
||||
public CoreInaccessibleException( final String message )
|
||||
{
|
||||
super( message );
|
||||
}
|
||||
|
||||
+22
-23
@@ -21,37 +21,36 @@
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
package appeng.api.storage;
|
||||
package appeng.api.exceptions;
|
||||
|
||||
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
import appeng.api.networking.IGridNode;
|
||||
|
||||
import appeng.api.IAppEngApi;
|
||||
import appeng.api.networking.security.BaseActionSource;
|
||||
|
||||
/**
|
||||
* A Registry of External Storage handlers.
|
||||
* Exception occurred because of an already existing connection between the two {@link IGridNode}s
|
||||
*
|
||||
* Do not implement obtain via {@link IAppEngApi}.registries().getExternalStorageRegistry()
|
||||
* Intended to signal an internal exception and not intended to be thrown by
|
||||
* any 3rd party module.
|
||||
*
|
||||
* @author yueh
|
||||
* @version rv3
|
||||
* @since rv3
|
||||
*/
|
||||
public interface IExternalStorageRegistry
|
||||
public class ExistingConnectionException extends FailedConnection
|
||||
{
|
||||
|
||||
/**
|
||||
* A registry for StorageBus interactions
|
||||
*
|
||||
* @param esh storage handler
|
||||
*/
|
||||
void addExternalStorageInterface(IExternalStorageHandler esh);
|
||||
private static final long serialVersionUID = 2975450379720353182L;
|
||||
private static final String DEFAULT_MESSAGE = "Connection between both nodes already exists.";
|
||||
|
||||
/**
|
||||
* @param te tile entity
|
||||
* @param opposite direction
|
||||
* @param channel channel
|
||||
* @param mySrc source
|
||||
* @return the handler for a given tile / forge direction
|
||||
*/
|
||||
IExternalStorageHandler getHandler(TileEntity te, ForgeDirection opposite, StorageChannel channel, BaseActionSource mySrc);
|
||||
public ExistingConnectionException()
|
||||
{
|
||||
super( DEFAULT_MESSAGE );
|
||||
}
|
||||
|
||||
}
|
||||
public ExistingConnectionException( String message )
|
||||
{
|
||||
super( message );
|
||||
}
|
||||
|
||||
}
|
||||
@@ -24,6 +24,22 @@
|
||||
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.
|
||||
*
|
||||
* See any subclass for a more specific reason.
|
||||
*
|
||||
* @author AlgorithmX2
|
||||
* @author yueh
|
||||
* @version rv3
|
||||
* @since rv0
|
||||
*/
|
||||
public class FailedConnection extends Exception
|
||||
{
|
||||
|
||||
@@ -32,4 +48,9 @@ public class FailedConnection extends Exception
|
||||
public FailedConnection()
|
||||
{
|
||||
}
|
||||
|
||||
public FailedConnection( String message )
|
||||
{
|
||||
super( message );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,9 +1,27 @@
|
||||
/*
|
||||
* 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.exceptions;
|
||||
|
||||
|
||||
public class MissingDefinition extends RuntimeException
|
||||
{
|
||||
public MissingDefinition( String message )
|
||||
public MissingDefinition( final String message )
|
||||
{
|
||||
super( message );
|
||||
}
|
||||
|
||||
@@ -29,7 +29,7 @@ public class MissingIngredientError extends Exception
|
||||
|
||||
private static final long serialVersionUID = -998858343831371697L;
|
||||
|
||||
public MissingIngredientError( String n )
|
||||
public MissingIngredientError( final String n )
|
||||
{
|
||||
super( n );
|
||||
}
|
||||
|
||||
@@ -29,7 +29,7 @@ public class ModNotInstalled extends Exception
|
||||
|
||||
private static final long serialVersionUID = -9052435206368425494L;
|
||||
|
||||
public ModNotInstalled( String t )
|
||||
public ModNotInstalled( final String t )
|
||||
{
|
||||
super( t );
|
||||
}
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
/*
|
||||
* 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.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.
|
||||
*
|
||||
* @author yueh
|
||||
* @version rv3
|
||||
* @since rv3
|
||||
*/
|
||||
public class NullNodeConnectionException extends FailedConnection
|
||||
{
|
||||
|
||||
private static final long serialVersionUID = -2143719383495321764L;
|
||||
private static final String DEFAULT_MESSAGE = "Connection forged between null entities.";
|
||||
|
||||
public NullNodeConnectionException()
|
||||
{
|
||||
super( DEFAULT_MESSAGE );
|
||||
}
|
||||
|
||||
public NullNodeConnectionException( String message )
|
||||
{
|
||||
super( message );
|
||||
}
|
||||
|
||||
}
|
||||
@@ -29,7 +29,7 @@ public class RecipeError extends Exception
|
||||
|
||||
private static final long serialVersionUID = -6602870588617670262L;
|
||||
|
||||
public RecipeError( String n )
|
||||
public RecipeError( final String n )
|
||||
{
|
||||
super( n );
|
||||
}
|
||||
|
||||
@@ -29,7 +29,7 @@ public class RegistrationError extends Exception
|
||||
|
||||
private static final long serialVersionUID = -6602870588617670263L;
|
||||
|
||||
public RegistrationError( String n )
|
||||
public RegistrationError( final String n )
|
||||
{
|
||||
super( n );
|
||||
}
|
||||
|
||||
@@ -0,0 +1,52 @@
|
||||
/*
|
||||
* 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.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.
|
||||
*
|
||||
* @author yueh
|
||||
* @version rv3
|
||||
* @since rv3
|
||||
*/
|
||||
public class SecurityConnectionException extends FailedConnection
|
||||
{
|
||||
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( String message )
|
||||
{
|
||||
super( message );
|
||||
}
|
||||
|
||||
}
|
||||
@@ -54,6 +54,13 @@ public interface IGrinderEntry
|
||||
*/
|
||||
ItemStack getOutput();
|
||||
|
||||
/**
|
||||
* allows you to change the output.
|
||||
*
|
||||
* @param output output item
|
||||
*/
|
||||
void setOutput( ItemStack output );
|
||||
|
||||
/**
|
||||
* gets the current output
|
||||
*
|
||||
@@ -68,13 +75,6 @@ public interface IGrinderEntry
|
||||
*/
|
||||
ItemStack getSecondOptionalOutput();
|
||||
|
||||
/**
|
||||
* allows you to change the output.
|
||||
*
|
||||
* @param output output item
|
||||
*/
|
||||
void setOutput( ItemStack output );
|
||||
|
||||
/**
|
||||
* stack, and 0.0-1.0 chance that it will be generated.
|
||||
*
|
||||
|
||||
@@ -57,21 +57,21 @@ public interface IGrinderRegistry
|
||||
* @param in input
|
||||
* @param out output
|
||||
* @param optional optional output
|
||||
* @param chance chance to get the optional output within 0.0 - 1.0
|
||||
* @param turns amount of turns to turn the input into the outputs
|
||||
* @param chance chance to get the optional output within 0.0 - 1.0
|
||||
* @param turns amount of turns to turn the input into the outputs
|
||||
*/
|
||||
void addRecipe( ItemStack in, ItemStack out, ItemStack optional, float chance, int turns );
|
||||
|
||||
/**
|
||||
* add a new recipe with optional outputs, duplicates will not be added.
|
||||
*
|
||||
*
|
||||
* @param in input
|
||||
* @param out output
|
||||
* @param optional optional output
|
||||
* @param chance chance to get the optional output within 0.0 - 1.0
|
||||
* @param optional2 second optional output
|
||||
* @param chance2 chance to get the second optional output within 0.0 - 1.0
|
||||
* @param turns amount of turns to turn the input into the outputs
|
||||
* @param chance2 chance to get the second optional output within 0.0 - 1.0
|
||||
* @param turns amount of turns to turn the input into the outputs
|
||||
*/
|
||||
void addRecipe( ItemStack in, ItemStack out, ItemStack optional, float chance, ItemStack optional2, float chance2, int turns );
|
||||
|
||||
|
||||
@@ -0,0 +1,83 @@
|
||||
/*
|
||||
* 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();
|
||||
}
|
||||
@@ -0,0 +1,107 @@
|
||||
/*
|
||||
* 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();
|
||||
}
|
||||
@@ -0,0 +1,93 @@
|
||||
/*
|
||||
* 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 java.util.Set;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
|
||||
/**
|
||||
* Lets you manipulate Inscriber Recipes, by adding or editing existing ones.
|
||||
*
|
||||
* @author thatsIch
|
||||
* @version rv3
|
||||
* @since rv2
|
||||
*/
|
||||
public interface IInscriberRegistry
|
||||
{
|
||||
/**
|
||||
* An immutable copy of currently registered recipes.
|
||||
*
|
||||
* Use the provided methods to actually modify the inscriber recipes.
|
||||
*
|
||||
* @see IInscriberRegistry#addRecipe(IInscriberRecipe)
|
||||
* @see IInscriberRegistry#removeRecipe(IInscriberRecipe)
|
||||
*
|
||||
* @return currentlyRegisteredRecipes
|
||||
*/
|
||||
@Nonnull
|
||||
Collection<IInscriberRecipe> getRecipes();
|
||||
|
||||
/**
|
||||
* Optional items which are used in the top or bottom slot.
|
||||
*
|
||||
* @return set of all optional items
|
||||
*/
|
||||
@Nonnull
|
||||
Set<ItemStack> getOptionals();
|
||||
|
||||
/**
|
||||
* Get all registered items which are valid inputs.
|
||||
*
|
||||
* @return set of all input items
|
||||
*/
|
||||
@Nonnull
|
||||
Set<ItemStack> getInputs();
|
||||
|
||||
/**
|
||||
* Extensible way to create an inscriber recipe.
|
||||
*
|
||||
* @return builder for inscriber recipes
|
||||
*/
|
||||
@Nonnull
|
||||
IInscriberRecipeBuilder builder();
|
||||
|
||||
/**
|
||||
* add a new recipe the easy way, duplicates will not be added.
|
||||
* Added recipes will be automatically added to the optionals and inputs.
|
||||
*
|
||||
* @param recipe new recipe
|
||||
*
|
||||
* @throws IllegalArgumentException if null is added
|
||||
*/
|
||||
void addRecipe( IInscriberRecipe recipe );
|
||||
|
||||
/**
|
||||
* Removes all equal recipes from the registry.
|
||||
*
|
||||
* @param toBeRemovedRecipe to be removed recipe, can be null, makes just no sense.
|
||||
*/
|
||||
void removeRecipe( IInscriberRecipe toBeRemovedRecipe );
|
||||
|
||||
}
|
||||
@@ -29,18 +29,6 @@ package appeng.api.features;
|
||||
*/
|
||||
public interface ILocatableRegistry
|
||||
{
|
||||
/**
|
||||
* Attempts to find the object with the serial specified, if it can it
|
||||
* returns the object.
|
||||
*
|
||||
* @param serial serial
|
||||
*
|
||||
* @return requestedObject, or null
|
||||
*
|
||||
* @deprecated use {@link ILocatableRegistry#getLocatableBy(long)}
|
||||
*/
|
||||
@Deprecated
|
||||
Object findLocatableBySerial( long serial );
|
||||
|
||||
/**
|
||||
* Gets the {@link ILocatable} with the registered serial, if available
|
||||
|
||||
@@ -32,7 +32,7 @@ public interface IMatterCannonAmmoRegistry
|
||||
|
||||
/**
|
||||
* register a new ammo, generally speaking this is based off of atomic weight to make it easier to guess at
|
||||
*
|
||||
*
|
||||
* @param ammo new ammo
|
||||
* @param weight atomic weight
|
||||
*/
|
||||
|
||||
@@ -41,13 +41,10 @@ public interface INetworkEncodable
|
||||
|
||||
/**
|
||||
* Encode the wireless frequency via the Controller.
|
||||
*
|
||||
* @param item
|
||||
* the wireless terminal.
|
||||
* @param encKey
|
||||
* the wireless encryption key.
|
||||
* @param name
|
||||
* null for now.
|
||||
*
|
||||
* @param item the wireless terminal.
|
||||
* @param encKey the wireless encryption key.
|
||||
* @param name null for now.
|
||||
*/
|
||||
void setEncryptionKey( ItemStack item, String encKey, String name );
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2013 AlgorithmX2
|
||||
* Copyright (c) 2013 - 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
|
||||
@@ -24,6 +24,8 @@
|
||||
package appeng.api.features;
|
||||
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
import appeng.api.config.TunnelType;
|
||||
@@ -38,13 +40,11 @@ public interface IP2PTunnelRegistry
|
||||
/**
|
||||
* Allows third parties to register items from their mod as potential
|
||||
* attunements for AE's P2P Tunnels
|
||||
*
|
||||
* @param trigger
|
||||
* - the item which triggers attunement
|
||||
* @param type
|
||||
* - the type of tunnel
|
||||
*
|
||||
* @param trigger - the item which triggers attunement. Nullable, but then ignored
|
||||
* @param type - the type of tunnel. Nullable, but then ignored
|
||||
*/
|
||||
void addNewAttunement( ItemStack trigger, TunnelType type );
|
||||
void addNewAttunement( @Nullable ItemStack trigger, @Nullable TunnelType type );
|
||||
|
||||
/**
|
||||
* returns null if no attunement can be found.
|
||||
@@ -53,5 +53,6 @@ public interface IP2PTunnelRegistry
|
||||
*
|
||||
* @return null if no attunement can be found or attunement
|
||||
*/
|
||||
@Nullable
|
||||
TunnelType getTunnelTypeByItem( ItemStack trigger );
|
||||
}
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2013 AlgorithmX2
|
||||
* Copyright (c) 2013 - 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
|
||||
@@ -24,10 +24,12 @@
|
||||
package appeng.api.features;
|
||||
|
||||
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
import com.mojang.authlib.GameProfile;
|
||||
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
|
||||
|
||||
/**
|
||||
* Maintains a save specific list of userids and username combinations this greatly simplifies storage internally and
|
||||
@@ -55,5 +57,6 @@ public interface IPlayerRegistry
|
||||
*
|
||||
* @return PlayerEntity, or null if the player could not be found.
|
||||
*/
|
||||
@Nullable
|
||||
EntityPlayer findPlayer( int playerID );
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* The MIT License (MIT)
|
||||
*
|
||||
* Copyright (c) 2013 AlgorithmX2
|
||||
* Copyright (c) 2013 - 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
|
||||
@@ -24,19 +24,27 @@
|
||||
package appeng.api.features;
|
||||
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
import appeng.api.recipes.ICraftHandler;
|
||||
import appeng.api.recipes.IRecipeHandler;
|
||||
import appeng.api.recipes.ISubItemResolver;
|
||||
|
||||
|
||||
/**
|
||||
* @author AlgorithmX2
|
||||
* @author thatsIch
|
||||
* @version rv3 - 10.08.2015
|
||||
* @since rv0
|
||||
*/
|
||||
public interface IRecipeHandlerRegistry
|
||||
{
|
||||
|
||||
/**
|
||||
* Add a new Recipe Handler to the parser.
|
||||
*
|
||||
*
|
||||
* MUST BE CALLED IN PRE-INIT
|
||||
*
|
||||
*
|
||||
* @param name name of crafthandler
|
||||
* @param handler class of crafthandler
|
||||
*/
|
||||
@@ -44,7 +52,7 @@ public interface IRecipeHandlerRegistry
|
||||
|
||||
/**
|
||||
* Add a new resolver to the parser.
|
||||
*
|
||||
*
|
||||
* MUST BE CALLED IN PRE-INIT
|
||||
*
|
||||
* @param sir sub item resolver
|
||||
@@ -56,6 +64,7 @@ public interface IRecipeHandlerRegistry
|
||||
*
|
||||
* @return A recipe handler by name, returns null on failure.
|
||||
*/
|
||||
@Nullable
|
||||
ICraftHandler getCraftHandlerFor( String name );
|
||||
|
||||
/**
|
||||
@@ -67,9 +76,10 @@ public interface IRecipeHandlerRegistry
|
||||
* resolve sub items by name.
|
||||
*
|
||||
* @param nameSpace namespace of item
|
||||
* @param itemName full name of item
|
||||
* @param itemName full name of item
|
||||
*
|
||||
* @return ResolverResult or ResolverResultSet
|
||||
* @return ResolverResult or ResolverResultSet or null if could not resolve
|
||||
*/
|
||||
@Nullable
|
||||
Object resolveItem( String nameSpace, String itemName );
|
||||
}
|
||||
|
||||
@@ -24,12 +24,20 @@
|
||||
package appeng.api.features;
|
||||
|
||||
|
||||
import appeng.api.AEInjectable;
|
||||
import appeng.api.movable.IMovableRegistry;
|
||||
import appeng.api.networking.IGridCacheRegistry;
|
||||
import appeng.api.parts.IPartModels;
|
||||
import appeng.api.storage.ICellRegistry;
|
||||
import appeng.api.storage.IExternalStorageRegistry;
|
||||
|
||||
|
||||
/**
|
||||
* @author AlgorithmX2
|
||||
* @author thatsIch
|
||||
* @version rv2
|
||||
* @since rv0
|
||||
*/
|
||||
@AEInjectable
|
||||
public interface IRegistryContainer
|
||||
{
|
||||
|
||||
@@ -43,12 +51,6 @@ public interface IRegistryContainer
|
||||
*/
|
||||
IGridCacheRegistry gridCache();
|
||||
|
||||
/**
|
||||
* Add additional storage bus handlers to improve interplay with mod blocks that contains special inventories that
|
||||
* function unlike vanilla chests. AE uses this internally for barrels, DSU's, quantum chests, AE Networks and more.
|
||||
*/
|
||||
IExternalStorageRegistry externalStorage();
|
||||
|
||||
/**
|
||||
* Add additional special comparison functionality, AE Uses this internally for Bees.
|
||||
*/
|
||||
@@ -69,6 +71,11 @@ public interface IRegistryContainer
|
||||
*/
|
||||
IGrinderRegistry grinder();
|
||||
|
||||
/**
|
||||
* Manage inscriber recipes via API
|
||||
*/
|
||||
IInscriberRegistry inscriber();
|
||||
|
||||
/**
|
||||
* get access to the locatable registry
|
||||
*/
|
||||
@@ -98,4 +105,9 @@ public interface IRegistryContainer
|
||||
* get access to the world-gen api.
|
||||
*/
|
||||
IWorldGen worldgen();
|
||||
|
||||
/**
|
||||
* Register your IPart models before using them.
|
||||
*/
|
||||
IPartModels partModels();
|
||||
}
|
||||
|
||||
@@ -45,11 +45,11 @@ public interface IWirelessTermHandler extends INetworkEncodable
|
||||
|
||||
/**
|
||||
* use an amount of power, in AE units
|
||||
*
|
||||
* @param amount
|
||||
* is in AE units ( 5 per MJ ), if you return false, the item should be dead and return false for
|
||||
* hasPower
|
||||
*
|
||||
* @param amount is in AE units ( 5 per MJ ), if you return false, the item should be dead and return false for
|
||||
* hasPower
|
||||
* @param is wireless terminal
|
||||
*
|
||||
* @return true if wireless terminal uses power
|
||||
*/
|
||||
boolean usePower( EntityPlayer player, double amount, ItemStack is );
|
||||
|
||||
@@ -31,11 +31,6 @@ import net.minecraft.world.WorldProvider;
|
||||
public interface IWorldGen
|
||||
{
|
||||
|
||||
enum WorldGenType
|
||||
{
|
||||
CertusQuartz, ChargedCertusQuartz, Meteorites
|
||||
}
|
||||
|
||||
void disableWorldGenForProviderID( WorldGenType type, Class<? extends WorldProvider> provider );
|
||||
|
||||
void enableWorldGenForDimension( WorldGenType type, int dimID );
|
||||
@@ -43,4 +38,9 @@ public interface IWorldGen
|
||||
void disableWorldGenForDimension( WorldGenType type, int dimID );
|
||||
|
||||
boolean isWorldGenEnabled( WorldGenType type, World w );
|
||||
|
||||
enum WorldGenType
|
||||
{
|
||||
CERTUS_QUARTZ, CHARGED_CERTUS_QUARTZ, METEORITES
|
||||
}
|
||||
}
|
||||
|
||||
+10
-9
@@ -16,17 +16,18 @@
|
||||
* along with Applied Energistics 2. If not, see <http://www.gnu.org/licenses/lgpl>.
|
||||
*/
|
||||
|
||||
package appeng.core.features;
|
||||
package appeng.api.features;
|
||||
|
||||
|
||||
import appeng.api.definitions.IItemDefinition;
|
||||
|
||||
|
||||
public interface IFeatureHandler
|
||||
public enum InscriberProcessType
|
||||
{
|
||||
boolean isFeatureAvailable();
|
||||
/**
|
||||
* uses the optionals as catalyst
|
||||
*/
|
||||
INSCRIBE,
|
||||
|
||||
IItemDefinition getDefinition();
|
||||
|
||||
void register();
|
||||
/**
|
||||
* spends the optionals
|
||||
*/
|
||||
PRESS
|
||||
}
|
||||
@@ -41,7 +41,7 @@ public interface ICraftingPatternItem
|
||||
* Access Details about a pattern
|
||||
*
|
||||
* @param is pattern
|
||||
* @param w crafting world
|
||||
* @param w crafting world
|
||||
*
|
||||
* @return details of pattern
|
||||
*/
|
||||
|
||||
@@ -33,7 +33,7 @@ public class TransitionResult
|
||||
public final boolean success;
|
||||
public final double energyUsage;
|
||||
|
||||
public TransitionResult( boolean _success, double power )
|
||||
public TransitionResult( final boolean _success, final double power )
|
||||
{
|
||||
this.success = _success;
|
||||
this.energyUsage = power;
|
||||
|
||||
@@ -25,6 +25,7 @@ package appeng.api.implementations.guiobjects;
|
||||
|
||||
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
|
||||
@@ -35,5 +36,5 @@ import net.minecraft.world.World;
|
||||
public interface IGuiItem
|
||||
{
|
||||
|
||||
IGuiItemObject getGuiObject( ItemStack is, World world, int x, int y, int z );
|
||||
IGuiItemObject getGuiObject( ItemStack is, World world, BlockPos pos );
|
||||
}
|
||||
|
||||
@@ -26,6 +26,7 @@ package appeng.api.implementations.items;
|
||||
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
|
||||
|
||||
/**
|
||||
@@ -39,11 +40,9 @@ public interface IAEWrench
|
||||
* Check if the wrench can be used.
|
||||
*
|
||||
* @param player wrenching player
|
||||
* @param x x pos of wrenched block
|
||||
* @param y y pos of wrenched block
|
||||
* @param z z pos of wrenched block
|
||||
* @param pos of block.
|
||||
*
|
||||
* @return true if wrench can be used
|
||||
*/
|
||||
boolean canWrench( ItemStack wrench, EntityPlayer player, int x, int y, int z );
|
||||
boolean canWrench( ItemStack wrench, EntityPlayer player, BlockPos pos );
|
||||
}
|
||||
|
||||
@@ -26,10 +26,10 @@ package appeng.api.implementations.items;
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
import com.mojang.authlib.GameProfile;
|
||||
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
import appeng.api.config.SecurityPermissions;
|
||||
import appeng.api.features.IPlayerRegistry;
|
||||
import appeng.api.networking.security.ISecurityRegistry;
|
||||
@@ -39,7 +39,7 @@ public interface IBiometricCard
|
||||
{
|
||||
|
||||
/**
|
||||
* Set the {@link GameProfile} to null, to clear it.
|
||||
* Set the {@link GameProfile} to null, to clear it.
|
||||
*/
|
||||
void setProfile( ItemStack itemStack, GameProfile username );
|
||||
|
||||
@@ -66,7 +66,7 @@ public interface IBiometricCard
|
||||
|
||||
/**
|
||||
* remove a permission from the item stack.
|
||||
*
|
||||
*
|
||||
* @param itemStack card
|
||||
* @param permission to be removed permission
|
||||
*/
|
||||
@@ -74,7 +74,7 @@ public interface IBiometricCard
|
||||
|
||||
/**
|
||||
* add a permission to the item stack.
|
||||
*
|
||||
*
|
||||
* @param itemStack card
|
||||
* @param permission to be added permission
|
||||
*/
|
||||
@@ -84,8 +84,8 @@ public interface IBiometricCard
|
||||
* lets you handle submission of security values on the card for custom behavior.
|
||||
*
|
||||
* @param registry security registry
|
||||
* @param pr player registry
|
||||
* @param is card
|
||||
* @param pr player registry
|
||||
* @param is card
|
||||
*/
|
||||
void registerPermissions( ISecurityRegistry registry, IPlayerRegistry pr, ItemStack is );
|
||||
}
|
||||
|
||||
@@ -31,7 +31,7 @@ import net.minecraft.nbt.NBTTagCompound;
|
||||
|
||||
/**
|
||||
* Memory Card API
|
||||
*
|
||||
*
|
||||
* AE's Memory Card Item Class implements this interface.
|
||||
*/
|
||||
public interface IMemoryCard
|
||||
@@ -40,14 +40,12 @@ public interface IMemoryCard
|
||||
/**
|
||||
* Configures the data stored on the memory card, the SettingsName, will be
|
||||
* localized when displayed.
|
||||
*
|
||||
*
|
||||
* @param is item
|
||||
* @param SettingsName
|
||||
* unlocalized string that represents the tile entity.
|
||||
* @param data
|
||||
* may contain a String called "tooltip" which is is a
|
||||
* unlocalized string displayed after the settings name, optional
|
||||
* but can be used to add details to the card for later.
|
||||
* @param SettingsName unlocalized string that represents the tile entity.
|
||||
* @param data may contain a String called "tooltip" which is is a
|
||||
* unlocalized string displayed after the settings name, optional
|
||||
* but can be used to add details to the card for later.
|
||||
*/
|
||||
void setMemoryCardContents( ItemStack is, String SettingsName, NBTTagCompound data );
|
||||
|
||||
@@ -72,11 +70,9 @@ public interface IMemoryCard
|
||||
|
||||
/**
|
||||
* notify the user of a outcome related to the memory card.
|
||||
*
|
||||
* @param player
|
||||
* that used the card.
|
||||
* @param msg
|
||||
* which message to send.
|
||||
*
|
||||
* @param player that used the card.
|
||||
* @param msg which message to send.
|
||||
*/
|
||||
void notifyUser( EntityPlayer player, MemoryCardMessages msg );
|
||||
}
|
||||
|
||||
@@ -88,7 +88,7 @@ public interface ISpatialStorageCell
|
||||
|
||||
/**
|
||||
* Perform a spatial swap with the contents of the cell, and the world.
|
||||
*
|
||||
*
|
||||
* @param is spatial storage cell
|
||||
* @param w world of spatial
|
||||
* @param min min coord
|
||||
|
||||
@@ -34,10 +34,10 @@ import appeng.api.storage.data.IAEItemStack;
|
||||
* Any item which implements this can be treated as an IMEInventory via
|
||||
* Util.getCell / Util.isCell It automatically handles the internals and NBT
|
||||
* data, which is both nice, and bad for you!
|
||||
*
|
||||
*
|
||||
* Good cause it means you don't have to do anything, bad because you have
|
||||
* little to no control over it.
|
||||
*
|
||||
*
|
||||
* The standard AE implementation only provides 1-63 Types
|
||||
*/
|
||||
public interface IStorageCell extends ICellWorkbenchItem
|
||||
@@ -60,7 +60,7 @@ public interface IStorageCell extends ICellWorkbenchItem
|
||||
*
|
||||
* @return number of bytes
|
||||
*/
|
||||
int BytePerType( ItemStack cellItem );
|
||||
int getBytesPerType( ItemStack cellItem );
|
||||
|
||||
/**
|
||||
* Must be between 1 and 63, indicates how many types you want to store on
|
||||
@@ -76,7 +76,7 @@ public interface IStorageCell extends ICellWorkbenchItem
|
||||
* Allows you to fine tune which items are allowed on a given cell, if you
|
||||
* don't care, just return false; As the handler for this type of cell is
|
||||
* still the default cells, the normal AE black list is also applied.
|
||||
*
|
||||
*
|
||||
* @param cellItem item
|
||||
* @param requestedAddition requested addition
|
||||
*
|
||||
|
||||
@@ -27,7 +27,7 @@ package appeng.api.implementations.parts;
|
||||
import java.util.EnumSet;
|
||||
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
import net.minecraft.util.EnumFacing;
|
||||
|
||||
import appeng.api.networking.IGridHost;
|
||||
import appeng.api.parts.BusSupport;
|
||||
@@ -35,10 +35,11 @@ import appeng.api.parts.IPart;
|
||||
import appeng.api.parts.IPartHost;
|
||||
import appeng.api.util.AECableType;
|
||||
import appeng.api.util.AEColor;
|
||||
import appeng.api.util.AEPartLocation;
|
||||
|
||||
|
||||
/**
|
||||
* Implemented on the {@link IPart}s cable objects that can be placed at {@link ForgeDirection}.UNKNOWN in
|
||||
* Implemented on the {@link IPart}s cable objects that can be placed at {@link AEPartLocation}.UNKNOWN in
|
||||
* {@link IPartHost}s
|
||||
*/
|
||||
public interface IPartCable extends IPart, IGridHost
|
||||
@@ -70,12 +71,12 @@ public interface IPartCable extends IPart, IGridHost
|
||||
|
||||
/**
|
||||
* Change sides on the cables node.
|
||||
*
|
||||
*
|
||||
* Called by AE, do not invoke.
|
||||
*
|
||||
* @param sides sides of cable
|
||||
*/
|
||||
void setValidSides( EnumSet<ForgeDirection> sides );
|
||||
void setValidSides( EnumSet<EnumFacing> sides );
|
||||
|
||||
/**
|
||||
* used to tests if a cable connects to neighbors visually.
|
||||
@@ -84,5 +85,6 @@ public interface IPartCable extends IPart, IGridHost
|
||||
*
|
||||
* @return true if this side is currently connects to an external block.
|
||||
*/
|
||||
boolean isConnected( ForgeDirection side );
|
||||
boolean isConnected( EnumFacing side );
|
||||
|
||||
}
|
||||
|
||||
@@ -23,10 +23,12 @@
|
||||
|
||||
package appeng.api.implementations.tiles;
|
||||
|
||||
|
||||
import appeng.api.networking.IGridHost;
|
||||
import appeng.api.storage.ICellContainer;
|
||||
import appeng.api.util.IOrientable;
|
||||
|
||||
|
||||
public interface IChestOrDrive extends ICellContainer, IGridHost, IOrientable
|
||||
{
|
||||
|
||||
@@ -45,9 +47,10 @@ public interface IChestOrDrive extends ICellContainer, IGridHost, IOrientable
|
||||
* 3 - red
|
||||
*
|
||||
* @param slot slot index
|
||||
*
|
||||
* @return status of the slot, one of the above indices.
|
||||
*/
|
||||
int getCellStatus(int slot);
|
||||
int getCellStatus( int slot );
|
||||
|
||||
/**
|
||||
* @return if the device is online you should check this before providing any other information.
|
||||
@@ -56,8 +59,8 @@ public interface IChestOrDrive extends ICellContainer, IGridHost, IOrientable
|
||||
|
||||
/**
|
||||
* @param slot slot index
|
||||
*
|
||||
* @return is the cell currently blinking to show activity.
|
||||
*/
|
||||
boolean isCellBlinking(int slot);
|
||||
|
||||
boolean isCellBlinking( int slot );
|
||||
}
|
||||
|
||||
@@ -25,7 +25,7 @@ package appeng.api.implementations.tiles;
|
||||
|
||||
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
import net.minecraft.util.EnumFacing;
|
||||
|
||||
import appeng.api.util.AEColor;
|
||||
|
||||
@@ -35,5 +35,5 @@ public interface IColorableTile
|
||||
|
||||
AEColor getColor();
|
||||
|
||||
boolean recolourBlock( ForgeDirection side, AEColor colour, EntityPlayer who );
|
||||
boolean recolourBlock( EnumFacing side, AEColor colour, EntityPlayer who );
|
||||
}
|
||||
|
||||
@@ -25,10 +25,11 @@ package appeng.api.implementations.tiles;
|
||||
|
||||
|
||||
import net.minecraft.inventory.InventoryCrafting;
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
import net.minecraft.util.EnumFacing;
|
||||
|
||||
import appeng.api.networking.crafting.ICraftingPatternDetails;
|
||||
|
||||
|
||||
public interface ICraftingMachine
|
||||
{
|
||||
|
||||
@@ -41,7 +42,7 @@ public interface ICraftingMachine
|
||||
*
|
||||
* @return if it was accepted, all or nothing.
|
||||
*/
|
||||
boolean pushPattern(ICraftingPatternDetails patternDetails, InventoryCrafting table, ForgeDirection ejectionDirection);
|
||||
boolean pushPattern( ICraftingPatternDetails patternDetails, InventoryCrafting table, EnumFacing ejectionDirection );
|
||||
|
||||
/**
|
||||
* check if the crafting machine is accepting pushes via pushPattern, if this is false, all calls to push will fail,
|
||||
@@ -50,5 +51,4 @@ public interface ICraftingMachine
|
||||
* @return true, if pushPattern can complete, if its false push will always be false.
|
||||
*/
|
||||
boolean acceptsPlans();
|
||||
|
||||
}
|
||||
|
||||
@@ -23,7 +23,9 @@
|
||||
|
||||
package appeng.api.implementations.tiles;
|
||||
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
|
||||
import net.minecraft.util.EnumFacing;
|
||||
|
||||
|
||||
/**
|
||||
* Crank/Crankable API,
|
||||
@@ -53,6 +55,5 @@ public interface ICrankable
|
||||
/**
|
||||
* @return true if the crank can attach on the given side.
|
||||
*/
|
||||
boolean canCrankAttach(ForgeDirection directionToCrank);
|
||||
|
||||
boolean canCrankAttach( EnumFacing directionToCrank );
|
||||
}
|
||||
|
||||
@@ -27,7 +27,7 @@ package appeng.api.implementations.tiles;
|
||||
import appeng.api.networking.energy.IEnergySource;
|
||||
|
||||
|
||||
public interface IMEChest extends IChestOrDrive, ITileStorageMonitorable, IEnergySource
|
||||
public interface IMEChest extends IChestOrDrive, IEnergySource
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
@@ -23,9 +23,12 @@
|
||||
|
||||
package appeng.api.movable;
|
||||
|
||||
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
|
||||
public interface IMovableHandler
|
||||
{
|
||||
|
||||
@@ -35,9 +38,10 @@ public interface IMovableHandler
|
||||
*
|
||||
* @param myClass tile entity class
|
||||
* @param tile tile entity
|
||||
*
|
||||
* @return true if it can handle moving
|
||||
*/
|
||||
boolean canHandle(Class<? extends TileEntity> myClass, TileEntity tile);
|
||||
boolean canHandle( Class<? extends TileEntity> myClass, TileEntity tile );
|
||||
|
||||
/**
|
||||
* request that the handler move the the tile from its current location to
|
||||
@@ -47,21 +51,22 @@ public interface IMovableHandler
|
||||
* Potential Example:
|
||||
*
|
||||
* <pre>
|
||||
* {@code
|
||||
* Chunk c = world.getChunkFromBlockCoords( x, z ); c.setChunkBlockTileEntity( x
|
||||
* & 0xF, y + y, z & 0xF, tile );
|
||||
* {
|
||||
* @code
|
||||
* Chunk c = world.getChunkFromBlockCoords( x, z );
|
||||
* c.setChunkBlockTileEntity( x & 0xF, y + y, z & 0xF, tile );
|
||||
*
|
||||
* if ( c.isChunkLoaded ) { world.addTileEntity( tile ); world.markBlockForUpdate( x,
|
||||
* y, z ); }
|
||||
* if( c.isChunkLoaded )
|
||||
* {
|
||||
* world.addTileEntity( tile );
|
||||
* world.markBlockForUpdate( x, y, z );
|
||||
* }
|
||||
* }
|
||||
* </pre>
|
||||
*
|
||||
* @param tile to be moved tile
|
||||
* @param world world of tile
|
||||
* @param x x coord of tile
|
||||
* @param y y coord of tile
|
||||
* @param z z coord of tile
|
||||
* @param newPosition the new location
|
||||
*/
|
||||
void moveTile(TileEntity tile, World world, int x, int y, int z);
|
||||
|
||||
void moveTile( TileEntity tile, World world, BlockPos newPosition );
|
||||
}
|
||||
@@ -23,9 +23,11 @@
|
||||
|
||||
package appeng.api.movable;
|
||||
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
|
||||
|
||||
/**
|
||||
* Used to determine if a tile is marked as movable, a block will be considered movable, if...
|
||||
*
|
||||
@@ -64,7 +66,7 @@ public interface IMovableRegistry
|
||||
*
|
||||
* @param blk block
|
||||
*/
|
||||
void blacklistBlock(Block blk);
|
||||
void blacklistBlock( Block blk );
|
||||
|
||||
/**
|
||||
* White list your tile entity with the registry.
|
||||
@@ -74,27 +76,28 @@ public interface IMovableRegistry
|
||||
*
|
||||
* If you tile is handled with IMovableHandler or IMovableTile you do not need to white list it.
|
||||
*/
|
||||
void whiteListTileEntity(Class<? extends TileEntity> c);
|
||||
void whiteListTileEntity( Class<? extends TileEntity> c );
|
||||
|
||||
/**
|
||||
* @param te to be moved tile entity
|
||||
*
|
||||
* @return true if the tile has accepted your request to move it
|
||||
*/
|
||||
boolean askToMove(TileEntity te);
|
||||
boolean askToMove( TileEntity te );
|
||||
|
||||
/**
|
||||
* tells the tile you are done moving it.
|
||||
*
|
||||
* @param te moved tile entity
|
||||
*/
|
||||
void doneMoving(TileEntity te);
|
||||
void doneMoving( TileEntity te );
|
||||
|
||||
/**
|
||||
* add a new handler movable handler.
|
||||
*
|
||||
* @param handler moving handler
|
||||
*/
|
||||
void addHandler(IMovableHandler handler);
|
||||
void addHandler( IMovableHandler handler );
|
||||
|
||||
/**
|
||||
* handlers are used to perform movement, this allows you to override AE's internal version.
|
||||
@@ -102,9 +105,10 @@ public interface IMovableRegistry
|
||||
* only valid after askToMove(...) = true
|
||||
*
|
||||
* @param te tile entity
|
||||
*
|
||||
* @return moving handler of tile entity
|
||||
*/
|
||||
IMovableHandler getHandler(TileEntity te);
|
||||
IMovableHandler getHandler( TileEntity te );
|
||||
|
||||
/**
|
||||
* @return a copy of the default handler
|
||||
@@ -113,8 +117,8 @@ public interface IMovableRegistry
|
||||
|
||||
/**
|
||||
* @param blk block
|
||||
*
|
||||
* @return true if this block is blacklisted
|
||||
*/
|
||||
boolean isBlacklisted(Block blk);
|
||||
|
||||
boolean isBlacklisted( Block blk );
|
||||
}
|
||||
@@ -56,7 +56,8 @@ public enum GridFlags
|
||||
DENSE_CAPACITY,
|
||||
|
||||
/**
|
||||
* This block is part of a multiblock, used in conjunction with REQUIRE_CHANNEL, and {@link IGridMultiblock} see this
|
||||
* This block is part of a multiblock, used in conjunction with REQUIRE_CHANNEL, and {@link IGridMultiblock} see
|
||||
* this
|
||||
* interface for details.
|
||||
*/
|
||||
MULTIBLOCK,
|
||||
|
||||
@@ -29,5 +29,5 @@ public enum GridNotification
|
||||
/**
|
||||
* the visible connections for this node have changed, useful for cable.
|
||||
*/
|
||||
ConnectionsChanged,
|
||||
CONNECTIONS_CHANGED,
|
||||
}
|
||||
|
||||
@@ -23,9 +23,11 @@
|
||||
|
||||
package appeng.api.networking;
|
||||
|
||||
|
||||
import appeng.api.networking.events.MENetworkEvent;
|
||||
import appeng.api.util.IReadOnlyCollection;
|
||||
|
||||
|
||||
/**
|
||||
* Gives you access to Grid based information.
|
||||
*
|
||||
@@ -38,6 +40,7 @@ public interface IGrid
|
||||
* Get Access to various grid modules
|
||||
*
|
||||
* @param iface face
|
||||
*
|
||||
* @return the IGridCache you requested.
|
||||
*/
|
||||
<C extends IGridCache> C getCache( Class<? extends IGridCache> iface );
|
||||
@@ -45,8 +48,8 @@ public interface IGrid
|
||||
/**
|
||||
* Post an event into the network event bus.
|
||||
*
|
||||
* @param ev
|
||||
* - event to post
|
||||
* @param ev - event to post
|
||||
*
|
||||
* @return returns ev back to original poster
|
||||
*/
|
||||
MENetworkEvent postEvent( MENetworkEvent ev );
|
||||
@@ -54,8 +57,8 @@ public interface IGrid
|
||||
/**
|
||||
* Post an event into the network event bus, but direct it at a single node.
|
||||
*
|
||||
* @param ev
|
||||
* event to post
|
||||
* @param ev event to post
|
||||
*
|
||||
* @return returns ev back to original poster
|
||||
*/
|
||||
MENetworkEvent postEventTo( IGridNode node, MENetworkEvent ev );
|
||||
@@ -72,6 +75,7 @@ public interface IGrid
|
||||
* Get machines on the network.
|
||||
*
|
||||
* @param gridHostClass class of the grid host
|
||||
*
|
||||
* @return IMachineSet of all nodes belonging to hosts of specified class.
|
||||
*/
|
||||
IMachineSet getMachines( Class<? extends IGridHost> gridHostClass );
|
||||
@@ -90,5 +94,4 @@ public interface IGrid
|
||||
* @return the node considered the pivot point of the grid.
|
||||
*/
|
||||
IGridNode getPivot();
|
||||
|
||||
}
|
||||
}
|
||||
@@ -27,12 +27,13 @@ package appeng.api.networking;
|
||||
import java.util.EnumSet;
|
||||
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
import net.minecraft.util.EnumFacing;
|
||||
|
||||
import appeng.api.parts.IPart;
|
||||
import appeng.api.util.AEColor;
|
||||
import appeng.api.util.DimensionalCoord;
|
||||
|
||||
|
||||
/**
|
||||
* An Implementation is required to create your node for IGridHost
|
||||
*
|
||||
@@ -79,7 +80,7 @@ public interface IGridBlock
|
||||
/**
|
||||
* Notifies your IGridBlock that changes were made to your connections
|
||||
*/
|
||||
void onGridNotification(GridNotification notification);
|
||||
void onGridNotification( GridNotification notification );
|
||||
|
||||
/**
|
||||
* Update Blocks network/connection/booting status. grid,
|
||||
@@ -93,7 +94,7 @@ public interface IGridBlock
|
||||
* Determine which sides of the block can be connected too, only used when isWorldAccessible returns true, not used
|
||||
* for {@link IPart} implementations.
|
||||
*/
|
||||
EnumSet<ForgeDirection> getConnectableSides();
|
||||
EnumSet<EnumFacing> getConnectableSides();
|
||||
|
||||
/**
|
||||
* @return the IGridHost for the node, this will be an IGridPart or a TileEntity generally speaking.
|
||||
|
||||
@@ -23,14 +23,13 @@
|
||||
|
||||
package appeng.api.networking;
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* Allows you to create a network wise service, AE2 uses these for providing
|
||||
* item, spatial, and tunnel services.
|
||||
*
|
||||
* Any Class that implements this, should have a public default constructor that
|
||||
* takes a single argument of type IGrid.
|
||||
*
|
||||
*/
|
||||
public interface IGridCache
|
||||
{
|
||||
@@ -38,7 +37,6 @@ public interface IGridCache
|
||||
/**
|
||||
* Called each tick for the network, allows you to have active network wide
|
||||
* behaviors.
|
||||
*
|
||||
*/
|
||||
void onUpdateTick();
|
||||
|
||||
@@ -52,7 +50,7 @@ public interface IGridCache
|
||||
* @param gridNode removed from that grid
|
||||
* @param machine to be removed machine
|
||||
*/
|
||||
void removeNode(IGridNode gridNode, IGridHost machine);
|
||||
void removeNode( IGridNode gridNode, IGridHost machine );
|
||||
|
||||
/**
|
||||
* informs you cache that a machine was added to the grid.
|
||||
@@ -64,7 +62,7 @@ public interface IGridCache
|
||||
* @param gridNode added to grid node
|
||||
* @param machine to be added machine
|
||||
*/
|
||||
void addNode(IGridNode gridNode, IGridHost machine);
|
||||
void addNode( IGridNode gridNode, IGridHost machine );
|
||||
|
||||
/**
|
||||
* Called when a grid splits into two grids, AE will call a split as it
|
||||
@@ -73,7 +71,7 @@ public interface IGridCache
|
||||
*
|
||||
* @param destinationStorage storage which receives half of old grid
|
||||
*/
|
||||
void onSplit(IGridStorage destinationStorage);
|
||||
void onSplit( IGridStorage destinationStorage );
|
||||
|
||||
/**
|
||||
* Called when two grids merge into one, AE will call a join as it
|
||||
@@ -82,13 +80,12 @@ public interface IGridCache
|
||||
*
|
||||
* @param sourceStorage old storage
|
||||
*/
|
||||
void onJoin(IGridStorage sourceStorage);
|
||||
void onJoin( IGridStorage sourceStorage );
|
||||
|
||||
/**
|
||||
* Called when saving changes,
|
||||
*
|
||||
* @param destinationStorage storage
|
||||
*/
|
||||
void populateGridStorage(IGridStorage destinationStorage);
|
||||
|
||||
void populateGridStorage( IGridStorage destinationStorage );
|
||||
}
|
||||
|
||||
@@ -23,7 +23,9 @@
|
||||
|
||||
package appeng.api.networking;
|
||||
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
|
||||
import appeng.api.util.AEPartLocation;
|
||||
|
||||
|
||||
/**
|
||||
* Access to AE's internal grid connections.
|
||||
@@ -40,17 +42,19 @@ public interface IGridConnection
|
||||
* lets you get the opposing node of the connection by passing your own node.
|
||||
*
|
||||
* @param gridNode current grid node
|
||||
*
|
||||
* @return the IGridNode which represents the opposite side of the connection.
|
||||
*/
|
||||
IGridNode getOtherSide(IGridNode gridNode);
|
||||
IGridNode getOtherSide( IGridNode gridNode );
|
||||
|
||||
/**
|
||||
* determine the direction of the connection based on your node.
|
||||
*
|
||||
* @param gridNode current grid node
|
||||
*
|
||||
* @return the direction of the connection, only valid for in world connections.
|
||||
*/
|
||||
ForgeDirection getDirection(IGridNode gridNode);
|
||||
AEPartLocation getDirection( IGridNode gridNode );
|
||||
|
||||
/**
|
||||
* by destroying a connection you may create new grids, and trigger un-expected behavior, you should only destroy
|
||||
@@ -77,5 +81,4 @@ public interface IGridConnection
|
||||
* @return how many channels pass over this connections.
|
||||
*/
|
||||
int getUsedChannels();
|
||||
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user