Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
590 commits
Select commit Hold shift + click to select a range
3491065
fix APIs 1204
PTOM76 Sep 12, 2024
999bc89
fix APIs 1192
PTOM76 Sep 12, 2024
20f26c0
add APIs
PTOM76 Sep 13, 2024
c684820
add gettime
PTOM76 Sep 13, 2024
f6e8a81
add APIs-2
PTOM76 Sep 13, 2024
1736c98
add APIs
PTOM76 Sep 14, 2024
2b25806
add APIs
PTOM76 Sep 16, 2024
6362e2d
add APIs
PTOM76 Sep 19, 2024
5498415
add APIs
PTOM76 Sep 27, 2024
16ce4a6
add APIs
PTOM76 Sep 28, 2024
899000c
add APIs
PTOM76 Sep 28, 2024
28943a2
add APIs
PTOM76 Jul 13, 2024
9894ed5
Fix APIs
PTOM76 Sep 30, 2024
b072d8e
Fix APIs2
PTOM76 Sep 30, 2024
10c7afd
fix APIs3
PTOM76 Sep 30, 2024
8cf83d3
add APIs
PTOM76 Oct 6, 2024
4d1a69d
add APIs
PTOM76 Oct 8, 2024
f654821
fix mods.toml, fabric.mod.json
PTOM76 Oct 9, 2024
3518594
Add APIs etc
PTOM76 Oct 12, 2024
84476cf
gamever
PTOM76 Oct 12, 2024
aa32c37
fix APIs
PTOM76 Oct 12, 2024
7a00bd6
remove compatdatapacks
PTOM76 Oct 12, 2024
c7e9d78
fix ScreenUtil
PTOM76 Oct 12, 2024
1b9f620
add apis-mpl v3
PTOM76 Oct 15, 2024
4b58f55
use compatitemprovider
PTOM76 Nov 6, 2024
490bf7e
fix mixin
PTOM76 Nov 9, 2024
db023c0
add TagAPI and Fix CompatColor
PTOM76 Nov 9, 2024
3e1c715
changelog
PTOM76 Nov 9, 2024
1378bf7
fix1192
PTOM76 Nov 9, 2024
b654eb1
back TypedActionResult
PTOM76 Nov 9, 2024
d9aed7a
add Midohra Easy Builder API
PTOM76 Nov 9, 2024
eda1d0b
fix StackActionResult
PTOM76 Nov 9, 2024
ab6cb4e
fix APIs
PTOM76 Nov 10, 2024
04bbee1
Fix recipe api
PTOM76 Nov 10, 2024
290b649
add create function
PTOM76 Nov 10, 2024
9eb385c
add APIs v3.0.3
PTOM76 Nov 12, 2024
b9f6b1c
fix APIs v3.0.3
PTOM76 Nov 12, 2024
e863a4e
fix APIs v3.0.3-2
PTOM76 Nov 12, 2024
5378fee
add with fix APIs v3.0.4
PTOM76 Nov 13, 2024
e098d64
fix midohera api
PTOM76 Nov 16, 2024
45a00d2
fix midohera api
PTOM76 Nov 16, 2024
d1dcd42
fix APIs
PTOM76 Nov 16, 2024
bce098a
1211
PTOM76 Nov 16, 2024
5ce900e
1204
PTOM76 Nov 16, 2024
5e09efa
add APIs
PTOM76 Nov 20, 2024
7fedba6
Merge remote-tracking branch 'origin/1.19.2' into 1.19.2
PTOM76 Nov 20, 2024
a9dc6f5
add APIs
PTOM76 Nov 23, 2024
ed3b721
1201--1
PTOM76 Nov 23, 2024
14fe106
fix craft
PTOM76 Nov 23, 2024
5c6e59d
fix 1211
PTOM76 Nov 23, 2024
6b57d43
fix 1204
PTOM76 Nov 16, 2024
e7eeaa6
fix 1201
PTOM76 Nov 23, 2024
6cc7580
fix 1192
PTOM76 Nov 23, 2024
9244b0c
add APIs
PTOM76 Nov 26, 2024
3493c3a
add APIs
PTOM76 Nov 29, 2024
42b4340
1204
PTOM76 Nov 29, 2024
921dc5f
ofDir
PTOM76 Nov 29, 2024
572a822
1192
PTOM76 Nov 29, 2024
c944b40
1192-1
PTOM76 Nov 29, 2024
d92bdb7
1192-2
PTOM76 Nov 30, 2024
8b07688
add APIs
PTOM76 Dec 1, 2024
7ad8522
1211
PTOM76 Dec 1, 2024
ee655cb
1211-2
PTOM76 Dec 1, 2024
eb610c9
1204
PTOM76 Dec 1, 2024
8b0b995
removeneo
PTOM76 Dec 1, 2024
b3d701a
1192
PTOM76 Dec 1, 2024
39dc7fe
ExtendSettings
PTOM76 Dec 1, 2024
108d524
Add function
PTOM76 Sep 25, 2022
58a2f95
1211
PTOM76 Dec 7, 2024
bdfe842
1192
PTOM76 Dec 7, 2024
bb68b74
miss
PTOM76 Dec 7, 2024
bab2419
fix apis 1192
PTOM76 Dec 7, 2024
e3e3150
add apis
PTOM76 Jan 27, 2025
6a8ccc2
fix APIs
PTOM76 Feb 5, 2025
511046b
fix APIs
PTOM76 Feb 12, 2025
b023a19
turtle_scute -> scute (-1.20.4)
PTOM76 Mar 21, 2025
6084a3b
1204
PTOM76 Mar 22, 2025
986712f
1201
PTOM76 Mar 22, 2025
16e2c8c
add APIs
PTOM76 Mar 26, 2025
9b1794c
fix api
PTOM76 Mar 31, 2025
100e088
add APIs (port to 1215)
PTOM76 Apr 3, 2025
fd4101c
1213
PTOM76 Apr 3, 2025
49975f4
add APIs
PTOM76 Apr 6, 2025
c6a36ab
add APIs
PTOM76 Apr 7, 2025
1f51502
1201
PTOM76 Apr 8, 2025
e4809a5
1192
PTOM76 Sep 26, 2022
f72cb66
add APIs
PTOM76 Apr 9, 2025
14219c2
1211
PTOM76 Apr 9, 2025
3c46962
[cp] fix cp
PTOM76 Apr 13, 2025
2ba5f20
[cp] add APIs
PTOM76 Apr 12, 2025
985262d
[cp] fix boat
PTOM76 Apr 13, 2025
50e6180
[cp] set ITEM_DISPLAY to null
PTOM76 Apr 13, 2025
36d1027
[cp] fix readme
PTOM76 Apr 13, 2025
f245d36
[cp] add note
PTOM76 Apr 13, 2025
f825955
[cp] Update README.md
PTOM76 Apr 13, 2025
9976f21
[cp] add RenderUtil v2
PTOM76 Apr 15, 2025
691eb92
[cp] change readme
PTOM76 Apr 16, 2025
6faee95
[cp] add api to ItemEntityUtil
PTOM76 Apr 16, 2025
6a962a6
[cp] add method to ItemBuilder
PTOM76 Apr 19, 2025
defa1b3
[cp] fix builder
PTOM76 Apr 20, 2025
cbbe7e9
[cp] fix builder
PTOM76 Apr 20, 2025
8208b94
[cp] move to built package
PTOM76 Apr 20, 2025
142b486
[cp] add share
PTOM76 Apr 20, 2025
12bbf3d
[cp] rename isExit to isPresent
PTOM76 Apr 20, 2025
44cbb00
[cp] add BlockEntityBuilder
PTOM76 Apr 20, 2025
ed33d41
[cp] add api to block builder
PTOM76 Apr 22, 2025
b8f4035
[cp] fix api to block builder
PTOM76 Apr 22, 2025
041b4b4
[cp] fix #33
PTOM76 Apr 22, 2025
f978e85
[cp] ascuboid
PTOM76 Apr 22, 2025
c15da0e
[cp] add isEmpty() in SimpleInventoryUtil
PTOM76 Apr 23, 2025
1e8e785
[cp] change info
PTOM76 Apr 26, 2025
4848635
[cp] Add CompatWaterloggable
PTOM76 Apr 27, 2025
31f7871
[cp] add isClient() to StateForNeighborUpdateArgs
PTOM76 Apr 27, 2025
c13f1dd
[cp] add apis to easybuilder
PTOM76 Apr 28, 2025
1f4f20d
[cp] add lang api
PTOM76 May 8, 2025
24f8e1c
[cp] add apis rendering v2
PTOM76 May 23, 2025
d85a2cc
[cp] add apis rendering
PTOM76 May 23, 2025
e268080
[cp] change VertexRendering calls to WorldRenderer
PTOM76 May 24, 2025
b210bdd
[cp] fix VertexConsumerUtil
PTOM76 May 24, 2025
92a9057
[cp] delete render layer
PTOM76 May 24, 2025
16a585e
[cp] use method_3258
PTOM76 May 24, 2025
9afa805
[cp] fix LangUtil
PTOM76 May 24, 2025
d96dabc
[cp] drawFilledBox to use WorldRenderer.drawBox
PTOM76 May 24, 2025
553d132
[cp] info
PTOM76 May 24, 2025
e6133d4
[cp] add null checks in ItemStack creation methods
PTOM76 May 24, 2025
14fca3d
[cp] bump mod version to 3.2.7
PTOM76 May 24, 2025
5e66eb6
[cp] fix CompatInventory
PTOM76 Jun 1, 2025
c194274
[cp] dump version 3.2.8
PTOM76 Jun 1, 2025
580711c
[cp] add GameOptionsWrapper
PTOM76 Jun 7, 2025
f7f148f
[cp] add Midohra method
PTOM76 Jun 13, 2025
de7e773
[cp] add apis
PTOM76 Jun 13, 2025
22bdeab
[cp] refactor: change blockEntityType to Supplier in BlockWithBlockEn…
PTOM76 Jun 13, 2025
22fd1e6
[cp] bump version to 3.2.9 and update copyright years in LICENSE
PTOM76 Jun 13, 2025
be160a3
[cp] feat: add CompatPacketByteBuf and enhance networking methods for…
PTOM76 Jun 14, 2025
ca4e90d
[cp] feat: enhance rendering utilities and add WorldRendererUtil for …
PTOM76 Jun 14, 2025
71033b8
[cp] remove create method in CompatRenderLayer
PTOM76 Jun 14, 2025
b5ae0cf
[cp] remove draw method from CompatRenderLayer
PTOM76 Jun 14, 2025
a400d01
[cp] fix
PTOM76 Jun 14, 2025
729e723
[cp] fix-1192: replace joml Matrix imports with Minecraft's Matrix cl…
PTOM76 Jun 14, 2025
83672ed
[cp] fix: update next method in VertexConsumerUtil to return the next…
PTOM76 Jun 14, 2025
bd9f0bb
[cp] bump version to 3.3.0 in info.properties
PTOM76 Jun 14, 2025
989b0b5
[cp] feat: update DrawObjectMV methods to public and add ScreenUtil f…
PTOM76 Jun 15, 2025
860394a
[cp] feat: add BlockEntityTypeBuilder for flexible block entity type …
PTOM76 Jun 15, 2025
36142ac
[cp] feat: add getWidth and getHeight methods to ScreenUtil for scree…
PTOM76 Jun 15, 2025
416b37c
[cp] bump version to 3.3.1 in info.properties
PTOM76 Jun 15, 2025
be960a0
[cp] fix
PTOM76 Jun 15, 2025
79526cf
[cp] fix-2
PTOM76 Jun 15, 2025
2a17350
[cp] fix CompatActionResult
PTOM76 Jun 17, 2025
b0723e2
[cp] add of(List<ItemStack>) to ItemStackList
PTOM76 Jun 17, 2025
6acf6b0
[cp] bump version to 3.3.2 in info.properties
PTOM76 Jun 17, 2025
6e42d4b
[cp] refactor: rename of method to of2 for clarity in ItemStackList
PTOM76 Jun 17, 2025
931686d
[cp] add copyFrom in NbtUtil
PTOM76 Jun 19, 2025
0ec84dd
[cp] add NbtRWUtil
PTOM76 Jun 19, 2025
41abe78
[cp] bump version 3.3.3
PTOM76 Jun 19, 2025
f4622f7
[cp] feat: implement NbtRWUtil for enhanced NBT read/write operations
PTOM76 Jun 21, 2025
fd9bb63
[cp] fix: implement BlockStatePropertyHolder in BlockScheduledTickEve…
PTOM76 Jun 22, 2025
1a5a872
[cp] feat: add methods to register render types for blocks and fluids…
PTOM76 Jun 22, 2025
52e4968
[cp] fix-1214
PTOM76 Jun 22, 2025
8524793
[cp] add bat
PTOM76 Jun 22, 2025
079fdb3
[cp] fix: update artifactId and add GitHub Packages repository config…
PTOM76 Jun 22, 2025
1d90a35
[cp] docs: update version references to include GitHub Packages for c…
PTOM76 Jun 23, 2025
0572d0d
[cp] feat: add methods to check emptiness and copy NbtRWArgs in NbtRW…
PTOM76 Jun 24, 2025
3dbad8b
feat: enhance NBT read/write methods in BlockEntityDataUtil to includ…
PTOM76 Jun 24, 2025
0a145b3
[cp] feat: add ClippedInventory and ClippedItemStackList for inventor…
PTOM76 Jun 27, 2025
0db5dc8
[cp] bump version 3.3.4
PTOM76 Jun 28, 2025
a92c662
[cp] bump version 3.3.5
PTOM76 Jul 5, 2025
f3f7df4
[cp] bump version 3.3.6
PTOM76 Jul 5, 2025
59d5c27
[cp] fix readNbt method to use ReadNbtArgs
PTOM76 Jul 6, 2025
e28aedc
[cp] fix: handle null Identifier in fromMinecraft method
PTOM76 Jul 6, 2025
ed5dd89
[cp] feat: add toString and getName methods to Direction class
PTOM76 Jul 6, 2025
ef08c99
[cp] feat: add ChunkManagerUtil for chunk update management
PTOM76 Jul 6, 2025
7674575
[cp] feat: add BlockColorEvent and related classes for block color ma…
PTOM76 Jul 6, 2025
186ee32
[cp] feat: add ExpectPlatform annotation for compatibility management
PTOM76 Jul 6, 2025
2cf620c
[cp] fix RenderAttachmentBlockEntity and RenderDataBlockEntityImpl fo…
PTOM76 Jul 6, 2025
4fd9ebb
[cp] fix RenderAttachmentBlockEntity and RenderDataBlockEntityImpl fo…
PTOM76 Jul 6, 2025
e39d44a
[cp] feat: add methods for item stack serialization in NbtRWUtil
PTOM76 Jul 6, 2025
5225520
fix: update registry lookup in readNbt method for IFluidStorage
PTOM76 Jul 6, 2025
ba7dfe3
[cp] bump version 3.3.7
PTOM76 Jul 6, 2025
30fd4eb
[cp] feat: add Registry of ChunkTicketType
PTOM76 Jul 6, 2025
40ccba7
[cp] bump version 3.3.8
PTOM76 Jul 6, 2025
7bae95e
[cp] feat: implement hashCode and equals methods for ChunkTicketType
PTOM76 Jul 6, 2025
2d0391a
[cp] bump version 3.3.9
PTOM76 Jul 9, 2025
ccca937
[cp] version neoforge only fix.1
PTOM76 Jul 12, 2025
f7a2e73
[cp] add register for CompatIdentifier
PTOM76 Jul 12, 2025
26ec2db
[cp] bump version 3.3.9
PTOM76 Jul 12, 2025
ad665e5
[cp] changelog
PTOM76 Jul 19, 2025
c8a6a69
[cp] version 3.4.0
PTOM76 Aug 10, 2025
739377f
[cp] fix-1204
PTOM76 Aug 10, 2025
ecb2064
[cp] feat: add methods to retrieve block and block wrapper in TileTic…
PTOM76 Oct 19, 2025
d744f03
[cp] HitResult API
PTOM76 Oct 19, 2025
b0eb3e8
[cp] bump version to 3.4.1 and update changelog
PTOM76 Oct 19, 2025
4fb555e
[cp] aganist not working, retrun null
PTOM76 Oct 19, 2025
8ba51ea
[cp] add ContainerUser
PTOM76 Oct 19, 2025
7b29706
[cp] fix ContainerUser
PTOM76 Oct 19, 2025
681480e
[cp] use CompatContainerUser
PTOM76 Oct 19, 2025
9feb507
[cp] CompatKeyBinding
PTOM76 Oct 19, 2025
0560708
[cp] enable parallel builds and increase worker limit
PTOM76 Oct 19, 2025
87398f4
[cp] update publish and pull scripts for version 1.21.9 checkout and …
PTOM76 Oct 19, 2025
a68199b
[cp] Add APIs, Fix APIs
PTOM76 Oct 23, 2025
fd45815
[cp] add method that able to get world id to worldutil
PTOM76 Oct 23, 2025
9f696a9
[cp] add writeToStack method to BlockEntityUtil
PTOM76 Oct 25, 2025
420fab8
[cp] rm compnent import
PTOM76 Oct 25, 2025
978062c
[cp] fix writeToStack
PTOM76 Oct 25, 2025
8bf03b7
[cp] fix writeToStack1204
PTOM76 Oct 25, 2025
1e9d79d
[cp] fix writeToStack 1204
PTOM76 Oct 25, 2025
207c1a6
[cp] fix getblockentitynbt
PTOM76 Oct 25, 2025
49550e7
[cp] add APIs, Vector, Entity getPos
PTOM76 Oct 25, 2025
bff03b9
[cp] fix 1192
PTOM76 Oct 25, 2025
1d269d4
[cp] bump version 3.4.4
PTOM76 Feb 7, 2026
34f20df
[cp] add CameraWrapper
PTOM76 Feb 7, 2026
b8648f4
[cp] fix for 1.21.5 less
PTOM76 Feb 7, 2026
d484b03
[cp] fix publish.bat
PTOM76 Feb 7, 2026
866afe3
[cp] fix publish.bat
PTOM76 Feb 7, 2026
55120ac
[cp] bump version 3.4.5
PTOM76 Feb 7, 2026
376e504
[cp] bump version 3.4.6
PTOM76 Feb 8, 2026
3968400
[cp] changelog
PTOM76 Feb 8, 2026
deac4ef
[cp] feat: add Box, Vector Utils, improve WorldUtils
PTOM76 Mar 18, 2026
2c7f6f1
[cp] Bump version 3.4.7
PTOM76 Mar 18, 2026
aff3b59
use vec3f
PTOM76 Mar 18, 2026
c064c85
[cp] use getLengthX/Y/Z
PTOM76 Mar 18, 2026
62be3d6
[cp] fix: replace vec3d to x/y/z
PTOM76 Mar 18, 2026
1665568
[cp] feat: add values, horizontal, vertical, hashCode, equals to Dire…
PTOM76 Mar 19, 2026
da1f8aa
[cp] feat: impl hashCode, equals methods in Box, BlockPos
PTOM76 Mar 19, 2026
3a52a39
[cp] feat: add message sending methods to Player class
PTOM76 Mar 20, 2026
12ef182
[cp] feat: implement BlockApiLookupWrapper and BlockApiLookupWithDire…
PTOM76 Mar 20, 2026
ed2561c
[cp] feat: add methods to retrieve Midohra world, position, state, an…
PTOM76 Mar 20, 2026
a4a1f20
[cp] feat: add FluidWrapper methods and enhance FluidStateUtil for fl…
PTOM76 Mar 20, 2026
1a955f1
[cp] feat: add DirectionBoolPropertyUtil for managing directional boo…
PTOM76 Mar 20, 2026
90581a1
[cp] bump version 3.4.8
PTOM76 Mar 20, 2026
304d884
[cp] feat: enhance block entity rendering with new CompatItemRenderUt…
PTOM76 Mar 21, 2026
da780c5
[cp] feat: introduce CompatFormatting, CompatStyle, and CompatTextCol…
PTOM76 Mar 21, 2026
b59dd54
[cp] docs: update README to include cross-version and cross-platform …
PTOM76 Mar 21, 2026
16068d2
[cp] chore: bump version 3.4.9
PTOM76 Mar 21, 2026
bbfd88a
[cp] fix: parseOrThrow in CompatTextColor
PTOM76 Mar 21, 2026
52a97ad
[cp] feat: add CompatParticleType and CompatParticleTypes for enhance…
PTOM76 Mar 22, 2026
e333a5d
[cp] feat: add utility methods for BlockEntity and BlockPos iteration
PTOM76 Mar 22, 2026
ab87942
[cp] feat: add utility methods for BlockState manipulation in IProper…
PTOM76 Mar 23, 2026
7e08db2
[cp] feat: implement hashCode and equals methods for various wrapper …
PTOM76 Mar 23, 2026
1ca97d7
[cp] feat: add canPlaceAt method and CanPlaceAtArgs class for block p…
PTOM76 Mar 23, 2026
677cc48
[cp] chore: bump version 3.5.0
PTOM76 Mar 23, 2026
091b252
[cp] feat: add methods for Midohra world and position handling in Com…
PTOM76 Mar 23, 2026
5380963
[cp] fix: update COPPER_FIRE_FLAME particle type to use FLAME type
PTOM76 Mar 23, 2026
144361e
[cp] fix: update TINTED_LEAVES and FIREFLY particle types to use PALE…
PTOM76 Mar 23, 2026
67a34a6
[cp] fix: update PALE_OAK_LEAVES and TINTED_LEAVES particle types to …
PTOM76 Mar 23, 2026
6226e95
[cp] fix: add import for WorldView in CompatBlock.java
PTOM76 Mar 23, 2026
9bb46ee
[cp] fix CompatParticleTypes1211
PTOM76 Mar 23, 2026
217a903
[cp] fix: change canPlaceAt method visibility from protected to publi…
PTOM76 Mar 23, 2026
35296c6
[cp] fix: CompatParticleTypes 1204
PTOM76 Mar 23, 2026
ab08f86
[cp] fix: CompatParticleTypes 1201
PTOM76 Mar 23, 2026
7935579
[cp] fix: CompatParticleTypes 1192
PTOM76 Mar 23, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
44 changes: 44 additions & 0 deletions .github/workflows/auto-cherry-pick.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: Auto Cherry-Pick
on:
push:
branches:
- "1.*" # 1.21.5, 1.21.4...のブランチでpushされたとき
pull_request:
types:
- closed # PRがmergeされたとき
jobs:
cherry-pick:
if: |
(github.event_name == 'push' ||
(github.event_name == 'pull_request' && github.event.pull_request.merged == true))
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Check
id: check
run: |
COMMIT_MSG=$(git log -1 --pretty=%B)
if echo "$COMMIT_MSG" | grep -q '^\[cp\]'; then
echo "pickable=true" >> $GITHUB_ENV
fi
- name: Setup Git
if: env.pickable == 'true'
run: |
git config user.name "github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"
- name: Chmod cherry-pick.sh
if: env.pickable == 'true'
run: |
if [ ! -f .github/workflows/cherry-pick.sh ]; then
echo "cherry-pick.sh not found"
exit 1
fi
git update-index --assume-unchanged .github/workflows/cherry-pick.sh
chmod +x .github/workflows/cherry-pick.sh
- name: Run cherry-pick.sh
if: env.pickable == 'true'
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: .github/workflows/cherry-pick.sh
52 changes: 52 additions & 0 deletions .github/workflows/cherry-pick.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
#!/bin/bash
set -e

