David Cernat
3bd8aa82fe
[General] Reduce inventory-sending hooks to just 2 in ContainerStore
...
Whenever an item is added to or removed from the player's ContainerStore, that player sends a PlayerInventory packet with just that addition or removal.
This eliminates all the unnecessary packet spam related to oversized PlayerInventory packets that had existed in one form or another since the initial implementation of inventory sync in 1b259e2d33
Additionally, move booleans from BasePlayer to LocalPlayer when they are only needed on the client, and make the usage of the isReceivingQuickKeys boolean consistent with the new isReceivingInventory boolean by having them both in the processors of their associated packets.
6 years ago
David Cernat
03832f933b
[Client] Send only individual items in PlayerInventory packets
...
For a long time, whenever a PlayerInventory packet was sent, it contained all the items in the player's inventory, because that's how Koncord originally implemented it and I always had too many other priorities to go back and rework it.
From now on, clients only send PlayerInventory packet with the one item added or removed, with the single exception being trading with merchants, where the entire inventory is still sent for the time being.
6 years ago
David Cernat
36ac2d9de4
[Client] Set packetOrigin for all ObjectList packets sent
7 years ago
David Cernat
a236ffc4be
Merge pull request #456 from OpenMW/master while resolving conflicts
...
# Conflicts:
# .travis.yml
# README.md
# apps/openmw/mwgui/quickkeysmenu.cpp
# apps/openmw/mwmechanics/actors.cpp
# apps/openmw/mwmechanics/combat.cpp
7 years ago
Andrei Kortunov
441463327c
Validate map size
7 years ago
David Cernat
78234f9071
[General] Rename Event into ObjectList & WorldObject into BaseObject
7 years ago
David Cernat
420dab10e1
[General] Track objects directly placed by players in ObjectPlace
...
This allows the OnPCDrop variable to get set correctly even when object placements have to go through the server first in order to gain a unique multiplayer index (mpNum).
Among other things, this makes it possible to roll marijuana joints in the popular mod "Tribunal Code Patch".
7 years ago
David Cernat
cac2c6c1e8
Merge pull request #360 from TES3MP/0.6.1-openmw-updates while resolving conflicts
7 years ago
David Cernat
0ad9c99cf4
[Client] Send PlayerInventory packet after completing a vendor trade
7 years ago
David Cernat
e164e6305e
Merge pull request #313 from OpenMW/master while resolving conflicts
...
# Conflicts:
# .travis.yml
# CMakeLists.txt
# apps/openmw/mwgui/jailscreen.cpp
# apps/openmw/mwmechanics/mechanicsmanagerimp.cpp
7 years ago
scrawl
03554b2f4b
Fix some style issues flagged by cppcheck
7 years ago
David Cernat
38247ff086
Merge pull request #303 from OpenMW/master while resolving conflicts
...
# Conflicts:
# apps/openmw/mwbase/dialoguemanager.hpp
# apps/openmw/mwdialogue/dialoguemanagerimp.hpp
# apps/openmw/mwgui/container.cpp
# apps/openmw/mwgui/windowmanagerimp.cpp
# apps/openmw/mwscript/dialogueextensions.cpp
7 years ago
scrawl
36c192a1dd
Undo the console portion of 84657271c7
because it results in the console forgetting its object on opening
7 years ago
scrawl
222defc6d8
Extend HUD::clear()
7 years ago
scrawl
f67dbc8aa0
Remove redundant update function
7 years ago
scrawl
ba7ae2663f
Use a generic container to delete windows
7 years ago
scrawl
84657271c7
Improve WindowManager API with a generic way of passing a Ptr to the opened GUI window
7 years ago
David Cernat
4468e6ec4a
Merge pull request #280 from OpenMW/master while resolving conflicts
...
# Conflicts:
# .gitignore
# apps/openmw/mwmechanics/actors.hpp
# apps/openmw/mwmechanics/mechanicsmanagerimp.cpp
7 years ago
Andrei Kortunov
73d5efabee
Display negative values on fatigue progress bar
7 years ago
David Cernat
0cce9908be
Merge pull request #222 from OpenMW/master
...
Add OpenMW commits up to 29 May 2017
8 years ago
David Cernat
97768be14b
[Client] Send ObjectPlace packet for random creatures interrupting rest
8 years ago
David Cernat
dcc61a095a
[Client] Allow multiple WorldObjects to be added to a WorldEvent
8 years ago
Andrei Kortunov
987677db75
Tooltips: dynamic stats, birthsign and hand-to-hand layout fixes
8 years ago
David Cernat
a82646a130
[Client] Delineate tes3mp-only code more clearly, part 2
8 years ago
David Cernat
9759764699
[Client] Clean up getting and resetting of WorldEvent
8 years ago
David Cernat
4abe295a80
[Client] Simplify sending of world packets by adding WorldEvent methods
8 years ago
David Cernat
8b8c01f389
[General] Make ID_OBJECT_PLACE take effect only when sent back by server
8 years ago
David Cernat
2bd81c3de0
[Client] Use mpNum for every WorldObject
8 years ago
David Cernat
e5cf632e1d
[Client] Stop creating new reference numbers for placed/spawned objects
8 years ago
David Cernat
7647715dac
Merge pull request #190 from OpenMW/master
...
Add OpenMW commits up to 27 Mar 2017
8 years ago
Andrei Kortunov
b89fdcfd27
Vanilla style drowning widget (partially fixes bug #3801 ).
8 years ago
David Cernat
e0234dc362
Merge pull request #183 from OpenMW/master while resolving conflicts
...
# Conflicts:
# .travis.yml
# CMakeLists.txt
8 years ago
scrawl
a556475fae
Explicitely set the user data type to avoid const/non-const mismatch
8 years ago
Koncord
690211ad99
[General] Extract BaseEvent & BasePlayer from packets to functions
...
Move Send and Read functions to BasePacket
8 years ago
Koncord
cea1425db1
[Client] Remove redundant newlines & keep ~120 columns
8 years ago
David Cernat
a58601fb2b
[Client] Delineate tes3mp-only code more clearly, part 1
8 years ago
David Cernat
ed2176c984
[Client] Reuse 1 BaseEvent over and over instead of creating new ones
8 years ago
David Cernat
e703dd42aa
[Client] Rename LocalEvent into WorldEvent
8 years ago
David Cernat
25d79dbcfe
[Client] Revert c0d67f67fb
after discovering its negative consequences
8 years ago
David Cernat
cdd796aba1
[Client] Send ID_PLAYER_INVENTORY from two more locations
8 years ago
David Cernat
c0d67f67fb
[Client] Move code for sending a packet for picking up world items
...
Previously, an ID_OBJECT_DELETE was sent from inventorywindow.cpp, but this is now sent from hud.cpp because 2 other packets are also sent from there.
8 years ago
David Cernat
b2cdec8efa
[Client] Send ID_PLAYER_INVENTORY upon dropping an item, 2nd attempt
8 years ago
David Cernat
f03724be7b
[Client] Send ID_PLAYER_INVENTORY upon dropping an item
8 years ago
David Cernat
ecc456fea9
[General] Include charge int in WorldObject & send it w/ ID_OBJECT_PLACE
8 years ago
David Cernat
703f253712
[Client] Delete new LocalEvents after sending them
8 years ago
David Cernat
d503a65849
[Client] Replace tab characters with spaces
8 years ago
David Cernat
9f1e491a75
[General] Make WorldEvents store information about multiple objects
8 years ago
David Cernat
624b85347a
[Client] Create LocalEvent class and use it instead of WorldEvent
8 years ago
Koncord
804259b2c9
Change some printf to LOG_MESSAGE_SIMPLE
...
printf is not streamed to files
8 years ago
Koncord
536715cf46
Cleanup tes3mp headers
8 years ago