David Cernat
341ca691fc
Merge branch '0.8.1' of https://github.com/TES3MP/TES3MP into 0.8.1-vr
3 years ago
David Cernat
3b355653d4
[Client] Fix overlap of GuiMode IDs for VR meta menu and TES3MP InputBox
3 years ago
David Cernat
c90a9ab132
Merge branch '0.8.1' of https://github.com/TES3MP/TES3MP into 0.8.1-vr
...
# Conflicts:
# apps/openmw/mwworld/projectilemanager.cpp
3 years ago
David Cernat
a7eeba03a1
[General] Synchronize origin and orientation for non-magical projectiles
3 years ago
David Cernat
f0a22495a2
[General] Synchronize origin and orientation for magical projectiles
3 years ago
David Cernat
bdebe0fc1a
Merge branch '0.8.1' of https://github.com/TES3MP/TES3MP into 0.8.1-vr
3 years ago
David Cernat
da079fcfd8
[General] Add VR settings to GameSettings packet
3 years ago
David Cernat
9506101874
Merge pull request #618 from TES3MP/0.8.0
...
Add TES3MP 0.8.0 commits up to 30 Apr 2022
3 years ago
David Cernat
fb4fe75e62
[Client] Always set visibility of GUIChat, not its main widget
...
Don't change the windowState when GUIChat is closed.
3 years ago
David Cernat
a032c8d399
Add TES3MP 0.8.0 commits up to 28 Apr 2022
...
# Conflicts:
# apps/openmw/mwclass/creature.cpp
# apps/openmw/mwclass/npc.cpp
3 years ago
David Cernat
ae2d247968
[Client] Add GUIController method for changing chat window mode
3 years ago
David Cernat
d45db97808
[Client] Retain hidden mode for chat window when set
3 years ago
David Cernat
6b1c83f629
[Client] Fix iteration through summoned creature map in ObjectList
3 years ago
David Cernat
3af57f0858
[Client] Fix crash when creating Cell from base Cell lacking Pathgrid
3 years ago
David Cernat
43f531e9a5
[Client] Reuse Pathgrid records from base Cells when creating new Cells
3 years ago
David Cernat
2898ad6e9a
[Client] Make Back button work in character generation
...
Character generation was coded in a strange way by Koncord in the earliest days of the project, but this fixes the main problem with it.
3 years ago
David Cernat
3e881e6231
[Client] Uninitialize LocalActors whose references have been deleted
3 years ago
David Cernat
f219cb5417
[General] Ensure that objects initialized as DedicatedActors are actors
3 years ago
David Cernat
a6dd76776f
[Client] Include refId in ObjectList's object searches
3 years ago
David Cernat
cc8c222d18
[General] Combine CellStore's exact object searches
3 years ago
David Cernat
a95099cd03
[Client] Use item model's items for Container packet sent from Take All
...
Previously, a Container packet sent when using the Take All button included all the items in the container, not just all the items in the container window seen on the client. This was a problem when stealing from actors, as the container window does not give access to all of their items.
3 years ago
David Cernat
455356160e
[VR Client] Synchronize player's melee attacks
3 years ago
David Cernat
abdaedd752
[Client] Rely on untranslated topics in ObjectDialogueChoice packets
...
Previously, when using the Russian edition, all dialogue topics were translated into English before being sent to the server in an ObjectDialogueChoice packet and were then translated back into Russian when received again by the client. However, there were situations where different topics in English corresponded to the same Russian word, e.g. "chores" and "duties" were both translated as "задания", which led to the incorrect topic being used on the client in the end.
This commit makes it so that users of the Russian edition send ObjectDialogueChoice packets where the topicId variable contains both the untranslated topic and the translated one, delimited by a | character, with the client simply using the former when receiving the packet again.
This is a hotfix instead of the proper fix, as the proper fix would use different variables for the two versions of the topic and thus require the structure of the ObjectDialogueChoice packet to change.
3 years ago
David Cernat
f2d95dc84d
[Client] Make ActiveSpells::removeSpellByTimestamp() return a boolean
...
Add logging to LocalPlayer::removeSpellsActive() to track when a player's active spell hasn't been removed due to an invalid timestamp.
3 years ago
David Cernat
4aa947ff4b
[Client] Prevent player from auto-equipping items taken from containers
3 years ago
David Cernat
1cb10cd1f2
[Client] Use new exact search with ObjectActivate & ObjectDialogueChoice
3 years ago
David Cernat
dbae0bddc2
[Client] Only play sounds from active cells when receiving ObjectSound
3 years ago
David Cernat
538ccf15cf
[Client] Use higher interpolation distance for DedicatedPlayers
...
This makes up for the laggier-looking jumps since the changes to OpenMW's physics system.
3 years ago
David Cernat
efc0b88058
[Client] Don't reload Ptr for DedicatedActor after adding active spells
...
This prevents non-continuous spell GFX from immediately vanishing.
3 years ago
David Cernat
3e582199fb
[Client] Add createSpellGfx() method to MechanicsHelper
...
Use it to create spell GFX when adding active spells to dedicated players and actors.
3 years ago
David Cernat
7f017217c7
[Client] Fix position sync for falling actors
3 years ago
David Cernat
fb49b62753
[Client] Fix crash when receiving ActiveSpells for uninitialized players
3 years ago
David Cernat
e6a1f0889f
[Client] Add isStackingSpell() method to MechanicsHelper
3 years ago
David Cernat
f03a87df3c
[Client] Remove previous placeholders for tracking ActiveSpells actors
3 years ago
David Cernat
3e81371e53
[General] Fix jump synchronization for players
...
This had been broken by fr3dz10's physics rewrites from the earlier part of the year that made it so dedicated players were always regarded by the movement solver as being on the ground.
3 years ago
David Cernat
06451c13d5
[Client] Update 3rd person model of local player when setting character
3 years ago
David Cernat
7393e3def6
[General] Add and use getShortDescription() for ESM::Cell
...
ESM::Cell's getDescription() method was modified by aa5161f99e
despite being used heavily by TES3MP. All instances of it in the TES3MP code have now been changed into the newly added getShortDescription() that is identical to the previous getDescription().
3 years ago
David Cernat
2f98f31af2
[General] Use model variable already included in PlayerBaseInfo packets
...
The variable has been included since TES3MP's earliest proof of concept, but never used for anything. It is now possible to get and set it, due to semi-popular demand.
3 years ago
David Cernat
3f3fe66fde
[General] Track casters of spells in SpellsActive packets
...
Also simplify sending of SpellsActive packets slightly.
4 years ago
David Cernat
4492a7a768
[Client] Add MechanicsHelper method to get actorId of an mwmp::Target
...
Also clean up MechanicsHelper::getPlayerPtr() slightly.
4 years ago
David Cernat
9817d3a563
[Client] Add method to PlayerList for getting players by their actorId
4 years ago
David Cernat
fe4a761ffe
[General] Implement game setting records for RecordDynamic packets
...
Remove unused placeholder for variants from RecordDynamic.
4 years ago
David Cernat
3222afc8b7
[General] Implement PlayerCooldowns packet
...
Although this packet may be used for other kinds of cooldowns in the future, it currently only handles cooldowns for magical powers.
4 years ago
David Cernat
a4b180f65a
[Client] Don't send SpellsActive packets for spells received from server
4 years ago
David Cernat
294f64d12d
[General] Track timestamps for spells in SpellsActive packets
...
This makes it possible to remove a specific effect in effect stacks by checking its timestamp.
4 years ago
David Cernat
767287ae51
[General] Track stacking spells in SpellsActive packets
4 years ago
David Cernat
da16c211a4
[Client] Make potion effects work with SpellsActive packets, part 2
4 years ago
David Cernat
5a852fe6db
[Client] Fix warnings related to declarations
4 years ago
David Cernat
86630b048f
[General] Add creature attack values to RecordDynamic packets
4 years ago
David Cernat
44d037c078
[General] Add creature soul values to RecordDynamic packets
4 years ago