git fetch --all
CURRENT_BRANCH="${GITHUB_REF##*/}"
SHA=$(git log -1 --pretty=format:"%H")
MSG=$(git log -1 --pretty=%B)

echo "Current: $CURRENT_BRANCH"
echo "SHA: $SHA"

BRANCHES=$(git for-each-ref --format='%(refname:short)' refs/remotes/origin | grep -E '^origin/1\.' | sed 's|origin/||' | sort -Vr)

TARGETS=()
FOUND=0
while read -r b; do
if [ "$FOUND" = "1" ]; then
TARGETS+=("$b")
fi
if [ "$b" = "$CURRENT_BRANCH" ]; then
FOUND=1
fi
done <<< "$BRANCHES"

for TARGET_BRANCH in "${TARGETS[@]}"; do
if [ -z "$TARGET_BRANCH" ]; then
continue
fi

echo "Trying to cherry-pick to $TARGET_BRANCH..."

git reset --hard
git switch -c "$TARGET_BRANCH" "origin/$TARGET_BRANCH"

echo "Cherry-picking $SHA from $CURRENT_BRANCH to $TARGET_BRANCH..."
if git cherry-pick "$SHA"; then
git push origin "$TARGET_BRANCH"
echo "Cherry-pick successful. Pushed to $TARGET_BRANCH."
continue
fi

