From 892b9732751b64c2016ba476801e1fe4ed4e750f Mon Sep 17 00:00:00 2001 From: LaG1924 <12997935+LaG1924@users.noreply.github.com> Date: Sat, 16 Sep 2017 20:48:19 +0500 Subject: 2017-09-16 --- src/GameState.cpp | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) (limited to 'src/GameState.cpp') diff --git a/src/GameState.cpp b/src/GameState.cpp index 46b236c..98b49f7 100644 --- a/src/GameState.cpp +++ b/src/GameState.cpp @@ -140,8 +140,17 @@ void GameState::UpdatePacket() world.ParseChunkData(packet); break; } - case ConfirmTransactionCB: + case ConfirmTransactionCB: { + auto packet = std::static_pointer_cast(ptr); + if (packet->WindowId == 0) { + try { + playerInventory.ConfirmTransaction(*packet); + } catch (std::exception &e) { + EventAgregator::PushEvent(EventType::Disconnect, DisconnectData{ "Transaction failed" }); + } + } break; + } case CloseWindowCB: break; case OpenWindow: { @@ -160,8 +169,13 @@ void GameState::UpdatePacket() } case WindowProperty: break; - case SetSlot: + case SetSlot: { + auto packet = std::static_pointer_cast(ptr); + if (packet->WindowId == 0) { + playerInventory.slots[packet->Slot] = packet->SlotData; + } break; + } case SetCooldown: break; case PluginMessageCB: @@ -433,7 +447,7 @@ void GameState::HandleMovement(GameState::Direction direction, float deltaTime) break; case JUMP: if (g_OnGround) { - vel.y += 10; + vel.y += 5; g_OnGround = false; } break; -- cgit v1.2.3