Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add more unpicks #3742

Merged
merged 1 commit into from
Nov 25, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
104 changes: 104 additions & 0 deletions unpick-definitions/colors.unpick
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
v2

constant argb_color net/minecraft/util/Colors WHITE
constant argb_color net/minecraft/util/Colors BLACK
constant argb_color net/minecraft/util/Colors GRAY
constant argb_color net/minecraft/util/Colors LIGHT_GRAY
constant argb_color net/minecraft/util/Colors RED
constant argb_color net/minecraft/util/Colors LIGHT_RED
constant argb_color net/minecraft/util/Colors YELLOW
constant argb_color net/minecraft/util/Colors LIGHT_YELLOW

target_method net/minecraft/util/math/ColorHelper$Argb getAlpha (I)I
param 0 argb_color
target_method net/minecraft/util/math/ColorHelper$Argb getRed (I)I
param 0 argb_color
target_method net/minecraft/util/math/ColorHelper$Argb getGreen (I)I
param 0 argb_color
target_method net/minecraft/util/math/ColorHelper$Argb getBlue (I)I
param 0 argb_color

# These accept ARGB (TextRenderer)

target_method net/minecraft/client/font/TextRenderer draw (Ljava/lang/String;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/render/VertexConsumerProvider;Lnet/minecraft/client/font/TextRenderer$TextLayerType;II)I
param 3 argb_color
target_method net/minecraft/client/font/TextRenderer draw (Ljava/lang/String;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/render/VertexConsumerProvider;Lnet/minecraft/client/font/TextRenderer$TextLayerType;IIZ)I
param 3 argb_color
target_method net/minecraft/client/font/TextRenderer draw (Lnet/minecraft/text/Text;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/render/VertexConsumerProvider;Lnet/minecraft/client/font/TextRenderer$TextLayerType;II)I
param 3 argb_color
target_method net/minecraft/client/font/TextRenderer draw (Lnet/minecraft/text/OrderedText;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/render/VertexConsumerProvider;Lnet/minecraft/client/font/TextRenderer$TextLayerType;II)I
param 3 argb_color
target_method net/minecraft/client/font/TextRenderer drawWithOutline (Lnet/minecraft/text/OrderedText;FFIILorg/joml/Matrix4f;Lnet/minecraft/client/render/VertexConsumerProvider;I)V
param 3 argb_color
param 4 argb_color

target_method net/minecraft/client/render/debug/DebugRenderer drawString (Lnet/minecraft/client/util/math/MatrixStack;Lnet/minecraft/client/render/VertexConsumerProvider;Ljava/lang/String;IIII)V
param 6 argb_color
target_method net/minecraft/client/render/debug/DebugRenderer drawString (Lnet/minecraft/client/util/math/MatrixStack;Lnet/minecraft/client/render/VertexConsumerProvider;Ljava/lang/String;DDDI)V
param 6 argb_color
target_method net/minecraft/client/render/debug/DebugRenderer drawString (Lnet/minecraft/client/util/math/MatrixStack;Lnet/minecraft/client/render/VertexConsumerProvider;Ljava/lang/String;DDDIF)V
param 6 argb_color
target_method net/minecraft/client/render/debug/DebugRenderer drawString (Lnet/minecraft/client/util/math/MatrixStack;Lnet/minecraft/client/render/VertexConsumerProvider;Ljava/lang/String;DDDIFZFZ)V
param 6 argb_color

target_method net/minecraft/client/gui/DrawContext drawCenteredTextWithShadow (Lnet/minecraft/client/font/TextRenderer;Ljava/lang/String;III)V
param 4 argb_color
target_method net/minecraft/client/gui/DrawContext drawCenteredTextWithShadow (Lnet/minecraft/client/font/TextRenderer;Lnet/minecraft/text/Text;III)V
param 4 argb_color
target_method net/minecraft/client/gui/DrawContext drawCenteredTextWithShadow (Lnet/minecraft/client/font/TextRenderer;Lnet/minecraft/text/OrderedText;III)V
param 4 argb_color
target_method net/minecraft/client/gui/DrawContext drawTextWithShadow (Lnet/minecraft/client/font/TextRenderer;Ljava/lang/String;III)I
param 4 argb_color
target_method net/minecraft/client/gui/DrawContext drawText (Lnet/minecraft/client/font/TextRenderer;Ljava/lang/String;IIIZ)I
param 4 argb_color
target_method net/minecraft/client/gui/DrawContext drawTextWithShadow (Lnet/minecraft/client/font/TextRenderer;Lnet/minecraft/text/Text;III)I
param 4 argb_color
target_method net/minecraft/client/gui/DrawContext drawText (Lnet/minecraft/client/font/TextRenderer;Lnet/minecraft/text/Text;IIIZ)I
param 4 argb_color
target_method net/minecraft/client/gui/DrawContext drawTextWrapped (Lnet/minecraft/client/font/TextRenderer;Lnet/minecraft/text/StringVisitable;IIII)V
param 5 argb_color