echo "Cherry-pick failed. Attempting to resolve conflicts..."

git cherry-pick --abort
gh auth setup-git
gh pr create \
--base "$TARGET_BRANCH" \
--head "$CURRENT_BRANCH" \
--title "Manual Cherry-pick needed: $SHA" \
--body "Cherry-pick of $SHA from $CURRENT_BRANCH to $TARGET_BRANCH failed due to conflicts."
exit 0
done
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ atlassian-ide-plugin.xml
*.zip
*.tar.gz
*.rar
*.php

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
Expand Down Expand Up @@ -116,3 +117,5 @@ run/

# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored)
!gradle-wrapper.jar

php/
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2022 Pitan
Copyright (c) 2022-2025 Pitan

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
128 changes: 128 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
# MCPitanLib
## License
- MIT License

## 日本語
MCPitanLibはライブラリです。 1つのjarで複数のMCバージョンを対応させるためのものです。 <br />
開発中であるため、予告なく仕様が変更されることがあったり、不具合があるかもしれません。 <br />
私専用につくっているため、他の方が使うことをあまり想定していません。 <br />

クロスバージョンかつクロスプラットフォームを目指しています。

### 対応状況
- アイテムの追加
- ブロックの追加
- エンティティの追加
- ブロックエンティティの追加
- クリエイティブタブの追加
- GUIの追加
- サウンドの追加

