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

17982 commits

Author SHA1 Message Date
David Cernat
9a772d737f [Server] Add script functions relating to summons' effect & spell IDs 2019-12-01 13:32:34 +02:00
David Cernat
d78bdefc01 [General] Include effect and spell ID for summons in ObjectSpawn packets 2019-12-01 13:31:11 +02:00
David Cernat
610e0558c8 [Server] Use correct argument for SetObjectSummonDuration() 2019-12-01 10:41:07 +02:00
David Cernat
47b666c1f9 [Server] Add ObjectFunctions for setting summoner identity for spawns 2019-12-01 10:12:13 +02:00
David Cernat
c6542ffec4 [Server] Move ObjectFunctions for setting summoning to their own spot 2019-11-30 20:44:27 +02:00
David Cernat
5575242299 [Client] Don't allow players to attack while in persuasion dialogue 2019-11-30 20:05:20 +02:00
David Cernat
397cdf400b [Server] Reorder record types in RecordsDynamic script functions
They are now consistent with the ordering from 42b002e8db
2019-11-30 19:12:57 +02:00
David Cernat
64c94346b6 [Client] Always send attack starts by actors immediately
Previously, creatures with fast attack animations would have their attack updated right after being started, which happened so quickly that it prevented the attack start from actually being sent by the client.
2019-11-30 15:50:05 +02:00
David Cernat
ed7fe859dd [Client] Set attackingOrSpell state instantly after Attack/Cast packets
It is no longer necessary to wait for the Actors::update() loop to set dedicated players and actors to their new states.
2019-11-30 15:03:51 +02:00
David Cernat
c702eab93c [Client] Fix declarations hiding class members 2019-11-30 12:51:48 +02:00
David Cernat
56c3ef71ae [Client] Send ObjectDelete packets when picking up items once again
When fixing problems with ObjectActivate in 49fa35a516, I mistakenly made it so the picking up of items no longer also sent ObjectDelete packets. That is now fixed.
2019-11-30 08:13:22 +02:00
David Cernat
7acf6865b9 [Client] Don't clear spells for dying actors 2019-11-29 19:49:17 +02:00
David Cernat
23d410f473 [General] Implement body part records for RecordDynamic packet 2019-11-29 14:06:17 +02:00
David Cernat
0dae3074a6 [Client] Add missing comment related to spellcast animation 2019-11-29 14:02:52 +02:00
David Cernat
b3747839c0 [General] Add hasRace to record overrides in RecordsDynamic packet 2019-11-29 13:28:07 +02:00
David Cernat
ddb25a482d [Server] Remove unneeded assignments for playerController in processors 2019-11-29 12:54:18 +02:00
David Cernat
16662d772b [General] Synchronize death animations for players 2019-11-29 12:52:47 +02:00
David Cernat
140c1c9c12 [General] Use hard synchronization for melee attack animations
Previously, each client chose its own attack animations for DedicatedPlayers and DedicatedActors based on the direction they were walking in, which however led to desyncs for players with "Always Use Best Attack" enabled and for creatures which pick their attack animations randomly.
2019-11-29 10:39:57 +02:00
David Cernat
a385fcdd87 [Client] Fix crash caused by setting instant state for null localCast 2019-11-28 20:28:55 +02:00
David Cernat
5a46b40e1a [Client] Stop switching drawstates when receiving ActorAttack packets
Previously, some of the spammier ActorAttack packets were overriding spellcasting animations with weapon attack animations.
2019-11-28 19:53:34 +02:00
David Cernat
ef944aa050 [Client] Remove unused redeclarations of localActors & dedicatedActors 2019-11-28 13:00:20 +02:00
David Cernat
06b4a4f97c [Client] Don't tie spellcasting for dedicated players/actors to anim end
When Koncord implemented spellcasting, he made it so only the act of initiating a spellcast was synchronized, leaving it to other clients to actually cast a spell for a dedicated player or actor once their spellcasting animation was over. This had led to a lot of desyncs and has always been inconsistent with the handling of attacks, so I've belatedly gone ahead and prevented the end of a spellcasting animation from having any effect for dedicated players and actors, making them cast a spell when an appropriate Cast packet is received from them instead.