target_method net/minecraft/client/gui/widget/AbstractTextWidget setTextColor (I)Lnet/minecraft/client/gui/widget/AbstractTextWidget;
param 0 argb_color

# Accepts ARGB (non-TextRenderer)
target_method net/minecraft/client/gui/DrawContext drawHorizontalLine (IIII)V
param 3 argb_color
target_method net/minecraft/client/gui/DrawContext drawHorizontalLine (Lnet/minecraft/client/render/RenderLayer;IIII)V
param 4 argb_color
target_method net/minecraft/client/gui/DrawContext drawVerticalLine (IIII)V
param 3 argb_color
target_method net/minecraft/client/gui/DrawContext drawVerticalLine (Lnet/minecraft/client/render/RenderLayer;IIII)V
param 4 argb_color
target_method net/minecraft/client/gui/DrawContext fill (IIIII)V
param 4 argb_color
target_method net/minecraft/client/gui/DrawContext fill (IIIIII)V
param 5 argb_color
target_method net/minecraft/client/gui/DrawContext fill (Lnet/minecraft/client/render/RenderLayer;IIIII)V
param 5 argb_color
target_method net/minecraft/client/gui/DrawContext fill (Lnet/minecraft/client/render/RenderLayer;IIIIII)V
param 6 argb_color
target_method net/minecraft/client/gui/DrawContext fillGradient (IIIIII)V
param 4 argb_color
param 5 argb_color
target_method net/minecraft/client/gui/DrawContext fillGradient (IIIIIII)V
param 5 argb_color
param 6 argb_color
target_method net/minecraft/client/gui/DrawContext fillGradient (Lnet/minecraft/client/render/RenderLayer;IIIIIII)V
param 5 argb_color
param 6 argb_color
target_method net/minecraft/client/gui/DrawContext drawBorder (IIIII)V
param 4 argb_color

target_method net/minecraft/client/render/VertexConsumer color (I)Lnet/minecraft/client/render/VertexConsumer;
param 0 argb_color

# These technically accept RGB colors, not ARGB;
# however, it ignores the alpha part, so there is no problem passing ARGB.

target_method net/minecraft/text/TextColor fromRgb (I)Lnet/minecraft/text/TextColor;
param 0 argb_color
target_method net/minecraft/text/Style withColor (I)Lnet/minecraft/text/Style;
param 0 argb_color
target_method net/minecraft/text/MutableText withColor (I)Lnet/minecraft/text/MutableText;
param 0 argb_color
14 changes: 14 additions & 0 deletions unpick-definitions/entity_flags.unpick
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,20 @@ target_method net/minecraft/entity/decoration/ArmorStandEntity setBitField (BIZ)
param 1 armor_stand_flags
# todo unpick cannot handle the read in method bodies yet

flag text_display_flags net/minecraft/entity/decoration/DisplayEntity$TextDisplayEntity SHADOW_FLAG
flag text_display_flags net/minecraft/entity/decoration/DisplayEntity$TextDisplayEntity SEE_THROUGH_FLAG
flag text_display_flags net/minecraft/entity/decoration/DisplayEntity$TextDisplayEntity DEFAULT_BACKGROUND_FLAG
flag text_display_flags net/minecraft/entity/decoration/DisplayEntity$TextDisplayEntity LEFT_ALIGNMENT_FLAG
flag text_display_flags net/minecraft/entity/decoration/DisplayEntity$TextDisplayEntity RIGHT_ALIGNMENT_FLAG

target_method net/minecraft/entity/decoration/DisplayEntity$TextDisplayEntity readFlag (BLnet/minecraft/nbt/NbtCompound;Ljava/lang/String;B)B
param 3 text_display_flags
target_method net/minecraft/entity/decoration/DisplayEntity$TextDisplayEntity writeFlag (BLnet/minecraft/nbt/NbtCompound;Ljava/lang/String;B)V
param 3 text_display_flags
target_method net/minecraft/entity/decoration/DisplayEntity$TextDisplayEntity getAlignment (B)Lnet/minecraft/entity/decoration/DisplayEntity$TextDisplayEntity$TextAlignment;
param 0 text_display_flags
target_method net/minecraft/entity/decoration/DisplayEntity$TextDisplayEntity$Data flags ()B
return text_display_flags

