Input: Add Ctrl+Q shortcut to drop entire item stack

This commit is contained in:
Alezito2008 2026-03-08 22:17:55 -03:00
parent 28614b922f
commit ec23aa2b98
4 changed files with 11 additions and 4 deletions

View file

@ -3797,7 +3797,8 @@ void Minecraft::tick(bool bFirst, bool bUpdateTextures)
if((player->ullButtonsPressed&(1LL<<MINECRAFT_ACTION_DROP)) && gameMode->isInputAllowed(MINECRAFT_ACTION_DROP))
{
player->drop();
bool ctrlHeld = g_KBMInput.IsKBMActive() && g_KBMInput.IsKeyDown(KeyboardMouseInput::KEY_CONTROL);
player->drop(ctrlHeld);
}
uint64_t ullButtonsPressed=player->ullButtonsPressed;

View file

@ -173,9 +173,13 @@ void MultiplayerLocalPlayer::sendPosition()
}
shared_ptr<ItemEntity> MultiplayerLocalPlayer::drop()
shared_ptr<ItemEntity> MultiplayerLocalPlayer::drop(bool dropAll)
{
connection->send(std::make_shared<PlayerActionPacket>(PlayerActionPacket::DROP_ITEM, 0, 0, 0, 0));
int action = dropAll ?
PlayerActionPacket::DROP_ALL_ITEMS :
PlayerActionPacket::DROP_ITEM;
connection->send(std::make_shared<PlayerActionPacket>(action, 0, 0, 0, 0));
return nullptr;
}

View file

@ -35,7 +35,7 @@ public:
void sendPosition();
using Player::drop;
virtual shared_ptr<ItemEntity> drop();
virtual shared_ptr<ItemEntity> drop(bool dropStack = false);
protected:
virtual void reallyDrop(shared_ptr<ItemEntity> itemEntity);
public:

View file

@ -32,6 +32,8 @@ public:
static const int KEY_DEBUG_INFO = VK_F3;
static const int KEY_DEBUG_MENU = VK_F4;
static const int KEY_CONTROL = VK_CONTROL;
void Init();
void Tick();
void ClearAllState();