1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-15 18:19:55 +00:00
Commit graph

71 commits

Author SHA1 Message Date
David Cernat
efc0b88058 [Client] Don't reload Ptr for DedicatedActor after adding active spells
This prevents non-continuous spell GFX from immediately vanishing.
2021-10-16 02:00:05 +02:00
David Cernat
3e582199fb [Client] Add createSpellGfx() method to MechanicsHelper
Use it to create spell GFX when adding active spells to dedicated players and actors.
2021-10-16 01:35:30 +02:00
David Cernat
3f3fe66fde [General] Track casters of spells in SpellsActive packets
Also simplify sending of SpellsActive packets slightly.
2021-07-21 18:14:31 +02:00
David Cernat
a4b180f65a [Client] Don't send SpellsActive packets for spells received from server 2021-07-06 17:22:19 +02:00
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.
2021-07-04 12:54:11 +02:00
David Cernat
767287ae51 [General] Track stacking spells in SpellsActive packets 2021-06-10 13:27:52 +02:00
David Cernat
8c7b07b9c8 [Client] Make potion effects work with SpellsActive packets 2021-05-23 01:49:37 +02:00
David Cernat
e00ee1425a [Client] Reload DedicatedActor ptrs when setting their active spells
This makes the spells' visual effects appear correctly.
2021-05-07 18:15:39 +02:00
David Cernat
bf0a42fdad [General] Implement ActorSpellsActive packet, part 1
The packet can now set the active spells of DedicatedActors.
2021-04-20 03:25:14 +02:00
David Cernat
b3c40913f6 [Client] Remove 'using namespace std' from multiplayer-related code
This brings TES3MP in line with https://gitlab.com/OpenMW/openmw/-/merge_requests/664
2021-03-20 23:21:40 +02:00
David Cernat
c99e20e3b4 [Client] Equip items silently for newly met dedicated players/actors 2020-05-25 21:50:19 +03:00
David Cernat
5ca2c83b02 [Client] Fix additional resurrection problems caused by 6450d84473 2019-12-03 11:42:56 +02:00
David Cernat
c702eab93c [Client] Fix declarations hiding class members 2019-11-30 12:51:48 +02:00
David Cernat
9350e1d484 [General] Split up Attack packets into Attack and Cast ones
Create an entirely new PlayerCast packet for that purpose, but rename the already existing but unused ActorInteraction into ActorCast.
2019-08-25 09:35:23 +03:00
David Cernat
0339958e21 [General] Rename Log class into TimedLog 2019-08-19 21:39:33 +03:00
David Cernat
77952440f6 [Client] Clean up handling of draw states 2019-06-19 08:24:53 +03:00
David Cernat
5bd2244898 [Client] Uninitialize DedicatedActors instantly in some situations
When LocalActors briefly become DedicatedActors as the result of a server script, the DedicatedActors are immediately uninitialized to avoid bugs like them jumping in place or rotating slightly.