constant entity_flag_index net/minecraft/entity/Entity ON_FIRE_FLAG_INDEX
constant entity_flag_index net/minecraft/entity/Entity SNEAKING_FLAG_INDEX
Expand Down
2 changes: 2 additions & 0 deletions unpick-definitions/key_bindings.unpick
Original file line number Diff line number Diff line change
Expand Up @@ -108,9 +108,11 @@ constant key_codes org/lwjgl/glfw/GLFW GLFW_KEY_TAB
constant key_codes org/lwjgl/glfw/GLFW GLFW_KEY_LEFT_ALT
constant key_codes org/lwjgl/glfw/GLFW GLFW_KEY_LEFT_CONTROL
constant key_codes org/lwjgl/glfw/GLFW GLFW_KEY_LEFT_SHIFT
constant key_codes org/lwjgl/glfw/GLFW GLFW_KEY_LEFT_SUPER
constant key_codes org/lwjgl/glfw/GLFW GLFW_KEY_RIGHT_ALT
constant key_codes org/lwjgl/glfw/GLFW GLFW_KEY_RIGHT_CONTROL
constant key_codes org/lwjgl/glfw/GLFW GLFW_KEY_RIGHT_SHIFT
constant key_codes org/lwjgl/glfw/GLFW GLFW_KEY_RIGHT_SUPER
constant key_codes org/lwjgl/glfw/GLFW GLFW_KEY_ENTER
constant key_codes org/lwjgl/glfw/GLFW GLFW_KEY_ESCAPE
constant key_codes org/lwjgl/glfw/GLFW GLFW_KEY_BACKSPACE
Expand Down
8 changes: 4 additions & 4 deletions unpick-definitions/network.unpick
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ v2
constant max_string_length net/minecraft/network/PacketByteBuf DEFAULT_MAX_STRING_LENGTH 32767 I
constant max_string_length net/minecraft/network/PacketByteBuf MAX_TEXT_LENGTH
#constant max_nbt_size net/minecraft/network/PacketByteBuf MAX_READ_NBT_SIZE 2097152 J
constant max_var_int_length net/minecraft/network/PacketByteBuf MAX_VAR_INT_LENGTH
constant max_var_long_length net/minecraft/network/PacketByteBuf MAX_VAR_LONG_LENGTH
constant max_var_int_length net/minecraft/network/encoding/VarInts MAX_BYTES
constant max_var_long_length net/minecraft/network/encoding/VarLongs MAX_BYTES

target_method net/minecraft/network/PacketByteBuf readString (I)Ljava/lang/String;
param 0 max_string_length
Expand All @@ -14,9 +14,9 @@ target_method net/minecraft/network/PacketByteBuf writeString (Ljava/lang/String
# somehow does not work
#target_method net/minecraft/nbt/NbtTagSizeTracker <init> (J)V
# param 0 max_nbt_size
target_method net/minecraft/network/PacketByteBuf getVarIntLength (I)I
target_method net/minecraft/network/encoding/VarInts getSizeInBytes (I)I
return max_var_int_length
target_method net/minecraft/network/PacketByteBuf getVarLongLength (J)I
target_method net/minecraft/network/encoding/VarLongs getSizeInBytes (J)I
return max_var_long_length
# var int/long length also used in readVarXx method body, but unpick cannot replace them

11 changes: 11 additions & 0 deletions unpick-definitions/network_packets.unpick
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,17 @@ target_method net/minecraft/network/packet/s2c/play/GameStateChangeS2CPacket <in
target_method net/minecraft/network/packet/s2c/play/GameStateChangeS2CPacket getValue ()F
return s2c_game_state_demo_value

constant s2c_player_respawn_flag net/minecraft/network/packet/s2c/play/PlayerRespawnS2CPacket KEEP_ATTRIBUTES
constant s2c_player_respawn_flag net/minecraft/network/packet/s2c/play/PlayerRespawnS2CPacket KEEP_TRACKED_DATA
constant s2c_player_respawn_flag net/minecraft/network/packet/s2c/play/PlayerRespawnS2CPacket KEEP_ALL

target_method net/minecraft/network/packet/s2c/play/PlayerRespawnS2CPacket <init> (Lnet/minecraft/network/packet/s2c/play/CommonPlayerSpawnInfo;B)V
param 1 s2c_player_respawn_flag
target_method net/minecraft/network/packet/s2c/play/PlayerRespawnS2CPacket flag ()B
return s2c_player_respawn_flag
target_method net/minecraft/network/packet/s2c/play/PlayerRespawnS2CPacket hasFlag (B)Z
param 0 s2c_player_respawn_flag

constant s2c_scoreboard_objective_update_mode net/minecraft/network/packet/s2c/play/ScoreboardObjectiveUpdateS2CPacket ADD_MODE
constant s2c_scoreboard_objective_update_mode net/minecraft/network/packet/s2c/play/ScoreboardObjectiveUpdateS2CPacket REMOVE_MODE
constant s2c_scoreboard_objective_update_mode net/minecraft/network/packet/s2c/play/ScoreboardObjectiveUpdateS2CPacket UPDATE_MODE
Expand Down