となります。

### 前提MOD
- MODローダー
- [FabricMC](https://fabricmc.net/)
- [Minecraft Forge](https://files.minecraftforge.net/)
- [NeoForge](https://neoforged.net/)
- Architectury API ([CurseForge](https://www.curseforge.com/minecraft/mc-mods/architectury-api) | [Modrinth](https://modrinth.com/mod/architectury-api))

### ダウンロード
- [CurseForge](https://www.curseforge.com/minecraft/mc-mods/mcpitanlibarch)
- [Modrinth](https://modrinth.com/mod/mcpitanlibarch)

### 使い方
`build.gradle`に以下のように記述してください。
```groovy
repositories {
maven {
url = "https://maven.pitan76.net/"
}
}

dependencies {
// FabricMC
modImplementation "net.pitan76:mcpitanlib-fabric:${rootProject.mcpitanlib_version}"

// Minecraft Forge
//modImplementation "net.pitan76:mcpitanlib-forge:${rootProject.mcpitanlib_version}"

// NeoForge
//modImplementation "net.pitan76:mcpitanlib-neoforge:${rootProject.mcpitanlib_version}"
}
```

`gradle.properties`に以下のように記述してください。
```properties
# Example: mcpitanlib_version=+1.18.2:3.3.3
mcpitanlib_version=+x.x.x:x.x.x
```

バージョンは[GitHub Packages](https://github.com/PTOM76/maven/packages/?q=net.pitan76.mcpitanlib) (3.3.3以降) or [maven.pitan76.net](https://maven.pitan76.net/net/pitan76/) (3.3.3以前)で確認してください。

MCPitanLibを用いたMOD開発は「common/src/main/java/net/pitan76/mcpitanlib/test/ExampleMod.java」を参考にしてください。

## English
MCPitanLib is a library. It is for supporting multiple MC versions with one jar. <br />
It is under development, so the specification may change without notice, and there may be bugs. <br />
I am creating it for my own use, so I don't expect others to use it much. <br />

It aims to be cross-version and cross-platform.

### Supported features
- Adding items
- Adding blocks
- Adding entities
- Adding block entities
- Adding creative tabs
- Adding GUIs
- Adding sounds

### Required MOD
- MOD Loader
- [FabricMC](https://fabricmc.net/)
- [Minecraft Forge](https://files.minecraftforge.net/)
- [NeoForge](https://neoforged.net/)
- [Architectury API](https://www.curseforge.com/minecraft/mc-mods/architectury-api) ([CurseForge](https://www.curseforge.com/minecraft/mc-mods/architectury-api) | [Modrinth](https://modrinth.com/mod/architectury-api))

### Download
- [CurseForge](https://www.curseforge.com/minecraft/mc-mods/mcpitanlibarch)
- [Modrinth](https://modrinth.com/mod/mcpitanlibarch)

### How to use
Write as follows in `build.gradle`.
```groovy
repositories {
maven {
url = "https://maven.pitan76.net/"
}
}

dependencies {
// FabricMC
modImplementation "net.pitan76:mcpitanlib-fabric${rootProject.mcpitanlib_version}"

// Minecraft Forge
//modImplementation "net.pitan76:mcpitanlib-forge${rootProject.mcpitanlib_version}"

// NeoForge
//modImplementation "net.pitan76:mcpitanlib-neoforge${rootProject.mcpitanlib_version}"
}
```

Write as follows in `gradle.properties`.
```properties
# Example: mcpitanlib_version=+1.18.2:3.2.4
mcpitanlib_version=+x.x.x:x.x.x
```

Please check the version at [GitHub Packages](https://github.com/PTOM76/maven/packages/?q=net.pitan76.mcpitanlib) (for versions 3.3.3 and later) or [maven.pitan76.net](https://maven.pitan76.net/net/pitan76/) (for versions before 3.3.3).

For MOD development using MCPitanLib, refer to "common/src/main/java/net/pitan76/mcpitanlib/test/ExampleMod.java".

## Note
### Auto Cherry-Pick (GitHub Actions)
コミットメッセージに [cp] を含むと、Actionsで自動的にCherry-Pickを行います。 <br />
そのコミットしたブランチからそれより下位のバージョンのブランチにCherry-Pickし、コンフリを起こした場合はそこで停止し、PRを作成します。<br />
今のところ、そのPRは使えないので閉じる必要があります。(今後はissueにする予定です。)

96 changes: 91 additions & 5 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -1,25 +1,109 @@
plugins {
id "architectury-plugin" version "3.4-SNAPSHOT"
id "dev.architectury.loom" version "0.11.0-SNAPSHOT" apply false
id "dev.architectury.loom" version "1.6-SNAPSHOT" apply false
id 'com.matthewprenger.cursegradle' version '1.+'
id "com.modrinth.minotaur" version "2.+"
}

architectury {
minecraft = rootProject.minecraft_version
}

def loadProperties(filename) {
def props = new Properties()
file(filename).withInputStream {
props.load(it)
}
return props
}

ext.info = loadProperties("$rootDir/info.properties")

subprojects {
apply plugin: "dev.architectury.loom"
apply plugin: "com.modrinth.minotaur"
apply plugin: "com.matthewprenger.cursegradle"

loom {
silentMojangMappingsLicense()
}

repositories {
maven { url "https://maven.pitan76.net/" }
maven { url "https://maven.neoforged.net/releases/" }
maven { url "https://maven.shedaniel.me/" }
}

dependencies {
minecraft "com.mojang:minecraft:${rootProject.minecraft_version}"
// The following line declares the mojmap mappings, you may use other mappings as well
// mappings loom.officialMojangMappings()
// The following line declares the yarn mappings you may select this one as well.
mappings "net.fabricmc:yarn:${rootProject.yarn_mappings}:v2"

// https://mvnrepository.com/artifact/org.yaml/snakeyaml
implementation 'org.yaml:snakeyaml:2.0'
}

if (name in "fabric,forge".split(",")) {
var modLoader = name

if (System.getenv("CURSEFORGE_TOKEN") != null) {
curseforge {
apiKey = System.getenv("CURSEFORGE_TOKEN")
project {
id = '682213'
changelog = info.changelog
releaseType = modLoader == "fabric" ? 'release' : 'beta'
if (modLoader == "fabric") {
addGameVersion "Fabric"
}
if (modLoader == "forge") {
addGameVersion "Forge"
}
if (modLoader == "neoforge") {
addGameVersion "NeoForge"
}
addGameVersion '1.20'
addGameVersion '1.20.1'

relations {
if (modLoader == "fabric") {
requiredDependency "fabric-api"
}

requiredDependency 'architectury-api'
embeddedLibrary 'cloth-config'
}

mainArtifact(tasks.remapJar)
}
options {
forgeGradleIntegration = false
}
}

}

if (System.getenv("MODRINTH_TOKEN") != null) {
modrinth {
token = System.getenv("MODRINTH_TOKEN")
projectId = 'mcpitanlibarch'
versionNumber = info.mod_version + "-" + modLoader
gameVersions = ['1.19', '1.19.1', '1.19.2']
versionType = 'release'
uploadFile = tasks.remapJar
changelog = info.changelog
loaders = [modLoader]
dependencies {
if (modLoader == "fabric") {
required.project "fabric-api" // Fabric API
}
required.project "architectury-api"
embedded.project "cloth-config"
}
}
}
}
}

Expand All @@ -28,9 +112,9 @@ allprojects {
apply plugin: "architectury-plugin"
apply plugin: "maven-publish"

archivesBaseName = rootProject.archives_base_name
version = rootProject.mod_version
group = rootProject.maven_group
archivesBaseName = info.archives_base_name
version = info.mod_version + "-" + rootProject.minecraft_version
group = info.maven_group

repositories {
// Add repositories to retrieve artifacts from in here.
Expand All @@ -40,9 +124,11 @@ allprojects {
// for more information about repositories.
}

tasks.withType(JavaCompile) {
tasks.withType(JavaCompile).configureEach {
options.encoding = "UTF-8"
options.release = 17
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}

java {
Expand Down
Loading
Loading