├── .editorconfig
├── .github
├── FUNDING.yml
├── ISSUE_TEMPLATE
│ ├── bug.yml
│ ├── config.yml
│ ├── crash.yml
│ └── suggestion.yml
├── builds
│ ├── get_number.js
│ ├── index.js
│ ├── mc_version.js
│ ├── package-lock.json
│ └── package.json
├── pull_request_template.md
└── workflows
│ ├── build.yml
│ ├── issue-moderator.yml
│ └── pull-request.yml
├── .gitignore
├── .idea
├── copyright
│ ├── Meteor.xml
│ └── profiles_settings.xml
└── scopes
│ └── Meteor_Copyright_Notice.xml
├── LICENSE
├── README.md
├── build.gradle.kts
├── gradle.properties
├── gradle
└── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── launch
├── build.gradle.kts
└── src
│ └── main
│ └── java
│ └── meteordevelopment
│ └── meteorclient
│ └── Main.java
├── settings.gradle.kts
└── src
└── main
├── java
└── meteordevelopment
│ └── meteorclient
│ ├── MeteorClient.java
│ ├── MixinPlugin.java
│ ├── ModMenuIntegration.java
│ ├── addons
│ ├── AddonManager.java
│ ├── GithubRepo.java
│ └── MeteorAddon.java
│ ├── asm
│ ├── Asm.java
│ ├── AsmTransformer.java
│ ├── Descriptor.java
│ ├── FieldInfo.java
│ ├── MethodInfo.java
│ └── transformers
│ │ └── PacketInflaterTransformer.java
│ ├── commands
│ ├── Command.java
│ ├── Commands.java
│ ├── arguments
│ │ ├── ComponentMapArgumentType.java
│ │ ├── CompoundNbtTagArgumentType.java
│ │ ├── DirectionArgumentType.java
│ │ ├── FakePlayerArgumentType.java
│ │ ├── FriendArgumentType.java
│ │ ├── MacroArgumentType.java
│ │ ├── ModuleArgumentType.java
│ │ ├── NotebotSongArgumentType.java
│ │ ├── PlayerArgumentType.java
│ │ ├── PlayerListEntryArgumentType.java
│ │ ├── ProfileArgumentType.java
│ │ ├── RegistryEntryReferenceArgumentType.java
│ │ ├── SettingArgumentType.java
│ │ ├── SettingValueArgumentType.java
│ │ └── WaypointArgumentType.java
│ └── commands
│ │ ├── BindCommand.java
│ │ ├── BindsCommand.java
│ │ ├── CommandsCommand.java
│ │ ├── DamageCommand.java
│ │ ├── DisconnectCommand.java
│ │ ├── DismountCommand.java
│ │ ├── DropCommand.java
│ │ ├── EnchantCommand.java
│ │ ├── EnderChestCommand.java
│ │ ├── FakePlayerCommand.java
│ │ ├── FovCommand.java
│ │ ├── FriendsCommand.java
│ │ ├── GamemodeCommand.java
│ │ ├── GiveCommand.java
│ │ ├── HClipCommand.java
│ │ ├── InputCommand.java
│ │ ├── InventoryCommand.java
│ │ ├── LocateCommand.java
│ │ ├── MacroCommand.java
│ │ ├── ModulesCommand.java
│ │ ├── NameHistoryCommand.java
│ │ ├── NbtCommand.java
│ │ ├── NotebotCommand.java
│ │ ├── PeekCommand.java
│ │ ├── ProfilesCommand.java
│ │ ├── ReloadCommand.java
│ │ ├── ResetCommand.java
│ │ ├── RotationCommand.java
│ │ ├── SaveMapCommand.java
│ │ ├── SayCommand.java
│ │ ├── ServerCommand.java
│ │ ├── SettingCommand.java
│ │ ├── SpectateCommand.java
│ │ ├── SwarmCommand.java
│ │ ├── ToggleCommand.java
│ │ ├── VClipCommand.java
│ │ ├── WaspCommand.java
│ │ └── WaypointCommand.java
│ ├── events
│ ├── Cancellable.java
│ ├── entity
│ │ ├── BoatMoveEvent.java
│ │ ├── DropItemsEvent.java
│ │ ├── EntityAddedEvent.java
│ │ ├── EntityDestroyEvent.java
│ │ ├── EntityRemovedEvent.java
│ │ ├── LivingEntityMoveEvent.java
│ │ └── player
│ │ │ ├── AttackEntityEvent.java
│ │ │ ├── BlockBreakingCooldownEvent.java
│ │ │ ├── BreakBlockEvent.java
│ │ │ ├── CanWalkOnFluidEvent.java
│ │ │ ├── ClipAtLedgeEvent.java
│ │ │ ├── FinishUsingItemEvent.java
│ │ │ ├── InteractBlockEvent.java
│ │ │ ├── InteractEntityEvent.java
│ │ │ ├── InteractItemEvent.java
│ │ │ ├── ItemUseCrosshairTargetEvent.java
│ │ │ ├── JumpVelocityMultiplierEvent.java
│ │ │ ├── PickItemsEvent.java
│ │ │ ├── PlaceBlockEvent.java
│ │ │ ├── PlayerMoveEvent.java
│ │ │ ├── PlayerTickMovementEvent.java
│ │ │ ├── SendMovementPacketsEvent.java
│ │ │ ├── StartBreakingBlockEvent.java
│ │ │ └── StoppedUsingItemEvent.java
│ ├── game
│ │ ├── ChangePerspectiveEvent.java
│ │ ├── GameJoinedEvent.java
│ │ ├── GameLeftEvent.java
│ │ ├── ItemStackTooltipEvent.java
│ │ ├── OpenScreenEvent.java
│ │ ├── ReceiveMessageEvent.java
│ │ ├── ResolutionChangedEvent.java
│ │ ├── ResourcePacksReloadedEvent.java
│ │ └── SendMessageEvent.java
│ ├── meteor
│ │ ├── ActiveModulesChangedEvent.java
│ │ ├── CharTypedEvent.java
│ │ ├── CustomFontChangedEvent.java
│ │ ├── KeyEvent.java
│ │ ├── ModuleBindChangedEvent.java
│ │ ├── MouseButtonEvent.java
│ │ └── MouseScrollEvent.java
│ ├── packets
│ │ ├── ContainerSlotUpdateEvent.java
│ │ ├── InventoryEvent.java
│ │ ├── PacketEvent.java
│ │ └── PlaySoundPacketEvent.java
│ ├── render
│ │ ├── ApplyTransformationEvent.java
│ │ ├── ArmRenderEvent.java
│ │ ├── GetFovEvent.java
│ │ ├── HeldItemRendererEvent.java
│ │ ├── Render2DEvent.java
│ │ ├── Render3DEvent.java
│ │ ├── RenderAfterWorldEvent.java
│ │ ├── RenderBlockEntityEvent.java
│ │ ├── RenderBossBarEvent.java
│ │ ├── RenderItemEntityEvent.java
│ │ └── TooltipDataEvent.java
│ └── world
│ │ ├── AmbientOcclusionEvent.java
│ │ ├── BlockActivateEvent.java
│ │ ├── BlockUpdateEvent.java
│ │ ├── ChunkDataEvent.java
│ │ ├── ChunkOcclusionEvent.java
│ │ ├── CollisionShapeEvent.java
│ │ ├── ParticleEvent.java
│ │ ├── PlaySoundEvent.java
│ │ ├── ServerConnectBeginEvent.java
│ │ ├── ServerConnectEndEvent.java
│ │ └── TickEvent.java
│ ├── gui
│ ├── DefaultSettingsWidgetFactory.java
│ ├── GuiKeyEvents.java
│ ├── GuiTheme.java
│ ├── GuiThemes.java
│ ├── WidgetScreen.java
│ ├── WindowScreen.java
│ ├── renderer
│ │ ├── GuiDebugRenderer.java
│ │ ├── GuiRenderOperation.java
│ │ ├── GuiRenderer.java
│ │ ├── Scissor.java
│ │ ├── operations
│ │ │ └── TextOperation.java
│ │ └── packer
│ │ │ ├── GuiTexture.java
│ │ │ ├── TexturePacker.java
│ │ │ └── TextureRegion.java
│ ├── screens
│ │ ├── CommitsScreen.java
│ │ ├── EditBookTitleAndAuthorScreen.java
│ │ ├── EditSystemScreen.java
│ │ ├── MarkerScreen.java
│ │ ├── ModuleScreen.java
│ │ ├── ModulesScreen.java
│ │ ├── NotebotSongsScreen.java
│ │ ├── ProxiesImportScreen.java
│ │ ├── ProxiesScreen.java
│ │ ├── accounts
│ │ │ ├── AccountInfoScreen.java
│ │ │ ├── AccountsScreen.java
│ │ │ ├── AddAccountScreen.java
│ │ │ ├── AddAlteningAccountScreen.java
│ │ │ ├── AddCrackedAccountScreen.java
│ │ │ └── AddMicrosoftAccountScreen.java
│ │ └── settings
│ │ │ ├── BlockDataSettingScreen.java
│ │ │ ├── BlockListSettingScreen.java
│ │ │ ├── BlockSettingScreen.java
│ │ │ ├── CollectionListSettingScreen.java
│ │ │ ├── ColorSettingScreen.java
│ │ │ ├── DynamicRegistryListSettingScreen.java
│ │ │ ├── EnchantmentListSettingScreen.java
│ │ │ ├── EntityTypeListSettingScreen.java
│ │ │ ├── FontFaceSettingScreen.java
│ │ │ ├── ItemListSettingScreen.java
│ │ │ ├── ItemSettingScreen.java
│ │ │ ├── ModuleListSettingScreen.java
│ │ │ ├── PacketBoolSettingScreen.java
│ │ │ ├── ParticleTypeListSettingScreen.java
│ │ │ ├── PotionSettingScreen.java
│ │ │ ├── ScreenHandlerSettingScreen.java
│ │ │ ├── SoundEventListSettingScreen.java
│ │ │ ├── StatusEffectAmplifierMapSettingScreen.java
│ │ │ ├── StatusEffectListSettingScreen.java
│ │ │ └── StorageBlockListSettingScreen.java
│ ├── tabs
│ │ ├── Tab.java
│ │ ├── TabScreen.java
│ │ ├── Tabs.java
│ │ ├── WindowTabScreen.java
│ │ └── builtin
│ │ │ ├── ConfigTab.java
│ │ │ ├── FriendsTab.java
│ │ │ ├── GuiTab.java
│ │ │ ├── HudTab.java
│ │ │ ├── MacrosTab.java
│ │ │ ├── ModulesTab.java
│ │ │ ├── PathManagerTab.java
│ │ │ └── ProfilesTab.java
│ ├── themes
│ │ └── meteor
│ │ │ ├── MeteorGuiTheme.java
│ │ │ ├── MeteorWidget.java
│ │ │ └── widgets
│ │ │ ├── WMeteorAccount.java
│ │ │ ├── WMeteorHorizontalSeparator.java
│ │ │ ├── WMeteorLabel.java
│ │ │ ├── WMeteorModule.java
│ │ │ ├── WMeteorMultiLabel.java
│ │ │ ├── WMeteorQuad.java
│ │ │ ├── WMeteorSection.java
│ │ │ ├── WMeteorTooltip.java
│ │ │ ├── WMeteorTopBar.java
│ │ │ ├── WMeteorVerticalSeparator.java
│ │ │ ├── WMeteorView.java
│ │ │ ├── WMeteorWindow.java
│ │ │ ├── input
│ │ │ ├── WMeteorDropdown.java
│ │ │ ├── WMeteorSlider.java
│ │ │ └── WMeteorTextBox.java
│ │ │ └── pressable
│ │ │ ├── WMeteorButton.java
│ │ │ ├── WMeteorCheckbox.java
│ │ │ ├── WMeteorFavorite.java
│ │ │ ├── WMeteorMinus.java
│ │ │ ├── WMeteorPlus.java
│ │ │ └── WMeteorTriangle.java
│ ├── utils
│ │ ├── AlignmentX.java
│ │ ├── AlignmentY.java
│ │ ├── BaseWidget.java
│ │ ├── Cell.java
│ │ ├── CharFilter.java
│ │ ├── IScreenFactory.java
│ │ ├── SettingsWidgetFactory.java
│ │ ├── StarscriptTextBoxRenderer.java
│ │ └── WindowConfig.java
│ └── widgets
│ │ ├── WAccount.java
│ │ ├── WHorizontalSeparator.java
│ │ ├── WItem.java
│ │ ├── WItemWithLabel.java
│ │ ├── WKeybind.java
│ │ ├── WLabel.java
│ │ ├── WMultiLabel.java
│ │ ├── WQuad.java
│ │ ├── WRoot.java
│ │ ├── WTexture.java
│ │ ├── WTooltip.java
│ │ ├── WTopBar.java
│ │ ├── WVerticalSeparator.java
│ │ ├── WWidget.java
│ │ ├── containers
│ │ ├── WContainer.java
│ │ ├── WHorizontalList.java
│ │ ├── WSection.java
│ │ ├── WTable.java
│ │ ├── WVerticalList.java
│ │ ├── WView.java
│ │ └── WWindow.java
│ │ ├── input
│ │ ├── WBlockPosEdit.java
│ │ ├── WDoubleEdit.java
│ │ ├── WDropdown.java
│ │ ├── WIntEdit.java
│ │ ├── WSlider.java
│ │ └── WTextBox.java
│ │ └── pressable
│ │ ├── WButton.java
│ │ ├── WCheckbox.java
│ │ ├── WFavorite.java
│ │ ├── WMinus.java
│ │ ├── WPlus.java
│ │ ├── WPressable.java
│ │ └── WTriangle.java
│ ├── mixin
│ ├── AbstractBlockAccessor.java
│ ├── AbstractBlockMixin.java
│ ├── AbstractBlockStateMixin.java
│ ├── AbstractBoatEntityMixin.java
│ ├── AbstractClientPlayerEntityMixin.java
│ ├── AbstractFurnaceScreenHandlerMixin.java
│ ├── AbstractFurnaceScreenMixin.java
│ ├── AbstractSignBlockEntityRendererMixin.java
│ ├── AbstractSignEditScreenAccessor.java
│ ├── AbstractSignEditScreenMixin.java
│ ├── ArmorFeatureRendererMixin.java
│ ├── BackgroundRendererMixin.java
│ ├── BakedQuadMixin.java
│ ├── BannerBlockEntityRendererMixin.java
│ ├── BeaconBlockEntityRendererMixin.java
│ ├── BeaconScreenMixin.java
│ ├── BiomeColorsMixin.java
│ ├── BlockCollisionSpliteratorMixin.java
│ ├── BlockColorsMixin.java
│ ├── BlockEntityRenderDispatcherMixin.java
│ ├── BlockEntityTypeAccessor.java
│ ├── BlockHitResultAccessor.java
│ ├── BlockItemMixin.java
│ ├── BlockMixin.java
│ ├── BlockModelRendererMixin.java
│ ├── BlockRenderManagerMixin.java
│ ├── BlockStateMixin.java
│ ├── BookEditScreenMixin.java
│ ├── BookScreenMixin.java
│ ├── BossBarHudMixin.java
│ ├── BoxMixin.java
│ ├── BrewingStandScreenMixin.java
│ ├── BrightnessGetterMixin.java
│ ├── CameraMixin.java
│ ├── CapabilityTrackerMixin.java
│ ├── CapeFeatureRendererMixin.java
│ ├── ChatHudAccessor.java
│ ├── ChatHudLineMixin.java
│ ├── ChatHudLineVisibleMixin.java
│ ├── ChatHudMixin.java
│ ├── ChatInputSuggestorMixin.java
│ ├── ChatScreenMixin.java
│ ├── ChunkAccessor.java
│ ├── ChunkBorderDebugRendererMixin.java
│ ├── ChunkOcclusionDataBuilderMixin.java
│ ├── ChunkSkyLightProviderMixin.java
│ ├── ClientChunkManagerAccessor.java
│ ├── ClientChunkMapAccessor.java
│ ├── ClientConnectionAccessor.java
│ ├── ClientConnectionMixin.java
│ ├── ClientPlayNetworkHandlerAccessor.java
│ ├── ClientPlayNetworkHandlerMixin.java
│ ├── ClientPlayerEntityAccessor.java
│ ├── ClientPlayerEntityMixin.java
│ ├── ClientPlayerInteractionManagerAccessor.java
│ ├── ClientPlayerInteractionManagerMixin.java
│ ├── ClientWorldMixin.java
│ ├── CobwebBlockMixin.java
│ ├── CompassStateMixin.java
│ ├── ConnectScreenMixin.java
│ ├── ContainerComponentAccessor.java
│ ├── ContainerComponentMixin.java
│ ├── CrashReportMixin.java
│ ├── CreativeInventoryScreenAccessor.java
│ ├── CreativeSlotMixin.java
│ ├── CrossbowItemAccessor.java
│ ├── DefaultSkinHelperMixin.java
│ ├── DisconnectedScreenMixin.java
│ ├── DrawContextMixin.java
│ ├── ElytraFeatureRendererMixin.java
│ ├── EnchantingTableBlockEntityRendererMixin.java
│ ├── EndCrystalEntityModelMixin.java
│ ├── EndCrystalEntityRendererMixin.java
│ ├── EntityAccessor.java
│ ├── EntityBucketItemAccessor.java
│ ├── EntityEffectParticleEffectAccessor.java
│ ├── EntityMixin.java
│ ├── EntityRenderDispatcherMixin.java
│ ├── EntityRenderStateMixin.java
│ ├── EntityRendererMixin.java
│ ├── EntityTrackingSectionAccessor.java
│ ├── EntityVelocityUpdateS2CPacketAccessor.java
│ ├── ExplosionS2CPacketMixin.java
│ ├── FileCacheAccessor.java
│ ├── FireworkRocketEntityMixin.java
│ ├── FireworksSparkParticleMixin.java
│ ├── FireworksSparkParticleSubMixin.java
│ ├── FishingBobberEntityMixin.java
│ ├── FluidRendererMixin.java
│ ├── GameOptionsMixin.java
│ ├── GameRendererMixin.java
│ ├── GlBackendMixin.java
│ ├── GlResourceManagerMixin.java
│ ├── GpuTextureMixin.java
│ ├── HandledScreenAccessor.java
│ ├── HandledScreenMixin.java
│ ├── HeadFeatureRendererMixin.java
│ ├── HeldItemRendererMixin.java
│ ├── HorseBaseEntityMixin.java
│ ├── HorseScreenHandlerAccessor.java
│ ├── IdentifierAccessor.java
│ ├── InGameHudMixin.java
│ ├── InGameOverlayRendererMixin.java
│ ├── ItemEntityRendererMixin.java
│ ├── ItemGroupsMixin.java
│ ├── ItemMixin.java
│ ├── ItemRendererMixin.java
│ ├── ItemStackMixin.java
│ ├── KeyBindingAccessor.java
│ ├── KeyboardInputMixin.java
│ ├── KeyboardMixin.java
│ ├── LayerRenderStateAccessor.java
│ ├── LightmapTextureManagerMixin.java
│ ├── LightningEntityRendererMixin.java
│ ├── LivingEntityAccessor.java
│ ├── LivingEntityMixin.java
│ ├── LivingEntityRendererMixin.java
│ ├── MapRendererMixin.java
│ ├── MapTextureManagerAccessor.java
│ ├── MessageHandlerMixin.java
│ ├── MinecraftClientAccessor.java
│ ├── MinecraftClientMixin.java
│ ├── MinecraftServerAccessor.java
│ ├── MobSpawnerBlockEntityRendererMixin.java
│ ├── MouseMixin.java
│ ├── MultiPhaseMixin.java
│ ├── MultiPhaseParametersMixin.java
│ ├── MultiplayerScreenMixin.java
│ ├── MutableTextMixin.java
│ ├── PacketByteBufMixin.java
│ ├── ParticleManagerMixin.java
│ ├── PlayerArmorSlotMixin.java
│ ├── PlayerEntityAccessor.java
│ ├── PlayerEntityMixin.java
│ ├── PlayerEntityRendererMixin.java
│ ├── PlayerInteractEntityC2SPacketMixin.java
│ ├── PlayerListEntryMixin.java
│ ├── PlayerListHudMixin.java
│ ├── PlayerMoveC2SPacketAccessor.java
│ ├── PlayerMoveC2SPacketMixin.java
│ ├── PlayerSkinProviderAccessor.java
│ ├── PowderSnowBlockMixin.java
│ ├── ProjectileEntityAccessor.java
│ ├── ProjectileInGroundAccessor.java
│ ├── RaycastContextMixin.java
│ ├── RegistriesMixin.java
│ ├── ReloadStateAccessor.java
│ ├── RenderLayersMixin.java
│ ├── RenderPipelineMixin.java
│ ├── RenderTickCounterDynamicMixin.java
│ ├── ResourceReloadLoggerAccessor.java
│ ├── ScreenMixin.java
│ ├── SectionedEntityCacheAccessor.java
│ ├── ServerPlayerEntityMixin.java
│ ├── ServerResourcePackLoaderMixin.java
│ ├── ShapeIndexBufferAccessor.java
│ ├── ShulkerBoxScreenHandlerAccessor.java
│ ├── SimpleEntityLookupAccessor.java
│ ├── SimpleOptionMixin.java
│ ├── SlimeBlockMixin.java
│ ├── SlotMixin.java
│ ├── SoundSystemMixin.java
│ ├── SplashTextResourceSupplierMixin.java
│ ├── StatusEffectInstanceAccessor.java
│ ├── StatusEffectInstanceMixin.java
│ ├── StringHelperMixin.java
│ ├── SweetBerryBushBlockMixin.java
│ ├── TextHandlerAccessor.java
│ ├── TextMixin.java
│ ├── TextRendererMixin.java
│ ├── TextVisitFactoryMixin.java
│ ├── TitleScreenMixin.java
│ ├── TooltipComponentMixin.java
│ ├── TooltipDisplayComponentMixin.java
│ ├── TransformationMixin.java
│ ├── TridentItemMixin.java
│ ├── Vec3dMixin.java
│ ├── WorldAccessor.java
│ ├── WorldBorderMixin.java
│ ├── WorldChunkMixin.java
│ ├── WorldRendererAccessor.java
│ ├── WorldRendererMixin.java
│ ├── YggdrasilMinecraftSessionServiceAccessor.java
│ ├── baritone
│ │ └── ComeCommandMixin.java
│ ├── indigo
│ │ └── AbstractTerrainRenderContextMixin.java
│ ├── lithium
│ │ ├── ChunkAwareBlockCollisionSweeperMixin.java
│ │ └── LithiumEntityCollisionsMixin.java
│ ├── sodium
│ │ ├── MeshVertexConsumerMixin.java
│ │ ├── SodiumBlockOcclusionCacheMixin.java
│ │ ├── SodiumBlockRendererMixin.java
│ │ ├── SodiumFluidRendererImplDefaultRenderContextMixin.java
│ │ ├── SodiumFluidRendererImplMixin.java
│ │ └── SodiumLightDataAccessMixin.java
│ └── viafabricplus
│ │ └── GeneralSettingsMixin.java
│ ├── mixininterface
│ ├── IAbstractFurnaceScreenHandler.java
│ ├── IBakedQuad.java
│ ├── IBox.java
│ ├── ICamera.java
│ ├── ICapabilityTracker.java
│ ├── IChatHud.java
│ ├── IChatHudLine.java
│ ├── IChatHudLineVisible.java
│ ├── IClientPlayerInteractionManager.java
│ ├── IEntityRenderState.java
│ ├── IExplosionS2CPacket.java
│ ├── IGpuDevice.java
│ ├── IGpuTexture.java
│ ├── IHorseBaseEntity.java
│ ├── IMessageHandler.java
│ ├── IMinecraftClient.java
│ ├── IMultiPhase.java
│ ├── IMultiPhaseParameters.java
│ ├── IPlayerInteractEntityC2SPacket.java
│ ├── IPlayerMoveC2SPacket.java
│ ├── IRaycastContext.java
│ ├── IRenderPipeline.java
│ ├── ISimpleOption.java
│ ├── ISlot.java
│ ├── IText.java
│ ├── IVec3d.java
│ └── IWorldRenderer.java
│ ├── pathing
│ ├── BaritonePathManager.java
│ ├── BaritoneSettings.java
│ ├── BaritoneUtils.java
│ ├── IPathManager.java
│ ├── NopPathManager.java
│ └── PathManagers.java
│ ├── renderer
│ ├── ExtendedRenderPipelineBuilder.java
│ ├── Fonts.java
│ ├── FullScreenRenderer.java
│ ├── MeshBuilder.java
│ ├── MeshRenderer.java
│ ├── MeteorRenderPipelines.java
│ ├── MeteorVertexFormatElements.java
│ ├── MeteorVertexFormats.java
│ ├── Renderer2D.java
│ ├── Renderer3D.java
│ ├── ShapeMode.java
│ ├── Texture.java
│ └── text
│ │ ├── BuiltinFontFace.java
│ │ ├── CustomTextRenderer.java
│ │ ├── Font.java
│ │ ├── FontFace.java
│ │ ├── FontFamily.java
│ │ ├── FontInfo.java
│ │ ├── SystemFontFace.java
│ │ ├── TextRenderer.java
│ │ └── VanillaTextRenderer.java
│ ├── settings
│ ├── BlockDataSetting.java
│ ├── BlockListSetting.java
│ ├── BlockPosSetting.java
│ ├── BlockSetting.java
│ ├── BoolSetting.java
│ ├── ColorListSetting.java
│ ├── ColorSetting.java
│ ├── DoubleSetting.java
│ ├── EnchantmentListSetting.java
│ ├── EntityTypeListSetting.java
│ ├── EnumSetting.java
│ ├── FontFaceSetting.java
│ ├── GenericSetting.java
│ ├── IBlockData.java
│ ├── IVisible.java
│ ├── IntSetting.java
│ ├── ItemListSetting.java
│ ├── ItemSetting.java
│ ├── KeybindSetting.java
│ ├── ModuleListSetting.java
│ ├── PacketListSetting.java
│ ├── ParticleTypeListSetting.java
│ ├── PotionSetting.java
│ ├── ProvidedStringSetting.java
│ ├── ScreenHandlerListSetting.java
│ ├── Setting.java
│ ├── SettingGroup.java
│ ├── Settings.java
│ ├── SoundEventListSetting.java
│ ├── StatusEffectAmplifierMapSetting.java
│ ├── StatusEffectListSetting.java
│ ├── StorageBlockListSetting.java
│ ├── StringListSetting.java
│ ├── StringSetting.java
│ └── Vector3dSetting.java
│ ├── systems
│ ├── System.java
│ ├── Systems.java
│ ├── accounts
│ │ ├── Account.java
│ │ ├── AccountCache.java
│ │ ├── AccountType.java
│ │ ├── Accounts.java
│ │ ├── MicrosoftLogin.java
│ │ ├── TexturesJson.java
│ │ ├── TokenAccount.java
│ │ ├── UuidToProfileResponse.java
│ │ └── types
│ │ │ ├── CrackedAccount.java
│ │ │ ├── MicrosoftAccount.java
│ │ │ └── TheAlteningAccount.java
│ ├── config
│ │ └── Config.java
│ ├── friends
│ │ ├── Friend.java
│ │ └── Friends.java
│ ├── hud
│ │ ├── Alignment.java
│ │ ├── Hud.java
│ │ ├── HudBox.java
│ │ ├── HudElement.java
│ │ ├── HudElementInfo.java
│ │ ├── HudGroup.java
│ │ ├── HudRenderer.java
│ │ ├── XAnchor.java
│ │ ├── YAnchor.java
│ │ ├── elements
│ │ │ ├── ActiveModulesHud.java
│ │ │ ├── ArmorHud.java
│ │ │ ├── CombatHud.java
│ │ │ ├── CompassHud.java
│ │ │ ├── HoleHud.java
│ │ │ ├── InventoryHud.java
│ │ │ ├── ItemHud.java
│ │ │ ├── LagNotifierHud.java
│ │ │ ├── MeteorTextHud.java
│ │ │ ├── ModuleInfosHud.java
│ │ │ ├── PlayerModelHud.java
│ │ │ ├── PlayerRadarHud.java
│ │ │ ├── PotionTimersHud.java
│ │ │ └── TextHud.java
│ │ └── screens
│ │ │ ├── AddHudElementScreen.java
│ │ │ ├── HudEditorScreen.java
│ │ │ ├── HudElementPresetsScreen.java
│ │ │ └── HudElementScreen.java
│ ├── macros
│ │ ├── Macro.java
│ │ └── Macros.java
│ ├── modules
│ │ ├── Categories.java
│ │ ├── Category.java
│ │ ├── Module.java
│ │ ├── Modules.java
│ │ ├── combat
│ │ │ ├── AnchorAura.java
│ │ │ ├── AntiAnchor.java
│ │ │ ├── AntiAnvil.java
│ │ │ ├── AntiBed.java
│ │ │ ├── ArrowDodge.java
│ │ │ ├── AutoAnvil.java
│ │ │ ├── AutoArmor.java
│ │ │ ├── AutoCity.java
│ │ │ ├── AutoEXP.java
│ │ │ ├── AutoTotem.java
│ │ │ ├── AutoTrap.java
│ │ │ ├── AutoWeapon.java
│ │ │ ├── AutoWeb.java
│ │ │ ├── BedAura.java
│ │ │ ├── BowAimbot.java
│ │ │ ├── BowSpam.java
│ │ │ ├── Burrow.java
│ │ │ ├── Criticals.java
│ │ │ ├── CrystalAura.java
│ │ │ ├── Hitboxes.java
│ │ │ ├── HoleFiller.java
│ │ │ ├── KillAura.java
│ │ │ ├── Offhand.java
│ │ │ ├── Quiver.java
│ │ │ ├── SelfAnvil.java
│ │ │ ├── SelfTrap.java
│ │ │ ├── SelfWeb.java
│ │ │ └── Surround.java
│ │ ├── misc
│ │ │ ├── AntiPacketKick.java
│ │ │ ├── AutoLog.java
│ │ │ ├── AutoReconnect.java
│ │ │ ├── AutoRespawn.java
│ │ │ ├── BetterBeacons.java
│ │ │ ├── BetterChat.java
│ │ │ ├── BookBot.java
│ │ │ ├── DiscordPresence.java
│ │ │ ├── InventoryTweaks.java
│ │ │ ├── MessageAura.java
│ │ │ ├── NameProtect.java
│ │ │ ├── Notebot.java
│ │ │ ├── Notifier.java
│ │ │ ├── PacketCanceller.java
│ │ │ ├── ServerSpoof.java
│ │ │ ├── SoundBlocker.java
│ │ │ ├── Spam.java
│ │ │ └── swarm
│ │ │ │ ├── Swarm.java
│ │ │ │ ├── SwarmConnection.java
│ │ │ │ ├── SwarmHost.java
│ │ │ │ └── SwarmWorker.java
│ │ ├── movement
│ │ │ ├── AirJump.java
│ │ │ ├── Anchor.java
│ │ │ ├── AntiAFK.java
│ │ │ ├── AntiVoid.java
│ │ │ ├── AutoJump.java
│ │ │ ├── AutoWalk.java
│ │ │ ├── AutoWasp.java
│ │ │ ├── Blink.java
│ │ │ ├── BoatFly.java
│ │ │ ├── ClickTP.java
│ │ │ ├── ElytraBoost.java
│ │ │ ├── EntityControl.java
│ │ │ ├── EntitySpeed.java
│ │ │ ├── FastClimb.java
│ │ │ ├── Flight.java
│ │ │ ├── GUIMove.java
│ │ │ ├── HighJump.java
│ │ │ ├── Jesus.java
│ │ │ ├── LongJump.java
│ │ │ ├── NoFall.java
│ │ │ ├── NoSlow.java
│ │ │ ├── Parkour.java
│ │ │ ├── ReverseStep.java
│ │ │ ├── SafeWalk.java
│ │ │ ├── Scaffold.java
│ │ │ ├── Slippy.java
│ │ │ ├── Sneak.java
│ │ │ ├── Spider.java
│ │ │ ├── Sprint.java
│ │ │ ├── Step.java
│ │ │ ├── TridentBoost.java
│ │ │ ├── Velocity.java
│ │ │ ├── elytrafly
│ │ │ │ ├── ElytraFlightMode.java
│ │ │ │ ├── ElytraFlightModes.java
│ │ │ │ ├── ElytraFly.java
│ │ │ │ └── modes
│ │ │ │ │ ├── Bounce.java
│ │ │ │ │ ├── Packet.java
│ │ │ │ │ ├── Pitch40.java
│ │ │ │ │ └── Vanilla.java
│ │ │ └── speed
│ │ │ │ ├── Speed.java
│ │ │ │ ├── SpeedMode.java
│ │ │ │ ├── SpeedModes.java
│ │ │ │ └── modes
│ │ │ │ ├── Strafe.java
│ │ │ │ └── Vanilla.java
│ │ ├── player
│ │ │ ├── AntiHunger.java
│ │ │ ├── AutoClicker.java
│ │ │ ├── AutoEat.java
│ │ │ ├── AutoFish.java
│ │ │ ├── AutoGap.java
│ │ │ ├── AutoMend.java
│ │ │ ├── AutoReplenish.java
│ │ │ ├── AutoTool.java
│ │ │ ├── BreakDelay.java
│ │ │ ├── ChestSwap.java
│ │ │ ├── EXPThrower.java
│ │ │ ├── FakePlayer.java
│ │ │ ├── FastUse.java
│ │ │ ├── GhostHand.java
│ │ │ ├── InstantRebreak.java
│ │ │ ├── LiquidInteract.java
│ │ │ ├── MiddleClickExtra.java
│ │ │ ├── Multitask.java
│ │ │ ├── NoInteract.java
│ │ │ ├── NoMiningTrace.java
│ │ │ ├── NoRotate.java
│ │ │ ├── NoStatusEffects.java
│ │ │ ├── OffhandCrash.java
│ │ │ ├── Portals.java
│ │ │ ├── PotionSaver.java
│ │ │ ├── Reach.java
│ │ │ ├── Rotation.java
│ │ │ └── SpeedMine.java
│ │ ├── render
│ │ │ ├── BetterTab.java
│ │ │ ├── BetterTooltips.java
│ │ │ ├── BlockSelection.java
│ │ │ ├── Blur.java
│ │ │ ├── BossStack.java
│ │ │ ├── Breadcrumbs.java
│ │ │ ├── BreakIndicators.java
│ │ │ ├── CameraTweaks.java
│ │ │ ├── Chams.java
│ │ │ ├── CityESP.java
│ │ │ ├── ESP.java
│ │ │ ├── EntityOwner.java
│ │ │ ├── FreeLook.java
│ │ │ ├── Freecam.java
│ │ │ ├── Fullbright.java
│ │ │ ├── HandView.java
│ │ │ ├── HoleESP.java
│ │ │ ├── ItemHighlight.java
│ │ │ ├── ItemPhysics.java
│ │ │ ├── LightOverlay.java
│ │ │ ├── LogoutSpots.java
│ │ │ ├── Nametags.java
│ │ │ ├── NoRender.java
│ │ │ ├── PopChams.java
│ │ │ ├── StorageESP.java
│ │ │ ├── TimeChanger.java
│ │ │ ├── Tracers.java
│ │ │ ├── Trail.java
│ │ │ ├── Trajectories.java
│ │ │ ├── TunnelESP.java
│ │ │ ├── VoidESP.java
│ │ │ ├── WallHack.java
│ │ │ ├── WaypointsModule.java
│ │ │ ├── Xray.java
│ │ │ ├── Zoom.java
│ │ │ ├── blockesp
│ │ │ │ ├── BlockESP.java
│ │ │ │ ├── ESPBlock.java
│ │ │ │ ├── ESPBlockData.java
│ │ │ │ ├── ESPBlockDataScreen.java
│ │ │ │ ├── ESPChunk.java
│ │ │ │ └── ESPGroup.java
│ │ │ └── marker
│ │ │ │ ├── BaseMarker.java
│ │ │ │ ├── CuboidMarker.java
│ │ │ │ ├── Marker.java
│ │ │ │ ├── MarkerFactory.java
│ │ │ │ └── Sphere2dMarker.java
│ │ └── world
│ │ │ ├── AirPlace.java
│ │ │ ├── Ambience.java
│ │ │ ├── AutoBreed.java
│ │ │ ├── AutoBrewer.java
│ │ │ ├── AutoMount.java
│ │ │ ├── AutoNametag.java
│ │ │ ├── AutoShearer.java
│ │ │ ├── AutoSign.java
│ │ │ ├── AutoSmelter.java
│ │ │ ├── BuildHeight.java
│ │ │ ├── Collisions.java
│ │ │ ├── EChestFarmer.java
│ │ │ ├── EndermanLook.java
│ │ │ ├── Excavator.java
│ │ │ ├── Flamethrower.java
│ │ │ ├── HighwayBuilder.java
│ │ │ ├── InfinityMiner.java
│ │ │ ├── LiquidFiller.java
│ │ │ ├── MountBypass.java
│ │ │ ├── NoGhostBlocks.java
│ │ │ ├── Nuker.java
│ │ │ ├── PacketMine.java
│ │ │ ├── SpawnProofer.java
│ │ │ ├── StashFinder.java
│ │ │ ├── Timer.java
│ │ │ └── VeinMiner.java
│ ├── profiles
│ │ ├── Profile.java
│ │ └── Profiles.java
│ ├── proxies
│ │ ├── Proxies.java
│ │ ├── Proxy.java
│ │ └── ProxyType.java
│ └── waypoints
│ │ ├── Waypoint.java
│ │ ├── Waypoints.java
│ │ └── events
│ │ ├── WaypointAddedEvent.java
│ │ └── WaypointRemovedEvent.java
│ └── utils
│ ├── PostInit.java
│ ├── PreInit.java
│ ├── ReflectInit.java
│ ├── Utils.java
│ ├── entity
│ ├── DamageUtils.java
│ ├── EntityUtils.java
│ ├── ProjectileEntitySimulator.java
│ ├── SortPriority.java
│ ├── Target.java
│ ├── TargetUtils.java
│ └── fakeplayer
│ │ ├── FakePlayerEntity.java
│ │ └── FakePlayerManager.java
│ ├── files
│ └── StreamUtils.java
│ ├── misc
│ ├── ByteCountDataOutput.java
│ ├── CPSUtils.java
│ ├── ComponentMapReader.java
│ ├── CursorStyle.java
│ ├── EmptyIterator.java
│ ├── FakeClientPlayer.java
│ ├── HorizontalDirection.java
│ ├── IChangeable.java
│ ├── ICopyable.java
│ ├── IGetter.java
│ ├── ISerializable.java
│ ├── Keybind.java
│ ├── MBlockPos.java
│ ├── MeteorStarscript.java
│ ├── MissHitResult.java
│ ├── MyPotion.java
│ ├── Names.java
│ ├── NbtException.java
│ ├── NbtUtils.java
│ ├── Pool.java
│ ├── Producer.java
│ ├── UnorderedArrayList.java
│ ├── ValueComparableMap.java
│ ├── Version.java
│ ├── input
│ │ ├── Input.java
│ │ ├── KeyAction.java
│ │ └── KeyBinds.java
│ └── text
│ │ ├── ColoredText.java
│ │ ├── MeteorClickEvent.java
│ │ ├── RunnableClickEvent.java
│ │ ├── TextUtils.java
│ │ └── TextVisitor.java
│ ├── network
│ ├── Capes.java
│ ├── FailedHttpResponse.java
│ ├── Http.java
│ ├── JsonBodyHandler.java
│ ├── MeteorExecutor.java
│ ├── OnlinePlayers.java
│ ├── PacketUtils.java
│ └── PacketUtilsUtil.java
│ ├── notebot
│ ├── NotebotUtils.java
│ ├── decoder
│ │ ├── NBSSongDecoder.java
│ │ ├── SongDecoder.java
│ │ ├── SongDecoders.java
│ │ └── TextSongDecoder.java
│ ├── instrumentdetect
│ │ ├── InstrumentDetectFunction.java
│ │ └── InstrumentDetectMode.java
│ └── song
│ │ ├── Note.java
│ │ └── Song.java
│ ├── other
│ ├── JsonDateDeserializer.java
│ └── Snapper.java
│ ├── player
│ ├── ChatUtils.java
│ ├── CustomPlayerInput.java
│ ├── EChestMemory.java
│ ├── FindItemResult.java
│ ├── InvUtils.java
│ ├── InventorySorter.java
│ ├── PathFinder.java
│ ├── PlayerUtils.java
│ ├── Rotations.java
│ ├── Safety.java
│ ├── SlotUtils.java
│ └── TitleScreenCredits.java
│ ├── render
│ ├── AlignmentX.java
│ ├── AlignmentY.java
│ ├── Box.java
│ ├── FontUtils.java
│ ├── IVertexConsumerProvider.java
│ ├── MeshBuilderVertexConsumerProvider.java
│ ├── MeteorToast.java
│ ├── NametagUtils.java
│ ├── PeekScreen.java
│ ├── PlayerHeadTexture.java
│ ├── PlayerHeadUtils.java
│ ├── RenderUtils.java
│ ├── SimpleBlockRenderer.java
│ ├── WireframeEntityRenderer.java
│ ├── color
│ │ ├── Color.java
│ │ ├── RainbowColor.java
│ │ ├── RainbowColors.java
│ │ └── SettingColor.java
│ ├── postprocess
│ │ ├── ChamsShader.java
│ │ ├── EntityOutlineShader.java
│ │ ├── EntityShader.java
│ │ ├── PostProcessShader.java
│ │ ├── PostProcessShaders.java
│ │ └── StorageOutlineShader.java
│ └── prompts
│ │ ├── OkPrompt.java
│ │ ├── Prompt.java
│ │ └── YesNoPrompt.java
│ ├── tooltip
│ ├── BannerTooltipComponent.java
│ ├── BookTooltipComponent.java
│ ├── ContainerTooltipComponent.java
│ ├── EntityTooltipComponent.java
│ ├── MapTooltipComponent.java
│ ├── MeteorTooltipData.java
│ └── TextTooltipComponent.java
│ └── world
│ ├── BlockEntityIterator.java
│ ├── BlockIterator.java
│ ├── BlockUtils.java
│ ├── CardinalDirection.java
│ ├── ChunkIterator.java
│ ├── Dimension.java
│ ├── Dir.java
│ └── TickRate.java
└── resources
├── assets
└── meteor-client
│ ├── fonts
│ ├── Comfortaa.ttf
│ ├── JetBrains Mono.ttf
│ ├── Pixelation.ttf
│ └── Tw Cen MT.ttf
│ ├── icon.png
│ ├── lang
│ ├── en_gb.json
│ ├── en_us.json
│ ├── hi_in.json
│ ├── pt_br.json
│ ├── vi_vn.json
│ └── zh_cn.json
│ ├── shaders
│ ├── blur.vert
│ ├── blur_down.frag
│ ├── blur_up.frag
│ ├── passthrough.frag
│ ├── passthrough.vert
│ ├── pos_color.frag
│ ├── pos_color.vert
│ ├── pos_tex_color.frag
│ ├── pos_tex_color.vert
│ ├── post-process
│ │ ├── base.vert
│ │ ├── image.frag
│ │ └── outline.frag
│ ├── text.frag
│ └── text.vert
│ └── textures
│ ├── blank.png
│ ├── chams.jpg
│ ├── container-transparent.png
│ ├── container.png
│ ├── icons
│ ├── chat
│ │ ├── baritone.png
│ │ └── meteor.png
│ ├── gui
│ │ ├── circle.png
│ │ ├── copy.png
│ │ ├── edit.png
│ │ ├── favorite_no.png
│ │ ├── favorite_yes.png
│ │ ├── paste.png
│ │ ├── reset.png
│ │ └── triangle.png
│ └── waypoints
│ │ ├── circle.png
│ │ ├── diamond.png
│ │ ├── skull.png
│ │ ├── square.png
│ │ ├── star.png
│ │ └── triangle.png
│ ├── meteor.png
│ └── steve.png
├── fabric.mod.json
├── meteor-client-baritone.mixins.json
├── meteor-client-indigo.mixins.json
├── meteor-client-lithium.mixins.json
├── meteor-client-sodium.mixins.json
├── meteor-client-viafabricplus.mixins.json
├── meteor-client.accesswidener
└── meteor-client.mixins.json
/.editorconfig:
--------------------------------------------------------------------------------
1 | [*]
2 | charset = utf-8
3 | indent_style = space
4 | insert_final_newline = true
5 | trim_trailing_whitespace = true
6 | indent_size = 4
7 |
8 | [*.{json, yml}]
9 | indent_size = 2
10 |
11 | [*.md]
12 | trim_trailing_whitespace = false
13 |
--------------------------------------------------------------------------------
/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | custom: ['https://meteorclient.com/donate']
2 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/config.yml:
--------------------------------------------------------------------------------
1 | blank_issues_enabled: false
2 | contact_links:
3 | - name: Discord
4 | url: https://meteorclient.com/discord
5 | about: Join our discord for faster support on smaller issues.
6 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/suggestion.yml:
--------------------------------------------------------------------------------
1 | name: Suggestion
2 | description: Suggest a new feature or change for Meteor.
3 | labels: [ enhancement ]
4 | body:
5 | - type: textarea
6 | id: description
7 | attributes:
8 | label: Describe the feature
9 | description: A clear and concise description of what the feature/change is.
10 | validations:
11 | required: true
12 | - type: checkboxes
13 | id: prerequisites
14 | attributes:
15 | label: Before submitting a suggestion
16 | options:
17 | - label: |
18 | This feature doesn't already exist in the client. (I have checked every module and their settings on the **latest dev build**)
19 | required: true
20 | - label: |
21 | This wasn't already suggested. (I have searched suggestions on GitHub and read the FAQ)
22 | required: true
23 |
--------------------------------------------------------------------------------
/.github/builds/get_number.js:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | import { getMcVersion } from "./mc_version.js"
7 |
8 | const mcVersion = await getMcVersion();
9 |
10 | fetch("https://meteorclient.com/api/stats")
11 | .then(async res => {
12 | let stats = await res.json()
13 | let build = 0
14 |
15 | if (mcVersion in stats.builds) {
16 | build = parseInt(stats.builds[mcVersion])
17 | }
18 |
19 | console.log("number=" + (build + 1))
20 | })
21 | .catch(err => {
22 | console.log("Failed to fetch stats:")
23 | console.log(err)
24 | process.exit(1)
25 | })
26 |
--------------------------------------------------------------------------------
/.github/builds/mc_version.js:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | import * as fs from "fs"
7 | import * as readline from "readline"
8 |
9 | export async function getMcVersion() {
10 | let lines = readline.createInterface({
11 | input: fs.createReadStream("../../gradle.properties"),
12 | crlfDelay: Infinity
13 | })
14 |
15 | let mcVersion = ""
16 |
17 | for await (const line of lines) {
18 | if (line.startsWith("minecraft_version")) {
19 | mcVersion = line.substring(line.indexOf("=") + 1)
20 | break
21 | }
22 | }
23 |
24 | if (mcVersion === "") {
25 | console.log("Failed to read minecraft_version")
26 | process.exit(1)
27 | }
28 |
29 | return mcVersion
30 | }
31 |
--------------------------------------------------------------------------------
/.github/builds/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "devbuilds",
3 | "version": "1.0.0",
4 | "lockfileVersion": 2,
5 | "requires": true,
6 | "packages": {
7 | "": {
8 | "name": "devbuilds",
9 | "version": "1.0.0",
10 | "license": "MIT"
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/.github/builds/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "devbuilds",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "index.js",
6 | "author": "MineGame159",
7 | "license": "MIT",
8 | "type": "module",
9 | "scripts": {
10 | "get_number": "node get_number.js",
11 | "webhook": "node index.js"
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/.github/pull_request_template.md:
--------------------------------------------------------------------------------
1 | ## Type of change
2 |
3 | - [ ] Bug fix
4 | - [ ] New feature
5 |
6 | ## Description
7 |
8 | A summary of the changes along with the reasoning behind the changes.
9 |
10 | ## Related issues
11 |
12 | Mention any issues that this pr relates to.
13 |
14 | # How Has This Been Tested?
15 |
16 | Videos or screenshots of the changes if applicable.
17 |
18 | # Checklist:
19 |
20 | - [ ] My code follows the style guidelines of this project.
21 | - [ ] I have added comments to my code in more complex areas.
22 | - [ ] I have tested the code in both development and production environments.
23 |
--------------------------------------------------------------------------------
/.github/workflows/issue-moderator.yml:
--------------------------------------------------------------------------------
1 | name: Issue automatic actions
2 |
3 | on:
4 | issues:
5 | types: [opened]
6 |
7 | permissions:
8 | issues: write
9 |
10 | jobs:
11 | issue-moderator:
12 | runs-on: ubuntu-latest
13 | steps:
14 | - name: Checkout Repository
15 | uses: actions/checkout@v4
16 | with:
17 | persist-credentials: false
18 |
19 | - name: Automatically close issues that don't follow the issue template
20 | uses: lucasbento/auto-close-issues@v1.0.2
21 | with:
22 | github-token: ${{ secrets.GITHUB_TOKEN }}
23 | issue-close-message: |
24 | @${issue.user.login}: hello! :wave:
25 | This issue is being automatically closed because it does not follow the issue template."
26 | closed-issues-label: "invalid"
27 |
--------------------------------------------------------------------------------
/.github/workflows/pull-request.yml:
--------------------------------------------------------------------------------
1 | name: Build Pull Request
2 |
3 | on: [ pull_request ]
4 |
5 | jobs:
6 | build:
7 | runs-on: ubuntu-latest
8 |
9 | steps:
10 | - name: Checkout Repository
11 | uses: actions/checkout@v4
12 | with:
13 | persist-credentials: false
14 |
15 | - name: Set up Gradle
16 | uses: gradle/actions/setup-gradle@v4
17 |
18 | - name: Set up Java
19 | uses: actions/setup-java@v4
20 | with:
21 | distribution: 'temurin'
22 | java-version: '21'
23 |
24 | - name: Build
25 | run: ./gradlew build
26 |
27 | - name: Upload Artifact
28 | uses: actions/upload-artifact@v4
29 | with:
30 | name: pull-request-build
31 | path: build/libs/
32 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | *.DS_Store
2 | .gradle
3 | .settings
4 | .project
5 | .classpath
6 | build
7 | out
8 | run
9 | bin
10 | logs
11 | .github/builds/node_modules
12 | *.iws
13 | *.ipr
14 | *.iml
15 | .idea/*
16 | !.idea/copyright/*
17 | !.idea/scopes/*
18 |
--------------------------------------------------------------------------------
/.idea/copyright/Meteor.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/.idea/copyright/profiles_settings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/.idea/scopes/Meteor_Copyright_Notice.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.12-bin.zip
4 | networkTimeout=10000
5 | validateDistributionUrl=true
6 | zipStoreBase=GRADLE_USER_HOME
7 | zipStorePath=wrapper/dists
8 |
--------------------------------------------------------------------------------
/launch/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | id("java")
3 | }
4 |
5 | group = "meteordevelopment"
6 | version = "0.1.0"
7 |
8 | tasks {
9 | withType {
10 | options.release = 8
11 | options.compilerArgs.add("-Xlint:-options") // Suppress Java 8 deprecation warnings
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/settings.gradle.kts:
--------------------------------------------------------------------------------
1 | pluginManagement {
2 | repositories {
3 | maven {
4 | name = "Fabric"
5 | url = uri("https://maven.fabricmc.net/")
6 | }
7 | mavenCentral()
8 | gradlePluginPortal()
9 | }
10 | }
11 |
12 | include("launch")
13 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/ModMenuIntegration.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient;
7 |
8 | import com.terraformersmc.modmenu.api.ConfigScreenFactory;
9 | import com.terraformersmc.modmenu.api.ModMenuApi;
10 | import meteordevelopment.meteorclient.gui.GuiThemes;
11 | import meteordevelopment.meteorclient.gui.screens.ModulesScreen;
12 |
13 | public class ModMenuIntegration implements ModMenuApi {
14 | @Override
15 | public ConfigScreenFactory> getModConfigScreenFactory() {
16 | return screen -> new ModulesScreen(GuiThemes.get());
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/commands/arguments/DirectionArgumentType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.commands.arguments;
7 |
8 | import net.minecraft.command.argument.EnumArgumentType;
9 | import net.minecraft.util.math.Direction;
10 |
11 | public class DirectionArgumentType extends EnumArgumentType {
12 | private static final DirectionArgumentType INSTANCE = new DirectionArgumentType();
13 |
14 | private DirectionArgumentType() {
15 | super(Direction.CODEC, Direction::values);
16 | }
17 |
18 | public static DirectionArgumentType create() {
19 | return INSTANCE;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/Cancellable.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events;
7 |
8 | import meteordevelopment.orbit.ICancellable;
9 |
10 | public class Cancellable implements ICancellable {
11 | private boolean cancelled = false;
12 |
13 | @Override
14 | public void setCancelled(boolean cancelled) {
15 | this.cancelled = cancelled;
16 | }
17 |
18 | @Override
19 | public boolean isCancelled() {
20 | return cancelled;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/BoatMoveEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity;
7 |
8 | import net.minecraft.entity.vehicle.AbstractBoatEntity;
9 |
10 | public class BoatMoveEvent {
11 | private static final BoatMoveEvent INSTANCE = new BoatMoveEvent();
12 |
13 | public AbstractBoatEntity boat;
14 |
15 | public static BoatMoveEvent get(AbstractBoatEntity entity) {
16 | INSTANCE.boat = entity;
17 | return INSTANCE;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/DropItemsEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity;
7 |
8 | import meteordevelopment.meteorclient.events.Cancellable;
9 | import net.minecraft.item.ItemStack;
10 |
11 | public class DropItemsEvent extends Cancellable {
12 | private static final DropItemsEvent INSTANCE = new DropItemsEvent();
13 |
14 | public ItemStack itemStack;
15 |
16 | public static DropItemsEvent get(ItemStack itemStack) {
17 | INSTANCE.setCancelled(false);
18 | INSTANCE.itemStack = itemStack;
19 | return INSTANCE;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/EntityAddedEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity;
7 |
8 | import net.minecraft.entity.Entity;
9 |
10 | public class EntityAddedEvent {
11 | private static final EntityAddedEvent INSTANCE = new EntityAddedEvent();
12 |
13 | public Entity entity;
14 |
15 | public static EntityAddedEvent get(Entity entity) {
16 | INSTANCE.entity = entity;
17 | return INSTANCE;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/EntityDestroyEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity;
7 |
8 | import net.minecraft.entity.Entity;
9 |
10 | public class EntityDestroyEvent {
11 | private static final EntityDestroyEvent INSTANCE = new EntityDestroyEvent();
12 |
13 | public Entity entity;
14 |
15 | public static EntityDestroyEvent get(Entity entity) {
16 | INSTANCE.entity = entity;
17 | return INSTANCE;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/EntityRemovedEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity;
7 |
8 | import net.minecraft.entity.Entity;
9 |
10 | public class EntityRemovedEvent {
11 | private static final EntityRemovedEvent INSTANCE = new EntityRemovedEvent();
12 |
13 | public Entity entity;
14 |
15 | public static EntityRemovedEvent get(Entity entity) {
16 | INSTANCE.entity = entity;
17 | return INSTANCE;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/LivingEntityMoveEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity;
7 |
8 | import net.minecraft.entity.LivingEntity;
9 | import net.minecraft.util.math.Vec3d;
10 |
11 | public class LivingEntityMoveEvent {
12 | private static final LivingEntityMoveEvent INSTANCE = new LivingEntityMoveEvent();
13 |
14 | public LivingEntity entity;
15 | public Vec3d movement;
16 |
17 | public static LivingEntityMoveEvent get(LivingEntity entity, Vec3d movement) {
18 | INSTANCE.entity = entity;
19 | INSTANCE.movement = movement;
20 | return INSTANCE;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/player/AttackEntityEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity.player;
7 |
8 | import meteordevelopment.meteorclient.events.Cancellable;
9 | import net.minecraft.entity.Entity;
10 |
11 | public class AttackEntityEvent extends Cancellable {
12 | private static final AttackEntityEvent INSTANCE = new AttackEntityEvent();
13 |
14 | public Entity entity;
15 |
16 | public static AttackEntityEvent get(Entity entity) {
17 | INSTANCE.setCancelled(false);
18 | INSTANCE.entity = entity;
19 | return INSTANCE;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/player/BlockBreakingCooldownEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity.player;
7 |
8 | public class BlockBreakingCooldownEvent {
9 | private static final BlockBreakingCooldownEvent INSTANCE = new BlockBreakingCooldownEvent();
10 |
11 | public int cooldown;
12 |
13 | public static BlockBreakingCooldownEvent get(int cooldown) {
14 | INSTANCE.cooldown = cooldown;
15 | return INSTANCE;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/player/BreakBlockEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity.player;
7 |
8 | import meteordevelopment.meteorclient.events.Cancellable;
9 | import net.minecraft.util.math.BlockPos;
10 |
11 | public class BreakBlockEvent extends Cancellable {
12 | private static final BreakBlockEvent INSTANCE = new BreakBlockEvent();
13 |
14 | public BlockPos blockPos;
15 |
16 | public static BreakBlockEvent get(BlockPos blockPos) {
17 | INSTANCE.setCancelled(false);
18 | INSTANCE.blockPos = blockPos;
19 | return INSTANCE;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/player/ClipAtLedgeEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity.player;
7 |
8 | public class ClipAtLedgeEvent {
9 | private static final ClipAtLedgeEvent INSTANCE = new ClipAtLedgeEvent();
10 |
11 | private boolean set, clip;
12 |
13 | public void reset() {
14 | set = false;
15 | }
16 |
17 | public void setClip(boolean clip) {
18 | set = true;
19 | this.clip = clip;
20 | }
21 |
22 | public boolean isSet() {
23 | return set;
24 | }
25 | public boolean isClip() {
26 | return clip;
27 | }
28 |
29 | public static ClipAtLedgeEvent get() {
30 | INSTANCE.reset();
31 | return INSTANCE;
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/player/FinishUsingItemEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity.player;
7 |
8 | import net.minecraft.item.ItemStack;
9 |
10 | public class FinishUsingItemEvent {
11 | private static final FinishUsingItemEvent INSTANCE = new FinishUsingItemEvent();
12 |
13 | public ItemStack itemStack;
14 |
15 | public static FinishUsingItemEvent get(ItemStack itemStack) {
16 | INSTANCE.itemStack = itemStack;
17 | return INSTANCE;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/player/InteractBlockEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity.player;
7 |
8 | import meteordevelopment.meteorclient.events.Cancellable;
9 | import net.minecraft.util.Hand;
10 | import net.minecraft.util.hit.BlockHitResult;
11 |
12 | public class InteractBlockEvent extends Cancellable {
13 | private static final InteractBlockEvent INSTANCE = new InteractBlockEvent();
14 |
15 | public Hand hand;
16 | public BlockHitResult result;
17 |
18 | public static InteractBlockEvent get(Hand hand, BlockHitResult result) {
19 | INSTANCE.setCancelled(false);
20 | INSTANCE.hand = hand;
21 | INSTANCE.result = result;
22 | return INSTANCE;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/player/InteractEntityEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity.player;
7 |
8 | import meteordevelopment.meteorclient.events.Cancellable;
9 | import net.minecraft.entity.Entity;
10 | import net.minecraft.util.Hand;
11 |
12 | public class InteractEntityEvent extends Cancellable {
13 | private static final InteractEntityEvent INSTANCE = new InteractEntityEvent();
14 |
15 | public Entity entity;
16 | public Hand hand;
17 |
18 | public static InteractEntityEvent get(Entity entity, Hand hand) {
19 | INSTANCE.setCancelled(false);
20 | INSTANCE.entity = entity;
21 | INSTANCE.hand = hand;
22 | return INSTANCE;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/player/InteractItemEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity.player;
7 |
8 | import net.minecraft.util.ActionResult;
9 | import net.minecraft.util.Hand;
10 |
11 | public class InteractItemEvent {
12 | private static final InteractItemEvent INSTANCE = new InteractItemEvent();
13 |
14 | public Hand hand;
15 | public ActionResult toReturn;
16 |
17 | public static InteractItemEvent get(Hand hand) {
18 | INSTANCE.hand = hand;
19 | INSTANCE.toReturn = null;
20 |
21 | return INSTANCE;
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/player/ItemUseCrosshairTargetEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity.player;
7 |
8 | import net.minecraft.util.hit.HitResult;
9 |
10 | public class ItemUseCrosshairTargetEvent {
11 | private static final ItemUseCrosshairTargetEvent INSTANCE = new ItemUseCrosshairTargetEvent();
12 |
13 | public HitResult target;
14 |
15 | public static ItemUseCrosshairTargetEvent get(HitResult target) {
16 | INSTANCE.target = target;
17 | return INSTANCE;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/player/JumpVelocityMultiplierEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity.player;
7 |
8 | public class JumpVelocityMultiplierEvent {
9 | private static final JumpVelocityMultiplierEvent INSTANCE = new JumpVelocityMultiplierEvent();
10 |
11 | public float multiplier = 1;
12 |
13 | public static JumpVelocityMultiplierEvent get() {
14 | INSTANCE.multiplier = 1;
15 | return INSTANCE;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/player/PickItemsEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity.player;
7 |
8 | import net.minecraft.item.ItemStack;
9 |
10 | public class PickItemsEvent {
11 | private static final PickItemsEvent INSTANCE = new PickItemsEvent();
12 |
13 | public ItemStack itemStack;
14 | public int count;
15 |
16 | public static PickItemsEvent get(ItemStack itemStack, int count) {
17 | INSTANCE.itemStack = itemStack;
18 | INSTANCE.count = count;
19 | return INSTANCE;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/player/PlaceBlockEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity.player;
7 |
8 | import meteordevelopment.meteorclient.events.Cancellable;
9 | import net.minecraft.block.Block;
10 | import net.minecraft.util.math.BlockPos;
11 |
12 | public class PlaceBlockEvent extends Cancellable {
13 | private static final PlaceBlockEvent INSTANCE = new PlaceBlockEvent();
14 |
15 | public BlockPos blockPos;
16 | public Block block;
17 |
18 | public static PlaceBlockEvent get(BlockPos blockPos, Block block) {
19 | INSTANCE.setCancelled(false);
20 | INSTANCE.blockPos = blockPos;
21 | INSTANCE.block = block;
22 | return INSTANCE;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/player/PlayerMoveEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity.player;
7 |
8 | import net.minecraft.entity.MovementType;
9 | import net.minecraft.util.math.Vec3d;
10 |
11 | public class PlayerMoveEvent {
12 | private static final PlayerMoveEvent INSTANCE = new PlayerMoveEvent();
13 |
14 | public MovementType type;
15 | public Vec3d movement;
16 |
17 | public static PlayerMoveEvent get(MovementType type, Vec3d movement) {
18 | INSTANCE.type = type;
19 | INSTANCE.movement = movement;
20 | return INSTANCE;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/player/PlayerTickMovementEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity.player;
7 |
8 | /**
9 | * @see net.minecraft.client.network.ClientPlayerEntity#tickMovement()
10 | */
11 | public class PlayerTickMovementEvent {
12 | private static final PlayerTickMovementEvent INSTANCE = new PlayerTickMovementEvent();
13 |
14 | public static PlayerTickMovementEvent get() {
15 | return INSTANCE;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/player/SendMovementPacketsEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity.player;
7 |
8 | public class SendMovementPacketsEvent {
9 | public static class Pre {
10 | private static final Pre INSTANCE = new Pre();
11 |
12 | public static SendMovementPacketsEvent.Pre get() {
13 | return INSTANCE;
14 | }
15 | }
16 |
17 | public static class Post {
18 | private static final Post INSTANCE = new Post();
19 |
20 | public static SendMovementPacketsEvent.Post get() {
21 | return INSTANCE;
22 | }
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/player/StartBreakingBlockEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity.player;
7 |
8 | import meteordevelopment.meteorclient.events.Cancellable;
9 | import net.minecraft.util.math.BlockPos;
10 | import net.minecraft.util.math.Direction;
11 |
12 | public class StartBreakingBlockEvent extends Cancellable {
13 | private static final StartBreakingBlockEvent INSTANCE = new StartBreakingBlockEvent();
14 |
15 | public BlockPos blockPos;
16 | public Direction direction;
17 |
18 | public static StartBreakingBlockEvent get(BlockPos blockPos, Direction direction) {
19 | INSTANCE.setCancelled(false);
20 | INSTANCE.blockPos = blockPos;
21 | INSTANCE.direction = direction;
22 | return INSTANCE;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/entity/player/StoppedUsingItemEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.entity.player;
7 |
8 | import net.minecraft.item.ItemStack;
9 |
10 | public class StoppedUsingItemEvent {
11 | private static final StoppedUsingItemEvent INSTANCE = new StoppedUsingItemEvent();
12 |
13 | public ItemStack itemStack;
14 |
15 | public static StoppedUsingItemEvent get(ItemStack itemStack) {
16 | INSTANCE.itemStack = itemStack;
17 | return INSTANCE;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/game/ChangePerspectiveEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.game;
7 |
8 | import meteordevelopment.meteorclient.events.Cancellable;
9 | import net.minecraft.client.option.Perspective;
10 |
11 | public class ChangePerspectiveEvent extends Cancellable {
12 | private static final ChangePerspectiveEvent INSTANCE = new ChangePerspectiveEvent();
13 |
14 | public Perspective perspective;
15 |
16 | public static ChangePerspectiveEvent get(Perspective perspective) {
17 | INSTANCE.setCancelled(false);
18 | INSTANCE.perspective = perspective;
19 | return INSTANCE;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/game/GameJoinedEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.game;
7 |
8 | public class GameJoinedEvent {
9 | private static final GameJoinedEvent INSTANCE = new GameJoinedEvent();
10 |
11 | public static GameJoinedEvent get() {
12 | return INSTANCE;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/game/GameLeftEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.game;
7 |
8 | public class GameLeftEvent {
9 | private static final GameLeftEvent INSTANCE = new GameLeftEvent();
10 |
11 | public static GameLeftEvent get() {
12 | return INSTANCE;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/game/OpenScreenEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.game;
7 |
8 | import meteordevelopment.meteorclient.events.Cancellable;
9 | import net.minecraft.client.gui.screen.Screen;
10 |
11 | public class OpenScreenEvent extends Cancellable {
12 | private static final OpenScreenEvent INSTANCE = new OpenScreenEvent();
13 |
14 | public Screen screen;
15 |
16 | public static OpenScreenEvent get(Screen screen) {
17 | INSTANCE.setCancelled(false);
18 | INSTANCE.screen = screen;
19 | return INSTANCE;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/game/ResolutionChangedEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.game;
7 |
8 | public class ResolutionChangedEvent {
9 | private static final ResolutionChangedEvent INSTANCE = new ResolutionChangedEvent();
10 |
11 | public static ResolutionChangedEvent get() {
12 | return INSTANCE;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/game/ResourcePacksReloadedEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.game;
7 |
8 | public class ResourcePacksReloadedEvent {
9 | private static final ResourcePacksReloadedEvent INSTANCE = new ResourcePacksReloadedEvent();
10 |
11 | public static ResourcePacksReloadedEvent get() {
12 | return INSTANCE;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/game/SendMessageEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.game;
7 |
8 | import meteordevelopment.meteorclient.events.Cancellable;
9 |
10 | public class SendMessageEvent extends Cancellable {
11 | private static final SendMessageEvent INSTANCE = new SendMessageEvent();
12 |
13 | public String message;
14 |
15 | public static SendMessageEvent get(String message) {
16 | INSTANCE.setCancelled(false);
17 | INSTANCE.message = message;
18 | return INSTANCE;
19 | }
20 | }
21 |
22 |
23 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/meteor/ActiveModulesChangedEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.meteor;
7 |
8 | public class ActiveModulesChangedEvent {
9 | private static final ActiveModulesChangedEvent INSTANCE = new ActiveModulesChangedEvent();
10 |
11 | public static ActiveModulesChangedEvent get() {
12 | return INSTANCE;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/meteor/CharTypedEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.meteor;
7 |
8 | import meteordevelopment.meteorclient.events.Cancellable;
9 |
10 | public class CharTypedEvent extends Cancellable {
11 | private static final CharTypedEvent INSTANCE = new CharTypedEvent();
12 |
13 | public char c;
14 |
15 | public static CharTypedEvent get(char c) {
16 | INSTANCE.setCancelled(false);
17 | INSTANCE.c = c;
18 | return INSTANCE;
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/meteor/CustomFontChangedEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.meteor;
7 |
8 | @SuppressWarnings("InstantiationOfUtilityClass")
9 | public class CustomFontChangedEvent {
10 | private static final CustomFontChangedEvent INSTANCE = new CustomFontChangedEvent();
11 |
12 | public static CustomFontChangedEvent get() {
13 | return INSTANCE;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/meteor/KeyEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.meteor;
7 |
8 | import meteordevelopment.meteorclient.events.Cancellable;
9 | import meteordevelopment.meteorclient.utils.misc.input.KeyAction;
10 |
11 | public class KeyEvent extends Cancellable {
12 | private static final KeyEvent INSTANCE = new KeyEvent();
13 |
14 | public int key, modifiers;
15 | public KeyAction action;
16 |
17 | public static KeyEvent get(int key, int modifiers, KeyAction action) {
18 | INSTANCE.setCancelled(false);
19 | INSTANCE.key = key;
20 | INSTANCE.modifiers = modifiers;
21 | INSTANCE.action = action;
22 | return INSTANCE;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/meteor/ModuleBindChangedEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.meteor;
7 |
8 | import meteordevelopment.meteorclient.systems.modules.Module;
9 |
10 | public class ModuleBindChangedEvent {
11 | private static final ModuleBindChangedEvent INSTANCE = new ModuleBindChangedEvent();
12 |
13 | public Module module;
14 |
15 | public static ModuleBindChangedEvent get(Module module) {
16 | INSTANCE.module = module;
17 | return INSTANCE;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/meteor/MouseButtonEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.meteor;
7 |
8 | import meteordevelopment.meteorclient.events.Cancellable;
9 | import meteordevelopment.meteorclient.utils.misc.input.KeyAction;
10 |
11 | public class MouseButtonEvent extends Cancellable {
12 | private static final MouseButtonEvent INSTANCE = new MouseButtonEvent();
13 |
14 | public int button;
15 | public KeyAction action;
16 |
17 | public static MouseButtonEvent get(int button, KeyAction action) {
18 | INSTANCE.setCancelled(false);
19 | INSTANCE.button = button;
20 | INSTANCE.action = action;
21 | return INSTANCE;
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/meteor/MouseScrollEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.meteor;
7 |
8 | import meteordevelopment.meteorclient.events.Cancellable;
9 |
10 | public class MouseScrollEvent extends Cancellable {
11 | private static final MouseScrollEvent INSTANCE = new MouseScrollEvent();
12 |
13 | public double value;
14 |
15 | public static MouseScrollEvent get(double value) {
16 | INSTANCE.setCancelled(false);
17 | INSTANCE.value = value;
18 | return INSTANCE;
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/packets/ContainerSlotUpdateEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.packets;
7 |
8 | import net.minecraft.network.packet.s2c.play.ScreenHandlerSlotUpdateS2CPacket;
9 |
10 | public class ContainerSlotUpdateEvent {
11 | private static final ContainerSlotUpdateEvent INSTANCE = new ContainerSlotUpdateEvent();
12 |
13 | public ScreenHandlerSlotUpdateS2CPacket packet;
14 |
15 | public static ContainerSlotUpdateEvent get(ScreenHandlerSlotUpdateS2CPacket packet) {
16 | INSTANCE.packet = packet;
17 | return INSTANCE;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/packets/InventoryEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.packets;
7 |
8 | import net.minecraft.network.packet.s2c.play.InventoryS2CPacket;
9 |
10 | public class InventoryEvent {
11 | private static final InventoryEvent INSTANCE = new InventoryEvent();
12 |
13 | public InventoryS2CPacket packet;
14 |
15 | public static InventoryEvent get(InventoryS2CPacket packet) {
16 | INSTANCE.packet = packet;
17 | return INSTANCE;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/packets/PlaySoundPacketEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.packets;
7 |
8 | import net.minecraft.network.packet.s2c.play.PlaySoundS2CPacket;
9 |
10 | public class PlaySoundPacketEvent {
11 |
12 | private static final PlaySoundPacketEvent INSTANCE = new PlaySoundPacketEvent();
13 |
14 | public PlaySoundS2CPacket packet;
15 |
16 | public static PlaySoundPacketEvent get(PlaySoundS2CPacket packet) {
17 | INSTANCE.packet = packet;
18 | return INSTANCE;
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/render/ApplyTransformationEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.render;
7 |
8 | import meteordevelopment.meteorclient.events.Cancellable;
9 | import net.minecraft.client.render.model.json.Transformation;
10 |
11 | public class ApplyTransformationEvent extends Cancellable {
12 | private static final ApplyTransformationEvent INSTANCE = new ApplyTransformationEvent();
13 |
14 | public Transformation transformation;
15 | public boolean leftHanded;
16 |
17 | public static ApplyTransformationEvent get(Transformation transformation, boolean leftHanded) {
18 | INSTANCE.setCancelled(false);
19 |
20 | INSTANCE.transformation = transformation;
21 | INSTANCE.leftHanded = leftHanded;
22 |
23 | return INSTANCE;
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/render/ArmRenderEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.render;
7 |
8 |
9 | import net.minecraft.client.util.math.MatrixStack;
10 | import net.minecraft.util.Hand;
11 |
12 | public class ArmRenderEvent {
13 | public static ArmRenderEvent INSTANCE = new ArmRenderEvent();
14 |
15 | public MatrixStack matrix;
16 | public Hand hand;
17 |
18 | public static ArmRenderEvent get(Hand hand, MatrixStack matrices) {
19 | INSTANCE.matrix = matrices;
20 | INSTANCE.hand = hand;
21 |
22 | return INSTANCE;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/render/GetFovEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.render;
7 |
8 | public class GetFovEvent {
9 | private static final GetFovEvent INSTANCE = new GetFovEvent();
10 |
11 | public float fov;
12 |
13 | public static GetFovEvent get(float fov) {
14 | INSTANCE.fov = fov;
15 | return INSTANCE;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/render/HeldItemRendererEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.render;
7 |
8 | import net.minecraft.client.util.math.MatrixStack;
9 | import net.minecraft.util.Hand;
10 |
11 | public class HeldItemRendererEvent {
12 | private static final HeldItemRendererEvent INSTANCE = new HeldItemRendererEvent();
13 |
14 | public Hand hand;
15 | public MatrixStack matrix;
16 |
17 | public static HeldItemRendererEvent get(Hand hand, MatrixStack matrices) {
18 | INSTANCE.hand = hand;
19 | INSTANCE.matrix = matrices;
20 | return INSTANCE;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/render/Render2DEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.render;
7 |
8 | import meteordevelopment.meteorclient.utils.Utils;
9 | import net.minecraft.client.gui.DrawContext;
10 |
11 | public class Render2DEvent {
12 | private static final Render2DEvent INSTANCE = new Render2DEvent();
13 |
14 | public DrawContext drawContext;
15 | public int screenWidth, screenHeight;
16 | public double frameTime;
17 | public float tickDelta;
18 |
19 | public static Render2DEvent get(DrawContext drawContext, int screenWidth, int screenHeight, float tickDelta) {
20 | INSTANCE.drawContext = drawContext;
21 | INSTANCE.screenWidth = screenWidth;
22 | INSTANCE.screenHeight = screenHeight;
23 | INSTANCE.frameTime = Utils.frameTime;
24 | INSTANCE.tickDelta = tickDelta;
25 | return INSTANCE;
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/render/RenderAfterWorldEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.render;
7 |
8 | public class RenderAfterWorldEvent {
9 | private static final RenderAfterWorldEvent INSTANCE = new RenderAfterWorldEvent();
10 |
11 | public static RenderAfterWorldEvent get() {
12 | return INSTANCE;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/render/RenderBlockEntityEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.render;
7 |
8 | import meteordevelopment.meteorclient.events.Cancellable;
9 | import net.minecraft.block.entity.BlockEntity;
10 |
11 | public class RenderBlockEntityEvent extends Cancellable {
12 | private static final RenderBlockEntityEvent INSTANCE = new RenderBlockEntityEvent();
13 |
14 | public BlockEntity blockEntity;
15 |
16 | public static RenderBlockEntityEvent get(BlockEntity blockEntity) {
17 | INSTANCE.setCancelled(false);
18 | INSTANCE.blockEntity = blockEntity;
19 | return INSTANCE;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/render/TooltipDataEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.render;
7 |
8 | import net.minecraft.item.tooltip.TooltipData;
9 | import net.minecraft.item.ItemStack;
10 |
11 |
12 | public class TooltipDataEvent {
13 | private static final TooltipDataEvent INSTANCE = new TooltipDataEvent();
14 |
15 | public TooltipData tooltipData;
16 | public ItemStack itemStack;
17 |
18 | public static TooltipDataEvent get(ItemStack itemStack) {
19 | INSTANCE.tooltipData = null;
20 | INSTANCE.itemStack = itemStack;
21 | return INSTANCE;
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/world/AmbientOcclusionEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.world;
7 |
8 | public class AmbientOcclusionEvent {
9 | private static final AmbientOcclusionEvent INSTANCE = new AmbientOcclusionEvent();
10 |
11 | public float lightLevel = -1;
12 |
13 | public static AmbientOcclusionEvent get() {
14 | INSTANCE.lightLevel = -1;
15 | return INSTANCE;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/world/BlockActivateEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.world;
7 |
8 | import net.minecraft.block.BlockState;
9 |
10 | public class BlockActivateEvent {
11 | private static final BlockActivateEvent INSTANCE = new BlockActivateEvent();
12 |
13 | public BlockState blockState;
14 |
15 | public static BlockActivateEvent get(BlockState blockState) {
16 | INSTANCE.blockState = blockState;
17 | return INSTANCE;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/world/BlockUpdateEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.world;
7 |
8 | import net.minecraft.block.BlockState;
9 | import net.minecraft.util.math.BlockPos;
10 |
11 | public class BlockUpdateEvent {
12 | private static final BlockUpdateEvent INSTANCE = new BlockUpdateEvent();
13 |
14 | public BlockPos pos;
15 | public BlockState oldState, newState;
16 |
17 | public static BlockUpdateEvent get(BlockPos pos, BlockState oldState, BlockState newState) {
18 | INSTANCE.pos = pos;
19 | INSTANCE.oldState = oldState;
20 | INSTANCE.newState = newState;
21 |
22 | return INSTANCE;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/world/ChunkDataEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.world;
7 |
8 | import net.minecraft.world.chunk.WorldChunk;
9 |
10 | /**
11 | * @implNote Shouldn't be put in a {@link meteordevelopment.meteorclient.utils.misc.Pool} to avoid a race-condition, or in a {@link ThreadLocal} as it is shared between threads.
12 | * @author Crosby
13 | */
14 | public record ChunkDataEvent(WorldChunk chunk) {}
15 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/world/ChunkOcclusionEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.world;
7 |
8 | import meteordevelopment.meteorclient.events.Cancellable;
9 |
10 | public class ChunkOcclusionEvent extends Cancellable {
11 | private static final ChunkOcclusionEvent INSTANCE = new ChunkOcclusionEvent();
12 |
13 | public static ChunkOcclusionEvent get() {
14 | INSTANCE.setCancelled(false);
15 | return INSTANCE;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/world/ParticleEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.world;
7 |
8 | import meteordevelopment.meteorclient.events.Cancellable;
9 | import net.minecraft.particle.ParticleEffect;
10 |
11 | public class ParticleEvent extends Cancellable {
12 | private static final ParticleEvent INSTANCE = new ParticleEvent();
13 |
14 | public ParticleEffect particle;
15 |
16 | public static ParticleEvent get(ParticleEffect particle) {
17 | INSTANCE.setCancelled(false);
18 | INSTANCE.particle = particle;
19 | return INSTANCE;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/world/PlaySoundEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.world;
7 |
8 | import meteordevelopment.meteorclient.events.Cancellable;
9 | import net.minecraft.client.sound.SoundInstance;
10 |
11 | public class PlaySoundEvent extends Cancellable {
12 | private static final PlaySoundEvent INSTANCE = new PlaySoundEvent();
13 |
14 | public SoundInstance sound;
15 |
16 | public static PlaySoundEvent get(SoundInstance sound) {
17 | INSTANCE.setCancelled(false);
18 | INSTANCE.sound = sound;
19 | return INSTANCE;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/world/ServerConnectBeginEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.world;
7 |
8 | import net.minecraft.client.network.ServerAddress;
9 | import net.minecraft.client.network.ServerInfo;
10 |
11 | public class ServerConnectBeginEvent {
12 | private static final ServerConnectBeginEvent INSTANCE = new ServerConnectBeginEvent();
13 | public ServerAddress address;
14 | public ServerInfo info;
15 |
16 | public static ServerConnectBeginEvent get(ServerAddress address, ServerInfo info) {
17 | INSTANCE.address = address;
18 | INSTANCE.info = info;
19 | return INSTANCE;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/world/ServerConnectEndEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.world;
7 |
8 | import java.net.InetSocketAddress;
9 |
10 | public class ServerConnectEndEvent {
11 | private static final ServerConnectEndEvent INSTANCE = new ServerConnectEndEvent();
12 | public InetSocketAddress address;
13 |
14 | public static ServerConnectEndEvent get(InetSocketAddress address) {
15 | INSTANCE.address = address;
16 | return INSTANCE;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/events/world/TickEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.events.world;
7 |
8 | public class TickEvent {
9 | public static class Pre extends TickEvent {
10 | private static final Pre INSTANCE = new Pre();
11 |
12 | public static Pre get() {
13 | return INSTANCE;
14 | }
15 | }
16 |
17 | public static class Post extends TickEvent {
18 | private static final Post INSTANCE = new Post();
19 |
20 | public static Post get() {
21 | return INSTANCE;
22 | }
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/GuiKeyEvents.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui;
7 |
8 | public class GuiKeyEvents {
9 | public static boolean canUseKeys = true;
10 |
11 | private GuiKeyEvents() {
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/renderer/GuiRenderOperation.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.renderer;
7 |
8 | import meteordevelopment.meteorclient.utils.misc.Pool;
9 | import meteordevelopment.meteorclient.utils.render.color.Color;
10 |
11 | public abstract class GuiRenderOperation> {
12 | protected double x, y;
13 | protected Color color;
14 |
15 | public void set(double x, double y, Color color) {
16 | this.x = x;
17 | this.y = y;
18 | this.color = color;
19 | }
20 |
21 | @SuppressWarnings("unchecked")
22 | public void run(Pool pool) {
23 | onRun();
24 | pool.free((T) this);
25 | }
26 |
27 | protected abstract void onRun();
28 | }
29 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/renderer/operations/TextOperation.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.renderer.operations;
7 |
8 | import meteordevelopment.meteorclient.gui.renderer.GuiRenderOperation;
9 | import meteordevelopment.meteorclient.renderer.text.TextRenderer;
10 |
11 | public class TextOperation extends GuiRenderOperation {
12 | private String text;
13 | private TextRenderer renderer;
14 |
15 | public boolean title;
16 |
17 | public TextOperation set(String text, TextRenderer renderer, boolean title) {
18 | this.text = text;
19 | this.renderer = renderer;
20 | this.title = title;
21 |
22 | return this;
23 | }
24 |
25 | @Override
26 | protected void onRun() {
27 | renderer.render(text, x, y, color);
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/renderer/packer/TextureRegion.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.renderer.packer;
7 |
8 | public class TextureRegion {
9 | public double x1, y1;
10 | public double x2, y2;
11 |
12 | public double diagonal;
13 |
14 | public TextureRegion(double width, double height) {
15 | diagonal = Math.sqrt(width * width + height * height);
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/tabs/Tab.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.tabs;
7 |
8 | import meteordevelopment.meteorclient.gui.GuiTheme;
9 | import net.minecraft.client.gui.screen.Screen;
10 |
11 | import static meteordevelopment.meteorclient.MeteorClient.mc;
12 |
13 | public abstract class Tab {
14 | public final String name;
15 |
16 | public Tab(String name) {
17 | this.name = name;
18 | }
19 |
20 | public void openScreen(GuiTheme theme) {
21 | TabScreen screen = this.createScreen(theme);
22 | screen.addDirect(theme.topBar()).top().centerX();
23 | mc.setScreen(screen);
24 | }
25 |
26 | public abstract TabScreen createScreen(GuiTheme theme);
27 |
28 | public abstract boolean isScreen(Screen screen);
29 | }
30 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/tabs/TabScreen.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.tabs;
7 |
8 | import meteordevelopment.meteorclient.gui.GuiTheme;
9 | import meteordevelopment.meteorclient.gui.WidgetScreen;
10 | import meteordevelopment.meteorclient.gui.utils.Cell;
11 | import meteordevelopment.meteorclient.gui.widgets.WWidget;
12 |
13 | public abstract class TabScreen extends WidgetScreen {
14 | public final Tab tab;
15 |
16 | public TabScreen(GuiTheme theme, Tab tab) {
17 | super(theme, tab.name);
18 |
19 | this.tab = tab;
20 | }
21 |
22 | public Cell addDirect(T widget) {
23 | return super.add(widget);
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/tabs/WindowTabScreen.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.tabs;
7 |
8 | import meteordevelopment.meteorclient.gui.GuiTheme;
9 | import meteordevelopment.meteorclient.gui.utils.Cell;
10 | import meteordevelopment.meteorclient.gui.widgets.WWidget;
11 | import meteordevelopment.meteorclient.gui.widgets.containers.WWindow;
12 |
13 | public abstract class WindowTabScreen extends TabScreen {
14 | protected final WWindow window;
15 |
16 | public WindowTabScreen(GuiTheme theme, Tab tab) {
17 | super(theme, tab);
18 |
19 | window = super.add(theme.window(tab.name)).center().widget();
20 | }
21 |
22 | @Override
23 | public Cell add(W widget) {
24 | return window.add(widget);
25 | }
26 |
27 | @Override
28 | public void clear() {
29 | window.clear();
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/tabs/builtin/ModulesTab.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.tabs.builtin;
7 |
8 | import meteordevelopment.meteorclient.gui.GuiTheme;
9 | import meteordevelopment.meteorclient.gui.GuiThemes;
10 | import meteordevelopment.meteorclient.gui.tabs.Tab;
11 | import meteordevelopment.meteorclient.gui.tabs.TabScreen;
12 | import net.minecraft.client.gui.screen.Screen;
13 |
14 | public class ModulesTab extends Tab {
15 | public ModulesTab() {
16 | super("Modules");
17 | }
18 |
19 | @Override
20 | public TabScreen createScreen(GuiTheme theme) {
21 | return theme.modulesScreen();
22 | }
23 |
24 | @Override
25 | public boolean isScreen(Screen screen) {
26 | return GuiThemes.get().isModulesScreen(screen);
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/themes/meteor/widgets/WMeteorLabel.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.themes.meteor.widgets;
7 |
8 | import meteordevelopment.meteorclient.gui.renderer.GuiRenderer;
9 | import meteordevelopment.meteorclient.gui.themes.meteor.MeteorWidget;
10 | import meteordevelopment.meteorclient.gui.widgets.WLabel;
11 |
12 | public class WMeteorLabel extends WLabel implements MeteorWidget {
13 | public WMeteorLabel(String text, boolean title) {
14 | super(text, title);
15 | }
16 |
17 | @Override
18 | protected void onRender(GuiRenderer renderer, double mouseX, double mouseY, double delta) {
19 | if (!text.isEmpty()) {
20 | renderer.text(text, x, y, color != null ? color : (title ? theme().titleTextColor.get() : theme().textColor.get()), title);
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/themes/meteor/widgets/WMeteorQuad.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.themes.meteor.widgets;
7 |
8 | import meteordevelopment.meteorclient.gui.renderer.GuiRenderer;
9 | import meteordevelopment.meteorclient.gui.widgets.WQuad;
10 | import meteordevelopment.meteorclient.utils.render.color.Color;
11 |
12 | public class WMeteorQuad extends WQuad {
13 | public WMeteorQuad(Color color) {
14 | super(color);
15 | }
16 |
17 | @Override
18 | protected void onRender(GuiRenderer renderer, double mouseX, double mouseY, double delta) {
19 | renderer.quad(x, y, width, height, color);
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/themes/meteor/widgets/WMeteorTooltip.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.themes.meteor.widgets;
7 |
8 | import meteordevelopment.meteorclient.gui.renderer.GuiRenderer;
9 | import meteordevelopment.meteorclient.gui.themes.meteor.MeteorWidget;
10 | import meteordevelopment.meteorclient.gui.widgets.WTooltip;
11 |
12 | public class WMeteorTooltip extends WTooltip implements MeteorWidget {
13 | public WMeteorTooltip(String text) {
14 | super(text);
15 | }
16 |
17 | @Override
18 | protected void onRender(GuiRenderer renderer, double mouseX, double mouseY, double delta) {
19 | renderer.quad(this, theme().backgroundColor.get());
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/themes/meteor/widgets/WMeteorTopBar.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.themes.meteor.widgets;
7 |
8 | import meteordevelopment.meteorclient.gui.themes.meteor.MeteorWidget;
9 | import meteordevelopment.meteorclient.gui.widgets.WTopBar;
10 | import meteordevelopment.meteorclient.utils.render.color.Color;
11 |
12 | public class WMeteorTopBar extends WTopBar implements MeteorWidget {
13 | @Override
14 | protected Color getButtonColor(boolean pressed, boolean hovered) {
15 | return theme().backgroundColor.get(pressed, hovered);
16 | }
17 |
18 | @Override
19 | protected Color getNameColor() {
20 | return theme().textColor.get();
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/themes/meteor/widgets/WMeteorView.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.themes.meteor.widgets;
7 |
8 | import meteordevelopment.meteorclient.gui.renderer.GuiRenderer;
9 | import meteordevelopment.meteorclient.gui.themes.meteor.MeteorWidget;
10 | import meteordevelopment.meteorclient.gui.widgets.containers.WView;
11 |
12 | public class WMeteorView extends WView implements MeteorWidget {
13 | @Override
14 | protected void onRender(GuiRenderer renderer, double mouseX, double mouseY, double delta) {
15 | if (canScroll && hasScrollBar) {
16 | renderer.quad(handleX(), handleY(), handleWidth(), handleHeight(), theme().scrollbarColor.get(handlePressed, handleMouseOver));
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/themes/meteor/widgets/pressable/WMeteorFavorite.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.themes.meteor.widgets.pressable;
7 |
8 | import meteordevelopment.meteorclient.gui.themes.meteor.MeteorWidget;
9 | import meteordevelopment.meteorclient.gui.widgets.pressable.WFavorite;
10 | import meteordevelopment.meteorclient.utils.render.color.Color;
11 |
12 | public class WMeteorFavorite extends WFavorite implements MeteorWidget {
13 | public WMeteorFavorite(boolean checked) {
14 | super(checked);
15 | }
16 |
17 | @Override
18 | protected Color getColor() {
19 | return theme().favoriteColor.get();
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/themes/meteor/widgets/pressable/WMeteorMinus.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.themes.meteor.widgets.pressable;
7 |
8 | import meteordevelopment.meteorclient.gui.renderer.GuiRenderer;
9 | import meteordevelopment.meteorclient.gui.themes.meteor.MeteorWidget;
10 | import meteordevelopment.meteorclient.gui.widgets.pressable.WMinus;
11 |
12 | public class WMeteorMinus extends WMinus implements MeteorWidget {
13 | @Override
14 | protected void onRender(GuiRenderer renderer, double mouseX, double mouseY, double delta) {
15 | double pad = pad();
16 | double s = theme.scale(3);
17 |
18 | renderBackground(renderer, this, pressed, mouseOver);
19 | renderer.quad(x + pad, y + height / 2 - s / 2, width - pad * 2, s, theme().minusColor.get());
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/themes/meteor/widgets/pressable/WMeteorTriangle.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.themes.meteor.widgets.pressable;
7 |
8 | import meteordevelopment.meteorclient.gui.renderer.GuiRenderer;
9 | import meteordevelopment.meteorclient.gui.themes.meteor.MeteorWidget;
10 | import meteordevelopment.meteorclient.gui.widgets.pressable.WTriangle;
11 |
12 | public class WMeteorTriangle extends WTriangle implements MeteorWidget {
13 | @Override
14 | protected void onRender(GuiRenderer renderer, double mouseX, double mouseY, double delta) {
15 | renderer.rotatedQuad(x, y, width, height, rotation, GuiRenderer.TRIANGLE, theme().backgroundColor.get(pressed, mouseOver));
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/utils/AlignmentX.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.utils;
7 |
8 | public enum AlignmentX {
9 | Left, Center, Right
10 | }
11 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/utils/AlignmentY.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.utils;
7 |
8 | public enum AlignmentY {
9 | Top, Center, Bottom
10 | }
11 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/utils/BaseWidget.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.utils;
7 |
8 | import meteordevelopment.meteorclient.gui.GuiTheme;
9 |
10 | public interface BaseWidget {
11 | GuiTheme getTheme();
12 | }
13 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/utils/CharFilter.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.utils;
7 |
8 | public interface CharFilter {
9 | boolean filter(String text, char c);
10 | }
11 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/utils/IScreenFactory.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.utils;
7 |
8 | import meteordevelopment.meteorclient.gui.GuiTheme;
9 | import meteordevelopment.meteorclient.gui.WidgetScreen;
10 |
11 | public interface IScreenFactory {
12 | WidgetScreen createScreen(GuiTheme theme);
13 | }
14 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/widgets/WHorizontalSeparator.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.widgets;
7 |
8 | public abstract class WHorizontalSeparator extends WWidget {
9 | protected String text;
10 | protected double textWidth;
11 |
12 | public WHorizontalSeparator(String text) {
13 | this.text = text;
14 | }
15 |
16 | @Override
17 | protected void onCalculateSize() {
18 | if (text != null) textWidth = theme.textWidth(text);
19 |
20 | width = 1;
21 | height = text != null ? theme.textHeight() : theme.scale(3);
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/widgets/WQuad.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.widgets;
7 |
8 | import meteordevelopment.meteorclient.utils.render.color.Color;
9 |
10 | public abstract class WQuad extends WWidget {
11 | public Color color;
12 |
13 | public WQuad(Color color) {
14 | this.color = color;
15 | }
16 |
17 | @Override
18 | protected void onCalculateSize() {
19 | double s = theme.scale(32);
20 |
21 | width = s;
22 | height = s;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/widgets/WRoot.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.widgets;
7 |
8 | public interface WRoot {
9 | }
10 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/widgets/WVerticalSeparator.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.widgets;
7 |
8 | public class WVerticalSeparator extends WWidget {
9 | @Override
10 | protected void onCalculateSize() {
11 | width = theme.scale(3);
12 | height = 1;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/widgets/pressable/WCheckbox.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.widgets.pressable;
7 |
8 | public abstract class WCheckbox extends WPressable {
9 | public boolean checked;
10 |
11 | public WCheckbox(boolean checked) {
12 | this.checked = checked;
13 | }
14 |
15 | @Override
16 | protected void onCalculateSize() {
17 | double pad = pad();
18 | double s = theme.textHeight();
19 |
20 | width = pad + s + pad;
21 | height = pad + s + pad;
22 | }
23 |
24 | @Override
25 | protected void onPressed(int button) {
26 | checked = !checked;
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/widgets/pressable/WMinus.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.widgets.pressable;
7 |
8 | public abstract class WMinus extends WPressable {
9 | @Override
10 | protected void onCalculateSize() {
11 | double pad = pad();
12 | double s = theme.textHeight();
13 |
14 | width = pad + s + pad;
15 | height = pad + s + pad;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/widgets/pressable/WPlus.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.widgets.pressable;
7 |
8 | public abstract class WPlus extends WPressable {
9 | @Override
10 | protected void onCalculateSize() {
11 | double pad = pad();
12 | double s = theme.textHeight();
13 |
14 | width = pad + s + pad;
15 | height = pad + s + pad;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/gui/widgets/pressable/WTriangle.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.gui.widgets.pressable;
7 |
8 | public abstract class WTriangle extends WPressable {
9 | public double rotation;
10 |
11 | @Override
12 | protected void onCalculateSize() {
13 | double s = theme.textHeight();
14 |
15 | width = s;
16 | height = s;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/AbstractBlockAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.block.AbstractBlock;
9 | import org.spongepowered.asm.mixin.Mixin;
10 | import org.spongepowered.asm.mixin.gen.Accessor;
11 |
12 | @Mixin(AbstractBlock.class)
13 | public interface AbstractBlockAccessor {
14 | @Accessor("collidable")
15 | boolean isCollidable();
16 | }
17 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/AbstractFurnaceScreenHandlerMixin.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import meteordevelopment.meteorclient.mixininterface.IAbstractFurnaceScreenHandler;
9 | import net.minecraft.item.ItemStack;
10 | import net.minecraft.screen.AbstractFurnaceScreenHandler;
11 | import org.spongepowered.asm.mixin.Mixin;
12 | import org.spongepowered.asm.mixin.Shadow;
13 |
14 | @Mixin(AbstractFurnaceScreenHandler.class)
15 | public abstract class AbstractFurnaceScreenHandlerMixin implements IAbstractFurnaceScreenHandler {
16 | @Shadow
17 | protected abstract boolean isSmeltable(ItemStack itemStack);
18 |
19 | @Override
20 | public boolean meteor$isItemSmeltable(ItemStack itemStack) {
21 | return isSmeltable(itemStack);
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/AbstractSignEditScreenAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.block.entity.SignBlockEntity;
9 | import net.minecraft.client.gui.screen.ingame.AbstractSignEditScreen;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.gen.Accessor;
12 |
13 | @Mixin(AbstractSignEditScreen.class)
14 | public interface AbstractSignEditScreenAccessor {
15 | @Accessor("blockEntity")
16 | SignBlockEntity getSign();
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/BlockEntityTypeAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.block.Block;
9 | import net.minecraft.block.entity.BlockEntityType;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.gen.Accessor;
12 |
13 | import java.util.Set;
14 |
15 | @Mixin(BlockEntityType.class)
16 | public interface BlockEntityTypeAccessor {
17 | @Accessor
18 | Set getBlocks();
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/BlockHitResultAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.util.hit.BlockHitResult;
9 | import net.minecraft.util.math.Direction;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.Mutable;
12 | import org.spongepowered.asm.mixin.gen.Accessor;
13 |
14 | @Mixin(BlockHitResult.class)
15 | public interface BlockHitResultAccessor {
16 | @Mutable
17 | @Accessor("side")
18 | void setSide(Direction direction);
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/CapabilityTrackerMixin.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import com.mojang.blaze3d.opengl.GlStateManager;
9 | import meteordevelopment.meteorclient.mixininterface.ICapabilityTracker;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.Shadow;
12 |
13 | @Mixin(GlStateManager.CapabilityTracker.class)
14 | public abstract class CapabilityTrackerMixin implements ICapabilityTracker {
15 | @Shadow
16 | private boolean state;
17 |
18 | @Shadow
19 | public abstract void setState(boolean state);
20 |
21 | @Override
22 | public boolean meteor$get() {
23 | return state;
24 | }
25 |
26 | @Override
27 | public void meteor$set(boolean state) {
28 | setState(state);
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/ChatHudAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.client.gui.hud.ChatHud;
9 | import net.minecraft.client.gui.hud.ChatHudLine;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.gen.Accessor;
12 |
13 | import java.util.List;
14 |
15 | @Mixin(ChatHud.class)
16 | public interface ChatHudAccessor {
17 | @Accessor("visibleMessages")
18 | List getVisibleMessages();
19 |
20 | @Accessor("messages")
21 | List getMessages();
22 | }
23 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/ChunkAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.block.entity.BlockEntity;
9 | import net.minecraft.util.math.BlockPos;
10 | import net.minecraft.world.chunk.Chunk;
11 | import org.spongepowered.asm.mixin.Mixin;
12 | import org.spongepowered.asm.mixin.gen.Accessor;
13 |
14 | import java.util.Map;
15 |
16 | @Mixin(Chunk.class)
17 | public interface ChunkAccessor {
18 | @Accessor("blockEntities")
19 | Map getBlockEntities();
20 | }
21 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/ClientChunkManagerAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.client.world.ClientChunkManager;
9 | import org.spongepowered.asm.mixin.Mixin;
10 | import org.spongepowered.asm.mixin.gen.Accessor;
11 |
12 | @Mixin(ClientChunkManager.class)
13 | public interface ClientChunkManagerAccessor {
14 | @Accessor("chunks")
15 | ClientChunkManager.ClientChunkMap getChunks();
16 | }
17 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/ClientChunkMapAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.client.world.ClientChunkManager;
9 | import net.minecraft.world.chunk.WorldChunk;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.gen.Accessor;
12 |
13 | import java.util.concurrent.atomic.AtomicReferenceArray;
14 |
15 | @Mixin(ClientChunkManager.ClientChunkMap.class)
16 | public interface ClientChunkMapAccessor {
17 | @Accessor("chunks")
18 | AtomicReferenceArray getChunks();
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/ClientConnectionAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import io.netty.channel.Channel;
9 | import net.minecraft.network.ClientConnection;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.gen.Accessor;
12 |
13 | @Mixin(ClientConnection.class)
14 | public interface ClientConnectionAccessor {
15 | @Accessor("channel")
16 | Channel getChannel();
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/ClientPlayerEntityAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.client.network.ClientPlayerEntity;
9 | import org.spongepowered.asm.mixin.Mixin;
10 | import org.spongepowered.asm.mixin.gen.Accessor;
11 | import org.spongepowered.asm.mixin.gen.Invoker;
12 |
13 | @Mixin(ClientPlayerEntity.class)
14 | public interface ClientPlayerEntityAccessor {
15 | @Accessor("mountJumpStrength")
16 | void setMountJumpStrength(float strength);
17 |
18 | @Accessor("ticksSinceLastPositionPacketSent")
19 | void setTicksSinceLastPositionPacketSent(int ticks);
20 |
21 | @Invoker("canSprint")
22 | boolean invokeCanSprint();
23 | }
24 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/ClientPlayerInteractionManagerAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.client.network.ClientPlayerInteractionManager;
9 | import net.minecraft.util.math.BlockPos;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.gen.Accessor;
12 |
13 | @Mixin(ClientPlayerInteractionManager.class)
14 | public interface ClientPlayerInteractionManagerAccessor {
15 | @Accessor("currentBreakingProgress")
16 | float getBreakingProgress();
17 |
18 | @Accessor("currentBreakingProgress")
19 | void setCurrentBreakingProgress(float progress);
20 |
21 | @Accessor("currentBreakingPos")
22 | BlockPos getCurrentBreakingBlockPos();
23 | }
24 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/ContainerComponentAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.component.type.ContainerComponent;
9 | import net.minecraft.item.ItemStack;
10 | import net.minecraft.util.collection.DefaultedList;
11 | import org.spongepowered.asm.mixin.Mixin;
12 | import org.spongepowered.asm.mixin.gen.Accessor;
13 |
14 | @Mixin(ContainerComponent.class)
15 | public interface ContainerComponentAccessor {
16 | @Accessor
17 | DefaultedList getStacks();
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/CreativeInventoryScreenAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.client.gui.screen.ingame.CreativeInventoryScreen;
9 | import net.minecraft.item.ItemGroup;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.gen.Accessor;
12 |
13 | @Mixin(CreativeInventoryScreen.class)
14 | public interface CreativeInventoryScreenAccessor {
15 | @Accessor("selectedTab")
16 | static ItemGroup getSelectedTab() {
17 | return null;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/CreativeSlotMixin.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import meteordevelopment.meteorclient.mixininterface.ISlot;
9 | import net.minecraft.screen.slot.Slot;
10 | import org.spongepowered.asm.mixin.Final;
11 | import org.spongepowered.asm.mixin.Mixin;
12 | import org.spongepowered.asm.mixin.Shadow;
13 |
14 | @Mixin(targets = "net.minecraft.client.gui.screen.ingame.CreativeInventoryScreen$CreativeSlot")
15 | public abstract class CreativeSlotMixin implements ISlot {
16 | @Shadow @Final Slot slot;
17 |
18 | @Override
19 | public int meteor$getId() {
20 | return slot.id;
21 | }
22 |
23 | @Override
24 | public int meteor$getIndex() {
25 | return slot.getIndex();
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/CrossbowItemAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.component.type.ChargedProjectilesComponent;
9 | import net.minecraft.item.CrossbowItem;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.gen.Invoker;
12 |
13 | @Mixin(CrossbowItem.class)
14 | public interface CrossbowItemAccessor {
15 | @Invoker("getSpeed")
16 | static float getSpeed(ChargedProjectilesComponent itemStack) { return 0; }
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/DefaultSkinHelperMixin.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.client.util.DefaultSkinHelper;
9 | import org.spongepowered.asm.mixin.Mixin;
10 | import org.spongepowered.asm.mixin.injection.At;
11 | import org.spongepowered.asm.mixin.injection.Inject;
12 | import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
13 |
14 | import java.util.UUID;
15 |
16 | @Mixin(DefaultSkinHelper.class)
17 | public abstract class DefaultSkinHelperMixin {
18 | // Player model rendering in main menu
19 | @Inject(method = "getSkinTextures(Ljava/util/UUID;)Lnet/minecraft/client/util/SkinTextures;", at = @At("HEAD"), cancellable = true)
20 | private static void onShouldUseSlimModel(UUID uuid, CallbackInfoReturnable info) {
21 | if (uuid == null) info.setReturnValue(false);
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/EntityAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.entity.Entity;
9 | import org.spongepowered.asm.mixin.Mixin;
10 | import org.spongepowered.asm.mixin.gen.Accessor;
11 |
12 | @Mixin(Entity.class)
13 | public interface EntityAccessor {
14 | @Accessor("touchingWater")
15 | void setInWater(boolean touchingWater);
16 | }
17 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/EntityBucketItemAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.entity.EntityType;
9 | import net.minecraft.item.EntityBucketItem;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.gen.Accessor;
12 |
13 | @Mixin(EntityBucketItem.class)
14 | public interface EntityBucketItemAccessor {
15 | @Accessor("entityType")
16 | EntityType> getEntityType();
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/EntityEffectParticleEffectAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.particle.EntityEffectParticleEffect;
9 | import org.spongepowered.asm.mixin.Mixin;
10 | import org.spongepowered.asm.mixin.gen.Accessor;
11 |
12 | @Mixin(EntityEffectParticleEffect.class)
13 | public interface EntityEffectParticleEffectAccessor {
14 | @Accessor
15 | int getColor();
16 | }
17 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/EntityRenderStateMixin.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import meteordevelopment.meteorclient.mixininterface.IEntityRenderState;
9 | import net.minecraft.client.render.entity.state.EntityRenderState;
10 | import net.minecraft.entity.Entity;
11 | import org.spongepowered.asm.mixin.Mixin;
12 | import org.spongepowered.asm.mixin.Unique;
13 |
14 | @Mixin(EntityRenderState.class)
15 | public abstract class EntityRenderStateMixin implements IEntityRenderState {
16 | @Unique
17 | private Entity entity;
18 |
19 | @Override
20 | public Entity meteor$getEntity() {
21 | return entity;
22 | }
23 |
24 | @Override
25 | public void meteor$setEntity(Entity entity) {
26 | this.entity = entity;
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/EntityTrackingSectionAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.util.collection.TypeFilterableList;
9 | import net.minecraft.world.entity.EntityTrackingSection;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.gen.Accessor;
12 |
13 | @Mixin(EntityTrackingSection.class)
14 | public interface EntityTrackingSectionAccessor {
15 | @Accessor("collection")
16 | TypeFilterableList getCollection();
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/EntityVelocityUpdateS2CPacketAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.network.packet.s2c.play.EntityVelocityUpdateS2CPacket;
9 | import org.spongepowered.asm.mixin.Mixin;
10 | import org.spongepowered.asm.mixin.Mutable;
11 | import org.spongepowered.asm.mixin.gen.Accessor;
12 |
13 | @Mixin(EntityVelocityUpdateS2CPacket.class)
14 | public interface EntityVelocityUpdateS2CPacketAccessor {
15 | @Mutable
16 | @Accessor("velocityX")
17 | void setX(int velocityX);
18 |
19 | @Mutable
20 | @Accessor("velocityY")
21 | void setY(int velocityY);
22 |
23 | @Mutable
24 | @Accessor("velocityZ")
25 | void setZ(int velocityZ);
26 | }
27 |
28 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/FileCacheAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.client.texture.PlayerSkinProvider;
9 | import org.spongepowered.asm.mixin.Mixin;
10 | import org.spongepowered.asm.mixin.gen.Accessor;
11 |
12 | import java.nio.file.Path;
13 |
14 | @Mixin(PlayerSkinProvider.FileCache.class)
15 | public interface FileCacheAccessor {
16 | @Accessor
17 | Path getDirectory();
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/GpuTextureMixin.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import com.mojang.blaze3d.textures.AddressMode;
9 | import com.mojang.blaze3d.textures.GpuTexture;
10 | import meteordevelopment.meteorclient.mixininterface.IGpuTexture;
11 | import org.spongepowered.asm.mixin.Mixin;
12 | import org.spongepowered.asm.mixin.Shadow;
13 |
14 | @Mixin(GpuTexture.class)
15 | public abstract class GpuTextureMixin implements IGpuTexture {
16 | @Shadow(remap = false)
17 | protected AddressMode addressModeU;
18 |
19 | @Shadow(remap = false)
20 | protected AddressMode addressModeV;
21 |
22 | @Override
23 | public AddressMode meteor$getAddressModeU() {
24 | return this.addressModeU;
25 | }
26 |
27 | @Override
28 | public AddressMode meteor$getAddressModeV() {
29 | return this.addressModeV;
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/HandledScreenAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.client.gui.screen.ingame.HandledScreen;
9 | import net.minecraft.screen.slot.Slot;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.gen.Accessor;
12 |
13 | @Mixin(HandledScreen.class)
14 | public interface HandledScreenAccessor {
15 | @Accessor("focusedSlot")
16 | Slot getFocusedSlot();
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/HorseBaseEntityMixin.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import meteordevelopment.meteorclient.mixininterface.IHorseBaseEntity;
9 | import net.minecraft.entity.passive.AbstractHorseEntity;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.Shadow;
12 |
13 | @Mixin(AbstractHorseEntity.class)
14 | public abstract class HorseBaseEntityMixin implements IHorseBaseEntity {
15 | @Shadow protected abstract void setHorseFlag(int bitmask, boolean flag);
16 |
17 | @Override
18 | public void meteor$setSaddled(boolean saddled) {
19 | setHorseFlag(4, saddled);
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/HorseScreenHandlerAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.entity.passive.AbstractHorseEntity;
9 | import net.minecraft.screen.HorseScreenHandler;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.gen.Accessor;
12 |
13 | @Mixin(HorseScreenHandler.class)
14 | public interface HorseScreenHandlerAccessor {
15 | @Accessor("entity")
16 | AbstractHorseEntity getEntity();
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/IdentifierAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.util.Identifier;
9 | import org.spongepowered.asm.mixin.Mixin;
10 | import org.spongepowered.asm.mixin.Mutable;
11 | import org.spongepowered.asm.mixin.gen.Accessor;
12 |
13 | @Mixin(Identifier.class)
14 | public interface IdentifierAccessor {
15 | @Mutable
16 | @Accessor
17 | void setPath(String path);
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/ItemGroupsMixin.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import com.llamalad7.mixinextras.injector.ModifyReturnValue;
9 | import meteordevelopment.meteorclient.systems.modules.Modules;
10 | import meteordevelopment.meteorclient.systems.modules.render.BetterTooltips;
11 | import net.minecraft.item.ItemGroups;
12 | import org.spongepowered.asm.mixin.Mixin;
13 | import org.spongepowered.asm.mixin.injection.At;
14 |
15 | @Mixin(ItemGroups.class)
16 | public abstract class ItemGroupsMixin {
17 | @ModifyReturnValue(method = "updateDisplayContext", at = @At("RETURN"))
18 | private static boolean modifyReturn(boolean original) {
19 | return original || Modules.get().get(BetterTooltips.class).updateTooltips();
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/KeyBindingAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.client.option.KeyBinding;
9 | import net.minecraft.client.util.InputUtil;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.gen.Accessor;
12 |
13 | import java.util.Map;
14 |
15 | @Mixin(KeyBinding.class)
16 | public interface KeyBindingAccessor {
17 | @Accessor("CATEGORY_ORDER_MAP")
18 | static Map getCategoryOrderMap() { return null; }
19 |
20 | @Accessor("boundKey")
21 | InputUtil.Key getKey();
22 |
23 | @Accessor("timesPressed")
24 | int meteor$getTimesPressed();
25 |
26 | @Accessor("timesPressed")
27 | void meteor$setTimesPressed(int timesPressed);
28 | }
29 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/LayerRenderStateAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.client.render.item.ItemRenderState;
9 | import net.minecraft.client.render.model.json.Transformation;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.gen.Accessor;
12 |
13 | @Mixin(ItemRenderState.LayerRenderState.class)
14 | public interface LayerRenderStateAccessor {
15 | @Accessor
16 | Transformation getTransform();
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/LivingEntityAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.entity.LivingEntity;
9 | import net.minecraft.fluid.Fluid;
10 | import net.minecraft.registry.tag.TagKey;
11 | import org.spongepowered.asm.mixin.Mixin;
12 | import org.spongepowered.asm.mixin.gen.Accessor;
13 | import org.spongepowered.asm.mixin.gen.Invoker;
14 |
15 | @Mixin(LivingEntity.class)
16 | public interface LivingEntityAccessor {
17 | @Invoker("swimUpward")
18 | void swimUpwards(TagKey fluid);
19 |
20 | @Accessor("jumping")
21 | boolean isJumping();
22 |
23 | @Accessor("jumpingCooldown")
24 | int getJumpCooldown();
25 |
26 | @Accessor("jumpingCooldown")
27 | void setJumpCooldown(int cooldown);
28 | }
29 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/MapTextureManagerAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.client.texture.MapTextureManager;
9 | import net.minecraft.component.type.MapIdComponent;
10 | import net.minecraft.item.map.MapState;
11 | import org.spongepowered.asm.mixin.Mixin;
12 | import org.spongepowered.asm.mixin.gen.Invoker;
13 |
14 | @Mixin(MapTextureManager.class)
15 | public interface MapTextureManagerAccessor {
16 | @Invoker("getMapTexture")
17 | MapTextureManager.MapTexture invokeGetMapTexture(MapIdComponent id, MapState state);
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/MinecraftServerAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.server.MinecraftServer;
9 | import net.minecraft.world.level.storage.LevelStorage;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.gen.Accessor;
12 |
13 | @Mixin(MinecraftServer.class)
14 | public interface MinecraftServerAccessor {
15 | @Accessor("session")
16 | LevelStorage.Session getSession();
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/MultiPhaseMixin.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import meteordevelopment.meteorclient.mixininterface.IMultiPhase;
9 | import net.minecraft.client.render.RenderLayer;
10 | import org.spongepowered.asm.mixin.Final;
11 | import org.spongepowered.asm.mixin.Mixin;
12 | import org.spongepowered.asm.mixin.Shadow;
13 |
14 | @Mixin(RenderLayer.MultiPhase.class)
15 | public abstract class MultiPhaseMixin implements IMultiPhase {
16 | @Shadow
17 | @Final
18 | private RenderLayer.MultiPhaseParameters phases;
19 |
20 | @Override
21 | public RenderLayer.MultiPhaseParameters meteor$getParameters() {
22 | return this.phases;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/MultiPhaseParametersMixin.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import meteordevelopment.meteorclient.mixininterface.IMultiPhaseParameters;
9 | import net.minecraft.client.render.RenderLayer;
10 | import net.minecraft.client.render.RenderPhase;
11 | import org.spongepowered.asm.mixin.Final;
12 | import org.spongepowered.asm.mixin.Mixin;
13 | import org.spongepowered.asm.mixin.Shadow;
14 |
15 | @Mixin(RenderLayer.MultiPhaseParameters.class)
16 | public abstract class MultiPhaseParametersMixin implements IMultiPhaseParameters {
17 | @Shadow
18 | @Final
19 | RenderPhase.Target target;
20 |
21 | @Override
22 | public RenderPhase.Target meteor$getTarget() {
23 | return this.target;
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/MutableTextMixin.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import meteordevelopment.meteorclient.mixininterface.IText;
9 | import net.minecraft.text.MutableText;
10 | import net.minecraft.util.Language;
11 | import org.jetbrains.annotations.Nullable;
12 | import org.spongepowered.asm.mixin.Mixin;
13 | import org.spongepowered.asm.mixin.Shadow;
14 |
15 | @Mixin(MutableText.class)
16 | public abstract class MutableTextMixin implements IText {
17 | @Shadow
18 | private @Nullable Language language;
19 |
20 | @Override
21 | public void meteor$invalidateCache() {
22 | this.language = null;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/PlayerEntityAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.entity.EntityPose;
9 | import net.minecraft.entity.player.PlayerEntity;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.gen.Invoker;
12 |
13 | @Mixin(PlayerEntity.class)
14 | public interface PlayerEntityAccessor {
15 | @Invoker("canChangeIntoPose")
16 | boolean meteor$canChangeIntoPose(EntityPose pose);
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/PlayerMoveC2SPacketAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
9 | import org.spongepowered.asm.mixin.Mixin;
10 | import org.spongepowered.asm.mixin.Mutable;
11 | import org.spongepowered.asm.mixin.gen.Accessor;
12 |
13 | @Mixin(PlayerMoveC2SPacket.class)
14 | public interface PlayerMoveC2SPacketAccessor {
15 | @Mutable
16 | @Accessor("y")
17 | void setY(double y);
18 |
19 | @Mutable
20 | @Accessor("onGround")
21 | void setOnGround(boolean onGround);
22 | }
23 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/PlayerMoveC2SPacketMixin.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import meteordevelopment.meteorclient.mixininterface.IPlayerMoveC2SPacket;
9 | import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.Unique;
12 |
13 | @Mixin(PlayerMoveC2SPacket.class)
14 | public abstract class PlayerMoveC2SPacketMixin implements IPlayerMoveC2SPacket {
15 | @Unique private int tag;
16 |
17 | @Override
18 | public void meteor$setTag(int tag) { this.tag = tag; }
19 |
20 | @Override
21 | public int meteor$getTag() { return this.tag; }
22 | }
23 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/PlayerSkinProviderAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.client.texture.PlayerSkinProvider;
9 | import org.spongepowered.asm.mixin.Mixin;
10 | import org.spongepowered.asm.mixin.gen.Accessor;
11 |
12 | @Mixin(PlayerSkinProvider.class)
13 | public interface PlayerSkinProviderAccessor {
14 | @Accessor("skinCache")
15 | PlayerSkinProvider.FileCache getSkinCache();
16 | }
17 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/ProjectileEntityAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.entity.projectile.ProjectileEntity;
9 | import org.spongepowered.asm.mixin.Mixin;
10 | import org.spongepowered.asm.mixin.gen.Accessor;
11 |
12 | import java.util.UUID;
13 |
14 | @Mixin(ProjectileEntity.class)
15 | public interface ProjectileEntityAccessor {
16 | @Accessor
17 | UUID getOwnerUuid();
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/ProjectileInGroundAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.entity.projectile.PersistentProjectileEntity;
9 | import org.spongepowered.asm.mixin.Mixin;
10 | import org.spongepowered.asm.mixin.gen.Invoker;
11 |
12 | @Mixin(PersistentProjectileEntity.class)
13 | public interface ProjectileInGroundAccessor {
14 | @Invoker("isInGround")
15 | boolean invokeIsInGround();
16 | }
17 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/RegistriesMixin.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.registry.Registries;
9 | import org.spongepowered.asm.mixin.Mixin;
10 | import org.spongepowered.asm.mixin.injection.At;
11 | import org.spongepowered.asm.mixin.injection.Redirect;
12 |
13 | import java.util.function.Supplier;
14 |
15 | @Mixin(Registries.class)
16 | public abstract class RegistriesMixin {
17 | @Redirect(method = "create(Lnet/minecraft/registry/RegistryKey;Lnet/minecraft/registry/MutableRegistry;Lnet/minecraft/registry/Registries$Initializer;)Lnet/minecraft/registry/MutableRegistry;", at = @At(value = "INVOKE", target = "Lnet/minecraft/Bootstrap;ensureBootstrapped(Ljava/util/function/Supplier;)V"))
18 | private static void ignoreBootstrap(Supplier callerGetter) {
19 | // nothing
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/ReloadStateAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.client.resource.ResourceReloadLogger;
9 | import org.spongepowered.asm.mixin.Mixin;
10 | import org.spongepowered.asm.mixin.gen.Accessor;
11 |
12 | @Mixin(ResourceReloadLogger.ReloadState.class)
13 | public interface ReloadStateAccessor {
14 | @Accessor("finished")
15 | boolean isFinished();
16 | }
17 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/RenderPipelineMixin.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import com.mojang.blaze3d.pipeline.RenderPipeline;
9 | import meteordevelopment.meteorclient.mixininterface.IRenderPipeline;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.Unique;
12 |
13 | @Mixin(RenderPipeline.class)
14 | public abstract class RenderPipelineMixin implements IRenderPipeline {
15 | @Unique
16 | private boolean lineSmooth;
17 |
18 | @Override
19 | public void meteor$setLineSmooth(boolean lineSmooth) {
20 | this.lineSmooth = lineSmooth;
21 | }
22 |
23 | @Override
24 | public boolean meteor$getLineSmooth() {
25 | return lineSmooth;
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/ResourceReloadLoggerAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.client.resource.ResourceReloadLogger;
9 | import org.spongepowered.asm.mixin.Mixin;
10 | import org.spongepowered.asm.mixin.gen.Accessor;
11 |
12 | @Mixin(ResourceReloadLogger.class)
13 | public interface ResourceReloadLoggerAccessor {
14 | @Accessor("reloadState")
15 | ResourceReloadLogger.ReloadState getReloadState();
16 | }
17 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/SectionedEntityCacheAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import it.unimi.dsi.fastutil.longs.Long2ObjectMap;
9 | import it.unimi.dsi.fastutil.longs.LongSortedSet;
10 | import net.minecraft.world.entity.EntityLike;
11 | import net.minecraft.world.entity.EntityTrackingSection;
12 | import net.minecraft.world.entity.SectionedEntityCache;
13 | import org.spongepowered.asm.mixin.Mixin;
14 | import org.spongepowered.asm.mixin.gen.Accessor;
15 |
16 | @Mixin(SectionedEntityCache.class)
17 | public interface SectionedEntityCacheAccessor {
18 | @Accessor("trackedPositions")
19 | LongSortedSet getTrackedPositions();
20 |
21 | @Accessor("trackingSections")
22 | Long2ObjectMap> getTrackingSections();
23 | }
24 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/ServerResourcePackLoaderMixin.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import meteordevelopment.meteorclient.systems.modules.Modules;
9 | import meteordevelopment.meteorclient.systems.modules.misc.ServerSpoof;
10 | import net.minecraft.client.resource.server.ServerResourcePackLoader;
11 | import org.spongepowered.asm.mixin.Mixin;
12 | import org.spongepowered.asm.mixin.injection.At;
13 | import org.spongepowered.asm.mixin.injection.Inject;
14 | import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
15 |
16 | @Mixin(ServerResourcePackLoader.class)
17 | public abstract class ServerResourcePackLoaderMixin {
18 | @Inject(method = "onReloadSuccess", at = @At("TAIL"))
19 | private void removeInactivePacksTail(CallbackInfo ci) {
20 | Modules.get().get(ServerSpoof.class).silentAcceptResourcePack = false;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/ShapeIndexBufferAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import com.mojang.blaze3d.buffers.GpuBuffer;
9 | import com.mojang.blaze3d.systems.RenderSystem;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.gen.Accessor;
12 |
13 | @Mixin(RenderSystem.ShapeIndexBuffer.class)
14 | public interface ShapeIndexBufferAccessor {
15 | @Accessor("indexBuffer")
16 | GpuBuffer getBuffer();
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/ShulkerBoxScreenHandlerAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.inventory.Inventory;
9 | import net.minecraft.screen.ShulkerBoxScreenHandler;
10 | import org.spongepowered.asm.mixin.Mixin;
11 | import org.spongepowered.asm.mixin.gen.Accessor;
12 |
13 | @Mixin(ShulkerBoxScreenHandler.class)
14 | public interface ShulkerBoxScreenHandlerAccessor {
15 | @Accessor("inventory")
16 | Inventory meteor$getInventory();
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/SimpleEntityLookupAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.world.entity.EntityLike;
9 | import net.minecraft.world.entity.SectionedEntityCache;
10 | import net.minecraft.world.entity.SimpleEntityLookup;
11 | import org.spongepowered.asm.mixin.Mixin;
12 | import org.spongepowered.asm.mixin.gen.Accessor;
13 |
14 | @Mixin(SimpleEntityLookup.class)
15 | public interface SimpleEntityLookupAccessor {
16 | @Accessor("cache")
17 | SectionedEntityCache getCache();
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/SlotMixin.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import meteordevelopment.meteorclient.mixininterface.ISlot;
9 | import net.minecraft.screen.slot.Slot;
10 | import org.spongepowered.asm.mixin.Final;
11 | import org.spongepowered.asm.mixin.Mixin;
12 | import org.spongepowered.asm.mixin.Shadow;
13 |
14 | @Mixin(Slot.class)
15 | public abstract class SlotMixin implements ISlot {
16 | @Shadow public int id;
17 | @Shadow @Final private int index;
18 |
19 | @Override
20 | public int meteor$getId() {
21 | return id;
22 | }
23 |
24 | @Override
25 | public int meteor$getIndex() {
26 | return index;
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/StatusEffectInstanceAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.entity.effect.StatusEffectInstance;
9 | import org.spongepowered.asm.mixin.Mixin;
10 | import org.spongepowered.asm.mixin.gen.Accessor;
11 |
12 | @Mixin(StatusEffectInstance.class)
13 | public interface StatusEffectInstanceAccessor {
14 | @Accessor("duration")
15 | void setDuration(int duration);
16 |
17 | @Accessor("amplifier")
18 | void setAmplifier(int amplifier);
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/TextHandlerAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.client.font.TextHandler;
9 | import org.spongepowered.asm.mixin.Mixin;
10 | import org.spongepowered.asm.mixin.gen.Accessor;
11 |
12 | @Mixin(TextHandler.class)
13 | public interface TextHandlerAccessor {
14 | @Accessor("widthRetriever")
15 | TextHandler.WidthRetriever getWidthRetriever();
16 | }
17 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/TextMixin.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import meteordevelopment.meteorclient.mixininterface.IText;
9 | import net.minecraft.text.Text;
10 | import org.spongepowered.asm.mixin.Mixin;
11 |
12 | @Mixin(Text.class)
13 | public interface TextMixin extends IText {
14 | @Override
15 | default void meteor$invalidateCache() {}
16 | }
17 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/WorldAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import net.minecraft.entity.Entity;
9 | import net.minecraft.world.World;
10 | import net.minecraft.world.entity.EntityLookup;
11 | import org.spongepowered.asm.mixin.Mixin;
12 | import org.spongepowered.asm.mixin.gen.Invoker;
13 |
14 | @Mixin(World.class)
15 | public interface WorldAccessor {
16 | @Invoker("getEntityLookup")
17 | EntityLookup getEntityLookup();
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/WorldRendererAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import it.unimi.dsi.fastutil.ints.Int2ObjectMap;
9 |
10 | import net.minecraft.client.render.WorldRenderer;
11 | import net.minecraft.entity.player.BlockBreakingInfo;
12 | import org.spongepowered.asm.mixin.Mixin;
13 | import org.spongepowered.asm.mixin.gen.Accessor;
14 |
15 | @Mixin(WorldRenderer.class)
16 | public interface WorldRendererAccessor {
17 | @Accessor("blockBreakingInfos")
18 | Int2ObjectMap getBlockBreakingInfos();
19 | }
20 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixin/YggdrasilMinecraftSessionServiceAccessor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixin;
7 |
8 | import com.mojang.authlib.Environment;
9 | import com.mojang.authlib.yggdrasil.ServicesKeySet;
10 | import com.mojang.authlib.yggdrasil.YggdrasilMinecraftSessionService;
11 | import org.spongepowered.asm.mixin.Mixin;
12 | import org.spongepowered.asm.mixin.gen.Invoker;
13 |
14 | import java.net.Proxy;
15 |
16 | @Mixin(YggdrasilMinecraftSessionService.class)
17 | public interface YggdrasilMinecraftSessionServiceAccessor {
18 | @Invoker("")
19 | static YggdrasilMinecraftSessionService createYggdrasilMinecraftSessionService(final ServicesKeySet servicesKeySet, final Proxy proxy, final Environment env) {
20 | throw new UnsupportedOperationException();
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/IAbstractFurnaceScreenHandler.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | import net.minecraft.item.ItemStack;
9 |
10 | public interface IAbstractFurnaceScreenHandler {
11 | boolean meteor$isItemSmeltable(ItemStack itemStack);
12 | }
13 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/IBakedQuad.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | public interface IBakedQuad {
9 | float meteor$getX(int vertexI);
10 |
11 | float meteor$getY(int vertexI);
12 |
13 | float meteor$getZ(int vertexI);
14 | }
15 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/IBox.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | import net.minecraft.util.math.BlockPos;
9 |
10 | public interface IBox {
11 | void meteor$expand(double v);
12 |
13 | void meteor$set(double x1, double y1, double z1, double x2, double y2, double z2);
14 |
15 | default void meteor$set(BlockPos pos) {
16 | meteor$set(pos.getX(), pos.getY(), pos.getZ(), pos.getX() + 1, pos.getY() + 1, pos.getZ() + 1);
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/ICamera.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | public interface ICamera {
9 | void meteor$setRot(double yaw, double pitch);
10 | }
11 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/ICapabilityTracker.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | public interface ICapabilityTracker {
9 | boolean meteor$get();
10 |
11 | void meteor$set(boolean state);
12 | }
13 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/IChatHud.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | import net.minecraft.text.Text;
9 |
10 | public interface IChatHud {
11 | void meteor$add(Text message, int id);
12 | }
13 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/IChatHudLine.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | import com.mojang.authlib.GameProfile;
9 |
10 | public interface IChatHudLine {
11 | String meteor$getText();
12 |
13 | int meteor$getId();
14 |
15 | void meteor$setId(int id);
16 |
17 | GameProfile meteor$getSender();
18 |
19 | void meteor$setSender(GameProfile profile);
20 | }
21 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/IChatHudLineVisible.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | public interface IChatHudLineVisible extends IChatHudLine {
9 | boolean meteor$isStartOfEntry();
10 | void meteor$setStartOfEntry(boolean start);
11 | }
12 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/IClientPlayerInteractionManager.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | public interface IClientPlayerInteractionManager {
9 | void meteor$syncSelected();
10 | }
11 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/IExplosionS2CPacket.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | public interface IExplosionS2CPacket {
9 | void meteor$setVelocityX(float velocity);
10 |
11 | void meteor$setVelocityY(float velocity);
12 |
13 | void meteor$setVelocityZ(float velocity);
14 | }
15 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/IGpuDevice.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | import com.mojang.blaze3d.systems.RenderPass;
9 |
10 | public interface IGpuDevice {
11 | /**
12 | * Currently there can only be a single scissor pushed at once.
13 | */
14 | void meteor$pushScissor(int x, int y, int width, int height);
15 |
16 | void meteor$popScissor();
17 |
18 | /**
19 | * This is an *INTERNAL* method, it shouldn't be called.
20 | */
21 | @Deprecated
22 | @SuppressWarnings("DeprecatedIsStillUsed")
23 | void meteor$onCreateRenderPass(RenderPass pass);
24 | }
25 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/IGpuTexture.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | import com.mojang.blaze3d.textures.AddressMode;
9 |
10 | public interface IGpuTexture {
11 | AddressMode meteor$getAddressModeU();
12 | AddressMode meteor$getAddressModeV();
13 | }
14 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/IHorseBaseEntity.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | public interface IHorseBaseEntity {
9 | void meteor$setSaddled(boolean saddled);
10 | }
11 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/IMessageHandler.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | import com.mojang.authlib.GameProfile;
9 | import net.minecraft.client.gui.hud.MessageIndicator;
10 | import net.minecraft.network.message.MessageSignatureData;
11 | import net.minecraft.text.Text;
12 |
13 | public interface IMessageHandler {
14 | /** Only valid inside of {@link net.minecraft.client.gui.hud.ChatHud#addMessage(Text, MessageSignatureData, MessageIndicator)} call */
15 | GameProfile meteor$getSender();
16 | }
17 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/IMinecraftClient.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | import net.minecraft.client.gl.Framebuffer;
9 |
10 | public interface IMinecraftClient {
11 | void meteor$rightClick();
12 |
13 | void meteor$setFramebuffer(Framebuffer framebuffer);
14 | }
15 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/IMultiPhase.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | import net.minecraft.client.render.RenderLayer;
9 |
10 | public interface IMultiPhase {
11 | RenderLayer.MultiPhaseParameters meteor$getParameters();
12 | }
13 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/IMultiPhaseParameters.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | import net.minecraft.client.render.RenderPhase;
9 |
10 | public interface IMultiPhaseParameters {
11 | RenderPhase.Target meteor$getTarget();
12 | }
13 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/IPlayerInteractEntityC2SPacket.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | import net.minecraft.entity.Entity;
9 | import net.minecraft.network.packet.c2s.play.PlayerInteractEntityC2SPacket;
10 |
11 | public interface IPlayerInteractEntityC2SPacket {
12 | PlayerInteractEntityC2SPacket.InteractType meteor$getType();
13 |
14 | Entity meteor$getEntity();
15 | }
16 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/IPlayerMoveC2SPacket.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | public interface IPlayerMoveC2SPacket {
9 | int meteor$getTag();
10 |
11 | void meteor$setTag(int tag);
12 | }
13 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/IRaycastContext.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | import net.minecraft.entity.Entity;
9 | import net.minecraft.util.math.Vec3d;
10 | import net.minecraft.world.RaycastContext;
11 |
12 | public interface IRaycastContext {
13 | void meteor$set(Vec3d start, Vec3d end, RaycastContext.ShapeType shapeType, RaycastContext.FluidHandling fluidHandling, Entity entity);
14 | }
15 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/IRenderPipeline.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | public interface IRenderPipeline {
9 | void meteor$setLineSmooth(boolean lineSmooth);
10 |
11 | boolean meteor$getLineSmooth();
12 | }
13 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/ISimpleOption.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | public interface ISimpleOption {
9 | void meteor$set(Object value);
10 | }
11 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/ISlot.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | public interface ISlot {
9 | int meteor$getId();
10 |
11 | int meteor$getIndex();
12 | }
13 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/IText.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | public interface IText {
9 | void meteor$invalidateCache();
10 | }
11 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/IVec3d.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | import net.minecraft.util.math.Vec3i;
9 | import org.joml.Vector3d;
10 |
11 | public interface IVec3d {
12 | void meteor$set(double x, double y, double z);
13 |
14 | default void meteor$set(Vec3i vec) {
15 | meteor$set(vec.getX(), vec.getY(), vec.getZ());
16 | }
17 |
18 | default void meteor$set(Vector3d vec) {
19 | meteor$set(vec.x, vec.y, vec.z);
20 | }
21 |
22 | void meteor$setXZ(double x, double z);
23 |
24 | void meteor$setY(double y);
25 | }
26 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/mixininterface/IWorldRenderer.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.mixininterface;
7 |
8 | import net.minecraft.client.gl.Framebuffer;
9 |
10 | public interface IWorldRenderer {
11 | void meteor$pushEntityOutlineFramebuffer(Framebuffer framebuffer);
12 |
13 | void meteor$popEntityOutlineFramebuffer();
14 | }
15 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/pathing/BaritoneUtils.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.pathing;
7 |
8 | import baritone.api.BaritoneAPI;
9 |
10 | public class BaritoneUtils {
11 | public static boolean IS_AVAILABLE = false;
12 |
13 | private BaritoneUtils() {
14 | }
15 |
16 | public static String getPrefix() {
17 | if (IS_AVAILABLE) {
18 | return BaritoneAPI.getSettings().prefix.value;
19 | }
20 |
21 | return "";
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/renderer/FullScreenRenderer.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.renderer;
7 |
8 | import com.mojang.blaze3d.vertex.VertexFormat;
9 | import meteordevelopment.meteorclient.utils.PreInit;
10 |
11 | public class FullScreenRenderer {
12 | public static MeshBuilder mesh;
13 |
14 | private FullScreenRenderer() {}
15 |
16 | @PreInit
17 | public static void init() {
18 | mesh = new MeshBuilder(MeteorVertexFormats.POS2, VertexFormat.DrawMode.TRIANGLES, 4, 6);
19 |
20 | mesh.begin();
21 | mesh.ensureQuadCapacity();
22 |
23 | mesh.quad(
24 | mesh.vec2(-1, -1).next(),
25 | mesh.vec2(-1, 1).next(),
26 | mesh.vec2(1, 1).next(),
27 | mesh.vec2(1, -1).next()
28 | );
29 |
30 | mesh.end();
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/renderer/MeteorVertexFormatElements.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.renderer;
7 |
8 | import com.mojang.blaze3d.vertex.VertexFormatElement;
9 |
10 | public abstract class MeteorVertexFormatElements {
11 | public static final VertexFormatElement POS2 = VertexFormatElement.register(getNextVertexFormatElementId(), 0, VertexFormatElement.Type.FLOAT, VertexFormatElement.Usage.POSITION, 2);
12 |
13 | private MeteorVertexFormatElements() {}
14 |
15 | private static int getNextVertexFormatElementId() {
16 | int id = 0;
17 |
18 | while (VertexFormatElement.byId(id) != null) {
19 | id++;
20 |
21 | if (id >= 32) {
22 | throw new RuntimeException("Too many mods registering VertexFormatElements");
23 | }
24 | }
25 |
26 | return id;
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/renderer/ShapeMode.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.renderer;
7 |
8 | public enum ShapeMode {
9 | Lines,
10 | Sides,
11 | Both;
12 |
13 | public boolean lines() {
14 | return this == Lines || this == Both;
15 | }
16 |
17 | public boolean sides() {
18 | return this == Sides ||this == Both;
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/renderer/text/BuiltinFontFace.java:
--------------------------------------------------------------------------------
1 | package meteordevelopment.meteorclient.renderer.text;
2 |
3 | import meteordevelopment.meteorclient.utils.render.FontUtils;
4 |
5 | import java.io.InputStream;
6 |
7 | public class BuiltinFontFace extends FontFace {
8 | private final String name;
9 |
10 | public BuiltinFontFace(FontInfo info, String name) {
11 | super(info);
12 |
13 | this.name = name;
14 | }
15 |
16 | @Override
17 | public InputStream toStream() {
18 | InputStream in = FontUtils.stream(name);
19 | if (in == null) throw new RuntimeException("Failed to load builtin font " + name + ".");
20 | return in;
21 | }
22 |
23 | @Override
24 | public String toString() {
25 | return super.toString() + " (builtin)";
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/renderer/text/FontFace.java:
--------------------------------------------------------------------------------
1 | package meteordevelopment.meteorclient.renderer.text;
2 |
3 | import java.io.InputStream;
4 |
5 | public abstract class FontFace {
6 | public final FontInfo info;
7 |
8 | protected FontFace(FontInfo info) {
9 | this.info = info;
10 | }
11 |
12 | public abstract InputStream toStream();
13 |
14 | @Override
15 | public String toString() {
16 | return info.toString();
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/renderer/text/SystemFontFace.java:
--------------------------------------------------------------------------------
1 | package meteordevelopment.meteorclient.renderer.text;
2 |
3 | import meteordevelopment.meteorclient.utils.render.FontUtils;
4 |
5 | import java.io.InputStream;
6 | import java.nio.file.Path;
7 |
8 | public class SystemFontFace extends FontFace {
9 | private final Path path;
10 |
11 | public SystemFontFace(FontInfo info, Path path) {
12 | super(info);
13 |
14 | this.path = path;
15 | }
16 |
17 | @Override
18 | public InputStream toStream() {
19 | if (!path.toFile().exists()) {
20 | throw new RuntimeException("Tried to load font that no longer exists.");
21 | }
22 |
23 | InputStream in = FontUtils.stream(path.toFile());
24 | if (in == null) throw new RuntimeException("Failed to load font from " + path + ".");
25 | return in;
26 | }
27 |
28 | @Override
29 | public String toString() {
30 | return super.toString() + " (" + path.toString() + ")";
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/settings/IBlockData.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.settings;
7 |
8 | import meteordevelopment.meteorclient.gui.GuiTheme;
9 | import meteordevelopment.meteorclient.gui.WidgetScreen;
10 | import meteordevelopment.meteorclient.utils.misc.IChangeable;
11 | import meteordevelopment.meteorclient.utils.misc.ICopyable;
12 | import meteordevelopment.meteorclient.utils.misc.ISerializable;
13 | import net.minecraft.block.Block;
14 |
15 | public interface IBlockData & ISerializable & IChangeable & IBlockData> {
16 | WidgetScreen createScreen(GuiTheme theme, Block block, BlockDataSetting setting);
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/settings/IVisible.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.settings;
7 |
8 | public interface IVisible {
9 | boolean isVisible();
10 | }
11 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/settings/PotionSetting.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.settings;
7 |
8 | import meteordevelopment.meteorclient.utils.misc.MyPotion;
9 |
10 | import java.util.function.Consumer;
11 |
12 | public class PotionSetting extends EnumSetting {
13 | public PotionSetting(String name, String description, MyPotion defaultValue, Consumer onChanged, Consumer> onModuleActivated, IVisible visible) {
14 | super(name, description, defaultValue, onChanged, onModuleActivated, visible);
15 | }
16 |
17 | public static class Builder extends EnumSetting.Builder {
18 | @Override
19 | public EnumSetting build() {
20 | return new PotionSetting(name, description, defaultValue, onChanged, onModuleActivated, visible);
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/systems/accounts/AccountType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.systems.accounts;
7 |
8 | public enum AccountType {
9 | Cracked,
10 | Microsoft,
11 | TheAltening
12 | }
13 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/systems/accounts/TexturesJson.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.systems.accounts;
7 |
8 | public class TexturesJson {
9 | public Textures textures;
10 |
11 | public static class Textures {
12 | public Texture SKIN;
13 | }
14 |
15 | public static class Texture {
16 | public String url;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/systems/accounts/TokenAccount.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.systems.accounts;
7 |
8 | public interface TokenAccount {
9 | String getToken();
10 | }
11 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/systems/accounts/UuidToProfileResponse.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.systems.accounts;
7 |
8 | public class UuidToProfileResponse {
9 | public Property[] properties;
10 |
11 | public String getPropertyValue(String name) {
12 | for (Property property : properties) {
13 | if (property.name.equals(name)) return property.value;
14 | }
15 |
16 | return null;
17 | }
18 |
19 | public static class Property {
20 | public String name;
21 | public String value;
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/systems/hud/Alignment.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.systems.hud;
7 |
8 | public enum Alignment {
9 | Auto,
10 | Left,
11 | Center,
12 | Right
13 | }
14 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/systems/hud/HudGroup.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.systems.hud;
7 |
8 | public record HudGroup(String title) {
9 | }
10 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/systems/hud/XAnchor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.systems.hud;
7 |
8 | public enum XAnchor {
9 | Left,
10 | Center,
11 | Right
12 | }
13 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/systems/hud/YAnchor.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.systems.hud;
7 |
8 | public enum YAnchor {
9 | Top,
10 | Center,
11 | Bottom
12 | }
13 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/systems/modules/misc/BetterBeacons.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.systems.modules.misc;
7 |
8 | import meteordevelopment.meteorclient.systems.modules.Categories;
9 | import meteordevelopment.meteorclient.systems.modules.Module;
10 |
11 | public class BetterBeacons extends Module {
12 | public BetterBeacons() {
13 | super(Categories.Misc, "better-beacons", "Select effects unaffected by beacon level.");
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/systems/modules/movement/SafeWalk.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.systems.modules.movement;
7 |
8 | import meteordevelopment.meteorclient.events.entity.player.ClipAtLedgeEvent;
9 | import meteordevelopment.meteorclient.systems.modules.Categories;
10 | import meteordevelopment.meteorclient.systems.modules.Module;
11 | import meteordevelopment.orbit.EventHandler;
12 |
13 | public class SafeWalk extends Module {
14 | public SafeWalk() {
15 | super(Categories.Movement, "safe-walk", "Prevents you from walking off blocks.");
16 | }
17 |
18 | @EventHandler
19 | private void onClipAtLedge(ClipAtLedgeEvent event) {
20 | if (!mc.player.isSneaking()) event.setClip(true);
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/systems/modules/movement/elytrafly/ElytraFlightModes.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.systems.modules.movement.elytrafly;
7 |
8 | public enum ElytraFlightModes {
9 | Vanilla,
10 | Packet,
11 | Pitch40,
12 | Bounce
13 | }
14 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/systems/modules/movement/elytrafly/modes/Vanilla.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.systems.modules.movement.elytrafly.modes;
7 |
8 | import meteordevelopment.meteorclient.systems.modules.movement.elytrafly.ElytraFlightMode;
9 | import meteordevelopment.meteorclient.systems.modules.movement.elytrafly.ElytraFlightModes;
10 |
11 | public class Vanilla extends ElytraFlightMode {
12 | public Vanilla() {
13 | super(ElytraFlightModes.Vanilla);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/systems/modules/movement/speed/SpeedModes.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.systems.modules.movement.speed;
7 |
8 | public enum SpeedModes {
9 | Strafe,
10 | Vanilla
11 | }
12 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/systems/modules/player/LiquidInteract.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.systems.modules.player;
7 |
8 | import meteordevelopment.meteorclient.systems.modules.Categories;
9 | import meteordevelopment.meteorclient.systems.modules.Module;
10 |
11 | public class LiquidInteract extends Module {
12 | public LiquidInteract() {
13 | super(Categories.Player, "liquid-interact", "Allows you to interact with liquids.");
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/systems/modules/player/Portals.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.systems.modules.player;
7 |
8 | import meteordevelopment.meteorclient.systems.modules.Categories;
9 | import meteordevelopment.meteorclient.systems.modules.Module;
10 |
11 | public class Portals extends Module {
12 | public Portals() {
13 | super(Categories.Player, "portals", "Allows you to use GUIs normally while in a Nether Portal.");
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/systems/proxies/ProxyType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.systems.proxies;
7 |
8 | import org.jetbrains.annotations.Nullable;
9 |
10 | public enum ProxyType {
11 | Socks4,
12 | Socks5;
13 |
14 | @Nullable
15 | public static ProxyType parse(String group) {
16 | for (ProxyType type : values()) {
17 | if (type.name().equalsIgnoreCase(group)) {
18 | return type;
19 | }
20 | }
21 | return null;
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/systems/waypoints/events/WaypointAddedEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.systems.waypoints.events;
7 |
8 | import meteordevelopment.meteorclient.systems.waypoints.Waypoint;
9 |
10 | public class WaypointAddedEvent {
11 |
12 | public final Waypoint waypoint;
13 |
14 | public WaypointAddedEvent(Waypoint waypoint) {
15 | this.waypoint = waypoint;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/systems/waypoints/events/WaypointRemovedEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.systems.waypoints.events;
7 |
8 | import meteordevelopment.meteorclient.systems.waypoints.Waypoint;
9 |
10 | public class WaypointRemovedEvent {
11 |
12 | public final Waypoint waypoint;
13 |
14 | public WaypointRemovedEvent(Waypoint waypoint) {
15 | this.waypoint = waypoint;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/PostInit.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils;
7 |
8 | import java.lang.annotation.ElementType;
9 | import java.lang.annotation.Retention;
10 | import java.lang.annotation.RetentionPolicy;
11 | import java.lang.annotation.Target;
12 |
13 | @Retention(RetentionPolicy.RUNTIME)
14 | @Target(ElementType.METHOD)
15 | public @interface PostInit {
16 | Class>[] dependencies() default { };
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/PreInit.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils;
7 |
8 | import java.lang.annotation.ElementType;
9 | import java.lang.annotation.Retention;
10 | import java.lang.annotation.RetentionPolicy;
11 | import java.lang.annotation.Target;
12 |
13 | @Retention(RetentionPolicy.RUNTIME)
14 | @Target(ElementType.METHOD)
15 | public @interface PreInit {
16 | Class>[] dependencies() default { };
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/entity/Target.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.entity;
7 |
8 | public enum Target {
9 | Head,
10 | Body,
11 | Feet
12 | }
13 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/misc/CursorStyle.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.misc;
7 |
8 | import org.lwjgl.glfw.GLFW;
9 |
10 | public enum CursorStyle {
11 | Default,
12 | Click,
13 | Type;
14 |
15 | private boolean created;
16 | private long cursor;
17 |
18 | public long getGlfwCursor() {
19 | if (!created) {
20 | switch (this) {
21 | case Click -> cursor = GLFW.glfwCreateStandardCursor(GLFW.GLFW_HAND_CURSOR);
22 | case Type -> cursor = GLFW.glfwCreateStandardCursor(GLFW.GLFW_IBEAM_CURSOR);
23 | }
24 |
25 | created = true;
26 | }
27 |
28 | return cursor;
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/misc/EmptyIterator.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.misc;
7 |
8 | import java.util.Iterator;
9 |
10 | public class EmptyIterator implements Iterator {
11 | @Override
12 | public boolean hasNext() {
13 | return false;
14 | }
15 |
16 | @Override
17 | public T next() {
18 | return null;
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/misc/IChangeable.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.misc;
7 |
8 | public interface IChangeable {
9 | boolean isChanged();
10 | }
11 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/misc/ICopyable.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.misc;
7 |
8 | public interface ICopyable> {
9 | T set(T value);
10 |
11 | T copy();
12 | }
13 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/misc/IGetter.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.misc;
7 |
8 | public interface IGetter {
9 | T get();
10 | }
11 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/misc/ISerializable.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.misc;
7 |
8 | import net.minecraft.nbt.NbtCompound;
9 |
10 | public interface ISerializable {
11 | NbtCompound toTag();
12 |
13 | T fromTag(NbtCompound tag);
14 | }
15 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/misc/MissHitResult.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.misc;
7 |
8 | import net.minecraft.util.hit.HitResult;
9 | import net.minecraft.util.math.Vec3d;
10 |
11 | public class MissHitResult extends HitResult {
12 | public static final MissHitResult INSTANCE = new MissHitResult();
13 |
14 | private MissHitResult() {
15 | super(new Vec3d(0, 0, 0));
16 | }
17 |
18 | @Override
19 | public Type getType() {
20 | return Type.MISS;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/misc/NbtException.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.misc;
7 |
8 | public class NbtException extends RuntimeException {
9 | }
10 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/misc/Pool.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.misc;
7 |
8 | import java.util.ArrayDeque;
9 | import java.util.Queue;
10 |
11 | public class Pool {
12 | private final Queue items = new ArrayDeque<>();
13 | private final Producer producer;
14 |
15 | public Pool(Producer producer) {
16 | this.producer = producer;
17 | }
18 |
19 | public synchronized T get() {
20 | if (!items.isEmpty()) return items.poll();
21 | return producer.create();
22 | }
23 |
24 | public synchronized void free(T obj) {
25 | items.offer(obj);
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/misc/Producer.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.misc;
7 |
8 | public interface Producer {
9 | T create();
10 | }
11 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/misc/input/KeyAction.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.misc.input;
7 |
8 | import org.lwjgl.glfw.GLFW;
9 |
10 | public enum KeyAction {
11 | Press,
12 | Repeat,
13 | Release;
14 |
15 | public static KeyAction get(int action) {
16 | return switch (action) {
17 | case GLFW.GLFW_PRESS -> Press;
18 | case GLFW.GLFW_RELEASE -> Release;
19 | default -> Repeat;
20 | };
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/misc/text/ColoredText.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.misc.text;
7 |
8 | import meteordevelopment.meteorclient.utils.render.color.Color;
9 |
10 | /**
11 | * Encapsulates a string and the color it should have. See {@link TextUtils}
12 | */
13 | public record ColoredText(String text, Color color) {
14 | }
15 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/misc/text/MeteorClickEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.misc.text;
7 |
8 | import net.minecraft.text.ClickEvent;
9 | import net.minecraft.text.Style;
10 | import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
11 |
12 | /**
13 | * This class does nothing except ensure that {@link ClickEvent}'s containing Meteor Client commands can only be executed if they come from the client.
14 | * @see meteordevelopment.meteorclient.mixin.ScreenMixin#onRunCommand(Style, CallbackInfoReturnable)
15 | */
16 | public class MeteorClickEvent implements ClickEvent {
17 | public final String value;
18 |
19 | public MeteorClickEvent(String value) {
20 | this.value = value;
21 | }
22 |
23 | @Override
24 | public Action getAction() {
25 | return Action.RUN_COMMAND;
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/misc/text/RunnableClickEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.misc.text;
7 |
8 | /**
9 | * Allows arbitrary code execution in a click event
10 | */
11 | public class RunnableClickEvent extends MeteorClickEvent {
12 | public final Runnable runnable;
13 |
14 | public RunnableClickEvent(Runnable runnable) {
15 | super(null); // Should ensure no vanilla code is triggered, and only we handle it
16 | this.runnable = runnable;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/network/OnlinePlayers.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.network;
7 |
8 | public class OnlinePlayers {
9 | private static long lastPingTime;
10 |
11 | private OnlinePlayers() {
12 | }
13 |
14 | public static void update() {
15 | long time = System.currentTimeMillis();
16 |
17 | if (time - lastPingTime > 5 * 60 * 1000) {
18 | MeteorExecutor.execute(() -> Http.post("https://meteorclient.com/api/online/ping").ignoreExceptions().send());
19 |
20 | lastPingTime = time;
21 | }
22 | }
23 |
24 | public static void leave() {
25 | MeteorExecutor.execute(() -> Http.post("https://meteorclient.com/api/online/leave").ignoreExceptions().send());
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/notebot/decoder/SongDecoder.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.notebot.decoder;
7 |
8 | import meteordevelopment.meteorclient.systems.modules.Modules;
9 | import meteordevelopment.meteorclient.systems.modules.misc.Notebot;
10 | import meteordevelopment.meteorclient.utils.notebot.song.Song;
11 |
12 | import java.io.File;
13 |
14 | public abstract class SongDecoder {
15 | protected Notebot notebot = Modules.get().get(Notebot.class);
16 |
17 | /**
18 | * Parse file to a {@link Song} object
19 | *
20 | * @param file Song file
21 | * @return A {@link Song} object
22 | */
23 | public abstract Song parse(File file) throws Exception;
24 | }
25 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/notebot/instrumentdetect/InstrumentDetectFunction.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.notebot.instrumentdetect;
7 |
8 | import net.minecraft.block.BlockState;
9 | import net.minecraft.block.enums.NoteBlockInstrument;
10 | import net.minecraft.util.math.BlockPos;
11 |
12 | public interface InstrumentDetectFunction {
13 | /**
14 | * Detects an instrument for noteblock
15 | *
16 | * @param noteBlock Noteblock state
17 | * @param blockPos Noteblock position
18 | * @return Detected instrument
19 | */
20 | NoteBlockInstrument detectInstrument(BlockState noteBlock, BlockPos blockPos);
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/notebot/instrumentdetect/InstrumentDetectMode.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.notebot.instrumentdetect;
7 |
8 | import net.minecraft.block.NoteBlock;
9 | import net.minecraft.client.MinecraftClient;
10 |
11 | public enum InstrumentDetectMode {
12 | BlockState(((noteBlock, blockPos) -> noteBlock.get(NoteBlock.INSTRUMENT))),
13 | BelowBlock(((noteBlock, blockPos) -> MinecraftClient.getInstance().world.getBlockState(blockPos.down()).getInstrument()));
14 |
15 | private final InstrumentDetectFunction instrumentDetectFunction;
16 |
17 | InstrumentDetectMode(InstrumentDetectFunction instrumentDetectFunction) {
18 | this.instrumentDetectFunction = instrumentDetectFunction;
19 | }
20 |
21 | public InstrumentDetectFunction getInstrumentDetectFunction() {
22 | return instrumentDetectFunction;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/other/JsonDateDeserializer.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.other;
7 |
8 | import com.google.gson.JsonDeserializationContext;
9 | import com.google.gson.JsonDeserializer;
10 | import com.google.gson.JsonElement;
11 | import com.google.gson.JsonParseException;
12 |
13 | import java.lang.reflect.Type;
14 | import java.time.Instant;
15 | import java.util.Date;
16 |
17 | public class JsonDateDeserializer implements JsonDeserializer {
18 | @Override
19 | public Date deserialize(JsonElement jsonElement, Type type, JsonDeserializationContext jsonDeserializationContext) throws JsonParseException {
20 | try {
21 | return Date.from(Instant.parse(jsonElement.getAsString()));
22 | }
23 | catch (Exception ignored) {
24 | return null;
25 | }
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/player/Safety.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.player;
7 |
8 | public enum Safety {
9 | Safe,
10 | Suicide
11 | }
12 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/render/AlignmentX.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.render;
7 |
8 | public enum AlignmentX {
9 | Left, Center, Right
10 | }
11 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/render/AlignmentY.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.render;
7 |
8 | public enum AlignmentY {
9 | Top, Center, Bottom
10 | }
11 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/render/IVertexConsumerProvider.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.render;
7 |
8 | import net.minecraft.client.render.VertexConsumerProvider;
9 |
10 | public interface IVertexConsumerProvider extends VertexConsumerProvider {
11 | void setOffset(int offsetX, int offsetY, int offsetZ);
12 | }
13 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/tooltip/MeteorTooltipData.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.tooltip;
7 |
8 | import net.minecraft.client.gui.tooltip.TooltipComponent;
9 | import net.minecraft.item.tooltip.TooltipData;
10 |
11 | public interface MeteorTooltipData extends TooltipData {
12 | TooltipComponent getComponent();
13 | }
14 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/tooltip/TextTooltipComponent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.tooltip;
7 |
8 | import net.minecraft.client.gui.tooltip.OrderedTextTooltipComponent;
9 | import net.minecraft.client.gui.tooltip.TooltipComponent;
10 | import net.minecraft.text.OrderedText;
11 | import net.minecraft.text.Text;
12 |
13 | public class TextTooltipComponent extends OrderedTextTooltipComponent implements MeteorTooltipData {
14 | public TextTooltipComponent(OrderedText text) {
15 | super(text);
16 | }
17 |
18 | public TextTooltipComponent(Text text) {
19 | this(text.asOrderedText());
20 | }
21 |
22 | @Override
23 | public TooltipComponent getComponent() {
24 | return this;
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/world/CardinalDirection.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.world;
7 |
8 | import net.minecraft.util.math.Direction;
9 |
10 | public enum CardinalDirection {
11 | North,
12 | East,
13 | South,
14 | West;
15 |
16 | public Direction toDirection() {
17 | return switch (this) {
18 | case North -> Direction.NORTH;
19 | case East -> Direction.EAST;
20 | case South -> Direction.SOUTH;
21 | case West -> Direction.WEST;
22 | };
23 | }
24 |
25 | public static CardinalDirection fromDirection(Direction direction) {
26 | return switch (direction) {
27 | case NORTH -> North;
28 | case SOUTH -> South;
29 | case WEST -> East;
30 | case EAST -> West;
31 | case DOWN, UP -> null;
32 | };
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/src/main/java/meteordevelopment/meteorclient/utils/world/Dimension.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This file is part of the Meteor Client distribution (https://github.com/MeteorDevelopment/meteor-client).
3 | * Copyright (c) Meteor Development.
4 | */
5 |
6 | package meteordevelopment.meteorclient.utils.world;
7 |
8 | public enum Dimension {
9 | Overworld,
10 | Nether,
11 | End;
12 |
13 | public Dimension opposite() {
14 | return switch (this) {
15 | case Overworld -> Nether;
16 | case Nether -> Overworld;
17 | default -> this;
18 | };
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/fonts/Comfortaa.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/fonts/Comfortaa.ttf
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/fonts/JetBrains Mono.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/fonts/JetBrains Mono.ttf
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/fonts/Pixelation.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/fonts/Pixelation.ttf
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/fonts/Tw Cen MT.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/fonts/Tw Cen MT.ttf
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/icon.png
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/lang/en_gb.json:
--------------------------------------------------------------------------------
1 | {
2 | "key.meteor-client.open-gui": "Open GUI",
3 | "key.meteor-client.open-commands": "Open Commands"
4 | }
5 |
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/lang/en_us.json:
--------------------------------------------------------------------------------
1 | {
2 | "key.meteor-client.open-gui": "Open GUI",
3 | "key.meteor-client.open-commands": "Open Commands"
4 | }
5 |
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/lang/hi_in.json:
--------------------------------------------------------------------------------
1 | {
2 | "key.meteor-client.open-gui": "GUI खोलें",
3 | "key.meteor-client.open-commands": "कमांड खोलें"
4 | }
5 |
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/lang/pt_br.json:
--------------------------------------------------------------------------------
1 | {
2 | "key.meteor-client.open-gui": "Abrir Menu",
3 | "key.meteor-client.open-commands": "Abrir Comandos"
4 | }
5 |
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/lang/vi_vn.json:
--------------------------------------------------------------------------------
1 | {
2 | "key.meteor-client.open-gui": "Mở giao diện",
3 | "key.meteor-client.open-commands": "Mở lệnh"
4 | }
5 |
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/lang/zh_cn.json:
--------------------------------------------------------------------------------
1 | {
2 | "key.meteor-client.open-gui": "打开GUI",
3 | "key.meteor-client.open-commands": "输入命令"
4 | }
5 |
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/shaders/blur.vert:
--------------------------------------------------------------------------------
1 | #version 330 core
2 |
3 | precision lowp float;
4 |
5 | layout (location = 0) in vec2 pos;
6 | out vec2 uv;
7 |
8 | void main() {
9 | gl_Position = vec4(pos, 0, 1);
10 | uv = pos * .5 + .5;
11 | }
12 |
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/shaders/blur_down.frag:
--------------------------------------------------------------------------------
1 | #version 330 core
2 |
3 | precision lowp float;
4 |
5 | in vec2 uv;
6 | out vec4 color;
7 |
8 | uniform sampler2D uTexture;
9 | uniform vec2 uHalfTexelSize;
10 | uniform float uOffset;
11 |
12 | void main() {
13 | color = (
14 | texture(uTexture, uv) * 4 +
15 | texture(uTexture, uv - uHalfTexelSize.xy * uOffset) +
16 | texture(uTexture, uv + uHalfTexelSize.xy * uOffset) +
17 | texture(uTexture, uv + vec2(uHalfTexelSize.x, -uHalfTexelSize.y) * uOffset) +
18 | texture(uTexture, uv - vec2(uHalfTexelSize.x, -uHalfTexelSize.y) * uOffset)
19 | ) / 8;
20 | color.a = 1;
21 | }
22 |
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/shaders/blur_up.frag:
--------------------------------------------------------------------------------
1 | #version 330 core
2 |
3 | precision lowp float;
4 |
5 | in vec2 uv;
6 | out vec4 color;
7 |
8 | uniform sampler2D uTexture;
9 | uniform vec2 uHalfTexelSize;
10 | uniform float uOffset;
11 |
12 | void main() {
13 | color = (
14 | texture(uTexture, uv + vec2(- uHalfTexelSize.x * 2, 0) * uOffset) +
15 | texture(uTexture, uv + vec2(- uHalfTexelSize.x, uHalfTexelSize.y) * uOffset) * 2 +
16 | texture(uTexture, uv + vec2(0, uHalfTexelSize.y * 2) * uOffset) +
17 | texture(uTexture, uv + uHalfTexelSize * uOffset) * 2 +
18 | texture(uTexture, uv + vec2(uHalfTexelSize.x * 2, 0) * uOffset) +
19 | texture(uTexture, uv + vec2(uHalfTexelSize.x, -uHalfTexelSize.y) * uOffset) * 2 +
20 | texture(uTexture, uv + vec2(0, -uHalfTexelSize.y * 2) * uOffset) +
21 | texture(uTexture, uv - uHalfTexelSize * uOffset) * 2
22 | ) / 12;
23 | color.a = 1;
24 | }
25 |
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/shaders/passthrough.frag:
--------------------------------------------------------------------------------
1 | #version 330 core
2 |
3 | precision lowp float;
4 |
5 | in vec2 uv;
6 | out vec4 color;
7 |
8 | uniform sampler2D uTexture;
9 |
10 | void main() {
11 | color = texture(uTexture, uv);
12 | }
13 |
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/shaders/passthrough.vert:
--------------------------------------------------------------------------------
1 | #version 330 core
2 |
3 | precision lowp float;
4 |
5 | layout (location = 0) in vec2 pos;
6 | out vec2 uv;
7 |
8 | void main() {
9 | gl_Position = vec4(pos, 0, 1);
10 | uv = pos * .5 + .5;
11 | }
12 |
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/shaders/pos_color.frag:
--------------------------------------------------------------------------------
1 | #version 330 core
2 |
3 | out vec4 color;
4 |
5 | in vec4 v_Color;
6 |
7 | void main() {
8 | color = v_Color;
9 | }
10 |
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/shaders/pos_color.vert:
--------------------------------------------------------------------------------
1 | #version 330 core
2 |
3 | layout (location = 0) in vec4 pos;
4 | layout (location = 1) in vec4 color;
5 |
6 | uniform mat4 u_Proj;
7 | uniform mat4 u_ModelView;
8 |
9 | out vec4 v_Color;
10 |
11 | void main() {
12 | gl_Position = u_Proj * u_ModelView * pos;
13 |
14 | v_Color = color;
15 | }
16 |
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/shaders/pos_tex_color.frag:
--------------------------------------------------------------------------------
1 | #version 330 core
2 |
3 | out vec4 color;
4 |
5 | uniform sampler2D u_Texture;
6 |
7 | in vec2 v_TexCoord;
8 | in vec4 v_Color;
9 |
10 | void main() {
11 | color = texture(u_Texture, v_TexCoord) * v_Color;
12 | }
13 |
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/shaders/pos_tex_color.vert:
--------------------------------------------------------------------------------
1 | #version 330 core
2 |
3 | layout (location = 0) in vec4 pos;
4 | layout (location = 1) in vec2 texCoords;
5 | layout (location = 2) in vec4 color;
6 |
7 | uniform mat4 u_Proj;
8 | uniform mat4 u_ModelView;
9 |
10 | out vec2 v_TexCoord;
11 | out vec4 v_Color;
12 |
13 | void main() {
14 | gl_Position = u_Proj * u_ModelView * pos;
15 |
16 | v_TexCoord = texCoords;
17 | v_Color = color;
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/shaders/post-process/base.vert:
--------------------------------------------------------------------------------
1 | #version 330 core
2 |
3 | layout (location = 0) in vec4 pos;
4 |
5 | uniform vec2 u_Size;
6 |
7 | out vec2 v_TexCoord;
8 | out vec2 v_OneTexel;
9 |
10 | void main() {
11 | gl_Position = pos;
12 |
13 | v_TexCoord = (pos.xy + 1.0) / 2.0;
14 | v_OneTexel = 1.0 / u_Size;
15 | }
16 |
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/shaders/post-process/image.frag:
--------------------------------------------------------------------------------
1 | #version 330 core
2 |
3 | in vec2 v_TexCoord;
4 | in vec2 v_OneTexel;
5 |
6 | uniform sampler2D u_Texture;
7 | uniform sampler2D u_TextureI;
8 | uniform vec4 u_Color;
9 |
10 | out vec4 color;
11 |
12 | void main() {
13 | if (texture(u_Texture, v_TexCoord).a == 0.0) discard;
14 | color = texture(u_TextureI, v_TexCoord) * u_Color;
15 | }
16 |
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/shaders/text.frag:
--------------------------------------------------------------------------------
1 | #version 330 core
2 |
3 | out vec4 color;
4 |
5 | uniform sampler2D u_Texture;
6 |
7 | in vec2 v_TexCoord;
8 | in vec4 v_Color;
9 |
10 | void main() {
11 | color = vec4(1.0, 1.0, 1.0, texture(u_Texture, v_TexCoord).r) * v_Color;
12 | }
13 |
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/shaders/text.vert:
--------------------------------------------------------------------------------
1 | #version 330 core
2 |
3 | layout (location = 0) in vec4 pos;
4 | layout (location = 1) in vec2 texCoords;
5 | layout (location = 2) in vec4 color;
6 |
7 | uniform mat4 u_Proj;
8 | uniform mat4 u_ModelView;
9 |
10 | out vec2 v_TexCoord;
11 | out vec4 v_Color;
12 |
13 | void main() {
14 | gl_Position = u_Proj * u_ModelView * pos;
15 |
16 | v_TexCoord = texCoords;
17 | v_Color = color;
18 | }
19 |
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/textures/blank.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/textures/blank.png
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/textures/chams.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/textures/chams.jpg
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/textures/container-transparent.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/textures/container-transparent.png
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/textures/container.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/textures/container.png
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/textures/icons/chat/baritone.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/textures/icons/chat/baritone.png
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/textures/icons/chat/meteor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/textures/icons/chat/meteor.png
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/textures/icons/gui/circle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/textures/icons/gui/circle.png
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/textures/icons/gui/copy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/textures/icons/gui/copy.png
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/textures/icons/gui/edit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/textures/icons/gui/edit.png
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/textures/icons/gui/favorite_no.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/textures/icons/gui/favorite_no.png
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/textures/icons/gui/favorite_yes.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/textures/icons/gui/favorite_yes.png
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/textures/icons/gui/paste.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/textures/icons/gui/paste.png
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/textures/icons/gui/reset.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/textures/icons/gui/reset.png
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/textures/icons/gui/triangle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/textures/icons/gui/triangle.png
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/textures/icons/waypoints/circle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/textures/icons/waypoints/circle.png
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/textures/icons/waypoints/diamond.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/textures/icons/waypoints/diamond.png
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/textures/icons/waypoints/skull.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/textures/icons/waypoints/skull.png
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/textures/icons/waypoints/square.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/textures/icons/waypoints/square.png
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/textures/icons/waypoints/star.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/textures/icons/waypoints/star.png
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/textures/icons/waypoints/triangle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/textures/icons/waypoints/triangle.png
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/textures/meteor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/textures/meteor.png
--------------------------------------------------------------------------------
/src/main/resources/assets/meteor-client/textures/steve.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MeteorDevelopment/meteor-client/c59a465a6d677c67ba99b424c9fc6c2dc69c4468/src/main/resources/assets/meteor-client/textures/steve.png
--------------------------------------------------------------------------------
/src/main/resources/meteor-client-baritone.mixins.json:
--------------------------------------------------------------------------------
1 | {
2 | "required": true,
3 | "package": "meteordevelopment.meteorclient.mixin.baritone",
4 | "compatibilityLevel": "JAVA_21",
5 | "plugin": "meteordevelopment.meteorclient.MixinPlugin",
6 | "client": [
7 | "ComeCommandMixin"
8 | ],
9 | "injectors": {
10 | "defaultRequire": 1
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/src/main/resources/meteor-client-indigo.mixins.json:
--------------------------------------------------------------------------------
1 | {
2 | "required": false,
3 | "package": "meteordevelopment.meteorclient.mixin.indigo",
4 | "compatibilityLevel": "JAVA_21",
5 | "plugin": "meteordevelopment.meteorclient.MixinPlugin",
6 | "client": [
7 | "AbstractTerrainRenderContextMixin"
8 | ],
9 | "injectors": {
10 | "defaultRequire": 1
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/src/main/resources/meteor-client-lithium.mixins.json:
--------------------------------------------------------------------------------
1 | {
2 | "required": false,
3 | "package": "meteordevelopment.meteorclient.mixin.lithium",
4 | "compatibilityLevel": "JAVA_21",
5 | "plugin": "meteordevelopment.meteorclient.MixinPlugin",
6 | "client": [
7 | "ChunkAwareBlockCollisionSweeperMixin",
8 | "LithiumEntityCollisionsMixin"
9 | ],
10 | "injectors": {
11 | "defaultRequire": 1
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/main/resources/meteor-client-sodium.mixins.json:
--------------------------------------------------------------------------------
1 | {
2 | "required": false,
3 | "package": "meteordevelopment.meteorclient.mixin.sodium",
4 | "compatibilityLevel": "JAVA_21",
5 | "plugin": "meteordevelopment.meteorclient.MixinPlugin",
6 | "client": [
7 | "SodiumLightDataAccessMixin",
8 | "MeshVertexConsumerMixin",
9 | "SodiumBlockOcclusionCacheMixin",
10 | "SodiumBlockRendererMixin",
11 | "SodiumFluidRendererImplMixin",
12 | "SodiumFluidRendererImplDefaultRenderContextMixin"
13 | ],
14 | "injectors": {
15 | "defaultRequire": 1
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/resources/meteor-client-viafabricplus.mixins.json:
--------------------------------------------------------------------------------
1 | {
2 | "required": false,
3 | "package": "meteordevelopment.meteorclient.mixin.viafabricplus",
4 | "compatibilityLevel": "JAVA_21",
5 | "plugin": "meteordevelopment.meteorclient.MixinPlugin",
6 | "client": [
7 | "GeneralSettingsMixin"
8 | ],
9 | "injectors": {
10 | "defaultRequire": 1
11 | }
12 | }
13 |
--------------------------------------------------------------------------------