1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-22 06:23:51 +00:00
Commit graph

4950 commits

Author SHA1 Message Date
David Cernat
d78bdefc01 [General] Include effect and spell ID for summons in ObjectSpawn packets 2019-12-01 13:31:11 +02:00
Andrei Kortunov
974670a7c5
Merge pull request #2540 from elsid/fix_startup_fail_crash
Fix crash on destructed stream usage
2019-11-30 22:15:00 +04:00
Andrei Kortunov
ae80d8e490
Merge pull request #2618 from elsid/fix_rope_bridge
Fix objects culling for recast mesh tiles (bug #5216)
2019-11-30 21:54:14 +04:00
David Cernat
42b002e8db [General] Reorder record types in RecordDynamic packet
The record types that cannot be created by players through gameplay are now sorted alphabetically after the record types that can be created by them.
2019-11-30 18:34:35 +02:00
Alexei Dobrohotov
c01324fdb2
Merge pull request #2613 from akortunov/warnfix3
Fix GCC9 warnings about implicit declarations
2019-11-30 16:09:01 +03:00
elsid
7ec5a20c64
Filter recast mesh triangles by global bounding box
Except heightfields to reduce slow down.
2019-11-30 13:19:27 +01:00
elsid
7729e396b2
Fix exceptions logging 2019-11-30 10:33:14 +01:00
David Cernat
23d410f473 [General] Implement body part records for RecordDynamic packet 2019-11-29 14:06:17 +02:00
David Cernat
b3747839c0 [General] Add hasRace to record overrides in RecordsDynamic packet 2019-11-29 13:28:07 +02:00
David Cernat
16662d772b [General] Synchronize death animations for players 2019-11-29 12:52:47 +02:00
David Cernat
47443e19cb [General] Use compression for string values used in Attack packets 2019-11-29 11:19:24 +02:00
Andrei Kortunov
1b98fe4395 Fix GCC9 warnings about implicit declarations 2019-11-29 12:41:23 +04: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
Andrei Kortunov
5daf602256 Fix iterator usage when destroying cell borders (bug #5218) 2019-11-29 12:26:17 +04:00
David Cernat
b352983348 [General] Include actor refIds in ActorDeath packets 2019-11-27 11:18:08 +02:00
bzzt
f09125fc93 perf regression fix 2019-11-20 13:37:00 +00: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
elsid
8d358eeb7d
Avoid virtual call in ParticleSystem ctor 2019-11-17 18:50:45 +01:00
elsid
b07a6afa91
Avoid virtual call in GraphicsWindowSDL2 ctor
/home/elsid/dev/openmw/components/sdlutil/sdlgraphicswindow.cpp:23:8: warning: Call to virtual function during construction [clang-analyzer-optin.cplusplus.VirtualCall]
    if(valid())
       ^
/home/elsid/dev/openmw/components/sdlutil/sdlgraphicswindow.cpp:23:8: note: This constructor of an object of type 'GraphicsWindowSDL2' has not returned when the virtual method was called
/home/elsid/dev/openmw/components/sdlutil/sdlgraphicswindow.cpp:23:8: note: Call to virtual function during construction
2019-11-17 18:50:11 +01:00
elsid
4cd2ff9a3d
Avoid virtual call in TerrainGrid dtor
/home/elsid/dev/openmw/components/terrain/terraingrid.cpp:31:9: warning: Call to virtual function during destruction [clang-analyzer-optin.cplusplus.VirtualCall]
        unloadCell(mGrid.begin()->first.first, mGrid.begin()->first.second);
        ^
/home/elsid/dev/openmw/components/terrain/terraingrid.cpp:29:12: note: Assuming the condition is true
    while (!mGrid.empty())
           ^
/home/elsid/dev/openmw/components/terrain/terraingrid.cpp:29:5: note: Loop condition is true.  Entering loop body
    while (!mGrid.empty())
    ^
/home/elsid/dev/openmw/components/terrain/terraingrid.cpp:31:9: note: This destructor of an object of type '~TerrainGrid' has not returned when the virtual method was called
        unloadCell(mGrid.begin()->first.first, mGrid.begin()->first.second);
        ^
/home/elsid/dev/openmw/components/terrain/terraingrid.cpp:31:9: note: Call to virtual function during destruction
2019-11-17 18:50:11 +01:00
elsid
2e1d8a5e55
Remove unused virtual modifiers in DebugHUD
/home/elsid/dev/openmw/components/sceneutil/mwshadowtechnique.cpp:3127:9: warning: Call to virtual function during construction [clang-analyzer-optin.cplusplus.VirtualCall]
        addAnotherShadowMap();
        ^
/home/elsid/dev/openmw/components/sceneutil/mwshadowtechnique.cpp:3094:5: note: Loop condition is true.  Entering loop body
    for (int i = 0; i < 2; ++i)
    ^
/home/elsid/dev/openmw/components/sceneutil/mwshadowtechnique.cpp:3094:5: note: Loop condition is true.  Entering loop body
/home/elsid/dev/openmw/components/sceneutil/mwshadowtechnique.cpp:3094:5: note: Loop condition is false. Execution continues on line 3102
/home/elsid/dev/openmw/components/sceneutil/mwshadowtechnique.cpp:3126:21: note: Assuming 'i' is < 'numberOfShadowMapsPerLight'
    for (int i = 0; i < numberOfShadowMapsPerLight; ++i)
                    ^
/home/elsid/dev/openmw/components/sceneutil/mwshadowtechnique.cpp:3126:5: note: Loop condition is true.  Entering loop body
    for (int i = 0; i < numberOfShadowMapsPerLight; ++i)
    ^
/home/elsid/dev/openmw/components/sceneutil/mwshadowtechnique.cpp:3127:9: note: This constructor of an object of type 'DebugHUD' has not returned when the virtual method was called
        addAnotherShadowMap();
        ^
/home/elsid/dev/openmw/components/sceneutil/mwshadowtechnique.cpp:3127:9: note: Call to virtual function during construction
2019-11-17 18:50:11 +01:00
elsid
bd149b909f
Remove unused virtual modifiers in ShadowManager
/home/elsid/dev/openmw/components/sceneutil/shadow.cpp💯9: warning: Call to virtual function during construction [clang-analyzer-optin.cplusplus.VirtualCall]
        setupShadowSettings();
        ^
/home/elsid/dev/openmw/components/sceneutil/shadow.cpp💯9: note: This constructor of an object of type 'ShadowManager' has not returned when the virtual method was called
/home/elsid/dev/openmw/components/sceneutil/shadow.cpp💯9: note: Call to virtual function during construction
/home/elsid/dev/openmw/components/sceneutil/shadow.cpp:104:9: warning: Call to virtual function during construction [clang-analyzer-optin.cplusplus.VirtualCall]
        enableOutdoorMode();
        ^
/home/elsid/dev/openmw/components/sceneutil/shadow.cpp:104:9: note: This constructor of an object of type 'ShadowManager' has not returned when the virtual method was called
/home/elsid/dev/openmw/components/sceneutil/shadow.cpp:104:9: note: Call to virtual function during construction
2019-11-17 18:26:56 +01:00
Andrei Kortunov
f09d20434c Clamp number of shadow maps 2019-11-17 17:25:02 +04:00
Alexei Dobrohotov
ef138e9afc
Merge pull request #2592 from akortunov/switchnode
Use transformations of NiSwitchNode
2019-11-15 19:46:45 +03:00
Andrei Kortunov
34873b6065 Fix dead code 2019-11-13 15:29:18 +04:00
Andrei Kortunov
7074baa1c2 Clamp number of shadow maps, as described in docs 2019-11-13 15:10:22 +04:00
Andrei Kortunov
af41e9acc1 Initialize variables to avoid undefined values 2019-11-13 14:47:29 +04:00
David Cernat
8f7a267129 [General] Add scale and bloodType to creature records in RecordDynamic 2019-11-10 09:20:45 +02:00
David Cernat
afb9bd7eb5 [General] Implement script records for RecordDynamic packets 2019-11-09 21:34:09 +02:00
Andrei Kortunov
51cfd070c6 Use transformations of NiSwitchNode 2019-11-09 21:43:08 +04:00
Andrei Kortunov
bafc0d9e90 Added support for texture fragment usage to the ImageButton 2019-11-09 12:52:42 +04:00
David Cernat
20d1e7654c [General] Create SystemPacket category and move Handshake packet to it 2019-11-09 05:12:00 +02:00
David Cernat
5762a36fc2 Add OpenMW commits up to 7 Nov 2019
# Conflicts:
#	apps/openmw/mwmechanics/aifollow.hpp
2019-11-08 06:20:41 +02:00
Andrei Kortunov
6eb8e0cf4d Display magic effects according to research page 2019-11-07 11:05:18 +04:00
Alexei Dobrohotov
a8843fa5a8
Make sure MultiChar::data() constructs a valid string
mData may ultimately not be a valid C-string (e.g. if it contains 4 significant characters) so it may not necessarily be converted into a valid std::string
2019-11-05 22:33:14 +03:00
elsid
d42b5fd28e
Fix warning -Woverloaded-virtual
In file included from openmw/components/terrain/quadtreeworld.cpp:10:
openmw/components/terrain/quadtreenode.hpp:95:14: warning: 'Terrain::QuadTreeNode::traverse' hides overloaded virtual function [-Woverloaded-virtual]
        void traverse(ViewData* vd, const osg::Vec3f& viewPoint, LodCallback* lodCallback, float maxDist);
             ^
OpenSceneGraph/build/clang/release/include/osg/Group:43:22: note: hidden overloaded virtual function 'osg::Group::traverse' declared here: different number of parameters (1 vs 4)
        virtual void traverse(NodeVisitor& nv);
                     ^
1 warning generated.
2019-11-05 09:31:38 +01:00
bzzt
b6ed2f1718 Add optional shadow map max distance and fading 2019-11-02 18:06:39 +03:00
Bret Curtis
ec9a593fc3
Merge pull request #2578 from akortunov/mouse
Implement mouse wheel bindings (bug #2679)
2019-10-31 13:14:29 +01:00
Michael Stopa
e4bec88a68 Implement mouse wheel bindings (bug #2679) 2019-10-30 20:45:51 +04:00
Alexei Dobrohotov
9ab8d88753
Accept a bogus cell string argument for Position 2019-10-30 17:54:34 +03:00
Andrei Kortunov
45ab6e1430 Implement UTF-8 support for script parser (bug #4598) 2019-10-30 14:59:47 +04:00
David Cernat
54301f5f89 Add OpenMW commits up to 29 Oct 2019
# Conflicts:
#	apps/openmw/mwmechanics/combat.cpp
#	apps/openmw/mwworld/inventorystore.cpp
2019-10-29 23:49:31 +02:00
Alexei Dobrohotov
dc8e5f1d12
Accept redundant volume and pitch StopSound arguments
Exploited in Arktwend.
2019-10-29 18:51:58 +03:00
Alexei Dobrohotov
8bc2c1ac34
Make ForceGreeting ignore any extra argument 2019-10-29 14:39:21 +03:00
Andrei Kortunov
b2e12f0a73 Attempt to fix a regression - crash on ARM 2019-10-28 18:58:16 +04:00
David Cernat
b97322b4b1 [General] Modernize packet style for PlayerInventory 2019-10-26 14:01:08 +03:00
David Cernat
cbe58b1c24 [General] Modernize packet style for PlayerFaction 2019-10-26 11:42:40 +03:00
Capostrophic
f7d2cdb782 Revert to 0.45.0 comments-in-the-middle settings behavior 2019-10-26 10:55:10 +03:00
Bret Curtis
9f039fac87
Merge pull request #2520 from unelsson/transientlandshapeedit
[Review phase] Editor: Transient land shape editing
2019-10-25 00:26:43 +02:00
Roman Siromakha
4e5aec5c30
Merge pull request #2539 from Capostrophic/scripting
Try to parse strings as number literals (bug #5097)
2019-10-24 22:12:50 +02:00
David Cernat
0e94eb8b74 [General] Use regular ints for weather states for consistency w/ OpenMW 2019-10-24 20:08:08 +03:00
David Cernat
904f804ea2 [General] Modernize packet style for PlayerSpellbook 2019-10-24 19:27:37 +03:00
Bret Curtis
2040ca5637
Merge pull request #2555 from akortunov/encoding
Encode ID's in all places to UTF-8
2019-10-24 00:48:12 +02:00
David Cernat
4f9e6b0e3e [General] Modernize packet style for PlayerCellState 2019-10-23 17:46:21 +03:00
David Cernat
96a71c1ced [General] Modernize packet style for PlayerBook 2019-10-23 02:02:27 +03:00
David Cernat
d66bca8605 [General] Modernize packet style for PlayerTopic 2019-10-23 01:24:13 +03:00
Nelsson Huotari
0ce971c1bb Revert back to less aggressive component-level changes. 2019-10-22 21:26:55 +03:00
Nelsson Huotari
c2428bc5fa Remove unneeded forward declaration 2019-10-22 21:25:10 +03:00
Nelsson Huotari
16138fc896 Transient land shape editing 2019-10-22 21:25:10 +03:00
elsid
275f552fcf
Do not modify settings on save 2019-10-21 22:47:24 +02:00
elsid
a7930073e8
Move settings parser declaration to separate header 2019-10-21 22:47:24 +02:00
Bret Curtis
f666d796e9
Merge pull request #2547 from Capostrophic/nif2
More minor NIF improvements
2019-10-21 21:49:07 +02:00
David Cernat
0206d1813c [General] Modernize packet style for PlayerQuickKeys 2019-10-21 16:55:21 +03:00
David Cernat
4f98d67ed4 [General] Modernize packet style for PlayerJournal 2019-10-21 07:01:36 +03:00
elsid
045ceeac11
Replace foreach macro by for-loop 2019-10-20 20:08:16 +02:00
Capostrophic
7c4743fdd1 Convert recordptr typedefs to using directives 2019-10-16 01:36:43 +03:00
Capostrophic
8056107c6e More minor NIF improvements 2019-10-16 01:36:43 +03:00
Andrei Kortunov
2fc819cdae Encode ID's in all places to UTF-8 (bug #3977) 2019-10-10 20:52:32 +04:00
David Cernat
d163f1b6da [General] Turn WorldKillCount into a Worldstate packet
Rename the old WorldKillCount that was a Player packet into PlayerPlaceholder. Rename the unused CellCreate that was a Worldstate packet into WorldKillCount. On the server, move kill count-related script functions from QuestFunctions to WorldstateFunctions.
2019-10-08 11:09:08 +03:00
David Cernat
4a34666c59 Add OpenMW commits up to 7 Oct 2019
# Conflicts:
#	apps/openmw/mwmechanics/aiactivate.cpp
2019-10-07 08:19:21 +03:00
unelsson
3deebf0247
Merge branch 'master' into wnamfix 2019-10-07 01:40:23 +03:00
Nelsson Huotari
2fdaacf23c remove for array, just std::swap 2019-10-06 23:50:16 +03:00
Nelsson Huotari
e35ed960ee for -> std::copy 2019-10-06 21:57:10 +03:00
Nelsson Huotari
7f030fc3ee copy mWnam record in copy constructor and custom assignment operator 2019-10-06 21:50:40 +03:00
Capostrophic
bde4a38181 Cast Random result to float (bug #5175) 2019-10-03 23:20:25 +03:00
elsid
751accad0f
Remove unused field QuadTreeBuilder::mLodFactor 2019-09-28 14:26:52 +02:00
David Cernat
031acffcbe [General] Implement cell records for RecordDynamic packets, part 1
New interior cells can be now be created that are either blank or based on existing interior cells.
2019-09-28 13:12:48 +03:00
elsid
29f262e514
Fix crash on destructed stream usage 2019-09-28 11:30:38 +02:00
Capostrophic
138a7ac434 Expression parser: Try to parse strings as number literals (bug #5097) 2019-09-26 02:54:17 +03:00
Alexei Dobrohotov
822b20ef46
Fix invalid strips-based collision shape transformation 2019-09-23 20:38:42 +03:00
Alexei Dobrohotov
0a97dd8e84
[Regression] Fix horribly broken fallback loading 2019-09-21 15:05:12 +03:00
Andrei Kortunov
1f3f3dd1a5
Merge pull request #2526 from Capostrophic/config
openmw.cfg-related fixes (incl. bug 2976)
2019-09-20 09:09:38 +04:00
Andrei Kortunov
e6b79d100a
Merge pull request #2503 from Capostrophic/keyword
Allow usage of more keywords as string arguments (bug #5087)
2019-09-20 07:38:57 +04:00
David Cernat
0d51eb5b23 [General] Use unsigned ints for refNums & mpNums in packets 2019-09-19 08:44:33 +03:00
David Cernat
cc25612b8d Add OpenMW commits up to 18 Sep 2019
# Conflicts:
#	apps/openmw/mwclass/container.cpp
#	apps/openmw/mwclass/door.cpp
#	apps/openmw/mwmechanics/security.cpp
#	apps/openmw/mwmechanics/spellcasting.cpp
#	apps/openmw/mwscript/miscextensions.cpp
2019-09-18 23:46:08 +03:00
Capostrophic
3a912485ca openmw.cfg-related fixes
Make sure the defaults exist in local openmw.cfg too
Make sure constant attenuation settings are defined now that they are implemented
Fix config file loading order once and for all (bug #2976)
2019-09-17 21:26:06 +03:00
Capostrophic
83f61d1636 Support target color in NiMaterialColorController (bug #5159) 2019-09-16 22:31:18 +03:00
David Cernat
e424bd9bc3 [General] Implement ClientScriptSettings packet, part 2
The packet can now set which client globals get packets sent about them when their values change on clients.
2019-09-14 09:37:19 +03:00
Capostrophic
8baddefdbd Refactor extra data and particle modifier handling
Objects no longer inherit from extra data class
"Controlled" harmful abstraction no longer exists
Introduced NiParticleModifier/NiParticleCollider abstractions
Extra data size reading moved into the base read() method
2019-09-13 20:26:22 +03:00
David Cernat
3acfbad55d [General] Implement ClientScriptSettings packet, part 1
For starters, the new packet can set which client scripts have all of their variables synchronized between players. The previous hardcoded list of IDs for synchronized scripts has been removed.
2019-09-09 10:28:35 +03:00
David Cernat
25e27ccb95 [General] Use placeholder packet ID for unused CellCreate packet 2019-09-09 10:22:20 +03:00
capostrophic
8f2ed884a5 Allow usage of more keywords as string arguments (bug #5087) 2019-09-06 19:12:08 +03:00
David Cernat
ca67587b89 Add OpenMW commits up to 5 Sep 2019
# Conflicts:
#	apps/openmw/mwgui/container.cpp
#	apps/openmw/mwmechanics/actors.cpp
#	apps/openmw/mwworld/worldimp.hpp
2019-09-05 21:41:50 +03:00
David Cernat
95967ea289 [General] Rename unused ObjectReset packet into ObjectHit 2019-09-01 08:30:03 +03:00
David Cernat
9b1fbcc6f9 [General] Use correct packet ID in PacketActorCast 2019-08-28 06:35:19 +03:00
Capostrophic
c0438a0c6b Avoid using getPtr on empty geometry data 2019-08-26 23:01:58 +03:00
David Cernat
e15428e139 [General] Remove "created by" stamps added by IntelliJ 2019-08-26 12:33:28 +03: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
Alexei Dobrohotov
64fde2d7c2
Fix crash when NiGeometry lacks NiGeometryData 2019-08-24 22:34:56 +03:00
David Cernat
353e7d530a Add OpenMW commits up to 18 Aug 2019
# Conflicts:
#	CMakeLists.txt
#	apps/openmw/mwmechanics/character.cpp
#	apps/openmw/mwmechanics/spellcasting.cpp
#	apps/openmw/mwworld/worldimp.hpp
2019-08-22 22:44:00 +03:00