Additionally, the playing of animations and sounds received in packets for DedicatedActors is no longer done during their next update, but is instead done instantly when the packets are received.
2018-08-16 03:50:41 +03:00
David Cernat
f1315ef30d [Cllient] Differentiate itemPtr from actor Ptr in DedicatedActor methods
2427a4f877 mistakenly used the variable name "ptr" for both the actor and the items in that actor's inventory.
2018-07-21 10:16:51 +03:00
David Cernat
743933134d [Client] Simplify sending of ActorAI packets for uninitialized actors 2018-07-14 01:00:27 +03:00
David Cernat
6c1173d598 [Client] Rename searchPtrViaRefIndex into searchPtrViaUniqueIndex 2018-07-13 04:33:54 +03:00
David Cernat
09da24f1ea [General] Rename all instances of refNumIndex into refNum
This creates symmetry with mpNum and should cause less confusion in the future.
2018-07-13 04:12:03 +03:00
David Cernat
6316f1e590 [Client] Add ActorList methods for sending ActorAI packets
Additionally, use consistent capitalization for AI-related methods.
2018-07-12 20:48:47 +03:00
David Cernat
8ca29dbaac [Client] Fix remaining mistakes in debug for received ActorAI packets 2018-07-11 23:11:37 +03:00
David Cernat
25f7a55495 [Client] Improve debug for received ActorAI packets 2018-07-11 19:54:56 +03:00
David Cernat
bff6e9e235 [General] Implement ActorAI packet, part 5
Allow repetition for AiWander package to be turned on and off.
2018-07-10 23:18:32 +03:00
David Cernat
2e31c212c0 [Client] Make any ActorAI packet override an actor's desire to fight 2018-07-10 11:33:07 +03:00
David Cernat
79ee976c95 [Client] Implement ACTIVATE action in DedicatedActor::setAI()
Additionally, clean up usage of CreatureStats in DedicatedActor.
2018-07-10 11:31:51 +03:00
David Cernat
00c13ae96c [General] Implement ActorAI packet, part 4
The server can now make actors activate players and objects, at least in theory. In practice, OpenMW''s AiActivate package needs to be worked so it allows specific objects as targets instead of just refIds.
2018-07-10 07:07:37 +03:00
David Cernat
0e13207afe [General] Implement ActorAI packet, part 3
The server can now cancel actor AI, make actors travel to a location, make actors wander, and make actors get escorted by a player or another actor.
2018-07-10 05:07:58 +03:00
David Cernat
5baef09f79 [General] Implement ActorAI packet, part 2
The server can now make actors start combat with players or other actors.
2018-07-10 02:47:52 +03:00
David Cernat
5628f3b977 [Client] Fix debug for DedicatedActor::setAI() 2018-07-10 02:05:10 +03:00
David Cernat
b86155dc11 [Client] Allow AiFollow package to have infinite distance when desired 2018-07-10 01:40:57 +03:00
David Cernat
8a23a96da4 [Client] Update initialization of AiFollow packages in multiplayer code 2018-07-04 04:00:12 +03:00
David Cernat
77389538e8 [General] Implement ActorAI packet, part 1
The server can now make actors become followers of players or other actors.
2018-05-12 06:29:11 +03:00
David Cernat
b9520c11da [General] Rework PlayerEquipment packets so they are of minimal size
Moreover, rename BaseNetCreature's equipedItems into equipmentItems.

(cherry picked from commit d1ad0c91f8)
2018-04-20 22:46:16 +03:00
David Cernat
6b75a82777 [Client] Ignore equipment items for DedicatedActors with count below 0 2018-01-27 18:08:45 +02:00
David Cernat
605b06c303 [General] Find actor speech captions instead of sending them in packets 2017-10-30 11:06:09 +02:00
Koncord
2427a4f877 [Client] Update DedicatedActor to C++11 2017-06-27 22:25:39 +08:00
Koncord
6222c20e82 [Client] Convert MechanicsHelper to namespace 2017-06-27 16:43:53 +08:00
David Cernat
c6aee3b780 [Client] Fix build by changing boost::shared_ptr into std::shared_ptr 2017-06-18 19:36:06 +03:00
David Cernat
6ac7ee8fcd [Client] Fix problems with NPC equipment sync 2017-06-09 04:58:56 +03:00
David Cernat
cf41956cad [Client] Prevent framerate drops caused by invalid rotation values 2017-06-01 21:45:36 +03:00
David Cernat
068a45be87 [General] Synchronize player & NPC rotation animations 2017-05-30 12:08:58 +03:00
David Cernat
b0c1aafc5a [Client] Use a 10 times higher maximum distance for linear interpolation 2017-05-28 03:30:23 +03:00
David Cernat
4f273932af [General] Implement sending and reading of ActorEquipment packets 2017-05-26 04:37:49 +03:00
David Cernat
8f5e6531db [Client] Avoid updating positions and anim flags when framerate is low
Also rename DedicatedPlayer methods so they are consistent with those from DedicatedActor
2017-05-14 10:52:44 +03:00
David Cernat
1f747d4375 [Client] Only apply interpolation when positions don't change too much 2017-05-09 04:41:26 +03:00
David Cernat
3def111ca1 [Client] Fix graphical glitches related to DedicatedActor initialization 2017-05-06 04:49:49 +03:00
David Cernat
b745a33f18 [Client] Resurrect DedicatedActors that aren't supposed to be dead 2017-05-05 20:38:28 +03:00
David Cernat
8b4e167efe [Client] Prevent NPC subtitles from being added to open Dialogue window 2017-05-05 20:16:20 +03:00