diff --git a/LICENSE b/LICENSE deleted file mode 100644 index 2e0f5f28..00000000 --- a/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2025-2026 R3944Realms - -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. \ No newline at end of file diff --git a/LICENSES/ASSETS-LICENSE b/LICENSES/ASSETS-LICENSE new file mode 100644 index 00000000..cbe5ad16 --- /dev/null +++ b/LICENSES/ASSETS-LICENSE @@ -0,0 +1,437 @@ +Attribution-NonCommercial-ShareAlike 4.0 International + +======================================================================= + +Creative Commons Corporation ("Creative Commons") is not a law firm and +does not provide legal services or legal advice. Distribution of +Creative Commons public licenses does not create a lawyer-client or +other relationship. Creative Commons makes its licenses and related +information available on an "as-is" basis. Creative Commons gives no +warranties regarding its licenses, any material licensed under their +terms and conditions, or any related information. Creative Commons +disclaims all liability for damages resulting from their use to the +fullest extent possible. + +Using Creative Commons Public Licenses + +Creative Commons public licenses provide a standard set of terms and +conditions that creators and other rights holders may use to share +original works of authorship and other material subject to copyright +and certain other rights specified in the public license below. The +following considerations are for informational purposes only, are not +exhaustive, and do not form part of our licenses. + + Considerations for licensors: Our public licenses are + intended for use by those authorized to give the public + permission to use material in ways otherwise restricted by + copyright and certain other rights. Our licenses are + irrevocable. Licensors should read and understand the terms + and conditions of the license they choose before applying it. + Licensors should also secure all rights necessary before + applying our licenses so that the public can reuse the + material as expected. Licensors should clearly mark any + material not subject to the license. This includes other CC- + licensed material, or material used under an exception or + limitation to copyright. More considerations for licensors: + wiki.creativecommons.org/Considerations_for_licensors + + Considerations for the public: By using one of our public + licenses, a licensor grants the public permission to use the + licensed material under specified terms and conditions. If + the licensor's permission is not necessary for any reason--for + example, because of any applicable exception or limitation to + copyright--then that use is not regulated by the license. Our + licenses grant only permissions under copyright and certain + other rights that a licensor has authority to grant. Use of + the licensed material may still be restricted for other + reasons, including because others have copyright or other + rights in the material. A licensor may make special requests, + such as asking that all changes be marked or described. + Although not required by our licenses, you are encouraged to + respect those requests where reasonable. More considerations + for the public: + wiki.creativecommons.org/Considerations_for_licensees + +======================================================================= + +Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International +Public License + +By exercising the Licensed Rights (defined below), You accept and agree +to be bound by the terms and conditions of this Creative Commons +Attribution-NonCommercial-ShareAlike 4.0 International Public License +("Public License"). To the extent this Public License may be +interpreted as a contract, You are granted the Licensed Rights in +consideration of Your acceptance of these terms and conditions, and the +Licensor grants You such rights in consideration of benefits the +Licensor receives from making the Licensed Material available under +these terms and conditions. + + +Section 1 -- Definitions. + + a. Adapted Material means material subject to Copyright and Similar + Rights that is derived from or based upon the Licensed Material + and in which the Licensed Material is translated, altered, + arranged, transformed, or otherwise modified in a manner requiring + permission under the Copyright and Similar Rights held by the + Licensor. For purposes of this Public License, where the Licensed + Material is a musical work, performance, or sound recording, + Adapted Material is always produced where the Licensed Material is + synched in timed relation with a moving image. + + b. Adapter's License means the license You apply to Your Copyright + and Similar Rights in Your contributions to Adapted Material in + accordance with the terms and conditions of this Public License. + + c. BY-NC-SA Compatible License means a license listed at + creativecommons.org/compatiblelicenses, approved by Creative + Commons as essentially the equivalent of this Public License. + + d. Copyright and Similar Rights means copyright and/or similar rights + closely related to copyright including, without limitation, + performance, broadcast, sound recording, and Sui Generis Database + Rights, without regard to how the rights are labeled or + categorized. For purposes of this Public License, the rights + specified in Section 2(b)(1)-(2) are not Copyright and Similar + Rights. + + e. Effective Technological Measures means those measures that, in the + absence of proper authority, may not be circumvented under laws + fulfilling obligations under Article 11 of the WIPO Copyright + Treaty adopted on December 20, 1996, and/or similar international + agreements. + + f. Exceptions and Limitations means fair use, fair dealing, and/or + any other exception or limitation to Copyright and Similar Rights + that applies to Your use of the Licensed Material. + + g. License Elements means the license attributes listed in the name + of a Creative Commons Public License. The License Elements of this + Public License are Attribution, NonCommercial, and ShareAlike. + + h. Licensed Material means the artistic or literary work, database, + or other material to which the Licensor applied this Public + License. + + i. Licensed Rights means the rights granted to You subject to the + terms and conditions of this Public License, which are limited to + all Copyright and Similar Rights that apply to Your use of the + Licensed Material and that the Licensor has authority to license. + + j. Licensor means the individual(s) or entity(ies) granting rights + under this Public License. + + k. NonCommercial means not primarily intended for or directed towards + commercial advantage or monetary compensation. For purposes of + this Public License, the exchange of the Licensed Material for + other material subject to Copyright and Similar Rights by digital + file-sharing or similar means is NonCommercial provided there is + no payment of monetary compensation in connection with the + exchange. + + l. Share means to provide material to the public by any means or + process that requires permission under the Licensed Rights, such + as reproduction, public display, public performance, distribution, + dissemination, communication, or importation, and to make material + available to the public including in ways that members of the + public may access the material from a place and at a time + individually chosen by them. + + m. Sui Generis Database Rights means rights other than copyright + resulting from Directive 96/9/EC of the European Parliament and of + the Council of 11 March 1996 on the legal protection of databases, + as amended and/or succeeded, as well as other essentially + equivalent rights anywhere in the world. + + n. You means the individual or entity exercising the Licensed Rights + under this Public License. Your has a corresponding meaning. + + +Section 2 -- Scope. + + a. License grant. + + 1. Subject to the terms and conditions of this Public License, + the Licensor hereby grants You a worldwide, royalty-free, + non-sublicensable, non-exclusive, irrevocable license to + exercise the Licensed Rights in the Licensed Material to: + + a. reproduce and Share the Licensed Material, in whole or + in part, for NonCommercial purposes only; and + + b. produce, reproduce, and Share Adapted Material for + NonCommercial purposes only. + + 2. Exceptions and Limitations. For the avoidance of doubt, where + Exceptions and Limitations apply to Your use, this Public + License does not apply, and You do not need to comply with + its terms and conditions. + + 3. Term. The term of this Public License is specified in Section + 6(a). + + 4. Media and formats; technical modifications allowed. The + Licensor authorizes You to exercise the Licensed Rights in + all media and formats whether now known or hereafter created, + and to make technical modifications necessary to do so. The + Licensor waives and/or agrees not to assert any right or + authority to forbid You from making technical modifications + necessary to exercise the Licensed Rights, including + technical modifications necessary to circumvent Effective + Technological Measures. For purposes of this Public License, + simply making modifications authorized by this Section 2(a) + (4) never produces Adapted Material. + + 5. Downstream recipients. + + a. Offer from the Licensor -- Licensed Material. Every + recipient of the Licensed Material automatically + receives an offer from the Licensor to exercise the + Licensed Rights under the terms and conditions of this + Public License. + + b. Additional offer from the Licensor -- Adapted Material. + Every recipient of Adapted Material from You + automatically receives an offer from the Licensor to + exercise the Licensed Rights in the Adapted Material + under the conditions of the Adapter's License You apply. + + c. No downstream restrictions. You may not offer or impose + any additional or different terms or conditions on, or + apply any Effective Technological Measures to, the + Licensed Material if doing so restricts exercise of the + Licensed Rights by any recipient of the Licensed + Material. + + 6. No endorsement. Nothing in this Public License constitutes or + may be construed as permission to assert or imply that You + are, or that Your use of the Licensed Material is, connected + with, or sponsored, endorsed, or granted official status by, + the Licensor or others designated to receive attribution as + provided in Section 3(a)(1)(A)(i). + + b. Other rights. + + 1. Moral rights, such as the right of integrity, are not + licensed under this Public License, nor are publicity, + privacy, and/or other similar personality rights; however, to + the extent possible, the Licensor waives and/or agrees not to + assert any such rights held by the Licensor to the limited + extent necessary to allow You to exercise the Licensed + Rights, but not otherwise. + + 2. Patent and trademark rights are not licensed under this + Public License. + + 3. To the extent possible, the Licensor waives any right to + collect royalties from You for the exercise of the Licensed + Rights, whether directly or through a collecting society + under any voluntary or waivable statutory or compulsory + licensing scheme. In all other cases the Licensor expressly + reserves any right to collect such royalties, including when + the Licensed Material is used other than for NonCommercial + purposes. + + +Section 3 -- License Conditions. + +Your exercise of the Licensed Rights is expressly made subject to the +following conditions. + + a. Attribution. + + 1. If You Share the Licensed Material (including in modified + form), You must: + + a. retain the following if it is supplied by the Licensor + with the Licensed Material: + + i. identification of the creator(s) of the Licensed + Material and any others designated to receive + attribution, in any reasonable manner requested by + the Licensor (including by pseudonym if + designated); + + ii. a copyright notice; + + iii. a notice that refers to this Public License; + + iv. a notice that refers to the disclaimer of + warranties; + + v. a URI or hyperlink to the Licensed Material to the + extent reasonably practicable; + + b. indicate if You modified the Licensed Material and + retain an indication of any previous modifications; and + + c. indicate the Licensed Material is licensed under this + Public License, and include the text of, or the URI or + hyperlink to, this Public License. + + 2. You may satisfy the conditions in Section 3(a)(1) in any + reasonable manner based on the medium, means, and context in + which You Share the Licensed Material. For example, it may be + reasonable to satisfy the conditions by providing a URI or + hyperlink to a resource that includes the required + information. + 3. If requested by the Licensor, You must remove any of the + information required by Section 3(a)(1)(A) to the extent + reasonably practicable. + + b. ShareAlike. + + In addition to the conditions in Section 3(a), if You Share + Adapted Material You produce, the following conditions also apply. + + 1. The Adapter's License You apply must be a Creative Commons + license with the same License Elements, this version or + later, or a BY-NC-SA Compatible License. + + 2. You must include the text of, or the URI or hyperlink to, the + Adapter's License You apply. You may satisfy this condition + in any reasonable manner based on the medium, means, and + context in which You Share Adapted Material. + + 3. You may not offer or impose any additional or different terms + or conditions on, or apply any Effective Technological + Measures to, Adapted Material that restrict exercise of the + rights granted under the Adapter's License You apply. + + +Section 4 -- Sui Generis Database Rights. + +Where the Licensed Rights include Sui Generis Database Rights that +apply to Your use of the Licensed Material: + + a. for the avoidance of doubt, Section 2(a)(1) grants You the right + to extract, reuse, reproduce, and Share all or a substantial + portion of the contents of the database for NonCommercial purposes + only; + + b. if You include all or a substantial portion of the database + contents in a database in which You have Sui Generis Database + Rights, then the database in which You have Sui Generis Database + Rights (but not its individual contents) is Adapted Material, + including for purposes of Section 3(b); and + + c. You must comply with the conditions in Section 3(a) if You Share + all or a substantial portion of the contents of the database. + +For the avoidance of doubt, this Section 4 supplements and does not +replace Your obligations under this Public License where the Licensed +Rights include other Copyright and Similar Rights. + + +Section 5 -- Disclaimer of Warranties and Limitation of Liability. + + a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE + EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS + AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF + ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, + IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, + WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR + PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, + ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT + KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT + ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. + + b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE + TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, + NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, + INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, + COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR + USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR + DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR + IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. + + c. The disclaimer of warranties and limitation of liability provided + above shall be interpreted in a manner that, to the extent + possible, most closely approximates an absolute disclaimer and + waiver of all liability. + + +Section 6 -- Term and Termination. + + a. This Public License applies for the term of the Copyright and + Similar Rights licensed here. However, if You fail to comply with + this Public License, then Your rights under this Public License + terminate automatically. + + b. Where Your right to use the Licensed Material has terminated under + Section 6(a), it reinstates: + + 1. automatically as of the date the violation is cured, provided + it is cured within 30 days of Your discovery of the + violation; or + + 2. upon express reinstatement by the Licensor. + + For the avoidance of doubt, this Section 6(b) does not affect any + right the Licensor may have to seek remedies for Your violations + of this Public License. + + c. For the avoidance of doubt, the Licensor may also offer the + Licensed Material under separate terms or conditions or stop + distributing the Licensed Material at any time; however, doing so + will not terminate this Public License. + + d. Sections 1, 5, 6, 7, and 8 survive termination of this Public + License. + + +Section 7 -- Other Terms and Conditions. + + a. The Licensor shall not be bound by any additional or different + terms or conditions communicated by You unless expressly agreed. + + b. Any arrangements, understandings, or agreements regarding the + Licensed Material not stated herein are separate from and + independent of the terms and conditions of this Public License. + + +Section 8 -- Interpretation. + + a. For the avoidance of doubt, this Public License does not, and + shall not be interpreted to, reduce, limit, restrict, or impose + conditions on any use of the Licensed Material that could lawfully + be made without permission under this Public License. + + b. To the extent possible, if any provision of this Public License is + deemed unenforceable, it shall be automatically reformed to the + minimum extent necessary to make it enforceable. If the provision + cannot be reformed, it shall be severed from this Public License + without affecting the enforceability of the remaining terms and + conditions. + + c. No term or condition of this Public License will be waived and no + failure to comply consented to unless expressly agreed to by the + Licensor. + + d. Nothing in this Public License constitutes or may be interpreted + as a limitation upon, or waiver of, any privileges and immunities + that apply to the Licensor or You, including from the legal + processes of any jurisdiction or authority. + +======================================================================= + +Creative Commons is not a party to its public +licenses. Notwithstanding, Creative Commons may elect to apply one of +its public licenses to material it publishes and in those instances +will be considered the “Licensor.” The text of the Creative Commons +public licenses is dedicated to the public domain under the CC0 Public +Domain Dedication. Except for the limited purpose of indicating that +material is shared under a Creative Commons public license or as +otherwise permitted by the Creative Commons policies published at +creativecommons.org/policies, Creative Commons does not authorize the +use of the trademark "Creative Commons" or any other trademark or logo +of Creative Commons without its prior written consent including, +without limitation, in connection with any unauthorized modifications +to any of its public licenses or any other arrangements, +understandings, or agreements concerning use of licensed material. For +the avoidance of doubt, this paragraph does not form part of the +public licenses. + +Creative Commons may be contacted at creativecommons.org. diff --git a/LICENSES/CODE-LICENSE b/LICENSES/CODE-LICENSE new file mode 100644 index 00000000..7a4a3ea2 --- /dev/null +++ b/LICENSES/CODE-LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. \ No newline at end of file diff --git a/README.md b/README.md index 4bd3011c..3fe52529 100644 --- a/README.md +++ b/README.md @@ -1,22 +1,57 @@ -# Erotic Dungeon Game +# 地牢游戏许可证说明 +## 1. 整体项目许可证 - CC BY-NC-SA 4.0 +本作品(作为整体)采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 +**您可以自由地:** +- 共享 — 在任何媒介以任何形式复制、发行本作品 +- 演绎 — 修改、转换或以本作品为基础进行创作 +**惟须遵守下列条件:** +- 署名 — 您必须给出适当的署名,提供指向本许可协议的链接 +- 非商业性使用 — 您不得将本作品用于商业目的 +- 相同方式共享 — 再创作的作品必须使用相同许可证 -# 模型与材质许可声明 +**不得增加额外限制** -## 1. 3D模型许可 -本项目的3D模型部分由 [LTD玩家] 创建,采用 [CC BY 4.0] 许可。 -**条款摘要**: -- 可自由使用、修改、分发本模型。 -- 需保留原始版权声明(见下方示例)。 +完整许可证:https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode -## 2. 材质许可 +## 2. 代码部分许可证 - Apache 2.0 +项目的所有源代码、配置文件和构建脚本采用 Apache License 2.0 许可证。 + +**您可以:** +- 自由复制、修改、分发 +- 用于商业目的 +- 申请专利授权 +- 放置商标 + +**条件:** +- 保留原始版权声明 +- 在修改的文件中说明更改 +- 不得使用项目商标 + +完整许可证:https://www.apache.org/licenses/LICENSE-2.0 + +## 3. Minecraft材质声明 本项目使用的部分材质隶属Minecraft,归Mojang Studios所有,遵循《Mojang最终用户许可协议》(EULA)。 -- 材质文件不得单独分发。 -- 仅限在《我的世界》相关生态中使用。 + +- 材质文件不得单独分发 +- 仅限在《我的世界》相关生态中使用 - 官方EULA链接:https://www.minecraft.net/zh-hans/eula -## 版权声明示例 +## 文件分类 -3D模型 © [年份] [你的名字/团队] | 材质 © Mojang Studios \ No newline at end of file +### 适用于 CC BY-NC-SA 4.0: +- 项目作为整体的分发 +- 编译后的二进制文件 +- 打包的模组文件 + +### 适用于 Apache 2.0: +- `src/` 目录下的所有源代码 (*.java, *.kt) +- 配置文件 (*.json, *.toml, *.properties) +- 构建脚本 (build.gradle, *.kts) +- 文档文件 (*.md) + +### 适用于 Mojang EULA: +- 源自Minecraft的材质文件 +- Mojang Studios拥有版权的资源 \ No newline at end of file diff --git a/build.gradle b/build.gradle index 4d38254c..81c7234b 100644 --- a/build.gradle +++ b/build.gradle @@ -264,6 +264,126 @@ processResources { into "build/generated/sources/modMetadata" } +// ===================== 修复 Javadoc 任务 ===================== +tasks.named('javadoc', Javadoc).configure { + group = 'documentation' + description = 'Generates full Javadoc for the mod.' + destinationDir = file("$buildDir/docs/javadoc") + + // 明确指定源与类路径 + source = sourceSets.main.allJava + classpath = sourceSets.main.compileClasspath + + options.encoding = 'UTF-8' + options.charSet = 'UTF-8' + options.links("https://docs.oracle.com/en/java/javase/17/docs/api/") + options.memberLevel = JavadocMemberLevel.PUBLIC + options.addBooleanOption('Xdoclint:none', true) + options.addStringOption('doctitle', "${mod_id} ${minecraft_version} ${mod_version} Javadoc") +} +tasks.register('sourceJar', Jar) { + from(sourceSets.main.allSource) // java + archiveFileName = "${mod_id}-${minecraft_version}-${mod_version}-sources.jar" + archiveClassifier.set("sources") + duplicatesStrategy = DuplicatesStrategy.EXCLUDE + manifest { + attributes([ + 'Specification-Title' : mod_id, + 'Specification-Vendor' : mod_authors, + 'Specification-Version' : '1', + 'Implementation-Title' : project.name, + 'Implementation-Version' : archiveVersion, + 'Implementation-Vendor' : mod_authors, + 'Implementation-Timestamp': new Date().format("yyyy-MM-dd'T'HH:mm:ssZ"), + ]) + } + dependsOn classes +} +// ===================== 普通 Javadoc ===================== +tasks.register('javadocJar', Jar) { + archiveFileName = "${mod_id}-${minecraft_version}-${mod_version}-javadoc.jar" + archiveClassifier.set("javadoc") + from tasks.javadoc + dependsOn tasks.javadoc +} + +// ===================== API Jar(class / java) ===================== +tasks.register('apiJar', Jar) { + archiveFileName = "${mod_id}-${minecraft_version}-${mod_version}-api.jar" + archiveClassifier.set("api") + manifest { + attributes 'FMLModType': 'GAMELIBRARY' + } + + // 打包 class 和 java + from(sourceSets.main.output) { // class + exclude 'assets/**', 'data/**' + } + + include "top/r3944realms/eroticdungeongame/api/**/*" + include "top/r3944realms/eroticdungeongame/api/EroticDungeonGameApi.*" + + dependsOn classes +} +tasks.register('apiSourceJar', Jar) { + archiveFileName = "${mod_id}-${minecraft_version}-${mod_version}-api-sources.jar" + archiveClassifier.set("api-sources") + manifest { + attributes 'FMLModType': 'GAMELIBRARY' + } + + // 打包 class 和 java + from(sourceSets.main.allSource) { // java + exclude 'assets/**', 'data/**' + } + + include "top/r3944realms/eroticdungeongame/api/**/*" + include "top/r3944realms/eroticdungeongame/api/EroticDungeonGameApi.*" + + dependsOn classes +} + +tasks.register('apiJavadocJar', Jar) { + archiveFileName = "${mod_id}-${minecraft_version}-${mod_version}-api-javadoc.jar" + archiveClassifier.set("api-javadoc") + from tasks.javadoc + include "top/r3944realms/superleadrope/api/**/*" + dependsOn tasks.javadoc +} + +tasks.register('apiJavadoc', Javadoc) { + group = 'documentation' + description = 'Generates Javadoc for API package only.' + destinationDir = file("$buildDir/docs/api-javadoc") + + source = sourceSets.main.allJava.matching { + include "top/r3944realms/eroticdungeongame/api/**/*" + include "top/r3944realms/eroticdungeongame/api/EroticDungeonGameApi.java" + } + classpath = sourceSets.main.compileClasspath + options.encoding = 'UTF-8' + options.charSet = 'UTF-8' + options.links("https://docs.oracle.com/en/java/javase/17/docs/api/") + options.memberLevel = JavadocMemberLevel.PUBLIC + options.addBooleanOption('Xdoclint:none', true) + options.addStringOption('doctitle', "${mod_name} API ${mod_version} Javadoc") +} + +// ===================== 许可证配置 ===================== +def licensesDir = file("LICENSES") + +// 创建任务将许可证文件复制到资源目录 +tasks.register("copyLicensesToResources", Copy) { + from licensesDir + into "${buildDir}/resources/main/META-INF/licenses" + include "**/*.txt" + include "**/*.md" + include "**/*.html" + duplicatesStrategy = DuplicatesStrategy.INCLUDE +} + +// 确保在processResources之前运行 +processResources.dependsOn copyLicensesToResources afterEvaluate { tasks.named('reobfJar') { @@ -276,9 +396,125 @@ afterEvaluate { } } } +tasks.named('publish') { + dependsOn build +} +// ===================== 发布配置 ===================== +publishing { + publications { + mavenJava(MavenPublication) { + artifactId = mod_id + artifact reobfJar + artifact sourceJar + artifact javadocJar + artifact apiJar + artifact apiSourceJar + artifact apiJavadocJar + pom { + name = "${mod_id}" + description = "The API for ${mod_name}" + url = "https://github.com/3944Realms/EroticDungeonGame" + // 许可证配置 - 双重许可证 + licenses { + // Apache 2.0 许可证 - 代码部分 + license { + name = 'Apache License 2.0' + url = 'https://www.apache.org/licenses/LICENSE-2.0.html' + distribution = 'repo' + comments = ''' + Applies to: + - All Java source code (*.java) + - Kotlin source code (*.kt) + - Configuration files (*.json, *.toml, *.properties) + - Build scripts (build.gradle, gradle.properties) + - Documentation files (*.md) + + You may: + 1. Use the software for any purpose + 2. Modify and distribute the software + 3. Sublicense the software + 4. Patent grant included + + Conditions: + 1. Include the original license and copyright notice + 2. State significant changes made + 3. Do not use trademarks without permission + ''' + } + + // CC BY-NC-SA 4.0 - 美术资源部分 + license { + name = 'Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International' + url = 'https://creativecommons.org/licenses/by-nc-sa/4.0/' + distribution = 'repo' + comments = ''' + Applies to: + - All graphical assets in /assets/ directory + - Textures and images (*.png, *.jpg) + - 3D models (*.obj, *.fbx) + - Audio files (*.ogg, *.mp3) + - Animations + - UI graphics and icons + + You may: + 1. Share — copy and redistribute the material + 2. Adapt — remix, transform, and build upon the material + + Under the following terms: + 1. Attribution — You must give appropriate credit + 2. NonCommercial — You may not use the material for commercial purposes + 3. ShareAlike — If you remix, you must license under identical terms + 4. No additional restrictions — You may not apply legal terms or technological measures + ''' + } + } + + // 开发者信息 + developers { + developer { + id = "${mod_id}" + name = mod_authors + email = 'f256198830@hotmail.com' + organization = '3944Realms' + organizationUrl = 'https://github.com/3944Realms' + } + } + + // SCM 信息 + scm { + connection = 'scm:git:git://github.com/3944Realms/EroticDungeonGame.git' + developerConnection = 'scm:git:ssh://github.com/3944Realms/EroticDungeonGame.git' + url = 'https://github.com/3944Realms/EroticDungeonGame' + tag = 'HEAD' + } + + // 问题追踪 + issueManagement { + system = 'GitHub Issues' + url = 'https://github.com/3944Realms/EroticDungeonGame/issues' + } + } + } + } + + repositories { + maven { + name = "local" + url = layout.buildDirectory.dir("repo") + } + maven { + name = 'LTDNexus' + url = 'https://nexus.bot.leisuretimedock.top/repository/maven-releases/' + credentials { + username = System.getenv('LTDNexusUsername') ?: '' + password = System.getenv('LTDNexusPassword') ?: '' + } + } + } +} tasks.named('clean') { delete fileTree(dir: "${project.projectDir}/mcmodsrepo") diff --git a/gradle.properties b/gradle.properties index 006341f8..8ef0e6a2 100644 --- a/gradle.properties +++ b/gradle.properties @@ -41,9 +41,9 @@ mod_id=eroticdungeongame # The human-readable display name for the mod. mod_name=Erotic Dungeon Game # The license of the mod. Review your options at https://choosealicense.com/. All Rights Reserved is the default. -mod_license=CC BY-NC-SA 4.0 +mod_license=Apache 2.0, CC BY-NC-SA 4.0 # The mod version. See https://semver.org/ -mod_version=26H2 +mod_version=26H4 # The group ID for the mod. It is only important when publishing as an artifact to a Maven repository. # This should match the base package used for the mod sources. # See https://maven.apache.org/guides/mini/guide-naming-conventions.html diff --git a/src/main/java/top/r3944realms/eroticdungeongame/EroticDungeon.java b/src/main/java/top/r3944realms/eroticdungeongame/EroticDungeon.java index f9d64550..f91eafe6 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/EroticDungeon.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/EroticDungeon.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/api/EroticDungeonGameApi.java b/src/main/java/top/r3944realms/eroticdungeongame/api/EroticDungeonGameApi.java index 24971a26..ba10ebd1 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/api/EroticDungeonGameApi.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/api/EroticDungeonGameApi.java @@ -1,21 +1,42 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.api; +import net.minecraftforge.common.capabilities.Capability; +import net.minecraftforge.common.capabilities.CapabilityManager; +import net.minecraftforge.common.capabilities.CapabilityToken; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import top.r3944realms.eroticdungeongame.content.capability.AbstractPlayerDungeonData; +/** + * The type Erotic dungeon game api. + */ public class EroticDungeonGameApi { + /** + * The constant LOGGER. + */ public static final Logger LOGGER = LoggerFactory.getLogger(EroticDungeonGameApi.class); + /** + * The constant MOD_ID. + */ public static final String MOD_ID = "eroticdungeongame"; //Erotic Dungeon Game + /** + * The constant PLAYER_DUNGEON_DATA_CAP. + */ + public static final Capability PLAYER_DUNGEON_DATA_CAP = CapabilityManager.get(new CapabilityToken<>() {}); } diff --git a/src/main/java/top/r3944realms/eroticdungeongame/api/capability/IPlayerDungeonData.java b/src/main/java/top/r3944realms/eroticdungeongame/api/capability/IPlayerDungeonData.java new file mode 100644 index 00000000..ee37d496 --- /dev/null +++ b/src/main/java/top/r3944realms/eroticdungeongame/api/capability/IPlayerDungeonData.java @@ -0,0 +1,82 @@ +/* + * Copyright 2025-2026 R3944Realms + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package top.r3944realms.eroticdungeongame.api.capability; + +import net.minecraft.core.BlockPos; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.phys.AABB; + +/** + * The interface Player dungeon data. + */ +public interface IPlayerDungeonData { + /** + * Sets device main block pos. + * + * @param pos the pos + */ + void setDeviceMainBlockPos(BlockPos pos); + + /** + * Gets device main block pos. + * + * @return the device main block pos + */ + BlockPos getDeviceMainBlockPos(); + + /** + * Sets animation resource location. + * + * @param location the location + */ + void setAnimationResourceLocation(ResourceLocation location); + + /** + * Gets animation resource location. + * + * @return the animation resource location + */ + ResourceLocation getAnimationResourceLocation(); + + /** + * Gets player bounding box. + * + * @return the player bounding box + */ + AABB getPlayerBoundingBox(); + + /** + * Sets player bounding box. + * + * @param boundingBox the bounding box + */ + void setPlayerBoundingBox(AABB boundingBox); + + /** + * Gets eye height. + * + * @return the eye height + */ + float getEyeHeight(); + + /** + * Sets eye height. + * + * @param eyeHeight the eye height + */ + void setEyeHeight(float eyeHeight); +} diff --git a/src/main/java/top/r3944realms/eroticdungeongame/api/event/RideDeviceEvent.java b/src/main/java/top/r3944realms/eroticdungeongame/api/event/RideDeviceEvent.java index 3194c591..0a962aaa 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/api/event/RideDeviceEvent.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/api/event/RideDeviceEvent.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.api.event; @@ -21,12 +25,23 @@ import net.minecraftforge.eventbus.api.Cancelable; import net.minecraftforge.eventbus.api.Event; import net.minecraftforge.fml.event.IModBusEvent; +/** + * The type Ride device event. + */ public abstract class RideDeviceEvent extends Event implements IModBusEvent { private final Player target; private final BlockPos deviceBlockPos; private final BlockState deviceBlockState; private final BlockEntity seatBlockEntity; + /** + * Instantiates a new Ride device event. + * + * @param target the target + * @param deviceBlockPos the device block pos + * @param deviceBlockState the device block state + * @param seatBlockEntity the seat block entity + */ protected RideDeviceEvent(Player target, BlockPos deviceBlockPos, BlockState deviceBlockState, BlockEntity seatBlockEntity) { this.target = target; this.deviceBlockPos = deviceBlockPos; @@ -34,35 +49,88 @@ public abstract class RideDeviceEvent extends Event implements IModBusEvent { this.seatBlockEntity = seatBlockEntity; } + /** + * Gets device block state. + * + * @return the device block state + */ public BlockState getDeviceBlockState() { return deviceBlockState; } + /** + * Gets target. + * + * @return the target + */ public Player getTarget() { return target; } + /** + * Gets device block pos. + * + * @return the device block pos + */ public BlockPos getDeviceBlockPos() { return deviceBlockPos; } + /** + * Gets seat block entity. + * + * @return the seat block entity + */ public BlockEntity getSeatBlockEntity() { return seatBlockEntity; } + /** + * The type Pre. + */ @Cancelable public static class Pre extends RideDeviceEvent { + /** + * Instantiates a new Pre. + * + * @param target the target + * @param deviceBlockPos the device block pos + * @param deviceBlockState the device block state + * @param seatBlockEntity the seat block entity + */ public Pre(Player target, BlockPos deviceBlockPos, BlockState deviceBlockState, BlockEntity seatBlockEntity) { super(target, deviceBlockPos, deviceBlockState, seatBlockEntity); } } + /** + * The type Post. + */ public static class Post extends RideDeviceEvent { + /** + * The Seat entity. + */ public final Entity seatEntity; + + /** + * Instantiates a new Post. + * + * @param target the target + * @param deviceBlockPos the device block pos + * @param deviceBlockState the device block state + * @param seatBlockEntity the seat block entity + * @param seatEntity the seat entity + */ public Post(Player target, BlockPos deviceBlockPos, BlockState deviceBlockState, BlockEntity seatBlockEntity, Entity seatEntity) { super(target, deviceBlockPos, deviceBlockState, seatBlockEntity); this.seatEntity = seatEntity; } + + /** + * Gets seat entity. + * + * @return the seat entity + */ public Entity getSeatEntity() { return seatEntity; } diff --git a/src/main/java/top/r3944realms/eroticdungeongame/api/event/UnRideDeviceEvent.java b/src/main/java/top/r3944realms/eroticdungeongame/api/event/UnRideDeviceEvent.java index fe697d92..aa378bd2 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/api/event/UnRideDeviceEvent.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/api/event/UnRideDeviceEvent.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.api.event; @@ -21,12 +25,23 @@ import net.minecraftforge.eventbus.api.Cancelable; import net.minecraftforge.eventbus.api.Event; import net.minecraftforge.fml.event.IModBusEvent; +/** + * The type Un ride device event. + */ public abstract class UnRideDeviceEvent extends Event implements IModBusEvent { private final Player target; private final BlockPos deviceBlockPos; private final BlockState deviceBlockState; private final BlockEntity seatBlockEntity; + /** + * Instantiates a new Un ride device event. + * + * @param target the target + * @param deviceBlockPos the device block pos + * @param deviceBlockState the device block state + * @param seatBlockEntity the seat block entity + */ protected UnRideDeviceEvent(Player target, BlockPos deviceBlockPos, BlockState deviceBlockState, BlockEntity seatBlockEntity) { this.target = target; this.deviceBlockPos = deviceBlockPos; @@ -34,39 +49,90 @@ public abstract class UnRideDeviceEvent extends Event implements IModBusEvent { this.seatBlockEntity = seatBlockEntity; } + /** + * Gets device block state. + * + * @return the device block state + */ public BlockState getDeviceBlockState() { return deviceBlockState; } + /** + * Gets target. + * + * @return the target + */ public Player getTarget() { return target; } + /** + * Gets device block pos. + * + * @return the device block pos + */ public BlockPos getDeviceBlockPos() { return deviceBlockPos; } + /** + * Gets seat block entity. + * + * @return the seat block entity + */ public BlockEntity getSeatBlockEntity() { return seatBlockEntity; } + /** + * The type Pre. + */ @Cancelable public static class Pre extends UnRideDeviceEvent { + /** + * The Seat entity. + */ public final Entity seatEntity; + + /** + * Instantiates a new Pre. + * + * @param target the target + * @param deviceBlockPos the device block pos + * @param deviceBlockState the device block state + * @param seatBlockEntity the seat block entity + * @param seatEntity the seat entity + */ public Pre(Player target, BlockPos deviceBlockPos, BlockState deviceBlockState, BlockEntity seatBlockEntity, Entity seatEntity) { super(target, deviceBlockPos, deviceBlockState, seatBlockEntity); this.seatEntity = seatEntity; } + + /** + * Gets seat entity. + * + * @return the seat entity + */ public Entity getSeatEntity() { return seatEntity; } } + /** + * The type Post. + */ public static class Post extends UnRideDeviceEvent { - + /** + * Instantiates a new Post. + * + * @param target the target + * @param deviceBlockPos the device block pos + * @param deviceBlockState the device block state + * @param seatBlockEntity the seat block entity + */ public Post(Player target, BlockPos deviceBlockPos, BlockState deviceBlockState, BlockEntity seatBlockEntity) { super(target, deviceBlockPos, deviceBlockState, seatBlockEntity); } - } } diff --git a/src/main/java/top/r3944realms/eroticdungeongame/api/workspace/IWorkSpaceHelper.java b/src/main/java/top/r3944realms/eroticdungeongame/api/workspace/IWorkSpaceHelper.java index 018f6c1e..8b95a019 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/api/workspace/IWorkSpaceHelper.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/api/workspace/IWorkSpaceHelper.java @@ -1,23 +1,90 @@ /* - * Super Lead rope mod - * Copyright (C) 2025 R3944Realms - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR 阿 PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . + * Copyright 2025-2026 R3944Realms + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.api.workspace; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.player.Player; +import top.r3944realms.eroticdungeongame.api.capability.IPlayerDungeonData; + +import java.util.function.Consumer; +import java.util.function.Function; +import java.util.function.Supplier; + /** * The interface Work space helper. */ public interface IWorkSpaceHelper { + /** + * Is in device boolean. + * + * @param player the player + * @return the boolean + */ + boolean isInDevice(Entity player); + /** + * Try to do if in device. + * + * @param player the player + * @param action the action + * @param fallback the fallback + */ + void tryToDoIfInDevice(Entity player, Consumer action, Runnable fallback); + + /** + * Try to do if in device. + * + * @param player the player + * @param action the action + */ + default void tryToDoIfInDevice(Entity player,Consumer action) { + tryToDoIfInDevice(player, action, () -> {}); + } + + /** + * Try to do if in device and ret t. + * + * @param the type parameter + * @param player the player + * @param action the action + * @param fallback the fallback + * @return the t + */ + T tryToDoIfInDeviceAndRet(Entity player, Function action, Supplier fallback); + + /** + * Try to do if in device and ret t. + * + * @param the type parameter + * @param player the player + * @param action the action + * @return the t + */ + default T tryToDoIfInDeviceAndRet(Entity player, Function action) { + return tryToDoIfInDeviceAndRet(player, action, () -> null); + } + + /** + * Check is player boolean. + * + * @param entity the entity + * @return the boolean + */ + default boolean checkIsPlayer(Entity entity) { + return entity instanceof Player; + } } diff --git a/src/main/java/top/r3944realms/eroticdungeongame/api/workspace/Services.java b/src/main/java/top/r3944realms/eroticdungeongame/api/workspace/Services.java index 8151a52e..4e837bcb 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/api/workspace/Services.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/api/workspace/Services.java @@ -1,16 +1,17 @@ /* - * Super Lead rope mod - * Copyright (C) 2025 R3944Realms - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR 阿 PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . + * Copyright 2025-2026 R3944Realms + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.api.workspace; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/client/gui/components/DungeonOverlayRecipeComponent.java b/src/main/java/top/r3944realms/eroticdungeongame/client/gui/components/DungeonOverlayRecipeComponent.java index 568867ff..fb5faccb 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/client/gui/components/DungeonOverlayRecipeComponent.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/client/gui/components/DungeonOverlayRecipeComponent.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.client.gui.components; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/client/gui/components/DungeonRecipeBookComponent.java b/src/main/java/top/r3944realms/eroticdungeongame/client/gui/components/DungeonRecipeBookComponent.java index 3a031161..c5bb8541 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/client/gui/components/DungeonRecipeBookComponent.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/client/gui/components/DungeonRecipeBookComponent.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.client.gui.components; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/client/gui/components/DungeonRecipeBookPage.java b/src/main/java/top/r3944realms/eroticdungeongame/client/gui/components/DungeonRecipeBookPage.java index 917ccfbf..8bb3309d 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/client/gui/components/DungeonRecipeBookPage.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/client/gui/components/DungeonRecipeBookPage.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.client.gui.components; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/client/gui/components/DungeonRecipeBookTabButton.java b/src/main/java/top/r3944realms/eroticdungeongame/client/gui/components/DungeonRecipeBookTabButton.java index e2facb59..5b3092dc 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/client/gui/components/DungeonRecipeBookTabButton.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/client/gui/components/DungeonRecipeBookTabButton.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.client.gui.components; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/client/gui/components/DungeonRecipeButton.java b/src/main/java/top/r3944realms/eroticdungeongame/client/gui/components/DungeonRecipeButton.java index b32d6e69..c243dc94 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/client/gui/components/DungeonRecipeButton.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/client/gui/components/DungeonRecipeButton.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.client.gui.components; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/client/gui/screens/DungeonCraftingScreen.java b/src/main/java/top/r3944realms/eroticdungeongame/client/gui/screens/DungeonCraftingScreen.java index 1b40c32f..63fa68fe 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/client/gui/screens/DungeonCraftingScreen.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/client/gui/screens/DungeonCraftingScreen.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.client.gui.screens; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/client/model/EDGArmPose.java b/src/main/java/top/r3944realms/eroticdungeongame/client/model/EDGArmPose.java index d254f998..998fe5c4 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/client/model/EDGArmPose.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/client/model/EDGArmPose.java @@ -1,5 +1,17 @@ /* - * Copyright (c) 2026 R3944Realms. All rights reserved. + * Copyright 2025-2026 R3944Realms + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.client.model; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/client/model/block/IronCageBlockModel.java b/src/main/java/top/r3944realms/eroticdungeongame/client/model/block/IronCageBlockModel.java index ebc0c234..9dd102ee 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/client/model/block/IronCageBlockModel.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/client/model/block/IronCageBlockModel.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.client.model.block; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/client/model/block/SpanishDonkeyBlockModel.java b/src/main/java/top/r3944realms/eroticdungeongame/client/model/block/SpanishDonkeyBlockModel.java index d2f2f3b3..fa388078 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/client/model/block/SpanishDonkeyBlockModel.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/client/model/block/SpanishDonkeyBlockModel.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.client.model.block; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/client/model/item/IronCageItemModel.java b/src/main/java/top/r3944realms/eroticdungeongame/client/model/item/IronCageItemModel.java index 95cbb1f1..07906077 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/client/model/item/IronCageItemModel.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/client/model/item/IronCageItemModel.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.client.model.item; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/client/model/item/SpanishDonkeyItemModel.java b/src/main/java/top/r3944realms/eroticdungeongame/client/model/item/SpanishDonkeyItemModel.java index 2b8e63ff..002697c3 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/client/model/item/SpanishDonkeyItemModel.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/client/model/item/SpanishDonkeyItemModel.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.client.model.item; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/client/renderer/block/IronCageBlockRenderer.java b/src/main/java/top/r3944realms/eroticdungeongame/client/renderer/block/IronCageBlockRenderer.java index 575704ce..5663b241 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/client/renderer/block/IronCageBlockRenderer.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/client/renderer/block/IronCageBlockRenderer.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.client.renderer.block; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/client/renderer/block/SpanishDonkeyBlockRenderer.java b/src/main/java/top/r3944realms/eroticdungeongame/client/renderer/block/SpanishDonkeyBlockRenderer.java index 1e23e802..ef71c886 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/client/renderer/block/SpanishDonkeyBlockRenderer.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/client/renderer/block/SpanishDonkeyBlockRenderer.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.client.renderer.block; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/client/renderer/entity/EmptySeatRenderer.java b/src/main/java/top/r3944realms/eroticdungeongame/client/renderer/entity/EmptySeatRenderer.java index 40aa6c1a..d679fff5 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/client/renderer/entity/EmptySeatRenderer.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/client/renderer/entity/EmptySeatRenderer.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.client.renderer.entity; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/client/renderer/item/IronCageItemRenderer.java b/src/main/java/top/r3944realms/eroticdungeongame/client/renderer/item/IronCageItemRenderer.java index bcaf1498..34f0db80 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/client/renderer/item/IronCageItemRenderer.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/client/renderer/item/IronCageItemRenderer.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.client.renderer.item; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/client/renderer/item/SpanishDonkeyItemRenderer.java b/src/main/java/top/r3944realms/eroticdungeongame/client/renderer/item/SpanishDonkeyItemRenderer.java index e9700878..5fe1dabd 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/client/renderer/item/SpanishDonkeyItemRenderer.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/client/renderer/item/SpanishDonkeyItemRenderer.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.client.renderer.item; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/EDGToolTier.java b/src/main/java/top/r3944realms/eroticdungeongame/content/EDGToolTier.java index a6008d26..7f31711c 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/EDGToolTier.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/EDGToolTier.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/EDGVillagerTrades.java b/src/main/java/top/r3944realms/eroticdungeongame/content/EDGVillagerTrades.java index 103c5b13..904efbf0 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/EDGVillagerTrades.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/EDGVillagerTrades.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/animation/EDGAnimation.java b/src/main/java/top/r3944realms/eroticdungeongame/content/animation/EDGAnimation.java index 546eb560..2bbe6e99 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/animation/EDGAnimation.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/animation/EDGAnimation.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.animation; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/AbstractSeatBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/AbstractSeatBlock.java index f1e92905..88519fe4 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/AbstractSeatBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/AbstractSeatBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/FurnitureShapeType.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/FurnitureShapeType.java index 3d7cee18..cee53103 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/FurnitureShapeType.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/FurnitureShapeType.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/IColorBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/IColorBlock.java index 25fe25b2..0b27d0e6 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/IColorBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/IColorBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/ISeatBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/ISeatBlock.java index 4a009a75..ecb0f0a2 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/ISeatBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/ISeatBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block; @@ -137,8 +141,7 @@ public interface ISeatBlock extends EntityBlock, IShapeCache { + playerByUUID.getCapability(EroticDungeonGameApi.PLAYER_DUNGEON_DATA_CAP).ifPresent(cap -> { BlockPos deviceMainBlockPos = cap.getDeviceMainBlockPos(); if (playerByUUID.isPassenger() || deviceMainBlockPos != null) { Entity vehicle = playerByUUID.getVehicle(); diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/blockentity/DefaultSeatBlockEntity.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/blockentity/DefaultSeatBlockEntity.java index 610d8606..01c5f04e 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/blockentity/DefaultSeatBlockEntity.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/blockentity/DefaultSeatBlockEntity.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.blockentity; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/blockentity/IronCageBlockEntity.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/blockentity/IronCageBlockEntity.java index 361d458a..9db8cb1a 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/blockentity/IronCageBlockEntity.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/blockentity/IronCageBlockEntity.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.blockentity; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/blockentity/SpanishDonkeyBlockEntity.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/blockentity/SpanishDonkeyBlockEntity.java index e9f7147a..ab263b3d 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/blockentity/SpanishDonkeyBlockEntity.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/blockentity/SpanishDonkeyBlockEntity.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.blockentity; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/AbstractCrossSeatBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/AbstractCrossSeatBlock.java index 88e24ca2..3136c75c 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/AbstractCrossSeatBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/AbstractCrossSeatBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.multiply; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/AbstractThreePartSeatBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/AbstractThreePartSeatBlock.java index caafcfaf..73df2784 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/AbstractThreePartSeatBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/AbstractThreePartSeatBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.multiply; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/AbstractTwoPartSeatBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/AbstractTwoPartSeatBlock.java index 402c8aed..bbe4c4e5 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/AbstractTwoPartSeatBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/AbstractTwoPartSeatBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.multiply; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/IHasPrimaryPart.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/IHasPrimaryPart.java index 62b2ed61..384d7338 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/IHasPrimaryPart.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/IHasPrimaryPart.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.multiply; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/horizontal/HorizontalDoubleSeatBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/horizontal/HorizontalDoubleSeatBlock.java index e2662cf5..1923b58a 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/horizontal/HorizontalDoubleSeatBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/horizontal/HorizontalDoubleSeatBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.multiply.horizontal; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/horizontal/HorizontalTriplePlankSeatBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/horizontal/HorizontalTriplePlankSeatBlock.java index fe2930a3..01c729ae 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/horizontal/HorizontalTriplePlankSeatBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/horizontal/HorizontalTriplePlankSeatBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.multiply.horizontal; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/horizontal/HorizontalTripleSeatBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/horizontal/HorizontalTripleSeatBlock.java index 71674188..c4253da3 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/horizontal/HorizontalTripleSeatBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/horizontal/HorizontalTripleSeatBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.multiply.horizontal; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/vertical/VerticalDoubleSeatBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/vertical/VerticalDoubleSeatBlock.java index 83995e5f..c4713e31 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/vertical/VerticalDoubleSeatBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/vertical/VerticalDoubleSeatBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.multiply.vertical; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/vertical/VerticalTripleSeatBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/vertical/VerticalTripleSeatBlock.java index 9c8e6c67..58047532 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/vertical/VerticalTripleSeatBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/multiply/vertical/VerticalTripleSeatBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.multiply.vertical; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/part/AdvanceSeatPart.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/part/AdvanceSeatPart.java index fde12a6e..b66e9387 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/part/AdvanceSeatPart.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/part/AdvanceSeatPart.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.part; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/part/CrossSeatPart.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/part/CrossSeatPart.java index 4d7e3b26..6ddd83e2 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/part/CrossSeatPart.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/part/CrossSeatPart.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.part; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/part/SeatPart.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/part/SeatPart.java index 79d0127d..7f9b7248 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/part/SeatPart.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/part/SeatPart.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.part; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/CruxBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/CruxBlock.java index fb348e5e..8be70be2 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/CruxBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/CruxBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.type; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/CuffBedBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/CuffBedBlock.java index 4a9985f3..146fe463 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/CuffBedBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/CuffBedBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.type; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/CuffPoleBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/CuffPoleBlock.java index 599491c2..49dcf1a2 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/CuffPoleBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/CuffPoleBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.type; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/DungeonCraftingTableBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/DungeonCraftingTableBlock.java index 1683b25f..c26e339f 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/DungeonCraftingTableBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/DungeonCraftingTableBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.type; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/HangingPostBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/HangingPostBlock.java index 6f48034f..47506088 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/HangingPostBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/HangingPostBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.type; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/IronCageBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/IronCageBlock.java index adf39d74..3900d59c 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/IronCageBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/IronCageBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.type; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/PetrineCrossBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/PetrineCrossBlock.java index 7344c62c..e43e85bb 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/PetrineCrossBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/PetrineCrossBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.type; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/PilloryBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/PilloryBlock.java index dd14d6d9..7f798ea5 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/PilloryBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/PilloryBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.type; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/ProneBenchBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/ProneBenchBlock.java index 5adc9072..d801d226 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/ProneBenchBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/ProneBenchBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.type; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/RackBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/RackBlock.java index 78751eda..b47a8c47 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/RackBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/RackBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.type; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/SpanishDonkeyBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/SpanishDonkeyBlock.java index 44b6d28d..402e0d5c 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/SpanishDonkeyBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/SpanishDonkeyBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.type; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/WallRackBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/WallRackBlock.java index ab7a7482..b227eb45 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/WallRackBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/WallRackBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.type; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/XCrossBlock.java b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/XCrossBlock.java index bacd8f21..f4fc08a1 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/XCrossBlock.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/block/type/XCrossBlock.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.block.type; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/capability/AbstractPlayerDungeonData.java b/src/main/java/top/r3944realms/eroticdungeongame/content/capability/AbstractPlayerDungeonData.java index 57ff6907..041b7b70 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/capability/AbstractPlayerDungeonData.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/capability/AbstractPlayerDungeonData.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.capability; @@ -17,6 +21,7 @@ import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.player.Player; import net.minecraft.world.phys.AABB; import org.jetbrains.annotations.NotNull; +import top.r3944realms.eroticdungeongame.api.capability.IPlayerDungeonData; import top.r3944realms.eroticdungeongame.content.device.SeatType; import top.r3944realms.eroticdungeongame.content.entity.SeatEntity; import top.r3944realms.lib39.core.sync.NBTEntitySyncData; @@ -24,18 +29,11 @@ import top.r3944realms.lib39.core.sync.NBTEntitySyncData; import java.util.Objects; //todo: 使用方块坐标代替UUID(保存一致性) -public sealed abstract class AbstractPlayerDungeonData extends NBTEntitySyncData permits PlayerDungeonData { +public sealed abstract class AbstractPlayerDungeonData extends NBTEntitySyncData implements IPlayerDungeonData permits PlayerDungeonData { protected AbstractPlayerDungeonData(ResourceLocation id) { super(id); } - public abstract void setDeviceMainBlockPos(BlockPos pos); - public abstract BlockPos getDeviceMainBlockPos(); - public abstract void setAnimationResourceLocation(ResourceLocation location); - public abstract ResourceLocation getAnimationResourceLocation(); - public abstract AABB getPlayerBoundingBox(); - public abstract void setPlayerBoundingBox(AABB boundingBox); - public abstract float getEyeHeight(); - public abstract void setEyeHeight(float eyeHeight); + public void setDungeonData(@NotNull SeatType seatType, SeatEntity seat) { setAnimationResourceLocation(Objects.requireNonNull(seatType.getAnimation(), "Seat Type has no animation.").getDefaultRL()); setDungeonData_(seat, seatType); diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/capability/DungeonDataSyncManager.java b/src/main/java/top/r3944realms/eroticdungeongame/content/capability/DungeonDataSyncManager.java index 1caa4c67..cf8d3f20 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/capability/DungeonDataSyncManager.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/capability/DungeonDataSyncManager.java @@ -1,18 +1,21 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.capability; -import net.minecraft.client.Minecraft; import net.minecraft.world.entity.EntityDimensions; import net.minecraft.world.entity.player.Player; import net.minecraft.world.level.block.state.BlockState; @@ -20,6 +23,7 @@ import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import top.r3944realms.eroticdungeongame.api.EroticDungeonGameApi; import top.r3944realms.eroticdungeongame.content.animation.EDGAnimation; import top.r3944realms.eroticdungeongame.content.block.ISeatBlock; import top.r3944realms.eroticdungeongame.content.register.EDGCapabilities; @@ -43,7 +47,7 @@ public class DungeonDataSyncManager extends CachedSyncManager { if (player.level().isClientSide) { clientTick(player); @@ -64,7 +68,7 @@ public class DungeonDataSyncManager extends CachedSyncManager { if (cap.getDeviceMainBlockPos() != null) { BlockState blockState = player.level().getBlockState(cap.getDeviceMainBlockPos()); @@ -80,7 +84,7 @@ public class DungeonDataSyncManager extends CachedSyncManager { if (cap.getDeviceMainBlockPos() != null) { player.stopRiding(); diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/capability/PlayerDungeonData.java b/src/main/java/top/r3944realms/eroticdungeongame/content/capability/PlayerDungeonData.java index db40a8c7..6440d07a 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/capability/PlayerDungeonData.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/capability/PlayerDungeonData.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.capability; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/capability/PlayerDungeonDataProvider.java b/src/main/java/top/r3944realms/eroticdungeongame/content/capability/PlayerDungeonDataProvider.java index 71fbaa44..e7127c23 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/capability/PlayerDungeonDataProvider.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/capability/PlayerDungeonDataProvider.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.capability; @@ -20,6 +24,7 @@ import net.minecraftforge.common.capabilities.ICapabilitySerializable; import net.minecraftforge.common.util.LazyOptional; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import top.r3944realms.eroticdungeongame.api.EroticDungeonGameApi; import top.r3944realms.eroticdungeongame.content.register.EDGCapabilities; public class PlayerDungeonDataProvider implements ICapabilitySerializable { @@ -33,7 +38,7 @@ public class PlayerDungeonDataProvider implements ICapabilitySerializable LazyOptional getCapability(@NotNull Capability capability, @Nullable Direction direction) { - return EDGCapabilities.PLAYER_DUNGEON_DATA_CAP.orEmpty(capability, this.optional); + return EroticDungeonGameApi.PLAYER_DUNGEON_DATA_CAP.orEmpty(capability, this.optional); } @Override diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/compat/CarryOnCompat.java b/src/main/java/top/r3944realms/eroticdungeongame/content/compat/CarryOnCompat.java index e90a22f2..a93c538e 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/compat/CarryOnCompat.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/compat/CarryOnCompat.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.compat; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/compat/emi/DungeonEmiPlugin.java b/src/main/java/top/r3944realms/eroticdungeongame/content/compat/emi/DungeonEmiPlugin.java index 7e5db380..6a073965 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/compat/emi/DungeonEmiPlugin.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/compat/emi/DungeonEmiPlugin.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.compat.emi; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/compat/emi/category/DungeonCraftingEmiCategory.java b/src/main/java/top/r3944realms/eroticdungeongame/content/compat/emi/category/DungeonCraftingEmiCategory.java index ed5780ed..f9f82fad 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/compat/emi/category/DungeonCraftingEmiCategory.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/compat/emi/category/DungeonCraftingEmiCategory.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.compat.emi.category; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/compat/emi/category/DungeonCraftingEmiRecipe.java b/src/main/java/top/r3944realms/eroticdungeongame/content/compat/emi/category/DungeonCraftingEmiRecipe.java index 1948cfb9..05321e01 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/compat/emi/category/DungeonCraftingEmiRecipe.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/compat/emi/category/DungeonCraftingEmiRecipe.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.compat.emi.category; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/compat/emi/category/DungeonCraftingRecipeMaker.java b/src/main/java/top/r3944realms/eroticdungeongame/content/compat/emi/category/DungeonCraftingRecipeMaker.java index 3ea805a8..c5551e23 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/compat/emi/category/DungeonCraftingRecipeMaker.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/compat/emi/category/DungeonCraftingRecipeMaker.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.compat.emi.category; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/compat/emi/widget/DungeonCraftingNoSlotWidget.java b/src/main/java/top/r3944realms/eroticdungeongame/content/compat/emi/widget/DungeonCraftingNoSlotWidget.java index b0d4a83e..03cf770a 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/compat/emi/widget/DungeonCraftingNoSlotWidget.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/compat/emi/widget/DungeonCraftingNoSlotWidget.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.compat.emi.widget; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/compat/jei/DungeonJeiPlugin.java b/src/main/java/top/r3944realms/eroticdungeongame/content/compat/jei/DungeonJeiPlugin.java index 865ee801..3534391a 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/compat/jei/DungeonJeiPlugin.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/compat/jei/DungeonJeiPlugin.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.compat.jei; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/compat/jei/categorty/DungeonCraftingJeiCategory.java b/src/main/java/top/r3944realms/eroticdungeongame/content/compat/jei/categorty/DungeonCraftingJeiCategory.java index 8a61c93f..d2b9eb10 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/compat/jei/categorty/DungeonCraftingJeiCategory.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/compat/jei/categorty/DungeonCraftingJeiCategory.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.compat.jei.categorty; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/device/SeatType.java b/src/main/java/top/r3944realms/eroticdungeongame/content/device/SeatType.java index 94e45407..474265d4 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/device/SeatType.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/device/SeatType.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.device; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/device/SeatTypeRegistry.java b/src/main/java/top/r3944realms/eroticdungeongame/content/device/SeatTypeRegistry.java index d6dffdb7..67e00d55 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/device/SeatTypeRegistry.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/device/SeatTypeRegistry.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.device; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/enchantment/CarrotAndStickEnchantment.java b/src/main/java/top/r3944realms/eroticdungeongame/content/enchantment/CarrotAndStickEnchantment.java index 64c1bd29..699cb3e5 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/enchantment/CarrotAndStickEnchantment.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/enchantment/CarrotAndStickEnchantment.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.enchantment; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/entity/SeatEntity.java b/src/main/java/top/r3944realms/eroticdungeongame/content/entity/SeatEntity.java index 6c066512..e6cbbf14 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/entity/SeatEntity.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/entity/SeatEntity.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.entity; @@ -209,7 +213,6 @@ public class SeatEntity extends Entity { if (!level().isClientSide && this.linkedBlockPos != null) { SeatService.releasePlayerFromBlock(level(), this.linkedBlockPos); } - super.remove(reason); } diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/item/IronCageItem.java b/src/main/java/top/r3944realms/eroticdungeongame/content/item/IronCageItem.java index ac58194d..10bb2977 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/item/IronCageItem.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/item/IronCageItem.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.item; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/item/SpanishDonkeyItem.java b/src/main/java/top/r3944realms/eroticdungeongame/content/item/SpanishDonkeyItem.java index 6ecd6485..8618404e 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/item/SpanishDonkeyItem.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/item/SpanishDonkeyItem.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.item; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/item/WhipItem.java b/src/main/java/top/r3944realms/eroticdungeongame/content/item/WhipItem.java index bd83badc..398dec6f 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/item/WhipItem.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/item/WhipItem.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.item; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/menu/DungeonCraftingMenu.java b/src/main/java/top/r3944realms/eroticdungeongame/content/menu/DungeonCraftingMenu.java index 731fa4ce..86c58153 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/menu/DungeonCraftingMenu.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/menu/DungeonCraftingMenu.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.menu; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/particle/VerticalWhipSweepParticle.java b/src/main/java/top/r3944realms/eroticdungeongame/content/particle/VerticalWhipSweepParticle.java index f2f7e2fb..f47b2ebe 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/particle/VerticalWhipSweepParticle.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/particle/VerticalWhipSweepParticle.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.particle; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/particle/WhipScarParticle.java b/src/main/java/top/r3944realms/eroticdungeongame/content/particle/WhipScarParticle.java index adeabd98..4a17c0e6 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/particle/WhipScarParticle.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/particle/WhipScarParticle.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.particle; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/DungeonCraftingBookCategory.java b/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/DungeonCraftingBookCategory.java index 7c5f48de..c4ff3354 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/DungeonCraftingBookCategory.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/DungeonCraftingBookCategory.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.recipe; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/DungeonRecipe.java b/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/DungeonRecipe.java index 39e42df4..57505b01 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/DungeonRecipe.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/DungeonRecipe.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.recipe; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/DungeonRecipeCategory.java b/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/DungeonRecipeCategory.java index 097ccd77..b0e52822 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/DungeonRecipeCategory.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/DungeonRecipeCategory.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.recipe; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/DungeonShapedRecipe.java b/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/DungeonShapedRecipe.java index 0ab49983..515340f7 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/DungeonShapedRecipe.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/DungeonShapedRecipe.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.recipe; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/DungeonShapelessRecipe.java b/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/DungeonShapelessRecipe.java index 85ea89c6..e0b70b84 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/DungeonShapelessRecipe.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/DungeonShapelessRecipe.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.recipe; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/EDGRecipeBookTypes.java b/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/EDGRecipeBookTypes.java index e46f4e68..f6321a87 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/EDGRecipeBookTypes.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/EDGRecipeBookTypes.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.recipe; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/EDGRecipeTypeCategories.java b/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/EDGRecipeTypeCategories.java index 8c5196ee..fa7ff206 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/EDGRecipeTypeCategories.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/recipe/EDGRecipeTypeCategories.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.recipe; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGBlockEntities.java b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGBlockEntities.java index 77a3807f..f6f4f98e 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGBlockEntities.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGBlockEntities.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.register; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGBlocks.java b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGBlocks.java index 14ea2f38..1250ca07 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGBlocks.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGBlocks.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.register; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGCapabilities.java b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGCapabilities.java index 8b0a7a56..7c35fbd7 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGCapabilities.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGCapabilities.java @@ -1,21 +1,22 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.register; import net.minecraft.world.entity.player.Player; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.CapabilityManager; -import net.minecraftforge.common.capabilities.CapabilityToken; import net.minecraftforge.common.capabilities.RegisterCapabilitiesEvent; import net.minecraftforge.event.AttachCapabilitiesEvent; import org.jetbrains.annotations.NotNull; @@ -24,7 +25,7 @@ import top.r3944realms.eroticdungeongame.content.capability.AbstractPlayerDungeo import top.r3944realms.eroticdungeongame.content.capability.PlayerDungeonDataProvider; public class EDGCapabilities { - public static final Capability PLAYER_DUNGEON_DATA_CAP = CapabilityManager.get(new CapabilityToken<>() {}); + public static final String DUNGEON_DATA = "dungeon_data"; public static void registerCapability(@NotNull RegisterCapabilitiesEvent event) { diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGCreativeTabs.java b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGCreativeTabs.java index 44e3164a..5bd172d9 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGCreativeTabs.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGCreativeTabs.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.register; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGCustomStats.java b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGCustomStats.java index 675757f6..6e36886b 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGCustomStats.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGCustomStats.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.register; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGEnchantments.java b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGEnchantments.java index 74991b54..0c82f4ee 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGEnchantments.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGEnchantments.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.register; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGEntities.java b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGEntities.java index ba1b1401..c60f3d1b 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGEntities.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGEntities.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.register; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGItems.java b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGItems.java index cc3bbd58..025aefc3 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGItems.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGItems.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.register; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGMenuTypes.java b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGMenuTypes.java index 4fcb6884..794e9475 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGMenuTypes.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGMenuTypes.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.register; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGParticleTypes.java b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGParticleTypes.java index 8341a134..65eba0a8 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGParticleTypes.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGParticleTypes.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.register; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGPois.java b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGPois.java index 7656cef3..9f5029bd 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGPois.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGPois.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.register; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGRecipeSerializers.java b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGRecipeSerializers.java index 0bfa98db..953a1b59 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGRecipeSerializers.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGRecipeSerializers.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.register; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGRecipeTypes.java b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGRecipeTypes.java index ca18a881..1c6a1403 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGRecipeTypes.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGRecipeTypes.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.register; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGSoundEvents.java b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGSoundEvents.java index aef75fb7..daf6f1a8 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGSoundEvents.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGSoundEvents.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.register; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGVillagers.java b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGVillagers.java index 226af1f2..9612733a 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGVillagers.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/register/EDGVillagers.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.register; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/register/tag/EDGBlockTags.java b/src/main/java/top/r3944realms/eroticdungeongame/content/register/tag/EDGBlockTags.java index ff279f14..41f08e1d 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/register/tag/EDGBlockTags.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/register/tag/EDGBlockTags.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.register.tag; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/register/tag/EDGItemTags.java b/src/main/java/top/r3944realms/eroticdungeongame/content/register/tag/EDGItemTags.java index db66da97..3cedb314 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/register/tag/EDGItemTags.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/register/tag/EDGItemTags.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.register.tag; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/service/SeatService.java b/src/main/java/top/r3944realms/eroticdungeongame/content/service/SeatService.java index c3408fd6..e38ff89a 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/service/SeatService.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/service/SeatService.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ /* @@ -24,6 +28,7 @@ import net.minecraft.world.level.Level; import net.minecraft.world.level.block.state.BlockState; import org.jetbrains.annotations.NotNull; import top.r3944realms.eroticdungeongame.EroticDungeon; +import top.r3944realms.eroticdungeongame.api.EroticDungeonGameApi; import top.r3944realms.eroticdungeongame.api.event.RideDeviceEvent; import top.r3944realms.eroticdungeongame.api.event.UnRideDeviceEvent; import top.r3944realms.eroticdungeongame.content.animation.EDGAnimation; @@ -96,15 +101,16 @@ public class SeatService { /** * 从方块位置释放玩家 */ - public static void releasePlayerFromBlock(@NotNull Level level, @NotNull BlockPos blockPos) { + public static boolean releasePlayerFromBlock(@NotNull Level level, @NotNull BlockPos blockPos) { BaseSeatBlockEntity blockEntity = FurnitureHelper.getSeatBlockEntity(level, blockPos); if (blockEntity != null) { - releasePlayer(level, blockPos); + return releasePlayer(level, blockPos); } + return false; } public static @NotNull Optional getPlayerSeat(@NotNull Player player) { - return player.getCapability(EDGCapabilities.PLAYER_DUNGEON_DATA_CAP).resolve().map(cap -> { + return player.getCapability(EroticDungeonGameApi.PLAYER_DUNGEON_DATA_CAP).resolve().map(cap -> { BlockPos deviceMainBlockPos = cap.getDeviceMainBlockPos(); if (player.isPassenger() || deviceMainBlockPos != null) { Entity vehicle = player.getVehicle(); @@ -120,7 +126,7 @@ public class SeatService { } public static @NotNull Optional getOrCreatePlayerSeat(@NotNull Player player) { - return player.getCapability(EDGCapabilities.PLAYER_DUNGEON_DATA_CAP).resolve().map(cap -> { + return player.getCapability(EroticDungeonGameApi.PLAYER_DUNGEON_DATA_CAP).resolve().map(cap -> { BlockPos deviceMainBlockPos = cap.getDeviceMainBlockPos(); if (player.isPassenger() && deviceMainBlockPos != null) { Entity vehicle = player.getVehicle(); @@ -186,7 +192,7 @@ public class SeatService { player.setYBodyRot(seatEntity.getYRot()); // 设置玩家cap - player.getCapability(EDGCapabilities.PLAYER_DUNGEON_DATA_CAP).resolve() + player.getCapability(EroticDungeonGameApi.PLAYER_DUNGEON_DATA_CAP).resolve() .ifPresent(cap -> cap.setDungeonData(seatType, varNumber, seatEntity)); } @@ -217,12 +223,12 @@ public class SeatService { /** * 释放玩家 */ - public static void releasePlayer(@NotNull Level level, BlockPos blockPos) { + public static boolean releasePlayer(@NotNull Level level, BlockPos blockPos) { BaseSeatBlockEntity seatBlockEntity = FurnitureHelper.getSeatBlockEntity(level, blockPos); - releasePlayerInternal(seatBlockEntity, level, blockPos); + return releasePlayerInternal(seatBlockEntity, level, blockPos); } - private static void releasePlayerInternal(BaseSeatBlockEntity be, @NotNull Level level, BlockPos blockPos) { + private static boolean releasePlayerInternal(BaseSeatBlockEntity be, @NotNull Level level, BlockPos blockPos) { BlockState blockState = level.getBlockState(blockPos); // 1. 更新方块状态 FurnitureHelper.setSeatOccupied(level, blockPos, false); @@ -236,10 +242,13 @@ public class SeatService { if (playerByUUID != null) { if (playerByUUID.isPassenger() && playerByUUID.getVehicle() instanceof SeatEntity seatEntity) { isCancelled = EroticDungeon.EVENT_BUS.post(new UnRideDeviceEvent.Pre(playerByUUID, blockPos, blockState, be, seatEntity)); - if (isCancelled) { + if (!isCancelled) { playerByUUID.stopRiding(); - playerByUUID.getCapability(EDGCapabilities.PLAYER_DUNGEON_DATA_CAP) + playerByUUID.getCapability(EroticDungeonGameApi.PLAYER_DUNGEON_DATA_CAP) .ifPresent(i -> i.clearDungeonData(playerByUUID)); + } else { + bindPlayerToSeat(playerByUUID, blockPos); + return false; } } } @@ -248,7 +257,7 @@ public class SeatService { } // 停止动画 - if (playerByUUID != null && !isCancelled) { + if (playerByUUID != null) { EDGAnimation.stop(playerByUUID); EroticDungeon.EVENT_BUS.post(new UnRideDeviceEvent.Post(playerByUUID, blockPos, blockState, be)); } @@ -257,6 +266,7 @@ public class SeatService { // 3. 清理数据 be.setBoundPlayerUUID(null); be.setChanged(); + return true; } // ================= 辅助类 ================= diff --git a/src/main/java/top/r3944realms/eroticdungeongame/content/util/FurnitureHelper.java b/src/main/java/top/r3944realms/eroticdungeongame/content/util/FurnitureHelper.java index e7d27413..ee79990f 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/content/util/FurnitureHelper.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/content/util/FurnitureHelper.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.content.util; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/core/event/ClientHandler.java b/src/main/java/top/r3944realms/eroticdungeongame/core/event/ClientHandler.java index a0ba0a44..75aff8ce 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/core/event/ClientHandler.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/core/event/ClientHandler.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.core.event; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/core/event/CommonHandler.java b/src/main/java/top/r3944realms/eroticdungeongame/core/event/CommonHandler.java index cabaa433..efac8f18 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/core/event/CommonHandler.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/core/event/CommonHandler.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.core.event; @@ -26,6 +30,7 @@ import net.minecraftforge.event.entity.player.PlayerEvent; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent; import top.r3944realms.eroticdungeongame.EroticDungeon; +import top.r3944realms.eroticdungeongame.api.EroticDungeonGameApi; import top.r3944realms.eroticdungeongame.content.EDGVillagerTrades; import top.r3944realms.eroticdungeongame.content.capability.DungeonDataSyncManager; import top.r3944realms.eroticdungeongame.content.compat.CarryOnCompat; @@ -54,7 +59,7 @@ public class CommonHandler { @SubscribeEvent public static void syncCapabilities(SyncManagerRegisterEvent event) { dungeonDataSyncManager = new DungeonDataSyncManager(); - event.registerSyncManager(DUNGEON_SYNC, dungeonDataSyncManager, EDGCapabilities.PLAYER_DUNGEON_DATA_CAP); + event.registerSyncManager(DUNGEON_SYNC, dungeonDataSyncManager, EroticDungeonGameApi.PLAYER_DUNGEON_DATA_CAP); } private static char ticks = 0; @SubscribeEvent diff --git a/src/main/java/top/r3944realms/eroticdungeongame/core/event/SeverHandler.java b/src/main/java/top/r3944realms/eroticdungeongame/core/event/SeverHandler.java index bf90248f..957b7522 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/core/event/SeverHandler.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/core/event/SeverHandler.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.core.event; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/datagen/EDGDataGenEvent.java b/src/main/java/top/r3944realms/eroticdungeongame/datagen/EDGDataGenEvent.java index 900f4b2c..b476a2d1 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/datagen/EDGDataGenEvent.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/datagen/EDGDataGenEvent.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.datagen; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/datagen/builder/DungeonCraftingRecipeBuilder.java b/src/main/java/top/r3944realms/eroticdungeongame/datagen/builder/DungeonCraftingRecipeBuilder.java index 77a1f001..5810334a 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/datagen/builder/DungeonCraftingRecipeBuilder.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/datagen/builder/DungeonCraftingRecipeBuilder.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.datagen.builder; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/datagen/builder/DungeonShapedRecipeBuilder.java b/src/main/java/top/r3944realms/eroticdungeongame/datagen/builder/DungeonShapedRecipeBuilder.java index 2eaaee23..23beb3b1 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/datagen/builder/DungeonShapedRecipeBuilder.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/datagen/builder/DungeonShapedRecipeBuilder.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.datagen.builder; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/datagen/builder/DungeonShapelessRecipeBuilder.java b/src/main/java/top/r3944realms/eroticdungeongame/datagen/builder/DungeonShapelessRecipeBuilder.java index b76f1e21..51ea6c64 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/datagen/builder/DungeonShapelessRecipeBuilder.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/datagen/builder/DungeonShapelessRecipeBuilder.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.datagen.builder; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGAnimationLayerProvider.java b/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGAnimationLayerProvider.java index 841fd0bb..b5e2050d 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGAnimationLayerProvider.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGAnimationLayerProvider.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.datagen.provider; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGAnimationProvider.java b/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGAnimationProvider.java index f26a6349..57605524 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGAnimationProvider.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGAnimationProvider.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.datagen.provider; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGBlockModelProvider.java b/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGBlockModelProvider.java index 468d799f..74115e2b 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGBlockModelProvider.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGBlockModelProvider.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.datagen.provider; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGBlockStatesProvider.java b/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGBlockStatesProvider.java index 4de9e67d..514772cc 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGBlockStatesProvider.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGBlockStatesProvider.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.datagen.provider; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGBlockTagsProvider.java b/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGBlockTagsProvider.java index 6a813c71..bddb5b00 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGBlockTagsProvider.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGBlockTagsProvider.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.datagen.provider; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGItemModelProvider.java b/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGItemModelProvider.java index fd95684d..ccfad2b4 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGItemModelProvider.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGItemModelProvider.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.datagen.provider; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGItemTagProvider.java b/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGItemTagProvider.java index 7496c77a..e1e86600 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGItemTagProvider.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGItemTagProvider.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.datagen.provider; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGPoiTypeTagsProvider.java b/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGPoiTypeTagsProvider.java index cd6bf8e0..10bb58d4 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGPoiTypeTagsProvider.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGPoiTypeTagsProvider.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.datagen.provider; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGRecipeProvider.java b/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGRecipeProvider.java index 94b8a02b..5f05fa41 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGRecipeProvider.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGRecipeProvider.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.datagen.provider; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGSoundDefinitionsProvider.java b/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGSoundDefinitionsProvider.java index 7f1fb5ab..709b765b 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGSoundDefinitionsProvider.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/datagen/provider/EDGSoundDefinitionsProvider.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.datagen.provider; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/datagen/value/ColorContent.java b/src/main/java/top/r3944realms/eroticdungeongame/datagen/value/ColorContent.java index 45f94981..544dbed5 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/datagen/value/ColorContent.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/datagen/value/ColorContent.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.datagen.value; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/datagen/value/EDGBlockLootTables.java b/src/main/java/top/r3944realms/eroticdungeongame/datagen/value/EDGBlockLootTables.java index 9d7ea4df..a57ff129 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/datagen/value/EDGBlockLootTables.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/datagen/value/EDGBlockLootTables.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.datagen.value; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/datagen/value/EDGLangKey.java b/src/main/java/top/r3944realms/eroticdungeongame/datagen/value/EDGLangKey.java index a568d921..1701d96b 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/datagen/value/EDGLangKey.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/datagen/value/EDGLangKey.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.datagen.value; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/mixin/EDGMixinPlugin.java b/src/main/java/top/r3944realms/eroticdungeongame/mixin/EDGMixinPlugin.java index 623abe20..f88f88b0 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/mixin/EDGMixinPlugin.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/mixin/EDGMixinPlugin.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.mixin; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/mixin/MixinEntity.java b/src/main/java/top/r3944realms/eroticdungeongame/mixin/MixinEntity.java deleted file mode 100644 index 15477bad..00000000 --- a/src/main/java/top/r3944realms/eroticdungeongame/mixin/MixinEntity.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 - * - */ - -package top.r3944realms.eroticdungeongame.mixin; - -import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; -import com.llamalad7.mixinextras.injector.wrapoperation.Operation; -import net.minecraft.world.entity.Entity; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.phys.AABB; -import net.minecraft.world.phys.Vec3; -import org.spongepowered.asm.mixin.Mixin; -import top.r3944realms.eroticdungeongame.content.entity.SeatEntity; -import top.r3944realms.eroticdungeongame.content.register.EDGCapabilities; -import top.r3944realms.eroticdungeongame.util.BoundingBoxCalculator; - -import java.util.concurrent.atomic.AtomicReference; - -@Mixin(Entity.class) -public abstract class MixinEntity { - - @WrapMethod( - method = "getBoundingBox" - ) - private AABB redefinedBoundingBox(Operation original){ - Entity self = Entity.class.cast(this); - if(self instanceof Player player && player.isPassenger() && player.getVehicle() instanceof SeatEntity seat) { - AtomicReference boundingBox = new AtomicReference<>(); - player.getCapability(EDGCapabilities.PLAYER_DUNGEON_DATA_CAP).ifPresent( - cap -> { - if (cap.getPlayerBoundingBox() != null) { - Vec3 playerPos = player.position(); - AABB dynamicBB = BoundingBoxCalculator.positionBoundingBox(cap.getPlayerBoundingBox(), playerPos); - - boundingBox.set(dynamicBB); - } - }); - if (boundingBox.get() != null) { - return boundingBox.get(); - } - } - return original.call(); - } -} diff --git a/src/main/java/top/r3944realms/eroticdungeongame/mixin/MixinGameRender.java b/src/main/java/top/r3944realms/eroticdungeongame/mixin/MixinGameRender.java deleted file mode 100644 index e3f8a867..00000000 --- a/src/main/java/top/r3944realms/eroticdungeongame/mixin/MixinGameRender.java +++ /dev/null @@ -1,45 +0,0 @@ -/* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 - * - */ - -package top.r3944realms.eroticdungeongame.mixin; - -import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; -import com.llamalad7.mixinextras.injector.wrapoperation.Operation; -import com.mojang.blaze3d.vertex.PoseStack; -import net.minecraft.client.Camera; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.GameRenderer; -import org.spongepowered.asm.mixin.Mixin; -import top.r3944realms.eroticdungeongame.content.capability.AbstractPlayerDungeonData; -import top.r3944realms.eroticdungeongame.content.entity.SeatEntity; -import top.r3944realms.eroticdungeongame.content.register.EDGCapabilities; - -@Mixin(GameRenderer.class) -public class MixinGameRender { - @WrapMethod( - method = "renderItemInHand" - ) - private void warpRenderHand(PoseStack poseStack, Camera activeRenderInfo, float partialTicks, Operation original) { - Minecraft mc = Minecraft.getInstance(); - if(mc.player != null) - if (mc.player.isPassenger() && mc.player.getVehicle() instanceof SeatEntity) { - try { - AbstractPlayerDungeonData playerDungeonData = mc.player.getCapability(EDGCapabilities.PLAYER_DUNGEON_DATA_CAP).resolve() - .orElseThrow(); - if (playerDungeonData.getDeviceMainBlockPos() != null) { - return; - } - } catch (Exception ignored) {} - } - original.call(poseStack, activeRenderInfo, partialTicks); - } -} diff --git a/src/main/java/top/r3944realms/eroticdungeongame/mixin/MixinLivingEntity.java b/src/main/java/top/r3944realms/eroticdungeongame/mixin/MixinLivingEntity.java deleted file mode 100644 index 20a09751..00000000 --- a/src/main/java/top/r3944realms/eroticdungeongame/mixin/MixinLivingEntity.java +++ /dev/null @@ -1,46 +0,0 @@ -/* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 - * - */ - -package top.r3944realms.eroticdungeongame.mixin; - -import com.llamalad7.mixinextras.injector.wrapoperation.Operation; -import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; -import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.entity.player.Player; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.injection.At; -import top.r3944realms.eroticdungeongame.content.capability.AbstractPlayerDungeonData; -import top.r3944realms.eroticdungeongame.content.entity.SeatEntity; -import top.r3944realms.eroticdungeongame.content.register.EDGCapabilities; - -@Mixin(LivingEntity.class) -public class MixinLivingEntity { - @WrapOperation( - method = "baseTick", - at = @At( - value = "INVOKE", - target= "Lnet/minecraft/world/entity/LivingEntity;isInWall()Z" - ) - ) - private boolean inWall$Warp(LivingEntity instance, Operation original) { - if (instance instanceof Player player && player.isPassenger() && player.getVehicle() instanceof SeatEntity) { - try { - AbstractPlayerDungeonData playerDungeonData = player.getCapability(EDGCapabilities.PLAYER_DUNGEON_DATA_CAP).resolve() - .orElseThrow(); - if (playerDungeonData.getDeviceMainBlockPos() != null) { - return false; - } - } catch (Exception ignored) {} - } - return original.call(instance); - } -} diff --git a/src/main/java/top/r3944realms/eroticdungeongame/mixin/MixinMinecraft.java b/src/main/java/top/r3944realms/eroticdungeongame/mixin/MixinMinecraft.java deleted file mode 100644 index be6bfbb3..00000000 --- a/src/main/java/top/r3944realms/eroticdungeongame/mixin/MixinMinecraft.java +++ /dev/null @@ -1,83 +0,0 @@ -/* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 - * - */ - -package top.r3944realms.eroticdungeongame.mixin; - -import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; -import com.llamalad7.mixinextras.injector.wrapoperation.Operation; -import net.minecraft.client.Minecraft; -import net.minecraft.client.player.LocalPlayer; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.Shadow; -import top.r3944realms.eroticdungeongame.content.capability.AbstractPlayerDungeonData; -import top.r3944realms.eroticdungeongame.content.entity.SeatEntity; -import top.r3944realms.eroticdungeongame.content.register.EDGCapabilities; - -import javax.annotation.Nullable; - -@Mixin(Minecraft.class) -public class MixinMinecraft { - @Shadow - @Nullable - public LocalPlayer player; - - @WrapMethod( - method = "startAttack" - ) - private boolean forbiddenAttack(Operation original){ - if (this.player != null) - if (player.isPassenger() && player.getVehicle() instanceof SeatEntity) { - try { - AbstractPlayerDungeonData playerDungeonData = player.getCapability(EDGCapabilities.PLAYER_DUNGEON_DATA_CAP).resolve() - .orElseThrow(); - if (playerDungeonData.getDeviceMainBlockPos() != null) { - return false; - } - } catch (Exception ignored) {} - } - return original.call(); - } - - @WrapMethod( - method = "startUseItem" - ) - private void forbiddenUseItem(Operation original){ - if (this.player != null) - if (player.isPassenger() && player.getVehicle() instanceof SeatEntity) { - try { - AbstractPlayerDungeonData playerDungeonData = player.getCapability(EDGCapabilities.PLAYER_DUNGEON_DATA_CAP).resolve() - .orElseThrow(); - if (playerDungeonData.getDeviceMainBlockPos() != null) { - return; - } - } catch (Exception ignored) {} - } - original.call(); - } - - @WrapMethod( - method = "continueAttack" - ) - private void forbiddenContinueAttack(boolean leftClick, Operation original){ - if(this.player != null) - if (player.isPassenger() && player.getVehicle() instanceof SeatEntity) { - try { - AbstractPlayerDungeonData playerDungeonData = player.getCapability(EDGCapabilities.PLAYER_DUNGEON_DATA_CAP).resolve() - .orElseThrow(); - if (playerDungeonData.getDeviceMainBlockPos() != null) { - return; - } - } catch (Exception ignored) {} - } - original.call(leftClick); - } -} diff --git a/src/main/java/top/r3944realms/eroticdungeongame/mixin/MixinPlayer.java b/src/main/java/top/r3944realms/eroticdungeongame/mixin/MixinPlayer.java deleted file mode 100644 index e7ce5822..00000000 --- a/src/main/java/top/r3944realms/eroticdungeongame/mixin/MixinPlayer.java +++ /dev/null @@ -1,46 +0,0 @@ -/* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 - * - */ - -package top.r3944realms.eroticdungeongame.mixin; - -import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; -import com.llamalad7.mixinextras.injector.wrapoperation.Operation; -import net.minecraft.world.entity.EntityType; -import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.level.Level; -import org.spongepowered.asm.mixin.Mixin; -import top.r3944realms.eroticdungeongame.content.capability.AbstractPlayerDungeonData; -import top.r3944realms.eroticdungeongame.content.entity.SeatEntity; -import top.r3944realms.eroticdungeongame.content.register.EDGCapabilities; - -@Mixin(Player.class) -public abstract class MixinPlayer extends LivingEntity { - protected MixinPlayer(EntityType entityType, Level level) { - super(entityType, level); - } - - @WrapMethod(method = "shouldShowName") - public boolean shouldShowName(Operation original) { - Player player = Player.class.cast(this); - if (player.isPassenger() && player.getVehicle() instanceof SeatEntity) { - try { - AbstractPlayerDungeonData playerDungeonData = player.getCapability(EDGCapabilities.PLAYER_DUNGEON_DATA_CAP).resolve() - .orElseThrow(); - if (playerDungeonData.getDeviceMainBlockPos() != null) { - return false; - } - } catch (Exception ignored) {} - } - return original.call(); - } -} diff --git a/src/main/java/top/r3944realms/eroticdungeongame/mixin/MixinPlayerRenderer.java b/src/main/java/top/r3944realms/eroticdungeongame/mixin/MixinPlayerRenderer.java deleted file mode 100644 index a14cced9..00000000 --- a/src/main/java/top/r3944realms/eroticdungeongame/mixin/MixinPlayerRenderer.java +++ /dev/null @@ -1,44 +0,0 @@ -/* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 - * - */ - -package top.r3944realms.eroticdungeongame.mixin; - -import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; -import com.llamalad7.mixinextras.injector.wrapoperation.Operation; -import com.mojang.blaze3d.vertex.PoseStack; -import net.minecraft.client.player.AbstractClientPlayer; -import net.minecraft.client.renderer.MultiBufferSource; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.network.chat.Component; -import org.spongepowered.asm.mixin.Mixin; -import top.r3944realms.eroticdungeongame.content.capability.AbstractPlayerDungeonData; -import top.r3944realms.eroticdungeongame.content.entity.SeatEntity; -import top.r3944realms.eroticdungeongame.content.register.EDGCapabilities; - -@Mixin(PlayerRenderer.class) -public class MixinPlayerRenderer { - @WrapMethod( - method = "renderNameTag(Lnet/minecraft/client/player/AbstractClientPlayer;Lnet/minecraft/network/chat/Component;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V" - ) - private void renderNameTag(AbstractClientPlayer entity, Component displayName, PoseStack poseStack, MultiBufferSource buffer, int packedLight, Operation original) { - if (entity.isPassenger() && entity.getVehicle() instanceof SeatEntity) { - try { - AbstractPlayerDungeonData playerDungeonData = entity.getCapability(EDGCapabilities.PLAYER_DUNGEON_DATA_CAP).resolve() - .orElseThrow(); - if (playerDungeonData.getDeviceMainBlockPos() != null) { - return; - } - } catch (Exception ignored) {} - } - original.call(entity, displayName, poseStack, buffer, packedLight); - } -} diff --git a/src/main/java/top/r3944realms/eroticdungeongame/mixin/bendylib/MixinBendableCuboidBuilder.java b/src/main/java/top/r3944realms/eroticdungeongame/mixin/bendylib/MixinBendableCuboidBuilder.java index 182e1081..97f1edc3 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/mixin/bendylib/MixinBendableCuboidBuilder.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/mixin/bendylib/MixinBendableCuboidBuilder.java @@ -1,3 +1,19 @@ +/* + * Copyright 2025-2026 R3944Realms + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package top.r3944realms.eroticdungeongame.mixin.bendylib; import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/mixin/minecraft/MixinEntity.java b/src/main/java/top/r3944realms/eroticdungeongame/mixin/minecraft/MixinEntity.java new file mode 100644 index 00000000..2fb85ef3 --- /dev/null +++ b/src/main/java/top/r3944realms/eroticdungeongame/mixin/minecraft/MixinEntity.java @@ -0,0 +1,38 @@ +/* + * Copyright 2025-2026 R3944Realms + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package top.r3944realms.eroticdungeongame.mixin.minecraft; + +import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.phys.AABB; +import org.jetbrains.annotations.NotNull; +import org.spongepowered.asm.mixin.Mixin; +import top.r3944realms.eroticdungeongame.api.workspace.Services; +import top.r3944realms.eroticdungeongame.util.BoundingBoxCalculator; + +@Mixin(Entity.class) +public abstract class MixinEntity { + + @WrapMethod( + method = "getBoundingBox" + ) + private AABB redefinedBoundingBox(@NotNull Operation original){ + Entity self = Entity.class.cast(this); + return Services.WORK_SPACE.tryToDoIfInDeviceAndRet(self, data-> BoundingBoxCalculator.positionBoundingBox(data.getPlayerBoundingBox(), self.position()), original::call); + } +} diff --git a/src/main/java/top/r3944realms/eroticdungeongame/mixin/minecraft/MixinGameRender.java b/src/main/java/top/r3944realms/eroticdungeongame/mixin/minecraft/MixinGameRender.java new file mode 100644 index 00000000..eb493268 --- /dev/null +++ b/src/main/java/top/r3944realms/eroticdungeongame/mixin/minecraft/MixinGameRender.java @@ -0,0 +1,41 @@ +/* + * Copyright 2025-2026 R3944Realms + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package top.r3944realms.eroticdungeongame.mixin.minecraft; + +import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.mojang.blaze3d.vertex.PoseStack; +import net.minecraft.client.Camera; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.GameRenderer; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import top.r3944realms.eroticdungeongame.api.workspace.Services; + +@Mixin(GameRenderer.class) +public class MixinGameRender { + @Shadow @Final + Minecraft minecraft; + + @WrapMethod( + method = "renderItemInHand" + ) + private void warpRenderHand(PoseStack poseStack, Camera activeRenderInfo, float partialTicks, Operation original) { + Services.WORK_SPACE.tryToDoIfInDevice(minecraft.player, data -> {}, () -> original.call(poseStack, activeRenderInfo, partialTicks)); + } +} diff --git a/src/main/java/top/r3944realms/eroticdungeongame/mixin/minecraft/MixinLivingEntity.java b/src/main/java/top/r3944realms/eroticdungeongame/mixin/minecraft/MixinLivingEntity.java new file mode 100644 index 00000000..5f37711a --- /dev/null +++ b/src/main/java/top/r3944realms/eroticdungeongame/mixin/minecraft/MixinLivingEntity.java @@ -0,0 +1,38 @@ +/* + * Copyright 2025-2026 R3944Realms + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package top.r3944realms.eroticdungeongame.mixin.minecraft; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import net.minecraft.world.entity.LivingEntity; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import top.r3944realms.eroticdungeongame.api.workspace.Services; + +@Mixin(LivingEntity.class) +public class MixinLivingEntity { + @WrapOperation( + method = "baseTick", + at = @At( + value = "INVOKE", + target= "Lnet/minecraft/world/entity/LivingEntity;isInWall()Z" + ) + ) + private boolean inWall$Warp(LivingEntity instance, Operation original) { + return Services.WORK_SPACE.tryToDoIfInDeviceAndRet(instance, data -> false, () -> original.call(instance)); + } +} diff --git a/src/main/java/top/r3944realms/eroticdungeongame/mixin/minecraft/MixinMinecraft.java b/src/main/java/top/r3944realms/eroticdungeongame/mixin/minecraft/MixinMinecraft.java new file mode 100644 index 00000000..1fa455d2 --- /dev/null +++ b/src/main/java/top/r3944realms/eroticdungeongame/mixin/minecraft/MixinMinecraft.java @@ -0,0 +1,55 @@ +/* + * Copyright 2025-2026 R3944Realms + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package top.r3944realms.eroticdungeongame.mixin.minecraft; + +import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import net.minecraft.client.Minecraft; +import net.minecraft.client.player.LocalPlayer; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import top.r3944realms.eroticdungeongame.api.workspace.Services; + +import javax.annotation.Nullable; + +@Mixin(Minecraft.class) +public class MixinMinecraft { + @Shadow + @Nullable + public LocalPlayer player; + + @WrapMethod( + method = "startAttack" + ) + private boolean forbiddenAttack(Operation original){ + return Services.WORK_SPACE.tryToDoIfInDeviceAndRet(player, data -> false, original::call); + } + + @WrapMethod( + method = "startUseItem" + ) + private void forbiddenUseItem(Operation original){ + Services.WORK_SPACE.tryToDoIfInDevice(player, data -> {}, original::call); + } + + @WrapMethod( + method = "continueAttack" + ) + private void forbiddenContinueAttack(boolean leftClick, Operation original){ + Services.WORK_SPACE.tryToDoIfInDeviceAndRet(player, data -> false, () -> original.call(leftClick)); + } +} diff --git a/src/main/java/top/r3944realms/eroticdungeongame/mixin/minecraft/MixinPlayer.java b/src/main/java/top/r3944realms/eroticdungeongame/mixin/minecraft/MixinPlayer.java new file mode 100644 index 00000000..78d9fdf7 --- /dev/null +++ b/src/main/java/top/r3944realms/eroticdungeongame/mixin/minecraft/MixinPlayer.java @@ -0,0 +1,39 @@ +/* + * Copyright 2025-2026 R3944Realms + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package top.r3944realms.eroticdungeongame.mixin.minecraft; + +import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import org.spongepowered.asm.mixin.Mixin; +import top.r3944realms.eroticdungeongame.api.workspace.Services; + +@Mixin(Player.class) +public abstract class MixinPlayer extends LivingEntity { + protected MixinPlayer(EntityType entityType, Level level) { + super(entityType, level); + } + + @WrapMethod(method = "shouldShowName") + public boolean shouldShowName(Operation original) { + Player player = Player.class.cast(this); + return Services.WORK_SPACE.tryToDoIfInDeviceAndRet(player, data -> false, original::call); + } +} diff --git a/src/main/java/top/r3944realms/eroticdungeongame/mixin/minecraft/MixinPlayerRenderer.java b/src/main/java/top/r3944realms/eroticdungeongame/mixin/minecraft/MixinPlayerRenderer.java new file mode 100644 index 00000000..916b1dca --- /dev/null +++ b/src/main/java/top/r3944realms/eroticdungeongame/mixin/minecraft/MixinPlayerRenderer.java @@ -0,0 +1,37 @@ +/* + * Copyright 2025-2026 R3944Realms + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package top.r3944realms.eroticdungeongame.mixin.minecraft; + +import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.mojang.blaze3d.vertex.PoseStack; +import net.minecraft.client.player.AbstractClientPlayer; +import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.client.renderer.entity.player.PlayerRenderer; +import net.minecraft.network.chat.Component; +import org.spongepowered.asm.mixin.Mixin; +import top.r3944realms.eroticdungeongame.api.workspace.Services; + +@Mixin(PlayerRenderer.class) +public class MixinPlayerRenderer { + @WrapMethod( + method = "renderNameTag(Lnet/minecraft/client/player/AbstractClientPlayer;Lnet/minecraft/network/chat/Component;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V" + ) + private void renderNameTag(AbstractClientPlayer entity, Component displayName, PoseStack poseStack, MultiBufferSource buffer, int packedLight, Operation original) { + Services.WORK_SPACE.tryToDoIfInDevice(entity, data -> {}, () -> original.call(entity, displayName, poseStack, buffer, packedLight)); + } +} diff --git a/src/main/java/top/r3944realms/eroticdungeongame/other/geckolib/AutoPlayingSoundKeyframeHandler.java b/src/main/java/top/r3944realms/eroticdungeongame/other/geckolib/AutoPlayingSoundKeyframeHandler.java index 97c861e2..4b608db5 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/other/geckolib/AutoPlayingSoundKeyframeHandler.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/other/geckolib/AutoPlayingSoundKeyframeHandler.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.other.geckolib; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/util/BoundingBoxCalculator.java b/src/main/java/top/r3944realms/eroticdungeongame/util/BoundingBoxCalculator.java index 4806257a..6a4106b4 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/util/BoundingBoxCalculator.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/util/BoundingBoxCalculator.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.util; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/util/WoodTypeHelper.java b/src/main/java/top/r3944realms/eroticdungeongame/util/WoodTypeHelper.java index 4fca6f2c..a2d01c65 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/util/WoodTypeHelper.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/util/WoodTypeHelper.java @@ -1,13 +1,17 @@ /* - * * - * * Copyright (c) 2025 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.util; diff --git a/src/main/java/top/r3944realms/eroticdungeongame/workspace/WorkSpaceHelper.java b/src/main/java/top/r3944realms/eroticdungeongame/workspace/WorkSpaceHelper.java index 23ccfeb1..afb4b18f 100644 --- a/src/main/java/top/r3944realms/eroticdungeongame/workspace/WorkSpaceHelper.java +++ b/src/main/java/top/r3944realms/eroticdungeongame/workspace/WorkSpaceHelper.java @@ -1,18 +1,78 @@ /* - * * - * * Copyright (c) 2026 R3944Realms. All rights reserved. - * * - * * This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. - * * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ - * * or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. - * * - * * 本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 + * Copyright 2025-2026 R3944Realms * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ package top.r3944realms.eroticdungeongame.workspace; +import net.minecraft.world.entity.Entity; +import org.jetbrains.annotations.NotNull; +import top.r3944realms.eroticdungeongame.api.EroticDungeonGameApi; +import top.r3944realms.eroticdungeongame.api.capability.IPlayerDungeonData; import top.r3944realms.eroticdungeongame.api.workspace.IWorkSpaceHelper; +import top.r3944realms.eroticdungeongame.content.entity.SeatEntity; + +import java.util.concurrent.atomic.AtomicBoolean; +import java.util.concurrent.atomic.AtomicReference; +import java.util.function.Consumer; +import java.util.function.Function; +import java.util.function.Supplier; public class WorkSpaceHelper implements IWorkSpaceHelper { + + @Override + public boolean isInDevice(@NotNull Entity player) { + if (checkIsPlayer(player) && player.isPassenger() && player.getVehicle() instanceof SeatEntity) { + AtomicBoolean hasSeat = new AtomicBoolean(false); + player.getCapability(EroticDungeonGameApi.PLAYER_DUNGEON_DATA_CAP) + .ifPresent(i->{ + if (i.getDeviceMainBlockPos() != null) { + hasSeat.set(true); + } + }); + return hasSeat.get(); + } + return false; + } + + @Override + public void tryToDoIfInDevice(@NotNull Entity player, Consumer action, Runnable fallback) { + if (checkIsPlayer(player) && player.isPassenger() && player.getVehicle() instanceof SeatEntity) { + player.getCapability(EroticDungeonGameApi.PLAYER_DUNGEON_DATA_CAP) + .ifPresent(i->{ + if (i.getDeviceMainBlockPos() != null) { + action.accept(i); + } else fallback.run(); + }); + return; + } + fallback.run(); + } + + @Override + public T tryToDoIfInDeviceAndRet(@NotNull Entity player, Function action, Supplier fallback) { + if (checkIsPlayer(player) && player.isPassenger() && player.getVehicle() instanceof SeatEntity) { + AtomicReference ret = new AtomicReference<>(); + player.getCapability(EroticDungeonGameApi.PLAYER_DUNGEON_DATA_CAP) + .ifPresent(i->{ + if (i.getDeviceMainBlockPos() != null) { + ret.set(action.apply(i)); + } else ret.set(fallback.get()); + }); + return ret.get(); + } + return fallback.get(); + } + } diff --git a/src/main/resources/eroticdungeongame.mixins.json b/src/main/resources/eroticdungeongame.mixins.json index fc6b75cd..cbe0e830 100644 --- a/src/main/resources/eroticdungeongame.mixins.json +++ b/src/main/resources/eroticdungeongame.mixins.json @@ -6,14 +6,14 @@ "compatibilityLevel": "JAVA_17", "refmap": "eroticdungeongame.refmap.json", "mixins": [ - "MixinEntity", - "MixinLivingEntity", - "MixinPlayer", + "minecraft.MixinEntity", + "minecraft.MixinLivingEntity", + "minecraft.MixinPlayer", "bendylib.MixinBendableCuboidBuilder" ], "client": [ - "MixinGameRender", - "MixinMinecraft", - "MixinPlayerRenderer" + "minecraft.MixinGameRender", + "minecraft.MixinMinecraft", + "minecraft.MixinPlayerRenderer" ] } diff --git a/temp.txt b/temp.txt deleted file mode 100644 index b5f8da64..00000000 --- a/temp.txt +++ /dev/null @@ -1,105 +0,0 @@ -X : --ALL: Block.box(0, 0, 14.45, 16, 16, 16) - -PC: --FOOT: Stream.of( -Block.box(4, 0, 14, 12, 16, 16), -Block.box(12, 8, 14, 16, 14, 16), -Block.box(0, 8, 14, 4, 14, 16) -).reduce((v1, v2) -> Shapes.join(v1, v2, BooleanOp.OR)).get(); --HEAD: Block.box(4, 0, 14, 12, 16, 16) --RIGHT: Block.box(9, 8, 14, 16, 14, 16) --LEFT: Block.box(0, 8, 14, 7, 14, 16) - -C: --FOOT: Block.box(4, 0, 14, 12, 16, 16) --HEAD: Stream.of( -Block.box(4, 2, 14, 12, 8, 16), -Block.box(4, 8, 14, 12, 16, 16), -Block.box(4, 0, 14, 12, 2, 16), -Block.box(12, 2, 14, 16, 8, 16), -Block.box(0, 2, 14, 4, 8, 16) -).reduce((v1, v2) -> Shapes.join(v1, v2, BooleanOp.OR)).get(); --LEFT: Block.box(0, 2, 14, 7, 8, 16) --RIGHT:Block.box(9, 2, 14, 16, 8, 16) - --POLE -upper: -Shapes.join(Stream.of( -Block.box(8, 0, 6, 10, 16, 8), -Block.box(6, 0, 8, 8, 16, 10), -Block.box(8, 0, 8, 10, 16, 10), -Block.box(6, 0, 6, 8, 16, 8) -).reduce((v1, v2) -> Shapes.join(v1, v2, BooleanOp.OR)).get();, Stream.of( -Block.box(1, 13.5, 10, 15, 15, 11), -Block.box(1, 10.5, 10, 2.5, 13.5, 11), -Block.box(1, 9, 10, 15, 10.5, 11), -Block.box(5.5, 10.5, 10, 10.5, 13.5, 11), -Block.box(13.5, 10.5, 10, 15, 13.5, 11) -).reduce((v1, v2) -> Shapes.join(v1, v2, BooleanOp.OR)).get();, BooleanOp.OR) - -below: -Shapes.join(Stream.of( -Block.box(1, 6.5, 10, 15, 8, 11), -Block.box(1, 3.5, 10, 2.5, 6.5, 11), -Block.box(1, 2, 10, 15, 3.5, 11), -Block.box(5.5, 3.5, 10, 10.5, 6.5, 11), -Block.box(13.5, 3.5, 10, 15, 6.5, 11) -).reduce((v1, v2) -> Shapes.join(v1, v2, BooleanOp.OR)).get();, Stream.of( -Block.box(8, 0, 6, 10, 16, 8), -Block.box(6, 0, 8, 8, 16, 10), -Block.box(8, 0, 8, 10, 16, 10), -Block.box(6, 0, 6, 8, 16, 8) -).reduce((v1, v2) -> Shapes.join(v1, v2, BooleanOp.OR)).get();, BooleanOp.OR) - --BED: -Stream.of( -Stream.of( -Stream.of( -Block.box(13.25, 9, -4.5, 17.75, 10, 0.5), -Block.box(16.75, 10, -2.5, 17.75, 14, -1.5), -Block.box(14.25, 13, -2.5, 16.75, 14, -1.5), -Block.box(13.25, 10, -2.5, 14.25, 14, -1.5) -).reduce((v1, v2) -> Shapes.join(v1, v2, BooleanOp.OR)).get();, -Stream.of( -Block.box(-1.75, 9, -4.5, 2.75, 10, 0.5), -Block.box(-1.75, 10, -2.5, -0.75, 14, -1.5), -Block.box(-0.75, 13, -2.5, 1.75, 14, -1.5), -Block.box(1.75, 10, -2.5, 2.75, 14, -1.5) -).reduce((v1, v2) -> Shapes.join(v1, v2, BooleanOp.OR)).get();, -Stream.of( -Block.box(0.75, 8, 14.5, 5.25, 9, 19.5), -Block.box(1.75, 12, 16.5, 4.25, 13, 17.5), -Block.box(0.75, 9, 16.5, 1.75, 13, 17.5), -Block.box(4.25, 9, 16.5, 5.25, 13, 17.5) -).reduce((v1, v2) -> Shapes.join(v1, v2, BooleanOp.OR)).get();, -Stream.of( -Block.box(14.25, 9, 16.5, 15.25, 13, 17.5), -Block.box(10.75, 9, 16.5, 11.75, 13, 17.5), -Block.box(11.75, 12, 16.5, 14.25, 13, 17.5), -Block.box(10.75, 8, 14.5, 15.25, 9, 19.5) -).reduce((v1, v2) -> Shapes.join(v1, v2, BooleanOp.OR)).get(); -).reduce((v1, v2) -> Shapes.join(v1, v2, BooleanOp.OR)).get();, -Stream.of( -Block.box(2, 0.1, 14, 4, 6.1, 16), -Block.box(12, 0, 14, 14, 6, 16), -Block.box(12, 0, 0, 14, 6, 2), -Block.box(2, 0, 0, 4, 6, 2) -).reduce((v1, v2) -> Shapes.join(v1, v2, BooleanOp.OR)).get();, -Stream.of( -Block.box(2, 6, -4, 4, 8, 12), -Block.box(2, 6, 12, 4, 8, 19), -Block.box(12, 6, 12, 14, 8, 19), -Block.box(12, 6, -4, 14, 8, 12), -Block.box(-1.75, 8, -3, 4, 9, -1), -Block.box(12, 8, -3, 17.75, 9, -1) -).reduce((v1, v2) -> Shapes.join(v1, v2, BooleanOp.OR)).get();, -Stream.of( -Block.box(2.152, 8.48, 0.82, 3.082, 14.2, 11.64), -Block.box(0.902, 8.48, 0.82, 2.082, 15.2, 11.64), -Block.box(4.28, 12.88, 0.92, 11.72, 14.06, 11.54), -Block.box(5.03, 11.98, 0.92, 10.97, 12.91, 11.54), -Block.box(13.31, 6.95, 0.82, 14.49, 13.67, 11.64), -Block.box(12.31, 6.95, 0.82, 13.24, 12.67, 11.64) -).reduce((v1, v2) -> Shapes.join(v1, v2, BooleanOp.OR)).get(); -).reduce((v1, v2) -> Shapes.join(v1, v2, BooleanOp.OR)).get(); \ No newline at end of file