Additionally, the logged messages in MechanicsHelper's handling of attacking and casting have been moved around slightly.
2019-11-28 10:34:34 +02:00
David Cernat
7815c8bdaf [Client] Queue sending of Cast packet from CastSpell::cast() 2019-11-28 09:40:22 +02:00
David Cernat
b74e3a7e2e [Client] Include spellIds in Cast packets again, fixing problem from 190c404b38 2019-11-28 00:11:51 +02:00
David Cernat
bbf9f20053 [Client] Stop sending WorldKillCount packets or incrementing local kills
This means the server scripts are now required to send a WorldKillCount packet as a reply to ActorDeath packets sent by clients. This gives the server full control over which kills are counted, while also solving the previous problem of kills being counted only for actors that had finished their death animations.
2019-11-27 11:21:29 +02:00
David Cernat
8da6a7fd9b [Server] Fix mixed-up bindings for Chat functions 2019-11-20 21:01:18 +02:00
David Cernat
0c98c5d09e Add OpenMW commits up to 19 Nov 2019
# Conflicts:
#	apps/openmw/mwmechanics/aipursue.cpp
#	apps/openmw/mwmechanics/summoning.cpp
2019-11-19 17:16:48 +02:00
Andrei Kortunov
73f43ba750 Do not use screen fading during game loading if there is no current cell (bug #5211) 2019-11-18 22:24:19 +04:00
Andrei Kortunov
4118b20608 Allow ActionOpen and ActionTalk only for player (bug #5210 2019-11-18 12:41:11 +04:00
Alexei Dobrohotov
4208f10e81
Merge pull request #2600 from akortunov/master
Take in account caster's race height when launch magic bolt
2019-11-17 21:04:55 +03:00
Andrei Kortunov
6861d9d5e5
Merge pull request #2510 from elsid/ai_open_door
Open door when it is on the way to a next path point (bug #5073)
2019-11-17 21:21:22 +04:00
Andrei Kortunov
d1e0fa575e Take in account caster's race height when launch magic bolt (bug #5209) 2019-11-17 16:37:38 +04:00
Andrei Kortunov
6554130f6f
Merge pull request #2594 from Capostrophic/summonsummon
Minor summoned creature cleanup fixes
2019-11-17 10:47:07 +04:00
Andrei Kortunov
8dbbe42f21 Add missing isNpc() check (bug #5206) 2019-11-17 09:17:03 +04:00
Bret Curtis
454b9f1964
Merge pull request #2597 from akortunov/coverity
CoverityScan fixes, part 2
2019-11-14 21:08:03 +01:00
Alexei Dobrohotov
f332df8839
Fix terrain shadows checkbox loading 2019-11-14 19:50:59 +03:00
Andrei Kortunov
b21dc17538 Attempt to shut up CoverityScan warnings about tainted values 2019-11-14 18:28:38 +04:00
Alexei Dobrohotov
b5992b380e
Merge pull request #2586 from unelsson/allowselectionalledges
Allow selecting cell edges everywhere
2019-11-14 17:25:48 +03:00
Andrei Kortunov
b210e99abc Avoid divizion by zero 2019-11-14 17:43:21 +04:00
Nelsson Huotari
120583f443 optimize isInCellSelection calls 2019-11-14 11:28:49 +02:00
Andrei Kortunov
3970baeb84 Fix possible usage of destroyed variable 2019-11-13 15:46:49 +04:00
Andrei Kortunov
34873b6065 Fix dead code 2019-11-13 15:29:18 +04:00
Andrei Kortunov
5561eb5415 Do not discard division reminder 2019-11-13 15:18:18 +04:00
Andrei Kortunov
238dcdbbd4 Fix copy-paste error 2019-11-13 15:14:30 +04:00
Andrei Kortunov
5c6ca82c45 Clamp fallback value from config 2019-11-13 15:10:19 +04:00
Andrei Kortunov
079c77ff22 Avoid zero division 2019-11-13 14:57:22 +04:00
Andrei Kortunov
ca2a524a5f Avoid null pointer dereference 2019-11-13 14:50:42 +04:00
Andrei Kortunov
af41e9acc1 Initialize variables to avoid undefined values 2019-11-13 14:47:29 +04:00
Capostrophic
120b7dcd2f Clean up summoned creatures when corpses are disposed 2019-11-12 21:44:46 +03:00
David Cernat
1d8668305c [Client] Send PlayerSpellbook packet when contracting or curing disease 2019-11-12 17:44:38 +02:00