Commit graph

16141 commits

Author SHA1 Message Date
Andrei Kortunov
6ed2773299 Do not stack return packages 2018-06-08 21:53:47 +04:00
Andrei Kortunov
74a2cbe696 AI: return back after pursuit 2018-06-08 21:53:47 +04:00
Andrei Kortunov
3d0631cfcc Store last AI package in savegame 2018-06-08 21:53:47 +04:00
Andrei Kortunov
3a0ee78d2b AiTravel: store mHidden flag in savegame 2018-06-08 21:53:47 +04:00
Andrei Kortunov
2f5beb8853 Remove unnecessary hack 2018-06-08 21:53:47 +04:00
Andrei Kortunov
57d686131e Remove redundant condition 2018-06-08 21:53:47 +04:00
Andrei Kortunov
5105c67642 Add mHidden field to AiTravel 2018-06-08 21:53:47 +04:00
Andrei Kortunov
81f29d8dcd AiWander: resume moving to destination after combat 2018-06-08 21:53:47 +04:00
Andrei Kortunov
18ff097e4a Add the parameter to AiSequence::stack() to control ability to cancel other AI packages 2018-06-08 21:53:47 +04:00
Andrei Kortunov
9d27eb197f AiWander: return to initial position only after combat 2018-06-08 21:53:47 +04:00
Bret Curtis
61c969e970
Merge branch 'master' into hitboxfix 2018-06-08 18:36:44 +02:00
Capostrophic
b274931165
Revert erroneous changes 2018-06-08 19:18:53 +03:00
Capostrophic
dd2a11b243
Merge branch 'master' into goodbye 2018-06-08 19:16:36 +03:00
Capostrophic
24c1ee7744 Use relative stat difference for haggling 2018-06-08 19:00:45 +03:00
Capostrophic
b7026df551 Improve the offered price formula (Fixes #2222) 2018-06-08 19:00:45 +03:00
Andrei Kortunov
fed10e87aa Store integer actor ID in AI packages (bug #4036) 2018-06-08 19:57:41 +04:00
Marc Zinnschlag
9d0ce25052 Merged pull request #1738 2018-06-08 17:28:08 +02:00
Marc Zinnschlag
7899f44173 Merged pull request #1619 2018-06-08 17:07:38 +02:00
Andrei Kortunov
fea34bd73f Added support for per-group animation files 2018-06-08 17:04:15 +04:00
Capostrophic
11103211c5 Make Goodbye and Choice choices mutually exclusive 2018-06-08 15:03:19 +03:00
Marc Zinnschlag
21ea49fe83 Merge remote-tracking branch 'capostrophic/physics' 2018-06-08 11:43:10 +02:00
David Cernat
2a3c74bfcc Merge pull request #447 from OpenMW/master while resolving conflicts
# Conflicts:
#	README.md
2018-06-08 06:01:00 +03:00
Capostrophic
1a354f88ac Make choices trigger goodbye if Goodbye is used (fixes #3897) 2018-06-07 22:09:55 +03:00
Andrei Kortunov
1b9edbe119 Add unequip animation during stance switching (bug #4327) 2018-06-07 16:20:17 +04:00
Andrei Kortunov
bde1d07d4e Use hitboxes and focused object for touch spells (bug #3374) 2018-06-07 16:12:27 +04:00
Andrei Kortunov
4666a6a0ab Use default hit formula as fallback 2018-06-07 16:12:27 +04:00
Andrei Kortunov
9e5d577a71 Aim from center of attacker to center of target 2018-06-07 16:12:27 +04:00
Andrei Kortunov
f5dc9f0162 Use hitbox cone only as fallback 2018-06-07 16:12:27 +04:00
Andrei Kortunov
ab433102a4 Increase hit distance for player by halfExtents 2018-06-07 16:12:27 +04:00
Marc Zinnschlag
7b4a69ff2f Merged pull request #1728 2018-06-07 13:14:53 +02:00
Marc Zinnschlag
362aa23546 Merged pull request #1724 2018-06-07 13:13:48 +02:00
Marc Zinnschlag
2ab31b0c18 Merged pull request #1723 2018-06-07 13:05:20 +02:00
David Cernat
2942bf6455
Merge pull request #445 from OpenMW/master
Add OpenMW commits up to 6 Jun 2018
2018-06-07 13:41:04 +03:00
David Cernat
72862dc255 [General] Turn PlayerMap into WorldMap, now a Worldstate packet 2018-06-07 12:51:45 +03:00
David Cernat
a28b27f5d9 Merge pull request #443 from OpenMW/master while resolving conflicts
# Conflicts:
#	README.md
2018-06-05 20:57:50 +03:00
David Cernat
0d0c4ac235 [Client] Use REPLY_TO_REQUEST container sub-action for partial requests 2018-06-05 19:40:39 +03:00
David Cernat
04a2025340 Fix crash when adding items to certain disabled creatures (bug #4441) 2018-06-05 18:09:10 +03:00
David Cernat
83014d6381 [Client] Set actors as the owners of their items when editing containers 2018-06-05 14:55:57 +03:00
David Cernat
bacecc93e3 [Server] Make it possible to resend a received ObjectList of any kind
Additionally, make existing related functions less confusing.
2018-06-05 14:19:06 +03:00
David Cernat
494edbe5cb [General] Add REPLY_TO_REQUEST container sub-action 2018-06-05 14:16:27 +03:00
David Cernat
8ea9485e6b [Client] Make container debug information more useful 2018-06-05 12:01:16 +03:00
David Cernat
c20a0c72c5 Merge pull request #442 from OpenMW/master while resolving conflicts
# Conflicts:
#	CMakeLists.txt
2018-06-04 19:34:26 +03:00
Marc Zinnschlag
cd7268e9af Merge remote-tracking branch 'akortunov/effectResistFix' into openmw-44 2018-06-04 16:58:22 +02:00
Thunderforge
d46590934a Importing mutex 2018-06-03 16:59:27 -05:00
Thunderforge
e282ece3d1 Fixing bug with autocomplete not loading correctly during startup 2018-06-03 16:58:18 -05:00
Thunderforge
103a7ac628 Using a mutex lock to prevent race conditions 2018-06-03 16:32:12 -05:00
Capostrophic
c14536a399 Update faction-owned items confiscation 2018-06-03 20:28:53 +03:00
Capostrophic
3810ade67a Don't make unnecessary faction ID searches 2018-06-03 12:38:53 +03:00
Capostrophic
191cc76378 Consider faction ownerships in item stolen checks (fixes #4293) 2018-06-03 10:22:20 +03:00
Thunderforge
e26c675829 Changing join to detach so that the thread will not block the UI 2018-06-02 17:29:35 -05:00
elsid
dba79f4d4d
Fix warnings: catching polymorphic type by value
openmw/apps/openmw/mwworld/worldimp.cpp: In member function ‘virtual bool MWWorld::World::findExteriorPosition(const string&, ESM::Position&)’:
openmw/apps/openmw/mwworld/worldimp.cpp:2650:25: warning: catching polymorphic type ‘class std::invalid_argument’ by value [-Wcatch-value=]
             catch (std::invalid_argument)
                         ^~~~~~~~~~~~~~~~
openmw/apps/openmw/mwworld/worldimp.cpp:2654:25: warning: catching polymorphic type ‘class std::out_of_range’ by value [-Wcatch-value=]
             catch (std::out_of_range)
                         ^~~~~~~~~~~~

openmw/components/widgets/numericeditbox.cpp: In member function ‘void Gui::NumericEditBox::onEditTextChange(MyGUI::EditBox*)’:
openmw/components/widgets/numericeditbox.cpp:41:21: warning: catching polymorphic type ‘class std::invalid_argument’ by value [-Wcatch-value=]
         catch (std::invalid_argument)
                     ^~~~~~~~~~~~~~~~
openmw/components/widgets/numericeditbox.cpp:45:21: warning: catching polymorphic type ‘class std::out_of_range’ by value [-Wcatch-value=]
         catch (std::out_of_range)
                     ^~~~~~~~~~~~
2018-06-02 14:28:46 +03:00
Andrei Kortunov
be394870e4 Fix regressions in spell resistance 2018-06-01 20:08:53 +04:00
Andrei Kortunov
84c8fb9df7 Add pursue package only when crime was reported (bug #4433) 2018-06-01 12:41:31 +04:00
Andrei Kortunov
24863f620b RotateWorld: rotate around world axis (bug #4426) 2018-05-30 16:35:52 +04:00
Thunderforge
26dfef7970 Changing where we are loading cells to prevent Qt access issue 2018-05-27 17:15:36 -05:00
Thunderforge
78234e9468 Moving autocomplete code to thread 2018-05-27 16:47:09 -05:00
David Cernat
669d4d3d7e
Merge pull request #440 from OpenMW/master
Add OpenMW commits up to 27 May 2018
2018-05-27 16:10:16 +03:00
David Cernat
3efe05a88e [General] Implement WorldCollisionOverride packet 2018-05-27 16:05:40 +03:00
David Cernat
5d30a884ba [Client] Add Worldstate to CMakeLists 2018-05-27 16:00:14 +03:00
David Cernat
e8ec031a81 [Client] Create Worldstate class that inherits BaseWorldstate 2018-05-27 15:57:47 +03:00
Thunderforge
c2fff61ccd Changing so that data changes happen only after the addon is checked 2018-05-26 20:35:28 -05:00
Capostrophic
7e38bb8513 Verifier: improve handling of class name and description 2018-05-26 22:37:02 +03:00
scrawl
cfdf99f601
Revert "Merged pull request #1573"
This reverts commit 7324bd368f, reversing
changes made to 810e4416f6.
2018-05-26 11:39:30 +00:00
scrawl
99ffaafe30
Revert "Merge pull request #1701 from akortunov/standfix"
This reverts commit da47fc79f5, reversing
changes made to 7324bd368f.
2018-05-26 11:35:48 +00:00
Marc Zinnschlag
b151a89528 Merged pull request #1568 2018-05-26 12:17:07 +02:00
Marc Zinnschlag
bbc337a0af code cleanup 2018-05-26 12:16:02 +02:00
Marc Zinnschlag
e76df5f4d3 minor tooltip fixes 2018-05-26 11:53:08 +02:00
Marc Zinnschlag
e30ade81be Merged pull request #1680 2018-05-26 11:21:34 +02:00
David Cernat
f7a084c824 [Client] Use faster check for whether actors are DedicatedPlayers 2018-05-26 08:13:26 +03:00
David Cernat
c8ec77875c [Client] Update old comments for changes made by tes3mp 2018-05-26 05:11:41 +03:00
Marc Zinnschlag
832b4bb778 Merged pull request #1659 2018-05-25 11:32:08 +02:00
David Cernat
416ee77639 [General] Add placeholder for WorldCollisionOverride packet 2018-05-25 07:09:32 +03:00
David Cernat
2edb511a0b [Client] Remove unnecessary condition from WorldTime processor 2018-05-25 07:08:51 +03:00
David Cernat
49ea76aa9d [General] Add notes for InputDialogs in GUIBoxes packet 2018-05-25 05:28:22 +03:00
David Cernat
3b5fb9cd6b [General] Make it possible to set year via WorldTime 2018-05-25 03:33:12 +03:00
David Cernat
4acf93b7db [General] Make it possible to set days passed via WorldTime 2018-05-24 14:02:04 +03:00
David Cernat
74c2a0b311
Merge pull request #438 from OpenMW/master
Add OpenMW commits up to 24 May 2018
2018-05-24 12:16:11 +03:00
Andrei Kortunov
1abff5365b Capitalize enchanted items names again in spells window 2018-05-24 13:03:47 +04:00
Andrei Kortunov
afae398b5c Use utf8 lowercase function for journal index to avoid code duplication 2018-05-24 12:53:06 +04:00
Andrei Kortunov
b5374029e5 Implement case-insensitive search in spell window 2018-05-24 12:39:00 +04:00
Andrei Kortunov
9ac752ea70 Implement filtering in the spells window 2018-05-24 10:48:46 +04:00
David Cernat
46744ee90f [General] Make WorldTime script functions more consistent with others 2018-05-24 09:38:06 +03:00
Bret Curtis
da47fc79f5
Merge pull request #1701 from akortunov/standfix
Do not apply queue movement for standing actors
2018-05-23 22:35:08 +02:00
Marc Zinnschlag
7324bd368f Merged pull request #1573 2018-05-23 17:00:29 +02:00
Marc Zinnschlag
d92d754834 Merged pull request #1697 2018-05-23 16:01:11 +02:00
Marc Zinnschlag
1564a3f6aa Merged pull request #1713 2018-05-23 13:51:32 +02:00
Marc Zinnschlag
2f958881b7 Merged pull request #4413 2018-05-23 13:45:35 +02:00
David Cernat
8d36d0d945 [General] Make it possible to change world's time scale via WorldTime 2018-05-23 08:31:25 +03:00
David Cernat
0be6de6607 [General] Turn RecordDynamic into a Worldstate packet 2018-05-23 07:48:28 +03:00
David Cernat
031a80ed5a [Client] Don't advance time when waiting, traveling, training or jailed 2018-05-23 05:49:51 +03:00
David Cernat
02ba641bef [Server] Use correct index changes for dynamic stat script functions 2018-05-23 05:48:28 +03:00
Thunderforge
d58cce9c72 Adding WIP code to dynamically change the autocomplete fields 2018-05-22 20:50:31 -05:00
David Cernat
da66face25 [General] Rename GameTime packet into WorldTime 2018-05-23 00:41:29 +03:00
David Cernat
296c69d788
Merge pull request #436 from OpenMW/master
Add OpenMW commits up to 22 May 2018
2018-05-23 00:40:51 +03:00
Nelsson Huotari
825c331764 Remove texture filtering, better ltex importing, reindexing duplicates 2018-05-22 14:55:09 +03:00
declan-millar
b8df4b7c5a Tidy in-code comment 2018-05-21 22:14:23 +01:00
declan-millar
844aef85f3 Replace spelling: soulgem -> soul gem in code comment 2018-05-21 22:12:19 +01:00
declan-millar
9ed4f33048 Replace spelling: soulgem -> soul gem 2018-05-21 19:10:24 +01:00
declan-millar
028b528c0b Get soul magnitude before checking the rebalance setting 2018-05-21 18:16:04 +01:00
declan-millar
9346a552fa Use Rebalance soulgem values option to set soulgem value 2018-05-21 13:59:20 +01:00
declan-millar
78e79d5775 Add advanced option to Rebalance soulgem values to the launcher 2018-05-21 13:33:42 +01:00
David Cernat
5af1150ab2 [General] Turn GameTime into a Worldstate packet 2018-05-21 07:14:08 +03:00
David Cernat
e87e1dbb30 [General] Fix Worldstate packets by adding missing lines 2018-05-21 07:12:55 +03:00
David Cernat
e690ff0e29
Merge pull request #432 from OpenMW/master
Add OpenMW commits up to 18 May 2018
2018-05-20 23:48:53 +03:00
Nelsson Huotari
8ae46519cf Fix missed worldspacehits, add linebreak to tooltip 2018-05-20 21:58:40 +03:00
Nelsson Huotari
21e8d08e69 Handle invalid texture id's 2018-05-20 21:20:40 +03:00
declan-millar
4b1247597e Use soulgem value rebalance formula from morrowind code patch 2018-05-20 17:06:26 +01:00
Capostrophic
867a5938ca Don't reset sneaking camera offset while in GUI (fixes #4420) 2018-05-20 10:24:20 +03:00
Marc Zinnschlag
ec900ef4ad Merged pull request #1710) 2018-05-18 12:34:16 +02:00
Nelsson Huotari
c2cddc91e4 Brush maximum size to a custom setting 2018-05-18 11:32:42 +03:00
David Cernat
43a944ddaf [General] Add and implement new Worldstate packet type 2018-05-18 06:40:28 +03:00
David Cernat
e8b22a2e5e [Server] Use correct source group for ObjectProcessors 2018-05-18 05:06:19 +03:00
tri4ng1e
f2613a74b1
Write settings before invoking openmw-iniimporter 2018-05-17 21:20:04 +03:00
tri4ng1e
7e03dd0f12
Read data paths from data-local section too 2018-05-17 21:07:20 +03:00
tri4ng1e
3b86f73ae7
Replace MwIniImporter::numberToString with std::to_string 2018-05-17 21:04:40 +03:00
Capostrophic
4e485dbd44 Rename Original Creature column to Parent Creature (fixes #2897) 2018-05-17 13:00:48 +03:00
David Cernat
049d0d9ba7 [General] Fix remaining references to world packets/events 2018-05-17 00:08:37 +03:00
David Cernat
dc9a3bf73f
Merge pull request #429 from OpenMW/master
Add OpenMW commits up to 16 May 2018
2018-05-16 19:20:01 +03:00
Bret Curtis
67c381df4e
Merge pull request #1708 from akortunov/refidfix
fix GCC warnings
2018-05-16 15:59:31 +02:00
Andrei Kortunov
a68de93308 Initialize srate variable in openal_output 2018-05-16 16:34:58 +04:00
Andrei Kortunov
e5db5e2651 Fix 'maybe-uninitialized' warning in openal_output 2018-05-16 16:13:22 +04:00
Andrei Kortunov
df459199dd Avoid left shift of negative value 2018-05-16 12:59:05 +04:00
Nelsson Huotari
17e01ca336 Setting "Scene Drops" rename "3D Scene Editing" 2018-05-16 11:41:37 +03:00
Nelsson Huotari
758ccac75a Show texture id + filename 2018-05-16 11:34:58 +03:00
Bret Curtis
caf1760251
Merge pull request #1707 from akortunov/weaponreach
Display weapon reach on tooltips in feet
2018-05-16 10:27:53 +02:00
Andrei Kortunov
164e3d12fe Display weapon reach on tooltips in feet. 2018-05-16 11:18:22 +04:00
Bret Curtis
e410c47660
Merge pull request #1706 from akortunov/refidfix
Fix compiler warning in getNestedData()
2018-05-16 09:00:25 +02:00
Andrei Kortunov
6a3ff5ed81 Fix compiler warning in getNestedData 2018-05-16 10:10:42 +04:00
David Cernat
2ac334664b [Server] Add deprecated alternatives for ObjectList functions
This will avoid server crashes in older scripts.
2018-05-16 02:16:27 +03:00
David Cernat
51698bed48 [Client] Rename WorldProcessor into ObjectProcessor 2018-05-15 22:56:47 +03:00
David Cernat
02d8e08c58 [Server] Rename WorldProcessor into ObjectProcessor 2018-05-15 22:07:06 +03:00
David Cernat
1e749938fb
Merge pull request #426 from OpenMW/master
Add OpenMW commits up to 15 May 2018
2018-05-15 21:01:33 +03:00
David Cernat
bef36f77ca [Server] Create WorldstateFunctions and move GameTime functions there 2018-05-15 20:58:09 +03:00
Bret Curtis
c75d774356
Merge pull request #1692 from akortunov/playsound
Prevent PlaySound overlapping
2018-05-15 19:03:01 +02:00
Andrei Kortunov
f8655d2425 Use actor's physics position as a ray origin in tracer 2018-05-14 20:38:53 +04:00
David Cernat
9b9dd4abaf
Merge pull request #425 from OpenMW/master
Add OpenMW commits up to 13 May 2018
2018-05-13 19:27:34 +03:00
Capostrophic
e32f38b939 Allow jumping when you're stuck on a slope (fixes #4221) 2018-05-13 17:19:33 +03:00
Capostrophic
409d466e42 Make 0/0 encumbrance 0% encumbrance 2018-05-13 17:18:45 +03:00
Capostrophic
ba077e7291 Fix movement fatigue loss encumbrance calculation (fixes #4413) 2018-05-13 17:18:45 +03:00
Capostrophic
1c9fba9a8c Fix jumping encumbrance calculation 2018-05-13 17:18:45 +03:00
Marc Zinnschlag
0f22600a98 Merged pull request #1703 2018-05-13 09:08:40 +02:00
David Cernat
d4f7936a76 [Server] Rename WorldFunctions into ObjectFunctions 2018-05-13 04:11:05 +03:00
David Cernat
78234f9071 [General] Rename Event into ObjectList & WorldObject into BaseObject 2018-05-13 00:42:24 +03:00
David Cernat
6bf3a0be1e [General] Rename WorldPackets into ObjectPackets for clarity 2018-05-12 19:40:00 +03:00
David Cernat
5458e09c8a
Merge pull request #420 from OpenMW/master
Add OpenMW commits up to 11 May 2018
2018-05-12 06:32:01 +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
tri4ng1e
9126e844bf
Use data paths from config (bug #4412) 2018-05-11 17:24:36 +03:00
Marc Zinnschlag
b7cce1a665 Merged pull request #1702 2018-05-11 10:11:17 +02:00
David Cernat
57b791ea2a [Client] Show selected object's refNum & mpNum in console window title
This allows for much easier debugging of all objects and actors.
2018-05-11 00:46:24 +03:00
Nelsson Huotari
49ae5bc75c List initialization -> initialization in constructor 2018-05-10 22:57:48 +03:00
Nelsson Huotari
1c79d5311c Brush history menu 2018-05-10 21:58:36 +03:00
Nelsson Huotari
d2cf764a46 Tooltips, fixes 2018-05-10 15:01:53 +03:00
Nelsson Huotari
62066f01bd clean-up 2018-05-10 11:18:54 +03:00
Nelsson Huotari
d33c98c68d Revert unintended changes 2018-05-10 11:18:54 +03:00
Nelsson Huotari
5656745445 Select dragged texture-assets, add brush settings widget-type, fixes. 2018-05-10 11:18:54 +03:00
Nelsson Huotari
baa707b5e3 User setting for selective cell editing or new land creation 2018-05-10 11:18:54 +03:00
Nelsson Huotari
24977fcc0f improve hit calculation accuracy for texture editing 2018-05-10 11:18:54 +03:00
Nelsson Huotari
e8a9bff85c Drop textures to landtextures from assets (try-method) 2018-05-10 11:18:54 +03:00
Nelsson Huotari
7139889566 Brush button window opens at modebutton, slider 1-50, doxygen comments 2018-05-10 11:18:54 +03:00
Nelsson Huotari
20d1d8ac89 Fixed brush calculations, implement undostack macro when clicked. 2018-05-10 11:18:54 +03:00
Nelsson Huotari
5f3c8b2b99 c_str -> fromStdString, remove TextureBrushButton class 2018-05-10 11:18:54 +03:00
Nelsson Huotari
cf7a0f715e Command macro for complete drag-editing operations. 2018-05-10 11:18:54 +03:00
Nelsson Huotari
9f742d5b1f Brush affects adjancent cells 2018-05-10 11:18:54 +03:00
Nelsson Huotari
1ca2710a2a Formatting, fixes 2018-05-10 11:18:54 +03:00
Nelsson Huotari
1c113eca9c 15 to landTextureSize-1 2018-05-10 11:18:54 +03:00
Nelsson Huotari
3327d6f7c4 Drag terrain painting, code cleanup 2018-05-10 11:18:54 +03:00
Nelsson Huotari
a54a1b9940 Command system and undo 2018-05-10 11:18:54 +03:00
Nelsson Huotari
cc415526b0 fix texture index +1, better icons 2018-05-10 11:18:54 +03:00
Nelsson Huotari
316d05bdc4 {} to () 2018-05-10 11:18:54 +03:00
Nelsson Huotari
4649d1258c Direct data terrain editing 2018-05-10 11:18:54 +03:00
Nelsson Huotari
4ae75d1d20 Terrain texture brush frame 2018-05-10 11:18:54 +03:00
David Cernat
12727b66ea [Server] Use consistent variable names in map tile script functions 2018-05-10 07:44:08 +03:00
David Cernat
7f00005f04 [Client] Fix GCC build
Based on 71040659ac39dc1236af654b5c3177d015e749e5
2018-05-10 07:16:33 +03:00
David Cernat
32d71de2f5 Update MapWindow every frame, not just when it's open (bug #4279) 2018-05-09 07:33:45 +03:00
Alf Henrik Sauge
feeee50a88 Dropping a separate NPDTstruct12 object and instead use NPDTstruct52
NPDTstruct12 is now only used when loading and saving. Turning auto calc
on and off now no longer switches between to different set of values
2018-05-09 00:25:07 +02:00
tri4ng1e
103a07b744
Less cryptic abbreviations 2018-05-08 18:32:06 +03:00
Marc Zinnschlag
3197ebd8e7 Merged pull request #1694 2018-05-08 12:19:14 +02:00
David Cernat
715012f087 [General] Implement sending of image data for map tiles in PlayerMap 2018-05-08 05:57:04 +03:00
Andrei Kortunov
2f89080b36 Load default markers definitions in editor 2018-05-07 22:32:04 +04:00
Andrei Kortunov
b15bed8e22 Avoid excessive loadSound calls 2018-05-07 20:40:53 +04:00
tri4ng1e
905cde10db
Smart-sorting in iniimporter (time + dependency) 2018-05-07 15:51:46 +03:00
Marc Zinnschlag
53b6ef6f8c minor code cleanup 2018-05-07 09:54:42 +02:00
Marc Zinnschlag
e661e3cf74 Merged pull request #1677 2018-05-07 09:42:41 +02:00
Alf Henrik Sauge
9b971caddc CSVTools::ReportTable should now have case insensitive sorting 2018-05-06 16:49:23 +02:00
Andrei Kortunov
17222eb821 Get rid of unnecessary find 2018-05-06 16:42:05 +04:00
Bret Curtis
c44f87afd1
Merge pull request #1699 from Capostrophic/editorwarnings
Editor verifier updates
2018-05-06 10:57:24 +02:00
Bret Curtis
0fc198be52
Merge pull request #1698 from Capostrophic/c++11
A bunch of C++11-related updates
2018-05-06 10:44:11 +02:00
Capostrophic
2502d53816
Object record verifier updates
Removed light 0 duration warning
Spelling fixes
2018-05-06 00:23:05 +03:00
Capostrophic
91b97a27ea
Remove empty class description warning 2018-05-06 00:14:14 +03:00
Capostrophic
e22409c266
Fix sound range warning message 2018-05-06 00:13:09 +03:00
Andrei Kortunov
3636cf2015 Do not apply queue movement for standing actors 2018-05-05 22:41:26 +04:00
Capostrophic
3d3bef94cd
Use range-based for loop 2018-05-05 16:29:01 +03:00
Andrei Kortunov
1dd36329a3 Load default markers definitions (bug #4410) 2018-05-05 17:14:33 +04:00
Bret Curtis
c219c89603
Merge pull request #1696 from Capostrophic/feature-2694
Rename "Model" column to "Model/Animation" (feature #2694)
2018-05-05 08:14:03 +02:00
Capostrophic
9ac9f94638
Rename "Model" column to "Model/Animation" (feature #2694) 2018-05-04 20:00:58 +03:00
David Cernat
980ddcb114 [Server] Add DoesFileExist() script function 2018-05-04 03:09:54 +03:00
Capostrophic
8be93b4a12
Initialize mandatoryIds vector C++11-way 2018-05-03 19:56:01 +03:00
Capostrophic
85b7aa4f09
Uncomment is_pod test in fixed string tests 2018-05-03 19:47:39 +03:00
Nelsson Huotari
e4e225f4e7 Add topic, journal and related -info icons. 2018-05-03 14:32:15 +03:00
David Cernat
51fd937250 [Server] Remove hardcoded debug messages when using script callbacks 2018-05-01 20:39:43 +03:00
David Cernat
df0f9b0f5e [Client] Require a certain Skill progress amount before sending packet 2018-05-01 19:34:21 +03:00
David Cernat
1b1e5e86d1 [Client] Avoid sending CellStates to server after initialization
Although b4e8560698 made players instantly able to see each other on minimalist servers that did not change their cells from the default, it created problems with the default CoreScripts where players need to be logged in before receipt of a CellStates packet from them is taken into account, with the result being that a player was recorded as having loaded their initial cells on the server's C++ side but not on the Lua side.

It may simply be best to expect servers to set player cells.
2018-05-01 18:19:52 +03:00
Andrei Kortunov
4872edc5ed Prevent PlaySound overlapping 2018-05-01 16:24:32 +04:00
Andrei Kortunov
22fb1f3403 Play spellcasting effects from objects 2018-04-30 17:12:06 +04:00
David Cernat
099f85be0a [General] Implement PlayerMomentum packet & associated script functions 2018-04-29 23:47:17 +03:00
David Cernat
273179fd5a
Merge pull request #414 from OpenMW/master
Add OpenMW commits up to 29 Apr 2018
2018-04-29 22:35:05 +03:00
David Cernat
4b501a39f4 [General] Implement DoorDestination packet & associated script functions 2018-04-29 22:32:22 +03:00
David Cernat
d47b06fe7a [Server] Prevent SetGameMode() and SetHostname() from crashing server
Previously, turning off communication with the MasterServer from the server config and then attempting to use SetGameMode() or SetHostname() led to a server crash.
2018-04-29 19:50:39 +03:00
scrawl
b995584ad2
Merge pull request #1688 2018-04-29 14:27:55 +00:00
David Cernat
3b07dc4b42 [Client] Send equipment packets whenever an item charge or count changes
Since the beginnings of TES3MP, equipment packets have only been sent whenever an item has been replaced by an item with a different refId, with changes in an item's charge or count not sending a packet (but being included in the next packet sent as a result of a refId change). The reason for this was ostensibly the fact that every single equipment packet always included the details for all 19 equipment items (as per Koncord's original design decision), which would have led to massive packet spam if such a packet was sent every time you shot an arrow or lost a little bit of your armor's condition.

With minimalist equipment packets, it is now viable to send equipment packets whenever any item changes in some way, by having the equipment packet contain only that one item.
2018-04-29 05:40:42 +03:00
David Cernat
399e049d87 [Client] Fix logic for minimal size packets in LocalPlayer
Previously, the index changes were not cleared at the start of their corresponding update functions, which in turn meant that an Attribute/Skill/StatsDynamic/Equipment packet received by a player from the server made that player send back the same packet, as the index changes from it were retained.

Additionally, exchangeFullInfo was not set to false, thus sometimes leading to constant full exchanges of information.
2018-04-27 03:45:17 +03:00
David Cernat
66d5109509 [General] Fix information exchange for players sharing a cell
Previously, two players entering the same cell only sent and received their latest changes for dynamic stats, attributes, skills and equipment when they started sharing that cell.
2018-04-26 21:56:14 +03:00
David Cernat
7db74509e0 Merge pull request #412 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwscript/transformationextensions.cpp
2018-04-25 21:55:32 +03:00
Capostrophic
6b47f72959
Set character preview scene ambient to 0, 0, 0 2018-04-25 15:31:49 +03:00
scrawl
bdf1070852
Merge pull request #1688 2018-04-25 11:54:26 +00:00
scrawl
f0507e6b46
Merge pull request #1686 2018-04-25 10:27:38 +00:00
Capostrophic
bfcdf660f2 Utilize inventory character preview lighting rotation fallback settings 2018-04-23 22:48:15 +03:00
Capostrophic
9073e4d4ba Initialize playlist file list in playPlaylist (fixes #4134) 2018-04-22 23:21:29 +03:00
Capostrophic
b69e812a52 Utilize inventory character preview lighting color fallback settings 2018-04-22 22:37:27 +03:00
scrawl
d8d26f1de8
Merge pull request #1685 2018-04-22 15:34:31 +00:00
scrawl
ec4e2f0064
Merge pull request #1684 2018-04-22 15:27:31 +00:00
David Cernat
608dcbafe6 [Client] Fix skill updates for LocalPlayer partially broken by 78441c769a 2018-04-22 11:22:36 +03:00
Evgeny Kurnevsky
c025b8f8f3
Remove useless comparison. 2018-04-21 17:10:49 +03:00
David Cernat
02eef933fd
Merge pull request #411 from OpenMW/master
Add OpenMW commits up to 19 Apr 2018
2018-04-21 17:00:55 +03:00
David Cernat
a541d7df3c [General] Rework PlayerStatsDynamic packets so they are of minimal size
(cherry picked from commit fc5e883160)
2018-04-21 00:43:49 +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
Capostrophic
37dc3200d1 Inherit the calling object scale in PlaceAt (fixes #4308) 2018-04-20 00:15:26 +03:00
David Cernat
c5b08d6109 [General] Simplify storing of attribute and skill index changes
(cherry picked from commit bd9e8bd10f)
2018-04-19 23:28:03 +03:00
David Cernat
2c77d5f498 [General] Set enforcedLogLevel to -1 when initializing BasePlayer 2018-04-19 20:42:27 +03:00
David Cernat
7b702bf8c2 [General] Add and use utility function for int value checks in vectors
(cherry picked from commit a796f81444)
2018-04-19 18:16:10 +03:00
David Cernat
b6099024df [General] Rework PlayerAttribute packets so they are of minimal size
Previously, whenever a single attribute value changed for a player, that player then sent a PlayerAttribute packet with all values for all 8 attributes.

This did not cause anywhere as much packet spam as PlayerSkill used to, but there was no good reason not to fix it as well.

(cherry picked from commit b0965f094a)
2018-04-19 17:26:20 +03:00
David Cernat
78441c769a [General] Rework PlayerSkill packets so they are of minimal size
Previously, whenever a single skill value changed for a player, that player then sent a PlayerSkill packet with all values for all 27 skills, plus the player's progress towards the next level and the bonuses to each attribute on the next level up as the result of sklll increases thus far.

This commit makes PlayerSkill contain only the values of specific skills, moves the player's progress towards the next level to PlayerLevel packets, and moves the bonuses to each attribute on the next level up to PlayerAttribute packets.

Players now also send a PlayerSkill packet whenever their progress towards a new point in a skill changes. This was previously avoided so as to not have massive packet spam.

(cherry picked from commit ef79a98544)
2018-04-19 15:18:38 +03:00
scrawl
5d1b40c5ea
Merge pull request #1678 2018-04-19 12:18:24 +00:00
David Cernat
af4fcb7261 [Client] Don't force skill update on cell change
Previously, an attempt by the server to simultaneously change a player's cell and skills (as you'd expect when a player file is loaded) led to:

1) The server sending the cell packet first and the skill packet afterwards

2) The player receiving the cell packet and sending their own skill packet as part of the client's forced skill update

3) The player receiving the skill packet from the server

4) The server receiving the skill packet from the player

The result was that, if the player then left the server without sending another skill packet, the server's memory retained the skills the player had sent instead of the skills it had sent to the player.

This is the first step in a solution to that situation and similar ones.

(cherry picked from commit cac4684986)

Note: In 0.6.x, this was only a problem if a player's cell was set by the server first and their skills were set next, i.e. this was not a problem in the default CoreScripts because the opposite order used there masked the problem. It was a more significant problem in 0.7 because all packets were queued for a player and sent in a specific hardcoded order.
2018-04-19 14:22:14 +03:00
David Cernat
57070b7f5c [Client] Disable automatic transition to other chargen menus from OpenMW
Previously, after finishing the TES3MP chargen once, mCreationStage was set to 4 in OpenMW, which in turn made it impossible to go through only specific chargen menus again as the result of the relevant TES3MP script function (tes3mp.SetCharGenStage(pid, startStage, endStage) in 0.6.3, player:setCharGenStages(startStage, endStage) in 0.7). In other words, trying to allow a player to just choose their class again made it so the player started at that menu and went through all the other subsequent menus as well, i.e. the player went through the class, birthsign and review menus.
2018-04-19 13:47:42 +03:00
David Cernat
28f1c1b0d3 [General] Rework CharGen slightly for clarity purposes
Previously, charGenStage.end was doing double duty as both the variable indicating the number of CharGen stages and – when set to 0 – the variable indicating that CharGen was over. The latter role is now filled by a new boolean.

(cherry picked from commit 926106cf8c)
2018-04-19 13:25:29 +03:00
David Cernat
9d46de88e0 [Client] Send cell states correctly after inputting name
Previously, initial cell states were sent in LocalPlayer::processCharGen() and were ignored by the server because the player was not yet regarded as loaded. The result was that existing players logging in could not see each other until they went through at least one cell change.

(cherry picked from commit b4e8560698)

# Conflicts:
#	apps/openmw/mwmp/LocalPlayer.cpp
2018-04-18 20:30:48 +03:00
David Cernat
306252ecdc [Server] Fix confusing script function names 2018-04-18 19:10:58 +03:00
Capostrophic
8617d0603b Display a message if a spell the player tries to use via a quick key is missing (fixes #4391) 2018-04-18 19:10:46 +03:00
David Cernat
9e5ddeac50
Merge pull request #408 from OpenMW/master
Add OpenMW commits up to 18 Apr 2018
2018-04-18 18:05:09 +03:00
tri4ng1e
d310d36ea3
[Fix] Some PVS-Studio and cppcheck fixes 2018-04-18 12:36:10 +00:00
tri4ng1e
d4d1703bcf
Some PVS-Studio and cppcheck fixes
cppcheck:
[apps/esmtool/record.cpp:697]: (performance) Prefer prefix ++/-- operators for non-primitive types.
[apps/esmtool/record.cpp:1126]: (performance) Prefer prefix ++/-- operators for non-primitive types.
[apps/esmtool/record.cpp:1138]: (performance) Prefer prefix ++/-- operators for non-primitive types.
[apps/niftest/niftest.cpp:36]: (performance) Function parameter 'filename' should be passed by reference.
[apps/niftest/niftest.cpp:41]: (performance) Function parameter 'filename' should be passed by reference.
[apps/opencs/model/prefs/boolsetting.cpp:25]: (warning) Possible leak in public function. The pointer 'mWidget' is not deallocated before it is allocated.
[apps/opencs/model/prefs/shortcuteventhandler.cpp:52]: (warning) Return value of std::remove() ignored. Elements remain in container.
[apps/openmw/mwstate/quicksavemanager.cpp:5]: (performance) Variable 'mSaveName' is assigned in constructor body. Consider performing initialization in initialization list.

PVS-Studio:
apps/opencs/model/filter/parser.cpp  582  warn  V560 A part of conditional expression is always true: allowPredefined.
apps/opencs/view/world/referencecreator.cpp  67  warn  V547 Expression '!errors.empty()' is always false.
apps/opencs/view/world/referencecreator.cpp  74  warn  V547 Expression '!errors.empty()' is always false.
apps/opencs/view/doc/loader.cpp  170  warn  V560 A part of conditional expression is always true: !completed.
apps/opencs/view/doc/loader.cpp  170  warn  V560 A part of conditional expression is always true: !error.empty().
apps/opencs/model/tools/pathgridcheck.cpp  32  err  V517 The use of 'if (A) {...} else if (A) {...}' pattern was detected. There is a probability of logical error presence. Check lines: 32, 34.
apps/opencs/model/world/refidadapterimp.cpp  1376  err  V547 Expression 'subColIndex < 3' is always true.

apps/openmw/mwgui/widgets.hpp  318  warn  V703 It is odd that the 'mEnableRepeat' field in derived class 'MWScrollBar' overwrites field in base class 'ScrollBar'. Check lines: widgets.hpp:318, MyGUI_ScrollBar.h:179.
apps/openmw/mwgui/widgets.hpp  319  warn  V703 It is odd that the 'mRepeatTriggerTime' field in derived class 'MWScrollBar' overwrites field in base class 'ScrollBar'. Check lines: widgets.hpp:319, MyGUI_ScrollBar.h:180.
apps/openmw/mwgui/widgets.hpp  320  warn  V703 It is odd that the 'mRepeatStepTime' field in derived class 'MWScrollBar' overwrites field in base class 'ScrollBar'. Check lines: widgets.hpp:320, MyGUI_ScrollBar.h:181
apps/openmw/mwmechanics/actors.cpp  1425  warn  V547 Expression '!detected' is always true.
apps/openmw/mwmechanics/character.cpp  2155  err  V547 Expression 'mode == 0' is always true.
apps/openmw/mwmechanics/character.cpp  1192  warn  V592 The expression was enclosed by parentheses twice: ((expression)). One pair of parentheses is unnecessary or misprint is present.
apps/openmw/mwmechanics/character.cpp  521  warn  V560 A part of conditional expression is always true: (idle == mIdleState).
apps/openmw/mwmechanics/pathfinding.cpp  317  err  V547 Expression 'mPath.size() >= 2' is always true.
apps/openmw/mwscript/interpretercontext.cpp  409  warn  V560 A part of conditional expression is always false: rank > 9.
apps/openmw/mwgui/windowbase.cpp  28  warn  V560 A part of conditional expression is always true: !visible.
apps/openmw/mwgui/journalwindow.cpp  561  warn  V547 Expression '!mAllQuests' is always false.
apps/openmw/mwgui/referenceinterface.cpp  18  warn  V571 Recurring check. The '!mPtr.isEmpty()' condition was already verified in line 16.
apps/openmw/mwworld/scene.cpp  463  warn  V547 Expression 'adjustPlayerPos' is always true.
apps/openmw/mwworld/worldimp.cpp  409  err  V766 An item with the same key '"sCompanionShare"' has already been added.
apps/openmw/mwworld/cellstore.cpp  691  warn  V519 The 'state.mWaterLevel' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 689, 691.
apps/openmw/mwworld/weather.cpp  1125  warn  V519 The 'mResult.mParticleEffect' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 1123, 1125.
apps/openmw/mwworld/weather.cpp  1137  warn  V519 The 'mResult.mParticleEffect' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 1135, 1137.

apps/wizard/unshield/unshieldworker.cpp  475  warn  V728 An excessive check can be simplified. The '(A && B) || (!A && !B)' expression is equivalent to the 'bool(A) == bool(B)' expression.
apps/wizard/installationpage.cpp  163  warn  V735 Possibly an incorrect HTML. The "</p" closing tag was encountered, while the "</span" tag was expected.

components/fontloader/fontloader.cpp  427  err  V547 Expression 'i == 1' is always true.
components/nifosg/nifloader.cpp  282  warn  V519 The 'created' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 278, 282.
components/esm/loadregn.cpp  119  err  V586 The 'clear' function is called twice for deallocation of the same resource. Check lines: 112, 119.
components/esm/cellref.cpp  178  warn  V581 The conditional expressions of the 'if' statements situated alongside each other are identical. Check lines: 175, 178.
components/esmterrain/storage.cpp  235  warn  V560 A part of conditional expression is always true: colStart == 0.
components/esmterrain/storage.cpp  237  warn  V560 A part of conditional expression is always true: rowStart == 0.
2018-04-18 12:36:10 +00:00
David Cernat
311f770de7 [Server] Document script functions, part 4
Additionally, clean up some variable names.
2018-04-18 11:02:18 +03:00
David Cernat
76e7392a84 [Server] Create ShapeshiftFunctions and move relevant functions there 2018-04-18 10:45:39 +03:00
David Cernat
2bb7a4253e [Server] Forcibly kick players after too many handshake attempts 2018-04-18 10:16:38 +03:00
Andreas Sturmlechner
2c9d46a60b
Fix build with Qt 5.11_beta3 (dropping qt5_use_modules) 2018-04-17 23:03:56 +02:00
David Cernat
17678ee60f
Merge pull request #407 from OpenMW/master
Add OpenMW commits up to 17 Apr 2018
2018-04-17 15:25:28 +03:00
David Cernat
50fe54af5d [Client] Update DedicatedPlayer creature if displayCreatureName changes 2018-04-17 15:23:10 +03:00
David Cernat
36e0f0471a [Server] Add SetCreatureNameDisplayState script function 2018-04-17 15:04:18 +03:00
Nelsson Huotari
af558e07a3 implement +6 icons 2018-04-15 12:47:52 +03:00