├── .gitattributes
├── .github
└── workflows
│ └── build.yml
├── .gitignore
├── .gitlab-ci.yml
├── .idea
└── copyright
│ ├── GPLv3.xml
│ └── profiles_settings.xml
├── Contributing.md
├── Credits.md
├── LICENSE.md
├── ReadMe.md
├── build.gradle.kts
├── doc
├── Architecture.md
├── Assets.md
├── AssetsManager.md
├── Bannability.md
├── CLI.md
├── Headless.md
├── MinecraftVersions.md
├── Modding2.md
├── Performance.md
├── Physics.md
├── Roadmap.txt
├── Shader.md
├── Sky.md
├── Updater.md
├── VersionSupport.md
├── contributing
│ └── Development.md
├── img
│ ├── Minosoft_logo.png
│ ├── afk_pool.png
│ ├── eros.png
│ ├── hypixel_lobby.png
│ ├── hypixel_skyblock.png
│ ├── rendering1.png
│ ├── rendering5.png
│ └── sunset.png
├── modding
│ └── Container.md
├── rendering
│ ├── Entities.md
│ ├── GUI.md
│ ├── Meshes.md
│ ├── ReadMe.md
│ └── world_renderer.md
└── snapSupportToDo.txt
├── gradle.properties
├── gradle
└── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── release
├── create.sh
└── release.sh
├── run.cmd
├── schemas
├── assets_properties.json
└── atlas.json
├── settings.gradle.kts
├── src
├── benchmark
│ └── kotlin
│ │ └── de
│ │ └── bixilon
│ │ └── minosoft
│ │ └── data
│ │ ├── registries
│ │ └── blocks
│ │ │ └── types
│ │ │ └── TestBlock.kt
│ │ └── world
│ │ └── chunk
│ │ ├── LightTestingUtil.kt
│ │ └── light
│ │ └── LightBenchmark.kt
├── integration-test
│ ├── kotlin
│ │ └── de
│ │ │ └── bixilon
│ │ │ └── minosoft
│ │ │ ├── MinosoftSIT.kt
│ │ │ ├── assets
│ │ │ ├── MemoryAssetsManager.kt
│ │ │ └── TestAssetsManager.kt
│ │ │ ├── camera
│ │ │ └── target
│ │ │ │ └── TargetHandlerTest.kt
│ │ │ ├── commands
│ │ │ ├── MsgCommandIT.kt
│ │ │ ├── TPCommandIT.kt
│ │ │ └── nodes
│ │ │ │ └── ChatNodeTest.kt
│ │ │ ├── config
│ │ │ └── profile
│ │ │ │ ├── Boxed.kt
│ │ │ │ ├── ProfileTestUtil.kt
│ │ │ │ ├── profiles
│ │ │ │ └── resources
│ │ │ │ │ └── ResourceProfileMigrationTest.kt
│ │ │ │ ├── storage
│ │ │ │ ├── ProfileIOManagerTest.kt
│ │ │ │ └── StorageProfileManagerTest.kt
│ │ │ │ └── test
│ │ │ │ ├── ProfileManagerTest.kt
│ │ │ │ ├── TestProfile.kt
│ │ │ │ ├── TestProfileManager.kt
│ │ │ │ └── config
│ │ │ │ └── ConfigC.kt
│ │ │ ├── data
│ │ │ ├── accounts
│ │ │ │ └── types
│ │ │ │ │ └── test
│ │ │ │ │ └── TestAccount.kt
│ │ │ ├── chat
│ │ │ │ └── signature
│ │ │ │ │ ├── SignatureSIT.kt
│ │ │ │ │ ├── SignatureTestUtil.kt
│ │ │ │ │ ├── command
│ │ │ │ │ └── SignCommandTest.kt
│ │ │ │ │ └── signer
│ │ │ │ │ ├── DummyMessageSigner.kt
│ │ │ │ │ ├── MessageSigner1Test.kt
│ │ │ │ │ ├── MessageSigner2Test.kt
│ │ │ │ │ └── MessageSigner3Test.kt
│ │ │ ├── container
│ │ │ │ ├── ContainerTestUtil.kt
│ │ │ │ ├── actions
│ │ │ │ │ ├── CloneContainerActionTest.kt
│ │ │ │ │ ├── DropContainerActionTest.kt
│ │ │ │ │ ├── FastMoveContainerActionTest.kt
│ │ │ │ │ ├── PickAllContainerActionTest.kt
│ │ │ │ │ └── SimpleContainerActionTest.kt
│ │ │ │ ├── locking
│ │ │ │ │ └── ContainerLockingTest.kt
│ │ │ │ ├── slots
│ │ │ │ │ └── FuelSlotTypeTest.kt
│ │ │ │ └── stack
│ │ │ │ │ └── ItemStackTest.kt
│ │ │ ├── entities
│ │ │ │ ├── EntityTestUtil.kt
│ │ │ │ ├── block
│ │ │ │ │ └── sign
│ │ │ │ │ │ └── SignBlockEntityTest.kt
│ │ │ │ └── entities
│ │ │ │ │ ├── EntityTest.kt
│ │ │ │ │ └── player
│ │ │ │ │ ├── RemotePlayerEntityTest.kt
│ │ │ │ │ ├── additional
│ │ │ │ │ └── PlayerAdditionalTest.kt
│ │ │ │ │ └── properties
│ │ │ │ │ └── textures
│ │ │ │ │ └── PlayerTexturesTest.kt
│ │ │ ├── physics
│ │ │ │ ├── ElytraFlyIT.kt
│ │ │ │ ├── EmptyWorldView.kt
│ │ │ │ ├── PhysicsTestUtil.kt
│ │ │ │ ├── SpectatorTest.kt
│ │ │ │ ├── attribute
│ │ │ │ │ └── AttributeIT.kt
│ │ │ │ ├── blocks
│ │ │ │ │ ├── bouncing
│ │ │ │ │ │ ├── BedBounceIT.kt
│ │ │ │ │ │ ├── BounceIT.kt
│ │ │ │ │ │ ├── HoneyBounceIT.kt
│ │ │ │ │ │ └── SlimeBounceIT.kt
│ │ │ │ │ ├── climbing
│ │ │ │ │ │ ├── ClimbingIT.kt
│ │ │ │ │ │ ├── LadderIT.kt
│ │ │ │ │ │ ├── ScaffoldingIT.kt
│ │ │ │ │ │ └── TwistedVinesIT.kt
│ │ │ │ │ ├── slow
│ │ │ │ │ │ ├── CobwebIT.kt
│ │ │ │ │ │ ├── PowderSnowIT.kt
│ │ │ │ │ │ ├── SlowMovementIT.kt
│ │ │ │ │ │ └── SweetBerryBushIT.kt
│ │ │ │ │ └── walking
│ │ │ │ │ │ ├── HoneyWalkIT.kt
│ │ │ │ │ │ ├── IceWalkIT.kt
│ │ │ │ │ │ ├── PackedIceWalkIT.kt
│ │ │ │ │ │ ├── SlimeWalkIT.kt
│ │ │ │ │ │ ├── SoulSandWalkIT.kt
│ │ │ │ │ │ ├── SpeedGrassWalkIT.kt
│ │ │ │ │ │ ├── StoneWalkIT.kt
│ │ │ │ │ │ └── WalkIT.kt
│ │ │ │ ├── enchantments
│ │ │ │ │ ├── EnchantmentTestUtil.kt
│ │ │ │ │ ├── NoEnchantmentTest.kt
│ │ │ │ │ └── SwiftSneakTest.kt
│ │ │ │ ├── fluid
│ │ │ │ │ ├── flowing
│ │ │ │ │ │ ├── FlowingFluidIT.kt
│ │ │ │ │ │ ├── LavaFlowingIT.kt
│ │ │ │ │ │ ├── ULavaFlowingIT.kt
│ │ │ │ │ │ └── WaterFlowingIT.kt
│ │ │ │ │ └── still
│ │ │ │ │ │ ├── BubbleColumnIT.kt
│ │ │ │ │ │ ├── LavaStillIT.kt
│ │ │ │ │ │ ├── MixedFluidIT.kt
│ │ │ │ │ │ ├── StillFluidIT.kt
│ │ │ │ │ │ └── WaterStillIT.kt
│ │ │ │ ├── gravity
│ │ │ │ │ ├── CollisionIT.kt
│ │ │ │ │ └── GravityPhysicsIT.kt
│ │ │ │ ├── health
│ │ │ │ │ └── DamageMovementIT.kt
│ │ │ │ ├── input
│ │ │ │ │ ├── FlyIT.kt
│ │ │ │ │ ├── JumpIT.kt
│ │ │ │ │ ├── RotatingTest.kt
│ │ │ │ │ ├── SneakIT.kt
│ │ │ │ │ └── SprintIT.kt
│ │ │ │ ├── item
│ │ │ │ │ └── ItemEntityIT.kt
│ │ │ │ ├── parkour
│ │ │ │ │ ├── ParkourTick.kt
│ │ │ │ │ └── ParkourUtil.kt
│ │ │ │ ├── potion
│ │ │ │ │ ├── BlindnessIT.kt
│ │ │ │ │ ├── JumpBoostIT.kt
│ │ │ │ │ ├── LevitationIT.kt
│ │ │ │ │ ├── PotionExpireIT.kt
│ │ │ │ │ ├── SlowFallingIT.kt
│ │ │ │ │ └── SpeedIT.kt
│ │ │ │ ├── precision
│ │ │ │ │ └── VelocityFlatteningIT.kt
│ │ │ │ ├── riding
│ │ │ │ │ ├── AbstractRidingTest.kt
│ │ │ │ │ ├── HorseRidingTest.kt
│ │ │ │ │ └── PigRidingTest.kt
│ │ │ │ ├── server
│ │ │ │ │ ├── AbilitiesIT.kt
│ │ │ │ │ └── ServerVelocityIT.kt
│ │ │ │ └── stub
│ │ │ │ │ └── StubPhysicsIT.kt
│ │ │ ├── registries
│ │ │ │ ├── VersionRegistry.kt
│ │ │ │ ├── blocks
│ │ │ │ │ ├── BlockTest.kt
│ │ │ │ │ ├── DirtTest.kt
│ │ │ │ │ ├── GlassTest.kt
│ │ │ │ │ ├── LeavesTest.kt
│ │ │ │ │ ├── SlabTest.kt
│ │ │ │ │ ├── SlimeTest.kt
│ │ │ │ │ ├── StairsTest.kt
│ │ │ │ │ ├── TorchTest.kt
│ │ │ │ │ ├── WaterTest.kt
│ │ │ │ │ ├── factory
│ │ │ │ │ │ └── VerifyIntegratedBlockRegistry.kt
│ │ │ │ │ ├── properties
│ │ │ │ │ │ └── list
│ │ │ │ │ │ │ └── MapPropertyListTest.kt
│ │ │ │ │ └── types
│ │ │ │ │ │ ├── pvp
│ │ │ │ │ │ └── CobwebTest.kt
│ │ │ │ │ │ └── stone
│ │ │ │ │ │ └── StoneTest.kt
│ │ │ │ ├── fluid
│ │ │ │ │ └── fluids
│ │ │ │ │ │ └── WaterFluidTest.kt
│ │ │ │ ├── integrated
│ │ │ │ │ └── IntegratedRegistryIT.kt
│ │ │ │ ├── item
│ │ │ │ │ └── items
│ │ │ │ │ │ └── tool
│ │ │ │ │ │ ├── ToolTest.kt
│ │ │ │ │ │ ├── axe
│ │ │ │ │ │ └── AxeItemTest.kt
│ │ │ │ │ │ ├── hoe
│ │ │ │ │ │ └── HoeItemTest.kt
│ │ │ │ │ │ ├── pickaxe
│ │ │ │ │ │ ├── PickaxeItemTest.kt
│ │ │ │ │ │ └── PickaxeTagsTest.kt
│ │ │ │ │ │ ├── shears
│ │ │ │ │ │ └── ShearsTest.kt
│ │ │ │ │ │ ├── shovel
│ │ │ │ │ │ └── ShovelTest.kt
│ │ │ │ │ │ └── sword
│ │ │ │ │ │ └── SwordTest.kt
│ │ │ │ ├── items
│ │ │ │ │ ├── AppleTest.kt
│ │ │ │ │ ├── CoalTest.kt
│ │ │ │ │ ├── EggTest.kt
│ │ │ │ │ ├── ItemTest.kt
│ │ │ │ │ ├── LavaBucketTest.kt
│ │ │ │ │ └── WaterBucketTest.kt
│ │ │ │ ├── registries
│ │ │ │ │ └── registry
│ │ │ │ │ │ ├── BlockStateRegistryTest.kt
│ │ │ │ │ │ └── RegistryTest.kt
│ │ │ │ └── versions
│ │ │ │ │ ├── ProtocolVersionIT.kt
│ │ │ │ │ └── registries
│ │ │ │ │ ├── RegistryLoadingTest.kt
│ │ │ │ │ ├── legacy
│ │ │ │ │ ├── 1_12_2.kt
│ │ │ │ │ ├── 1_7_10.kt
│ │ │ │ │ ├── 1_8_9.kt
│ │ │ │ │ └── LegacyLoadingTest.kt
│ │ │ │ │ └── pixlyzer
│ │ │ │ │ ├── 1_13.kt
│ │ │ │ │ ├── 1_13_1.kt
│ │ │ │ │ ├── 1_13_2.kt
│ │ │ │ │ ├── 1_14.kt
│ │ │ │ │ ├── 1_14_1.kt
│ │ │ │ │ ├── 1_14_2.kt
│ │ │ │ │ ├── 1_14_3.kt
│ │ │ │ │ ├── 1_14_4.kt
│ │ │ │ │ ├── 1_15.kt
│ │ │ │ │ ├── 1_15_1.kt
│ │ │ │ │ ├── 1_15_2.kt
│ │ │ │ │ ├── 1_16.kt
│ │ │ │ │ ├── 1_16_1.kt
│ │ │ │ │ ├── 1_16_2.kt
│ │ │ │ │ ├── 1_16_3.kt
│ │ │ │ │ ├── 1_16_5.kt
│ │ │ │ │ ├── 1_17_1.kt
│ │ │ │ │ ├── 1_18_1.kt
│ │ │ │ │ ├── 1_18_2.kt
│ │ │ │ │ ├── 1_19.kt
│ │ │ │ │ ├── 1_19_2.kt
│ │ │ │ │ ├── 1_19_3.kt
│ │ │ │ │ ├── 1_19_4.kt
│ │ │ │ │ ├── 1_20_1.kt
│ │ │ │ │ ├── 1_20_2.kt
│ │ │ │ │ ├── 1_20_4.kt
│ │ │ │ │ ├── Latest.kt
│ │ │ │ │ └── PixLyzerLoadingTest.kt
│ │ │ └── world
│ │ │ │ ├── WorldTestUtil.kt
│ │ │ │ ├── biome
│ │ │ │ ├── WorldBiomesTest.kt
│ │ │ │ └── accessor
│ │ │ │ │ └── VoronoiBiomeAccessorTest.kt
│ │ │ │ ├── chunk
│ │ │ │ ├── LightTestingUtil.kt
│ │ │ │ ├── light
│ │ │ │ │ ├── GeneralHeightmapTest.kt
│ │ │ │ │ ├── LightTestUtil.kt
│ │ │ │ │ ├── SkyLightTraceIT.kt
│ │ │ │ │ ├── breaking
│ │ │ │ │ │ ├── BlockLightBreakIT.kt
│ │ │ │ │ │ └── HeightmapBreakTest.kt
│ │ │ │ │ └── place
│ │ │ │ │ │ ├── BlockLightPlaceIT.kt
│ │ │ │ │ │ ├── HeightmapPlaceTest.kt
│ │ │ │ │ │ └── SkyLightPlaceIT.kt
│ │ │ │ ├── manager
│ │ │ │ │ └── ChunkManagerTest.kt
│ │ │ │ └── neighbours
│ │ │ │ │ └── ChunkNeighboursTest.kt
│ │ │ │ ├── container
│ │ │ │ └── block
│ │ │ │ │ ├── BlockSectionDataProviderTest.kt
│ │ │ │ │ └── SectionOcclusionTest.kt
│ │ │ │ ├── entities
│ │ │ │ └── WorldEntitiesTest.kt
│ │ │ │ ├── iterator
│ │ │ │ └── WorldIteratorTest.kt
│ │ │ │ └── view
│ │ │ │ └── TestWorldView.kt
│ │ │ ├── gui
│ │ │ └── rendering
│ │ │ │ ├── RenderTestLoader.kt
│ │ │ │ ├── RenderTestUtil.kt
│ │ │ │ ├── camera
│ │ │ │ ├── frustum
│ │ │ │ │ └── FrustumTest.kt
│ │ │ │ └── occlusion
│ │ │ │ │ └── OcclusionTracerTest.kt
│ │ │ │ ├── chunk
│ │ │ │ ├── ChunkRendererTest.kt
│ │ │ │ ├── entities
│ │ │ │ │ └── renderer
│ │ │ │ │ │ └── storage
│ │ │ │ │ │ └── OpenCloseAnimationTest.kt
│ │ │ │ └── mesher
│ │ │ │ │ ├── FluidSectionMesherTest.kt
│ │ │ │ │ └── SolidSectionMesherTest.kt
│ │ │ │ ├── entities
│ │ │ │ ├── EntityRendererManagerTest.kt
│ │ │ │ ├── EntityRendererTestUtil.kt
│ │ │ │ ├── feature
│ │ │ │ │ ├── hitbox
│ │ │ │ │ │ └── HitboxFeatureTest.kt
│ │ │ │ │ └── text
│ │ │ │ │ │ ├── BillbaordTextTestUtil.kt
│ │ │ │ │ │ ├── BillboardTextFeatureTest.kt
│ │ │ │ │ │ └── name
│ │ │ │ │ │ ├── EntityNameFeatureTest.kt
│ │ │ │ │ │ └── EntityScoreFeatureTest.kt
│ │ │ │ └── visibility
│ │ │ │ │ └── VisibilityManagerTest.kt
│ │ │ │ ├── font
│ │ │ │ ├── renderer
│ │ │ │ │ ├── code
│ │ │ │ │ │ └── RasterizedCodePointRendererTest.kt
│ │ │ │ │ └── component
│ │ │ │ │ │ ├── ChatComponentRendererTest.kt
│ │ │ │ │ │ └── DummyComponentConsumer.kt
│ │ │ │ └── types
│ │ │ │ │ ├── bitmap
│ │ │ │ │ └── BitmapFontTypeTest.kt
│ │ │ │ │ ├── dummy
│ │ │ │ │ ├── DummyCodePointRenderer.kt
│ │ │ │ │ └── DummyFontType.kt
│ │ │ │ │ └── unicode
│ │ │ │ │ ├── legacy
│ │ │ │ │ └── LegacyUnicodeFontTypeTest.kt
│ │ │ │ │ └── unihex
│ │ │ │ │ └── UnihexFontTypeTest.kt
│ │ │ │ ├── gui
│ │ │ │ ├── atlas
│ │ │ │ │ └── textures
│ │ │ │ │ │ └── AtlasTextureManagerTest.kt
│ │ │ │ ├── elements
│ │ │ │ │ └── text
│ │ │ │ │ │ └── TextElementTest.kt
│ │ │ │ ├── mesh
│ │ │ │ │ └── DummyGUIVertexConsumer.kt
│ │ │ │ └── test
│ │ │ │ │ └── GuiRenderTestUtil.kt
│ │ │ │ ├── input
│ │ │ │ └── key
│ │ │ │ │ └── manager
│ │ │ │ │ ├── InputManagerTest.kt
│ │ │ │ │ ├── InputTestUtil.kt
│ │ │ │ │ └── binding
│ │ │ │ │ ├── BindingManagerTest.kt
│ │ │ │ │ └── actions
│ │ │ │ │ └── KeyActionFilterTest.kt
│ │ │ │ ├── models
│ │ │ │ ├── BlockModelTest.kt
│ │ │ │ ├── BlockStateApplyTest.kt
│ │ │ │ ├── ModelTestUtil.kt
│ │ │ │ ├── baked
│ │ │ │ │ ├── BakedFaceTest.kt
│ │ │ │ │ ├── BakedModelTestUtil.kt
│ │ │ │ │ ├── CuboidBakeTest.kt
│ │ │ │ │ ├── FaceRotationTest.kt
│ │ │ │ │ ├── FullCubeBakeTest.kt
│ │ │ │ │ ├── LightIndexTest.kt
│ │ │ │ │ ├── UVLockTest.kt
│ │ │ │ │ ├── WeightedModelTest.kt
│ │ │ │ │ └── rotation
│ │ │ │ │ │ ├── ElementRotationTest.kt
│ │ │ │ │ │ ├── XRotationTest.kt
│ │ │ │ │ │ ├── XYRotationTest.kt
│ │ │ │ │ │ └── YRotationTest.kt
│ │ │ │ ├── block
│ │ │ │ │ └── state
│ │ │ │ │ │ ├── baked
│ │ │ │ │ │ ├── BakingUtilIT.kt
│ │ │ │ │ │ └── cull
│ │ │ │ │ │ │ ├── FaceCullingTest.kt
│ │ │ │ │ │ │ └── FacePropertiesTest.kt
│ │ │ │ │ │ ├── render
│ │ │ │ │ │ ├── BlockGUIConsumerTest.kt
│ │ │ │ │ │ └── WeightedBlockRenderTest.kt
│ │ │ │ │ │ └── variant
│ │ │ │ │ │ └── PropertyVariantBlockModelTest.kt
│ │ │ │ ├── loader
│ │ │ │ │ └── SkeletalLoaderTest.kt
│ │ │ │ └── util
│ │ │ │ │ └── CuboidUtilTest.kt
│ │ │ │ ├── particle
│ │ │ │ └── ParticleRendererTest.kt
│ │ │ │ ├── renderer
│ │ │ │ └── renderer
│ │ │ │ │ └── pipeline
│ │ │ │ │ └── world
│ │ │ │ │ └── WorldRendererPipelineTest.kt
│ │ │ │ ├── skeletal
│ │ │ │ └── baked
│ │ │ │ │ └── animation
│ │ │ │ │ └── keyframe
│ │ │ │ │ └── instance
│ │ │ │ │ └── KeyframeInstanceTest.kt
│ │ │ │ ├── system
│ │ │ │ ├── base
│ │ │ │ │ ├── RenderOrderTest.kt
│ │ │ │ │ └── texture
│ │ │ │ │ │ ├── data
│ │ │ │ │ │ └── buffer
│ │ │ │ │ │ │ ├── RGB8BufferTest.kt
│ │ │ │ │ │ │ └── RGBA8BufferTest.kt
│ │ │ │ │ │ └── skin
│ │ │ │ │ │ └── SkinManagerTest.kt
│ │ │ │ ├── dummy
│ │ │ │ │ ├── DummyRenderSystem.kt
│ │ │ │ │ ├── DummyVendor.kt
│ │ │ │ │ ├── buffer
│ │ │ │ │ │ ├── DummyFramebuffer.kt
│ │ │ │ │ │ ├── DummyVertexBuffer.kt
│ │ │ │ │ │ └── uniform
│ │ │ │ │ │ │ ├── DummyFloatUniformBuffer.kt
│ │ │ │ │ │ │ └── DummyIntUniformBuffer.kt
│ │ │ │ │ ├── shader
│ │ │ │ │ │ └── DummyNativeShader.kt
│ │ │ │ │ └── texture
│ │ │ │ │ │ ├── DummyDynamicTexture.kt
│ │ │ │ │ │ ├── DummyDynamicTextureArray.kt
│ │ │ │ │ │ ├── DummyFontTextureArray.kt
│ │ │ │ │ │ ├── DummyStaticTextureArray.kt
│ │ │ │ │ │ ├── DummyTexture.kt
│ │ │ │ │ │ ├── DummyTextureManager.kt
│ │ │ │ │ │ └── DummyTextureRenderData.kt
│ │ │ │ └── window
│ │ │ │ │ └── dummy
│ │ │ │ │ └── DummyWindow.kt
│ │ │ │ ├── textures
│ │ │ │ ├── TextureAnimationTest.kt
│ │ │ │ ├── TextureReadingTest.kt
│ │ │ │ └── properties
│ │ │ │ │ └── AnimationPropertiesTest.kt
│ │ │ │ ├── tint
│ │ │ │ └── tints
│ │ │ │ │ ├── ColorMapTintTest.kt
│ │ │ │ │ └── grass
│ │ │ │ │ └── GrassTintCalculatorTest.kt
│ │ │ │ └── util
│ │ │ │ └── mesh
│ │ │ │ └── uv
│ │ │ │ └── PackedUVTest.kt
│ │ │ ├── input
│ │ │ └── interaction
│ │ │ │ ├── AttackHandlerTest.kt
│ │ │ │ ├── InteractionManagerTest.kt
│ │ │ │ ├── InteractionTestUtil.kt
│ │ │ │ ├── KeyHandlerUtil.kt
│ │ │ │ ├── breaking
│ │ │ │ ├── BreakHandlerInputTest.kt
│ │ │ │ ├── BreakHandlerTest.kt
│ │ │ │ └── executor
│ │ │ │ │ ├── SequencedExecutorTest.kt
│ │ │ │ │ └── TestExecutor.kt
│ │ │ │ ├── long
│ │ │ │ ├── LongUseBlockIT.kt
│ │ │ │ ├── LongUseEntityIT.kt
│ │ │ │ └── LongUseIT.kt
│ │ │ │ ├── short
│ │ │ │ ├── BlockPlaceIT.kt
│ │ │ │ ├── BlockUseIT.kt
│ │ │ │ ├── EntityUseIT.kt
│ │ │ │ ├── ItemUseIT.kt
│ │ │ │ ├── OnAirUseIT.kt
│ │ │ │ └── ShortUseIT.kt
│ │ │ │ └── use
│ │ │ │ └── UseHandlerInputTest.kt
│ │ │ ├── modding
│ │ │ └── loader
│ │ │ │ └── phase
│ │ │ │ └── LoadingPhaseTest.kt
│ │ │ ├── protocol
│ │ │ ├── network
│ │ │ │ ├── network
│ │ │ │ │ └── client
│ │ │ │ │ │ ├── netty
│ │ │ │ │ │ └── packet
│ │ │ │ │ │ │ ├── receiver
│ │ │ │ │ │ │ └── PacketReceiverTest.kt
│ │ │ │ │ │ │ └── sender
│ │ │ │ │ │ │ └── PacketSenderTest.kt
│ │ │ │ │ │ └── test
│ │ │ │ │ │ └── TestNetwork.kt
│ │ │ │ └── session
│ │ │ │ │ └── play
│ │ │ │ │ ├── PacketTestUtil.kt
│ │ │ │ │ └── SessionTestUtil.kt
│ │ │ ├── packets
│ │ │ │ ├── registry
│ │ │ │ │ └── PacketRegistryTest.kt
│ │ │ │ └── s2c
│ │ │ │ │ └── play
│ │ │ │ │ ├── CommandsS2CPTest.kt
│ │ │ │ │ ├── InitializeS2CPTest.kt
│ │ │ │ │ ├── PacketReadingTestUtil.kt
│ │ │ │ │ ├── chat
│ │ │ │ │ └── SignedChatMessageS2CPTest.kt
│ │ │ │ │ ├── chunk
│ │ │ │ │ ├── ChunkS2CPTest.kt
│ │ │ │ │ └── ChunksS2CPTest.kt
│ │ │ │ │ └── tab
│ │ │ │ │ └── TabListS2CPTest.kt
│ │ │ └── protocol
│ │ │ │ └── DefaultPacketMappingTest.kt
│ │ │ ├── test
│ │ │ ├── IT.kt
│ │ │ └── ITUtil.kt
│ │ │ ├── updater
│ │ │ ├── MinosoftUpdateTest.kt
│ │ │ └── MinosoftUpdaterTest.kt
│ │ │ └── util
│ │ │ └── yggdrasil
│ │ │ └── YggdrasilUtilTest.kt
│ └── resources
│ │ ├── chunk
│ │ └── occlusion_stack_overflow.txt
│ │ ├── model
│ │ └── skeletal
│ │ │ └── dummy.smodel
│ │ ├── mods
│ │ ├── broken
│ │ │ └── dummy
│ │ │ │ └── manifest.json
│ │ ├── dummy
│ │ │ └── dummy
│ │ │ │ ├── assets
│ │ │ │ └── nothin
│ │ │ │ │ └── flag.txt
│ │ │ │ ├── de
│ │ │ │ └── bixilon
│ │ │ │ │ └── minosoft
│ │ │ │ │ └── modding
│ │ │ │ │ └── dummy
│ │ │ │ │ ├── DummyMod.class
│ │ │ │ │ └── DummyMod.kt
│ │ │ │ └── manifest.json
│ │ └── nocode
│ │ │ └── dummy
│ │ │ └── manifest.json
│ │ ├── packets
│ │ ├── chunk
│ │ │ ├── cuberite_1_12_2.bin
│ │ │ ├── cuberite_1_8_9.bin
│ │ │ ├── feather_1_16_5.bin
│ │ │ ├── hypixel_hub_1_19_3.bin
│ │ │ ├── hypixel_registries.mbf
│ │ │ └── vanilla_1_19_3.bin
│ │ ├── chunks
│ │ │ └── vanilla_1_7_10.bin
│ │ ├── commands
│ │ │ ├── vanilla_op_1_15_2.bin
│ │ │ ├── vanilla_op_1_19_3.bin
│ │ │ └── vanilla_op_1_20_1.bin
│ │ ├── initialize
│ │ │ ├── hypixel_1_19_4.bin
│ │ │ ├── vanilla_1_15_2.bin
│ │ │ ├── vanilla_1_16_5.bin
│ │ │ ├── vanilla_1_20_1.bin
│ │ │ ├── vanilla_1_20_2.bin
│ │ │ └── vanilla_1_7_10.bin
│ │ ├── signed_chat_message
│ │ │ ├── vanilla_1_20_4.bin
│ │ │ └── vanilla_23w40a.bin
│ │ └── tab
│ │ │ ├── greev_eu_1_15_2.bin
│ │ │ ├── greev_eu_1_20_2.bin
│ │ │ └── greev_eu_1_20_4.bin
│ │ ├── parkour
│ │ ├── ice_parkour_1.txt
│ │ └── ice_walk_1.txt
│ │ ├── skins
│ │ ├── 180fce54ab949a1eada68bea6be02633a4c15fd0915f097a93fa6d3ca1e04623.png
│ │ ├── 5065405b55a729be5a442832b895d4352b3fdcc61c8c57f4b8abad64344194d3.png
│ │ ├── 7af7c07d1ded61b1d3312685b32e4568ffdda762ec8d808895cc329a93d606e0.png
│ │ └── 7af7c07d1ded61b1d3312685b32e4568ffdda762ec8d808895cc329a93d606e0_fixed.png
│ │ ├── texture_reading
│ │ ├── gray_gray.png
│ │ ├── gray_rgb.png
│ │ └── sand.png
│ │ └── tint
│ │ ├── foliage.png
│ │ └── grass.png
├── main
│ ├── java
│ │ ├── de
│ │ │ └── bixilon
│ │ │ │ └── minosoft
│ │ │ │ ├── Minosoft.kt
│ │ │ │ ├── advancements
│ │ │ │ ├── Advancement.kt
│ │ │ │ ├── AdvancementDisplay.kt
│ │ │ │ ├── AdvancementFrames.kt
│ │ │ │ └── AdvancementProgress.kt
│ │ │ │ ├── assets
│ │ │ │ ├── AssetsLoader.kt
│ │ │ │ ├── AssetsManager.kt
│ │ │ │ ├── IntegratedAssets.kt
│ │ │ │ ├── InvalidAssetException.kt
│ │ │ │ ├── directory
│ │ │ │ │ └── DirectoryAssetsManager.kt
│ │ │ │ ├── error
│ │ │ │ │ ├── AssetCorruptedError.kt
│ │ │ │ │ └── AssetNotFoundError.kt
│ │ │ │ ├── file
│ │ │ │ │ ├── FileAssetsManager.kt
│ │ │ │ │ ├── ResourcesAssetsUtil.kt
│ │ │ │ │ └── ZipAssetsManager.kt
│ │ │ │ ├── meta
│ │ │ │ │ ├── MetaObject.kt
│ │ │ │ │ └── MinosoftMeta.kt
│ │ │ │ ├── minecraft
│ │ │ │ │ ├── JarAssetsManager.kt
│ │ │ │ │ ├── MinecraftAssetsManager.kt
│ │ │ │ │ ├── MinecraftPackFormat.kt
│ │ │ │ │ └── index
│ │ │ │ │ │ ├── AssetsProperty.kt
│ │ │ │ │ │ ├── IndexAssetsManager.kt
│ │ │ │ │ │ └── IndexAssetsType.kt
│ │ │ │ ├── multi
│ │ │ │ │ ├── MultiAssetsManager.kt
│ │ │ │ │ └── PriorityAssetsManager.kt
│ │ │ │ ├── properties
│ │ │ │ │ ├── manager
│ │ │ │ │ │ ├── AssetsManagerProperties.kt
│ │ │ │ │ │ └── pack
│ │ │ │ │ │ │ └── PackProperties.kt
│ │ │ │ │ └── version
│ │ │ │ │ │ ├── AssetsVersionProperties.kt
│ │ │ │ │ │ ├── AssetsVersionProperty.kt
│ │ │ │ │ │ ├── PreFlattening.kt
│ │ │ │ │ │ └── generator
│ │ │ │ │ │ └── AssetsPropertiesGenerator.kt
│ │ │ │ ├── resource
│ │ │ │ │ └── ResourceAssetsManager.kt
│ │ │ │ ├── session
│ │ │ │ │ └── SessionAssetsManager.kt
│ │ │ │ └── util
│ │ │ │ │ ├── AssetsOptions.kt
│ │ │ │ │ ├── FileAssetsTypes.kt
│ │ │ │ │ ├── FileAssetsUtil.kt
│ │ │ │ │ ├── FileUtil.kt
│ │ │ │ │ ├── HashTypes.kt
│ │ │ │ │ ├── InputStreamUtil.kt
│ │ │ │ │ ├── PathUtil.kt
│ │ │ │ │ └── SavedAsset.kt
│ │ │ │ ├── camera
│ │ │ │ ├── SessionCamera.kt
│ │ │ │ └── target
│ │ │ │ │ ├── TargetHandler.kt
│ │ │ │ │ └── targets
│ │ │ │ │ ├── BlockTarget.kt
│ │ │ │ │ ├── EntityTarget.kt
│ │ │ │ │ ├── FluidTarget.kt
│ │ │ │ │ └── GenericTarget.kt
│ │ │ │ ├── commands
│ │ │ │ ├── errors
│ │ │ │ │ ├── DeadEndError.kt
│ │ │ │ │ ├── ExpectedArgumentError.kt
│ │ │ │ │ ├── ReaderError.kt
│ │ │ │ │ ├── literal
│ │ │ │ │ │ ├── ExpectedLiteralArgument.kt
│ │ │ │ │ │ ├── InvalidLiteralArgumentError.kt
│ │ │ │ │ │ └── TrailingTextError.kt
│ │ │ │ │ ├── parser
│ │ │ │ │ │ └── ParserError.kt
│ │ │ │ │ ├── reader
│ │ │ │ │ │ ├── ExpectedWhitespaceError.kt
│ │ │ │ │ │ ├── InvalidPeekError.kt
│ │ │ │ │ │ ├── InvalidReadError.kt
│ │ │ │ │ │ ├── OutOfBoundsError.kt
│ │ │ │ │ │ ├── UnexpectedBackslashError.kt
│ │ │ │ │ │ ├── UnfinishedQuotedStringError.kt
│ │ │ │ │ │ ├── map
│ │ │ │ │ │ │ ├── DuplicatedKeyMapError.kt
│ │ │ │ │ │ │ ├── ExpectedKeyMapError.kt
│ │ │ │ │ │ │ ├── InvalidAssignCharMapError.kt
│ │ │ │ │ │ │ └── InvalidMapSeparatorError.kt
│ │ │ │ │ │ └── number
│ │ │ │ │ │ │ └── NegativeNumberError.kt
│ │ │ │ │ └── suggestion
│ │ │ │ │ │ └── NoSuggestionError.kt
│ │ │ │ ├── nodes
│ │ │ │ │ ├── ArgumentNode.kt
│ │ │ │ │ ├── ChatNode.kt
│ │ │ │ │ ├── CommandNode.kt
│ │ │ │ │ ├── ExecutableNode.kt
│ │ │ │ │ ├── LiteralNode.kt
│ │ │ │ │ ├── NamedNode.kt
│ │ │ │ │ ├── RootNode.kt
│ │ │ │ │ ├── SessionNode.kt
│ │ │ │ │ ├── SignedNode.kt
│ │ │ │ │ └── builder
│ │ │ │ │ │ ├── ArgumentNodes.kt
│ │ │ │ │ │ └── CommandNodeBuilder.kt
│ │ │ │ ├── parser
│ │ │ │ │ ├── ArgumentParser.kt
│ │ │ │ │ ├── SignedParser.kt
│ │ │ │ │ ├── brigadier
│ │ │ │ │ │ ├── BrigadierParser.kt
│ │ │ │ │ │ ├── _double
│ │ │ │ │ │ │ ├── DoubleOutOfRangeError.kt
│ │ │ │ │ │ │ ├── DoubleParseError.kt
│ │ │ │ │ │ │ └── DoubleParser.kt
│ │ │ │ │ │ ├── _float
│ │ │ │ │ │ │ ├── FloatOutOfRangeError.kt
│ │ │ │ │ │ │ ├── FloatParseError.kt
│ │ │ │ │ │ │ └── FloatParser.kt
│ │ │ │ │ │ ├── _int
│ │ │ │ │ │ │ ├── IntOutOfRangeError.kt
│ │ │ │ │ │ │ ├── IntParseError.kt
│ │ │ │ │ │ │ └── IntParser.kt
│ │ │ │ │ │ ├── _long
│ │ │ │ │ │ │ ├── LongOutOfRangeError.kt
│ │ │ │ │ │ │ ├── LongParseError.kt
│ │ │ │ │ │ │ └── LongParser.kt
│ │ │ │ │ │ ├── bool
│ │ │ │ │ │ │ ├── BooleanParseError.kt
│ │ │ │ │ │ │ └── BooleanParser.kt
│ │ │ │ │ │ └── string
│ │ │ │ │ │ │ ├── StringParseError.kt
│ │ │ │ │ │ │ └── StringParser.kt
│ │ │ │ │ ├── factory
│ │ │ │ │ │ ├── ArgumentParserFactories.kt
│ │ │ │ │ │ └── ArgumentParserFactory.kt
│ │ │ │ │ ├── minecraft
│ │ │ │ │ │ ├── color
│ │ │ │ │ │ │ ├── ColorParseError.kt
│ │ │ │ │ │ │ ├── ColorParser.kt
│ │ │ │ │ │ │ └── HexNotSupportedError.kt
│ │ │ │ │ │ ├── component
│ │ │ │ │ │ │ └── ChatComponentParser.kt
│ │ │ │ │ │ ├── coordinate
│ │ │ │ │ │ │ ├── CaretNotAllowedError.kt
│ │ │ │ │ │ │ ├── Coordinate.kt
│ │ │ │ │ │ │ ├── CoordinateParserUtil.kt
│ │ │ │ │ │ │ ├── CoordinateRelatives.kt
│ │ │ │ │ │ │ ├── InvalidCoordinateError.kt
│ │ │ │ │ │ │ ├── angle
│ │ │ │ │ │ │ │ └── AngleParser.kt
│ │ │ │ │ │ │ ├── block
│ │ │ │ │ │ │ │ ├── BlockCoordinate.kt
│ │ │ │ │ │ │ │ └── BlockPositionParser.kt
│ │ │ │ │ │ │ ├── rotation
│ │ │ │ │ │ │ │ ├── Rotation.kt
│ │ │ │ │ │ │ │ └── RotationParser.kt
│ │ │ │ │ │ │ ├── vec2
│ │ │ │ │ │ │ │ ├── Vec2Coordinate.kt
│ │ │ │ │ │ │ │ └── Vec2Parser.kt
│ │ │ │ │ │ │ └── vec3
│ │ │ │ │ │ │ │ ├── Vec3Coordinate.kt
│ │ │ │ │ │ │ │ └── Vec3Parser.kt
│ │ │ │ │ │ ├── message
│ │ │ │ │ │ │ └── MessageParser.kt
│ │ │ │ │ │ ├── range
│ │ │ │ │ │ │ ├── Range.kt
│ │ │ │ │ │ │ ├── RangeParserFactory.kt
│ │ │ │ │ │ │ ├── _float
│ │ │ │ │ │ │ │ ├── FloatRange.kt
│ │ │ │ │ │ │ │ ├── FloatRangeParseError.kt
│ │ │ │ │ │ │ │ └── FloatRangeParser.kt
│ │ │ │ │ │ │ └── _int
│ │ │ │ │ │ │ │ ├── IntRangeParseError.kt
│ │ │ │ │ │ │ │ └── IntRangeParser.kt
│ │ │ │ │ │ ├── resource
│ │ │ │ │ │ │ ├── ResourceKeyParser.kt
│ │ │ │ │ │ │ ├── ResourceParser.kt
│ │ │ │ │ │ │ ├── location
│ │ │ │ │ │ │ │ ├── InvalidResourceLocationError.kt
│ │ │ │ │ │ │ │ └── ResourceLocationParser.kt
│ │ │ │ │ │ │ └── tag
│ │ │ │ │ │ │ │ ├── ResourceOrTagKeyParser.kt
│ │ │ │ │ │ │ │ └── ResourceOrTagParser.kt
│ │ │ │ │ │ ├── score
│ │ │ │ │ │ │ └── holder
│ │ │ │ │ │ │ │ ├── ScoreHolderParseError.kt
│ │ │ │ │ │ │ │ └── ScoreHolderParser.kt
│ │ │ │ │ │ ├── target
│ │ │ │ │ │ │ ├── TargetParser.kt
│ │ │ │ │ │ │ ├── TargetSelectors.kt
│ │ │ │ │ │ │ └── targets
│ │ │ │ │ │ │ │ ├── CommandEntityTarget.kt
│ │ │ │ │ │ │ │ ├── identifier
│ │ │ │ │ │ │ │ ├── TargetParseError.kt
│ │ │ │ │ │ │ │ ├── name
│ │ │ │ │ │ │ │ │ ├── InvalidNameError.kt
│ │ │ │ │ │ │ │ │ └── NameEntityTarget.kt
│ │ │ │ │ │ │ │ └── uuid
│ │ │ │ │ │ │ │ │ └── UUIDEntityTarget.kt
│ │ │ │ │ │ │ │ └── selector
│ │ │ │ │ │ │ │ ├── EntitySelectorProperties.kt
│ │ │ │ │ │ │ │ ├── SelectorEntityTarget.kt
│ │ │ │ │ │ │ │ ├── SelectorParserError.kt
│ │ │ │ │ │ │ │ ├── error
│ │ │ │ │ │ │ │ ├── InvalidSelectorKeyError.kt
│ │ │ │ │ │ │ │ └── InvalidTargetSelector.kt
│ │ │ │ │ │ │ │ └── properties
│ │ │ │ │ │ │ │ ├── EntityTargetProperties.kt
│ │ │ │ │ │ │ │ ├── EntityTargetProperty.kt
│ │ │ │ │ │ │ │ ├── EntityTargetPropertyFactory.kt
│ │ │ │ │ │ │ │ ├── GamemodeProperty.kt
│ │ │ │ │ │ │ │ ├── LevelProperty.kt
│ │ │ │ │ │ │ │ ├── LimitProperty.kt
│ │ │ │ │ │ │ │ ├── NameProperty.kt
│ │ │ │ │ │ │ │ ├── TypeProperty.kt
│ │ │ │ │ │ │ │ ├── position
│ │ │ │ │ │ │ │ ├── center
│ │ │ │ │ │ │ │ │ ├── CenterProperty.kt
│ │ │ │ │ │ │ │ │ ├── XCenterProperty.kt
│ │ │ │ │ │ │ │ │ ├── YCenterProperty.kt
│ │ │ │ │ │ │ │ │ └── ZCenterProperty.kt
│ │ │ │ │ │ │ │ └── distance
│ │ │ │ │ │ │ │ │ ├── DistanceProperty.kt
│ │ │ │ │ │ │ │ │ ├── InvalidMinDistanceError.kt
│ │ │ │ │ │ │ │ │ └── MinGreaterThanMaxDistanceError.kt
│ │ │ │ │ │ │ │ ├── rotation
│ │ │ │ │ │ │ │ ├── PitchRotation.kt
│ │ │ │ │ │ │ │ ├── RotationOutOfRangeError.kt
│ │ │ │ │ │ │ │ ├── RotationProperty.kt
│ │ │ │ │ │ │ │ └── YawRotation.kt
│ │ │ │ │ │ │ │ └── sort
│ │ │ │ │ │ │ │ ├── SortProperty.kt
│ │ │ │ │ │ │ │ └── Sorting.kt
│ │ │ │ │ │ ├── time
│ │ │ │ │ │ │ ├── InvalidTimeUnitError.kt
│ │ │ │ │ │ │ ├── TimeParser.kt
│ │ │ │ │ │ │ └── TimeUnit.kt
│ │ │ │ │ │ └── uuid
│ │ │ │ │ │ │ ├── InvalidUUIDError.kt
│ │ │ │ │ │ │ └── UUIDParser.kt
│ │ │ │ │ ├── minosoft
│ │ │ │ │ │ ├── account
│ │ │ │ │ │ │ ├── AccountParser.kt
│ │ │ │ │ │ │ ├── identifier
│ │ │ │ │ │ │ │ └── AccountId.kt
│ │ │ │ │ │ │ └── selector
│ │ │ │ │ │ │ │ ├── AccountTargetProperties.kt
│ │ │ │ │ │ │ │ ├── StateProperty.kt
│ │ │ │ │ │ │ │ └── TypeProperty.kt
│ │ │ │ │ │ ├── dummy
│ │ │ │ │ │ │ └── DummyParser.kt
│ │ │ │ │ │ ├── enums
│ │ │ │ │ │ │ ├── EnumParseError.kt
│ │ │ │ │ │ │ └── EnumParser.kt
│ │ │ │ │ │ └── session
│ │ │ │ │ │ │ ├── SessionParser.kt
│ │ │ │ │ │ │ ├── identifier
│ │ │ │ │ │ │ ├── SessionId.kt
│ │ │ │ │ │ │ └── SessionIdError.kt
│ │ │ │ │ │ │ └── selector
│ │ │ │ │ │ │ └── properties
│ │ │ │ │ │ │ ├── SessionTargetProperties.kt
│ │ │ │ │ │ │ └── StateProperty.kt
│ │ │ │ │ └── selector
│ │ │ │ │ │ ├── AbstractTarget.kt
│ │ │ │ │ │ ├── SelectorParser.kt
│ │ │ │ │ │ ├── SelectorTarget.kt
│ │ │ │ │ │ ├── TargetProperties.kt
│ │ │ │ │ │ ├── TargetProperty.kt
│ │ │ │ │ │ └── TargetPropertyFactory.kt
│ │ │ │ ├── stack
│ │ │ │ │ ├── CommandExecutor.kt
│ │ │ │ │ ├── CommandStack.kt
│ │ │ │ │ ├── CommandStackEntry.kt
│ │ │ │ │ └── print
│ │ │ │ │ │ ├── PlayerPrintTarget.kt
│ │ │ │ │ │ ├── PrintTarget.kt
│ │ │ │ │ │ └── SystemPrintTarget.kt
│ │ │ │ ├── suggestion
│ │ │ │ │ ├── Suggestion.kt
│ │ │ │ │ ├── factory
│ │ │ │ │ │ ├── SuggestionFactories.kt
│ │ │ │ │ │ └── SuggestionFactory.kt
│ │ │ │ │ ├── types
│ │ │ │ │ │ └── SuggestionType.kt
│ │ │ │ │ └── util
│ │ │ │ │ │ └── SuggestionUtil.kt
│ │ │ │ └── util
│ │ │ │ │ ├── CommandReader.kt
│ │ │ │ │ ├── JsonReader.kt
│ │ │ │ │ ├── ReadResult.kt
│ │ │ │ │ └── StringReader.kt
│ │ │ │ ├── config
│ │ │ │ ├── DebugOptions.kt
│ │ │ │ ├── StaticConfiguration.kt
│ │ │ │ ├── key
│ │ │ │ │ ├── KeyActions.kt
│ │ │ │ │ ├── KeyBinding.kt
│ │ │ │ │ └── KeyCodes.kt
│ │ │ │ └── profile
│ │ │ │ │ ├── ProfileLoadException.kt
│ │ │ │ │ ├── ProfileLock.kt
│ │ │ │ │ ├── ProfileType.kt
│ │ │ │ │ ├── ProfileUtil.kt
│ │ │ │ │ ├── SelectedProfiles.kt
│ │ │ │ │ ├── delegate
│ │ │ │ │ ├── AbstractProfileDelegate.kt
│ │ │ │ │ ├── SimpleDelegate.kt
│ │ │ │ │ ├── primitive
│ │ │ │ │ │ ├── BooleanDelegate.kt
│ │ │ │ │ │ ├── DoubleDelegate.kt
│ │ │ │ │ │ ├── FloatDelegate.kt
│ │ │ │ │ │ └── IntDelegate.kt
│ │ │ │ │ └── types
│ │ │ │ │ │ ├── ColorDelegate.kt
│ │ │ │ │ │ ├── EnumDelegate.kt
│ │ │ │ │ │ ├── LanguageDelegate.kt
│ │ │ │ │ │ ├── NullableStringDelegate.kt
│ │ │ │ │ │ ├── StringDelegate.kt
│ │ │ │ │ │ ├── list
│ │ │ │ │ │ └── ListDelegate.kt
│ │ │ │ │ │ ├── map
│ │ │ │ │ │ └── MapDelegate.kt
│ │ │ │ │ │ └── set
│ │ │ │ │ │ └── SetDelegate.kt
│ │ │ │ │ ├── manager
│ │ │ │ │ └── ProfileManagers.kt
│ │ │ │ │ ├── profiles
│ │ │ │ │ ├── Profile.kt
│ │ │ │ │ ├── account
│ │ │ │ │ │ ├── AccountProfile.kt
│ │ │ │ │ │ ├── AccountProfileManager.kt
│ │ │ │ │ │ └── AccountProfileMigration.kt
│ │ │ │ │ ├── audio
│ │ │ │ │ │ ├── AudioProfile.kt
│ │ │ │ │ │ ├── AudioProfileManager.kt
│ │ │ │ │ │ ├── gui
│ │ │ │ │ │ │ └── GuiC.kt
│ │ │ │ │ │ ├── types
│ │ │ │ │ │ │ └── TypesC.kt
│ │ │ │ │ │ └── volume
│ │ │ │ │ │ │ └── VolumeC.kt
│ │ │ │ │ ├── block
│ │ │ │ │ │ ├── BlockProfile.kt
│ │ │ │ │ │ ├── BlockProfileManager.kt
│ │ │ │ │ │ ├── outline
│ │ │ │ │ │ │ └── OutlineC.kt
│ │ │ │ │ │ └── rendering
│ │ │ │ │ │ │ ├── RenderingC.kt
│ │ │ │ │ │ │ └── entities
│ │ │ │ │ │ │ ├── EntitiesC.kt
│ │ │ │ │ │ │ └── sign
│ │ │ │ │ │ │ └── SignC.kt
│ │ │ │ │ ├── controls
│ │ │ │ │ │ ├── ControlsProfile.kt
│ │ │ │ │ │ ├── ControlsProfileManager.kt
│ │ │ │ │ │ ├── interaction
│ │ │ │ │ │ │ └── InteractionC.kt
│ │ │ │ │ │ └── mouse
│ │ │ │ │ │ │ └── MouseC.kt
│ │ │ │ │ ├── entity
│ │ │ │ │ │ ├── EntityProfile.kt
│ │ │ │ │ │ ├── EntityProfileManager.kt
│ │ │ │ │ │ ├── animal
│ │ │ │ │ │ │ └── AnimalC.kt
│ │ │ │ │ │ ├── features
│ │ │ │ │ │ │ ├── FeaturesC.kt
│ │ │ │ │ │ │ ├── hitbox
│ │ │ │ │ │ │ │ └── HitboxC.kt
│ │ │ │ │ │ │ ├── name
│ │ │ │ │ │ │ │ └── NameC.kt
│ │ │ │ │ │ │ ├── player
│ │ │ │ │ │ │ │ └── PlayerC.kt
│ │ │ │ │ │ │ └── score
│ │ │ │ │ │ │ │ └── ScoreC.kt
│ │ │ │ │ │ └── general
│ │ │ │ │ │ │ └── GeneralC.kt
│ │ │ │ │ ├── eros
│ │ │ │ │ │ ├── ErosProfile.kt
│ │ │ │ │ │ ├── ErosProfileManager.kt
│ │ │ │ │ │ ├── general
│ │ │ │ │ │ │ └── GeneralC.kt
│ │ │ │ │ │ ├── server
│ │ │ │ │ │ │ ├── ServerC.kt
│ │ │ │ │ │ │ ├── entries
│ │ │ │ │ │ │ │ ├── AbstractServer.kt
│ │ │ │ │ │ │ │ ├── ErosServer.kt
│ │ │ │ │ │ │ │ └── LANServer.kt
│ │ │ │ │ │ │ ├── list
│ │ │ │ │ │ │ │ └── ListC.kt
│ │ │ │ │ │ │ └── modify
│ │ │ │ │ │ │ │ └── ModifyC.kt
│ │ │ │ │ │ ├── text
│ │ │ │ │ │ │ └── TextC.kt
│ │ │ │ │ │ └── theme
│ │ │ │ │ │ │ └── ThemeC.kt
│ │ │ │ │ ├── gui
│ │ │ │ │ │ ├── GUIProfile.kt
│ │ │ │ │ │ ├── GUIProfileManager.kt
│ │ │ │ │ │ ├── chat
│ │ │ │ │ │ │ ├── ChatC.kt
│ │ │ │ │ │ │ └── internal
│ │ │ │ │ │ │ │ └── InternalC.kt
│ │ │ │ │ │ ├── confirmation
│ │ │ │ │ │ │ └── ConfirmationC.kt
│ │ │ │ │ │ ├── hud
│ │ │ │ │ │ │ ├── HudC.kt
│ │ │ │ │ │ │ ├── crosshair
│ │ │ │ │ │ │ │ └── CrosshairC.kt
│ │ │ │ │ │ │ ├── hotbar
│ │ │ │ │ │ │ │ ├── HotbarC.kt
│ │ │ │ │ │ │ │ └── hunger
│ │ │ │ │ │ │ │ │ └── HungerC.kt
│ │ │ │ │ │ │ └── wawla
│ │ │ │ │ │ │ │ ├── WawlaC.kt
│ │ │ │ │ │ │ │ ├── block
│ │ │ │ │ │ │ │ └── BlockC.kt
│ │ │ │ │ │ │ │ └── entity
│ │ │ │ │ │ │ │ └── EntityC.kt
│ │ │ │ │ │ └── sign
│ │ │ │ │ │ │ └── SignC.kt
│ │ │ │ │ ├── other
│ │ │ │ │ │ ├── OtherProfile.kt
│ │ │ │ │ │ ├── OtherProfileManager.kt
│ │ │ │ │ │ ├── OtherProfileMigration.kt
│ │ │ │ │ │ ├── log
│ │ │ │ │ │ │ └── LogC.kt
│ │ │ │ │ │ └── updater
│ │ │ │ │ │ │ └── UpdaterC.kt
│ │ │ │ │ ├── particle
│ │ │ │ │ │ ├── ParticleProfile.kt
│ │ │ │ │ │ ├── ParticleProfileManager.kt
│ │ │ │ │ │ └── types
│ │ │ │ │ │ │ └── TypesC.kt
│ │ │ │ │ ├── rendering
│ │ │ │ │ │ ├── RenderingProfile.kt
│ │ │ │ │ │ ├── RenderingProfileManager.kt
│ │ │ │ │ │ ├── advanced
│ │ │ │ │ │ │ └── AdvancedC.kt
│ │ │ │ │ │ ├── animations
│ │ │ │ │ │ │ └── AnimationsC.kt
│ │ │ │ │ │ ├── camera
│ │ │ │ │ │ │ ├── CameraC.kt
│ │ │ │ │ │ │ └── shaking
│ │ │ │ │ │ │ │ └── ShakingC.kt
│ │ │ │ │ │ ├── chunkborder
│ │ │ │ │ │ │ └── ChunkBorderC.kt
│ │ │ │ │ │ ├── experimental
│ │ │ │ │ │ │ └── ExperimentalC.kt
│ │ │ │ │ │ ├── fog
│ │ │ │ │ │ │ └── FogC.kt
│ │ │ │ │ │ ├── light
│ │ │ │ │ │ │ └── LightC.kt
│ │ │ │ │ │ ├── movement
│ │ │ │ │ │ │ └── MovementC.kt
│ │ │ │ │ │ ├── overlay
│ │ │ │ │ │ │ ├── OverlayC.kt
│ │ │ │ │ │ │ ├── arm
│ │ │ │ │ │ │ │ └── ArmC.kt
│ │ │ │ │ │ │ ├── fire
│ │ │ │ │ │ │ │ └── FireC.kt
│ │ │ │ │ │ │ └── weather
│ │ │ │ │ │ │ │ └── WeatherC.kt
│ │ │ │ │ │ ├── performance
│ │ │ │ │ │ │ └── PerformanceC.kt
│ │ │ │ │ │ ├── quality
│ │ │ │ │ │ │ ├── QualityC.kt
│ │ │ │ │ │ │ └── resolution
│ │ │ │ │ │ │ │ └── ResolutionC.kt
│ │ │ │ │ │ ├── sky
│ │ │ │ │ │ │ ├── SkyC.kt
│ │ │ │ │ │ │ └── cloud
│ │ │ │ │ │ │ │ └── CloudC.kt
│ │ │ │ │ │ └── textures
│ │ │ │ │ │ │ └── TexturesC.kt
│ │ │ │ │ ├── resources
│ │ │ │ │ │ ├── ResourceProfileMigration.kt
│ │ │ │ │ │ ├── ResourcesProfile.kt
│ │ │ │ │ │ ├── ResourcesProfileManager.kt
│ │ │ │ │ │ ├── assets
│ │ │ │ │ │ │ ├── AssetsC.kt
│ │ │ │ │ │ │ └── packs
│ │ │ │ │ │ │ │ ├── ResourcePack.kt
│ │ │ │ │ │ │ │ └── ResourcePackType.kt
│ │ │ │ │ │ └── source
│ │ │ │ │ │ │ └── SourceC.kt
│ │ │ │ │ └── session
│ │ │ │ │ │ ├── SessionProfile.kt
│ │ │ │ │ │ ├── SessionProfileManager.kt
│ │ │ │ │ │ ├── signature
│ │ │ │ │ │ └── SignatureC.kt
│ │ │ │ │ │ └── skin
│ │ │ │ │ │ └── SkinC.kt
│ │ │ │ │ └── storage
│ │ │ │ │ ├── FileStorage.kt
│ │ │ │ │ ├── ProfileIOManager.kt
│ │ │ │ │ ├── ProfileStorage.kt
│ │ │ │ │ └── StorageProfileManager.kt
│ │ │ │ ├── data
│ │ │ │ ├── Axes.kt
│ │ │ │ ├── Rarities.kt
│ │ │ │ ├── SoundCategories.kt
│ │ │ │ ├── Tickable.kt
│ │ │ │ ├── Trade.kt
│ │ │ │ ├── abilities
│ │ │ │ │ ├── Gamemodes.kt
│ │ │ │ │ ├── InteractionAbilities.kt
│ │ │ │ │ └── ItemCooldown.kt
│ │ │ │ ├── accounts
│ │ │ │ │ ├── Account.kt
│ │ │ │ │ ├── AccountStates.kt
│ │ │ │ │ └── types
│ │ │ │ │ │ ├── AccountTypes.kt
│ │ │ │ │ │ ├── microsoft
│ │ │ │ │ │ ├── MicrosoftAccount.kt
│ │ │ │ │ │ └── MicrosoftTokens.kt
│ │ │ │ │ │ ├── mojang
│ │ │ │ │ │ └── MojangAccount.kt
│ │ │ │ │ │ └── offline
│ │ │ │ │ │ └── OfflineAccount.kt
│ │ │ │ ├── bossbar
│ │ │ │ │ ├── Bossbar.kt
│ │ │ │ │ ├── BossbarColors.kt
│ │ │ │ │ ├── BossbarFlags.kt
│ │ │ │ │ ├── BossbarManager.kt
│ │ │ │ │ └── BossbarNotches.kt
│ │ │ │ ├── chat
│ │ │ │ │ ├── ChatTextPositions.kt
│ │ │ │ │ ├── ChatUtil.kt
│ │ │ │ │ ├── filter
│ │ │ │ │ │ ├── ChatFilter.kt
│ │ │ │ │ │ ├── Filter.kt
│ │ │ │ │ │ ├── FullFilter.kt
│ │ │ │ │ │ ├── PassFilter.kt
│ │ │ │ │ │ └── SemiFilter.kt
│ │ │ │ │ ├── message
│ │ │ │ │ │ ├── ChatMessage.kt
│ │ │ │ │ │ ├── FormattedChatMessage.kt
│ │ │ │ │ │ ├── PlayerChatMessage.kt
│ │ │ │ │ │ ├── PlayerSentMessage.kt
│ │ │ │ │ │ ├── SignedChatMessage.kt
│ │ │ │ │ │ ├── SimpleChatMessage.kt
│ │ │ │ │ │ └── internal
│ │ │ │ │ │ │ ├── DebugChatMessage.kt
│ │ │ │ │ │ │ └── InternalChatMessage.kt
│ │ │ │ │ ├── sender
│ │ │ │ │ │ ├── InvalidSender.kt
│ │ │ │ │ │ ├── MessageSender.kt
│ │ │ │ │ │ ├── PlayerEntityMessageSender.kt
│ │ │ │ │ │ ├── PlayerMessageSender.kt
│ │ │ │ │ │ ├── UnknownMessageSender.kt
│ │ │ │ │ │ └── UnspawnedMessageSender.kt
│ │ │ │ │ ├── signature
│ │ │ │ │ │ ├── Acknowledgement.kt
│ │ │ │ │ │ ├── ChatSignatureProperties.kt
│ │ │ │ │ │ ├── LastSeenMessageList.kt
│ │ │ │ │ │ ├── MessageHeader.kt
│ │ │ │ │ │ ├── errors
│ │ │ │ │ │ │ ├── InvalidSignatureError.kt
│ │ │ │ │ │ │ ├── KeyExpiredError.kt
│ │ │ │ │ │ │ └── MessageExpiredError.kt
│ │ │ │ │ │ ├── lastSeen
│ │ │ │ │ │ │ ├── IndexedMessageSignatureData.kt
│ │ │ │ │ │ │ └── MessageSignatureData.kt
│ │ │ │ │ │ ├── signer
│ │ │ │ │ │ │ ├── MessageSigner.kt
│ │ │ │ │ │ │ ├── MessageSigner1.kt
│ │ │ │ │ │ │ ├── MessageSigner2.kt
│ │ │ │ │ │ │ ├── MessageSigner3.kt
│ │ │ │ │ │ │ └── MessageSigningUtil.kt
│ │ │ │ │ │ └── verifyer
│ │ │ │ │ │ │ └── MessageVerifyUtil.kt
│ │ │ │ │ └── type
│ │ │ │ │ │ └── DefaultMessageTypes.kt
│ │ │ │ ├── colors
│ │ │ │ │ └── DyeColors.kt
│ │ │ │ ├── container
│ │ │ │ │ ├── ClientContainer.kt
│ │ │ │ │ ├── Container.kt
│ │ │ │ │ ├── ContainerEdit.kt
│ │ │ │ │ ├── ContainerUtil.kt
│ │ │ │ │ ├── DefaultInventoryTypes.kt
│ │ │ │ │ ├── IncompleteContainer.kt
│ │ │ │ │ ├── InventoryDelegate.kt
│ │ │ │ │ ├── InventorySynchronizedContainer.kt
│ │ │ │ │ ├── ItemStackUtil.kt
│ │ │ │ │ ├── SlotEdit.kt
│ │ │ │ │ ├── actions
│ │ │ │ │ │ ├── ContainerAction.kt
│ │ │ │ │ │ ├── ContainerActions.kt
│ │ │ │ │ │ └── types
│ │ │ │ │ │ │ ├── CloneContainerAction.kt
│ │ │ │ │ │ │ ├── DistributeContainerAction.kt
│ │ │ │ │ │ │ ├── DropContainerAction.kt
│ │ │ │ │ │ │ ├── FastMoveContainerAction.kt
│ │ │ │ │ │ │ ├── PickAllContainerAction.kt
│ │ │ │ │ │ │ ├── SimpleContainerAction.kt
│ │ │ │ │ │ │ └── SlotSwapContainerAction.kt
│ │ │ │ │ ├── equipment
│ │ │ │ │ │ ├── ArmorSlots.kt
│ │ │ │ │ │ ├── EntityEquipment.kt
│ │ │ │ │ │ └── EquipmentSlots.kt
│ │ │ │ │ ├── sections
│ │ │ │ │ │ ├── ContainerSection.kt
│ │ │ │ │ │ ├── HotbarSection.kt
│ │ │ │ │ │ ├── PassiveInventorySection.kt
│ │ │ │ │ │ ├── RangeSection.kt
│ │ │ │ │ │ └── SingleSlotSection.kt
│ │ │ │ │ ├── slots
│ │ │ │ │ │ ├── DefaultSlotType.kt
│ │ │ │ │ │ ├── EnchantableSlotType.kt
│ │ │ │ │ │ ├── FuelSlotType.kt
│ │ │ │ │ │ ├── ReadOnlySlotType.kt
│ │ │ │ │ │ ├── RemoveOnlySlotType.kt
│ │ │ │ │ │ ├── SlotType.kt
│ │ │ │ │ │ └── equipment
│ │ │ │ │ │ │ ├── ChestSlotType.kt
│ │ │ │ │ │ │ ├── EquipmentSlotType.kt
│ │ │ │ │ │ │ ├── FeetSlotType.kt
│ │ │ │ │ │ │ ├── HeadSlotType.kt
│ │ │ │ │ │ │ ├── LegsSlotType.kt
│ │ │ │ │ │ │ └── SingleItemSlotType.kt
│ │ │ │ │ ├── stack
│ │ │ │ │ │ ├── ItemStack.kt
│ │ │ │ │ │ └── property
│ │ │ │ │ │ │ ├── DisplayProperty.kt
│ │ │ │ │ │ │ ├── DurabilityProperty.kt
│ │ │ │ │ │ │ ├── EnchantingProperty.kt
│ │ │ │ │ │ │ ├── HideProperty.kt
│ │ │ │ │ │ │ ├── HolderProperty.kt
│ │ │ │ │ │ │ ├── ItemProperty.kt
│ │ │ │ │ │ │ ├── NbtProperty.kt
│ │ │ │ │ │ │ └── Property.kt
│ │ │ │ │ └── types
│ │ │ │ │ │ ├── CraftingContainer.kt
│ │ │ │ │ │ ├── EnchantingContainer.kt
│ │ │ │ │ │ ├── PlayerInventory.kt
│ │ │ │ │ │ ├── UnknownContainer.kt
│ │ │ │ │ │ ├── generic
│ │ │ │ │ │ ├── Generic9x1Container.kt
│ │ │ │ │ │ ├── Generic9x2Container.kt
│ │ │ │ │ │ ├── Generic9x3Container.kt
│ │ │ │ │ │ ├── Generic9x4Container.kt
│ │ │ │ │ │ ├── Generic9x5Container.kt
│ │ │ │ │ │ ├── Generic9x6Container.kt
│ │ │ │ │ │ ├── GenericContainer.kt
│ │ │ │ │ │ ├── ShulkerBoxContainer.kt
│ │ │ │ │ │ └── legacy
│ │ │ │ │ │ │ └── ChestContainer.kt
│ │ │ │ │ │ └── processing
│ │ │ │ │ │ ├── ProcessingContainer.kt
│ │ │ │ │ │ └── smelting
│ │ │ │ │ │ ├── BlastFurnaceContainer.kt
│ │ │ │ │ │ ├── FurnaceContainer.kt
│ │ │ │ │ │ ├── SmeltingContainer.kt
│ │ │ │ │ │ ├── SmeltingSlot.kt
│ │ │ │ │ │ └── SmokerContainer.kt
│ │ │ │ ├── direction
│ │ │ │ │ ├── DirectionUtil.kt
│ │ │ │ │ ├── DirectionVector.kt
│ │ │ │ │ └── Directions.kt
│ │ │ │ ├── entities
│ │ │ │ │ ├── EntityAnimations.kt
│ │ │ │ │ ├── EntityObjectType.kt
│ │ │ │ │ ├── EntityRenderInfo.kt
│ │ │ │ │ ├── EntityRotation.kt
│ │ │ │ │ ├── GlobalPosition.kt
│ │ │ │ │ ├── Poses.kt
│ │ │ │ │ ├── StatusEffectInstance.kt
│ │ │ │ │ ├── block
│ │ │ │ │ │ ├── BannerBlockEntity.kt
│ │ │ │ │ │ ├── BeaconBlockEntity.kt
│ │ │ │ │ │ ├── BedBlockEntity.kt
│ │ │ │ │ │ ├── BeehiveBlockEntity.kt
│ │ │ │ │ │ ├── BellBlockEntity.kt
│ │ │ │ │ │ ├── BlockActionEntity.kt
│ │ │ │ │ │ ├── BlockDataDataType.kt
│ │ │ │ │ │ ├── BlockEntity.kt
│ │ │ │ │ │ ├── BlockEntityFactory.kt
│ │ │ │ │ │ ├── CampfireBlockEntity.kt
│ │ │ │ │ │ ├── ConduitBlockEntity.kt
│ │ │ │ │ │ ├── DefaultBlockDataFactory.kt
│ │ │ │ │ │ ├── EnchantingTableBlockEntity.kt
│ │ │ │ │ │ ├── FlowerPotBlockEntity.kt
│ │ │ │ │ │ ├── JigsawBlockEntity.kt
│ │ │ │ │ │ ├── JukeboxBlockEntity.kt
│ │ │ │ │ │ ├── LecternBlockEntity.kt
│ │ │ │ │ │ ├── MobSpawnerBlockEntity.kt
│ │ │ │ │ │ ├── NoteBlockBlockEntity.kt
│ │ │ │ │ │ ├── SkullBlockEntity.kt
│ │ │ │ │ │ ├── StructureBlockBlockEntity.kt
│ │ │ │ │ │ ├── container
│ │ │ │ │ │ │ ├── ContainerBlockEntity.kt
│ │ │ │ │ │ │ └── storage
│ │ │ │ │ │ │ │ ├── ChestBlockEntity.kt
│ │ │ │ │ │ │ │ ├── EnderChestBlockEntity.kt
│ │ │ │ │ │ │ │ ├── ShulkerBoxBlockEntity.kt
│ │ │ │ │ │ │ │ ├── StorageBlockEntity.kt
│ │ │ │ │ │ │ │ └── TrappedChestBlockEntity.kt
│ │ │ │ │ │ ├── end
│ │ │ │ │ │ │ ├── EndGatewayBlockEntity.kt
│ │ │ │ │ │ │ └── EndPortalBlockEntity.kt
│ │ │ │ │ │ ├── redstone
│ │ │ │ │ │ │ ├── CommandBlockEntity.kt
│ │ │ │ │ │ │ ├── SculkSensorBlockEntity.kt
│ │ │ │ │ │ │ └── piston
│ │ │ │ │ │ │ │ ├── PistonBlockEntity.kt
│ │ │ │ │ │ │ │ └── StickyPistonBlockEntity.kt
│ │ │ │ │ │ └── sign
│ │ │ │ │ │ │ ├── SignBlockEntity.kt
│ │ │ │ │ │ │ └── SignSides.kt
│ │ │ │ │ ├── data
│ │ │ │ │ │ ├── EntityData.kt
│ │ │ │ │ │ ├── EntityDataDelegate.kt
│ │ │ │ │ │ ├── EntityDataField.kt
│ │ │ │ │ │ └── types
│ │ │ │ │ │ │ ├── BlockStateEntityDataType.kt
│ │ │ │ │ │ │ ├── BooleanEntityDataType.kt
│ │ │ │ │ │ │ ├── ByteEntityDataType.kt
│ │ │ │ │ │ │ ├── ChatComponentEntityDataType.kt
│ │ │ │ │ │ │ ├── DirectionEntityDataType.kt
│ │ │ │ │ │ │ ├── EntityDataType.kt
│ │ │ │ │ │ │ ├── EntityDataTypes.kt
│ │ │ │ │ │ │ ├── FloatEntityDataType.kt
│ │ │ │ │ │ │ ├── GlobalPositionEntityDataType.kt
│ │ │ │ │ │ │ ├── IntEntityDataType.kt
│ │ │ │ │ │ │ ├── ItemStackEntityDataType.kt
│ │ │ │ │ │ │ ├── LongEntityDataType.kt
│ │ │ │ │ │ │ ├── NbtEntityDataType.kt
│ │ │ │ │ │ │ ├── OptionalChatComponentEntityDataType.kt
│ │ │ │ │ │ │ ├── OptionalGlobalPositionEntityDataType.kt
│ │ │ │ │ │ │ ├── OptionalIntEntityDataType.kt
│ │ │ │ │ │ │ ├── OptionalUUIDEntityDataType.kt
│ │ │ │ │ │ │ ├── OptionalVec3iEntityDataType.kt
│ │ │ │ │ │ │ ├── ParticleDataEntityDataType.kt
│ │ │ │ │ │ │ ├── PoseEntityDataType.kt
│ │ │ │ │ │ │ ├── QuaternionEntityDataType.kt
│ │ │ │ │ │ │ ├── ShortEntityDataType.kt
│ │ │ │ │ │ │ ├── SnifferStateEntityDataType.kt
│ │ │ │ │ │ │ ├── StringEntityDataType.kt
│ │ │ │ │ │ │ ├── VarIntEntityDataType.kt
│ │ │ │ │ │ │ ├── Vec3EntityDataType.kt
│ │ │ │ │ │ │ ├── Vec3fEntityDataType.kt
│ │ │ │ │ │ │ ├── Vec3iEntityDataType.kt
│ │ │ │ │ │ │ ├── VillagerDataEntityDataType.kt
│ │ │ │ │ │ │ └── registry
│ │ │ │ │ │ │ ├── MotifEntityDataType.kt
│ │ │ │ │ │ │ ├── RegistryEntityDataType.kt
│ │ │ │ │ │ │ └── VariantsEntityDataType.kt
│ │ │ │ │ ├── entities
│ │ │ │ │ │ ├── AgeableMob.kt
│ │ │ │ │ │ ├── AreaEffectCloud.kt
│ │ │ │ │ │ ├── Breeze.kt
│ │ │ │ │ │ ├── Entity.kt
│ │ │ │ │ │ ├── EntityAttachable.kt
│ │ │ │ │ │ ├── ExperienceOrb.kt
│ │ │ │ │ │ ├── FlyingMob.kt
│ │ │ │ │ │ ├── InteractionEntity.kt
│ │ │ │ │ │ ├── LightningBolt.kt
│ │ │ │ │ │ ├── LivingEntity.kt
│ │ │ │ │ │ ├── Mob.kt
│ │ │ │ │ │ ├── PathfinderMob.kt
│ │ │ │ │ │ ├── SynchronizedEntityData.kt
│ │ │ │ │ │ ├── TamableAnimal.kt
│ │ │ │ │ │ ├── UnknownEntityException.kt
│ │ │ │ │ │ ├── WindCharge.kt
│ │ │ │ │ │ ├── ambient
│ │ │ │ │ │ │ ├── AmbientCreature.kt
│ │ │ │ │ │ │ └── Bat.kt
│ │ │ │ │ │ ├── animal
│ │ │ │ │ │ │ ├── AbstractGolem.kt
│ │ │ │ │ │ │ ├── Animal.kt
│ │ │ │ │ │ │ ├── Axolotl.kt
│ │ │ │ │ │ │ ├── Bee.kt
│ │ │ │ │ │ │ ├── Cat.kt
│ │ │ │ │ │ │ ├── Chicken.kt
│ │ │ │ │ │ │ ├── Cow.kt
│ │ │ │ │ │ │ ├── Fox.kt
│ │ │ │ │ │ │ ├── Frog.kt
│ │ │ │ │ │ │ ├── Goat.kt
│ │ │ │ │ │ │ ├── IronGolem.kt
│ │ │ │ │ │ │ ├── Mooshroom.kt
│ │ │ │ │ │ │ ├── Ocelot.kt
│ │ │ │ │ │ │ ├── Panda.kt
│ │ │ │ │ │ │ ├── Parrot.kt
│ │ │ │ │ │ │ ├── Pig.kt
│ │ │ │ │ │ │ ├── PolarBear.kt
│ │ │ │ │ │ │ ├── Rabbit.kt
│ │ │ │ │ │ │ ├── Sheep.kt
│ │ │ │ │ │ │ ├── ShoulderRidingAnimal.kt
│ │ │ │ │ │ │ ├── Sniffer.kt
│ │ │ │ │ │ │ ├── SnowGolem.kt
│ │ │ │ │ │ │ ├── Strider.kt
│ │ │ │ │ │ │ ├── Turtle.kt
│ │ │ │ │ │ │ ├── Wolf.kt
│ │ │ │ │ │ │ ├── hoglin
│ │ │ │ │ │ │ │ └── Hoglin.kt
│ │ │ │ │ │ │ ├── horse
│ │ │ │ │ │ │ │ ├── AbstractChestedHorse.kt
│ │ │ │ │ │ │ │ ├── AbstractHorse.kt
│ │ │ │ │ │ │ │ ├── Camel.kt
│ │ │ │ │ │ │ │ ├── Donkey.kt
│ │ │ │ │ │ │ │ ├── Horse.kt
│ │ │ │ │ │ │ │ ├── Llama.kt
│ │ │ │ │ │ │ │ ├── Mule.kt
│ │ │ │ │ │ │ │ ├── SkeletonHorse.kt
│ │ │ │ │ │ │ │ ├── TraderLlama.kt
│ │ │ │ │ │ │ │ └── ZombieHorse.kt
│ │ │ │ │ │ │ └── water
│ │ │ │ │ │ │ │ ├── AbstractFish.kt
│ │ │ │ │ │ │ │ ├── AbstractSchoolingFish.kt
│ │ │ │ │ │ │ │ ├── Cod.kt
│ │ │ │ │ │ │ │ ├── Dolphin.kt
│ │ │ │ │ │ │ │ ├── GlowSquid.kt
│ │ │ │ │ │ │ │ ├── PufferFish.kt
│ │ │ │ │ │ │ │ ├── Salmon.kt
│ │ │ │ │ │ │ │ ├── Squid.kt
│ │ │ │ │ │ │ │ ├── Tadpole.kt
│ │ │ │ │ │ │ │ ├── TropicalFish.kt
│ │ │ │ │ │ │ │ └── WaterAnimal.kt
│ │ │ │ │ │ ├── boss
│ │ │ │ │ │ │ ├── enderdragon
│ │ │ │ │ │ │ │ ├── EndCrystal.kt
│ │ │ │ │ │ │ │ └── EnderDragon.kt
│ │ │ │ │ │ │ └── wither
│ │ │ │ │ │ │ │ └── WitherBoss.kt
│ │ │ │ │ │ ├── decoration
│ │ │ │ │ │ │ ├── GlowItemFrame.kt
│ │ │ │ │ │ │ ├── HangingEntity.kt
│ │ │ │ │ │ │ ├── ItemFrame.kt
│ │ │ │ │ │ │ ├── LeashFenceKnotEntity.kt
│ │ │ │ │ │ │ ├── Marker.kt
│ │ │ │ │ │ │ ├── Painting.kt
│ │ │ │ │ │ │ └── armorstand
│ │ │ │ │ │ │ │ └── ArmorStand.kt
│ │ │ │ │ │ ├── display
│ │ │ │ │ │ │ ├── BlockDisplayEntity.kt
│ │ │ │ │ │ │ ├── DisplayEntity.kt
│ │ │ │ │ │ │ ├── ItemDisplayEntity.kt
│ │ │ │ │ │ │ └── TextDisplayEntity.kt
│ │ │ │ │ │ ├── item
│ │ │ │ │ │ │ ├── FallingBlockEntity.kt
│ │ │ │ │ │ │ ├── ItemEntity.kt
│ │ │ │ │ │ │ └── PrimedTNT.kt
│ │ │ │ │ │ ├── monster
│ │ │ │ │ │ │ ├── AbstractSkeleton.kt
│ │ │ │ │ │ │ ├── Allay.kt
│ │ │ │ │ │ │ ├── Blaze.kt
│ │ │ │ │ │ │ ├── CaveSpider.kt
│ │ │ │ │ │ │ ├── Creeper.kt
│ │ │ │ │ │ │ ├── Drowned.kt
│ │ │ │ │ │ │ ├── ElderGuardian.kt
│ │ │ │ │ │ │ ├── Enderman.kt
│ │ │ │ │ │ │ ├── Endermite.kt
│ │ │ │ │ │ │ ├── EvokerFangs.kt
│ │ │ │ │ │ │ ├── Ghast.kt
│ │ │ │ │ │ │ ├── Giant.kt
│ │ │ │ │ │ │ ├── Guardian.kt
│ │ │ │ │ │ │ ├── Husk.kt
│ │ │ │ │ │ │ ├── MagmaCube.kt
│ │ │ │ │ │ │ ├── Monster.kt
│ │ │ │ │ │ │ ├── PatrollingMonster.kt
│ │ │ │ │ │ │ ├── Phantom.kt
│ │ │ │ │ │ │ ├── Shulker.kt
│ │ │ │ │ │ │ ├── Silverfish.kt
│ │ │ │ │ │ │ ├── Skeleton.kt
│ │ │ │ │ │ │ ├── Slime.kt
│ │ │ │ │ │ │ ├── Spider.kt
│ │ │ │ │ │ │ ├── Stray.kt
│ │ │ │ │ │ │ ├── Vex.kt
│ │ │ │ │ │ │ ├── Warden.kt
│ │ │ │ │ │ │ ├── WitherSkeleton.kt
│ │ │ │ │ │ │ ├── Zoglin.kt
│ │ │ │ │ │ │ ├── Zombie.kt
│ │ │ │ │ │ │ ├── ZombieVillager.kt
│ │ │ │ │ │ │ ├── ZombifiedPiglin.kt
│ │ │ │ │ │ │ ├── piglin
│ │ │ │ │ │ │ │ ├── AbstractPiglin.kt
│ │ │ │ │ │ │ │ ├── Piglin.kt
│ │ │ │ │ │ │ │ └── PiglinBrute.kt
│ │ │ │ │ │ │ └── raid
│ │ │ │ │ │ │ │ ├── AbstractIllager.kt
│ │ │ │ │ │ │ │ ├── Evoker.kt
│ │ │ │ │ │ │ │ ├── Illusioner.kt
│ │ │ │ │ │ │ │ ├── Pillager.kt
│ │ │ │ │ │ │ │ ├── Raider.kt
│ │ │ │ │ │ │ │ ├── Ravager.kt
│ │ │ │ │ │ │ │ ├── SpellcasterIllager.kt
│ │ │ │ │ │ │ │ ├── Vindicator.kt
│ │ │ │ │ │ │ │ └── Witch.kt
│ │ │ │ │ │ ├── npc
│ │ │ │ │ │ │ └── villager
│ │ │ │ │ │ │ │ ├── AbstractVillager.kt
│ │ │ │ │ │ │ │ ├── Villager.kt
│ │ │ │ │ │ │ │ ├── WanderingTrader.kt
│ │ │ │ │ │ │ │ └── data
│ │ │ │ │ │ │ │ └── VillagerData.kt
│ │ │ │ │ │ ├── player
│ │ │ │ │ │ │ ├── Arms.kt
│ │ │ │ │ │ │ ├── DefaultPlayerProperties.kt
│ │ │ │ │ │ │ ├── Hands.kt
│ │ │ │ │ │ │ ├── PlayerEntity.kt
│ │ │ │ │ │ │ ├── RemotePlayerEntity.kt
│ │ │ │ │ │ │ ├── SkinParts.kt
│ │ │ │ │ │ │ ├── additional
│ │ │ │ │ │ │ │ ├── AdditionalDataUpdate.kt
│ │ │ │ │ │ │ │ └── PlayerAdditional.kt
│ │ │ │ │ │ │ ├── compass
│ │ │ │ │ │ │ │ └── CompassPosition.kt
│ │ │ │ │ │ │ ├── local
│ │ │ │ │ │ │ │ ├── Abilities.kt
│ │ │ │ │ │ │ │ ├── ExperienceCondition.kt
│ │ │ │ │ │ │ │ ├── HealthCondition.kt
│ │ │ │ │ │ │ │ ├── LocalPlayerEntity.kt
│ │ │ │ │ │ │ │ ├── MovementPacketSender.kt
│ │ │ │ │ │ │ │ ├── PlayerItemManager.kt
│ │ │ │ │ │ │ │ ├── PlayerPrivateKey.kt
│ │ │ │ │ │ │ │ └── SignatureKeyManagement.kt
│ │ │ │ │ │ │ ├── properties
│ │ │ │ │ │ │ │ ├── PlayerProperties.kt
│ │ │ │ │ │ │ │ └── textures
│ │ │ │ │ │ │ │ │ ├── PlayerTexture.kt
│ │ │ │ │ │ │ │ │ ├── PlayerTextures.kt
│ │ │ │ │ │ │ │ │ ├── SkinPlayerTexture.kt
│ │ │ │ │ │ │ │ │ └── metadata
│ │ │ │ │ │ │ │ │ ├── SkinMetadata.kt
│ │ │ │ │ │ │ │ │ └── SkinModel.kt
│ │ │ │ │ │ │ └── tab
│ │ │ │ │ │ │ │ └── TabList.kt
│ │ │ │ │ │ ├── projectile
│ │ │ │ │ │ │ ├── AbstractArrow.kt
│ │ │ │ │ │ │ ├── AbstractHurtingProjectile.kt
│ │ │ │ │ │ │ ├── Arrow.kt
│ │ │ │ │ │ │ ├── DragonFireball.kt
│ │ │ │ │ │ │ ├── Fireball.kt
│ │ │ │ │ │ │ ├── FireworkRocketEntity.kt
│ │ │ │ │ │ │ ├── FishingBobber.kt
│ │ │ │ │ │ │ ├── LargeFireball.kt
│ │ │ │ │ │ │ ├── LlamaSpit.kt
│ │ │ │ │ │ │ ├── Projectile.kt
│ │ │ │ │ │ │ ├── ShulkerBullet.kt
│ │ │ │ │ │ │ ├── SmallFireball.kt
│ │ │ │ │ │ │ ├── SpectralArrow.kt
│ │ │ │ │ │ │ ├── ThrowableItemProjectile.kt
│ │ │ │ │ │ │ ├── ThrowableProjectile.kt
│ │ │ │ │ │ │ ├── ThrownEgg.kt
│ │ │ │ │ │ │ ├── ThrownEnderPearl.kt
│ │ │ │ │ │ │ ├── ThrownExperienceBottle.kt
│ │ │ │ │ │ │ ├── ThrownEyeOfEnder.kt
│ │ │ │ │ │ │ ├── ThrownPotion.kt
│ │ │ │ │ │ │ ├── ThrownSnowball.kt
│ │ │ │ │ │ │ ├── ThrownTrident.kt
│ │ │ │ │ │ │ └── WitherSkull.kt
│ │ │ │ │ │ ├── properties
│ │ │ │ │ │ │ ├── EntityAttachment.kt
│ │ │ │ │ │ │ ├── FluidWalker.kt
│ │ │ │ │ │ │ ├── StatusEffectProperty.kt
│ │ │ │ │ │ │ └── riding
│ │ │ │ │ │ │ │ ├── InputSteerable.kt
│ │ │ │ │ │ │ │ ├── ItemRideable.kt
│ │ │ │ │ │ │ │ ├── ItemSteerable.kt
│ │ │ │ │ │ │ │ └── Saddleable.kt
│ │ │ │ │ │ └── vehicle
│ │ │ │ │ │ │ ├── AbstractMinecart.kt
│ │ │ │ │ │ │ ├── AbstractMinecartContainer.kt
│ │ │ │ │ │ │ ├── ChestMinecart.kt
│ │ │ │ │ │ │ ├── CommandBlockMinecart.kt
│ │ │ │ │ │ │ ├── FurnaceMinecart.kt
│ │ │ │ │ │ │ ├── HopperMinecart.kt
│ │ │ │ │ │ │ ├── Minecart.kt
│ │ │ │ │ │ │ ├── SpawnerMinecart.kt
│ │ │ │ │ │ │ ├── TNTMinecart.kt
│ │ │ │ │ │ │ └── boat
│ │ │ │ │ │ │ ├── Boat.kt
│ │ │ │ │ │ │ └── ChestBoat.kt
│ │ │ │ │ ├── event
│ │ │ │ │ │ ├── EntityEvent.kt
│ │ │ │ │ │ ├── EntityEvents.kt
│ │ │ │ │ │ └── events
│ │ │ │ │ │ │ └── damage
│ │ │ │ │ │ │ ├── DamageEvent.kt
│ │ │ │ │ │ │ ├── DamageListener.kt
│ │ │ │ │ │ │ ├── DrowningDamageEvent.kt
│ │ │ │ │ │ │ ├── FireDamageEvent.kt
│ │ │ │ │ │ │ ├── FreezeDamageEvent.kt
│ │ │ │ │ │ │ ├── GenericDamageEvent.kt
│ │ │ │ │ │ │ ├── SweetBerryBushDamageEvent.kt
│ │ │ │ │ │ │ └── ThornsDamageEvent.kt
│ │ │ │ │ └── wawla
│ │ │ │ │ │ └── EntityWawlaProvider.kt
│ │ │ │ ├── language
│ │ │ │ │ ├── IntegratedLanguage.kt
│ │ │ │ │ ├── LanguageUtil.kt
│ │ │ │ │ ├── lang
│ │ │ │ │ │ ├── LanguageData.kt
│ │ │ │ │ │ └── LanguageFile.kt
│ │ │ │ │ ├── manager
│ │ │ │ │ │ ├── Language.kt
│ │ │ │ │ │ └── LanguageManager.kt
│ │ │ │ │ ├── placeholder
│ │ │ │ │ │ ├── PlaceholderIteratorOptions.kt
│ │ │ │ │ │ └── PlaceholderUtil.kt
│ │ │ │ │ └── translate
│ │ │ │ │ │ ├── Translatable.kt
│ │ │ │ │ │ ├── Translated.kt
│ │ │ │ │ │ └── Translator.kt
│ │ │ │ ├── physics
│ │ │ │ │ └── PhysicsEntity.kt
│ │ │ │ ├── registries
│ │ │ │ │ ├── MinecraftDefaults.kt
│ │ │ │ │ ├── Motif.kt
│ │ │ │ │ ├── PluginChannel.kt
│ │ │ │ │ ├── biomes
│ │ │ │ │ │ ├── Biome.kt
│ │ │ │ │ │ ├── BiomePrecipitation.kt
│ │ │ │ │ │ ├── DefaultBiomes.kt
│ │ │ │ │ │ └── GrassColorModifiers.kt
│ │ │ │ │ ├── blocks
│ │ │ │ │ │ ├── BlockRegistry.kt
│ │ │ │ │ │ ├── MinecraftBlocks.kt
│ │ │ │ │ │ ├── cube
│ │ │ │ │ │ │ ├── CubeDirections.kt
│ │ │ │ │ │ │ └── DirectionPair.kt
│ │ │ │ │ │ ├── entites
│ │ │ │ │ │ │ ├── BlockEntityType.kt
│ │ │ │ │ │ │ └── BlockEntityTypeRegistry.kt
│ │ │ │ │ │ ├── factory
│ │ │ │ │ │ │ ├── BlockFactories.kt
│ │ │ │ │ │ │ ├── BlockFactory.kt
│ │ │ │ │ │ │ ├── PixLyzerBlockFactories.kt
│ │ │ │ │ │ │ └── PixLyzerBlockFactory.kt
│ │ │ │ │ │ ├── handler
│ │ │ │ │ │ │ └── entity
│ │ │ │ │ │ │ │ ├── BlockBreakHandler.kt
│ │ │ │ │ │ │ │ ├── BlockPlaceHandler.kt
│ │ │ │ │ │ │ │ ├── Climbable.kt
│ │ │ │ │ │ │ │ ├── EntityCollisionHandler.kt
│ │ │ │ │ │ │ │ ├── StepHandler.kt
│ │ │ │ │ │ │ │ └── landing
│ │ │ │ │ │ │ │ ├── BouncingHandler.kt
│ │ │ │ │ │ │ │ └── LandingHandler.kt
│ │ │ │ │ │ ├── light
│ │ │ │ │ │ │ ├── CustomLightProperties.kt
│ │ │ │ │ │ │ ├── DirectedProperty.kt
│ │ │ │ │ │ │ ├── FilteringTransparentProperty.kt
│ │ │ │ │ │ │ ├── LightProperties.kt
│ │ │ │ │ │ │ ├── OpaqueProperty.kt
│ │ │ │ │ │ │ ├── SimpleLightProperties.kt
│ │ │ │ │ │ │ └── TransparentProperty.kt
│ │ │ │ │ │ ├── properties
│ │ │ │ │ │ │ ├── Attachments.kt
│ │ │ │ │ │ │ ├── BambooLeaves.kt
│ │ │ │ │ │ │ ├── BedParts.kt
│ │ │ │ │ │ │ ├── BlockProperties.kt
│ │ │ │ │ │ │ ├── BlockProperty.kt
│ │ │ │ │ │ │ ├── ChestTypes.kt
│ │ │ │ │ │ │ ├── EnumProperty.kt
│ │ │ │ │ │ │ ├── Halves.kt
│ │ │ │ │ │ │ ├── Instruments.kt
│ │ │ │ │ │ │ ├── MultipartDirections.kt
│ │ │ │ │ │ │ ├── Orientations.kt
│ │ │ │ │ │ │ ├── PistonTypes.kt
│ │ │ │ │ │ │ ├── SensorPhases.kt
│ │ │ │ │ │ │ ├── Shapes.kt
│ │ │ │ │ │ │ ├── Sides.kt
│ │ │ │ │ │ │ ├── StructureBlockModes.kt
│ │ │ │ │ │ │ ├── Thicknesses.kt
│ │ │ │ │ │ │ ├── Tilts.kt
│ │ │ │ │ │ │ ├── TrialSpawnerStates.kt
│ │ │ │ │ │ │ ├── VerticalDirections.kt
│ │ │ │ │ │ │ ├── list
│ │ │ │ │ │ │ │ ├── BlockPropertyList.kt
│ │ │ │ │ │ │ │ ├── EmptyPropertyList.kt
│ │ │ │ │ │ │ │ └── MapPropertyList.kt
│ │ │ │ │ │ │ └── primitives
│ │ │ │ │ │ │ │ ├── BooleanProperty.kt
│ │ │ │ │ │ │ │ └── IntProperty.kt
│ │ │ │ │ │ ├── settings
│ │ │ │ │ │ │ └── BlockSettings.kt
│ │ │ │ │ │ ├── shapes
│ │ │ │ │ │ │ └── collision
│ │ │ │ │ │ │ │ ├── CollisionPredicate.kt
│ │ │ │ │ │ │ │ └── context
│ │ │ │ │ │ │ │ ├── CollisionContext.kt
│ │ │ │ │ │ │ │ ├── EmptyCollisionContext.kt
│ │ │ │ │ │ │ │ ├── EntityCollisionContext.kt
│ │ │ │ │ │ │ │ ├── ParticleCollisionContext.kt
│ │ │ │ │ │ │ │ └── SimpleCollisionContext.kt
│ │ │ │ │ │ ├── state
│ │ │ │ │ │ │ ├── AdvancedBlockState.kt
│ │ │ │ │ │ │ ├── BlockState.kt
│ │ │ │ │ │ │ ├── BlockStateFlags.kt
│ │ │ │ │ │ │ ├── PropertyBlockState.kt
│ │ │ │ │ │ │ ├── builder
│ │ │ │ │ │ │ │ ├── BlockStateBuilder.kt
│ │ │ │ │ │ │ │ └── BlockStateSettings.kt
│ │ │ │ │ │ │ ├── error
│ │ │ │ │ │ │ │ └── StatelessBlockError.kt
│ │ │ │ │ │ │ └── manager
│ │ │ │ │ │ │ │ ├── BlockStateManager.kt
│ │ │ │ │ │ │ │ ├── PropertyStateManager.kt
│ │ │ │ │ │ │ │ └── SimpleStateManager.kt
│ │ │ │ │ │ ├── types
│ │ │ │ │ │ │ ├── Block.kt
│ │ │ │ │ │ │ ├── air
│ │ │ │ │ │ │ │ └── AirBlock.kt
│ │ │ │ │ │ │ ├── bee
│ │ │ │ │ │ │ │ ├── BeeBlock.kt
│ │ │ │ │ │ │ │ └── HoneyBlock.kt
│ │ │ │ │ │ │ ├── building
│ │ │ │ │ │ │ │ ├── RockBlock.kt
│ │ │ │ │ │ │ │ ├── SlabBlock.kt
│ │ │ │ │ │ │ │ ├── WoolBlock.kt
│ │ │ │ │ │ │ │ ├── brick
│ │ │ │ │ │ │ │ │ ├── Brick.kt
│ │ │ │ │ │ │ │ │ ├── MossyStoneBrick.kt
│ │ │ │ │ │ │ │ │ ├── MudBrick.kt
│ │ │ │ │ │ │ │ │ ├── NetherBrick.kt
│ │ │ │ │ │ │ │ │ └── RedNetherBrick.kt
│ │ │ │ │ │ │ │ ├── copper
│ │ │ │ │ │ │ │ │ ├── Copper.kt
│ │ │ │ │ │ │ │ │ ├── CutCopper.kt
│ │ │ │ │ │ │ │ │ ├── ExposedCopper.kt
│ │ │ │ │ │ │ │ │ ├── ExposedCutCopper.kt
│ │ │ │ │ │ │ │ │ ├── OxidizedCopper.kt
│ │ │ │ │ │ │ │ │ ├── OxidizedCutCopper.kt
│ │ │ │ │ │ │ │ │ ├── WaxedCutCopper.kt
│ │ │ │ │ │ │ │ │ ├── WaxedExposedCutCopper.kt
│ │ │ │ │ │ │ │ │ ├── WaxedOxidizedCutCopper.kt
│ │ │ │ │ │ │ │ │ ├── WaxedWeatheredCutCopper.kt
│ │ │ │ │ │ │ │ │ ├── WeatheredCopper.kt
│ │ │ │ │ │ │ │ │ └── WeatheredCutCopper.kt
│ │ │ │ │ │ │ │ ├── dirt
│ │ │ │ │ │ │ │ │ ├── Dirt.kt
│ │ │ │ │ │ │ │ │ ├── GrassBlock.kt
│ │ │ │ │ │ │ │ │ └── SnowyBlock.kt
│ │ │ │ │ │ │ │ ├── door
│ │ │ │ │ │ │ │ │ └── DoorBlock.kt
│ │ │ │ │ │ │ │ ├── end
│ │ │ │ │ │ │ │ │ ├── EndStoneBrick.kt
│ │ │ │ │ │ │ │ │ └── Purpur.kt
│ │ │ │ │ │ │ │ ├── nether
│ │ │ │ │ │ │ │ │ ├── Netherrack.kt
│ │ │ │ │ │ │ │ │ ├── SoulSand.kt
│ │ │ │ │ │ │ │ │ └── SoulSoil.kt
│ │ │ │ │ │ │ │ ├── plants
│ │ │ │ │ │ │ │ │ ├── DoublePlant.kt
│ │ │ │ │ │ │ │ │ └── FernBlock.kt
│ │ │ │ │ │ │ │ ├── prismarine
│ │ │ │ │ │ │ │ │ ├── DarkPrismarine.kt
│ │ │ │ │ │ │ │ │ ├── Prismarine.kt
│ │ │ │ │ │ │ │ │ └── PrismarineBrick.kt
│ │ │ │ │ │ │ │ ├── quartz
│ │ │ │ │ │ │ │ │ ├── QuartzBlock.kt
│ │ │ │ │ │ │ │ │ └── SmoothQuartz.kt
│ │ │ │ │ │ │ │ ├── snow
│ │ │ │ │ │ │ │ │ ├── AbstractSnowBlock.kt
│ │ │ │ │ │ │ │ │ ├── SnowBlock.kt
│ │ │ │ │ │ │ │ │ └── SnowLayerBlock.kt
│ │ │ │ │ │ │ │ └── stone
│ │ │ │ │ │ │ │ │ ├── Andesite.kt
│ │ │ │ │ │ │ │ │ ├── Bedrock.kt
│ │ │ │ │ │ │ │ │ ├── Cobblestone.kt
│ │ │ │ │ │ │ │ │ ├── Diorite.kt
│ │ │ │ │ │ │ │ │ ├── Granite.kt
│ │ │ │ │ │ │ │ │ ├── MossyCobblestone.kt
│ │ │ │ │ │ │ │ │ ├── PolishedAndesite.kt
│ │ │ │ │ │ │ │ │ ├── PolishedDiorite.kt
│ │ │ │ │ │ │ │ │ ├── PolishedGranite.kt
│ │ │ │ │ │ │ │ │ ├── SmoothStone.kt
│ │ │ │ │ │ │ │ │ ├── Stone.kt
│ │ │ │ │ │ │ │ │ ├── StoneBlock.kt
│ │ │ │ │ │ │ │ │ ├── StoneBrick.kt
│ │ │ │ │ │ │ │ │ └── sand
│ │ │ │ │ │ │ │ │ ├── CutRedSandstone.kt
│ │ │ │ │ │ │ │ │ ├── CutSandstone.kt
│ │ │ │ │ │ │ │ │ ├── RedSandstone.kt
│ │ │ │ │ │ │ │ │ ├── Sandstone.kt
│ │ │ │ │ │ │ │ │ ├── SmoothRedSandstone.kt
│ │ │ │ │ │ │ │ │ └── SmoothSandstone.kt
│ │ │ │ │ │ │ ├── climbing
│ │ │ │ │ │ │ │ ├── ClimbingBlock.kt
│ │ │ │ │ │ │ │ └── ScaffoldingBlock.kt
│ │ │ │ │ │ │ ├── entity
│ │ │ │ │ │ │ │ ├── BlockWithEntity.kt
│ │ │ │ │ │ │ │ └── storage
│ │ │ │ │ │ │ │ │ ├── ChestBlock.kt
│ │ │ │ │ │ │ │ │ ├── DoubleChestBlock.kt
│ │ │ │ │ │ │ │ │ ├── EnderChestBlock.kt
│ │ │ │ │ │ │ │ │ ├── ShulkerBoxBlock.kt
│ │ │ │ │ │ │ │ │ ├── StorageBlock.kt
│ │ │ │ │ │ │ │ │ └── WoodenChestBlock.kt
│ │ │ │ │ │ │ ├── fluid
│ │ │ │ │ │ │ │ ├── FluidBlock.kt
│ │ │ │ │ │ │ │ ├── FluidDrainable.kt
│ │ │ │ │ │ │ │ ├── FluidFilled.kt
│ │ │ │ │ │ │ │ ├── FluidHolder.kt
│ │ │ │ │ │ │ │ ├── LavaFluidBlock.kt
│ │ │ │ │ │ │ │ └── water
│ │ │ │ │ │ │ │ │ ├── BubbleColumnBlock.kt
│ │ │ │ │ │ │ │ │ ├── WaterFluidBlock.kt
│ │ │ │ │ │ │ │ │ └── WaterloggableBlock.kt
│ │ │ │ │ │ │ ├── legacy
│ │ │ │ │ │ │ │ ├── FlatteningRenamedModel.kt
│ │ │ │ │ │ │ │ └── LegacyBlock.kt
│ │ │ │ │ │ │ ├── pixlyzer
│ │ │ │ │ │ │ │ ├── CraftingTableBlock.kt
│ │ │ │ │ │ │ │ ├── HorizontalFacingBlock.kt
│ │ │ │ │ │ │ │ ├── LadderBlock.kt
│ │ │ │ │ │ │ │ ├── PixLyzerBlock.kt
│ │ │ │ │ │ │ │ ├── RedstoneTorchBlock.kt
│ │ │ │ │ │ │ │ ├── SlimeBlock.kt
│ │ │ │ │ │ │ │ ├── TorchBlock.kt
│ │ │ │ │ │ │ │ ├── TrapdoorBlock.kt
│ │ │ │ │ │ │ │ ├── button
│ │ │ │ │ │ │ │ │ ├── AbstractButtonBlock.kt
│ │ │ │ │ │ │ │ │ ├── StoneButtonBlock.kt
│ │ │ │ │ │ │ │ │ └── WoodenButtonBlock.kt
│ │ │ │ │ │ │ │ ├── entity
│ │ │ │ │ │ │ │ │ ├── BannerBlock.kt
│ │ │ │ │ │ │ │ │ ├── BeaconBlock.kt
│ │ │ │ │ │ │ │ │ ├── BedBlock.kt
│ │ │ │ │ │ │ │ │ ├── BeehiveBlock.kt
│ │ │ │ │ │ │ │ │ ├── BellBlock.kt
│ │ │ │ │ │ │ │ │ ├── CampfireBlock.kt
│ │ │ │ │ │ │ │ │ ├── ConduitBlock.kt
│ │ │ │ │ │ │ │ │ ├── EnchantingTableBlock.kt
│ │ │ │ │ │ │ │ │ ├── JigsawBlock.kt
│ │ │ │ │ │ │ │ │ ├── LecternBlock.kt
│ │ │ │ │ │ │ │ │ ├── MobSpawnerBlock.kt
│ │ │ │ │ │ │ │ │ ├── NoteBlock.kt
│ │ │ │ │ │ │ │ │ ├── PixLyzerBlockWithEntity.kt
│ │ │ │ │ │ │ │ │ ├── SkullBlock.kt
│ │ │ │ │ │ │ │ │ ├── StructureBlock.kt
│ │ │ │ │ │ │ │ │ ├── end
│ │ │ │ │ │ │ │ │ │ ├── EndGatewayBlock.kt
│ │ │ │ │ │ │ │ │ │ └── EndPortalBlock.kt
│ │ │ │ │ │ │ │ │ ├── redstone
│ │ │ │ │ │ │ │ │ │ ├── CommandBlock.kt
│ │ │ │ │ │ │ │ │ │ ├── DaylightDetectorBlock.kt
│ │ │ │ │ │ │ │ │ │ ├── PistonBlock.kt
│ │ │ │ │ │ │ │ │ │ └── SculkSensorBlock.kt
│ │ │ │ │ │ │ │ │ └── sign
│ │ │ │ │ │ │ │ │ │ ├── SignBlock.kt
│ │ │ │ │ │ │ │ │ │ ├── StandingSignBlock.kt
│ │ │ │ │ │ │ │ │ │ └── WallSignBlock.kt
│ │ │ │ │ │ │ │ ├── plant
│ │ │ │ │ │ │ │ │ ├── CropBlock.kt
│ │ │ │ │ │ │ │ │ ├── PlantBlock.kt
│ │ │ │ │ │ │ │ │ └── SweetBerryBushBlock.kt
│ │ │ │ │ │ │ │ ├── portal
│ │ │ │ │ │ │ │ │ └── NetherPortalBlock.kt
│ │ │ │ │ │ │ │ ├── redstone
│ │ │ │ │ │ │ │ │ ├── ComparatorBlock.kt
│ │ │ │ │ │ │ │ │ ├── RedstoneGateBlock.kt
│ │ │ │ │ │ │ │ │ └── RepeaterBlock.kt
│ │ │ │ │ │ │ │ ├── snow
│ │ │ │ │ │ │ │ │ └── PowderSnowBlock.kt
│ │ │ │ │ │ │ │ ├── wall
│ │ │ │ │ │ │ │ │ ├── LeverBlock.kt
│ │ │ │ │ │ │ │ │ └── WallMountedBlock.kt
│ │ │ │ │ │ │ │ └── water
│ │ │ │ │ │ │ │ │ ├── KelpBlock.kt
│ │ │ │ │ │ │ │ │ ├── KelpPlantBlock.kt
│ │ │ │ │ │ │ │ │ └── SeagrassBlock.kt
│ │ │ │ │ │ │ ├── properties
│ │ │ │ │ │ │ │ ├── DyedBlock.kt
│ │ │ │ │ │ │ │ ├── InteractBlockHandler.kt
│ │ │ │ │ │ │ │ ├── LightedBlock.kt
│ │ │ │ │ │ │ │ ├── LitBlock.kt
│ │ │ │ │ │ │ │ ├── ReplaceableBlock.kt
│ │ │ │ │ │ │ │ ├── StatedBlock.kt
│ │ │ │ │ │ │ │ ├── hardness
│ │ │ │ │ │ │ │ │ ├── HardnessBlock.kt
│ │ │ │ │ │ │ │ │ ├── InstantBreakableBlock.kt
│ │ │ │ │ │ │ │ │ └── UnbreakableBlock.kt
│ │ │ │ │ │ │ │ ├── item
│ │ │ │ │ │ │ │ │ └── BlockWithItem.kt
│ │ │ │ │ │ │ │ ├── offset
│ │ │ │ │ │ │ │ │ ├── OffsetBlock.kt
│ │ │ │ │ │ │ │ │ ├── RandomOffsetBlock.kt
│ │ │ │ │ │ │ │ │ └── RandomOffsetTypes.kt
│ │ │ │ │ │ │ │ ├── physics
│ │ │ │ │ │ │ │ │ ├── CustomDiggingBlock.kt
│ │ │ │ │ │ │ │ │ ├── FrictionBlock.kt
│ │ │ │ │ │ │ │ │ ├── JumpBlock.kt
│ │ │ │ │ │ │ │ │ ├── PushingBlock.kt
│ │ │ │ │ │ │ │ │ └── VelocityBlock.kt
│ │ │ │ │ │ │ │ ├── rendering
│ │ │ │ │ │ │ │ │ └── RandomDisplayTickable.kt
│ │ │ │ │ │ │ │ ├── shape
│ │ │ │ │ │ │ │ │ ├── collision
│ │ │ │ │ │ │ │ │ │ ├── CollidableBlock.kt
│ │ │ │ │ │ │ │ │ │ └── fixed
│ │ │ │ │ │ │ │ │ │ │ ├── FixedCollidable.kt
│ │ │ │ │ │ │ │ │ │ │ └── StatelessCollidable.kt
│ │ │ │ │ │ │ │ │ ├── outline
│ │ │ │ │ │ │ │ │ │ ├── FullOutlinedBlock.kt
│ │ │ │ │ │ │ │ │ │ └── OutlinedBlock.kt
│ │ │ │ │ │ │ │ │ └── special
│ │ │ │ │ │ │ │ │ │ ├── FullBlock.kt
│ │ │ │ │ │ │ │ │ │ ├── FullOpaqueBlock.kt
│ │ │ │ │ │ │ │ │ │ └── PotentialFullOpaqueBlock.kt
│ │ │ │ │ │ │ │ ├── size
│ │ │ │ │ │ │ │ │ ├── DoubleSizeBlock.kt
│ │ │ │ │ │ │ │ │ └── MultiSizeBlock.kt
│ │ │ │ │ │ │ │ └── transparency
│ │ │ │ │ │ │ │ │ ├── OpaqueBlock.kt
│ │ │ │ │ │ │ │ │ ├── TranslucentBlock.kt
│ │ │ │ │ │ │ │ │ └── TransparentBlock.kt
│ │ │ │ │ │ │ ├── pvp
│ │ │ │ │ │ │ │ └── CobwebBlock.kt
│ │ │ │ │ │ │ └── wood
│ │ │ │ │ │ │ │ ├── Acacia.kt
│ │ │ │ │ │ │ │ ├── Azalea.kt
│ │ │ │ │ │ │ │ ├── Bamboo.kt
│ │ │ │ │ │ │ │ ├── BambooMosaic.kt
│ │ │ │ │ │ │ │ ├── Birch.kt
│ │ │ │ │ │ │ │ ├── Cherry.kt
│ │ │ │ │ │ │ │ ├── Crimson.kt
│ │ │ │ │ │ │ │ ├── DarkOak.kt
│ │ │ │ │ │ │ │ ├── FloweringAzalea.kt
│ │ │ │ │ │ │ │ ├── Jungle.kt
│ │ │ │ │ │ │ │ ├── LeavesBlock.kt
│ │ │ │ │ │ │ │ ├── Mangrove.kt
│ │ │ │ │ │ │ │ ├── Oak.kt
│ │ │ │ │ │ │ │ ├── PlanksBlock.kt
│ │ │ │ │ │ │ │ ├── Spruce.kt
│ │ │ │ │ │ │ │ └── Warped.kt
│ │ │ │ │ │ └── wawla
│ │ │ │ │ │ │ └── BlockWawlaProvider.kt
│ │ │ │ │ ├── chat
│ │ │ │ │ │ ├── ChatMessageType.kt
│ │ │ │ │ │ ├── ChatParameter.kt
│ │ │ │ │ │ └── TypeProperties.kt
│ │ │ │ │ ├── containers
│ │ │ │ │ │ ├── ContainerFactory.kt
│ │ │ │ │ │ ├── ContainerType.kt
│ │ │ │ │ │ └── DefaultContainerFactories.kt
│ │ │ │ │ ├── dimension
│ │ │ │ │ │ ├── AmbientLight.kt
│ │ │ │ │ │ ├── Dimension.kt
│ │ │ │ │ │ ├── DimensionProperties.kt
│ │ │ │ │ │ └── effects
│ │ │ │ │ │ │ ├── DefaultDimensionEffects.kt
│ │ │ │ │ │ │ ├── DimensionEffects.kt
│ │ │ │ │ │ │ ├── FogEffects.kt
│ │ │ │ │ │ │ └── minecraft
│ │ │ │ │ │ │ ├── EndEffects.kt
│ │ │ │ │ │ │ ├── NetherEffects.kt
│ │ │ │ │ │ │ └── OverworldEffects.kt
│ │ │ │ │ ├── effects
│ │ │ │ │ │ ├── InstantEffect.kt
│ │ │ │ │ │ ├── IntegratedStatusEffects.kt
│ │ │ │ │ │ ├── PixlyzerStatusEffectType.kt
│ │ │ │ │ │ ├── StatusEffectType.kt
│ │ │ │ │ │ ├── attributes
│ │ │ │ │ │ │ ├── AttributeOperations.kt
│ │ │ │ │ │ │ ├── AttributeType.kt
│ │ │ │ │ │ │ ├── EntityAttributes.kt
│ │ │ │ │ │ │ ├── MinecraftAttributes.kt
│ │ │ │ │ │ │ ├── container
│ │ │ │ │ │ │ │ ├── AttributeContainer.kt
│ │ │ │ │ │ │ │ ├── AttributeContainerUpdate.kt
│ │ │ │ │ │ │ │ └── AttributeModifier.kt
│ │ │ │ │ │ │ └── integrated
│ │ │ │ │ │ │ │ ├── IntegratedAttribute.kt
│ │ │ │ │ │ │ │ └── IntegratedAttributeModifiers.kt
│ │ │ │ │ │ ├── damage
│ │ │ │ │ │ │ └── DamageEffect.kt
│ │ │ │ │ │ ├── mining
│ │ │ │ │ │ │ └── MiningEffect.kt
│ │ │ │ │ │ ├── movement
│ │ │ │ │ │ │ └── MovementEffect.kt
│ │ │ │ │ │ ├── other
│ │ │ │ │ │ │ └── OtherEffect.kt
│ │ │ │ │ │ ├── properties
│ │ │ │ │ │ │ └── categories
│ │ │ │ │ │ │ │ ├── BeneficalEffect.kt
│ │ │ │ │ │ │ │ ├── CategorizedEffect.kt
│ │ │ │ │ │ │ │ ├── HarmfulEffect.kt
│ │ │ │ │ │ │ │ ├── NeutralEffect.kt
│ │ │ │ │ │ │ │ └── StatusEffectCategories.kt
│ │ │ │ │ │ └── vision
│ │ │ │ │ │ │ └── VisionEffect.kt
│ │ │ │ │ ├── enchantment
│ │ │ │ │ │ ├── Enchantment.kt
│ │ │ │ │ │ ├── IntegratedEnchantments.kt
│ │ │ │ │ │ ├── PixLyzerEnchantment.kt
│ │ │ │ │ │ ├── armor
│ │ │ │ │ │ │ ├── ArmorEnchantment.kt
│ │ │ │ │ │ │ └── MovementEnchantment.kt
│ │ │ │ │ │ ├── slots
│ │ │ │ │ │ │ └── SlotSpecificEnchantment.kt
│ │ │ │ │ │ └── tool
│ │ │ │ │ │ │ ├── MiningEnchantment.kt
│ │ │ │ │ │ │ ├── ToolEnchantment.kt
│ │ │ │ │ │ │ └── weapon
│ │ │ │ │ │ │ └── WeaponEnchantment.kt
│ │ │ │ │ ├── entities
│ │ │ │ │ │ ├── DefaultEntityFactories.kt
│ │ │ │ │ │ ├── EntityFactory.kt
│ │ │ │ │ │ ├── EntityType.kt
│ │ │ │ │ │ ├── damage
│ │ │ │ │ │ │ └── DamageType.kt
│ │ │ │ │ │ ├── variants
│ │ │ │ │ │ │ ├── AbstractEntityVariant.kt
│ │ │ │ │ │ │ ├── CatVariant.kt
│ │ │ │ │ │ │ └── FrogVariant.kt
│ │ │ │ │ │ └── villagers
│ │ │ │ │ │ │ └── VillagerProfession.kt
│ │ │ │ │ ├── factory
│ │ │ │ │ │ ├── DefaultFactory.kt
│ │ │ │ │ │ ├── clazz
│ │ │ │ │ │ │ ├── ClassFactory.kt
│ │ │ │ │ │ │ ├── DefaultClassFactory.kt
│ │ │ │ │ │ │ ├── MultiClassFactory.kt
│ │ │ │ │ │ │ └── mapping
│ │ │ │ │ │ │ │ ├── ClassMappingFactory.kt
│ │ │ │ │ │ │ │ ├── DefaultClassMappingFactory.kt
│ │ │ │ │ │ │ │ └── MultiClassMappingFactory.kt
│ │ │ │ │ │ └── name
│ │ │ │ │ │ │ ├── DefaultNameFactory.kt
│ │ │ │ │ │ │ ├── MultiNameFactory.kt
│ │ │ │ │ │ │ └── NameFactory.kt
│ │ │ │ │ ├── fallback
│ │ │ │ │ │ ├── FallbackRegistries.kt
│ │ │ │ │ │ └── tags
│ │ │ │ │ │ │ └── FallbackTags.kt
│ │ │ │ │ ├── fixer
│ │ │ │ │ │ └── RegistriesFixer.kt
│ │ │ │ │ ├── fluid
│ │ │ │ │ │ ├── Fluid.kt
│ │ │ │ │ │ ├── FluidFactories.kt
│ │ │ │ │ │ ├── FluidFactory.kt
│ │ │ │ │ │ ├── FluidRegistry.kt
│ │ │ │ │ │ ├── fluids
│ │ │ │ │ │ │ ├── EmptyFluid.kt
│ │ │ │ │ │ │ ├── LavaFluid.kt
│ │ │ │ │ │ │ ├── PixLyzerFluid.kt
│ │ │ │ │ │ │ └── WaterFluid.kt
│ │ │ │ │ │ └── handler
│ │ │ │ │ │ │ ├── FluidCollisionHandler.kt
│ │ │ │ │ │ │ ├── FluidEnterHandler.kt
│ │ │ │ │ │ │ └── FluidLeaveHandler.kt
│ │ │ │ │ ├── identified
│ │ │ │ │ │ ├── AliasedIdentified.kt
│ │ │ │ │ │ ├── Identified.kt
│ │ │ │ │ │ ├── Namespaces.kt
│ │ │ │ │ │ ├── ResourceLocation.kt
│ │ │ │ │ │ └── ResourceLocationUtil.kt
│ │ │ │ │ ├── integrated
│ │ │ │ │ │ ├── IntegratedRegistry.kt
│ │ │ │ │ │ └── SingletonIntegratedRegistry.kt
│ │ │ │ │ ├── item
│ │ │ │ │ │ ├── ItemRegistry.kt
│ │ │ │ │ │ ├── MinecraftItems.kt
│ │ │ │ │ │ ├── factory
│ │ │ │ │ │ │ ├── ItemFactories.kt
│ │ │ │ │ │ │ ├── ItemFactory.kt
│ │ │ │ │ │ │ ├── PixLyzerItemFactories.kt
│ │ │ │ │ │ │ └── PixLyzerItemFactory.kt
│ │ │ │ │ │ ├── handler
│ │ │ │ │ │ │ ├── ItemInteractBlockHandler.kt
│ │ │ │ │ │ │ ├── ItemInteractEntityAtHandler.kt
│ │ │ │ │ │ │ └── item
│ │ │ │ │ │ │ │ ├── ItemUseHandler.kt
│ │ │ │ │ │ │ │ ├── LongItemUseHandler.kt
│ │ │ │ │ │ │ │ └── LongUseResults.kt
│ │ │ │ │ │ ├── items
│ │ │ │ │ │ │ ├── DurableItem.kt
│ │ │ │ │ │ │ ├── Item.kt
│ │ │ │ │ │ │ ├── armor
│ │ │ │ │ │ │ │ ├── ArmorItem.kt
│ │ │ │ │ │ │ │ ├── DefendingArmorItem.kt
│ │ │ │ │ │ │ │ ├── WearableItem.kt
│ │ │ │ │ │ │ │ ├── extra
│ │ │ │ │ │ │ │ │ ├── ElytraItem.kt
│ │ │ │ │ │ │ │ │ └── TurtleHelmet.kt
│ │ │ │ │ │ │ │ ├── materials
│ │ │ │ │ │ │ │ │ ├── ChainmailArmor.kt
│ │ │ │ │ │ │ │ │ ├── DiamondArmor.kt
│ │ │ │ │ │ │ │ │ ├── GoldArmor.kt
│ │ │ │ │ │ │ │ │ ├── IronArmor.kt
│ │ │ │ │ │ │ │ │ ├── LeatherArmor.kt
│ │ │ │ │ │ │ │ │ └── NetheriteArmor.kt
│ │ │ │ │ │ │ │ └── slots
│ │ │ │ │ │ │ │ │ ├── BootsItem.kt
│ │ │ │ │ │ │ │ │ ├── ChestplateItem.kt
│ │ │ │ │ │ │ │ │ ├── HelmetItem.kt
│ │ │ │ │ │ │ │ │ └── LeggingsItem.kt
│ │ │ │ │ │ │ ├── block
│ │ │ │ │ │ │ │ ├── BlockItem.kt
│ │ │ │ │ │ │ │ ├── PlaceableItem.kt
│ │ │ │ │ │ │ │ ├── climbing
│ │ │ │ │ │ │ │ │ └── ClimbingItems.kt
│ │ │ │ │ │ │ │ └── legacy
│ │ │ │ │ │ │ │ │ ├── CommandBlockItem.kt
│ │ │ │ │ │ │ │ │ ├── LilyPadItem.kt
│ │ │ │ │ │ │ │ │ ├── PixLyzerBlockItem.kt
│ │ │ │ │ │ │ │ │ ├── TallBlockItem.kt
│ │ │ │ │ │ │ │ │ └── WallStandingBlockItem.kt
│ │ │ │ │ │ │ ├── bucket
│ │ │ │ │ │ │ │ ├── BucketItem.kt
│ │ │ │ │ │ │ │ └── FilledBucketItem.kt
│ │ │ │ │ │ │ ├── dye
│ │ │ │ │ │ │ │ └── DyeableItem.kt
│ │ │ │ │ │ │ ├── end
│ │ │ │ │ │ │ │ ├── EndItem.kt
│ │ │ │ │ │ │ │ ├── EnderEyeItem.kt
│ │ │ │ │ │ │ │ └── EnderPealItem.kt
│ │ │ │ │ │ │ ├── entities
│ │ │ │ │ │ │ │ └── chicken
│ │ │ │ │ │ │ │ │ └── EggItem.kt
│ │ │ │ │ │ │ ├── fire
│ │ │ │ │ │ │ │ ├── FireChargeItem.kt
│ │ │ │ │ │ │ │ ├── FireItem.kt
│ │ │ │ │ │ │ │ └── FlintAndSteelItem.kt
│ │ │ │ │ │ │ ├── fishing
│ │ │ │ │ │ │ │ ├── FishingItem.kt
│ │ │ │ │ │ │ │ └── rod
│ │ │ │ │ │ │ │ │ └── OnAStickItem.kt
│ │ │ │ │ │ │ ├── fluid
│ │ │ │ │ │ │ │ ├── FluidDrainable.kt
│ │ │ │ │ │ │ │ └── FluidItem.kt
│ │ │ │ │ │ │ ├── food
│ │ │ │ │ │ │ │ ├── AppleItem.kt
│ │ │ │ │ │ │ │ └── FoodItem.kt
│ │ │ │ │ │ │ ├── legacy
│ │ │ │ │ │ │ │ └── ItemWithMeta.kt
│ │ │ │ │ │ │ ├── pixlyzer
│ │ │ │ │ │ │ │ ├── DyeItem.kt
│ │ │ │ │ │ │ │ ├── MusicDiscItem.kt
│ │ │ │ │ │ │ │ ├── PixLyzerFoodItem.kt
│ │ │ │ │ │ │ │ ├── PixLyzerItem.kt
│ │ │ │ │ │ │ │ └── SpawnEggItem.kt
│ │ │ │ │ │ │ ├── potion
│ │ │ │ │ │ │ │ ├── AbstractPotionItem.kt
│ │ │ │ │ │ │ │ ├── DrinkingPotionItem.kt
│ │ │ │ │ │ │ │ ├── LingeringPotionItem.kt
│ │ │ │ │ │ │ │ ├── SplashPotionItem.kt
│ │ │ │ │ │ │ │ └── ThrowablePotionItem.kt
│ │ │ │ │ │ │ ├── snow
│ │ │ │ │ │ │ │ └── SnowballItem.kt
│ │ │ │ │ │ │ ├── throwable
│ │ │ │ │ │ │ │ └── ThrowableItem.kt
│ │ │ │ │ │ │ ├── tool
│ │ │ │ │ │ │ │ ├── InteractingToolItem.kt
│ │ │ │ │ │ │ │ ├── LeveledToolItem.kt
│ │ │ │ │ │ │ │ ├── MiningTool.kt
│ │ │ │ │ │ │ │ ├── ToolItem.kt
│ │ │ │ │ │ │ │ ├── ToolLevels.kt
│ │ │ │ │ │ │ │ ├── axe
│ │ │ │ │ │ │ │ │ ├── AxeItem.kt
│ │ │ │ │ │ │ │ │ └── AxeRequirement.kt
│ │ │ │ │ │ │ │ ├── hoe
│ │ │ │ │ │ │ │ │ ├── HoeItem.kt
│ │ │ │ │ │ │ │ │ └── HoeRequirement.kt
│ │ │ │ │ │ │ │ ├── materials
│ │ │ │ │ │ │ │ │ ├── DiamondTool.kt
│ │ │ │ │ │ │ │ │ ├── GoldenTool.kt
│ │ │ │ │ │ │ │ │ ├── IronTool.kt
│ │ │ │ │ │ │ │ │ ├── NetheriteTool.kt
│ │ │ │ │ │ │ │ │ ├── StoneTool.kt
│ │ │ │ │ │ │ │ │ └── WoodenTool.kt
│ │ │ │ │ │ │ │ ├── pickaxe
│ │ │ │ │ │ │ │ │ ├── PickaxeItem.kt
│ │ │ │ │ │ │ │ │ └── PickaxeRequirement.kt
│ │ │ │ │ │ │ │ ├── properties
│ │ │ │ │ │ │ │ │ ├── LeveledTool.kt
│ │ │ │ │ │ │ │ │ ├── MiningSpeedTool.kt
│ │ │ │ │ │ │ │ │ └── requirement
│ │ │ │ │ │ │ │ │ │ ├── HandBreakable.kt
│ │ │ │ │ │ │ │ │ │ ├── LeveledToolRequirement.kt
│ │ │ │ │ │ │ │ │ │ └── ToolRequirement.kt
│ │ │ │ │ │ │ │ ├── shears
│ │ │ │ │ │ │ │ │ ├── ShearsItem.kt
│ │ │ │ │ │ │ │ │ └── ShearsRequirement.kt
│ │ │ │ │ │ │ │ ├── shovel
│ │ │ │ │ │ │ │ │ ├── ShovelItem.kt
│ │ │ │ │ │ │ │ │ └── ShovelRequirement.kt
│ │ │ │ │ │ │ │ └── sword
│ │ │ │ │ │ │ │ │ ├── SwordItem.kt
│ │ │ │ │ │ │ │ │ └── SwordRequirement.kt
│ │ │ │ │ │ │ └── weapon
│ │ │ │ │ │ │ │ ├── WeaponItem.kt
│ │ │ │ │ │ │ │ ├── attack
│ │ │ │ │ │ │ │ └── range
│ │ │ │ │ │ │ │ │ ├── RangeWeapon.kt
│ │ │ │ │ │ │ │ │ └── pullable
│ │ │ │ │ │ │ │ │ ├── BowItem.kt
│ │ │ │ │ │ │ │ │ └── PullableItem.kt
│ │ │ │ │ │ │ │ └── defend
│ │ │ │ │ │ │ │ ├── DefendingItem.kt
│ │ │ │ │ │ │ │ └── ShieldItem.kt
│ │ │ │ │ │ └── stack
│ │ │ │ │ │ │ ├── HalfStackableItem.kt
│ │ │ │ │ │ │ └── StackableItem.kt
│ │ │ │ │ ├── materials
│ │ │ │ │ │ ├── DefaultMaterials.kt
│ │ │ │ │ │ ├── Material.kt
│ │ │ │ │ │ └── PushReactions.kt
│ │ │ │ │ ├── misc
│ │ │ │ │ │ ├── MiscData.kt
│ │ │ │ │ │ └── event
│ │ │ │ │ │ │ ├── game
│ │ │ │ │ │ │ ├── DefaultGameEventHandlers.kt
│ │ │ │ │ │ │ ├── GameEventHandler.kt
│ │ │ │ │ │ │ └── handler
│ │ │ │ │ │ │ │ ├── gamemode
│ │ │ │ │ │ │ │ └── GamemodeChangeHandler.kt
│ │ │ │ │ │ │ │ ├── gradients
│ │ │ │ │ │ │ │ ├── RainGradientSetHandler.kt
│ │ │ │ │ │ │ │ └── ThunderGradientSetHandler.kt
│ │ │ │ │ │ │ │ └── rain
│ │ │ │ │ │ │ │ ├── RainStartHandler.kt
│ │ │ │ │ │ │ │ └── RainStopHandler.kt
│ │ │ │ │ │ │ └── world
│ │ │ │ │ │ │ ├── DefaultWorldEventHandlers.kt
│ │ │ │ │ │ │ ├── WorldEventHandler.kt
│ │ │ │ │ │ │ └── handler
│ │ │ │ │ │ │ ├── BlockDestroyedHandler.kt
│ │ │ │ │ │ │ └── win
│ │ │ │ │ │ │ ├── WinGameEvent.kt
│ │ │ │ │ │ │ └── WinGameHandler.kt
│ │ │ │ │ ├── particle
│ │ │ │ │ │ ├── ParticleType.kt
│ │ │ │ │ │ └── data
│ │ │ │ │ │ │ ├── BlockParticleData.kt
│ │ │ │ │ │ │ ├── DustParticleData.kt
│ │ │ │ │ │ │ ├── ItemParticleData.kt
│ │ │ │ │ │ │ ├── ParticleData.kt
│ │ │ │ │ │ │ ├── ParticleDataFactory.kt
│ │ │ │ │ │ │ ├── SculkChargeParticleData.kt
│ │ │ │ │ │ │ ├── ShriekParticleData.kt
│ │ │ │ │ │ │ ├── VibrationParticleData.kt
│ │ │ │ │ │ │ └── vibration
│ │ │ │ │ │ │ ├── BlockSource.kt
│ │ │ │ │ │ │ ├── EntitySource.kt
│ │ │ │ │ │ │ ├── VibrationFactory.kt
│ │ │ │ │ │ │ ├── VibrationSource.kt
│ │ │ │ │ │ │ └── VibrationSources.kt
│ │ │ │ │ ├── registries
│ │ │ │ │ │ ├── PixLyzerUtil.kt
│ │ │ │ │ │ ├── Registries.kt
│ │ │ │ │ │ ├── RegistriesLoader.kt
│ │ │ │ │ │ └── registry
│ │ │ │ │ │ │ ├── AbstractRegistry.kt
│ │ │ │ │ │ │ ├── BlockStateRegistry.kt
│ │ │ │ │ │ │ ├── EnumRegistry.kt
│ │ │ │ │ │ │ ├── FakeEnumRegistry.kt
│ │ │ │ │ │ │ ├── MetaTypes.kt
│ │ │ │ │ │ │ ├── Parentable.kt
│ │ │ │ │ │ │ ├── PerVersionEnumRegistry.kt
│ │ │ │ │ │ │ ├── PerVersionRegistry.kt
│ │ │ │ │ │ │ ├── Registry.kt
│ │ │ │ │ │ │ ├── RegistryFakeEnumerable.kt
│ │ │ │ │ │ │ ├── RegistryItem.kt
│ │ │ │ │ │ │ ├── RegistryIterator.kt
│ │ │ │ │ │ │ ├── ResourceLocationRegistry.kt
│ │ │ │ │ │ │ └── codec
│ │ │ │ │ │ │ ├── IdCodec.kt
│ │ │ │ │ │ │ └── IdentifierCodec.kt
│ │ │ │ │ ├── shapes
│ │ │ │ │ │ ├── ShapeRegistry.kt
│ │ │ │ │ │ ├── aabb
│ │ │ │ │ │ │ ├── AABB.kt
│ │ │ │ │ │ │ └── AABBIterator.kt
│ │ │ │ │ │ ├── side
│ │ │ │ │ │ │ ├── SideQuad.kt
│ │ │ │ │ │ │ └── VoxelSide.kt
│ │ │ │ │ │ └── voxel
│ │ │ │ │ │ │ ├── AABBRaycastHit.kt
│ │ │ │ │ │ │ ├── AbstractVoxelShape.kt
│ │ │ │ │ │ │ ├── MutableVoxelShape.kt
│ │ │ │ │ │ │ └── VoxelShape.kt
│ │ │ │ │ ├── sound
│ │ │ │ │ │ └── SoundGroup.kt
│ │ │ │ │ ├── statistics
│ │ │ │ │ │ ├── OtherStatistic.kt
│ │ │ │ │ │ ├── Statistic.kt
│ │ │ │ │ │ └── StatisticUnits.kt
│ │ │ │ │ └── tweaker
│ │ │ │ │ │ └── VersionTweaker.kt
│ │ │ │ ├── scoreboard
│ │ │ │ │ ├── NameTagVisibilities.kt
│ │ │ │ │ ├── ScoreboardManager.kt
│ │ │ │ │ ├── ScoreboardObjective.kt
│ │ │ │ │ ├── ScoreboardPositions.kt
│ │ │ │ │ ├── ScoreboardScore.kt
│ │ │ │ │ ├── TeamCollisionRules.kt
│ │ │ │ │ └── team
│ │ │ │ │ │ ├── Team.kt
│ │ │ │ │ │ ├── TeamFormatting.kt
│ │ │ │ │ │ └── TeamVisibility.kt
│ │ │ │ ├── text
│ │ │ │ │ ├── BaseComponent.kt
│ │ │ │ │ ├── ChatComponent.kt
│ │ │ │ │ ├── ChatComponentUtil.kt
│ │ │ │ │ ├── EmptyComponent.kt
│ │ │ │ │ ├── LegacyComponentReader.kt
│ │ │ │ │ ├── TextComponent.kt
│ │ │ │ │ ├── TranslatableComponents.kt
│ │ │ │ │ ├── URLProtocols.kt
│ │ │ │ │ ├── events
│ │ │ │ │ │ ├── ChatEvent.kt
│ │ │ │ │ │ ├── ChatEventFactory.kt
│ │ │ │ │ │ ├── click
│ │ │ │ │ │ │ ├── ClickCallbackClickEvent.kt
│ │ │ │ │ │ │ ├── ClickEvent.kt
│ │ │ │ │ │ │ ├── ClickEventFactory.kt
│ │ │ │ │ │ │ ├── ClickEvents.kt
│ │ │ │ │ │ │ ├── CopyToClipboardClickEvent.kt
│ │ │ │ │ │ │ ├── InternalCommandClickEvent.kt
│ │ │ │ │ │ │ ├── OpenFileClickEvent.kt
│ │ │ │ │ │ │ ├── OpenURLClickEvent.kt
│ │ │ │ │ │ │ ├── SendMessageClickEvent.kt
│ │ │ │ │ │ │ └── SuggestChatClickEvent.kt
│ │ │ │ │ │ └── hover
│ │ │ │ │ │ │ ├── AchievementHoverEvent.kt
│ │ │ │ │ │ │ ├── EntityHoverEvent.kt
│ │ │ │ │ │ │ ├── HoverEvent.kt
│ │ │ │ │ │ │ ├── HoverEventFactory.kt
│ │ │ │ │ │ │ ├── HoverEvents.kt
│ │ │ │ │ │ │ ├── ItemHoverEvent.kt
│ │ │ │ │ │ │ └── TextHoverEvent.kt
│ │ │ │ │ └── formatting
│ │ │ │ │ │ ├── FormattingCodes.kt
│ │ │ │ │ │ ├── TextFormattable.kt
│ │ │ │ │ │ ├── TextStyle.kt
│ │ │ │ │ │ └── color
│ │ │ │ │ │ ├── ChatColors.kt
│ │ │ │ │ │ ├── ColorInterpolation.kt
│ │ │ │ │ │ ├── ColorUtil.kt
│ │ │ │ │ │ ├── Colored.kt
│ │ │ │ │ │ ├── Colors.kt
│ │ │ │ │ │ └── RGBColor.kt
│ │ │ │ └── world
│ │ │ │ │ ├── World.kt
│ │ │ │ │ ├── audio
│ │ │ │ │ ├── AbstractAudioPlayer.kt
│ │ │ │ │ └── WorldAudioPlayer.kt
│ │ │ │ │ ├── biome
│ │ │ │ │ ├── WorldBiomes.kt
│ │ │ │ │ ├── accessor
│ │ │ │ │ │ └── noise
│ │ │ │ │ │ │ ├── FastNoiseAccessor.kt
│ │ │ │ │ │ │ ├── NoiseBiomeAccessor.kt
│ │ │ │ │ │ │ └── VoronoiBiomeAccessor.kt
│ │ │ │ │ └── source
│ │ │ │ │ │ ├── BiomeSource.kt
│ │ │ │ │ │ ├── DummyBiomeSource.kt
│ │ │ │ │ │ ├── PalettedBiomeArray.kt
│ │ │ │ │ │ ├── SpatialBiomeArray.kt
│ │ │ │ │ │ └── XZBiomeArray.kt
│ │ │ │ │ ├── border
│ │ │ │ │ ├── WorldBorder.kt
│ │ │ │ │ ├── WorldBorderState.kt
│ │ │ │ │ └── area
│ │ │ │ │ │ ├── BorderArea.kt
│ │ │ │ │ │ ├── DynamicBorderArea.kt
│ │ │ │ │ │ └── StaticBorderArea.kt
│ │ │ │ │ ├── chunk
│ │ │ │ │ ├── ChunkSection.kt
│ │ │ │ │ ├── chunk
│ │ │ │ │ │ ├── Chunk.kt
│ │ │ │ │ │ └── ChunkPrototype.kt
│ │ │ │ │ ├── heightmap
│ │ │ │ │ │ ├── ChunkHeightmap.kt
│ │ │ │ │ │ ├── FixedHeightmap.kt
│ │ │ │ │ │ ├── Heightmap.kt
│ │ │ │ │ │ └── LightHeightmap.kt
│ │ │ │ │ ├── light
│ │ │ │ │ │ ├── LightUtil.kt
│ │ │ │ │ │ ├── section
│ │ │ │ │ │ │ ├── AbstractSectionLight.kt
│ │ │ │ │ │ │ ├── ChunkLight.kt
│ │ │ │ │ │ │ ├── ChunkLightUtil.kt
│ │ │ │ │ │ │ ├── ChunkSkyLight.kt
│ │ │ │ │ │ │ ├── SectionLight.kt
│ │ │ │ │ │ │ └── border
│ │ │ │ │ │ │ │ ├── BorderSectionLight.kt
│ │ │ │ │ │ │ │ ├── BottomSectionLight.kt
│ │ │ │ │ │ │ │ └── TopSectionLight.kt
│ │ │ │ │ │ └── types
│ │ │ │ │ │ │ ├── LightArray.kt
│ │ │ │ │ │ │ └── LightLevel.kt
│ │ │ │ │ ├── manager
│ │ │ │ │ │ ├── ChunkManager.kt
│ │ │ │ │ │ ├── ChunkTicker.kt
│ │ │ │ │ │ └── size
│ │ │ │ │ │ │ ├── WorldSize.kt
│ │ │ │ │ │ │ └── WorldSizeManager.kt
│ │ │ │ │ ├── neighbours
│ │ │ │ │ │ ├── ChunkNeighbourArray.kt
│ │ │ │ │ │ └── ChunkNeighbours.kt
│ │ │ │ │ └── update
│ │ │ │ │ │ ├── AbstractWorldUpdate.kt
│ │ │ │ │ │ ├── WorldUpdateEvent.kt
│ │ │ │ │ │ ├── block
│ │ │ │ │ │ ├── ChunkLocalBlockUpdate.kt
│ │ │ │ │ │ ├── SingleBlockDataUpdate.kt
│ │ │ │ │ │ └── SingleBlockUpdate.kt
│ │ │ │ │ │ └── chunk
│ │ │ │ │ │ ├── ChunkCreateUpdate.kt
│ │ │ │ │ │ ├── ChunkLightUpdate.kt
│ │ │ │ │ │ ├── ChunkUnloadUpdate.kt
│ │ │ │ │ │ ├── NeighbourChangeUpdate.kt
│ │ │ │ │ │ └── prototype
│ │ │ │ │ │ ├── PrototypeChange.kt
│ │ │ │ │ │ └── PrototypeChangeUpdate.kt
│ │ │ │ │ ├── container
│ │ │ │ │ ├── SectionDataProvider.kt
│ │ │ │ │ ├── biome
│ │ │ │ │ │ └── BiomeSectionDataProvider.kt
│ │ │ │ │ ├── block
│ │ │ │ │ │ ├── BlockSectionDataProvider.kt
│ │ │ │ │ │ └── SectionOcclusion.kt
│ │ │ │ │ └── palette
│ │ │ │ │ │ ├── PalettedContainer.kt
│ │ │ │ │ │ ├── PalettedContainerReader.kt
│ │ │ │ │ │ ├── data
│ │ │ │ │ │ ├── EmptyPaletteData.kt
│ │ │ │ │ │ ├── PaletteData.kt
│ │ │ │ │ │ └── array
│ │ │ │ │ │ │ └── ArrayPaletteData.kt
│ │ │ │ │ │ └── palettes
│ │ │ │ │ │ ├── ArrayPalette.kt
│ │ │ │ │ │ ├── BiomePaletteFactory.kt
│ │ │ │ │ │ ├── BlockStatePaletteFactory.kt
│ │ │ │ │ │ ├── Palette.kt
│ │ │ │ │ │ ├── PaletteFactory.kt
│ │ │ │ │ │ ├── RegistryPalette.kt
│ │ │ │ │ │ └── SingularPalette.kt
│ │ │ │ │ ├── difficulty
│ │ │ │ │ ├── Difficulties.kt
│ │ │ │ │ └── WorldDifficulty.kt
│ │ │ │ │ ├── entities
│ │ │ │ │ ├── EntityTicker.kt
│ │ │ │ │ └── WorldEntities.kt
│ │ │ │ │ ├── iterator
│ │ │ │ │ ├── BlockPair.kt
│ │ │ │ │ └── WorldIterator.kt
│ │ │ │ │ ├── map
│ │ │ │ │ ├── Map.kt
│ │ │ │ │ ├── MapPin.kt
│ │ │ │ │ └── MapPinTypes.kt
│ │ │ │ │ ├── particle
│ │ │ │ │ └── AbstractParticleRenderer.kt
│ │ │ │ │ ├── positions
│ │ │ │ │ ├── BlockPosition.kt
│ │ │ │ │ ├── BlockPositionUtil.kt
│ │ │ │ │ ├── ChunkPosition.kt
│ │ │ │ │ ├── InChunkPosition.kt
│ │ │ │ │ ├── InSectionPosition.kt
│ │ │ │ │ ├── SectionHeight.kt
│ │ │ │ │ ├── SectionIndex.kt
│ │ │ │ │ └── SectionPosition.kt
│ │ │ │ │ ├── time
│ │ │ │ │ ├── DayPhases.kt
│ │ │ │ │ ├── MoonPhases.kt
│ │ │ │ │ └── WorldTime.kt
│ │ │ │ │ ├── vec
│ │ │ │ │ ├── SVec3.kt
│ │ │ │ │ └── VecUtil.kt
│ │ │ │ │ ├── view
│ │ │ │ │ ├── ParticleViewDistanceChangeEvent.kt
│ │ │ │ │ ├── SimulationDistanceChangeEvent.kt
│ │ │ │ │ ├── ViewDistanceChangeEvent.kt
│ │ │ │ │ └── WorldView.kt
│ │ │ │ │ └── weather
│ │ │ │ │ └── WorldWeather.kt
│ │ │ │ ├── datafixer
│ │ │ │ ├── DataFixer.kt
│ │ │ │ ├── Fixer.kt
│ │ │ │ ├── enumeration
│ │ │ │ │ ├── EntityDataTypesFixer.kt
│ │ │ │ │ └── EnumFixer.kt
│ │ │ │ └── rls
│ │ │ │ │ ├── BlockEntityFixer.kt
│ │ │ │ │ ├── ContainerTypeFixer.kt
│ │ │ │ │ ├── EntityAttributeFixer.kt
│ │ │ │ │ ├── EntityTypeFixer.kt
│ │ │ │ │ ├── MotifFixer.kt
│ │ │ │ │ ├── RegistryFixer.kt
│ │ │ │ │ └── ResourceLocationFixer.kt
│ │ │ │ ├── example
│ │ │ │ └── ExampleMod.kt
│ │ │ │ ├── gui
│ │ │ │ ├── RenderLoop.kt
│ │ │ │ ├── eros
│ │ │ │ │ ├── Eros.kt
│ │ │ │ │ ├── card
│ │ │ │ │ │ ├── AbstractCardController.kt
│ │ │ │ │ │ └── CardFactory.kt
│ │ │ │ │ ├── controller
│ │ │ │ │ │ ├── DialogController.kt
│ │ │ │ │ │ ├── EmbeddedJavaFXController.kt
│ │ │ │ │ │ ├── JavaFXController.kt
│ │ │ │ │ │ └── JavaFXWindowController.kt
│ │ │ │ │ ├── crash
│ │ │ │ │ │ └── ErosCrashReport.kt
│ │ │ │ │ ├── dialog
│ │ │ │ │ │ ├── ErosErrorReport.kt
│ │ │ │ │ │ ├── PleaseWaitDialog.kt
│ │ │ │ │ │ ├── ServerModifyDialog.kt
│ │ │ │ │ │ ├── StartingDialog.kt
│ │ │ │ │ │ ├── UpdateAvailableDialog.kt
│ │ │ │ │ │ ├── profiles
│ │ │ │ │ │ │ ├── ProfileCreateDialog.kt
│ │ │ │ │ │ │ └── ProfileSelectDialog.kt
│ │ │ │ │ │ ├── progress
│ │ │ │ │ │ │ └── ProgressDialog.kt
│ │ │ │ │ │ ├── session
│ │ │ │ │ │ │ ├── ConnectingDialog.kt
│ │ │ │ │ │ │ ├── KickDialog.kt
│ │ │ │ │ │ │ ├── LoadingDialog.kt
│ │ │ │ │ │ │ └── VerifyAssetsDialog.kt
│ │ │ │ │ │ └── simple
│ │ │ │ │ │ │ ├── ConfirmationDialog.kt
│ │ │ │ │ │ │ ├── InfoDialog.kt
│ │ │ │ │ │ │ └── WarningDialog.kt
│ │ │ │ │ ├── main
│ │ │ │ │ │ ├── ErosMainActivities.kt
│ │ │ │ │ │ ├── InfoPane.kt
│ │ │ │ │ │ ├── MainErosController.kt
│ │ │ │ │ │ ├── about
│ │ │ │ │ │ │ └── AboutController.kt
│ │ │ │ │ │ ├── account
│ │ │ │ │ │ │ ├── AccountCardController.kt
│ │ │ │ │ │ │ ├── AccountController.kt
│ │ │ │ │ │ │ ├── AccountTypeCardController.kt
│ │ │ │ │ │ │ ├── CheckingDialog.kt
│ │ │ │ │ │ │ ├── ErosAccountType.kt
│ │ │ │ │ │ │ └── add
│ │ │ │ │ │ │ │ ├── MicrosoftAddController.kt
│ │ │ │ │ │ │ │ └── OfflineAddController.kt
│ │ │ │ │ │ ├── mods
│ │ │ │ │ │ │ ├── ModCardController.kt
│ │ │ │ │ │ │ └── ModsController.kt
│ │ │ │ │ │ ├── play
│ │ │ │ │ │ │ ├── PlayController.kt
│ │ │ │ │ │ │ └── server
│ │ │ │ │ │ │ │ ├── Refreshable.kt
│ │ │ │ │ │ │ │ ├── ServerListController.kt
│ │ │ │ │ │ │ │ ├── card
│ │ │ │ │ │ │ │ ├── ConnectError.kt
│ │ │ │ │ │ │ │ ├── FaviconManager.kt
│ │ │ │ │ │ │ │ ├── ServerCard.kt
│ │ │ │ │ │ │ │ └── ServerCardController.kt
│ │ │ │ │ │ │ │ └── type
│ │ │ │ │ │ │ │ ├── ServerTypeCardController.kt
│ │ │ │ │ │ │ │ └── types
│ │ │ │ │ │ │ │ ├── CustomServerType.kt
│ │ │ │ │ │ │ │ ├── LANServerType.kt
│ │ │ │ │ │ │ │ └── ServerType.kt
│ │ │ │ │ │ └── profiles
│ │ │ │ │ │ │ ├── ProfileCardController.kt
│ │ │ │ │ │ │ ├── ProfilesController.kt
│ │ │ │ │ │ │ ├── ProfilesListController.kt
│ │ │ │ │ │ │ └── type
│ │ │ │ │ │ │ └── ProfilesTypeCardController.kt
│ │ │ │ │ ├── modding
│ │ │ │ │ │ ├── events
│ │ │ │ │ │ │ └── ErosControllerTerminateEvent.kt
│ │ │ │ │ │ └── invoker
│ │ │ │ │ │ │ └── JavaFXEventListener.kt
│ │ │ │ │ └── util
│ │ │ │ │ │ ├── JavaFXAccountUtil.kt
│ │ │ │ │ │ ├── JavaFXInitializer.kt
│ │ │ │ │ │ ├── JavaFXSystemAPI.kt
│ │ │ │ │ │ ├── JavaFXUtil.kt
│ │ │ │ │ │ ├── StageList.kt
│ │ │ │ │ │ ├── cell
│ │ │ │ │ │ ├── LabeledListCell.kt
│ │ │ │ │ │ └── VersionListCell.kt
│ │ │ │ │ │ └── text
│ │ │ │ │ │ └── JavaFXTextRenderer.kt
│ │ │ │ └── rendering
│ │ │ │ │ ├── RenderConstants.kt
│ │ │ │ │ ├── RenderContext.kt
│ │ │ │ │ ├── RenderLoader.kt
│ │ │ │ │ ├── RenderUtil.kt
│ │ │ │ │ ├── Rendering.kt
│ │ │ │ │ ├── RenderingStates.kt
│ │ │ │ │ ├── camera
│ │ │ │ │ ├── Camera.kt
│ │ │ │ │ ├── CameraDefinition.kt
│ │ │ │ │ ├── MatrixHandler.kt
│ │ │ │ │ ├── WorldOffset.kt
│ │ │ │ │ ├── arm
│ │ │ │ │ │ ├── ArmMesh.kt
│ │ │ │ │ │ ├── ArmRenderer.kt
│ │ │ │ │ │ └── ArmShader.kt
│ │ │ │ │ ├── fog
│ │ │ │ │ │ ├── FogFlags.kt
│ │ │ │ │ │ ├── FogInterpolationStart.kt
│ │ │ │ │ │ ├── FogManager.kt
│ │ │ │ │ │ ├── FogOptions.kt
│ │ │ │ │ │ ├── FogState.kt
│ │ │ │ │ │ └── FoggedFluid.kt
│ │ │ │ │ ├── frustum
│ │ │ │ │ │ └── Frustum.kt
│ │ │ │ │ ├── occlusion
│ │ │ │ │ │ ├── OcclusionGraph.kt
│ │ │ │ │ │ ├── OcclusionTracer.kt
│ │ │ │ │ │ ├── SectionPositionSet.kt
│ │ │ │ │ │ └── WorldOcclusionManager.kt
│ │ │ │ │ ├── shaking
│ │ │ │ │ │ └── CameraShaking.kt
│ │ │ │ │ ├── view
│ │ │ │ │ │ ├── CameraView.kt
│ │ │ │ │ │ ├── DebugView.kt
│ │ │ │ │ │ ├── ViewManager.kt
│ │ │ │ │ │ └── person
│ │ │ │ │ │ │ ├── FirstPersonView.kt
│ │ │ │ │ │ │ ├── PersonView.kt
│ │ │ │ │ │ │ └── ThirdPersonView.kt
│ │ │ │ │ └── visibility
│ │ │ │ │ │ └── WorldVisibility.kt
│ │ │ │ │ ├── chunk
│ │ │ │ │ ├── ChunkRenderer.kt
│ │ │ │ │ ├── LoadedMeshes.kt
│ │ │ │ │ ├── WorldQueueItem.kt
│ │ │ │ │ ├── border
│ │ │ │ │ │ ├── WorldBorderMesh.kt
│ │ │ │ │ │ ├── WorldBorderRenderer.kt
│ │ │ │ │ │ └── WorldBorderShader.kt
│ │ │ │ │ ├── chunk
│ │ │ │ │ │ └── ChunkBorderRenderer.kt
│ │ │ │ │ ├── entities
│ │ │ │ │ │ ├── BlockEntityRenderer.kt
│ │ │ │ │ │ ├── DefaultBlockEntityModels.kt
│ │ │ │ │ │ ├── EntityRendererRegister.kt
│ │ │ │ │ │ └── renderer
│ │ │ │ │ │ │ ├── RenderedBlockEntity.kt
│ │ │ │ │ │ │ ├── sign
│ │ │ │ │ │ │ └── SignBlockEntityRenderer.kt
│ │ │ │ │ │ │ └── storage
│ │ │ │ │ │ │ ├── OpenCloseAnimation.kt
│ │ │ │ │ │ │ ├── StorageBlockEntityRenderer.kt
│ │ │ │ │ │ │ ├── chest
│ │ │ │ │ │ │ ├── ChestAnimation.kt
│ │ │ │ │ │ │ ├── ChestRenderer.kt
│ │ │ │ │ │ │ ├── DoubleChestRenderer.kt
│ │ │ │ │ │ │ └── SingleChestRenderer.kt
│ │ │ │ │ │ │ └── shulker
│ │ │ │ │ │ │ ├── ShulkerAnimation.kt
│ │ │ │ │ │ │ └── ShulkerBoxRenderer.kt
│ │ │ │ │ ├── mesh
│ │ │ │ │ │ ├── BlockVertexConsumer.kt
│ │ │ │ │ │ ├── ChunkMesh.kt
│ │ │ │ │ │ ├── ChunkMeshes.kt
│ │ │ │ │ │ └── VisibleMeshes.kt
│ │ │ │ │ ├── mesher
│ │ │ │ │ │ ├── ChunkMesher.kt
│ │ │ │ │ │ ├── FluidSectionMesher.kt
│ │ │ │ │ │ └── SolidSectionMesher.kt
│ │ │ │ │ ├── outline
│ │ │ │ │ │ └── BlockOutlineRenderer.kt
│ │ │ │ │ ├── queue
│ │ │ │ │ │ ├── CulledQueue.kt
│ │ │ │ │ │ ├── QueuePosition.kt
│ │ │ │ │ │ ├── loading
│ │ │ │ │ │ │ ├── MeshLoadingQueue.kt
│ │ │ │ │ │ │ └── MeshUnloadingQueue.kt
│ │ │ │ │ │ ├── meshing
│ │ │ │ │ │ │ ├── ChunkMeshingQueue.kt
│ │ │ │ │ │ │ ├── ChunkQueueComparator.kt
│ │ │ │ │ │ │ └── tasks
│ │ │ │ │ │ │ │ ├── MeshPrepareTask.kt
│ │ │ │ │ │ │ │ └── MeshPrepareTaskManager.kt
│ │ │ │ │ │ └── queue
│ │ │ │ │ │ │ └── ChunkQueueMaster.kt
│ │ │ │ │ ├── shader
│ │ │ │ │ │ └── ChunkShader.kt
│ │ │ │ │ └── util
│ │ │ │ │ │ ├── ChunkRendererChangeListener.kt
│ │ │ │ │ │ └── ChunkRendererUtil.kt
│ │ │ │ │ ├── entities
│ │ │ │ │ ├── EntitiesRenderer.kt
│ │ │ │ │ ├── EntityRendererManager.kt
│ │ │ │ │ ├── easteregg
│ │ │ │ │ │ └── EntityEasterEggs.kt
│ │ │ │ │ ├── factory
│ │ │ │ │ │ ├── DefaultEntityModels.kt
│ │ │ │ │ │ ├── EntityModelFactory.kt
│ │ │ │ │ │ └── RegisteredEntityModelFactory.kt
│ │ │ │ │ ├── feature
│ │ │ │ │ │ ├── EntityRenderFeature.kt
│ │ │ │ │ │ ├── FeatureManager.kt
│ │ │ │ │ │ ├── SkeletalFeature.kt
│ │ │ │ │ │ ├── block
│ │ │ │ │ │ │ ├── BlockFeature.kt
│ │ │ │ │ │ │ ├── BlockMesh.kt
│ │ │ │ │ │ │ ├── BlockRegister.kt
│ │ │ │ │ │ │ ├── BlockShader.kt
│ │ │ │ │ │ │ └── flashing
│ │ │ │ │ │ │ │ ├── FlashingBlockFeature.kt
│ │ │ │ │ │ │ │ └── FlashingBlockShader.kt
│ │ │ │ │ │ ├── hitbox
│ │ │ │ │ │ │ ├── HitboxFeature.kt
│ │ │ │ │ │ │ └── HitboxManager.kt
│ │ │ │ │ │ ├── item
│ │ │ │ │ │ │ └── ItemFeature.kt
│ │ │ │ │ │ ├── properties
│ │ │ │ │ │ │ ├── InvisibleFeature.kt
│ │ │ │ │ │ │ └── MeshedFeature.kt
│ │ │ │ │ │ ├── register
│ │ │ │ │ │ │ ├── EntityRenderFeatures.kt
│ │ │ │ │ │ │ └── FeatureRegister.kt
│ │ │ │ │ │ └── text
│ │ │ │ │ │ │ ├── BillboardTextFeature.kt
│ │ │ │ │ │ │ ├── BillboardTextMesh.kt
│ │ │ │ │ │ │ ├── BillboardTextRegister.kt
│ │ │ │ │ │ │ ├── BillboardTextShader.kt
│ │ │ │ │ │ │ ├── name
│ │ │ │ │ │ │ └── EntityNameFeature.kt
│ │ │ │ │ │ │ └── score
│ │ │ │ │ │ │ ├── EntityScoreFeature.kt
│ │ │ │ │ │ │ └── ScoreRegister.kt
│ │ │ │ │ ├── model
│ │ │ │ │ │ ├── animal
│ │ │ │ │ │ │ └── AnimalModel.kt
│ │ │ │ │ │ ├── animator
│ │ │ │ │ │ │ └── HeadAnimator.kt
│ │ │ │ │ │ └── human
│ │ │ │ │ │ │ ├── HumanModel.kt
│ │ │ │ │ │ │ ├── PlayerModel.kt
│ │ │ │ │ │ │ └── animator
│ │ │ │ │ │ │ ├── ArmAnimator.kt
│ │ │ │ │ │ │ └── LegAnimator.kt
│ │ │ │ │ ├── renderer
│ │ │ │ │ │ ├── DummyEntityRenderer.kt
│ │ │ │ │ │ ├── EntityRenderer.kt
│ │ │ │ │ │ ├── item
│ │ │ │ │ │ │ ├── FallingBlockEntityRenderer.kt
│ │ │ │ │ │ │ ├── ItemEntityRenderer.kt
│ │ │ │ │ │ │ └── PrimedTNTEntityRenderer.kt
│ │ │ │ │ │ └── living
│ │ │ │ │ │ │ ├── LivingEntityRenderer.kt
│ │ │ │ │ │ │ ├── animal
│ │ │ │ │ │ │ ├── AnimalRenderer.kt
│ │ │ │ │ │ │ ├── CowRenderer.kt
│ │ │ │ │ │ │ └── PigRenderer.kt
│ │ │ │ │ │ │ └── player
│ │ │ │ │ │ │ ├── LocalPlayerRenderer.kt
│ │ │ │ │ │ │ ├── PlayerModelMesh.kt
│ │ │ │ │ │ │ ├── PlayerRegister.kt
│ │ │ │ │ │ │ ├── PlayerRenderer.kt
│ │ │ │ │ │ │ └── PlayerShader.kt
│ │ │ │ │ ├── util
│ │ │ │ │ │ ├── EntitySpeed.kt
│ │ │ │ │ │ └── EntitySpeedAnimator.kt
│ │ │ │ │ └── visibility
│ │ │ │ │ │ ├── EntityLayer.kt
│ │ │ │ │ │ └── VisibilityManager.kt
│ │ │ │ │ ├── events
│ │ │ │ │ ├── CameraMatrixChangeEvent.kt
│ │ │ │ │ ├── CameraPositionChangeEvent.kt
│ │ │ │ │ ├── RenderEvent.kt
│ │ │ │ │ ├── ResizeWindowEvent.kt
│ │ │ │ │ ├── VisibilityGraphChangeEvent.kt
│ │ │ │ │ ├── WindowCloseEvent.kt
│ │ │ │ │ └── input
│ │ │ │ │ │ ├── CharInputEvent.kt
│ │ │ │ │ │ ├── KeyInputEvent.kt
│ │ │ │ │ │ ├── MouseMoveEvent.kt
│ │ │ │ │ │ └── MouseScrollEvent.kt
│ │ │ │ │ ├── exceptions
│ │ │ │ │ ├── ShaderLinkingException.kt
│ │ │ │ │ └── ShaderLoadingException.kt
│ │ │ │ │ ├── font
│ │ │ │ │ ├── WorldGUIConsumer.kt
│ │ │ │ │ ├── loader
│ │ │ │ │ │ ├── DefaultFontIndices.kt
│ │ │ │ │ │ └── FontLoader.kt
│ │ │ │ │ ├── manager
│ │ │ │ │ │ └── FontManager.kt
│ │ │ │ │ ├── renderer
│ │ │ │ │ │ ├── CodePointAddResult.kt
│ │ │ │ │ │ ├── code
│ │ │ │ │ │ │ ├── AscentedCodePointRenderer.kt
│ │ │ │ │ │ │ ├── CodePointRenderer.kt
│ │ │ │ │ │ │ └── RasterizedCodePointRenderer.kt
│ │ │ │ │ │ ├── component
│ │ │ │ │ │ │ ├── BaseComponentRenderer.kt
│ │ │ │ │ │ │ ├── ChatComponentRenderer.kt
│ │ │ │ │ │ │ └── TextComponentRenderer.kt
│ │ │ │ │ │ ├── element
│ │ │ │ │ │ │ ├── CharSpacing.kt
│ │ │ │ │ │ │ ├── LineRenderInfo.kt
│ │ │ │ │ │ │ ├── TextOffset.kt
│ │ │ │ │ │ │ ├── TextRenderInfo.kt
│ │ │ │ │ │ │ └── TextRenderProperties.kt
│ │ │ │ │ │ └── properties
│ │ │ │ │ │ │ ├── FontProperties.kt
│ │ │ │ │ │ │ └── FormattingProperties.kt
│ │ │ │ │ └── types
│ │ │ │ │ │ ├── FontType.kt
│ │ │ │ │ │ ├── PostInitFontType.kt
│ │ │ │ │ │ ├── ReferenceFontType.kt
│ │ │ │ │ │ ├── bitmap
│ │ │ │ │ │ ├── BitmapCodeRenderer.kt
│ │ │ │ │ │ └── BitmapFontType.kt
│ │ │ │ │ │ ├── empty
│ │ │ │ │ │ ├── EmptyCodeRenderer.kt
│ │ │ │ │ │ └── EmptyFontType.kt
│ │ │ │ │ │ ├── factory
│ │ │ │ │ │ ├── FontTypeFactory.kt
│ │ │ │ │ │ └── FontTypes.kt
│ │ │ │ │ │ ├── font
│ │ │ │ │ │ ├── EmptyFont.kt
│ │ │ │ │ │ └── Font.kt
│ │ │ │ │ │ └── unicode
│ │ │ │ │ │ ├── UnicodeCodeRenderer.kt
│ │ │ │ │ │ ├── legacy
│ │ │ │ │ │ └── LegacyUnicodeFontType.kt
│ │ │ │ │ │ └── unihex
│ │ │ │ │ │ ├── SizeOverride.kt
│ │ │ │ │ │ ├── UnifontRasterizer.kt
│ │ │ │ │ │ ├── UnifontTexture.kt
│ │ │ │ │ │ └── UnihexFontType.kt
│ │ │ │ │ ├── framebuffer
│ │ │ │ │ ├── FramebufferManager.kt
│ │ │ │ │ ├── FramebufferMesh.kt
│ │ │ │ │ ├── FramebufferShader.kt
│ │ │ │ │ ├── IntegratedFramebuffer.kt
│ │ │ │ │ ├── gui
│ │ │ │ │ │ └── GUIFramebuffer.kt
│ │ │ │ │ └── world
│ │ │ │ │ │ ├── WorldFramebuffer.kt
│ │ │ │ │ │ ├── fun
│ │ │ │ │ │ ├── DefaultFunEffects.kt
│ │ │ │ │ │ ├── FunEffect.kt
│ │ │ │ │ │ ├── FunEffectFactory.kt
│ │ │ │ │ │ ├── FunEffectManager.kt
│ │ │ │ │ │ └── effects
│ │ │ │ │ │ │ ├── BlackWhite.kt
│ │ │ │ │ │ │ ├── Flip.kt
│ │ │ │ │ │ │ ├── Gray.kt
│ │ │ │ │ │ │ ├── Invert.kt
│ │ │ │ │ │ │ └── tint
│ │ │ │ │ │ │ ├── Tint.kt
│ │ │ │ │ │ │ └── TintShader.kt
│ │ │ │ │ │ └── overlay
│ │ │ │ │ │ ├── Overlay.kt
│ │ │ │ │ │ ├── OverlayFactory.kt
│ │ │ │ │ │ ├── OverlayManager.kt
│ │ │ │ │ │ └── overlays
│ │ │ │ │ │ ├── DefaultOverlays.kt
│ │ │ │ │ │ ├── FireOverlay.kt
│ │ │ │ │ │ ├── simple
│ │ │ │ │ │ ├── FirstPersonOverlay.kt
│ │ │ │ │ │ ├── PowderSnowOverlay.kt
│ │ │ │ │ │ ├── PumpkinOverlay.kt
│ │ │ │ │ │ ├── SimpleOverlay.kt
│ │ │ │ │ │ ├── WallOverlay.kt
│ │ │ │ │ │ ├── WaterOverlay.kt
│ │ │ │ │ │ └── WorldBorderOverlay.kt
│ │ │ │ │ │ └── weather
│ │ │ │ │ │ ├── WeatherOverlay.kt
│ │ │ │ │ │ ├── WeatherOverlayMesh.kt
│ │ │ │ │ │ └── WeatherOverlayShader.kt
│ │ │ │ │ ├── gui
│ │ │ │ │ ├── GUIElement.kt
│ │ │ │ │ ├── GUIElementDrawer.kt
│ │ │ │ │ ├── GUIRenderer.kt
│ │ │ │ │ ├── GUIShader.kt
│ │ │ │ │ ├── atlas
│ │ │ │ │ │ ├── Atlas.kt
│ │ │ │ │ │ ├── AtlasArea.kt
│ │ │ │ │ │ ├── AtlasElement.kt
│ │ │ │ │ │ ├── AtlasLoader.kt
│ │ │ │ │ │ ├── AtlasManager.kt
│ │ │ │ │ │ ├── RawAtlasElement.kt
│ │ │ │ │ │ └── textures
│ │ │ │ │ │ │ ├── AtlasTexture.kt
│ │ │ │ │ │ │ ├── AtlasTextureManager.kt
│ │ │ │ │ │ │ └── CodeTexturePart.kt
│ │ │ │ │ ├── elements
│ │ │ │ │ │ ├── Element.kt
│ │ │ │ │ │ ├── HorizontalAlignments.kt
│ │ │ │ │ │ ├── InfiniteSizeElement.kt
│ │ │ │ │ │ ├── LayoutedElement.kt
│ │ │ │ │ │ ├── Pollable.kt
│ │ │ │ │ │ ├── VerticalAlignments.kt
│ │ │ │ │ │ ├── input
│ │ │ │ │ │ │ ├── button
│ │ │ │ │ │ │ │ ├── AbstractButtonElement.kt
│ │ │ │ │ │ │ │ ├── ButtonElement.kt
│ │ │ │ │ │ │ │ └── NeutralizedButtonElement.kt
│ │ │ │ │ │ │ └── checkbox
│ │ │ │ │ │ │ │ ├── AbstractCheckboxElement.kt
│ │ │ │ │ │ │ │ └── SwitchElement.kt
│ │ │ │ │ │ ├── items
│ │ │ │ │ │ │ ├── ContainerItemsElement.kt
│ │ │ │ │ │ │ ├── ItemElement.kt
│ │ │ │ │ │ │ └── RawItemElement.kt
│ │ │ │ │ │ ├── layout
│ │ │ │ │ │ │ ├── ChildAlignable.kt
│ │ │ │ │ │ │ ├── RowLayout.kt
│ │ │ │ │ │ │ ├── ZLayout.kt
│ │ │ │ │ │ │ └── grid
│ │ │ │ │ │ │ │ ├── GridCell.kt
│ │ │ │ │ │ │ │ ├── GridColumnConstraint.kt
│ │ │ │ │ │ │ │ ├── GridGrow.kt
│ │ │ │ │ │ │ │ ├── GridLayout.kt
│ │ │ │ │ │ │ │ └── GridRowConstraint.kt
│ │ │ │ │ │ ├── primitive
│ │ │ │ │ │ │ ├── AtlasImageElement.kt
│ │ │ │ │ │ │ ├── ColorElement.kt
│ │ │ │ │ │ │ ├── DynamicImageElement.kt
│ │ │ │ │ │ │ └── ImageElement.kt
│ │ │ │ │ │ ├── spacer
│ │ │ │ │ │ │ ├── LineSpacerElement.kt
│ │ │ │ │ │ │ └── SpacerElement.kt
│ │ │ │ │ │ ├── text
│ │ │ │ │ │ │ ├── AutoTextElement.kt
│ │ │ │ │ │ │ ├── Labeled.kt
│ │ │ │ │ │ │ ├── TextElement.kt
│ │ │ │ │ │ │ ├── TextFlowElement.kt
│ │ │ │ │ │ │ ├── background
│ │ │ │ │ │ │ │ └── TextBackground.kt
│ │ │ │ │ │ │ ├── fade
│ │ │ │ │ │ │ │ ├── FadePhase.kt
│ │ │ │ │ │ │ │ ├── FadingTextElement.kt
│ │ │ │ │ │ │ │ └── FadingTimes.kt
│ │ │ │ │ │ │ └── mark
│ │ │ │ │ │ │ │ ├── MarkTextElement.kt
│ │ │ │ │ │ │ │ └── TextCursorStyles.kt
│ │ │ │ │ │ └── util
│ │ │ │ │ │ │ └── ProgressElement.kt
│ │ │ │ │ ├── gui
│ │ │ │ │ │ ├── AbstractLayout.kt
│ │ │ │ │ │ ├── ElementStates.kt
│ │ │ │ │ │ ├── GUIBuilder.kt
│ │ │ │ │ │ ├── GUIManager.kt
│ │ │ │ │ │ ├── GUIMeshElement.kt
│ │ │ │ │ │ ├── LayoutedGUIElement.kt
│ │ │ │ │ │ ├── dragged
│ │ │ │ │ │ │ ├── Dragged.kt
│ │ │ │ │ │ │ ├── DraggedGUIElement.kt
│ │ │ │ │ │ │ ├── DraggedManager.kt
│ │ │ │ │ │ │ └── elements
│ │ │ │ │ │ │ │ └── item
│ │ │ │ │ │ │ │ └── FloatingItem.kt
│ │ │ │ │ │ ├── elements
│ │ │ │ │ │ │ └── input
│ │ │ │ │ │ │ │ ├── TextInputElement.kt
│ │ │ │ │ │ │ │ └── node
│ │ │ │ │ │ │ │ ├── NodeErrorElement.kt
│ │ │ │ │ │ │ │ ├── NodeSuggestionsElement.kt
│ │ │ │ │ │ │ │ └── NodeTextInputElement.kt
│ │ │ │ │ │ ├── popper
│ │ │ │ │ │ │ ├── MouseTrackedPopper.kt
│ │ │ │ │ │ │ ├── Popper.kt
│ │ │ │ │ │ │ ├── PopperGUIElement.kt
│ │ │ │ │ │ │ ├── PopperManager.kt
│ │ │ │ │ │ │ ├── item
│ │ │ │ │ │ │ │ └── ItemInfoPopper.kt
│ │ │ │ │ │ │ └── text
│ │ │ │ │ │ │ │ └── TextPopper.kt
│ │ │ │ │ │ └── screen
│ │ │ │ │ │ │ ├── CreditsScreen.kt
│ │ │ │ │ │ │ ├── Screen.kt
│ │ │ │ │ │ │ ├── SignEditorScreen.kt
│ │ │ │ │ │ │ ├── container
│ │ │ │ │ │ │ ├── BackgroundedContainerScreen.kt
│ │ │ │ │ │ │ ├── ContainerGUIFactories.kt
│ │ │ │ │ │ │ ├── ContainerGUIFactory.kt
│ │ │ │ │ │ │ ├── ContainerGUIManager.kt
│ │ │ │ │ │ │ ├── ContainerScreen.kt
│ │ │ │ │ │ │ ├── CraftingContainerScreen.kt
│ │ │ │ │ │ │ ├── LabeledContainerScreen.kt
│ │ │ │ │ │ │ ├── enchanting
│ │ │ │ │ │ │ │ ├── EnchantingContainerScreen.kt
│ │ │ │ │ │ │ │ └── EnchantmentButtonElement.kt
│ │ │ │ │ │ │ ├── generic
│ │ │ │ │ │ │ │ └── GenericContainerScreen.kt
│ │ │ │ │ │ │ ├── inventory
│ │ │ │ │ │ │ │ ├── InventoryScreen.kt
│ │ │ │ │ │ │ │ └── LocalInventoryScreen.kt
│ │ │ │ │ │ │ ├── processing
│ │ │ │ │ │ │ │ ├── ProcessingContainerScreen.kt
│ │ │ │ │ │ │ │ └── smelting
│ │ │ │ │ │ │ │ │ ├── BlastFurnaceContainerScreen.kt
│ │ │ │ │ │ │ │ │ ├── FurnaceContainerScreen.kt
│ │ │ │ │ │ │ │ │ ├── SmeltingContainerScreen.kt
│ │ │ │ │ │ │ │ │ └── SmokerContainerScreen.kt
│ │ │ │ │ │ │ └── text
│ │ │ │ │ │ │ │ └── ContainerText.kt
│ │ │ │ │ │ │ └── menu
│ │ │ │ │ │ │ ├── Menu.kt
│ │ │ │ │ │ │ ├── confirmation
│ │ │ │ │ │ │ ├── AbstractConfirmationMenu.kt
│ │ │ │ │ │ │ ├── CopyToClipboardDialog.kt
│ │ │ │ │ │ │ ├── DeleteScreenshotDialog.kt
│ │ │ │ │ │ │ ├── OpenFileConfirmationDialog.kt
│ │ │ │ │ │ │ ├── SendMessageDialog.kt
│ │ │ │ │ │ │ └── URLConfirmationDialog.kt
│ │ │ │ │ │ │ ├── debug
│ │ │ │ │ │ │ └── DebugMenu.kt
│ │ │ │ │ │ │ └── pause
│ │ │ │ │ │ │ ├── PauseMenu.kt
│ │ │ │ │ │ │ └── RespawnMenu.kt
│ │ │ │ │ ├── hud
│ │ │ │ │ │ ├── HUDElement.kt
│ │ │ │ │ │ ├── HUDManager.kt
│ │ │ │ │ │ └── elements
│ │ │ │ │ │ │ ├── CustomHUDElement.kt
│ │ │ │ │ │ │ ├── HUDBuilder.kt
│ │ │ │ │ │ │ ├── bossbar
│ │ │ │ │ │ │ ├── BossbarAtlas.kt
│ │ │ │ │ │ │ ├── BossbarElement.kt
│ │ │ │ │ │ │ ├── BossbarLayout.kt
│ │ │ │ │ │ │ └── BossbarProgressElement.kt
│ │ │ │ │ │ │ ├── chat
│ │ │ │ │ │ │ ├── AbstractChatElement.kt
│ │ │ │ │ │ │ ├── ChatElement.kt
│ │ │ │ │ │ │ └── InternalChatElement.kt
│ │ │ │ │ │ │ ├── hotbar
│ │ │ │ │ │ │ ├── AbstractHotbarHealthElement.kt
│ │ │ │ │ │ │ ├── HotbarAirElement.kt
│ │ │ │ │ │ │ ├── HotbarBaseElement.kt
│ │ │ │ │ │ │ ├── HotbarCoreElement.kt
│ │ │ │ │ │ │ ├── HotbarElement.kt
│ │ │ │ │ │ │ ├── HotbarExperienceBarElement.kt
│ │ │ │ │ │ │ ├── HotbarHungerElement.kt
│ │ │ │ │ │ │ ├── HotbarOffhandElement.kt
│ │ │ │ │ │ │ ├── HotbarProtectionElement.kt
│ │ │ │ │ │ │ └── health
│ │ │ │ │ │ │ │ ├── HeartAtlas.kt
│ │ │ │ │ │ │ │ ├── HotbarHealthElement.kt
│ │ │ │ │ │ │ │ ├── HotbarVehicleHealthElement.kt
│ │ │ │ │ │ │ │ └── VehicleHeartAtlas.kt
│ │ │ │ │ │ │ ├── other
│ │ │ │ │ │ │ ├── CrosshairHUDElement.kt
│ │ │ │ │ │ │ ├── PerformanceHUDElement.kt
│ │ │ │ │ │ │ └── debug
│ │ │ │ │ │ │ │ ├── AllocationRate.kt
│ │ │ │ │ │ │ │ └── DebugHUDElement.kt
│ │ │ │ │ │ │ ├── scoreboard
│ │ │ │ │ │ │ ├── ScoreboardScoreElement.kt
│ │ │ │ │ │ │ └── ScoreboardSideElement.kt
│ │ │ │ │ │ │ ├── tab
│ │ │ │ │ │ │ ├── TabListAtlas.kt
│ │ │ │ │ │ │ ├── TabListElement.kt
│ │ │ │ │ │ │ └── TabListEntryElement.kt
│ │ │ │ │ │ │ ├── title
│ │ │ │ │ │ │ └── TitleElement.kt
│ │ │ │ │ │ │ └── wawla
│ │ │ │ │ │ │ ├── WawlaElement.kt
│ │ │ │ │ │ │ ├── WawlaHUDElement.kt
│ │ │ │ │ │ │ ├── block
│ │ │ │ │ │ │ ├── BlockWawlaElement.kt
│ │ │ │ │ │ │ └── WawlaBreakProgressElement.kt
│ │ │ │ │ │ │ └── entity
│ │ │ │ │ │ │ └── EntityWawlaElement.kt
│ │ │ │ │ ├── input
│ │ │ │ │ │ ├── DragTarget.kt
│ │ │ │ │ │ ├── DraggableHandler.kt
│ │ │ │ │ │ ├── InputElement.kt
│ │ │ │ │ │ ├── ModifierKeys.kt
│ │ │ │ │ │ ├── MouseInputElement.kt
│ │ │ │ │ │ └── mouse
│ │ │ │ │ │ │ ├── MouseActions.kt
│ │ │ │ │ │ │ └── MouseButtons.kt
│ │ │ │ │ └── mesh
│ │ │ │ │ │ ├── GUIMesh.kt
│ │ │ │ │ │ ├── GUIMeshCache.kt
│ │ │ │ │ │ ├── GUIVertexConsumer.kt
│ │ │ │ │ │ └── GUIVertexOptions.kt
│ │ │ │ │ ├── input
│ │ │ │ │ ├── CameraInput.kt
│ │ │ │ │ ├── InputHandler.kt
│ │ │ │ │ ├── count
│ │ │ │ │ │ ├── ClickCounter.kt
│ │ │ │ │ │ ├── KeyClickCounter.kt
│ │ │ │ │ │ ├── MouseClickCounter.kt
│ │ │ │ │ │ └── SingleClickCounter.kt
│ │ │ │ │ ├── interaction
│ │ │ │ │ │ └── InteractionManagerKeys.kt
│ │ │ │ │ └── key
│ │ │ │ │ │ ├── DebugKeyBindings.kt
│ │ │ │ │ │ ├── DefaultKeyBindings.kt
│ │ │ │ │ │ └── manager
│ │ │ │ │ │ ├── InputHandlerManager.kt
│ │ │ │ │ │ ├── InputManager.kt
│ │ │ │ │ │ └── binding
│ │ │ │ │ │ ├── BindingsManager.kt
│ │ │ │ │ │ ├── KeyBindingCallback.kt
│ │ │ │ │ │ ├── KeyBindingFilterState.kt
│ │ │ │ │ │ ├── KeyBindingState.kt
│ │ │ │ │ │ └── actions
│ │ │ │ │ │ └── KeyActionFilter.kt
│ │ │ │ │ ├── light
│ │ │ │ │ ├── Lightmap.kt
│ │ │ │ │ ├── LightmapBuffer.kt
│ │ │ │ │ ├── RenderLight.kt
│ │ │ │ │ ├── ao
│ │ │ │ │ │ ├── AmbientOcclusion.kt
│ │ │ │ │ │ └── AmbientOcclusionUtil.kt
│ │ │ │ │ ├── debug
│ │ │ │ │ │ └── LightmapDebugWindow.kt
│ │ │ │ │ └── updater
│ │ │ │ │ │ ├── DebugLightUpdater.kt
│ │ │ │ │ │ ├── FullbrightLightUpdater.kt
│ │ │ │ │ │ ├── LightmapUpdater.kt
│ │ │ │ │ │ └── normal
│ │ │ │ │ │ └── NormalLightmapUpdater.kt
│ │ │ │ │ ├── models
│ │ │ │ │ ├── block
│ │ │ │ │ │ ├── BlockModel.kt
│ │ │ │ │ │ ├── BlockModelPrototype.kt
│ │ │ │ │ │ ├── element
│ │ │ │ │ │ │ ├── ElementRotation.kt
│ │ │ │ │ │ │ ├── FaceVertexData.kt
│ │ │ │ │ │ │ ├── ModelElement.kt
│ │ │ │ │ │ │ └── face
│ │ │ │ │ │ │ │ ├── FaceUV.kt
│ │ │ │ │ │ │ │ └── ModelFace.kt
│ │ │ │ │ │ └── state
│ │ │ │ │ │ │ ├── DirectBlockModel.kt
│ │ │ │ │ │ │ ├── apply
│ │ │ │ │ │ │ ├── BlockStateApply.kt
│ │ │ │ │ │ │ ├── SingleBlockStateApply.kt
│ │ │ │ │ │ │ └── WeightedBlockStateApply.kt
│ │ │ │ │ │ │ ├── baked
│ │ │ │ │ │ │ ├── BakedFace.kt
│ │ │ │ │ │ │ ├── BakedModel.kt
│ │ │ │ │ │ │ ├── BakingUtil.kt
│ │ │ │ │ │ │ ├── Shades.kt
│ │ │ │ │ │ │ └── cull
│ │ │ │ │ │ │ │ ├── CustomBlockCulling.kt
│ │ │ │ │ │ │ │ ├── FaceCulling.kt
│ │ │ │ │ │ │ │ └── side
│ │ │ │ │ │ │ │ ├── FaceProperties.kt
│ │ │ │ │ │ │ │ └── SideProperties.kt
│ │ │ │ │ │ │ ├── builder
│ │ │ │ │ │ │ ├── BuilderApply.kt
│ │ │ │ │ │ │ ├── BuilderBlockModel.kt
│ │ │ │ │ │ │ ├── BuiltModel.kt
│ │ │ │ │ │ │ └── condition
│ │ │ │ │ │ │ │ ├── AndCondition.kt
│ │ │ │ │ │ │ │ ├── BuilderCondition.kt
│ │ │ │ │ │ │ │ ├── OrCondition.kt
│ │ │ │ │ │ │ │ ├── PrimitiveCondition.kt
│ │ │ │ │ │ │ │ └── PropertyCondition.kt
│ │ │ │ │ │ │ ├── render
│ │ │ │ │ │ │ ├── BlockGUIConsumer.kt
│ │ │ │ │ │ │ ├── BlockRender.kt
│ │ │ │ │ │ │ ├── PickedBlockRender.kt
│ │ │ │ │ │ │ ├── WeightedBlockRender.kt
│ │ │ │ │ │ │ ├── WorldRenderProps.kt
│ │ │ │ │ │ │ └── property
│ │ │ │ │ │ │ │ ├── FullBlockPropertyRenderer.kt
│ │ │ │ │ │ │ │ └── PropertyOnlyBlockRender.kt
│ │ │ │ │ │ │ └── variant
│ │ │ │ │ │ │ ├── BlockVariant.kt
│ │ │ │ │ │ │ ├── PropertyVariantBlockModel.kt
│ │ │ │ │ │ │ ├── SingleVariantBlockModel.kt
│ │ │ │ │ │ │ └── VariantBlockModel.kt
│ │ │ │ │ ├── fluid
│ │ │ │ │ │ ├── FluidModel.kt
│ │ │ │ │ │ └── fluids
│ │ │ │ │ │ │ ├── LavaFluidModel.kt
│ │ │ │ │ │ │ └── WaterFluidModel.kt
│ │ │ │ │ ├── item
│ │ │ │ │ │ ├── FlatItemRender.kt
│ │ │ │ │ │ ├── ItemModel.kt
│ │ │ │ │ │ ├── ItemModelPrototype.kt
│ │ │ │ │ │ ├── ItemRender.kt
│ │ │ │ │ │ └── ItemRenderUtil.kt
│ │ │ │ │ ├── loader
│ │ │ │ │ │ ├── BlockLoader.kt
│ │ │ │ │ │ ├── FluidModelLoader.kt
│ │ │ │ │ │ ├── ItemLoader.kt
│ │ │ │ │ │ ├── ModelFixer.kt
│ │ │ │ │ │ ├── ModelLoader.kt
│ │ │ │ │ │ ├── SkeletalLoader.kt
│ │ │ │ │ │ └── legacy
│ │ │ │ │ │ │ ├── CustomModel.kt
│ │ │ │ │ │ │ └── ModelChooser.kt
│ │ │ │ │ ├── raw
│ │ │ │ │ │ ├── display
│ │ │ │ │ │ │ ├── DisplayPositions.kt
│ │ │ │ │ │ │ └── ModelDisplay.kt
│ │ │ │ │ │ └── light
│ │ │ │ │ │ │ └── GUILights.kt
│ │ │ │ │ └── util
│ │ │ │ │ │ └── CuboidUtil.kt
│ │ │ │ │ ├── particle
│ │ │ │ │ ├── DefaultParticleBehavior.kt
│ │ │ │ │ ├── DefaultParticleFactory.kt
│ │ │ │ │ ├── ParticleFactory.kt
│ │ │ │ │ ├── ParticleList.kt
│ │ │ │ │ ├── ParticleMesh.kt
│ │ │ │ │ ├── ParticleQueue.kt
│ │ │ │ │ ├── ParticleRenderer.kt
│ │ │ │ │ ├── ParticleShader.kt
│ │ │ │ │ ├── ParticleTicker.kt
│ │ │ │ │ └── types
│ │ │ │ │ │ ├── Particle.kt
│ │ │ │ │ │ ├── norender
│ │ │ │ │ │ ├── ExplosionEmitterParticle.kt
│ │ │ │ │ │ ├── NoRenderParticle.kt
│ │ │ │ │ │ └── emitter
│ │ │ │ │ │ │ └── EntityEmitterParticle.kt
│ │ │ │ │ │ └── render
│ │ │ │ │ │ ├── RenderParticle.kt
│ │ │ │ │ │ └── texture
│ │ │ │ │ │ ├── TextureParticle.kt
│ │ │ │ │ │ ├── advanced
│ │ │ │ │ │ ├── AdvancedTextureParticle.kt
│ │ │ │ │ │ └── block
│ │ │ │ │ │ │ └── BlockDustParticle.kt
│ │ │ │ │ │ └── simple
│ │ │ │ │ │ ├── AscendingParticle.kt
│ │ │ │ │ │ ├── NoteParticle.kt
│ │ │ │ │ │ ├── PortalParticle.kt
│ │ │ │ │ │ ├── SimpleTextureParticle.kt
│ │ │ │ │ │ ├── animated
│ │ │ │ │ │ ├── AnimatedParticle.kt
│ │ │ │ │ │ └── EndRodParticle.kt
│ │ │ │ │ │ ├── campfire
│ │ │ │ │ │ └── CampfireSmokeParticle.kt
│ │ │ │ │ │ ├── cloud
│ │ │ │ │ │ ├── CloudParticle.kt
│ │ │ │ │ │ └── SneezeParticle.kt
│ │ │ │ │ │ ├── damage
│ │ │ │ │ │ ├── CritParticle.kt
│ │ │ │ │ │ ├── DamageIndicatorParticle.kt
│ │ │ │ │ │ ├── DamageParticle.kt
│ │ │ │ │ │ └── EnchantedHitParticle.kt
│ │ │ │ │ │ ├── dust
│ │ │ │ │ │ ├── AbstractDustParticle.kt
│ │ │ │ │ │ └── DustParticle.kt
│ │ │ │ │ │ ├── emotion
│ │ │ │ │ │ ├── AngryVillagerParticle.kt
│ │ │ │ │ │ ├── EmotionParticle.kt
│ │ │ │ │ │ └── HeartParticle.kt
│ │ │ │ │ │ ├── enchant
│ │ │ │ │ │ ├── EnchantParticle.kt
│ │ │ │ │ │ ├── EnchantedGlyphParticle.kt
│ │ │ │ │ │ └── NautilusParticle.kt
│ │ │ │ │ │ ├── explosion
│ │ │ │ │ │ ├── ExplosionParticle.kt
│ │ │ │ │ │ └── PoofParticle.kt
│ │ │ │ │ │ ├── fire
│ │ │ │ │ │ └── SmokeParticle.kt
│ │ │ │ │ │ ├── lava
│ │ │ │ │ │ └── LavaParticle.kt
│ │ │ │ │ │ ├── slowing
│ │ │ │ │ │ ├── FlameParticle.kt
│ │ │ │ │ │ ├── SlowingParticle.kt
│ │ │ │ │ │ ├── SmallFlameParticle.kt
│ │ │ │ │ │ └── SoulFireFlameParticle.kt
│ │ │ │ │ │ ├── spell
│ │ │ │ │ │ ├── AmbientEntityEffectParticle.kt
│ │ │ │ │ │ ├── EntityEffectParticle.kt
│ │ │ │ │ │ ├── SpellParticle.kt
│ │ │ │ │ │ └── WitchParticle.kt
│ │ │ │ │ │ ├── suspend
│ │ │ │ │ │ ├── ComposterParticle.kt
│ │ │ │ │ │ ├── DolphinParticle.kt
│ │ │ │ │ │ ├── HappyVillagerParticle.kt
│ │ │ │ │ │ ├── MyceliumParticle.kt
│ │ │ │ │ │ └── SuspendParticle.kt
│ │ │ │ │ │ └── water
│ │ │ │ │ │ ├── BubbleParticle.kt
│ │ │ │ │ │ ├── CrimsonSporeParticle.kt
│ │ │ │ │ │ ├── UnderwaterParticle.kt
│ │ │ │ │ │ ├── WarpedSporeParticle.kt
│ │ │ │ │ │ └── WaterSuspendParticle.kt
│ │ │ │ │ ├── renderer
│ │ │ │ │ ├── MeshSwapper.kt
│ │ │ │ │ ├── drawable
│ │ │ │ │ │ ├── AsyncDrawable.kt
│ │ │ │ │ │ ├── BaseDrawable.kt
│ │ │ │ │ │ ├── DeltaAsyncDrawable.kt
│ │ │ │ │ │ ├── DeltaDrawable.kt
│ │ │ │ │ │ └── Drawable.kt
│ │ │ │ │ └── renderer
│ │ │ │ │ │ ├── AsyncRenderer.kt
│ │ │ │ │ │ ├── DefaultRenderer.kt
│ │ │ │ │ │ ├── Renderer.kt
│ │ │ │ │ │ ├── RendererBuilder.kt
│ │ │ │ │ │ ├── RendererManager.kt
│ │ │ │ │ │ ├── pipeline
│ │ │ │ │ │ ├── RendererPipeline.kt
│ │ │ │ │ │ └── world
│ │ │ │ │ │ │ ├── PipelineElement.kt
│ │ │ │ │ │ │ └── WorldRendererPipeline.kt
│ │ │ │ │ │ └── world
│ │ │ │ │ │ ├── LayerSettings.kt
│ │ │ │ │ │ └── WorldRenderer.kt
│ │ │ │ │ ├── shader
│ │ │ │ │ ├── AbstractShader.kt
│ │ │ │ │ ├── Shader.kt
│ │ │ │ │ ├── ShaderManager.kt
│ │ │ │ │ ├── ShaderSetter.kt
│ │ │ │ │ ├── generic
│ │ │ │ │ │ ├── ColorShader.kt
│ │ │ │ │ │ ├── Generic2dTextureShader.kt
│ │ │ │ │ │ └── GenericTextureShader.kt
│ │ │ │ │ ├── types
│ │ │ │ │ │ ├── AnimatedShader.kt
│ │ │ │ │ │ ├── CameraPositionShader.kt
│ │ │ │ │ │ ├── FogShader.kt
│ │ │ │ │ │ ├── LightShader.kt
│ │ │ │ │ │ ├── TextureShader.kt
│ │ │ │ │ │ ├── TintedShader.kt
│ │ │ │ │ │ └── ViewProjectionShader.kt
│ │ │ │ │ └── uniform
│ │ │ │ │ │ └── ShaderUniform.kt
│ │ │ │ │ ├── skeletal
│ │ │ │ │ ├── SkeletalManager.kt
│ │ │ │ │ ├── baked
│ │ │ │ │ │ ├── BakedSkeletalModel.kt
│ │ │ │ │ │ ├── BakedSkeletalTransform.kt
│ │ │ │ │ │ ├── SkeletalBakeContext.kt
│ │ │ │ │ │ ├── SkeletalModelStates.kt
│ │ │ │ │ │ └── animation
│ │ │ │ │ │ │ ├── AbstractAnimation.kt
│ │ │ │ │ │ │ └── keyframe
│ │ │ │ │ │ │ ├── KeyframeAnimation.kt
│ │ │ │ │ │ │ ├── KeyframeAnimator.kt
│ │ │ │ │ │ │ └── instance
│ │ │ │ │ │ │ ├── KeyframeInstance.kt
│ │ │ │ │ │ │ └── Vec3KeyframeInstance.kt
│ │ │ │ │ ├── instance
│ │ │ │ │ │ ├── AnimationManager.kt
│ │ │ │ │ │ ├── SkeletalInstance.kt
│ │ │ │ │ │ └── TransformInstance.kt
│ │ │ │ │ ├── mesh
│ │ │ │ │ │ ├── AbstractSkeletalMesh.kt
│ │ │ │ │ │ ├── SkeletalMesh.kt
│ │ │ │ │ │ ├── SkeletalMeshBuilder.kt
│ │ │ │ │ │ └── SkeletalMeshUtil.kt
│ │ │ │ │ ├── model
│ │ │ │ │ │ ├── SkeletalModel.kt
│ │ │ │ │ │ ├── animations
│ │ │ │ │ │ │ ├── SkeletalAnimation.kt
│ │ │ │ │ │ │ └── animators
│ │ │ │ │ │ │ │ ├── AnimationLoops.kt
│ │ │ │ │ │ │ │ ├── SkeletalAnimator.kt
│ │ │ │ │ │ │ │ └── keyframes
│ │ │ │ │ │ │ │ ├── KeyframeInterpolation.kt
│ │ │ │ │ │ │ │ ├── SkeletalKeyframe.kt
│ │ │ │ │ │ │ │ └── types
│ │ │ │ │ │ │ │ ├── RotateKeyframe.kt
│ │ │ │ │ │ │ │ ├── ScaleKeyframe.kt
│ │ │ │ │ │ │ │ └── TranslateKeyframe.kt
│ │ │ │ │ │ ├── elements
│ │ │ │ │ │ │ ├── SkeletalElement.kt
│ │ │ │ │ │ │ ├── SkeletalFace.kt
│ │ │ │ │ │ │ └── SkeletalRotation.kt
│ │ │ │ │ │ ├── textures
│ │ │ │ │ │ │ ├── SkeletalTexture.kt
│ │ │ │ │ │ │ └── SkeletalTextureInstance.kt
│ │ │ │ │ │ └── transforms
│ │ │ │ │ │ │ └── SkeletalTransform.kt
│ │ │ │ │ └── shader
│ │ │ │ │ │ ├── BaseSkeletalShader.kt
│ │ │ │ │ │ ├── LightmapSkeletalShader.kt
│ │ │ │ │ │ └── SkeletalShader.kt
│ │ │ │ │ ├── sky
│ │ │ │ │ ├── SkyChildRenderer.kt
│ │ │ │ │ ├── SkyRenderer.kt
│ │ │ │ │ ├── box
│ │ │ │ │ │ ├── SkyboxColor.kt
│ │ │ │ │ │ ├── SkyboxColorShader.kt
│ │ │ │ │ │ ├── SkyboxMesh.kt
│ │ │ │ │ │ ├── SkyboxRenderer.kt
│ │ │ │ │ │ ├── SkyboxTextureMesh.kt
│ │ │ │ │ │ └── SkyboxTextureShader.kt
│ │ │ │ │ ├── clouds
│ │ │ │ │ │ ├── CloudArray.kt
│ │ │ │ │ │ ├── CloudColor.kt
│ │ │ │ │ │ ├── CloudLayer.kt
│ │ │ │ │ │ ├── CloudMatrix.kt
│ │ │ │ │ │ ├── CloudMesh.kt
│ │ │ │ │ │ ├── CloudRenderer.kt
│ │ │ │ │ │ └── CloudShader.kt
│ │ │ │ │ └── planet
│ │ │ │ │ │ ├── MoonRenderer.kt
│ │ │ │ │ │ ├── PlanetMesh.kt
│ │ │ │ │ │ ├── PlanetRenderer.kt
│ │ │ │ │ │ ├── PlanetShader.kt
│ │ │ │ │ │ ├── SunRenderer.kt
│ │ │ │ │ │ └── scatter
│ │ │ │ │ │ ├── SunScatterMesh.kt
│ │ │ │ │ │ ├── SunScatterRenderer.kt
│ │ │ │ │ │ └── SunScatterShader.kt
│ │ │ │ │ ├── sound
│ │ │ │ │ ├── AudioPlayer.kt
│ │ │ │ │ ├── DefaultAudioBehavior.kt
│ │ │ │ │ ├── SoundConstants.kt
│ │ │ │ │ ├── SoundListener.kt
│ │ │ │ │ ├── SoundManager.kt
│ │ │ │ │ ├── SoundSource.kt
│ │ │ │ │ ├── SoundUtil.kt
│ │ │ │ │ └── sounds
│ │ │ │ │ │ ├── OpenALBuffer.kt
│ │ │ │ │ │ ├── Sound.kt
│ │ │ │ │ │ ├── SoundData.kt
│ │ │ │ │ │ └── SoundType.kt
│ │ │ │ │ ├── stats
│ │ │ │ │ ├── AbstractRenderStats.kt
│ │ │ │ │ ├── ExperimentalRenderStats.kt
│ │ │ │ │ └── RenderStats.kt
│ │ │ │ │ ├── system
│ │ │ │ │ ├── base
│ │ │ │ │ │ ├── BlendingFunctions.kt
│ │ │ │ │ │ ├── DepthFunctions.kt
│ │ │ │ │ │ ├── FaceTypes.kt
│ │ │ │ │ │ ├── GPUVendor.kt
│ │ │ │ │ │ ├── IntegratedBufferTypes.kt
│ │ │ │ │ │ ├── MeshUtil.kt
│ │ │ │ │ │ ├── PolygonModes.kt
│ │ │ │ │ │ ├── RenderOrder.kt
│ │ │ │ │ │ ├── RenderSystem.kt
│ │ │ │ │ │ ├── RenderSystemError.kt
│ │ │ │ │ │ ├── RenderSystemFactory.kt
│ │ │ │ │ │ ├── RenderingCapabilities.kt
│ │ │ │ │ │ ├── buffer
│ │ │ │ │ │ │ ├── IntBuffer.kt
│ │ │ │ │ │ │ ├── RenderFloatBuffer.kt
│ │ │ │ │ │ │ ├── RenderableBuffer.kt
│ │ │ │ │ │ │ ├── RenderableBufferDrawTypes.kt
│ │ │ │ │ │ │ ├── RenderableBufferStates.kt
│ │ │ │ │ │ │ ├── RenderableBufferTypes.kt
│ │ │ │ │ │ │ ├── frame
│ │ │ │ │ │ │ │ ├── Framebuffer.kt
│ │ │ │ │ │ │ │ ├── FramebufferState.kt
│ │ │ │ │ │ │ │ └── texture
│ │ │ │ │ │ │ │ │ └── FramebufferTexture.kt
│ │ │ │ │ │ │ ├── render
│ │ │ │ │ │ │ │ ├── Renderbuffer.kt
│ │ │ │ │ │ │ │ ├── RenderbufferModes.kt
│ │ │ │ │ │ │ │ └── RenderbufferStates.kt
│ │ │ │ │ │ │ ├── uniform
│ │ │ │ │ │ │ │ ├── FloatUniformBuffer.kt
│ │ │ │ │ │ │ │ ├── IntUniformBuffer.kt
│ │ │ │ │ │ │ │ └── UniformBuffer.kt
│ │ │ │ │ │ │ └── vertex
│ │ │ │ │ │ │ │ ├── FloatVertexBuffer.kt
│ │ │ │ │ │ │ │ ├── PrimitiveTypes.kt
│ │ │ │ │ │ │ │ └── VertexBuffer.kt
│ │ │ │ │ │ ├── driver
│ │ │ │ │ │ │ └── DriverHacks.kt
│ │ │ │ │ │ ├── layer
│ │ │ │ │ │ │ ├── OpaqueLayer.kt
│ │ │ │ │ │ │ ├── RenderLayer.kt
│ │ │ │ │ │ │ └── TranslucentLayer.kt
│ │ │ │ │ │ ├── phases
│ │ │ │ │ │ │ ├── PostDrawable.kt
│ │ │ │ │ │ │ ├── PreDrawable.kt
│ │ │ │ │ │ │ └── SkipAll.kt
│ │ │ │ │ │ ├── settings
│ │ │ │ │ │ │ ├── DefaultSettings.kt
│ │ │ │ │ │ │ └── RenderSettings.kt
│ │ │ │ │ │ ├── shader
│ │ │ │ │ │ │ ├── NativeShader.kt
│ │ │ │ │ │ │ ├── ShaderUniforms.kt
│ │ │ │ │ │ │ └── code
│ │ │ │ │ │ │ │ └── glsl
│ │ │ │ │ │ │ │ ├── GLSLShaderCode.kt
│ │ │ │ │ │ │ │ └── GLSLStringReader.kt
│ │ │ │ │ │ └── texture
│ │ │ │ │ │ │ ├── TextureManager.kt
│ │ │ │ │ │ │ ├── TexturePart.kt
│ │ │ │ │ │ │ ├── TextureStates.kt
│ │ │ │ │ │ │ ├── TextureTransparencies.kt
│ │ │ │ │ │ │ ├── array
│ │ │ │ │ │ │ ├── StaticTextureArray.kt
│ │ │ │ │ │ │ ├── TextureArray.kt
│ │ │ │ │ │ │ ├── TextureArrayProperties.kt
│ │ │ │ │ │ │ ├── TextureArrayStates.kt
│ │ │ │ │ │ │ └── font
│ │ │ │ │ │ │ │ ├── FontCompressions.kt
│ │ │ │ │ │ │ │ └── FontTextureArray.kt
│ │ │ │ │ │ │ ├── data
│ │ │ │ │ │ │ ├── MipmapTextureData.kt
│ │ │ │ │ │ │ ├── TextureData.kt
│ │ │ │ │ │ │ └── buffer
│ │ │ │ │ │ │ │ ├── RGB8Buffer.kt
│ │ │ │ │ │ │ │ ├── RGBA8Buffer.kt
│ │ │ │ │ │ │ │ ├── TextureBuffer.kt
│ │ │ │ │ │ │ │ └── TextureBufferFactory.kt
│ │ │ │ │ │ │ ├── dynamic
│ │ │ │ │ │ │ ├── DynamicTexture.kt
│ │ │ │ │ │ │ ├── DynamicTextureArray.kt
│ │ │ │ │ │ │ ├── DynamicTextureListener.kt
│ │ │ │ │ │ │ └── DynamicTextureState.kt
│ │ │ │ │ │ │ ├── shader
│ │ │ │ │ │ │ ├── ShaderIdentifiable.kt
│ │ │ │ │ │ │ └── ShaderTexture.kt
│ │ │ │ │ │ │ ├── skin
│ │ │ │ │ │ │ ├── IllegalSkinError.kt
│ │ │ │ │ │ │ ├── PlayerSkin.kt
│ │ │ │ │ │ │ ├── SkinManager.kt
│ │ │ │ │ │ │ └── vanilla
│ │ │ │ │ │ │ │ ├── DefaultLegacySkin.kt
│ │ │ │ │ │ │ │ ├── DefaultSkin.kt
│ │ │ │ │ │ │ │ ├── DefaultSkinProvider.kt
│ │ │ │ │ │ │ │ └── DefaultSkins.kt
│ │ │ │ │ │ │ ├── sprite
│ │ │ │ │ │ │ └── SpriteAnimator.kt
│ │ │ │ │ │ │ └── texture
│ │ │ │ │ │ │ ├── Texture.kt
│ │ │ │ │ │ │ ├── TextureRenderData.kt
│ │ │ │ │ │ │ ├── file
│ │ │ │ │ │ │ ├── FileTexture.kt
│ │ │ │ │ │ │ └── PNGTexture.kt
│ │ │ │ │ │ │ └── memory
│ │ │ │ │ │ │ └── MemoryTexture.kt
│ │ │ │ │ ├── opengl
│ │ │ │ │ │ ├── MemoryLeakException.kt
│ │ │ │ │ │ ├── OpenGLError.kt
│ │ │ │ │ │ ├── OpenGLNativeShader.kt
│ │ │ │ │ │ ├── OpenGLRenderSystem.kt
│ │ │ │ │ │ ├── buffer
│ │ │ │ │ │ │ ├── FloatOpenGLBuffer.kt
│ │ │ │ │ │ │ ├── OpenGLRenderableBuffer.kt
│ │ │ │ │ │ │ ├── frame
│ │ │ │ │ │ │ │ ├── OpenGLFramebuffer.kt
│ │ │ │ │ │ │ │ └── texture
│ │ │ │ │ │ │ │ │ ├── OpenGLFramebufferColorTexture.kt
│ │ │ │ │ │ │ │ │ ├── OpenGLFramebufferDepthTexture.kt
│ │ │ │ │ │ │ │ │ └── OpenGLTexture.kt
│ │ │ │ │ │ │ ├── render
│ │ │ │ │ │ │ │ └── OpenGLRenderbuffer.kt
│ │ │ │ │ │ │ ├── uniform
│ │ │ │ │ │ │ │ ├── FloatOpenGLUniformBuffer.kt
│ │ │ │ │ │ │ │ ├── IntOpenGLUniformBuffer.kt
│ │ │ │ │ │ │ │ └── OpenGLUniformBuffer.kt
│ │ │ │ │ │ │ └── vertex
│ │ │ │ │ │ │ │ ├── FloatOpenGLVertexBuffer.kt
│ │ │ │ │ │ │ │ └── OpenGLVAO.kt
│ │ │ │ │ │ ├── texture
│ │ │ │ │ │ │ ├── OpenGLFontTextureArray.kt
│ │ │ │ │ │ │ ├── OpenGLTextureArray.kt
│ │ │ │ │ │ │ ├── OpenGLTextureData.kt
│ │ │ │ │ │ │ ├── OpenGLTextureManager.kt
│ │ │ │ │ │ │ ├── OpenGLTextureUtil.kt
│ │ │ │ │ │ │ └── dynamic
│ │ │ │ │ │ │ │ ├── OpenGLDynamicTexture.kt
│ │ │ │ │ │ │ │ └── OpenGLDynamicTextureArray.kt
│ │ │ │ │ │ └── vendor
│ │ │ │ │ │ │ ├── AMDOpenGLVendor.kt
│ │ │ │ │ │ │ ├── IntelOpenGLVendor.kt
│ │ │ │ │ │ │ ├── NvidiaOpenGLVendor.kt
│ │ │ │ │ │ │ ├── OpenGLVendor.kt
│ │ │ │ │ │ │ └── OtherOpenGLVendor.kt
│ │ │ │ │ └── window
│ │ │ │ │ │ ├── BaseWindow.kt
│ │ │ │ │ │ ├── CursorModes.kt
│ │ │ │ │ │ ├── CursorShapes.kt
│ │ │ │ │ │ ├── KeyChangeTypes.kt
│ │ │ │ │ │ ├── WindowFactory.kt
│ │ │ │ │ │ └── glfw
│ │ │ │ │ │ ├── GLFWWindow.kt
│ │ │ │ │ │ └── GLFWWindowFactory.kt
│ │ │ │ │ ├── textures
│ │ │ │ │ ├── TextureAnimation.kt
│ │ │ │ │ ├── TextureUtil.kt
│ │ │ │ │ └── properties
│ │ │ │ │ │ ├── AnimationFrame.kt
│ │ │ │ │ │ ├── AnimationProperties.kt
│ │ │ │ │ │ ├── ImageProperties.kt
│ │ │ │ │ │ └── TextureProperties.kt
│ │ │ │ │ ├── tint
│ │ │ │ │ ├── DefaultTints.kt
│ │ │ │ │ ├── MultiTintProvider.kt
│ │ │ │ │ ├── TintManager.kt
│ │ │ │ │ ├── TintProvider.kt
│ │ │ │ │ ├── TintUtil.kt
│ │ │ │ │ ├── TintedBlock.kt
│ │ │ │ │ └── tints
│ │ │ │ │ │ ├── ColorMapTint.kt
│ │ │ │ │ │ ├── StaticTintProvider.kt
│ │ │ │ │ │ ├── fluid
│ │ │ │ │ │ └── WaterTintProvider.kt
│ │ │ │ │ │ ├── grass
│ │ │ │ │ │ ├── GrassTintCalculator.kt
│ │ │ │ │ │ ├── GrassTinted.kt
│ │ │ │ │ │ └── TallGrassTintCalculator.kt
│ │ │ │ │ │ ├── plants
│ │ │ │ │ │ ├── FoliageTintCalculator.kt
│ │ │ │ │ │ ├── StemTintCalculator.kt
│ │ │ │ │ │ └── SugarCaneTintCalculator.kt
│ │ │ │ │ │ └── redstone
│ │ │ │ │ │ └── RedstoneWireTintCalculator.kt
│ │ │ │ │ └── util
│ │ │ │ │ ├── ScreenshotTaker.kt
│ │ │ │ │ ├── VecUtil.kt
│ │ │ │ │ ├── allocator
│ │ │ │ │ ├── LongAllocator.kt
│ │ │ │ │ ├── ShortAllocator.kt
│ │ │ │ │ └── TemporaryAllocator.kt
│ │ │ │ │ ├── mat
│ │ │ │ │ └── mat4
│ │ │ │ │ │ └── Mat4Util.kt
│ │ │ │ │ ├── mesh
│ │ │ │ │ ├── AbstractVertexConsumer.kt
│ │ │ │ │ ├── GenericColorMesh.kt
│ │ │ │ │ ├── LineMesh.kt
│ │ │ │ │ ├── Mesh.kt
│ │ │ │ │ ├── MeshAttribute.kt
│ │ │ │ │ ├── MeshOrder.kt
│ │ │ │ │ ├── MeshStruct.kt
│ │ │ │ │ ├── PositionOnlyMeshStruct.kt
│ │ │ │ │ ├── SimpleTextureMesh.kt
│ │ │ │ │ └── uv
│ │ │ │ │ │ ├── PackedUV.kt
│ │ │ │ │ │ └── UnpackedUV.kt
│ │ │ │ │ └── vec
│ │ │ │ │ ├── vec2
│ │ │ │ │ ├── Vec2Util.kt
│ │ │ │ │ ├── Vec2dUtil.kt
│ │ │ │ │ └── Vec2iUtil.kt
│ │ │ │ │ ├── vec3
│ │ │ │ │ ├── Vec3Util.kt
│ │ │ │ │ ├── Vec3dUtil.kt
│ │ │ │ │ └── Vec3iUtil.kt
│ │ │ │ │ └── vec4
│ │ │ │ │ ├── Vec4Util.kt
│ │ │ │ │ └── Vec4iUtil.kt
│ │ │ │ ├── input
│ │ │ │ ├── camera
│ │ │ │ │ ├── MovementInputActions.kt
│ │ │ │ │ └── PlayerMovementInput.kt
│ │ │ │ └── interaction
│ │ │ │ │ ├── AttackHandler.kt
│ │ │ │ │ ├── DropHandler.kt
│ │ │ │ │ ├── HotbarHandler.kt
│ │ │ │ │ ├── InteractionManager.kt
│ │ │ │ │ ├── InteractionResults.kt
│ │ │ │ │ ├── InteractionUtil.kt
│ │ │ │ │ ├── ItemPickHandler.kt
│ │ │ │ │ ├── KeyHandler.kt
│ │ │ │ │ ├── SpectateHandler.kt
│ │ │ │ │ ├── breaking
│ │ │ │ │ ├── BreakHandler.kt
│ │ │ │ │ ├── creative
│ │ │ │ │ │ └── CreativeBreaker.kt
│ │ │ │ │ ├── executor
│ │ │ │ │ │ ├── BreakingExecutor.kt
│ │ │ │ │ │ ├── DirectExecutor.kt
│ │ │ │ │ │ ├── LegacyExecutor.kt
│ │ │ │ │ │ └── SequencedExecutor.kt
│ │ │ │ │ └── survival
│ │ │ │ │ │ ├── BlockBreakProductivity.kt
│ │ │ │ │ │ ├── BlockDigStatus.kt
│ │ │ │ │ │ └── SurvivalDigger.kt
│ │ │ │ │ └── use
│ │ │ │ │ ├── LongUseHandler.kt
│ │ │ │ │ ├── ShortUseHandler.kt
│ │ │ │ │ └── UseHandler.kt
│ │ │ │ ├── local
│ │ │ │ ├── LocalChunkManager.kt
│ │ │ │ ├── LocalConnection.kt
│ │ │ │ ├── generator
│ │ │ │ │ ├── ChunkGenerator.kt
│ │ │ │ │ ├── DebugGenerator.kt
│ │ │ │ │ ├── VoidGenerator.kt
│ │ │ │ │ └── flat
│ │ │ │ │ │ └── FlatGenerator.kt
│ │ │ │ └── storage
│ │ │ │ │ ├── DebugStorage.kt
│ │ │ │ │ ├── MemoryStorage.kt
│ │ │ │ │ └── WorldStorage.kt
│ │ │ │ ├── main
│ │ │ │ ├── BootTasks.kt
│ │ │ │ └── MinosoftBoot.kt
│ │ │ │ ├── modding
│ │ │ │ ├── EventPriorities.kt
│ │ │ │ ├── channels
│ │ │ │ │ └── DefaultPluginChannels.kt
│ │ │ │ ├── event
│ │ │ │ │ ├── events
│ │ │ │ │ │ ├── AsyncEvent.kt
│ │ │ │ │ │ ├── BlockBreakAnimationEvent.kt
│ │ │ │ │ │ ├── CancelableEvent.kt
│ │ │ │ │ │ ├── CollectItemAnimationEvent.kt
│ │ │ │ │ │ ├── DimensionChangeEvent.kt
│ │ │ │ │ │ ├── EntitySpectateEvent.kt
│ │ │ │ │ │ ├── Event.kt
│ │ │ │ │ │ ├── ExplosionEvent.kt
│ │ │ │ │ │ ├── FinishBootEvent.kt
│ │ │ │ │ │ ├── GameEventChangeEvent.kt
│ │ │ │ │ │ ├── KickEvent.kt
│ │ │ │ │ │ ├── OpenSignEditorEvent.kt
│ │ │ │ │ │ ├── PlaySoundEvent.kt
│ │ │ │ │ │ ├── ResourcePackRequestEvent.kt
│ │ │ │ │ │ ├── TabListEntryChangeEvent.kt
│ │ │ │ │ │ ├── bossbar
│ │ │ │ │ │ │ ├── BossbarAddEvent.kt
│ │ │ │ │ │ │ ├── BossbarEvent.kt
│ │ │ │ │ │ │ ├── BossbarFlagsSetEvent.kt
│ │ │ │ │ │ │ ├── BossbarRemoveEvent.kt
│ │ │ │ │ │ │ ├── BossbarStyleSetEvent.kt
│ │ │ │ │ │ │ ├── BossbarTitleSetEvent.kt
│ │ │ │ │ │ │ └── BossbarValueSetEvent.kt
│ │ │ │ │ │ ├── chat
│ │ │ │ │ │ │ ├── ChatMessageEvent.kt
│ │ │ │ │ │ │ └── ChatMessageSendEvent.kt
│ │ │ │ │ │ ├── container
│ │ │ │ │ │ │ ├── ContainerCloseEvent.kt
│ │ │ │ │ │ │ └── ContainerOpenEvent.kt
│ │ │ │ │ │ ├── loading
│ │ │ │ │ │ │ └── RegistriesLoadEvent.kt
│ │ │ │ │ │ ├── scoreboard
│ │ │ │ │ │ │ ├── ObjectivePositionSetEvent.kt
│ │ │ │ │ │ │ ├── ScoreTeamChangeEvent.kt
│ │ │ │ │ │ │ ├── ScoreboardObjectiveCreateEvent.kt
│ │ │ │ │ │ │ ├── ScoreboardObjectiveUpdateEvent.kt
│ │ │ │ │ │ │ ├── ScoreboardScorePutEvent.kt
│ │ │ │ │ │ │ ├── ScoreboardScoreRemoveEvent.kt
│ │ │ │ │ │ │ ├── ScoreboardTeamMemberEvent.kt
│ │ │ │ │ │ │ ├── ScoreboardTeamRemoveEvent.kt
│ │ │ │ │ │ │ └── team
│ │ │ │ │ │ │ │ ├── TeamCreateEvent.kt
│ │ │ │ │ │ │ │ ├── TeamMemberAddEvent.kt
│ │ │ │ │ │ │ │ ├── TeamMemberRemoveEvent.kt
│ │ │ │ │ │ │ │ └── TeamUpdateEvent.kt
│ │ │ │ │ │ ├── session
│ │ │ │ │ │ │ ├── SessionEvent.kt
│ │ │ │ │ │ │ ├── play
│ │ │ │ │ │ │ │ ├── PlaySessionCreateEvent.kt
│ │ │ │ │ │ │ │ └── PlaySessionEvent.kt
│ │ │ │ │ │ │ └── status
│ │ │ │ │ │ │ │ ├── StatusSessionCreateEvent.kt
│ │ │ │ │ │ │ │ └── StatusSessionEvent.kt
│ │ │ │ │ │ └── title
│ │ │ │ │ │ │ ├── TitleHideEvent.kt
│ │ │ │ │ │ │ ├── TitleResetEvent.kt
│ │ │ │ │ │ │ ├── TitleSetEvent.kt
│ │ │ │ │ │ │ ├── TitleSubtitleSetEvent.kt
│ │ │ │ │ │ │ └── TitleTimesSetEvent.kt
│ │ │ │ │ ├── listener
│ │ │ │ │ │ ├── CallbackEventListener.kt
│ │ │ │ │ │ ├── EventListener.kt
│ │ │ │ │ │ └── OneShotListener.kt
│ │ │ │ │ └── master
│ │ │ │ │ │ ├── AbstractEventMaster.kt
│ │ │ │ │ │ ├── EventMaster.kt
│ │ │ │ │ │ └── GlobalEventMaster.kt
│ │ │ │ └── loader
│ │ │ │ │ ├── LoaderUtil.kt
│ │ │ │ │ ├── ModList.kt
│ │ │ │ │ ├── ModLoader.kt
│ │ │ │ │ ├── ModLoadingUtil.kt
│ │ │ │ │ ├── error
│ │ │ │ │ ├── DuplicateModError.kt
│ │ │ │ │ ├── DuplicateProvidedError.kt
│ │ │ │ │ ├── MissingDependencyError.kt
│ │ │ │ │ ├── NoManifestError.kt
│ │ │ │ │ ├── NoModMainError.kt
│ │ │ │ │ └── NoObjectMainError.kt
│ │ │ │ │ ├── mod
│ │ │ │ │ ├── MinosoftMod.kt
│ │ │ │ │ ├── ModMain.kt
│ │ │ │ │ ├── logger
│ │ │ │ │ │ └── ModLogger.kt
│ │ │ │ │ ├── manifest
│ │ │ │ │ │ ├── ModManifest.kt
│ │ │ │ │ │ ├── load
│ │ │ │ │ │ │ └── LoadM.kt
│ │ │ │ │ │ └── packages
│ │ │ │ │ │ │ └── PackagesM.kt
│ │ │ │ │ └── source
│ │ │ │ │ │ ├── ArchiveSource.kt
│ │ │ │ │ │ ├── DirectorySource.kt
│ │ │ │ │ │ ├── ModSource.kt
│ │ │ │ │ │ └── SplitDirectorySource.kt
│ │ │ │ │ ├── parameters
│ │ │ │ │ ├── ModParameters.kt
│ │ │ │ │ └── additional
│ │ │ │ │ │ └── AdditionalFolders.kt
│ │ │ │ │ └── phase
│ │ │ │ │ ├── DefaultModPhases.kt
│ │ │ │ │ ├── LoadingPhase.kt
│ │ │ │ │ └── PhaseStates.kt
│ │ │ │ ├── physics
│ │ │ │ ├── EntityPositionInfo.kt
│ │ │ │ ├── ItemUsing.kt
│ │ │ │ ├── PhysicsConstants.kt
│ │ │ │ ├── VanillaMath.kt
│ │ │ │ ├── entities
│ │ │ │ │ ├── BasicPhysicsEntity.kt
│ │ │ │ │ ├── EntityPhysics.kt
│ │ │ │ │ ├── item
│ │ │ │ │ │ ├── FallingBlockPhysics.kt
│ │ │ │ │ │ ├── ItemEntityPhysics.kt
│ │ │ │ │ │ └── PrimedTNTPhysics.kt
│ │ │ │ │ ├── living
│ │ │ │ │ │ ├── LivingEntityPhysics.kt
│ │ │ │ │ │ ├── animal
│ │ │ │ │ │ │ └── PigPhysics.kt
│ │ │ │ │ │ └── player
│ │ │ │ │ │ │ ├── PlayerPhysics.kt
│ │ │ │ │ │ │ └── local
│ │ │ │ │ │ │ └── LocalPlayerPhysics.kt
│ │ │ │ │ └── vehicle
│ │ │ │ │ │ ├── boat
│ │ │ │ │ │ └── BoatPhysics.kt
│ │ │ │ │ │ └── horse
│ │ │ │ │ │ ├── AbstractHorsePhysics.kt
│ │ │ │ │ │ └── HorsePhysics.kt
│ │ │ │ ├── handlers
│ │ │ │ │ ├── general
│ │ │ │ │ │ └── AbstractEntityPhysics.kt
│ │ │ │ │ └── movement
│ │ │ │ │ │ ├── PowderSnowHandler.kt
│ │ │ │ │ │ ├── SneakAdjuster.kt
│ │ │ │ │ │ └── StepAdjuster.kt
│ │ │ │ ├── input
│ │ │ │ │ └── MovementInput.kt
│ │ │ │ ├── parts
│ │ │ │ │ ├── CollisionMovementPhysics.kt
│ │ │ │ │ ├── JumpPhysics.kt
│ │ │ │ │ ├── OutOfBlockPusher.kt
│ │ │ │ │ ├── climbing
│ │ │ │ │ │ ├── ClimbablePhysics.kt
│ │ │ │ │ │ └── ClimbingPhysics.kt
│ │ │ │ │ ├── elytra
│ │ │ │ │ │ └── ElytraPhysics.kt
│ │ │ │ │ └── input
│ │ │ │ │ │ └── InputPhysics.kt
│ │ │ │ ├── properties
│ │ │ │ │ └── SwimmingVehicle.kt
│ │ │ │ └── submersion
│ │ │ │ │ ├── FluidUpdate.kt
│ │ │ │ │ └── SubmersionState.kt
│ │ │ │ ├── properties
│ │ │ │ ├── MinosoftP.kt
│ │ │ │ ├── MinosoftProperties.kt
│ │ │ │ ├── MinosoftPropertiesLoader.kt
│ │ │ │ ├── general
│ │ │ │ │ └── GeneralP.kt
│ │ │ │ └── git
│ │ │ │ │ └── GitP.kt
│ │ │ │ ├── protocol
│ │ │ │ ├── AddressResolver.kt
│ │ │ │ ├── PlayerPublicKey.kt
│ │ │ │ ├── ProtocolUtil.kt
│ │ │ │ ├── ServerConnection.kt
│ │ │ │ ├── address
│ │ │ │ │ └── ServerAddress.kt
│ │ │ │ ├── network
│ │ │ │ │ ├── NetworkConnection.kt
│ │ │ │ │ ├── network
│ │ │ │ │ │ └── client
│ │ │ │ │ │ │ ├── ClientNetwork.kt
│ │ │ │ │ │ │ └── netty
│ │ │ │ │ │ │ ├── NettyClient.kt
│ │ │ │ │ │ │ ├── NetworkPipeline.kt
│ │ │ │ │ │ │ ├── exceptions
│ │ │ │ │ │ │ ├── NetworkException.kt
│ │ │ │ │ │ │ ├── PacketBufferUnderflowException.kt
│ │ │ │ │ │ │ ├── PacketHandleException.kt
│ │ │ │ │ │ │ ├── PacketNotAvailableException.kt
│ │ │ │ │ │ │ ├── PacketNotFoundException.kt
│ │ │ │ │ │ │ ├── PacketReadException.kt
│ │ │ │ │ │ │ ├── WrongSessionTypeException.kt
│ │ │ │ │ │ │ ├── ciritical
│ │ │ │ │ │ │ │ ├── CriticalNetworkException.kt
│ │ │ │ │ │ │ │ ├── PacketTooLongException.kt
│ │ │ │ │ │ │ │ └── UnknownPacketIdException.kt
│ │ │ │ │ │ │ ├── implementation
│ │ │ │ │ │ │ │ └── PacketNotImplementedException.kt
│ │ │ │ │ │ │ └── unknown
│ │ │ │ │ │ │ │ └── UnknownPacketException.kt
│ │ │ │ │ │ │ ├── natives
│ │ │ │ │ │ │ ├── EpollNatives.kt
│ │ │ │ │ │ │ ├── NioNatives.kt
│ │ │ │ │ │ │ └── TransportNatives.kt
│ │ │ │ │ │ │ ├── packet
│ │ │ │ │ │ │ ├── receiver
│ │ │ │ │ │ │ │ ├── C2SPacketListener.kt
│ │ │ │ │ │ │ │ ├── PacketReceiver.kt
│ │ │ │ │ │ │ │ └── QueuedS2CP.kt
│ │ │ │ │ │ │ └── sender
│ │ │ │ │ │ │ │ ├── PacketSender.kt
│ │ │ │ │ │ │ │ └── S2CPacketListener.kt
│ │ │ │ │ │ │ └── pipeline
│ │ │ │ │ │ │ ├── ClientPacketHandler.kt
│ │ │ │ │ │ │ ├── compression
│ │ │ │ │ │ │ ├── PacketDeflater.kt
│ │ │ │ │ │ │ ├── PacketInflater.kt
│ │ │ │ │ │ │ └── exception
│ │ │ │ │ │ │ │ ├── InflaterException.kt
│ │ │ │ │ │ │ │ └── SizeMismatchInflaterException.kt
│ │ │ │ │ │ │ ├── encoding
│ │ │ │ │ │ │ ├── PacketDecoder.kt
│ │ │ │ │ │ │ └── PacketEncoder.kt
│ │ │ │ │ │ │ ├── encryption
│ │ │ │ │ │ │ ├── PacketDecryptor.kt
│ │ │ │ │ │ │ └── PacketEncryptor.kt
│ │ │ │ │ │ │ ├── exception
│ │ │ │ │ │ │ ├── InExceptionHandler.kt
│ │ │ │ │ │ │ └── OutExceptionHandler.kt
│ │ │ │ │ │ │ └── length
│ │ │ │ │ │ │ ├── LengthDecoder.kt
│ │ │ │ │ │ │ └── LengthEncoder.kt
│ │ │ │ │ └── session
│ │ │ │ │ │ ├── Session.kt
│ │ │ │ │ │ ├── play
│ │ │ │ │ │ ├── PlaySession.kt
│ │ │ │ │ │ ├── PlaySessionStates.kt
│ │ │ │ │ │ ├── ServerInfo.kt
│ │ │ │ │ │ ├── channel
│ │ │ │ │ │ │ ├── ChannelManager.kt
│ │ │ │ │ │ │ ├── DefaultChannelHandlers.kt
│ │ │ │ │ │ │ ├── SessionChannelHandler.kt
│ │ │ │ │ │ │ ├── login
│ │ │ │ │ │ │ │ ├── LoginChannelHandler.kt
│ │ │ │ │ │ │ │ └── LoginChannelManager.kt
│ │ │ │ │ │ │ ├── play
│ │ │ │ │ │ │ │ ├── PlayChannelHandler.kt
│ │ │ │ │ │ │ │ └── PlayChannelManager.kt
│ │ │ │ │ │ │ └── vanila
│ │ │ │ │ │ │ │ └── BrandHandler.kt
│ │ │ │ │ │ ├── settings
│ │ │ │ │ │ │ └── ClientSettingsManager.kt
│ │ │ │ │ │ ├── tick
│ │ │ │ │ │ │ └── SessionTicker.kt
│ │ │ │ │ │ └── util
│ │ │ │ │ │ │ ├── ChunkReceiver.kt
│ │ │ │ │ │ │ └── SessionUtil.kt
│ │ │ │ │ │ └── status
│ │ │ │ │ │ ├── StatusSession.kt
│ │ │ │ │ │ ├── StatusSessionStates.kt
│ │ │ │ │ │ └── TimeoutHandler.kt
│ │ │ │ ├── packets
│ │ │ │ │ ├── c2s
│ │ │ │ │ │ ├── C2SPacket.kt
│ │ │ │ │ │ ├── PlayC2SPacket.kt
│ │ │ │ │ │ ├── common
│ │ │ │ │ │ │ ├── ChannelC2SP.kt
│ │ │ │ │ │ │ ├── HeartbeatC2SP.kt
│ │ │ │ │ │ │ ├── PongC2SP.kt
│ │ │ │ │ │ │ ├── ResourcepackC2SP.kt
│ │ │ │ │ │ │ └── SettingsC2SP.kt
│ │ │ │ │ │ ├── configuration
│ │ │ │ │ │ │ └── ReadyC2SP.kt
│ │ │ │ │ │ ├── handshake
│ │ │ │ │ │ │ └── HandshakeC2SP.kt
│ │ │ │ │ │ ├── login
│ │ │ │ │ │ │ ├── ChannelC2SP.kt
│ │ │ │ │ │ │ ├── ConfigureC2SP.kt
│ │ │ │ │ │ │ ├── EncryptionC2SP.kt
│ │ │ │ │ │ │ └── StartC2SP.kt
│ │ │ │ │ │ ├── play
│ │ │ │ │ │ │ ├── NextChunkBatchC2SP.kt
│ │ │ │ │ │ │ ├── PingC2SP.kt
│ │ │ │ │ │ │ ├── ReconfigureC2SP.kt
│ │ │ │ │ │ │ ├── SessionDataC2SP.kt
│ │ │ │ │ │ │ ├── TradeC2SP.kt
│ │ │ │ │ │ │ ├── advancement
│ │ │ │ │ │ │ │ └── tab
│ │ │ │ │ │ │ │ │ ├── AdvancementCloseTabC2SP.kt
│ │ │ │ │ │ │ │ │ ├── AdvancementOpenTabC2SP.kt
│ │ │ │ │ │ │ │ │ └── AdvancementTabC2SP.kt
│ │ │ │ │ │ │ ├── block
│ │ │ │ │ │ │ │ ├── AnvilItemNameC2SP.kt
│ │ │ │ │ │ │ │ ├── BeaconEffectC2SP.kt
│ │ │ │ │ │ │ │ ├── BlockInteractC2SP.kt
│ │ │ │ │ │ │ │ ├── BlockNbtC2SP.kt
│ │ │ │ │ │ │ │ ├── CommandBlockC2SP.kt
│ │ │ │ │ │ │ │ ├── GenerateStructureC2SP.kt
│ │ │ │ │ │ │ │ ├── JigsawBlockC2SP.kt
│ │ │ │ │ │ │ │ ├── MinecartCommandBlockC2SP.kt
│ │ │ │ │ │ │ │ ├── SignTextC2SP.kt
│ │ │ │ │ │ │ │ └── StructureBlockC2SP.kt
│ │ │ │ │ │ │ ├── chat
│ │ │ │ │ │ │ │ ├── ChatMessageC2SP.kt
│ │ │ │ │ │ │ │ ├── ChatPreviewC2SP.kt
│ │ │ │ │ │ │ │ ├── CommandC2SP.kt
│ │ │ │ │ │ │ │ ├── CommandSuggestionsC2SP.kt
│ │ │ │ │ │ │ │ ├── LegacyMessageAcknowledgementC2SP.kt
│ │ │ │ │ │ │ │ ├── MessageAcknowledgementC2SP.kt
│ │ │ │ │ │ │ │ └── SignedChatMessageC2SP.kt
│ │ │ │ │ │ │ ├── container
│ │ │ │ │ │ │ │ ├── CloseContainerC2SP.kt
│ │ │ │ │ │ │ │ ├── ContainerActionC2SP.kt
│ │ │ │ │ │ │ │ ├── ContainerButtonC2SP.kt
│ │ │ │ │ │ │ │ └── ContainerClickC2SP.kt
│ │ │ │ │ │ │ ├── difficulty
│ │ │ │ │ │ │ │ ├── DifficultyC2SP.kt
│ │ │ │ │ │ │ │ └── LockDifficultyC2SP.kt
│ │ │ │ │ │ │ ├── entity
│ │ │ │ │ │ │ │ ├── EntityActionC2SP.kt
│ │ │ │ │ │ │ │ ├── EntityNbtC2SP.kt
│ │ │ │ │ │ │ │ ├── EntitySpectateC2SP.kt
│ │ │ │ │ │ │ │ ├── interact
│ │ │ │ │ │ │ │ │ ├── EntityAttackC2SP.kt
│ │ │ │ │ │ │ │ │ ├── EntityEmptyInteractC2SP.kt
│ │ │ │ │ │ │ │ │ ├── EntityInteractC2SP.kt
│ │ │ │ │ │ │ │ │ └── EntityInteractPositionC2SP.kt
│ │ │ │ │ │ │ │ ├── move
│ │ │ │ │ │ │ │ │ ├── ConfirmTeleportC2SP.kt
│ │ │ │ │ │ │ │ │ ├── GroundChangeC2SP.kt
│ │ │ │ │ │ │ │ │ ├── PositionC2SP.kt
│ │ │ │ │ │ │ │ │ ├── PositionRotationC2SP.kt
│ │ │ │ │ │ │ │ │ ├── RotationC2SP.kt
│ │ │ │ │ │ │ │ │ └── vehicle
│ │ │ │ │ │ │ │ │ │ ├── MoveVehicleC2SP.kt
│ │ │ │ │ │ │ │ │ │ ├── SteerBoatC2SP.kt
│ │ │ │ │ │ │ │ │ │ └── VehicleInputC2SP.kt
│ │ │ │ │ │ │ │ └── player
│ │ │ │ │ │ │ │ │ ├── ClientActionC2SP.kt
│ │ │ │ │ │ │ │ │ ├── HotbarSlotC2SP.kt
│ │ │ │ │ │ │ │ │ ├── PlayerActionC2SP.kt
│ │ │ │ │ │ │ │ │ ├── SwingArmC2SP.kt
│ │ │ │ │ │ │ │ │ └── ToggleFlyC2SP.kt
│ │ │ │ │ │ │ ├── item
│ │ │ │ │ │ │ │ ├── BookC2SP.kt
│ │ │ │ │ │ │ │ ├── ItemPickC2SP.kt
│ │ │ │ │ │ │ │ ├── ItemStackCreateC2SP.kt
│ │ │ │ │ │ │ │ └── UseItemC2SP.kt
│ │ │ │ │ │ │ └── recipe
│ │ │ │ │ │ │ │ ├── CraftingRecipeC2SP.kt
│ │ │ │ │ │ │ │ ├── DisplayedRecipeC2SP.kt
│ │ │ │ │ │ │ │ ├── RecipeBookC2SP.kt
│ │ │ │ │ │ │ │ └── book
│ │ │ │ │ │ │ │ ├── DisplayRecipeC2SP.kt
│ │ │ │ │ │ │ │ ├── RecipeBookStateC2SP.kt
│ │ │ │ │ │ │ │ └── RecipeBookStatesC2SP.kt
│ │ │ │ │ │ └── status
│ │ │ │ │ │ │ ├── PingC2SP.kt
│ │ │ │ │ │ │ └── StatusRequestC2SP.kt
│ │ │ │ │ ├── registry
│ │ │ │ │ │ ├── DefaultPackets.kt
│ │ │ │ │ │ ├── PacketExtraHandler.kt
│ │ │ │ │ │ ├── PacketMapping.kt
│ │ │ │ │ │ ├── PacketRegistry.kt
│ │ │ │ │ │ ├── PacketType.kt
│ │ │ │ │ │ └── factory
│ │ │ │ │ │ │ ├── PacketFactory.kt
│ │ │ │ │ │ │ └── PlayPacketFactory.kt
│ │ │ │ │ ├── s2c
│ │ │ │ │ │ ├── PlayS2CPacket.kt
│ │ │ │ │ │ ├── S2CPacket.kt
│ │ │ │ │ │ ├── StatusS2CPacket.kt
│ │ │ │ │ │ ├── common
│ │ │ │ │ │ │ ├── ChannelS2CP.kt
│ │ │ │ │ │ │ ├── CompressionS2CP.kt
│ │ │ │ │ │ │ ├── FeaturesS2CP.kt
│ │ │ │ │ │ │ ├── HeartbeatS2CP.kt
│ │ │ │ │ │ │ ├── KickS2CP.kt
│ │ │ │ │ │ │ ├── PingS2CP.kt
│ │ │ │ │ │ │ ├── TagsS2CP.kt
│ │ │ │ │ │ │ └── resourcepack
│ │ │ │ │ │ │ │ ├── RemoveResourcepackS2CP.kt
│ │ │ │ │ │ │ │ └── ResourcepackS2CP.kt
│ │ │ │ │ │ ├── configuration
│ │ │ │ │ │ │ ├── ReadyS2CP.kt
│ │ │ │ │ │ │ └── RegistriesS2CP.kt
│ │ │ │ │ │ ├── login
│ │ │ │ │ │ │ ├── ChannelS2CP.kt
│ │ │ │ │ │ │ ├── EncryptionS2CP.kt
│ │ │ │ │ │ │ └── SuccessS2CP.kt
│ │ │ │ │ │ ├── play
│ │ │ │ │ │ │ ├── BundleS2CP.kt
│ │ │ │ │ │ │ ├── GameEventS2CP.kt
│ │ │ │ │ │ │ ├── InitializeS2CP.kt
│ │ │ │ │ │ │ ├── NbtResponseS2CP.kt
│ │ │ │ │ │ │ ├── PlayStatusS2CP.kt
│ │ │ │ │ │ │ ├── PongS2CP.kt
│ │ │ │ │ │ │ ├── ReconfigureS2CP.kt
│ │ │ │ │ │ │ ├── RespawnS2CP.kt
│ │ │ │ │ │ │ ├── StatisticsS2CP.kt
│ │ │ │ │ │ │ ├── advancement
│ │ │ │ │ │ │ │ ├── AdvancementTabS2CP.kt
│ │ │ │ │ │ │ │ └── AdvancementsS2CP.kt
│ │ │ │ │ │ │ ├── block
│ │ │ │ │ │ │ │ ├── BlockActionS2CP.kt
│ │ │ │ │ │ │ │ ├── BlockBreakAnimationS2CP.kt
│ │ │ │ │ │ │ │ ├── BlockBreakS2CP.kt
│ │ │ │ │ │ │ │ ├── BlockDataS2CP.kt
│ │ │ │ │ │ │ │ ├── BlockS2CP.kt
│ │ │ │ │ │ │ │ ├── BlocksS2CP.kt
│ │ │ │ │ │ │ │ ├── LegacyBlockBreakS2CP.kt
│ │ │ │ │ │ │ │ └── chunk
│ │ │ │ │ │ │ │ │ ├── ChunkAction.kt
│ │ │ │ │ │ │ │ │ ├── ChunkBiomeS2CP.kt
│ │ │ │ │ │ │ │ │ ├── ChunkCenterS2CP.kt
│ │ │ │ │ │ │ │ │ ├── ChunkS2CP.kt
│ │ │ │ │ │ │ │ │ ├── ChunkUtil.kt
│ │ │ │ │ │ │ │ │ ├── ChunksS2CP.kt
│ │ │ │ │ │ │ │ │ ├── SimulationDistanceS2CP.kt
│ │ │ │ │ │ │ │ │ ├── UnloadChunkS2CP.kt
│ │ │ │ │ │ │ │ │ ├── ViewDistanceS2CP.kt
│ │ │ │ │ │ │ │ │ ├── batch
│ │ │ │ │ │ │ │ │ ├── ChunkBatchDoneS2CP.kt
│ │ │ │ │ │ │ │ │ └── ChunkBatchStartS2CP.kt
│ │ │ │ │ │ │ │ │ └── light
│ │ │ │ │ │ │ │ │ ├── ChunkLightS2CP.kt
│ │ │ │ │ │ │ │ │ └── LightUtil.kt
│ │ │ │ │ │ │ ├── border
│ │ │ │ │ │ │ │ ├── CenterWorldBorderS2CP.kt
│ │ │ │ │ │ │ │ ├── InitializeWorldBorderS2CP.kt
│ │ │ │ │ │ │ │ ├── InterpolateWorldBorderS2CP.kt
│ │ │ │ │ │ │ │ ├── SizeWorldBorderS2CP.kt
│ │ │ │ │ │ │ │ ├── WarnBlocksWorldBorderS2CP.kt
│ │ │ │ │ │ │ │ ├── WarnTimeWorldBorderS2CP.kt
│ │ │ │ │ │ │ │ ├── WorldBorderS2CF.kt
│ │ │ │ │ │ │ │ └── WorldBorderS2CP.kt
│ │ │ │ │ │ │ ├── bossbar
│ │ │ │ │ │ │ │ ├── AddBossbarS2CP.kt
│ │ │ │ │ │ │ │ ├── BossbarS2CF.kt
│ │ │ │ │ │ │ │ ├── BossbarS2CP.kt
│ │ │ │ │ │ │ │ ├── FlagsBossbarS2CP.kt
│ │ │ │ │ │ │ │ ├── RemoveBossbarS2CP.kt
│ │ │ │ │ │ │ │ ├── StyleBossbarS2CP.kt
│ │ │ │ │ │ │ │ ├── TitleBossbarS2CP.kt
│ │ │ │ │ │ │ │ └── ValueBossbarS2CP.kt
│ │ │ │ │ │ │ ├── chat
│ │ │ │ │ │ │ │ ├── ChatMessageS2CP.kt
│ │ │ │ │ │ │ │ ├── ChatPreviewS2CP.kt
│ │ │ │ │ │ │ │ ├── ChatSuggestionsS2CP.kt
│ │ │ │ │ │ │ │ ├── CommandSuggestionsS2CP.kt
│ │ │ │ │ │ │ │ ├── CommandsS2CP.kt
│ │ │ │ │ │ │ │ ├── HideMessageS2CP.kt
│ │ │ │ │ │ │ │ ├── MessageHeaderS2CP.kt
│ │ │ │ │ │ │ │ ├── SignedChatMessageS2CP.kt
│ │ │ │ │ │ │ │ ├── TemporaryChatPreviewS2CP.kt
│ │ │ │ │ │ │ │ └── UnsignedChatMessageS2CP.kt
│ │ │ │ │ │ │ ├── combat
│ │ │ │ │ │ │ │ ├── CombatEventS2CF.kt
│ │ │ │ │ │ │ │ ├── CombatEventS2CP.kt
│ │ │ │ │ │ │ │ ├── EndCombatEventS2CP.kt
│ │ │ │ │ │ │ │ ├── EnterCombatEventS2CP.kt
│ │ │ │ │ │ │ │ └── KillCombatEventS2CP.kt
│ │ │ │ │ │ │ ├── container
│ │ │ │ │ │ │ │ ├── CloseContainerS2CP.kt
│ │ │ │ │ │ │ │ ├── ContainerActionS2CP.kt
│ │ │ │ │ │ │ │ ├── ContainerItemS2CP.kt
│ │ │ │ │ │ │ │ ├── ContainerItemsS2CP.kt
│ │ │ │ │ │ │ │ ├── ContainerPropertiesS2CP.kt
│ │ │ │ │ │ │ │ ├── CrafterSlotLockS2CP.kt
│ │ │ │ │ │ │ │ ├── OpenContainerS2CP.kt
│ │ │ │ │ │ │ │ └── OpenEntityContainerS2CP.kt
│ │ │ │ │ │ │ ├── entity
│ │ │ │ │ │ │ │ ├── DamageTiltS2CP.kt
│ │ │ │ │ │ │ │ ├── EntityAnimationS2CP.kt
│ │ │ │ │ │ │ │ ├── EntityAttributesS2CP.kt
│ │ │ │ │ │ │ │ ├── EntityCollectS2CP.kt
│ │ │ │ │ │ │ │ ├── EntityDamageS2CP.kt
│ │ │ │ │ │ │ │ ├── EntityDataS2CP.kt
│ │ │ │ │ │ │ │ ├── EntityEquipmentS2CP.kt
│ │ │ │ │ │ │ │ ├── EntityEventS2CP.kt
│ │ │ │ │ │ │ │ ├── EntitySleepS2CP.kt
│ │ │ │ │ │ │ │ ├── effect
│ │ │ │ │ │ │ │ │ ├── EntityEffectS2CP.kt
│ │ │ │ │ │ │ │ │ └── EntityRemoveEffectS2CP.kt
│ │ │ │ │ │ │ │ ├── move
│ │ │ │ │ │ │ │ │ ├── EmptyMoveS2CP.kt
│ │ │ │ │ │ │ │ │ ├── HeadRotationS2CP.kt
│ │ │ │ │ │ │ │ │ ├── MoveVehicleS2CP.kt
│ │ │ │ │ │ │ │ │ ├── MovementRotationS2CP.kt
│ │ │ │ │ │ │ │ │ ├── PlayerFaceS2CP.kt
│ │ │ │ │ │ │ │ │ ├── PositionRotationS2CP.kt
│ │ │ │ │ │ │ │ │ ├── RelativeMoveS2CP.kt
│ │ │ │ │ │ │ │ │ ├── RotationS2CP.kt
│ │ │ │ │ │ │ │ │ ├── TeleportS2CP.kt
│ │ │ │ │ │ │ │ │ └── VelocityS2CP.kt
│ │ │ │ │ │ │ │ ├── passenger
│ │ │ │ │ │ │ │ │ ├── EntityAttachS2CP.kt
│ │ │ │ │ │ │ │ │ └── EntityPassengerS2CP.kt
│ │ │ │ │ │ │ │ ├── player
│ │ │ │ │ │ │ │ │ ├── CameraS2CP.kt
│ │ │ │ │ │ │ │ │ ├── ExperienceS2CP.kt
│ │ │ │ │ │ │ │ │ ├── HealthS2CP.kt
│ │ │ │ │ │ │ │ │ ├── HotbarSlotS2CP.kt
│ │ │ │ │ │ │ │ │ └── PlayerAbilitiesS2CP.kt
│ │ │ │ │ │ │ │ └── spawn
│ │ │ │ │ │ │ │ │ ├── EntityDestroyS2CP.kt
│ │ │ │ │ │ │ │ │ ├── EntityExperienceOrbS2CP.kt
│ │ │ │ │ │ │ │ │ ├── EntityMobSpawnS2CP.kt
│ │ │ │ │ │ │ │ │ ├── EntityObjectSpawnS2CP.kt
│ │ │ │ │ │ │ │ │ ├── EntityPaintingS2CP.kt
│ │ │ │ │ │ │ │ │ ├── EntityPlayerS2CP.kt
│ │ │ │ │ │ │ │ │ └── GlobalEntitySpawnS2CP.kt
│ │ │ │ │ │ │ ├── item
│ │ │ │ │ │ │ │ ├── BookS2CP.kt
│ │ │ │ │ │ │ │ ├── CompassPositionS2CP.kt
│ │ │ │ │ │ │ │ ├── CraftingRecipeS2CP.kt
│ │ │ │ │ │ │ │ └── ItemCooldownS2CP.kt
│ │ │ │ │ │ │ ├── map
│ │ │ │ │ │ │ │ ├── MapS2CP.kt
│ │ │ │ │ │ │ │ └── legacy
│ │ │ │ │ │ │ │ │ ├── DataLegacyMapS2CP.kt
│ │ │ │ │ │ │ │ │ ├── LegacyMapS2CF.kt
│ │ │ │ │ │ │ │ │ ├── LegacyMapS2CP.kt
│ │ │ │ │ │ │ │ │ ├── PinsLegacyMapS2CP.kt
│ │ │ │ │ │ │ │ │ └── ScaleLegacyMapS2CP.kt
│ │ │ │ │ │ │ ├── recipes
│ │ │ │ │ │ │ │ ├── RecipesS2CP.kt
│ │ │ │ │ │ │ │ └── UnlockRecipesS2CP.kt
│ │ │ │ │ │ │ ├── scoreboard
│ │ │ │ │ │ │ │ ├── ObjectivePositionS2CP.kt
│ │ │ │ │ │ │ │ ├── format
│ │ │ │ │ │ │ │ │ ├── BlankFormat.kt
│ │ │ │ │ │ │ │ │ ├── FixedFormat.kt
│ │ │ │ │ │ │ │ │ ├── NumberFormat.kt
│ │ │ │ │ │ │ │ │ ├── NumberFormats.kt
│ │ │ │ │ │ │ │ │ └── StyledFormat.kt
│ │ │ │ │ │ │ │ ├── objective
│ │ │ │ │ │ │ │ │ ├── CreateObjectiveS2CP.kt
│ │ │ │ │ │ │ │ │ ├── ObjectiveS2CF.kt
│ │ │ │ │ │ │ │ │ ├── ObjectiveS2CP.kt
│ │ │ │ │ │ │ │ │ ├── RemoveObjectiveS2CP.kt
│ │ │ │ │ │ │ │ │ └── UpdateObjectiveS2CP.kt
│ │ │ │ │ │ │ │ ├── score
│ │ │ │ │ │ │ │ │ ├── PutScoreboardScoreS2CP.kt
│ │ │ │ │ │ │ │ │ ├── RemoveScoreboardScoreS2CP.kt
│ │ │ │ │ │ │ │ │ ├── ScoreboardScoreS2CF.kt
│ │ │ │ │ │ │ │ │ └── ScoreboardScoreS2CP.kt
│ │ │ │ │ │ │ │ └── teams
│ │ │ │ │ │ │ │ │ ├── AddTeamMemberS2CP.kt
│ │ │ │ │ │ │ │ │ ├── CreateTeamS2CP.kt
│ │ │ │ │ │ │ │ │ ├── RemoveTeamMemberS2CP.kt
│ │ │ │ │ │ │ │ │ ├── RemoveTeamS2CP.kt
│ │ │ │ │ │ │ │ │ ├── TeamsS2CF.kt
│ │ │ │ │ │ │ │ │ ├── TeamsS2CP.kt
│ │ │ │ │ │ │ │ │ └── UpdateTeamS2CP.kt
│ │ │ │ │ │ │ ├── sign
│ │ │ │ │ │ │ │ ├── SignEditorS2CP.kt
│ │ │ │ │ │ │ │ └── SignTextS2CP.kt
│ │ │ │ │ │ │ ├── sound
│ │ │ │ │ │ │ │ ├── EntitySoundS2CP.kt
│ │ │ │ │ │ │ │ ├── NamedSoundS2CP.kt
│ │ │ │ │ │ │ │ ├── PlayedSound.kt
│ │ │ │ │ │ │ │ ├── SoundEventS2CP.kt
│ │ │ │ │ │ │ │ └── StopSoundS2CP.kt
│ │ │ │ │ │ │ ├── tab
│ │ │ │ │ │ │ │ ├── LegacyTabListS2CP.kt
│ │ │ │ │ │ │ │ ├── TabListRemoveS2CP.kt
│ │ │ │ │ │ │ │ ├── TabListS2CP.kt
│ │ │ │ │ │ │ │ ├── TabListTextS2CP.kt
│ │ │ │ │ │ │ │ └── actions
│ │ │ │ │ │ │ │ │ ├── AbstractAction.kt
│ │ │ │ │ │ │ │ │ ├── Actions.kt
│ │ │ │ │ │ │ │ │ ├── ChatAction.kt
│ │ │ │ │ │ │ │ │ ├── DisplayNameAction.kt
│ │ │ │ │ │ │ │ │ ├── GamemodeAction.kt
│ │ │ │ │ │ │ │ │ ├── InitializeAction.kt
│ │ │ │ │ │ │ │ │ ├── LatencyAction.kt
│ │ │ │ │ │ │ │ │ ├── LegacyActions.kt
│ │ │ │ │ │ │ │ │ ├── ListedAction.kt
│ │ │ │ │ │ │ │ │ └── RemoveAction.kt
│ │ │ │ │ │ │ ├── tick
│ │ │ │ │ │ │ │ ├── TickRateS2CP.kt
│ │ │ │ │ │ │ │ └── TickStepS2CP.kt
│ │ │ │ │ │ │ ├── title
│ │ │ │ │ │ │ │ ├── ClearTitleS2CF.kt
│ │ │ │ │ │ │ │ ├── HideTitleS2CP.kt
│ │ │ │ │ │ │ │ ├── HotbarTextS2CP.kt
│ │ │ │ │ │ │ │ ├── ResetTitleS2CP.kt
│ │ │ │ │ │ │ │ ├── SubtitleS2CP.kt
│ │ │ │ │ │ │ │ ├── TitleS2CF.kt
│ │ │ │ │ │ │ │ ├── TitleS2CP.kt
│ │ │ │ │ │ │ │ ├── TitleTextS2CP.kt
│ │ │ │ │ │ │ │ └── TitleTimesS2CP.kt
│ │ │ │ │ │ │ └── world
│ │ │ │ │ │ │ │ ├── DifficultyS2CP.kt
│ │ │ │ │ │ │ │ ├── ExplosionS2CP.kt
│ │ │ │ │ │ │ │ ├── ParticleS2CP.kt
│ │ │ │ │ │ │ │ ├── TimeS2CP.kt
│ │ │ │ │ │ │ │ ├── VibrationS2CP.kt
│ │ │ │ │ │ │ │ ├── VillagerTradesS2CP.kt
│ │ │ │ │ │ │ │ └── WorldEventS2CP.kt
│ │ │ │ │ │ └── status
│ │ │ │ │ │ │ ├── PongS2CP.kt
│ │ │ │ │ │ │ └── StatusS2CP.kt
│ │ │ │ │ └── types
│ │ │ │ │ │ ├── HandleablePacket.kt
│ │ │ │ │ │ └── Packet.kt
│ │ │ │ ├── protocol
│ │ │ │ │ ├── ChatMessageSender.kt
│ │ │ │ │ ├── DefaultPacketMapping.kt
│ │ │ │ │ ├── LANServerListener.kt
│ │ │ │ │ ├── PacketDirections.kt
│ │ │ │ │ ├── ProtocolDefinition.java
│ │ │ │ │ ├── ProtocolStates.kt
│ │ │ │ │ ├── ProtocolVersions.kt
│ │ │ │ │ ├── buffers
│ │ │ │ │ │ ├── InByteBuffer.kt
│ │ │ │ │ │ ├── OutByteBuffer.kt
│ │ │ │ │ │ └── play
│ │ │ │ │ │ │ ├── PlayInByteBuffer.kt
│ │ │ │ │ │ │ └── PlayOutByteBuffer.kt
│ │ │ │ │ └── encryption
│ │ │ │ │ │ ├── CryptManager.kt
│ │ │ │ │ │ └── EncryptionSignatureData.kt
│ │ │ │ ├── status
│ │ │ │ │ ├── ServerStatus.kt
│ │ │ │ │ ├── StatusPing.kt
│ │ │ │ │ └── StatusPong.kt
│ │ │ │ └── versions
│ │ │ │ │ ├── Version.kt
│ │ │ │ │ ├── VersionIndex.kt
│ │ │ │ │ ├── VersionLoader.kt
│ │ │ │ │ ├── VersionTypes.kt
│ │ │ │ │ └── Versions.kt
│ │ │ │ ├── recipes
│ │ │ │ ├── Ingredient.kt
│ │ │ │ ├── OtherRecipe.kt
│ │ │ │ ├── Recipe.kt
│ │ │ │ ├── RecipeCategories.kt
│ │ │ │ ├── RecipeFactories.kt
│ │ │ │ ├── RecipeFactory.kt
│ │ │ │ ├── RecipeRegistry.kt
│ │ │ │ ├── StoneCuttingRecipe.kt
│ │ │ │ ├── crafting
│ │ │ │ │ ├── CraftingRecipe.kt
│ │ │ │ │ ├── ShapedRecipe.kt
│ │ │ │ │ └── ShapelessRecipe.kt
│ │ │ │ ├── heat
│ │ │ │ │ ├── BlastingRecipe.kt
│ │ │ │ │ ├── CampfireRecipe.kt
│ │ │ │ │ ├── HeatRecipe.kt
│ │ │ │ │ ├── HeatRecipeFactory.kt
│ │ │ │ │ ├── SmeltingRecipe.kt
│ │ │ │ │ └── SmokingRecipe.kt
│ │ │ │ ├── smithing
│ │ │ │ │ ├── AbstractSmithingRecipe.kt
│ │ │ │ │ ├── SmithingRecipe.kt
│ │ │ │ │ ├── SmithingTransformRecipe.kt
│ │ │ │ │ └── SmithingTrimRecipe.kt
│ │ │ │ └── special
│ │ │ │ │ ├── BookCloningRecipe.kt
│ │ │ │ │ ├── DecoratedPotRecipe.kt
│ │ │ │ │ ├── RepairItemRecipe.kt
│ │ │ │ │ ├── SpecialRecipe.kt
│ │ │ │ │ ├── SpecialRecipeFactory.kt
│ │ │ │ │ ├── SuspiciousStewRecipe.kt
│ │ │ │ │ ├── TippedArrowRecipe.kt
│ │ │ │ │ ├── banner
│ │ │ │ │ ├── BannerDuplicateRecipe.kt
│ │ │ │ │ └── ShieldDecorationRecipe.kt
│ │ │ │ │ ├── color
│ │ │ │ │ ├── ArmorDyeRecipe.kt
│ │ │ │ │ └── ShulkerBoxColoringRecipe.kt
│ │ │ │ │ ├── firework
│ │ │ │ │ ├── FireworkRocketRecipe.kt
│ │ │ │ │ ├── FireworkStarFadeRecipe.kt
│ │ │ │ │ └── FireworkStarRecipe.kt
│ │ │ │ │ └── map
│ │ │ │ │ ├── MapCloningRecipe.kt
│ │ │ │ │ └── MapExtendingRecipe.kt
│ │ │ │ ├── tags
│ │ │ │ ├── MinecraftTagTypes.kt
│ │ │ │ ├── Tag.kt
│ │ │ │ ├── TagList.kt
│ │ │ │ ├── TagManager.kt
│ │ │ │ ├── block
│ │ │ │ │ └── MinecraftBlockTags.kt
│ │ │ │ ├── entity
│ │ │ │ │ └── MinecraftEntityTags.kt
│ │ │ │ ├── fluid
│ │ │ │ │ └── MinecraftFluidTags.kt
│ │ │ │ └── item
│ │ │ │ │ └── MinecraftItemTags.kt
│ │ │ │ ├── terminal
│ │ │ │ ├── AutoConnect.kt
│ │ │ │ ├── CommandLineArguments.kt
│ │ │ │ ├── CommandUtil.kt
│ │ │ │ ├── Commands.kt
│ │ │ │ ├── RunConfiguration.kt
│ │ │ │ ├── cli
│ │ │ │ │ └── CLI.kt
│ │ │ │ └── commands
│ │ │ │ │ ├── AboutCommand.kt
│ │ │ │ │ ├── AccountManageCommand.kt
│ │ │ │ │ ├── Command.kt
│ │ │ │ │ ├── CommandException.kt
│ │ │ │ │ ├── ConnectCommand.kt
│ │ │ │ │ ├── CrashCommand.kt
│ │ │ │ │ ├── DumpCommand.kt
│ │ │ │ │ ├── HelpCommand.kt
│ │ │ │ │ ├── PingCommand.kt
│ │ │ │ │ ├── QuitCommand.kt
│ │ │ │ │ ├── SessionManageCommand.kt
│ │ │ │ │ ├── UpdateCommand.kt
│ │ │ │ │ ├── rendering
│ │ │ │ │ ├── ReloadCommand.kt
│ │ │ │ │ └── RenderingCommand.kt
│ │ │ │ │ └── session
│ │ │ │ │ ├── ActionCommand.kt
│ │ │ │ │ ├── BenchmarkCommand.kt
│ │ │ │ │ ├── DebugCommand.kt
│ │ │ │ │ ├── DisconnectCommand.kt
│ │ │ │ │ ├── QueryCommand.kt
│ │ │ │ │ ├── SayCommand.kt
│ │ │ │ │ └── SessionCommand.kt
│ │ │ │ ├── updater
│ │ │ │ ├── DownloadLink.kt
│ │ │ │ ├── MinosoftUpdate.kt
│ │ │ │ ├── MinosoftUpdater.kt
│ │ │ │ ├── UpdateKey.kt
│ │ │ │ └── UpdateProgress.kt
│ │ │ │ └── util
│ │ │ │ ├── DNSUtil.kt
│ │ │ │ ├── Initializable.kt
│ │ │ │ ├── KUtil.kt
│ │ │ │ ├── PixelImageView.kt
│ │ │ │ ├── RegistriesUtil.kt
│ │ │ │ ├── ResourceLocationMap.kt
│ │ │ │ ├── Stopwatch.kt
│ │ │ │ ├── SystemInformation.kt
│ │ │ │ ├── account
│ │ │ │ ├── AccountUtil.kt
│ │ │ │ ├── LoginException.kt
│ │ │ │ ├── microsoft
│ │ │ │ │ ├── AuthenticationResponse.kt
│ │ │ │ │ ├── MicrosoftAPIError.kt
│ │ │ │ │ ├── MicrosoftAPIException.kt
│ │ │ │ │ ├── MicrosoftOAuthUtils.kt
│ │ │ │ │ ├── code
│ │ │ │ │ │ └── MicrosoftDeviceCode.kt
│ │ │ │ │ ├── minecraft
│ │ │ │ │ │ ├── MinecraftAPIError.kt
│ │ │ │ │ │ ├── MinecraftAPIException.kt
│ │ │ │ │ │ ├── MinecraftBearerResponse.kt
│ │ │ │ │ │ ├── MinecraftNotPurchasedError.kt
│ │ │ │ │ │ └── MinecraftProfile.kt
│ │ │ │ │ └── xbox
│ │ │ │ │ │ ├── XSTSToken.kt
│ │ │ │ │ │ ├── XboxAPIError.kt
│ │ │ │ │ │ ├── XboxAPIException.kt
│ │ │ │ │ │ └── XboxLiveToken.kt
│ │ │ │ └── minecraft
│ │ │ │ │ ├── MinecraftPrivateKey.kt
│ │ │ │ │ ├── MinecraftTokens.kt
│ │ │ │ │ └── key
│ │ │ │ │ └── MinecraftKeyPair.kt
│ │ │ │ ├── collections
│ │ │ │ ├── DirectList.kt
│ │ │ │ └── floats
│ │ │ │ │ ├── BufferedArrayFloatList.kt
│ │ │ │ │ ├── DirectArrayFloatList.kt
│ │ │ │ │ ├── FloatListUtil.kt
│ │ │ │ │ └── FragmentedArrayFloatList.kt
│ │ │ │ ├── crash
│ │ │ │ ├── CrashReportBuilder.kt
│ │ │ │ ├── CrashReportUtil.kt
│ │ │ │ ├── freeze
│ │ │ │ │ ├── FreezeDump.kt
│ │ │ │ │ └── FreezeDumpUtil.kt
│ │ │ │ └── section
│ │ │ │ │ ├── AbstractCrashSection.kt
│ │ │ │ │ ├── ArrayCrashSection.kt
│ │ │ │ │ ├── CrashSection.kt
│ │ │ │ │ ├── GPUSection.kt
│ │ │ │ │ ├── GeneralSection.kt
│ │ │ │ │ ├── GitSection.kt
│ │ │ │ │ ├── ModCrashSection.kt
│ │ │ │ │ ├── PropertiesSection.kt
│ │ │ │ │ ├── RuntimeSection.kt
│ │ │ │ │ ├── SessionCrashSection.kt
│ │ │ │ │ ├── SystemSection.kt
│ │ │ │ │ └── ThrowableSection.kt
│ │ │ │ ├── delegate
│ │ │ │ ├── JavaFXDelegate.kt
│ │ │ │ ├── RenderingDelegate.kt
│ │ │ │ └── delegate
│ │ │ │ │ └── DelegateSetter.kt
│ │ │ │ ├── http
│ │ │ │ ├── DownloadUtil.kt
│ │ │ │ ├── HTTP2.kt
│ │ │ │ ├── HTTPResponse.kt
│ │ │ │ └── exceptions
│ │ │ │ │ ├── AuthenticationException.kt
│ │ │ │ │ └── HTTPException.kt
│ │ │ │ ├── json
│ │ │ │ ├── AccountDeserializer.kt
│ │ │ │ ├── ChatComponentColorSerializer.kt
│ │ │ │ ├── FaceUVDeserializer.kt
│ │ │ │ ├── Jackson.kt
│ │ │ │ ├── RGBColorSerializer.kt
│ │ │ │ ├── ResourceLocationSerializer.kt
│ │ │ │ ├── SkeletalFaceDeserializer.kt
│ │ │ │ ├── SkeletalRotationDeserializer.kt
│ │ │ │ └── vec
│ │ │ │ │ ├── Vec2Serializer.kt
│ │ │ │ │ ├── Vec2iSerializer.kt
│ │ │ │ │ ├── Vec3Serializer.kt
│ │ │ │ │ └── Vec4Serializer.kt
│ │ │ │ ├── logging
│ │ │ │ ├── Log.kt
│ │ │ │ ├── LogLevels.kt
│ │ │ │ ├── LogMessageType.kt
│ │ │ │ ├── LogPrintStream.kt
│ │ │ │ └── QueuedMessage.kt
│ │ │ │ ├── nbt
│ │ │ │ └── tag
│ │ │ │ │ ├── NBTTagTypes.kt
│ │ │ │ │ └── NBTUtil.kt
│ │ │ │ ├── signature
│ │ │ │ ├── SignatureException.kt
│ │ │ │ └── SignatureSigner.kt
│ │ │ │ ├── system
│ │ │ │ ├── DesktopAPI.kt
│ │ │ │ ├── SystemAPI.kt
│ │ │ │ └── SystemUtil.kt
│ │ │ │ ├── url
│ │ │ │ └── ResourceURLHandler.kt
│ │ │ │ └── yggdrasil
│ │ │ │ └── YggdrasilUtil.kt
│ │ └── example
│ │ │ └── jonathan2520
│ │ │ ├── SRGBAverager.java
│ │ │ ├── SRGBCalculator.java
│ │ │ └── SRGBTable.java
│ └── resources
│ │ ├── assets
│ │ ├── .assets
│ │ ├── minecraft
│ │ │ ├── font
│ │ │ │ └── default.json
│ │ │ ├── gui
│ │ │ │ └── atlas
│ │ │ │ │ ├── block
│ │ │ │ │ └── sign.json
│ │ │ │ │ ├── container
│ │ │ │ │ ├── crafting.json
│ │ │ │ │ ├── enchanting.json
│ │ │ │ │ ├── furnace
│ │ │ │ │ │ ├── blast.json
│ │ │ │ │ │ ├── furnace.json
│ │ │ │ │ │ └── smoker.json
│ │ │ │ │ ├── generic.json
│ │ │ │ │ └── inventory.json
│ │ │ │ │ ├── elements
│ │ │ │ │ └── button.json
│ │ │ │ │ └── hud
│ │ │ │ │ ├── bossbar.json
│ │ │ │ │ ├── hotbar
│ │ │ │ │ ├── air.json
│ │ │ │ │ ├── experience.json
│ │ │ │ │ ├── hearts.json
│ │ │ │ │ ├── hotbar.json
│ │ │ │ │ └── protection.json
│ │ │ │ │ ├── hud.json
│ │ │ │ │ └── tab.json
│ │ │ ├── mappings
│ │ │ │ ├── enums
│ │ │ │ │ ├── entity
│ │ │ │ │ │ ├── actions.json
│ │ │ │ │ │ ├── animations.json
│ │ │ │ │ │ ├── data_types.json
│ │ │ │ │ │ └── equipment.json
│ │ │ │ │ └── title_actions.json
│ │ │ │ └── registries
│ │ │ │ │ ├── block_data_types.json
│ │ │ │ │ ├── channels.json
│ │ │ │ │ ├── container_type.json
│ │ │ │ │ ├── entity
│ │ │ │ │ ├── objects.json
│ │ │ │ │ └── variant
│ │ │ │ │ │ └── cat.json
│ │ │ │ │ ├── game_events.json
│ │ │ │ │ ├── message_types.json
│ │ │ │ │ ├── vibration_source.json
│ │ │ │ │ └── world_events.json
│ │ │ ├── models
│ │ │ │ ├── block
│ │ │ │ │ └── entities
│ │ │ │ │ │ ├── chest
│ │ │ │ │ │ ├── double_5.smodel
│ │ │ │ │ │ ├── single.smodel
│ │ │ │ │ │ └── single_5.smodel
│ │ │ │ │ │ └── shulker_box.smodel
│ │ │ │ └── entities
│ │ │ │ │ ├── cow
│ │ │ │ │ └── cow.smodel
│ │ │ │ │ ├── pig
│ │ │ │ │ ├── pig.smodel
│ │ │ │ │ └── saddled.smodel
│ │ │ │ │ └── player
│ │ │ │ │ ├── slim.smodel
│ │ │ │ │ └── wide.smodel
│ │ │ └── tags
│ │ │ │ └── block
│ │ │ │ ├── mineable
│ │ │ │ ├── axe.json
│ │ │ │ ├── hoe.json
│ │ │ │ ├── pickaxe.json
│ │ │ │ └── shovel.json
│ │ │ │ ├── needs_diamond_tool.json
│ │ │ │ ├── needs_iron_tool.json
│ │ │ │ └── needs_stone_tool.json
│ │ ├── minosoft
│ │ │ ├── eros
│ │ │ │ ├── crash
│ │ │ │ │ └── crash_screen.fxml
│ │ │ │ ├── debug
│ │ │ │ │ └── lightmap.fxml
│ │ │ │ ├── dialog
│ │ │ │ │ ├── error.fxml
│ │ │ │ │ ├── loading.fxml
│ │ │ │ │ ├── modify_server.fxml
│ │ │ │ │ ├── please_wait.fxml
│ │ │ │ │ ├── profiles
│ │ │ │ │ │ ├── create.fxml
│ │ │ │ │ │ └── select.fxml
│ │ │ │ │ ├── session
│ │ │ │ │ │ ├── connecting.fxml
│ │ │ │ │ │ ├── kick.fxml
│ │ │ │ │ │ └── verify_assets.fxml
│ │ │ │ │ ├── simple
│ │ │ │ │ │ ├── confirmation.fxml
│ │ │ │ │ │ ├── info.fxml
│ │ │ │ │ │ └── warning.fxml
│ │ │ │ │ ├── starting.fxml
│ │ │ │ │ └── update_available.fxml
│ │ │ │ ├── main
│ │ │ │ │ ├── about
│ │ │ │ │ │ └── about.fxml
│ │ │ │ │ ├── account
│ │ │ │ │ │ ├── account.fxml
│ │ │ │ │ │ ├── account_card.fxml
│ │ │ │ │ │ ├── account_type_card.fxml
│ │ │ │ │ │ ├── add
│ │ │ │ │ │ │ ├── microsoft.fxml
│ │ │ │ │ │ │ └── offline.fxml
│ │ │ │ │ │ └── checking.fxml
│ │ │ │ │ ├── main.fxml
│ │ │ │ │ ├── mods
│ │ │ │ │ │ ├── mod_type_card.fxml
│ │ │ │ │ │ └── mods.fxml
│ │ │ │ │ ├── play
│ │ │ │ │ │ ├── play.fxml
│ │ │ │ │ │ ├── server
│ │ │ │ │ │ │ ├── server_card.fxml
│ │ │ │ │ │ │ └── server_list.fxml
│ │ │ │ │ │ └── server_type_card.fxml
│ │ │ │ │ └── profiles
│ │ │ │ │ │ ├── profile_card.fxml
│ │ │ │ │ │ ├── profiles.fxml
│ │ │ │ │ │ ├── profiles_list.fxml
│ │ │ │ │ │ └── profiles_type_card.fxml
│ │ │ │ ├── style.css
│ │ │ │ └── themes
│ │ │ │ │ ├── default.css
│ │ │ │ │ ├── green.css
│ │ │ │ │ ├── red.css
│ │ │ │ │ ├── redgreen.css
│ │ │ │ │ └── yellow.css
│ │ │ ├── fixer
│ │ │ │ ├── block_entity.json
│ │ │ │ ├── container_type.json
│ │ │ │ ├── entity_attribute.json
│ │ │ │ ├── entity_type.json
│ │ │ │ ├── motif.json
│ │ │ │ └── registry.json
│ │ │ ├── gui
│ │ │ │ └── atlas
│ │ │ │ │ ├── elements
│ │ │ │ │ └── switch.json
│ │ │ │ │ └── hud
│ │ │ │ │ └── hotbar
│ │ │ │ │ └── hunger.json
│ │ │ ├── language
│ │ │ │ ├── en_us.lang
│ │ │ │ └── es_es.lang
│ │ │ ├── mapping
│ │ │ │ ├── assets_properties.json
│ │ │ │ ├── entity_events.json
│ │ │ │ ├── minosoft-meta.json
│ │ │ │ └── versions.json
│ │ │ ├── rendering
│ │ │ │ └── shader
│ │ │ │ │ ├── chunk
│ │ │ │ │ ├── chunk.fsh
│ │ │ │ │ └── chunk.vsh
│ │ │ │ │ ├── entities
│ │ │ │ │ ├── features
│ │ │ │ │ │ ├── block
│ │ │ │ │ │ │ ├── block.fsh
│ │ │ │ │ │ │ ├── block.vsh
│ │ │ │ │ │ │ └── flashing
│ │ │ │ │ │ │ │ ├── flashing.fsh
│ │ │ │ │ │ │ │ └── flashing.vsh
│ │ │ │ │ │ └── text
│ │ │ │ │ │ │ ├── text.fsh
│ │ │ │ │ │ │ └── text.vsh
│ │ │ │ │ └── player
│ │ │ │ │ │ ├── arm
│ │ │ │ │ │ ├── arm.fsh
│ │ │ │ │ │ └── arm.vsh
│ │ │ │ │ │ ├── player.fsh
│ │ │ │ │ │ └── player.vsh
│ │ │ │ │ ├── framebuffer
│ │ │ │ │ ├── gui
│ │ │ │ │ │ ├── gui.fsh
│ │ │ │ │ │ └── gui.vsh
│ │ │ │ │ └── world
│ │ │ │ │ │ ├── fun
│ │ │ │ │ │ ├── black_white
│ │ │ │ │ │ │ └── black_white.fsh
│ │ │ │ │ │ ├── flip
│ │ │ │ │ │ │ └── flip.fsh
│ │ │ │ │ │ ├── gray
│ │ │ │ │ │ │ └── gray.fsh
│ │ │ │ │ │ ├── invert
│ │ │ │ │ │ │ └── invert.fsh
│ │ │ │ │ │ └── tint
│ │ │ │ │ │ │ └── tint.fsh
│ │ │ │ │ │ ├── world.fsh
│ │ │ │ │ │ └── world.vsh
│ │ │ │ │ ├── generic
│ │ │ │ │ ├── color
│ │ │ │ │ │ ├── color.fsh
│ │ │ │ │ │ └── color.vsh
│ │ │ │ │ ├── texture
│ │ │ │ │ │ ├── texture.fsh
│ │ │ │ │ │ └── texture.vsh
│ │ │ │ │ └── texture_2d
│ │ │ │ │ │ ├── texture_2d.fsh
│ │ │ │ │ │ └── texture_2d.vsh
│ │ │ │ │ ├── gui
│ │ │ │ │ ├── gui.fsh
│ │ │ │ │ └── gui.vsh
│ │ │ │ │ ├── includes
│ │ │ │ │ ├── alpha.glsl
│ │ │ │ │ ├── animation.glsl
│ │ │ │ │ ├── color.glsl
│ │ │ │ │ ├── fog.glsl
│ │ │ │ │ ├── light.glsl
│ │ │ │ │ ├── skeletal
│ │ │ │ │ │ ├── buffer.glsl
│ │ │ │ │ │ ├── shade.glsl
│ │ │ │ │ │ └── vertex.glsl
│ │ │ │ │ ├── texture.glsl
│ │ │ │ │ ├── tint.glsl
│ │ │ │ │ ├── uv.glsl
│ │ │ │ │ └── vsh.glsl
│ │ │ │ │ ├── particle
│ │ │ │ │ ├── particle.fsh
│ │ │ │ │ ├── particle.gsh
│ │ │ │ │ └── particle.vsh
│ │ │ │ │ ├── skeletal
│ │ │ │ │ ├── lightmap
│ │ │ │ │ │ ├── lightmap.fsh
│ │ │ │ │ │ └── lightmap.vsh
│ │ │ │ │ └── normal
│ │ │ │ │ │ ├── normal.fsh
│ │ │ │ │ │ └── normal.vsh
│ │ │ │ │ ├── sky
│ │ │ │ │ ├── clouds
│ │ │ │ │ │ ├── clouds.fsh
│ │ │ │ │ │ └── clouds.vsh
│ │ │ │ │ ├── planet
│ │ │ │ │ │ ├── planet.fsh
│ │ │ │ │ │ └── planet.vsh
│ │ │ │ │ ├── scatter
│ │ │ │ │ │ └── sun
│ │ │ │ │ │ │ ├── sun.fsh
│ │ │ │ │ │ │ └── sun.vsh
│ │ │ │ │ └── skybox
│ │ │ │ │ │ ├── skybox.fsh
│ │ │ │ │ │ ├── skybox.vsh
│ │ │ │ │ │ └── texture
│ │ │ │ │ │ ├── texture.fsh
│ │ │ │ │ │ └── texture.vsh
│ │ │ │ │ ├── weather
│ │ │ │ │ └── overlay
│ │ │ │ │ │ ├── overlay.fsh
│ │ │ │ │ │ └── overlay.vsh
│ │ │ │ │ └── world
│ │ │ │ │ └── border
│ │ │ │ │ ├── border.fsh
│ │ │ │ │ └── border.vsh
│ │ │ ├── textures
│ │ │ │ ├── debug.png
│ │ │ │ ├── gui
│ │ │ │ │ └── icons.png
│ │ │ │ ├── icons
│ │ │ │ │ ├── bixilon_logo.svg
│ │ │ │ │ └── window_icon.png
│ │ │ │ └── white.png
│ │ │ └── updater
│ │ │ │ └── release.der
│ │ └── mojang
│ │ │ └── yggdrasil
│ │ │ └── pubkey.der
│ │ └── assets_override
│ │ ├── .assets
│ │ └── minecraft
│ │ ├── blockstates
│ │ ├── acacia_sign.json
│ │ ├── acacia_wall_sign.json
│ │ ├── bamboo_sign.json
│ │ ├── bamboo_wall_sign.json
│ │ ├── birch_sign.json
│ │ ├── birch_wall_sign.json
│ │ ├── black_bed.json
│ │ ├── blue_bed.json
│ │ ├── brown_bed.json
│ │ ├── crimson_sign.json
│ │ ├── crimson_wall_sign.json
│ │ ├── cyan_bed.json
│ │ ├── dark_oak_sign.json
│ │ ├── dark_oak_wall_sign.json
│ │ ├── gray_bed.json
│ │ ├── green_bed.json
│ │ ├── jungle_sign.json
│ │ ├── jungle_wall_sign.json
│ │ ├── light_blue_bed.json
│ │ ├── light_gray_bed.json
│ │ ├── lime_bed.json
│ │ ├── magenta_bed.json
│ │ ├── mangrove_sign.json
│ │ ├── mangrove_wall_sign.json
│ │ ├── oak_sign.json
│ │ ├── oak_wall_sign.json
│ │ ├── orange_bed.json
│ │ ├── pink_bed.json
│ │ ├── purple_bed.json
│ │ ├── red_bed.json
│ │ ├── spruce_sign.json
│ │ ├── spruce_wall_sign.json
│ │ ├── warped_sign.json
│ │ ├── warped_wall_sign.json
│ │ ├── white_bed.json
│ │ └── yellow_bed.json
│ │ └── models
│ │ └── block
│ │ ├── bed
│ │ ├── black
│ │ │ ├── foot.json
│ │ │ └── head.json
│ │ ├── blue
│ │ │ ├── foot.json
│ │ │ └── head.json
│ │ ├── brown
│ │ │ ├── foot.json
│ │ │ └── head.json
│ │ ├── cyan
│ │ │ ├── foot.json
│ │ │ └── head.json
│ │ ├── gray
│ │ │ ├── foot.json
│ │ │ └── head.json
│ │ ├── green
│ │ │ ├── foot.json
│ │ │ └── head.json
│ │ ├── light_blue
│ │ │ ├── foot.json
│ │ │ └── head.json
│ │ ├── light_gray
│ │ │ ├── foot.json
│ │ │ └── head.json
│ │ ├── lime
│ │ │ ├── foot.json
│ │ │ └── head.json
│ │ ├── magenta
│ │ │ ├── foot.json
│ │ │ └── head.json
│ │ ├── orange
│ │ │ ├── foot.json
│ │ │ └── head.json
│ │ ├── pink
│ │ │ ├── foot.json
│ │ │ └── head.json
│ │ ├── purple
│ │ │ ├── foot.json
│ │ │ └── head.json
│ │ ├── red
│ │ │ ├── foot.json
│ │ │ └── head.json
│ │ ├── template
│ │ │ ├── bed.json
│ │ │ ├── foot.json
│ │ │ └── head.json
│ │ ├── white
│ │ │ ├── foot.json
│ │ │ └── head.json
│ │ └── yellow
│ │ │ ├── foot.json
│ │ │ └── head.json
│ │ └── sign
│ │ ├── acacia
│ │ ├── standing.json
│ │ └── wall.json
│ │ ├── bamboo
│ │ ├── standing.json
│ │ └── wall.json
│ │ ├── birch
│ │ ├── standing.json
│ │ └── wall.json
│ │ ├── cherry
│ │ ├── standing.json
│ │ └── wall.json
│ │ ├── crimson
│ │ ├── standing.json
│ │ └── wall.json
│ │ ├── dark_oak
│ │ ├── standing.json
│ │ └── wall.json
│ │ ├── jungle
│ │ ├── standing.json
│ │ └── wall.json
│ │ ├── mangrove
│ │ ├── standing.json
│ │ └── wall.json
│ │ ├── oak
│ │ ├── standing.json
│ │ └── wall.json
│ │ ├── spruce
│ │ ├── standing.json
│ │ └── wall.json
│ │ ├── template
│ │ ├── standing.json
│ │ └── wall.json
│ │ └── warped
│ │ ├── standing.json
│ │ └── wall.json
└── test
│ └── java
│ ├── de
│ └── bixilon
│ │ └── minosoft
│ │ ├── assets
│ │ └── util
│ │ │ └── FileAssetsUtilTest.kt
│ │ ├── commands
│ │ ├── nodes
│ │ │ ├── ExecutionChildReadingTest.kt
│ │ │ └── SuggestionChildReadingTest.kt
│ │ ├── parser
│ │ │ ├── brigadier
│ │ │ │ ├── _double
│ │ │ │ │ └── DoubleParserTest.kt
│ │ │ │ ├── _float
│ │ │ │ │ └── FloatParserTest.kt
│ │ │ │ ├── _int
│ │ │ │ │ └── IntParserTest.kt
│ │ │ │ ├── _long
│ │ │ │ │ └── LongParserTest.kt
│ │ │ │ ├── bool
│ │ │ │ │ └── BooleanParserTest.kt
│ │ │ │ └── string
│ │ │ │ │ └── StringParserTest.kt
│ │ │ ├── minecraft
│ │ │ │ ├── color
│ │ │ │ │ └── ColorParserTest.kt
│ │ │ │ ├── component
│ │ │ │ │ └── ChatComponentParserTest.kt
│ │ │ │ ├── coordinate
│ │ │ │ │ ├── CoordinateParserUtilTest.kt
│ │ │ │ │ ├── angle
│ │ │ │ │ │ └── AngleParserTest.kt
│ │ │ │ │ ├── block
│ │ │ │ │ │ └── BlockPositionParserTest.kt
│ │ │ │ │ ├── rotation
│ │ │ │ │ │ └── RotationParserTest.kt
│ │ │ │ │ ├── vec2
│ │ │ │ │ │ └── Vec2ParserTest.kt
│ │ │ │ │ └── vec3
│ │ │ │ │ │ └── Vec3ParserTest.kt
│ │ │ │ ├── resource
│ │ │ │ │ └── location
│ │ │ │ │ │ └── ResourceLocationParserTest.kt
│ │ │ │ ├── target
│ │ │ │ │ └── TargetParserTest.kt
│ │ │ │ ├── time
│ │ │ │ │ └── TimeParserTest.kt
│ │ │ │ └── uuid
│ │ │ │ │ └── UUIDParserTest.kt
│ │ │ └── minosoft
│ │ │ │ └── enums
│ │ │ │ └── EnumParserTest.kt
│ │ └── util
│ │ │ └── CommandReaderTest.kt
│ │ ├── config
│ │ └── DebugOptionsTest.kt
│ │ ├── data
│ │ ├── direction
│ │ │ ├── DirectionUtilTest.kt
│ │ │ ├── DirectionVectorTest.kt
│ │ │ └── DirectionsTest.kt
│ │ ├── entities
│ │ │ ├── EntityRotationTest.kt
│ │ │ └── entities
│ │ │ │ └── player
│ │ │ │ └── properties
│ │ │ │ └── textures
│ │ │ │ └── PlayerTextureTest.kt
│ │ ├── language
│ │ │ └── lang
│ │ │ │ └── LanguageFileTest.kt
│ │ ├── registries
│ │ │ ├── ResourceLocationTest.kt
│ │ │ ├── VoxelShapeLineDrawingTest.kt
│ │ │ ├── blocks
│ │ │ │ └── light
│ │ │ │ │ └── DirectedPropertyTest.kt
│ │ │ ├── chat
│ │ │ │ └── ChatMessageTypeTest.kt
│ │ │ ├── dimension
│ │ │ │ └── DimensionPropertiesTest.kt
│ │ │ ├── identified
│ │ │ │ └── NamespacesTest.kt
│ │ │ └── shapes
│ │ │ │ ├── AABBTest.kt
│ │ │ │ ├── aabb
│ │ │ │ └── AABBIteratorTest.kt
│ │ │ │ ├── side
│ │ │ │ └── VoxelSideTest.kt
│ │ │ │ └── voxel
│ │ │ │ └── VoxelShapeTest.kt
│ │ ├── text
│ │ │ ├── ChatComponentTest.kt
│ │ │ └── events
│ │ │ │ └── hover
│ │ │ │ └── EntityHoverEventTest.kt
│ │ └── world
│ │ │ ├── chunk
│ │ │ └── light
│ │ │ │ └── types
│ │ │ │ └── LightLevelTest.kt
│ │ │ ├── positions
│ │ │ ├── BlockPositionTest.kt
│ │ │ ├── BlockPositionUtilTest.kt
│ │ │ ├── ChunkPositionTest.kt
│ │ │ ├── InChunkPositionTest.kt
│ │ │ ├── InSectionPositionTest.kt
│ │ │ └── SectionPositionTest.kt
│ │ │ └── vec
│ │ │ └── SVec3Test.kt
│ │ ├── gui
│ │ └── rendering
│ │ │ ├── camera
│ │ │ └── occlusion
│ │ │ │ └── SectionPositionSetTest.kt
│ │ │ ├── font
│ │ │ └── types
│ │ │ │ └── empty
│ │ │ │ └── EmptyFontTypeTest.kt
│ │ │ ├── gui
│ │ │ └── mesh
│ │ │ │ └── GUIMeshTest.kt
│ │ │ ├── models
│ │ │ └── block
│ │ │ │ └── state
│ │ │ │ └── baked
│ │ │ │ ├── BakingUtilTest.kt
│ │ │ │ └── SkeletalShadeTest.kt
│ │ │ ├── skeletal
│ │ │ └── mesh
│ │ │ │ └── SkeletalMeshUtilTest.kt
│ │ │ ├── tint
│ │ │ └── TintUtilTest.kt
│ │ │ └── util
│ │ │ └── mat
│ │ │ └── mat4
│ │ │ └── Mat4UtilTest.kt
│ │ ├── modding
│ │ └── loader
│ │ │ └── mod
│ │ │ └── MinosoftModTest.kt
│ │ ├── protocol
│ │ └── protocol
│ │ │ └── ProtocolDefinitionTest.kt
│ │ └── util
│ │ ├── DNSUtilTest.kt
│ │ ├── KUtilTest.kt
│ │ └── collections
│ │ └── floats
│ │ ├── AbstractFloatListTest.kt
│ │ ├── BufferedFloatListTest.kt
│ │ ├── DirectFloatListTest.kt
│ │ ├── FragmentedFloatListTest.kt
│ │ └── HeapFloatListTest.kt
│ └── example
│ └── jonathan2520
│ └── SRGBAveragerTest.kt
└── util
├── .gitignore
├── ReadMe.md
├── assets_properties_generator.py
└── server_wrapper.py
/.gitattributes:
--------------------------------------------------------------------------------
1 | #
2 | # https://help.github.com/articles/dealing-with-line-endings/
3 | #
4 | # These are explicitly windows files and should use crlf
5 | *.bat text eol=crlf
6 |
7 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | /target/
2 | out/
3 | .idea/
4 | *.iml
5 | hs_err_pid*.log
6 |
7 | # Ignore Gradle project-specific cache directory
8 | .gradle
9 | .gradle_home
10 |
11 | .kotlin/
12 |
13 | # Ignore Gradle build output directory
14 | build
15 |
16 | it/
17 |
18 | .*~
19 |
--------------------------------------------------------------------------------
/.idea/copyright/GPLv3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/.idea/copyright/profiles_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/doc/CLI.md:
--------------------------------------------------------------------------------
1 | # CLI ToDo
2 |
3 | - [ ] set default root node to `null`
4 | - [ ] all parsers
5 | - [ ] better suggestions
6 | - [ ] gui suggestions
7 | - [ ] improved entity parser
8 | - [ ] some cli commands
9 |
--------------------------------------------------------------------------------
/doc/Roadmap.txt:
--------------------------------------------------------------------------------
1 | Multiprotocol Support (1.7+)
2 | Stable and no crashes
3 | Compatible with Windows, MacOS, Linux
4 | 100% Open Source
5 | No copyright violations (Launcher to download textures, ...)
6 | (Modding API)
7 | Native Windows (JavaFX, no 100% CPU usage in Menu :D)
8 | Multithreaded
9 | Mostly GPU based, not cpu
10 | Aimed for performance (goal: reach v-sync framerate, dynamically disable effects, ...)
11 | Server support
12 | No original Minecraft workarounds (API: plugin channel): No invisible entities to show holograms, No Scoreboard workarounds, ... (Scoreboard still must be implemented to avoid compatibility issues)
13 | Debug settings (stop entity updates, entity limiter, ...)
14 | No cheat client (only per modding api)
15 | Server GUI API (server can send custom GUIs to client)
16 | Only Multiplayer support (Singleplayer is in fact only a local server)
17 | No invalid session error
18 | No screenshot freeze
19 | Client side restrictions (movement, building, ...)
20 | (Pocket, Bedrock Edition support)
21 |
--------------------------------------------------------------------------------
/doc/Shader.md:
--------------------------------------------------------------------------------
1 | # Shader
2 |
3 | ## Variable declarations/naming
4 |
5 | All variables are prefixed with:
6 |
7 | - Vertex: `v`
8 | - Geometry: `g`
9 | - Fragment: `f`
10 |
11 | followed by `in`. So `vinPosition` is a valid name.
12 |
13 | ## Uniforms
14 |
15 | Prefixed with `u`
16 |
--------------------------------------------------------------------------------
/doc/img/Minosoft_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/doc/img/Minosoft_logo.png
--------------------------------------------------------------------------------
/doc/img/afk_pool.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/doc/img/afk_pool.png
--------------------------------------------------------------------------------
/doc/img/eros.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/doc/img/eros.png
--------------------------------------------------------------------------------
/doc/img/hypixel_lobby.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/doc/img/hypixel_lobby.png
--------------------------------------------------------------------------------
/doc/img/hypixel_skyblock.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/doc/img/hypixel_skyblock.png
--------------------------------------------------------------------------------
/doc/img/rendering1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/doc/img/rendering1.png
--------------------------------------------------------------------------------
/doc/img/rendering5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/doc/img/rendering5.png
--------------------------------------------------------------------------------
/doc/img/sunset.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/doc/img/sunset.png
--------------------------------------------------------------------------------
/doc/rendering/GUI.md:
--------------------------------------------------------------------------------
1 | # General GUI idea
2 |
3 | ## 2 Main GUI types
4 |
5 | - Blocking/GUI (with mouse and keyboard interaction)
6 | - Inventories
7 | - Escape screen
8 | - Confirmation screen
9 | - Chat (input)
10 | - Command blocks, etc
11 | - Non-blocking/HUD (~~permanent~~ overlay)
12 | - Chat messages
13 | - Scoreboard
14 | - Boss bar
15 | - Title
16 | - Hotbar
17 | - Debug info
18 | - Gadget text (like fps, time, etc)
19 |
20 | ## GUI components
21 |
22 | - General
23 | - Text
24 | - Items
25 | - Container (list with items, the inventory and their positions)
26 | - GUI
27 | - Buttons
28 | - TextField
29 | - Label
30 | - Checkbox
31 |
32 | ## ToDo:
33 |
34 | - make `TextElement`, `GridLayout` final
35 | - TextInput
36 | - Keyboard navigation
37 | - Chat
38 | - Inventory
39 | - Pause menu
40 |
--------------------------------------------------------------------------------
/doc/rendering/Meshes.md:
--------------------------------------------------------------------------------
1 | # Mesh
2 |
3 | OpenGL generally draws **counter-clockwise**. Minosoft internally uses **clockwise** rendering and maps then to quads or
4 | triangles.
5 |
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/release/release.sh:
--------------------------------------------------------------------------------
1 | #!/bin/ash
2 | #
3 | # Minosoft
4 | # Copyright (C) 2020-2024 Moritz Zwerger
5 | #
6 | # 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.
7 | #
8 | # 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
9 | #
10 | # You should have received a copy of the GNU General Public License along with this program. If not, see .
11 | #
12 | # This software is not affiliated with Mojang AB, the original developer of Minecraft.
13 | #
14 | set -e
15 |
16 | VERSION=$(git rev-parse HEAD)
17 | VERSION=${VERSION:0:10}
18 |
19 | curl \
20 | -X POST \
21 | -H "Authorization: Bearer $MINOSOFT_TOKEN" \
22 | "$MINOSOFT_API/api/v1/releases/release/$VERSION"
23 |
--------------------------------------------------------------------------------
/run.cmd:
--------------------------------------------------------------------------------
1 | gradlew.bat run
2 |
--------------------------------------------------------------------------------
/src/integration-test/resources/mods/broken/dummy/manifest.json:
--------------------------------------------------------------------------------
1 | Intentionally bad formatted
2 |
--------------------------------------------------------------------------------
/src/integration-test/resources/mods/dummy/dummy/assets/nothin/flag.txt:
--------------------------------------------------------------------------------
1 | hehe
2 |
--------------------------------------------------------------------------------
/src/integration-test/resources/mods/dummy/dummy/de/bixilon/minosoft/modding/dummy/DummyMod.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/mods/dummy/dummy/de/bixilon/minosoft/modding/dummy/DummyMod.class
--------------------------------------------------------------------------------
/src/integration-test/resources/mods/dummy/dummy/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "dummy",
3 | "version": "1.0",
4 | "main": "de.bixilon.minosoft.modding.dummy.DummyMod"
5 | }
6 |
7 |
--------------------------------------------------------------------------------
/src/integration-test/resources/mods/nocode/dummy/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "dummy",
3 | "version": "1.0",
4 | "main": "de.bixilon.minosoft.modding.dummy.DummyNotExistant"
5 | }
6 |
7 |
--------------------------------------------------------------------------------
/src/integration-test/resources/packets/chunk/cuberite_1_12_2.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/packets/chunk/cuberite_1_12_2.bin
--------------------------------------------------------------------------------
/src/integration-test/resources/packets/chunk/cuberite_1_8_9.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/packets/chunk/cuberite_1_8_9.bin
--------------------------------------------------------------------------------
/src/integration-test/resources/packets/chunk/feather_1_16_5.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/packets/chunk/feather_1_16_5.bin
--------------------------------------------------------------------------------
/src/integration-test/resources/packets/chunk/hypixel_hub_1_19_3.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/packets/chunk/hypixel_hub_1_19_3.bin
--------------------------------------------------------------------------------
/src/integration-test/resources/packets/chunk/hypixel_registries.mbf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/packets/chunk/hypixel_registries.mbf
--------------------------------------------------------------------------------
/src/integration-test/resources/packets/chunk/vanilla_1_19_3.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/packets/chunk/vanilla_1_19_3.bin
--------------------------------------------------------------------------------
/src/integration-test/resources/packets/chunks/vanilla_1_7_10.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/packets/chunks/vanilla_1_7_10.bin
--------------------------------------------------------------------------------
/src/integration-test/resources/packets/commands/vanilla_op_1_15_2.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/packets/commands/vanilla_op_1_15_2.bin
--------------------------------------------------------------------------------
/src/integration-test/resources/packets/commands/vanilla_op_1_19_3.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/packets/commands/vanilla_op_1_19_3.bin
--------------------------------------------------------------------------------
/src/integration-test/resources/packets/commands/vanilla_op_1_20_1.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/packets/commands/vanilla_op_1_20_1.bin
--------------------------------------------------------------------------------
/src/integration-test/resources/packets/initialize/hypixel_1_19_4.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/packets/initialize/hypixel_1_19_4.bin
--------------------------------------------------------------------------------
/src/integration-test/resources/packets/initialize/vanilla_1_15_2.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/packets/initialize/vanilla_1_15_2.bin
--------------------------------------------------------------------------------
/src/integration-test/resources/packets/initialize/vanilla_1_16_5.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/packets/initialize/vanilla_1_16_5.bin
--------------------------------------------------------------------------------
/src/integration-test/resources/packets/initialize/vanilla_1_20_1.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/packets/initialize/vanilla_1_20_1.bin
--------------------------------------------------------------------------------
/src/integration-test/resources/packets/initialize/vanilla_1_20_2.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/packets/initialize/vanilla_1_20_2.bin
--------------------------------------------------------------------------------
/src/integration-test/resources/packets/initialize/vanilla_1_7_10.bin:
--------------------------------------------------------------------------------
1 | | default
--------------------------------------------------------------------------------
/src/integration-test/resources/packets/signed_chat_message/vanilla_1_20_4.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/packets/signed_chat_message/vanilla_1_20_4.bin
--------------------------------------------------------------------------------
/src/integration-test/resources/packets/signed_chat_message/vanilla_23w40a.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/packets/signed_chat_message/vanilla_23w40a.bin
--------------------------------------------------------------------------------
/src/integration-test/resources/packets/tab/greev_eu_1_15_2.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/packets/tab/greev_eu_1_15_2.bin
--------------------------------------------------------------------------------
/src/integration-test/resources/packets/tab/greev_eu_1_20_2.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/packets/tab/greev_eu_1_20_2.bin
--------------------------------------------------------------------------------
/src/integration-test/resources/packets/tab/greev_eu_1_20_4.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/packets/tab/greev_eu_1_20_4.bin
--------------------------------------------------------------------------------
/src/integration-test/resources/skins/180fce54ab949a1eada68bea6be02633a4c15fd0915f097a93fa6d3ca1e04623.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/skins/180fce54ab949a1eada68bea6be02633a4c15fd0915f097a93fa6d3ca1e04623.png
--------------------------------------------------------------------------------
/src/integration-test/resources/skins/5065405b55a729be5a442832b895d4352b3fdcc61c8c57f4b8abad64344194d3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/skins/5065405b55a729be5a442832b895d4352b3fdcc61c8c57f4b8abad64344194d3.png
--------------------------------------------------------------------------------
/src/integration-test/resources/skins/7af7c07d1ded61b1d3312685b32e4568ffdda762ec8d808895cc329a93d606e0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/skins/7af7c07d1ded61b1d3312685b32e4568ffdda762ec8d808895cc329a93d606e0.png
--------------------------------------------------------------------------------
/src/integration-test/resources/skins/7af7c07d1ded61b1d3312685b32e4568ffdda762ec8d808895cc329a93d606e0_fixed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/skins/7af7c07d1ded61b1d3312685b32e4568ffdda762ec8d808895cc329a93d606e0_fixed.png
--------------------------------------------------------------------------------
/src/integration-test/resources/texture_reading/gray_gray.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/texture_reading/gray_gray.png
--------------------------------------------------------------------------------
/src/integration-test/resources/texture_reading/gray_rgb.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/texture_reading/gray_rgb.png
--------------------------------------------------------------------------------
/src/integration-test/resources/texture_reading/sand.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/texture_reading/sand.png
--------------------------------------------------------------------------------
/src/integration-test/resources/tint/foliage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/tint/foliage.png
--------------------------------------------------------------------------------
/src/integration-test/resources/tint/grass.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/integration-test/resources/tint/grass.png
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/advancements/AdvancementProgress.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.advancements
15 |
16 | data class AdvancementProgress(
17 | val criterion: String,
18 | val archiveTime: Long?,
19 | )
20 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/assets/minecraft/MinecraftAssetsManager.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2021 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.assets.minecraft
15 |
16 | import de.bixilon.minosoft.assets.AssetsManager
17 |
18 | interface MinecraftAssetsManager : AssetsManager
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/assets/multi/MultiAssetsManager.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2021 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.assets.multi
15 |
16 | import de.bixilon.minosoft.assets.AssetsManager
17 |
18 | interface MultiAssetsManager : AssetsManager
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/assets/util/SavedAsset.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.assets.util
15 |
16 | class SavedAsset(
17 | val hash: String,
18 | val data: ByteArray,
19 | )
20 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/commands/nodes/SignedNode.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.commands.nodes
15 |
16 | interface SignedNode {
17 | val sign: Boolean
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/commands/parser/SignedParser.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.commands.parser
15 |
16 | interface SignedParser
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/commands/parser/selector/AbstractTarget.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.commands.parser.selector
15 |
16 | interface AbstractTarget {
17 | fun filter(entries: Collection): List
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/commands/parser/selector/TargetProperty.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.commands.parser.selector
15 |
16 | interface TargetProperty {
17 |
18 | fun passes(value: T): Boolean
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/commands/stack/CommandExecutor.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.commands.stack
15 |
16 | typealias CommandExecutor = (stack: CommandStack) -> Unit
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/commands/stack/print/PrintTarget.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2024 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.commands.stack.print
15 |
16 | fun interface PrintTarget {
17 |
18 | fun print(message: Any)
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/commands/util/ReadResult.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.commands.util
15 |
16 | class ReadResult(
17 | val start: Int,
18 | val end: Int,
19 | val read: String,
20 | val result: T,
21 | )
22 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/config/profile/ProfileLock.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2025 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.config.profile
15 |
16 | import de.bixilon.kutil.concurrent.lock.locks.reentrant.ReentrantRWLock
17 |
18 | typealias ProfileLock = ReentrantRWLock
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/abilities/InteractionAbilities.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2021 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.abilities
15 |
16 | enum class InteractionAbilities {
17 | NOTHING,
18 | ONLY_ENTITIES,
19 | EVERYTHING,
20 | ;
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/accounts/types/mojang/MojangAccount.kt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/main/java/de/bixilon/minosoft/data/accounts/types/mojang/MojangAccount.kt
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/chat/filter/Filter.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger and contributors
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.chat.filter
15 |
16 | interface Filter
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/chat/filter/FullFilter.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger and contributors
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.chat.filter
15 |
16 | class FullFilter : Filter
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/chat/filter/PassFilter.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger and contributors
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.chat.filter
15 |
16 | class PassFilter : Filter
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/chat/filter/SemiFilter.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger and contributors
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.chat.filter
15 |
16 | import java.util.*
17 |
18 | class SemiFilter(
19 | val bitset: BitSet,
20 | ) : Filter
21 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/chat/sender/InvalidSender.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.chat.sender
15 |
16 | import java.util.*
17 |
18 | class InvalidSender(
19 | override val uuid: UUID,
20 | ) : MessageSender
21 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/chat/sender/MessageSender.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.chat.sender
15 |
16 | import java.util.*
17 |
18 | interface MessageSender {
19 | val uuid: UUID
20 | }
21 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/chat/sender/UnknownMessageSender.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.chat.sender
15 |
16 | import java.util.*
17 |
18 | data class UnknownMessageSender(override val uuid: UUID) : MessageSender
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/chat/signature/MessageHeader.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.chat.signature
15 |
16 | import java.util.*
17 |
18 | class MessageHeader(
19 | val signature: ByteArray?,
20 | val sender: UUID,
21 | )
22 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/chat/signature/errors/InvalidSignatureError.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.chat.signature.errors
15 |
16 | class InvalidSignatureError : Exception("Signature does not match")
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/container/SlotEdit.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.container
15 |
16 | class SlotEdit {
17 | var changes = 0
18 |
19 | fun addChange() {
20 | changes++
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/container/slots/DefaultSlotType.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.container.slots
15 |
16 | object DefaultSlotType : SlotType
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/container/slots/equipment/EquipmentSlotType.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.container.slots.equipment
15 |
16 | interface EquipmentSlotType : SingleItemSlotType
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/entities/block/BlockActionEntity.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.entities.block
15 |
16 | interface BlockActionEntity {
17 | fun setBlockActionData(type: Int, data: Int)
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/entities/data/EntityDataField.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2024 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.entities.data
15 |
16 | class EntityDataField(vararg val names: String) {
17 |
18 | override fun toString() = names.contentToString()
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/entities/entities/SynchronizedEntityData.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 | package de.bixilon.minosoft.data.entities.entities
14 |
15 |
16 | @Retention(AnnotationRetention.RUNTIME)
17 | annotation class SynchronizedEntityData
18 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/entities/entities/player/DefaultPlayerProperties.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.entities.entities.player
15 |
16 | object DefaultPlayerProperties {
17 | const val TEXTURES = "textures"
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/entities/entities/properties/riding/Saddleable.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.entities.entities.properties.riding
15 |
16 | interface Saddleable {
17 | val isSaddled: Boolean
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/language/lang/LanguageData.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.language.lang
15 |
16 | typealias LanguageData = MutableMap
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/blocks/types/bee/BeeBlock.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.blocks.types.bee
15 |
16 | interface BeeBlock
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/blocks/types/building/snow/AbstractSnowBlock.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.blocks.types.building.snow
15 |
16 | interface AbstractSnowBlock
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/blocks/types/climbing/ClimbingBlock.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.blocks.types.climbing
15 |
16 | interface ClimbingBlock
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/blocks/types/properties/hardness/HardnessBlock.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.blocks.types.properties.hardness
15 |
16 | interface HardnessBlock {
17 | val hardness: Float
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/blocks/types/properties/physics/JumpBlock.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.blocks.types.properties.physics
15 |
16 | interface JumpBlock {
17 | val jumpBoost: Float
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/blocks/types/properties/physics/VelocityBlock.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.blocks.types.properties.physics
15 |
16 | interface VelocityBlock {
17 | val velocity: Float
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/dimension/effects/FogEffects.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2024 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.dimension.effects
15 |
16 | data class FogEffects(
17 | val start: Float = 1.0f,
18 | )
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/effects/InstantEffect.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.effects
15 |
16 | interface InstantEffect
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/factory/clazz/ClassFactory.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2021 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.factory.clazz
15 |
16 | interface ClassFactory
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/factory/clazz/MultiClassFactory.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2021 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.factory.clazz
15 |
16 | interface MultiClassFactory : ClassFactory {
17 | val ALIASES: Set
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/factory/name/MultiNameFactory.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2021 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.factory.name
15 |
16 | interface MultiNameFactory : NameFactory {
17 | val aliases: Set
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/factory/name/NameFactory.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2021 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.factory.name
15 |
16 | interface NameFactory {
17 | val name: String
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/identified/AliasedIdentified.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.identified
15 |
16 | interface AliasedIdentified {
17 | val identifiers: Set
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/identified/Identified.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.identified
15 |
16 | interface Identified {
17 | val identifier: ResourceLocation
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/item/handler/item/LongUseResults.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.item.handler.item
15 |
16 | enum class LongUseResults {
17 | START,
18 | IGNORE,
19 | STOP,
20 | ;
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/item/items/dye/DyeableItem.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.item.items.dye
15 |
16 | interface DyeableItem
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/item/items/end/EndItem.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.item.items.end
15 |
16 | interface EndItem
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/item/items/fishing/FishingItem.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.item.items.fishing
15 |
16 | interface FishingItem
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/item/items/fluid/FluidDrainable.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.item.items.fluid
15 |
16 | interface FluidDrainable
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/item/items/tool/properties/MiningSpeedTool.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.item.items.tool.properties
15 |
16 | interface MiningSpeedTool {
17 | val miningSpeed: Float
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/item/items/tool/properties/requirement/HandBreakable.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2024 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.item.items.tool.properties.requirement
15 |
16 | interface HandBreakable
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/item/items/weapon/WeaponItem.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.item.items.weapon
15 |
16 | interface WeaponItem
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/item/items/weapon/attack/range/pullable/PullableItem.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.item.items.weapon.attack.range.pullable
15 |
16 | interface PullableItem
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/item/items/weapon/defend/DefendingItem.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.item.items.weapon.defend
15 |
16 | interface DefendingItem
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/item/stack/HalfStackableItem.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.item.stack
15 |
16 | interface HalfStackableItem : StackableItem {
17 | override val maxStackSize: Int get() = 16
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/item/stack/StackableItem.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.item.stack
15 |
16 | interface StackableItem {
17 | val maxStackSize: Int get() = 64
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/materials/PushReactions.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2021 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.materials
15 |
16 | enum class PushReactions {
17 | NORMAL,
18 | DESTROY,
19 | BLOCK,
20 | }
21 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/particle/data/vibration/VibrationSource.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.particle.data.vibration
15 |
16 | interface VibrationSource
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/registries/registry/Parentable.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2021 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.registries.registry
15 |
16 | interface Parentable {
17 |
18 | var parent: T?
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/registries/registries/registry/RegistryFakeEnumerable.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2021 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.registries.registries.registry
15 |
16 | interface RegistryFakeEnumerable {
17 | val name: String
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/text/events/ChatEvent.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.text.events
15 |
16 | import javafx.scene.text.Text
17 |
18 | interface ChatEvent {
19 |
20 | fun applyJavaFX(text: Text) {}
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/text/formatting/TextFormattable.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.text.formatting
15 |
16 | interface TextFormattable {
17 |
18 | fun toText(): Any?
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/text/formatting/color/Colored.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.text.formatting.color
15 |
16 | interface Colored {
17 | val color: RGBColor
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/world/border/WorldBorderState.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.world.border
15 |
16 | enum class WorldBorderState {
17 | GROWING,
18 | SHRINKING,
19 | STATIC,
20 | ;
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/world/difficulty/WorldDifficulty.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.world.difficulty
15 |
16 | class WorldDifficulty(
17 | val difficulty: Difficulties,
18 | val locked: Boolean,
19 | )
20 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/world/positions/SectionHeight.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.world.positions
15 |
16 | typealias SectionHeight = Int
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/data/world/positions/SectionIndex.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.data.world.positions
15 |
16 | typealias SectionIndex = Int
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/datafixer/Fixer.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.datafixer
15 |
16 | interface Fixer {
17 |
18 | fun load() = Unit
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/gui/eros/main/play/server/Refreshable.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2021 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.gui.eros.main.play.server
15 |
16 | interface Refreshable {
17 |
18 | fun refresh()
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/gui/rendering/gui/elements/layout/grid/GridGrow.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2021 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.gui.rendering.gui.elements.layout.grid
15 |
16 | enum class GridGrow {
17 | NEVER,
18 | ALWAYS,
19 | ;
20 | }
21 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/gui/rendering/gui/gui/ElementStates.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.gui.rendering.gui.gui
15 |
16 | enum class ElementStates {
17 | CLOSED,
18 | HIDDEN,
19 | OPENED,
20 | ;
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/gui/rendering/gui/hud/HUDElement.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.gui.rendering.gui.hud
15 |
16 | import de.bixilon.minosoft.gui.rendering.gui.GUIElement
17 |
18 | interface HUDElement : GUIElement
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/gui/rendering/input/key/manager/binding/KeyBindingCallback.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.gui.rendering.input.key.manager.binding
15 |
16 | typealias KeyBindingCallback = (Boolean) -> Unit
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/gui/rendering/renderer/drawable/BaseDrawable.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.gui.rendering.renderer.drawable
15 |
16 | interface BaseDrawable {
17 | val skipDraw: Boolean
18 | get() = false
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/gui/rendering/renderer/renderer/AsyncRenderer.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.gui.rendering.renderer.renderer
15 |
16 | interface AsyncRenderer : Renderer {
17 |
18 | fun prepareDrawAsync()
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/gui/rendering/shader/types/AnimatedShader.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.gui.rendering.shader.types
15 |
16 | interface AnimatedShader {
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/gui/rendering/system/base/MeshUtil.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.gui.rendering.system.base
15 |
16 | object MeshUtil {
17 | inline fun Int.buffer() = Float.fromBits(this)
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/gui/rendering/system/base/buffer/IntBuffer.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2021 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 | package de.bixilon.minosoft.gui.rendering.system.base.buffer
14 |
15 | interface IntBuffer {
16 | var data: IntArray
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/gui/rendering/system/base/phases/SkipAll.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.gui.rendering.system.base.phases
15 |
16 | interface SkipAll {
17 | val skipAll: Boolean
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/gui/rendering/system/base/texture/shader/ShaderIdentifiable.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.gui.rendering.system.base.texture.shader
15 |
16 | interface ShaderIdentifiable {
17 | val shaderId: Int
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/gui/rendering/system/base/texture/skin/IllegalSkinError.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.gui.rendering.system.base.texture.skin
15 |
16 | class IllegalSkinError(message: String? = null) : Exception(message)
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/gui/rendering/system/opengl/MemoryLeakException.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.gui.rendering.system.opengl
15 |
16 | class MemoryLeakException(message: String? = null) : Exception(message)
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/gui/rendering/system/window/CursorModes.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2021 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.gui.rendering.system.window
15 |
16 | enum class CursorModes {
17 | NORMAL,
18 | HIDDEN,
19 | DISABLED,
20 | ;
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/gui/rendering/system/window/KeyChangeTypes.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2021 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.gui.rendering.system.window
15 |
16 | enum class KeyChangeTypes {
17 | PRESS,
18 | RELEASE,
19 | REPEAT,
20 | ;
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/gui/rendering/tint/MultiTintProvider.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.gui.rendering.tint
15 |
16 | interface MultiTintProvider {
17 | val tints: Int
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/gui/rendering/util/mesh/MeshAttribute.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2021 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.gui.rendering.util.mesh
15 |
16 | data class MeshAttribute(
17 | val index: Int,
18 | val size: Int,
19 | val stride: Long,
20 | )
21 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/local/storage/WorldStorage.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2024 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.local.storage
15 |
16 | import de.bixilon.minosoft.data.world.World
17 |
18 | interface WorldStorage {
19 |
20 | fun loadWorld(world: World)
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/modding/event/events/AsyncEvent.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.modding.event.events
15 |
16 | interface AsyncEvent
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/modding/event/events/Event.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2021 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.modding.event.events
15 |
16 | interface Event
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/modding/event/events/FinishBootEvent.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 | package de.bixilon.minosoft.modding.event.events
14 |
15 | class FinishBootEvent : Event
16 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/modding/event/master/GlobalEventMaster.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.modding.event.master
15 |
16 |
17 | object GlobalEventMaster : EventMaster()
18 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/modding/loader/error/DuplicateModError.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.modding.loader.error
15 |
16 | class DuplicateModError(val name: String) : Exception("Duplicate mod detected: $name")
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/modding/loader/error/NoModMainError.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.modding.loader.error
15 |
16 | class NoModMainError(val clazz: Class<*>) : Exception("$clazz does not inherit ModMain!")
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/modding/loader/error/NoObjectMainError.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.modding.loader.error
15 |
16 | class NoObjectMainError(val clazz: Class<*>) : Exception("$clazz is not a kotlin object!")
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/physics/handlers/movement/StepAdjuster.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.physics.handlers.movement
15 |
16 | interface StepAdjuster {
17 | val stepHeight:Float
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/properties/MinosoftProperties.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.properties
15 |
16 | import de.bixilon.kutil.cast.CastUtil.unsafeNull
17 |
18 | var MinosoftProperties: MinosoftP = unsafeNull()
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/protocol/network/network/client/netty/exceptions/NetworkException.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.protocol.network.network.client.netty.exceptions
15 |
16 | open class NetworkException : Exception()
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/protocol/packets/s2c/play/scoreboard/format/BlankFormat.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.protocol.packets.s2c.play.scoreboard.format
15 |
16 | object BlankFormat : NumberFormat
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/protocol/packets/types/Packet.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 | package de.bixilon.minosoft.protocol.packets.types
14 |
15 | interface Packet {
16 |
17 | fun log(reducedLog: Boolean)
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/protocol/protocol/PacketDirections.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.protocol.protocol
15 |
16 | enum class PacketDirections {
17 | SERVER_TO_CLIENT,
18 | CLIENT_TO_SERVER,
19 | ;
20 | }
21 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/protocol/status/StatusPing.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 | package de.bixilon.minosoft.protocol.status
14 |
15 | import de.bixilon.kutil.time.TimeUtil.nanos
16 |
17 | class StatusPing(
18 | val nanos: Long = nanos(),
19 | )
20 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/protocol/status/StatusPong.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 | package de.bixilon.minosoft.protocol.status
14 |
15 | class StatusPong(
16 | val latency: Long,
17 | )
18 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/protocol/versions/VersionIndex.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.protocol.versions
15 |
16 | import de.bixilon.kutil.json.JsonObject
17 |
18 | typealias VersionIndex = Map
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/recipes/Recipe.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.recipes
15 |
16 | interface Recipe {
17 | val category: RecipeCategories?
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/recipes/crafting/CraftingRecipe.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.recipes.crafting
15 |
16 | import de.bixilon.minosoft.recipes.Recipe
17 |
18 | interface CraftingRecipe : Recipe
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/recipes/special/SpecialRecipe.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.recipes.special
15 |
16 | import de.bixilon.minosoft.recipes.Recipe
17 |
18 | interface SpecialRecipe : Recipe
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/terminal/commands/Command.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.terminal.commands
15 |
16 | import de.bixilon.minosoft.commands.nodes.LiteralNode
17 |
18 | interface Command {
19 | var node: LiteralNode
20 | }
21 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/terminal/commands/session/SessionCommand.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2024 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.terminal.commands.session
15 |
16 | import de.bixilon.minosoft.terminal.commands.Command
17 |
18 | interface SessionCommand : Command
19 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/util/Initializable.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.util
15 |
16 | interface Initializable {
17 |
18 | fun init() {}
19 | fun postInit() {}
20 | }
21 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/util/account/minecraft/MinecraftTokens.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.util.account.minecraft
15 |
16 | data class MinecraftTokens(
17 | val accessToken: String,
18 | val expires: Long,
19 | )
20 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/util/collections/DirectList.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.util.collections
15 |
16 | interface DirectList
17 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/util/crash/freeze/FreezeDump.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.util.crash.freeze
15 |
16 | class FreezeDump(
17 | val dump: String,
18 | val path: String?,
19 | )
20 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/util/delegate/delegate/DelegateSetter.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.util.delegate.delegate
15 |
16 | interface DelegateSetter {
17 |
18 | fun get(): V
19 | fun set(value: V)
20 | }
21 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/util/http/exceptions/HTTPException.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2021 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.util.http.exceptions
15 |
16 | open class HTTPException(
17 | val statusCode: Int,
18 | message: String? = null,
19 | ) : Exception(message)
20 |
--------------------------------------------------------------------------------
/src/main/java/de/bixilon/minosoft/util/signature/SignatureException.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.util.signature
15 |
16 | class SignatureException(message: String? = null) : Exception(message)
17 |
--------------------------------------------------------------------------------
/src/main/resources/assets/.assets:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/main/resources/assets/.assets
--------------------------------------------------------------------------------
/src/main/resources/assets/minecraft/gui/atlas/block/sign.json:
--------------------------------------------------------------------------------
1 | {
2 | "front": {
3 | "0": {
4 | "texture": "entity/signs/oak",
5 | "resolution": [64, 32],
6 | "start": [2, 2],
7 | "end": [26, 14]
8 | }
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minecraft/gui/atlas/elements/button.json:
--------------------------------------------------------------------------------
1 | {
2 | "disabled": {
3 | "0": {
4 | "texture": "gui/widgets",
5 | "start": [0, 46],
6 | "end": [200, 66]
7 | },
8 | "18": {
9 | "texture": "gui/sprites/widget/button_disabled",
10 | "resolution": [200, 20]
11 | }
12 | },
13 | "normal": {
14 | "0": {
15 | "texture": "gui/widgets",
16 | "start": [0, 66],
17 | "end": [200, 86]
18 | },
19 | "18": {
20 | "texture": "gui/sprites/widget/button",
21 | "resolution": [200, 20]
22 | }
23 | },
24 | "hovered": {
25 | "0": {
26 | "texture": "gui/widgets",
27 | "start": [0, 86],
28 | "end": [200, 106]
29 | },
30 | "18": {
31 | "texture": "gui/sprites/widget/button_highlighted",
32 | "resolution": [200, 20]
33 | }
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minecraft/gui/atlas/hud/hotbar/air.json:
--------------------------------------------------------------------------------
1 | {
2 | "bubble": {
3 | "0": {
4 | "texture": "gui/icons",
5 | "start": [16, 18],
6 | "end": [25, 27]
7 | },
8 | "18": {
9 | "texture": "gui/sprites/hud/air",
10 | "resolution": [9, 9]
11 | }
12 | },
13 | "popping": {
14 | "0": {
15 | "texture": "gui/icons",
16 | "start": [25, 18],
17 | "end": [34, 27]
18 | },
19 | "18": {
20 | "texture": "gui/sprites/hud/air_bursting",
21 | "resolution": [9, 9]
22 | }
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minecraft/gui/atlas/hud/hotbar/protection.json:
--------------------------------------------------------------------------------
1 | {
2 | "empty": {
3 | "0": {
4 | "texture": "gui/icons",
5 | "start": [16, 9],
6 | "end": [25, 18]
7 | },
8 | "18": {
9 | "texture": "gui/sprites/hud/armor_empty",
10 | "resolution": [9, 9]
11 | }
12 | },
13 | "half": {
14 | "0": {
15 | "texture": "gui/icons",
16 | "start": [25, 9],
17 | "end": [34, 18]
18 | },
19 | "18": {
20 | "texture": "gui/sprites/hud/armor_half",
21 | "resolution": [9, 9]
22 | }
23 | },
24 | "full": {
25 | "0": {
26 | "texture": "gui/icons",
27 | "start": [34, 9],
28 | "end": [43, 18]
29 | },
30 | "18": {
31 | "texture": "gui/sprites/hud/armor_full",
32 | "resolution": [9, 9]
33 | }
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minecraft/gui/atlas/hud/hud.json:
--------------------------------------------------------------------------------
1 | {
2 | "crosshair": {
3 | "0": {
4 | "texture": "gui/icons",
5 | "start": [0, 0],
6 | "end": [16, 16]
7 | },
8 | "18": {
9 | "texture": "gui/sprites/hud/crosshair",
10 | "resolution": [15, 15]
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minecraft/mappings/enums/entity/actions.json:
--------------------------------------------------------------------------------
1 | {
2 | "0": [
3 | "START_SNEAKING",
4 | "STOP_SNEAKING",
5 | "LEAVE_BED",
6 | "START_SPRINTING",
7 | "STOP_SPRINTING",
8 | "START_JUMPING_WITH_HORSE",
9 | "OPEN_HORSE_INVENTORY"
10 | ],
11 | "77": [
12 | "START_SNEAKING",
13 | "STOP_SNEAKING",
14 | "LEAVE_BED",
15 | "START_SPRINTING",
16 | "STOP_SPRINTING",
17 | "START_JUMPING_WITH_HORSE",
18 | "STOP_JUMPING_WITH_HORSE",
19 | "OPEN_HORSE_INVENTORY",
20 | "START_ELYTRA_FLYING"
21 | ]
22 | }
23 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minecraft/mappings/enums/entity/animations.json:
--------------------------------------------------------------------------------
1 | {
2 | "0": {
3 | "0": "SWING_MAIN_ARM",
4 | "1": "TAKE_DAMAGE",
5 | "2": "LEAVE_BED",
6 | "3": "EAT_FOOD",
7 | "4": "CRITICAL_HIT",
8 | "5": "ENCHANTED_HIT",
9 | "102": "UNKNOWN_1",
10 | "104": "START_SNEAKING",
11 | "105": "STOP_SNEAKING"
12 | },
13 | "47": {
14 | "0": "SWING_MAIN_ARM",
15 | "1": "TAKE_DAMAGE",
16 | "2": "LEAVE_BED",
17 | "3": "EAT_FOOD",
18 | "4": "CRITICAL_HIT",
19 | "5": "ENCHANTED_HIT"
20 | },
21 | "110": [
22 | "SWING_MAIN_ARM",
23 | "TAKE_DAMAGE",
24 | "LEAVE_BED",
25 | "SWING_OFF_ARM",
26 | "CRITICAL_HIT",
27 | "ENCHANTED_HIT"
28 | ]
29 | }
30 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minecraft/mappings/enums/entity/equipment.json:
--------------------------------------------------------------------------------
1 | {
2 | "0": [
3 | "MAIN_HAND",
4 | "FEET",
5 | "LEGS",
6 | "CHEST",
7 | "HEAD"
8 | ],
9 | "49": [
10 | "MAIN_HAND",
11 | "OFF_HAND",
12 | "FEET",
13 | "LEGS",
14 | "CHEST",
15 | "HEAD"
16 | ]
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minecraft/mappings/enums/title_actions.json:
--------------------------------------------------------------------------------
1 | {
2 | "18": [
3 | "TITLE_TEXT",
4 | "SUBTITLE",
5 | "TIMES",
6 | "HIDE",
7 | "RESET"
8 | ],
9 | "302": [
10 | "TITLE_TEXT",
11 | "SUBTITLE",
12 | "HOTBAR_TEXT",
13 | "TIMES",
14 | "HIDE",
15 | "RESET"
16 | ]
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minecraft/mappings/registries/channels.json:
--------------------------------------------------------------------------------
1 | {
2 | "0": {
3 | "minecraft:brand": {
4 | "name": "MC|Brand"
5 | },
6 | "minecraft:stop_sound": {
7 | "name": "MC|StopSound"
8 | },
9 | "minecraft:register": {
10 | "name": "REGISTER"
11 | },
12 | "minecraft:unregister": {
13 | "name": "UNREGISTER"
14 | }
15 | },
16 | "385": {
17 | "minecraft:brand": {
18 | "name": "minecraft:brand"
19 | },
20 | "minecraft:register": {
21 | "name": "minecraft:register"
22 | },
23 | "minecraft:unregister": {
24 | "name": "minecraft:unregister"
25 | }
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minecraft/mappings/registries/container_type.json:
--------------------------------------------------------------------------------
1 | {
2 | "0": {
3 | "minecraft:chest": {
4 | "id": 0
5 | },
6 | "minecraft:crafting_table": {
7 | "id": 1
8 | },
9 | "minecraft:furnace": {
10 | "id": 2
11 | },
12 | "minecraft:dispenser": {
13 | "id": 3
14 | },
15 | "minecraft:enchanting_table": {
16 | "id": 4
17 | },
18 | "minecraft:brewing_stand": {
19 | "id": 5
20 | },
21 | "minecraft:villager": {
22 | "id": 6
23 | },
24 | "minecraft:beacon": {
25 | "id": 7
26 | },
27 | "minecraft:anvil": {
28 | "id": 8
29 | },
30 | "minecraft:hopper": {
31 | "id": 9
32 | },
33 | "minecraft:dropper": {
34 | "id": 9
35 | },
36 | "minecraft:EntityHorse": {
37 | "id": 9
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minecraft/mappings/registries/message_types.json:
--------------------------------------------------------------------------------
1 | {
2 | "0": {
3 | "minecraft:chat": {
4 | "id": 0,
5 | "position": "chat",
6 | "chat": {
7 | "translation_key": "%s",
8 | "parameters": ["content"]
9 | }
10 | },
11 | "minecraft:system": {
12 | "id": 1,
13 | "position": "system",
14 | "chat": {
15 | "translation_key": "%s",
16 | "parameters": ["content"]
17 | }
18 | },
19 | "minecraft:game": {
20 | "id": 2,
21 | "position": "hotbar",
22 | "chat": {
23 | "translation_key": "%s",
24 | "parameters": ["content"]
25 | }
26 | }
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minecraft/mappings/registries/vibration_source.json:
--------------------------------------------------------------------------------
1 | {
2 | "0": {
3 | "minecraft:block": {
4 | "id": 0
5 | },
6 | "minecraft:entity": {
7 | "id": 1
8 | }
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minecraft/mappings/registries/world_events.json:
--------------------------------------------------------------------------------
1 | {
2 | "0": {
3 | "minecraft:block_destroyed": {
4 | "id": 2001
5 | }
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minecraft/models/block/entities/chest/single.smodel:
--------------------------------------------------------------------------------
1 | {
2 | "elements": {
3 | "body": {
4 | "from": [-7, 0, -7],
5 | "to": [7, 10, 7],
6 | "texture": "minecraft:chest",
7 | "uv": [0, 19],
8 | "faces": "all",
9 | "children": {
10 | "lid": {
11 | "offset": [0, 9, 0],
12 | "transform": "lid",
13 | "from": [-7, 0, -7],
14 | "to": [7, 5, 7],
15 | "uv": [0, 0],
16 | "faces": "all",
17 | "children": {
18 | "lock": {
19 | "offset": [0, -2, -8],
20 | "from": [-1, 0, 0],
21 | "to": [1, 4, 1],
22 | "uv": [0, 0],
23 | "faces": "all"
24 | }
25 | }
26 | }
27 | }
28 | }
29 | },
30 | "transforms": {
31 | "lid": {
32 | "pivot": [0, 9, 7]
33 | }
34 | },
35 | "textures": {
36 | "minecraft:chest": {
37 | "resolution": [64, 64]
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minecraft/models/block/entities/shulker_box.smodel:
--------------------------------------------------------------------------------
1 | {
2 | "elements": {
3 | "base": {
4 | "from": [-8, 0, -8],
5 | "to": [8, 8, 8],
6 | "texture": "minecraft:shulker",
7 | "uv": [0, 28],
8 | "faces": "all"
9 | },
10 | "lid": {
11 | "transform": "lid",
12 | "from": [-8, 4, -8],
13 | "to": [8, 16, 8],
14 | "texture": "minecraft:shulker",
15 | "uv": [0, 0],
16 | "faces": "all"
17 | }
18 | },
19 | "transforms": {
20 | "lid": {
21 | "pivot": [0, 8, 0]
22 | }
23 | },
24 | "textures": {
25 | "minecraft:shulker": {
26 | "resolution": [64, 64]
27 | }
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minecraft/tags/block/mineable/hoe.json:
--------------------------------------------------------------------------------
1 | {"values":["nether_wart_block","warped_wart_block","hay_block","dried_kelp_block","target","shroomlight","sponge","wet_sponge","jungle_leaves","oak_leaves","spruce_leaves","dark_oak_leaves","acacia_leaves","birch_leaves","azalea_leaves","azalea_leaves_flowers","sculk_sensor","moss_block","moss_carpet"]}
2 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minecraft/tags/block/mineable/shovel.json:
--------------------------------------------------------------------------------
1 | {"values":["clay","dirt","coarse_dirt","podzol","farmland","grass_block","gravel","mycelium","sand","red_sand","snow_block","snow","soul_sand","dirt_path","white_concrete_powder","orange_concrete_powder","magenta_concrete_powder","light_blue_concrete_powder","yellow_concrete_powder","lime_concrete_powder","pink_concrete_powder","gray_concrete_powder","light_gray_concrete_powder","cyan_concrete_powder","purple_concrete_powder","blue_concrete_powder","brown_concrete_powder","green_concrete_powder","red_concrete_powder","black_concrete_powder","soul_soil","rooted_dirt"]}
2 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minecraft/tags/block/needs_diamond_tool.json:
--------------------------------------------------------------------------------
1 | {"values":["obsidian","crying_obsidian","netherite_block","respawn_anchor","ancient_debris"]}
2 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minecraft/tags/block/needs_iron_tool.json:
--------------------------------------------------------------------------------
1 | {"values":["diamond_block","diamond_ore","deepslate_diamond_ore","emerald_ore","deepslate_emerald_ore","emerald_block","gold_block","raw_gold_block","gold_ore","deepslate_gold_ore","redstone_ore","deepslate_redstone_ore"]}
2 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minecraft/tags/block/needs_stone_tool.json:
--------------------------------------------------------------------------------
1 | {"values":["iron_block","raw_iron_block","iron_ore","deepslate_iron_ore","lapis_block","lapis_ore","deepslate_lapis_ore","copper_block","raw_copper_block","copper_ore","deepslate_copper_ore","cut_copper_slab","cut_copper_stairs","cut_copper","weathered_copper","weathered_cut_copper_slab","weathered_cut_copper_stairs","weathered_cut_copper","exposed_copper","exposed_cut_copper_slab","exposed_cut_copper_stairs","exposed_cut_copper","waxed_copper_block","waxed_cut_copper_slab","waxed_cut_copper_stairs","waxed_cut_copper","waxed_weathered_copper","waxed_weathered_cut_copper_slab","waxed_weathered_cut_copper_stairs","waxed_weathered_cut_copper","waxed_exposed_copper","waxed_exposed_cut_copper_slab","waxed_exposed_cut_copper_stairs","waxed_exposed_cut_copper","waxed_oxidized_copper","waxed_oxidized_cut_copper_slab","waxed_oxidized_cut_copper_stairs","waxed_oxidized_cut_copper","lightning_rod"]}
2 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minosoft/eros/themes/default.css:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minosoft/eros/themes/green.css:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 |
15 | * {
16 | -primary-color: #13d349;
17 | -primary-light-color: #66ff7a;
18 | -primary-dark-color: #00a012;
19 | -primary-text-color: #000000;
20 | }
21 |
22 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minosoft/eros/themes/red.css:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 |
15 | * {
16 | -primary-color: #d33324;
17 | -primary-light-color: #ff684e;
18 | -primary-dark-color: #9a0000;
19 | -primary-text-color: #000000;
20 | }
21 |
22 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minosoft/eros/themes/yellow.css:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2022 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 |
15 | * {
16 | -primary-color: #e8da1a;
17 | -primary-light-color: #ffff5a;
18 | -primary-dark-color: #b2a900;
19 | -primary-text-color: #000000;
20 | }
21 |
22 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minosoft/fixer/block_entity.json:
--------------------------------------------------------------------------------
1 | {
2 | "Furnace": "furnace",
3 | "Chest": "chest",
4 | "EnderChest": "ender_chest",
5 | "RecordPlayer": "jukebox",
6 | "Trap": "dispenser",
7 | "Dropper": "dropper",
8 | "Sign": "sign",
9 | "wall_sign": "sign",
10 | "MobSpawner": "mob_spawner",
11 | "Music": "note_block",
12 | "Cauldron": "brewing_stand",
13 | "EnchantTable": "enchanting_table",
14 | "CommandBlock": "command_block",
15 | "Beacon": "beacon",
16 | "Skull": "skull",
17 | "DLDetector": "daylight_detector",
18 | "Hopper": "hopper",
19 | "Banner": "banner",
20 | "FlowerPot": "flower_pot",
21 | "Piston": "piston",
22 | "Comparator": "comparator",
23 | "unpowered_comparator": "comparator",
24 | "powered_comparator": "comparator",
25 | "Structure": "structure_block",
26 | "Airportal": "end_portal",
27 | "EndGateway": "end_gateway",
28 | "noteblock": "note_block",
29 | "Bed": "bed"
30 | }
31 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minosoft/fixer/container_type.json:
--------------------------------------------------------------------------------
1 | {
2 | "EntityHorse": "minecraft:horse",
3 | "container": "chest"
4 | }
5 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minosoft/fixer/entity_attribute.json:
--------------------------------------------------------------------------------
1 | {
2 |
3 | "generic.maxHealth": "generic.max_health",
4 | "zombie.spawnReinforcements": "zombie.spawn_reinforcements",
5 |
6 | "horse.jumpStrength": "horse.jump_strength",
7 |
8 | "generic.followRange": "generic.follow_range",
9 |
10 | "generic.knockbackResistance": "generic.knockback_resistance",
11 |
12 | "generic.movementSpeed": "generic.movement_speed",
13 |
14 | "generic.flyingSpeed": "generic.flying_speed",
15 |
16 | "generic.attackDamage": "generic.attack_damage",
17 | "generic.attackKnockback": "generic.attack_knockback",
18 | "generic.attackSpeed": "generic.attack_speed",
19 | "generic.armorToughness": "generic.armor_toughness"
20 | }
21 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minosoft/fixer/entity_type.json:
--------------------------------------------------------------------------------
1 | {
2 | "zombie_pigman": "zombified_piglin"
3 | }
4 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minosoft/fixer/motif.json:
--------------------------------------------------------------------------------
1 | {
2 | "Kebab": "kebab",
3 | "Aztec": "aztec",
4 | "Alban": "alban",
5 | "Aztec2": "aztec2",
6 | "Bomb": "bomb",
7 | "Plant": "plant",
8 | "Wasteland": "wasteland",
9 | "Wanderer": "wanderer",
10 | "Graham": "graham",
11 | "Pool": "pool",
12 | "Courbet": "courbet",
13 | "Sunset": "sunset",
14 | "Sea": "sea",
15 | "Creebet": "creebet",
16 | "Match": "match",
17 | "Bust": "bust",
18 | "Stage": "stage",
19 | "Void": "void",
20 | "SkullAndRoses": "skull_and_roses",
21 | "Wither": "wither",
22 | "Fighters": "fighters",
23 | "Skeleton": "skeleton",
24 | "DonkeyKong": "donkey_kong",
25 | "Pointer": "pointer",
26 | "Pigscene": "pigscene",
27 | "BurningSkull": "burning_skull"
28 | }
29 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minosoft/fixer/registry.json:
--------------------------------------------------------------------------------
1 | {
2 | "dimension": "dimension_type",
3 | "motive": "motif",
4 | "worldgen/biome": "biome"
5 | }
6 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minosoft/gui/atlas/elements/switch.json:
--------------------------------------------------------------------------------
1 | {
2 | "normal": {
3 | "0": {
4 | "texture": "minosoft:textures/icons",
5 | "start": [0, 10],
6 | "end": [30, 31]
7 | }
8 | },
9 | "disabled": {
10 | "0": {
11 | "texture": "minosoft:textures/icons",
12 | "start": [30, 10],
13 | "end": [60, 31]
14 | }
15 | },
16 | "hovered": {
17 | "0": {
18 | "texture": "minosoft:textures/icons",
19 | "start": [60, 10],
20 | "end": [90, 31]
21 | }
22 | },
23 | "state_off": {
24 | "0": {
25 | "texture": "minosoft:textures/icons",
26 | "start": [90, 10],
27 | "end": [96, 31]
28 | }
29 | },
30 | "state_on": {
31 | "0": {
32 | "texture": "minosoft:textures/icons",
33 | "start": [96, 10],
34 | "end": [102, 31]
35 | }
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minosoft/rendering/shader/generic/color/color.fsh:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | #version 330 core
15 |
16 | in vec4 finTintColor;
17 |
18 |
19 | out vec4 foutColor;
20 |
21 |
22 | void main() {
23 | foutColor = finTintColor;
24 | }
25 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minosoft/rendering/shader/includes/skeletal/buffer.glsl:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 |
15 | layout (std140) uniform uSkeletalBuffer
16 | {
17 | mat4 uSkeletalTransforms[TRANSFORMS];
18 | };
19 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minosoft/rendering/shader/includes/uv.glsl:
--------------------------------------------------------------------------------
1 | const vec2 CONST_UV[4] = vec2[](
2 | vec2(+ 0.0f, + 0.0f),
3 | vec2(+ 0.0f, + 1.0f),
4 | vec2(+ 1.0f, + 1.0f),
5 | vec2(+ 1.0f, + 0.0f)
6 | );
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minosoft/rendering/shader/sky/skybox/skybox.fsh:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program.If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | #version 330 core
15 |
16 | out vec4 foutColor;
17 |
18 | uniform vec4 uSkyColor;
19 |
20 | void main() {
21 | foutColor = uSkyColor;
22 | }
23 |
--------------------------------------------------------------------------------
/src/main/resources/assets/minosoft/textures/debug.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/main/resources/assets/minosoft/textures/debug.png
--------------------------------------------------------------------------------
/src/main/resources/assets/minosoft/textures/gui/icons.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/main/resources/assets/minosoft/textures/gui/icons.png
--------------------------------------------------------------------------------
/src/main/resources/assets/minosoft/textures/icons/window_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/main/resources/assets/minosoft/textures/icons/window_icon.png
--------------------------------------------------------------------------------
/src/main/resources/assets/minosoft/textures/white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/main/resources/assets/minosoft/textures/white.png
--------------------------------------------------------------------------------
/src/main/resources/assets/minosoft/updater/release.der:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/main/resources/assets/minosoft/updater/release.der
--------------------------------------------------------------------------------
/src/main/resources/assets/mojang/yggdrasil/pubkey.der:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/main/resources/assets/mojang/yggdrasil/pubkey.der
--------------------------------------------------------------------------------
/src/main/resources/assets_override/.assets:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Bixilon/Minosoft/74e59142a188fea4bf1aeeccd185e0476cefa5b5/src/main/resources/assets_override/.assets
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/acacia_wall_sign.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "facing=north": {
4 | "model": "block/sign/acacia/wall"
5 | },
6 | "facing=east": {
7 | "model": "block/sign/acacia/wall",
8 | "y": 90
9 | },
10 | "facing=south": {
11 | "model": "block/sign/acacia/wall",
12 | "y": 180
13 | },
14 | "facing=west": {
15 | "model": "block/sign/acacia/wall",
16 | "y": 270
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/bamboo_wall_sign.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "facing=north": {
4 | "model": "block/sign/bamboo/wall"
5 | },
6 | "facing=east": {
7 | "model": "block/sign/bamboo/wall",
8 | "y": 90
9 | },
10 | "facing=south": {
11 | "model": "block/sign/bamboo/wall",
12 | "y": 180
13 | },
14 | "facing=west": {
15 | "model": "block/sign/bamboo/wall",
16 | "y": 270
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/birch_wall_sign.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "facing=north": {
4 | "model": "block/sign/birch/wall"
5 | },
6 | "facing=east": {
7 | "model": "block/sign/birch/wall",
8 | "y": 90
9 | },
10 | "facing=south": {
11 | "model": "block/sign/birch/wall",
12 | "y": 180
13 | },
14 | "facing=west": {
15 | "model": "block/sign/birch/wall",
16 | "y": 270
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/black_bed.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "part=head,facing=north": {
4 | "model": "block/bed/black/head"
5 | },
6 | "part=head,facing=east": {
7 | "model": "block/bed/black/head",
8 | "y": 90
9 | },
10 | "part=head,facing=south": {
11 | "model": "block/bed/black/head",
12 | "y": 180
13 | },
14 | "part=head,facing=west": {
15 | "model": "block/bed/black/head",
16 | "y": 270
17 | },
18 | "part=foot,facing=north": {
19 | "model": "block/bed/black/foot"
20 | },
21 | "part=foot,facing=east": {
22 | "model": "block/bed/black/foot",
23 | "y": 90
24 | },
25 | "part=foot,facing=south": {
26 | "model": "block/bed/black/foot",
27 | "y": 180
28 | },
29 | "part=foot,facing=west": {
30 | "model": "block/bed/black/foot",
31 | "y": 270
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/blue_bed.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "part=head,facing=north": {
4 | "model": "block/bed/blue/head"
5 | },
6 | "part=head,facing=east": {
7 | "model": "block/bed/blue/head",
8 | "y": 90
9 | },
10 | "part=head,facing=south": {
11 | "model": "block/bed/blue/head",
12 | "y": 180
13 | },
14 | "part=head,facing=west": {
15 | "model": "block/bed/blue/head",
16 | "y": 270
17 | },
18 | "part=foot,facing=north": {
19 | "model": "block/bed/blue/foot"
20 | },
21 | "part=foot,facing=east": {
22 | "model": "block/bed/blue/foot",
23 | "y": 90
24 | },
25 | "part=foot,facing=south": {
26 | "model": "block/bed/blue/foot",
27 | "y": 180
28 | },
29 | "part=foot,facing=west": {
30 | "model": "block/bed/blue/foot",
31 | "y": 270
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/brown_bed.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "part=head,facing=north": {
4 | "model": "block/bed/brown/head"
5 | },
6 | "part=head,facing=east": {
7 | "model": "block/bed/brown/head",
8 | "y": 90
9 | },
10 | "part=head,facing=south": {
11 | "model": "block/bed/brown/head",
12 | "y": 180
13 | },
14 | "part=head,facing=west": {
15 | "model": "block/bed/brown/head",
16 | "y": 270
17 | },
18 | "part=foot,facing=north": {
19 | "model": "block/bed/brown/foot"
20 | },
21 | "part=foot,facing=east": {
22 | "model": "block/bed/brown/foot",
23 | "y": 90
24 | },
25 | "part=foot,facing=south": {
26 | "model": "block/bed/brown/foot",
27 | "y": 180
28 | },
29 | "part=foot,facing=west": {
30 | "model": "block/bed/brown/foot",
31 | "y": 270
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/crimson_wall_sign.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "facing=north": {
4 | "model": "block/sign/crimson/wall"
5 | },
6 | "facing=east": {
7 | "model": "block/sign/crimson/wall",
8 | "y": 90
9 | },
10 | "facing=south": {
11 | "model": "block/sign/crimson/wall",
12 | "y": 180
13 | },
14 | "facing=west": {
15 | "model": "block/sign/crimson/wall",
16 | "y": 270
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/cyan_bed.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "part=head,facing=north": {
4 | "model": "block/bed/cyan/head"
5 | },
6 | "part=head,facing=east": {
7 | "model": "block/bed/cyan/head",
8 | "y": 90
9 | },
10 | "part=head,facing=south": {
11 | "model": "block/bed/cyan/head",
12 | "y": 180
13 | },
14 | "part=head,facing=west": {
15 | "model": "block/bed/cyan/head",
16 | "y": 270
17 | },
18 | "part=foot,facing=north": {
19 | "model": "block/bed/cyan/foot"
20 | },
21 | "part=foot,facing=east": {
22 | "model": "block/bed/cyan/foot",
23 | "y": 90
24 | },
25 | "part=foot,facing=south": {
26 | "model": "block/bed/cyan/foot",
27 | "y": 180
28 | },
29 | "part=foot,facing=west": {
30 | "model": "block/bed/cyan/foot",
31 | "y": 270
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/dark_oak_wall_sign.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "facing=north": {
4 | "model": "block/sign/dark_oak/wall"
5 | },
6 | "facing=east": {
7 | "model": "block/sign/dark_oak/wall",
8 | "y": 90
9 | },
10 | "facing=south": {
11 | "model": "block/sign/dark_oak/wall",
12 | "y": 180
13 | },
14 | "facing=west": {
15 | "model": "block/sign/dark_oak/wall",
16 | "y": 270
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/gray_bed.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "part=head,facing=north": {
4 | "model": "block/bed/gray/head"
5 | },
6 | "part=head,facing=east": {
7 | "model": "block/bed/gray/head",
8 | "y": 90
9 | },
10 | "part=head,facing=south": {
11 | "model": "block/bed/gray/head",
12 | "y": 180
13 | },
14 | "part=head,facing=west": {
15 | "model": "block/bed/gray/head",
16 | "y": 270
17 | },
18 | "part=foot,facing=north": {
19 | "model": "block/bed/gray/foot"
20 | },
21 | "part=foot,facing=east": {
22 | "model": "block/bed/gray/foot",
23 | "y": 90
24 | },
25 | "part=foot,facing=south": {
26 | "model": "block/bed/gray/foot",
27 | "y": 180
28 | },
29 | "part=foot,facing=west": {
30 | "model": "block/bed/gray/foot",
31 | "y": 270
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/green_bed.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "part=head,facing=north": {
4 | "model": "block/bed/green/head"
5 | },
6 | "part=head,facing=east": {
7 | "model": "block/bed/green/head",
8 | "y": 90
9 | },
10 | "part=head,facing=south": {
11 | "model": "block/bed/green/head",
12 | "y": 180
13 | },
14 | "part=head,facing=west": {
15 | "model": "block/bed/green/head",
16 | "y": 270
17 | },
18 | "part=foot,facing=north": {
19 | "model": "block/bed/green/foot"
20 | },
21 | "part=foot,facing=east": {
22 | "model": "block/bed/green/foot",
23 | "y": 90
24 | },
25 | "part=foot,facing=south": {
26 | "model": "block/bed/green/foot",
27 | "y": 180
28 | },
29 | "part=foot,facing=west": {
30 | "model": "block/bed/green/foot",
31 | "y": 270
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/jungle_wall_sign.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "facing=north": {
4 | "model": "block/sign/jungle/wall"
5 | },
6 | "facing=east": {
7 | "model": "block/sign/jungle/wall",
8 | "y": 90
9 | },
10 | "facing=south": {
11 | "model": "block/sign/jungle/wall",
12 | "y": 180
13 | },
14 | "facing=west": {
15 | "model": "block/sign/jungle/wall",
16 | "y": 270
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/light_blue_bed.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "part=head,facing=north": {
4 | "model": "block/bed/light_blue/head"
5 | },
6 | "part=head,facing=east": {
7 | "model": "block/bed/light_blue/head",
8 | "y": 90
9 | },
10 | "part=head,facing=south": {
11 | "model": "block/bed/light_blue/head",
12 | "y": 180
13 | },
14 | "part=head,facing=west": {
15 | "model": "block/bed/light_blue/head",
16 | "y": 270
17 | },
18 | "part=foot,facing=north": {
19 | "model": "block/bed/light_blue/foot"
20 | },
21 | "part=foot,facing=east": {
22 | "model": "block/bed/light_blue/foot",
23 | "y": 90
24 | },
25 | "part=foot,facing=south": {
26 | "model": "block/bed/light_blue/foot",
27 | "y": 180
28 | },
29 | "part=foot,facing=west": {
30 | "model": "block/bed/light_blue/foot",
31 | "y": 270
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/light_gray_bed.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "part=head,facing=north": {
4 | "model": "block/bed/light_gray/head"
5 | },
6 | "part=head,facing=east": {
7 | "model": "block/bed/light_gray/head",
8 | "y": 90
9 | },
10 | "part=head,facing=south": {
11 | "model": "block/bed/light_gray/head",
12 | "y": 180
13 | },
14 | "part=head,facing=west": {
15 | "model": "block/bed/light_gray/head",
16 | "y": 270
17 | },
18 | "part=foot,facing=north": {
19 | "model": "block/bed/light_gray/foot"
20 | },
21 | "part=foot,facing=east": {
22 | "model": "block/bed/light_gray/foot",
23 | "y": 90
24 | },
25 | "part=foot,facing=south": {
26 | "model": "block/bed/light_gray/foot",
27 | "y": 180
28 | },
29 | "part=foot,facing=west": {
30 | "model": "block/bed/light_gray/foot",
31 | "y": 270
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/lime_bed.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "part=head,facing=north": {
4 | "model": "block/bed/lime/head"
5 | },
6 | "part=head,facing=east": {
7 | "model": "block/bed/lime/head",
8 | "y": 90
9 | },
10 | "part=head,facing=south": {
11 | "model": "block/bed/lime/head",
12 | "y": 180
13 | },
14 | "part=head,facing=west": {
15 | "model": "block/bed/lime/head",
16 | "y": 270
17 | },
18 | "part=foot,facing=north": {
19 | "model": "block/bed/lime/foot"
20 | },
21 | "part=foot,facing=east": {
22 | "model": "block/bed/lime/foot",
23 | "y": 90
24 | },
25 | "part=foot,facing=south": {
26 | "model": "block/bed/lime/foot",
27 | "y": 180
28 | },
29 | "part=foot,facing=west": {
30 | "model": "block/bed/lime/foot",
31 | "y": 270
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/magenta_bed.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "part=head,facing=north": {
4 | "model": "block/bed/magenta/head"
5 | },
6 | "part=head,facing=east": {
7 | "model": "block/bed/magenta/head",
8 | "y": 90
9 | },
10 | "part=head,facing=south": {
11 | "model": "block/bed/magenta/head",
12 | "y": 180
13 | },
14 | "part=head,facing=west": {
15 | "model": "block/bed/magenta/head",
16 | "y": 270
17 | },
18 | "part=foot,facing=north": {
19 | "model": "block/bed/magenta/foot"
20 | },
21 | "part=foot,facing=east": {
22 | "model": "block/bed/magenta/foot",
23 | "y": 90
24 | },
25 | "part=foot,facing=south": {
26 | "model": "block/bed/magenta/foot",
27 | "y": 180
28 | },
29 | "part=foot,facing=west": {
30 | "model": "block/bed/magenta/foot",
31 | "y": 270
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/mangrove_wall_sign.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "facing=north": {
4 | "model": "block/sign/mangrove/wall"
5 | },
6 | "facing=east": {
7 | "model": "block/sign/mangrove/wall",
8 | "y": 90
9 | },
10 | "facing=south": {
11 | "model": "block/sign/mangrove/wall",
12 | "y": 180
13 | },
14 | "facing=west": {
15 | "model": "block/sign/mangrove/wall",
16 | "y": 270
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/oak_wall_sign.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "facing=north": {
4 | "model": "block/sign/oak/wall"
5 | },
6 | "facing=east": {
7 | "model": "block/sign/oak/wall",
8 | "y": 90
9 | },
10 | "facing=south": {
11 | "model": "block/sign/oak/wall",
12 | "y": 180
13 | },
14 | "facing=west": {
15 | "model": "block/sign/oak/wall",
16 | "y": 270
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/orange_bed.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "part=head,facing=north": {
4 | "model": "block/bed/orange/head"
5 | },
6 | "part=head,facing=east": {
7 | "model": "block/bed/orange/head",
8 | "y": 90
9 | },
10 | "part=head,facing=south": {
11 | "model": "block/bed/orange/head",
12 | "y": 180
13 | },
14 | "part=head,facing=west": {
15 | "model": "block/bed/orange/head",
16 | "y": 270
17 | },
18 | "part=foot,facing=north": {
19 | "model": "block/bed/orange/foot"
20 | },
21 | "part=foot,facing=east": {
22 | "model": "block/bed/orange/foot",
23 | "y": 90
24 | },
25 | "part=foot,facing=south": {
26 | "model": "block/bed/orange/foot",
27 | "y": 180
28 | },
29 | "part=foot,facing=west": {
30 | "model": "block/bed/orange/foot",
31 | "y": 270
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/pink_bed.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "part=head,facing=north": {
4 | "model": "block/bed/pink/head"
5 | },
6 | "part=head,facing=east": {
7 | "model": "block/bed/pink/head",
8 | "y": 90
9 | },
10 | "part=head,facing=south": {
11 | "model": "block/bed/pink/head",
12 | "y": 180
13 | },
14 | "part=head,facing=west": {
15 | "model": "block/bed/pink/head",
16 | "y": 270
17 | },
18 | "part=foot,facing=north": {
19 | "model": "block/bed/pink/foot"
20 | },
21 | "part=foot,facing=east": {
22 | "model": "block/bed/pink/foot",
23 | "y": 90
24 | },
25 | "part=foot,facing=south": {
26 | "model": "block/bed/pink/foot",
27 | "y": 180
28 | },
29 | "part=foot,facing=west": {
30 | "model": "block/bed/pink/foot",
31 | "y": 270
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/purple_bed.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "part=head,facing=north": {
4 | "model": "block/bed/purple/head"
5 | },
6 | "part=head,facing=east": {
7 | "model": "block/bed/purple/head",
8 | "y": 90
9 | },
10 | "part=head,facing=south": {
11 | "model": "block/bed/purple/head",
12 | "y": 180
13 | },
14 | "part=head,facing=west": {
15 | "model": "block/bed/purple/head",
16 | "y": 270
17 | },
18 | "part=foot,facing=north": {
19 | "model": "block/bed/purple/foot"
20 | },
21 | "part=foot,facing=east": {
22 | "model": "block/bed/purple/foot",
23 | "y": 90
24 | },
25 | "part=foot,facing=south": {
26 | "model": "block/bed/purple/foot",
27 | "y": 180
28 | },
29 | "part=foot,facing=west": {
30 | "model": "block/bed/purple/foot",
31 | "y": 270
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/red_bed.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "part=head,facing=north": {
4 | "model": "block/bed/red/head"
5 | },
6 | "part=head,facing=east": {
7 | "model": "block/bed/red/head",
8 | "y": 90
9 | },
10 | "part=head,facing=south": {
11 | "model": "block/bed/red/head",
12 | "y": 180
13 | },
14 | "part=head,facing=west": {
15 | "model": "block/bed/red/head",
16 | "y": 270
17 | },
18 | "part=foot,facing=north": {
19 | "model": "block/bed/red/foot"
20 | },
21 | "part=foot,facing=east": {
22 | "model": "block/bed/red/foot",
23 | "y": 90
24 | },
25 | "part=foot,facing=south": {
26 | "model": "block/bed/red/foot",
27 | "y": 180
28 | },
29 | "part=foot,facing=west": {
30 | "model": "block/bed/red/foot",
31 | "y": 270
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/spruce_wall_sign.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "facing=north": {
4 | "model": "block/sign/spruce/wall"
5 | },
6 | "facing=east": {
7 | "model": "block/sign/spruce/wall",
8 | "y": 90
9 | },
10 | "facing=south": {
11 | "model": "block/sign/spruce/wall",
12 | "y": 180
13 | },
14 | "facing=west": {
15 | "model": "block/sign/spruce/wall",
16 | "y": 270
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/warped_wall_sign.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "facing=north": {
4 | "model": "block/sign/warped/wall"
5 | },
6 | "facing=east": {
7 | "model": "block/sign/warped/wall",
8 | "y": 90
9 | },
10 | "facing=south": {
11 | "model": "block/sign/warped/wall",
12 | "y": 180
13 | },
14 | "facing=west": {
15 | "model": "block/sign/warped/wall",
16 | "y": 270
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/white_bed.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "part=head,facing=north": {
4 | "model": "block/bed/white/head"
5 | },
6 | "part=head,facing=east": {
7 | "model": "block/bed/white/head",
8 | "y": 90
9 | },
10 | "part=head,facing=south": {
11 | "model": "block/bed/white/head",
12 | "y": 180
13 | },
14 | "part=head,facing=west": {
15 | "model": "block/bed/white/head",
16 | "y": 270
17 | },
18 | "part=foot,facing=north": {
19 | "model": "block/bed/white/foot"
20 | },
21 | "part=foot,facing=east": {
22 | "model": "block/bed/white/foot",
23 | "y": 90
24 | },
25 | "part=foot,facing=south": {
26 | "model": "block/bed/white/foot",
27 | "y": 180
28 | },
29 | "part=foot,facing=west": {
30 | "model": "block/bed/white/foot",
31 | "y": 270
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/blockstates/yellow_bed.json:
--------------------------------------------------------------------------------
1 | {
2 | "variants": {
3 | "part=head,facing=north": {
4 | "model": "block/bed/yellow/head"
5 | },
6 | "part=head,facing=east": {
7 | "model": "block/bed/yellow/head",
8 | "y": 90
9 | },
10 | "part=head,facing=south": {
11 | "model": "block/bed/yellow/head",
12 | "y": 180
13 | },
14 | "part=head,facing=west": {
15 | "model": "block/bed/yellow/head",
16 | "y": 270
17 | },
18 | "part=foot,facing=north": {
19 | "model": "block/bed/yellow/foot"
20 | },
21 | "part=foot,facing=east": {
22 | "model": "block/bed/yellow/foot",
23 | "y": 90
24 | },
25 | "part=foot,facing=south": {
26 | "model": "block/bed/yellow/foot",
27 | "y": 180
28 | },
29 | "part=foot,facing=west": {
30 | "model": "block/bed/yellow/foot",
31 | "y": 270
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/black/foot.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/foot",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/black"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/black/head.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/head",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/black"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/blue/foot.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/foot",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/blue"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/blue/head.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/head",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/blue"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/brown/foot.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/foot",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/brown"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/brown/head.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/head",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/brown"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/cyan/foot.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/foot",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/cyan"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/cyan/head.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/head",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/cyan"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/gray/foot.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/foot",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/gray"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/gray/head.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/head",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/gray"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/green/foot.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/foot",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/green"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/green/head.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/head",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/green"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/light_blue/foot.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/foot",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/light_blue"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/light_blue/head.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/head",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/light_blue"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/light_gray/foot.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/foot",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/light_gray"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/light_gray/head.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/head",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/light_gray"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/lime/foot.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/foot",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/lime"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/lime/head.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/head",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/lime"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/magenta/foot.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/foot",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/magenta"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/magenta/head.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/head",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/magenta"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/orange/foot.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/foot",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/orange"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/orange/head.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/head",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/orange"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/pink/foot.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/foot",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/pink"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/pink/head.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/head",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/pink"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/purple/foot.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/foot",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/purple"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/purple/head.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/head",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/purple"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/red/foot.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/foot",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/red"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/red/head.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/head",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/red"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/template/bed.json:
--------------------------------------------------------------------------------
1 | {
2 | "textures": {
3 | "particle": "minecraft:block/oak_planks"
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/white/foot.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/foot",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/white"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/white/head.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/head",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/white"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/yellow/foot.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/foot",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/yellow"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/bed/yellow/head.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/bed/template/head",
3 | "textures": {
4 | "bed": "minecraft:entity/bed/yellow"
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/acacia/standing.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/sign/template/standing",
3 | "textures": {
4 | "particle": "minecraft:block/acacia_planks",
5 | "sign": "minecraft:entity/signs/acacia"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/acacia/wall.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/sign/template/wall",
3 | "textures": {
4 | "particle": "minecraft:block/acacia_planks",
5 | "sign": "minecraft:entity/signs/acacia"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/bamboo/standing.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/sign/template/standing",
3 | "textures": {
4 | "particle": "minecraft:block/bamboo_block",
5 | "sign": "minecraft:entity/signs/bamboo"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/bamboo/wall.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/sign/template/wall",
3 | "textures": {
4 | "particle": "minecraft:block/bamboo_block",
5 | "sign": "minecraft:entity/signs/bamboo"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/birch/standing.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/sign/template/standing",
3 | "textures": {
4 | "particle": "minecraft:block/birch_planks",
5 | "sign": "minecraft:entity/signs/birch"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/birch/wall.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/sign/template/wall",
3 | "textures": {
4 | "particle": "minecraft:block/birch_planks",
5 | "sign": "minecraft:entity/signs/birch"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/cherry/standing.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/sign/template/standing",
3 | "textures": {
4 | "particle": "minecraft:block/cherry_planks",
5 | "sign": "minecraft:entity/signs/cherry"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/cherry/wall.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/sign/template/wall",
3 | "textures": {
4 | "particle": "minecraft:block/cherry_planks",
5 | "sign": "minecraft:entity/signs/cherry"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/crimson/standing.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/sign/template/standing",
3 | "textures": {
4 | "particle": "minecraft:block/crimson_planks",
5 | "sign": "minecraft:entity/signs/crimson"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/crimson/wall.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/sign/template/wall",
3 | "textures": {
4 | "particle": "minecraft:block/crimson_planks",
5 | "sign": "minecraft:entity/signs/crimson"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/dark_oak/standing.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/sign/template/standing",
3 | "textures": {
4 | "particle": "minecraft:block/dark_oak_planks",
5 | "sign": "minecraft:entity/signs/dark_oak"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/dark_oak/wall.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/sign/template/wall",
3 | "textures": {
4 | "particle": "minecraft:block/dark_oak_planks",
5 | "sign": "minecraft:entity/signs/dark_oak"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/jungle/standing.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/sign/template/standing",
3 | "textures": {
4 | "particle": "minecraft:block/jungle_planks",
5 | "sign": "minecraft:entity/signs/jungle"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/jungle/wall.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/sign/template/wall",
3 | "textures": {
4 | "particle": "minecraft:block/jungle_planks",
5 | "sign": "minecraft:entity/signs/jungle"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/mangrove/standing.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/sign/template/standing",
3 | "textures": {
4 | "particle": "minecraft:block/mangrove_planks",
5 | "sign": "minecraft:entity/signs/mangrove"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/mangrove/wall.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/sign/template/wall",
3 | "textures": {
4 | "particle": "minecraft:block/mangrove_planks",
5 | "sign": "minecraft:entity/signs/mangrove"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/oak/standing.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/sign/template/standing",
3 | "textures": {
4 | "particle": "minecraft:block/oak_planks",
5 | "sign": "minecraft:entity/signs/oak"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/oak/wall.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/sign/template/wall",
3 | "textures": {
4 | "particle": "minecraft:block/oak_planks",
5 | "sign": "minecraft:entity/signs/oak"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/spruce/standing.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/sign/template/standing",
3 | "textures": {
4 | "particle": "minecraft:block/spruce_planks",
5 | "sign": "minecraft:entity/signs/spruce"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/spruce/wall.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/sign/template/wall",
3 | "textures": {
4 | "particle": "minecraft:block/spruce_planks",
5 | "sign": "minecraft:entity/signs/spruce"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/template/wall.json:
--------------------------------------------------------------------------------
1 | {
2 | "elements": [
3 | {
4 | "from": [0, 4.5, 14],
5 | "to": [16, 12.5, 16],
6 | "faces": {
7 | "down": {
8 | "uv": [0.5, 0, 4.5, 1],
9 | "texture": "#sign"
10 | },
11 | "up": {
12 | "uv": [4.5, 0, 8.5, 1],
13 | "rotation": 180,
14 | "texture": "#sign"
15 | },
16 | "east": {
17 | "uv": [0.0, 1, 0.5, 7],
18 | "texture": "#sign",
19 | "cullface": "east"
20 | },
21 | "north": {
22 | "uv": [0.5, 1, 6.5, 7],
23 | "texture": "#sign",
24 | "cullface": "north"
25 | },
26 | "west": {
27 | "uv": [6.5, 1, 7.0, 7],
28 | "texture": "#sign",
29 | "cullface": "west"
30 | },
31 | "south": {
32 | "uv": [7.0, 1, 13.0, 7],
33 | "texture": "#sign",
34 | "cullface": "south"
35 | }
36 | }
37 | }
38 | ]
39 | }
40 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/warped/standing.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/sign/template/standing",
3 | "textures": {
4 | "particle": "minecraft:block/warped_planks",
5 | "sign": "minecraft:entity/signs/warped"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/main/resources/assets_override/minecraft/models/block/sign/warped/wall.json:
--------------------------------------------------------------------------------
1 | {
2 | "parent": "block/sign/template/wall",
3 | "textures": {
4 | "particle": "minecraft:block/warped_planks",
5 | "sign": "minecraft:entity/signs/warped"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/src/test/java/de/bixilon/minosoft/util/KUtilTest.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Minosoft
3 | * Copyright (C) 2020-2023 Moritz Zwerger
4 | *
5 | * 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.
6 | *
7 | * 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 A PARTICULAR PURPOSE. See the GNU General Public License for more details.
8 | *
9 | * You should have received a copy of the GNU General Public License along with this program. If not, see .
10 | *
11 | * This software is not affiliated with Mojang AB, the original developer of Minecraft.
12 | */
13 |
14 | package de.bixilon.minosoft.util
15 |
16 |
17 | class KUtilTest
18 |
--------------------------------------------------------------------------------
/util/.gitignore:
--------------------------------------------------------------------------------
1 | *.iml
2 |
--------------------------------------------------------------------------------