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