Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
731 commits
Select commit Hold shift + click to select a range
2a8d28b
[cp] fix actions2
PTOM76 Apr 12, 2025
21448e4
[cp] fix actions3
PTOM76 Apr 12, 2025
42afdd0
[cp] fix actions4
PTOM76 Apr 12, 2025
f25a164
[cp] fix actions5
PTOM76 Apr 12, 2025
bac74e6
[cp] fix actions6
PTOM76 Apr 12, 2025
1f7c7f4
[cp] fix actions7
PTOM76 Apr 12, 2025
4ddf3ce
[cp] fix actions8
PTOM76 Apr 12, 2025
5d450c4
[cp] fix actions9
PTOM76 Apr 12, 2025
957877f
[cp] fix actions10
PTOM76 Apr 12, 2025
05d3f02
[cp] fix actions11
PTOM76 Apr 12, 2025
7155008
[cp] add APIs
PTOM76 Apr 12, 2025
3d5a329
delete
PTOM76 Apr 12, 2025
26e3db5
[cp] fix actions12
PTOM76 Apr 12, 2025
c141f9c
[cp] fix actions13
PTOM76 Apr 13, 2025
9747351
[cp] fix actions14
PTOM76 Apr 13, 2025
61c4231
[cp] fix actions15
PTOM76 Apr 13, 2025
5bc63ac
[cp] fix actions16
PTOM76 Apr 13, 2025
7b91938
[cp] fix actions17
PTOM76 Apr 13, 2025
37cfc9e
[cp] fix actions18
PTOM76 Apr 13, 2025
b6a2eb2
[cp] fix readme
PTOM76 Apr 13, 2025
258739d
[cp] del
PTOM76 Apr 13, 2025
03b71f9
[cp] fix cp
PTOM76 Apr 13, 2025
8021563
[cp] fix cp2
PTOM76 Apr 13, 2025
161a5ee
[cp] fix cp3
PTOM76 Apr 13, 2025
898a8e9
[cp] add note
PTOM76 Apr 13, 2025
a8d440c
[cp] Update README.md
PTOM76 Apr 13, 2025
1ca13fb
[cp] add RenderUtil v2
PTOM76 Apr 15, 2025
c302d82
[cp] change readme
PTOM76 Apr 16, 2025
946344c
[cp] add api to ItemEntityUtil
PTOM76 Apr 16, 2025
3da8e7f
[cp] add method to ItemBuilder
PTOM76 Apr 19, 2025
82d61a3
[cp] fix builder
PTOM76 Apr 20, 2025
0c15361
[cp] fix builder
PTOM76 Apr 20, 2025
b0e33c1
[cp] move to built package
PTOM76 Apr 20, 2025
1fef188
[cp] add share
PTOM76 Apr 20, 2025
56bcb56
[cp] rename isExit to isPresent
PTOM76 Apr 20, 2025
980beb4
[cp] add BlockEntityBuilder
PTOM76 Apr 20, 2025
a0da3b7
[cp] add api to block builder
PTOM76 Apr 22, 2025
cc6132b
[cp] fix api to block builder
PTOM76 Apr 22, 2025
907c4cc
[cp] fix #33
PTOM76 Apr 22, 2025
35b83d3
[cp] add isEmpty() in SimpleInventoryUtil
PTOM76 Apr 23, 2025
12300e7
[cp] change info
PTOM76 Apr 26, 2025
7540c75
[cp] Add CompatWaterloggable
PTOM76 Apr 27, 2025
ced2f39
[cp] add isClient() to StateForNeighborUpdateArgs
PTOM76 Apr 27, 2025
7e96941
[cp] add apis to easybuilder
PTOM76 Apr 28, 2025
3cd5976
[cp] add lang api
PTOM76 May 8, 2025
af9142d
add APIs rendering
PTOM76 May 23, 2025
85c862e
[cp] add apis rendering v2
PTOM76 May 23, 2025
0d10955
[cp] delete render layer
PTOM76 May 24, 2025
22abe3c
[cp] info
PTOM76 May 24, 2025
916d310
[cp] add null checks in ItemStack creation methods
PTOM76 May 24, 2025
7e1c83f
[cp] bump mod version to 3.2.7
PTOM76 May 24, 2025
531756f
[cp] fix CompatInventory
PTOM76 Jun 1, 2025
e1ac02c
[cp] remove unused @ExpectPlatform annotation from registerScreen method
PTOM76 Jun 1, 2025
4dcc4de
[cp] fix
PTOM76 Jun 1, 2025
f7da769
[cp] dump version 3.2.8
PTOM76 Jun 1, 2025
27770b3
[cp] add GameOptionsWrapper
PTOM76 Jun 7, 2025
191b6ed
[cp] add Midohra method
PTOM76 Jun 13, 2025
f47374d
[cp] add apis
PTOM76 Jun 13, 2025
21927c4
[cp] refactor: change blockEntityType to Supplier in BlockWithBlockEn…
PTOM76 Jun 13, 2025
02d5f1d
bump version to 3.2.9 and update copyright years in LICENSE
PTOM76 Jun 13, 2025
6070aeb
[cp] feat: add CompatPacketByteBuf and enhance networking methods for…
PTOM76 Jun 14, 2025
b26681d
[cp] feat: enhance rendering utilities and add WorldRendererUtil for …
PTOM76 Jun 14, 2025
bf2a808
[cp] fix-1: remove create method in CompatRenderLayer
PTOM76 Jun 14, 2025
28f33be
[cp] fix-2: remove draw method in CompatRenderLayer
PTOM76 Jun 14, 2025
b87e302
bump version to 3.3.0 in info.properties
PTOM76 Jun 14, 2025
9da7f6d
[cp] feat: update DrawObjectMV methods to public and add ScreenUtil f…
PTOM76 Jun 15, 2025
da2ede7
[cp] feat: add BlockEntityTypeBuilder for flexible block entity type …
PTOM76 Jun 15, 2025
f0b0cb7
[cp] feat: add getWidth and getHeight methods to ScreenUtil for scree…
PTOM76 Jun 15, 2025
4d2168a
[cp] bump version to 3.3.1 in info.properties
PTOM76 Jun 15, 2025
860f9a0
[cp] fix CompatActionResult
PTOM76 Jun 17, 2025
ea7daa4
[cp] add of(List<ItemStack>) to ItemStackList
PTOM76 Jun 17, 2025
790d4fc
[cp] bump version to 3.3.2 in info.properties
PTOM76 Jun 17, 2025
39751ce
refactor: rename of method to of2 for clarity in ItemStackList
PTOM76 Jun 17, 2025
f13b22a
bump Minecraft and dependency versions to 1.21.6
PTOM76 Jun 19, 2025
30a9f2b
bump Architectury and Cloth Config versions in gradle.properties
PTOM76 Jun 19, 2025
ea0cb91
[cp] add copyFrom in NbtUtil
PTOM76 Jun 19, 2025
7418169
refactor: update NBT read/write methods to use new ReadView and Write…
PTOM76 Jun 19, 2025
2e33576
refactor: update NBT read method to use ReadNbtArgs and fix projectio…
PTOM76 Jun 19, 2025
55e3e29
refactor: rename Nbt2Data to NbtDataConverter and update related meth…
PTOM76 Jun 19, 2025
6ded30c
[cp] add NbtRWUtil
PTOM76 Jun 19, 2025
83c3089
refactor: update NbtRWUtil to use new view interfaces for read/write …
PTOM76 Jun 19, 2025
c3170b2
[cp] bump version 3.3.3
PTOM76 Jun 19, 2025
c18fff3
chore: bump version to 1.21.6 and update compatdatapacks76 version to…
PTOM76 Jun 20, 2025
3d037e4
chore: update compatdatapacks76 version to 1.0.14.216
PTOM76 Jun 20, 2025
2d13a8d
chore: update architectury version to 17.0.6
PTOM76 Jun 20, 2025
c9e7819
refactor: update render type registration to use BlockRenderLayer
PTOM76 Jun 20, 2025
e163934
fix: add dummy NBT list for compatibility with old mods in InventoryUtil
PTOM76 Jun 21, 2025
4175f58
fix: handle null NBT in writeNbt method for compatibility with old mods
PTOM76 Jun 21, 2025
e3b482a
fix: convert RGB to ARGB in drawText methods to handle transparency c…
PTOM76 Jun 21, 2025
2ef90e4
fix: handle unsupported NBT types in NbtDataConverter
PTOM76 Jun 21, 2025
59cbda0
fix: update NbtDataConverter calls to return NbtCompound directly in …
PTOM76 Jun 21, 2025
b93feda
fix: update NbtDataConverter and related methods to include ReadView …
PTOM76 Jun 21, 2025
e613bff
fix: add putString method to NbtRWUtil for writing string values to NBT
PTOM76 Jun 21, 2025
57275b9
feat: implement NbtRWUtil for enhanced NBT read/write operations
PTOM76 Jun 21, 2025
b224dbf
fix: update InvRWUtil and NbtRWUtil to use new NBT read/write methods…
PTOM76 Jun 22, 2025
92a877c
[cp] fix: implement BlockStatePropertyHolder in BlockScheduledTickEve…
PTOM76 Jun 22, 2025
02a80af
feat: add methods to register render types for blocks and fluids in C…
PTOM76 Jun 22, 2025
9a19ad7
[cp] add .gitignore
PTOM76 Jun 22, 2025
e17747c
[cp] remove bat .gitignore
PTOM76 Jun 22, 2025
9739707
[cp] add bat
PTOM76 Jun 22, 2025
a369ff8
fix: update artifactId and add GitHub Packages repository configurati…
PTOM76 Jun 22, 2025
f56122a
[cp] docs: update version references to include GitHub Packages for c…
PTOM76 Jun 23, 2025
34b15d3
feat: add methods to check emptiness and copy NbtRWArgs in NbtRWArgs,…
PTOM76 Jun 24, 2025
e47b3f5
feat: integrate NbtDataConverter for read and write operations in Rea…
PTOM76 Jun 24, 2025
5a823dc
[cp] feat: enhance Nbt read/write methods to include registry lookup …
PTOM76 Jun 24, 2025
ad64ae3
[cp] feat: add ClippedInventory and ClippedItemStackList for inventor…
PTOM76 Jun 27, 2025
77af408
[cp] bump version 3.3.4
PTOM76 Jun 28, 2025
bbfd283
feat: enhance PersistentStateUtil to support Nbt read/write with Writ…
PTOM76 Jul 5, 2025
68d8386
[cp] bump version 3.3.5
PTOM76 Jul 5, 2025
cf23947
refactor: clean up imports in PersistentStateUtil
PTOM76 Jul 5, 2025
0896f91
feat: add support for game version 1.21.7 in build configuration
PTOM76 Jul 5, 2025
0ea5166
refactor: simplify SoundEvent ID retrieval method
PTOM76 Jul 5, 2025
2908878
[cp] bump version 3.3.6
PTOM76 Jul 5, 2025
47c14b1
[cp] fix: handle null Identifier in fromMinecraft method
PTOM76 Jul 6, 2025
6b5c9d9
[cp] feat: add toString and getName methods to Direction class
PTOM76 Jul 6, 2025
e6fc225
[cp] feat: add ChunkManagerUtil for chunk update management
PTOM76 Jul 6, 2025
24793b9
[cp] feat: add BlockColorEvent and related classes for block color ma…
PTOM76 Jul 6, 2025
aeb0cc6
feat: add methods for storing and retrieving ItemStack in NBT
PTOM76 Jul 6, 2025
2521f46
[cp] bump version 3.3.7
PTOM76 Jul 6, 2025
92392de
[cp] feat: implement hashCode and equals methods for ChunkTicketType
PTOM76 Jul 6, 2025
e010ce0
[cp] feat: add Registry of ChunkTicketType
PTOM76 Jul 6, 2025
a5b96d3
1216
PTOM76 Jul 6, 2025
b88d5e0
bump version 3.3.8
PTOM76 Jul 6, 2025
4794888
[cp] refactor: remove unused SubscribeEvent annotation from registerB…
PTOM76 Jul 9, 2025
ef8f1a1
[cp] bump version 3.3.9
PTOM76 Jul 9, 2025
634f9eb
[cp] fix: neoforge CompatRegistryClientImpl
PTOM76 Jul 12, 2025
c081d69
[cp] version neoforge only fix.1
PTOM76 Jul 12, 2025
2eba84a
[cp] fix register TICKET_TYPE
PTOM76 Jul 12, 2025
fa064ac
[cp] add register for CompatIdentifier
PTOM76 Jul 12, 2025
9dde4d2
[cp] bump version 3.3.9
PTOM76 Jul 12, 2025
bd8d51e
fix: update registryChunkTicketType to use RegistrySupplier for Chunk…
PTOM76 Jul 12, 2025
89640ee
v3.3.9
PTOM76 Jul 12, 2025
d98db12
feat: add support for game version 1.21.8
PTOM76 Jul 19, 2025
355ced0
[cp] changelog
PTOM76 Jul 19, 2025
14c4cd0
fix neoforge
PTOM76 Aug 10, 2025
ee0e1d3
version
PTOM76 Aug 10, 2025
3411e2f
refactor: update NBT serialization methods in NeoForgeFluidStorage
PTOM76 Aug 10, 2025
44b5881
refactor: simplify renderLevelStageEvent method signature
PTOM76 Aug 10, 2025
73f7e4a
[cp] add APIs (Equippable, EntityAttribute, AttributeModifier)
PTOM76 Aug 10, 2025
2c65afd
[cp] version 3.4.0
PTOM76 Aug 10, 2025
a7904be
gradle
PTOM76 Aug 16, 2025
eb730fc
Update to 1.21.9 (compilable only, exists more todo)
PTOM76 Oct 14, 2025
04f8339
fix: on neoforge, use new fluid transfer api
PTOM76 Oct 15, 2025
ff3b204
gradle
PTOM76 Oct 16, 2025
e4a7017
feat: enable Gradle parallel execution and configure worker threads
PTOM76 Oct 16, 2025
bdfcf2e
fix: handle null crumbling overlay in BlockEntityRenderEvent
PTOM76 Oct 19, 2025
24cae8c
[cp] feat: add methods to retrieve block and block wrapper in TileTic…
PTOM76 Oct 19, 2025
fc6a0e6
[cp] HitResult API
PTOM76 Oct 19, 2025
1bbda33
fix: for 1219 WorldRenderContext and mixins for block outline rendering
PTOM76 Oct 19, 2025
637c557
chore: update mod version to 3.4.1 and enhance changelog
PTOM76 Oct 19, 2025
949c1d3
add CompatKeyBinding and KeybindingRegistry for improved key binding …
PTOM76 Oct 19, 2025
af0d8b4
[cp] add ContainerUser
PTOM76 Oct 19, 2025
d296c5f
[cp] fix ContainerUser
PTOM76 Oct 19, 2025
ff19aca
fix ContainerUser
PTOM76 Oct 19, 2025
1ebb96a
apply CompatContainerUser to CompatInventory
PTOM76 Oct 19, 2025
e8165ba
[cp] update publish and pull scripts for version 1.21.9 checkout and …
PTOM76 Oct 19, 2025
17e085e
[cp] Add APIs, Fix APIs
PTOM76 Oct 23, 2025
15cfc0d
[cp] add method that able to get world id to worldutil
PTOM76 Oct 23, 2025
d763a3f
[cp] fix hasBlockEntityNbt
PTOM76 Oct 23, 2025
5b60764
fix BlockEntityDataUtil
PTOM76 Oct 23, 2025
51b5193
[cp] ignore IllegalArgumentException
PTOM76 Oct 25, 2025
19a8273
[cp] add writeToStack method to BlockEntityUtil
PTOM76 Oct 25, 2025
8ad12fb
[cp] change build priority branch to 1.20.4
PTOM76 Oct 25, 2025
2ad52fe
[cp] add APIs, Vector, Entity getPos
PTOM76 Oct 25, 2025
faf82af
fix 1219
PTOM76 Oct 25, 2025
36b323e
[cp] fix BlockEntityUtil
PTOM76 Oct 26, 2025
ac78a6f
gradle update
PTOM76 Feb 3, 2026
8edc6c6
port to 1.21.11
PTOM76 Feb 5, 2026
1a51eba
port to 1.21.11 fix
PTOM76 Feb 5, 2026
dc019fa
change line width in drawLine of VertexRenderingUtil
PTOM76 Feb 7, 2026
b0d3ded
[cp] bump version 3.4.4
PTOM76 Feb 7, 2026
22b22cb
[cp] add CameraWrapper
PTOM76 Feb 7, 2026
81ddb79
use outline event api latest fabric/neoforge api
PTOM76 Feb 7, 2026
284feb8
back BeforeBlockOutlineEvent construct of hitresult
PTOM76 Feb 7, 2026
20a3b56
[cp] fix publish.bat
PTOM76 Feb 7, 2026
659c5f9
[cp] fix publish.bat
PTOM76 Feb 7, 2026
a6609c8
add getRecipeRemainder injector for FixedRecipeRemainderItem
PTOM76 Feb 7, 2026
dcd85fa
bump version 3.4.5
PTOM76 Feb 7, 2026
5768f3e
[cp] bump version 3.4.6
PTOM76 Feb 8, 2026
60e768d
fix getRecipeRemainder mixin
PTOM76 Feb 8, 2026
1431267
fix: add CraftingRecipeMixin
PTOM76 Feb 8, 2026
1ed72d9
[cp] changelog
PTOM76 Feb 8, 2026
c3307c5
use latest compatdatapacks76, legacyitemmodels
PTOM76 Feb 11, 2026
53fc91d
Fix for NeoForge 1.21.11
PTOM76 Feb 11, 2026
e051e88
[cp] feat: add Box, Vector Utils, improve WorldUtils
PTOM76 Mar 18, 2026
6350174
[cp] Bump version 3.4.7
PTOM76 Mar 18, 2026
bd84325
update legacyitemmodels to 1.0.2
PTOM76 Mar 18, 2026
190b795
[cp] feat: add values, horizontal, vertical, hashCode, equals to Dire…
PTOM76 Mar 19, 2026
7ee4a65
[cp] feat: impl hashCode, equals methods in Box, BlockPos
PTOM76 Mar 19, 2026
31a7be3
[cp] feat: add message sending methods to Player class
PTOM76 Mar 20, 2026
b87c6ff
[cp] feat: add methods to retrieve Midohra world, position, state, an…
PTOM76 Mar 20, 2026
5651e81
[cp] feat: add FluidWrapper methods and enhance FluidStateUtil for fl…
PTOM76 Mar 20, 2026
2063745
[cp] feat: implement BlockApiLookupWrapper and BlockApiLookupWithDire…
PTOM76 Mar 20, 2026
688f9d4
[cp] feat: add DirectionBoolPropertyUtil for managing directional boo…
PTOM76 Mar 20, 2026
d2de457
[cp] bump version 3.4.8
PTOM76 Mar 20, 2026
c77ca96
[cp] feat: enhance block entity rendering with new CompatItemRenderUt…
PTOM76 Mar 21, 2026
1bbefd0
[cp] feat: introduce CompatFormatting, CompatStyle, and CompatTextCol…
PTOM76 Mar 21, 2026
fae832d
[cp] docs: update README to include cross-version and cross-platform …
PTOM76 Mar 21, 2026
0d09c0b
[cp] chore: bump version 3.4.9
PTOM76 Mar 21, 2026
4bfc191
[cp] feat: add CompatParticleType and CompatParticleTypes for enhance…
PTOM76 Mar 22, 2026
1ba7607
[cp] feat: add utility methods for BlockEntity and BlockPos iteration
PTOM76 Mar 22, 2026
655ea28
[cp] feat: add methods for Midohra world and position handling in Com…
PTOM76 Mar 23, 2026
e27a2f4
[cp] feat: add utility methods for BlockState manipulation in IProper…
PTOM76 Mar 23, 2026
1f5e3fc
[cp] feat: implement hashCode and equals methods for various wrapper …
PTOM76 Mar 23, 2026
6c72aaf
[cp] feat: add canPlaceAt method and CanPlaceAtArgs class for block p…
PTOM76 Mar 23, 2026
1f32a77
[cp] chore: bump version 3.5.0
PTOM76 Mar 23, 2026
200b29d
[cp] feat: add mathematical operations and asLong method to Vector3 c…
PTOM76 Mar 23, 2026
f1e5e07
[cp] feat: add static factory method for creating CompatIdentifier fr…
PTOM76 Mar 23, 2026
3f8e9e3
[cp] chore: bump version 3.5.1
PTOM76 Mar 23, 2026
4baed46
[cp] feat: enhance BlockPos iteration and add utility methods for Blo…
PTOM76 Mar 23, 2026
ad0faf5
[cp] version bump 3.5.2
PTOM76 Mar 23, 2026
718bb7f
[cp] feat: add utility methods for converting BlockPos to Vector3i an…
PTOM76 Mar 24, 2026
7e6e70f
[cp] feat: add EntityWrapper and ItemEntityWrapper classes with utili…
PTOM76 Mar 24, 2026
99a5e92
[cp] feat: add Blocks, Items
PTOM76 Mar 24, 2026
4f72a07
[cp] feat: update Block and Item wrappers for GRASS and CHAIN to use …
PTOM76 Mar 24, 2026
9906d15
[cp] fix: invert condition in teleport method to ensure entity is onl…
PTOM76 Mar 24, 2026
b69d821
[cp] fix: ExampleGuiBlock
PTOM76 Mar 25, 2026
d49d2cd
[cp] add player
PTOM76 Mar 26, 2026
a32ab13
gradle
PTOM76 Mar 26, 2026
c002e40
bump version 3.5.3
PTOM76 Mar 31, 2026
51b2f96
gradle
PTOM76 Mar 31, 2026
da0455e
gradle
PTOM76 Mar 31, 2026
70ff0d0
[cp] feat: add cursor stack handling methods in ScreenHandlerUtil and…
PTOM76 Apr 1, 2026
37b40c5
gradle
PTOM76 Apr 5, 2026
beb510f
[cp] feat: add new item and block wrappers, enhance existing utility …
PTOM76 Apr 5, 2026
44501eb
[cp] chore: update mod version to 3.6.2 and enhance changelog with su…
PTOM76 Apr 5, 2026
df7a14b
[cp] feat: add methods for registering block and entity types with wr…
PTOM76 Apr 5, 2026
470c7cf
[cp] feat: enhance entity and item handling with new utility methods …
PTOM76 Apr 5, 2026
e45441b
chore: update mod version to 3.6.3 in info.properties
PTOM76 Apr 5, 2026
0553e11
[cp] feat: add instanceof checks for various wrappers and enhance flu…
PTOM76 Apr 11, 2026
b62dbde
[cp] bump vesrion 3.6.4
PTOM76 Apr 11, 2026
b7fc709
[cp] feat: add wrappers for various projectile entities and enhance e…
PTOM76 Apr 11, 2026
9db9f16
[cp] bump version 3.6.5
PTOM76 Apr 11, 2026
ddae633
[cp] fix: update nullable annotation imports to use JetBrains annotat…
PTOM76 Apr 11, 2026
2d26b0e
[cp] bump version 3.6.6
PTOM76 Apr 19, 2026
732319c
add support for Supplier wrappers in Typed*Wrapper classes and enhanc…
PTOM76 Apr 19, 2026
c335a63
[cp] add constructors and utility methods to enhance compatibility an…
PTOM76 Apr 19, 2026
e96d8e1
[cp] add InventoryWrapper class and integrate it into Player for enha…
PTOM76 Apr 19, 2026
b571e1b
[cp] replace InventoryWrapper with CompatPlayerInventory in getInvent…
PTOM76 Apr 19, 2026
6e7ff30
[cp] fix wrapper
PTOM76 Apr 19, 2026
7692447
[cp] add setDisplayName method to CreativeTabBuilder for improved tex…
PTOM76 Apr 19, 2026
3c89504
[cp] bump version 3.6.7
PTOM76 May 2, 2026
3d4e648
[cp] feat: introduce compatibility interfaces and enhance existing cl…
PTOM76 May 2, 2026
29fc2c7
[cp] feat: add new FluidState and ITyped wrappers for enhanced fluid …
PTOM76 May 3, 2026
e371fdb
[cp] chore: bump version 3.6.8
PTOM76 May 3, 2026
93e03cb
[cp] feat: add new FluidState and ITyped wrappers for enhanced fluid …
PTOM76 May 3, 2026
3e5184e
[cp] bump version 3.6.9
PTOM76 May 10, 2026
07e0c4a
[cp] feat: introduce INonTypedSupplier interface and enhance item, bl…
PTOM76 May 10, 2026
9d8c8a8
[cp] refactor: update receiveSync method to use PacketByteBuf for imp…
PTOM76 May 10, 2026
4969cf6
[cp] feat: enhance TypedRecipeInputOrInventory for improved recipe in…
PTOM76 May 10, 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
5 changes: 4 additions & 1 deletion .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 @@ -114,5 +115,7 @@ gradle-app.setting
# Common working directory
run/

php/

# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored)
!gradle-wrapper.jar
!gradle-wrapper.jar
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にする予定です。)

Loading
Loading