1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-30 04:45:33 +00:00
Commit graph

2727 commits

Author SHA1 Message Date
David Cernat
8df08c7d10 [General] Implement PlayerItemUse packet
Players can no longer unilaterally use items on themselves in their inventory. When they try to use an item, they send a PlayerItemUse packet to the server with the item's details. A serverside script can then check the item and either send the packet back to make the item use go through or drop it.
2018-08-09 18:25:20 +03:00
David Cernat
b57807407a [General] Implement RecordDynamic packet, part 1
Spell, potion, enchantment, creature, NPC, armor, book, clothing, miscellaneous and weapon record data can now be sent in a RecordDynamic packet. Additionally, the packets include data related to associated magical effects (for spells, potions and enchantments), data related to default inventory contents (for creatures and NPCs) and data related to body parts affected (for armor and clothing).

The server now has associated script functions for setting most of the details of the above, with the main exception being individual creature and NPC stats.

Records can either be created entirely from scratch or can use an existing record (set via the baseId variable) as a starting point for their values. In the latter case, only the values that are specifically set override the starting values. Creature and NPC records also have an inventoryBaseId that can be used on top of the baseId to base their inventories on another existing record.

The client's RecordHelper class has been heavily expanded to allow for the above mentioned functionality.

When players create spells, potions and enchantments as part of regular gameplay, they send RecordDynamic packets that provide the server with the complete details of the records that should be created. When they create enchantments, they also provide the server with armor, book, clothing and weapon records corresponding to the items they've enchanted.

This functionality added by this packet was originally supposed to be exclusive to the rewrite, but I've gone ahead and tried to provide it for the pre-rewrite in a way that can mostly be reused for the rewrite.
2018-07-30 10:56:26 +03:00
David Cernat
d93b67ef21 [General] Sync soul refIds for items and add related script functions 2018-07-26 22:37:04 +03:00
David Cernat
8fbed1f808 [General] Remove custom data from PlayerSpellbook packet
It has never made sense to have custom spell data in PlayerSpellbook packets, so it has been removed.
2018-07-24 20:58:55 +03:00
David Cernat
36ac2d9de4 [Client] Set packetOrigin for all ObjectList packets sent 2018-07-23 01:39:43 +03:00
David Cernat
63a86f145d [Client] Record type of each InterpreterContext for later checking 2018-07-23 00:46:07 +03:00
David Cernat
2189ea1a63 [Client] Clean up sending of Container packets 2018-07-22 16:43:27 +03:00
David Cernat
21d5bb4d4e
Merge pull request #460 from OpenMW/master
Add 0.7.0 commits up to 20 Jul 2018
2018-07-21 05:59:57 +03:00
David Cernat
b6db570d9c [Client] Display uniqueIndexes in a less confusing way in console 2018-07-19 11:57:06 +03:00
Andrei Kortunov
edd5769022 Show magic items count in spells window (feature #4509) 2018-07-16 14:11:03 +04:00
David Cernat
6cb5ac6e63 Merge pull request #457 from OpenMW/master while resolving conflicts
Conflicts:
	CMakeLists.txt
	apps/openmw/engine.cpp
	apps/openmw/main.cpp
	apps/openmw/mwgui/windowmanagerimp.cpp
	apps/openmw/mwmechanics/character.cpp
	components/CMakeLists.txt
2018-07-14 03:57:05 +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
Marc Zinnschlag
ee759effce Merged pull request #1798 2018-07-11 10:06:30 +02:00
Andrei Kortunov
c77c50e92b Make Equip console command to bypass most of restrictions (bug #4460) 2018-07-11 00:06:21 +04:00
David Cernat
4d4bced929 [Client] Allow singleplayer-only saves in main menu during multiplayer 2018-07-09 22:53:18 +03:00
terrabyte25
48296a7452
Update trainingwindow.cpp 2018-07-09 23:13:52 +04:00
David Cernat
6ff7fa525e [Client] Disable autosaving when waiting 2018-07-08 23:04:30 +03:00
Capostrophic
bded697f07
Make Goodbye block using hyperlinks 2018-07-06 19:38:36 +03:00
David Cernat
c2411982d2 [Client] Log object refNumIndexes and mpNums in a consistent way 2018-07-04 21:54:11 +03:00
David Cernat
7775780ad7 [Cllient] Update multiplayer code for handling quick keys 2018-07-04 05:56:10 +03:00
David Cernat
a236ffc4be Merge pull request #456 from OpenMW/master while resolving conflicts
# Conflicts:
#	.travis.yml
#	README.md
#	apps/openmw/mwgui/quickkeysmenu.cpp
#	apps/openmw/mwmechanics/actors.cpp
#	apps/openmw/mwmechanics/combat.cpp
2018-07-04 01:52:29 +03:00
Thunderforge
7cbc4eeb49 Adding missing override keywords
Prevents compiler warnings such as this:

```
/Users/Will/CLionProjects/OpenMW/apps/openmw/mwgui/windowbase.hpp:65:22: warning: 'onOpen' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
        virtual void onOpen();
                     ^
/Users/Will/CLionProjects/OpenMW/apps/openmw/mwgui/windowbase.hpp:38:22: note: overridden virtual function is here
        virtual void onOpen() {}
                     ^
```
2018-07-01 19:17:50 -05:00
Finbar Crago
5d9035c6b2 [Fixes #4482] Missing HandToHand on key quick key 0 (introduced in MR !11 for issue #4480)
because apparently i can't count to ten...
2018-07-01 13:46:23 +10:00
Finbar Crago
09c9bd34c3 cleanup more unnecessary struct keywords... 2018-06-30 12:43:50 +10:00
Finbar Crago
596be205c1 cleanup unnecessary struct keywords... 2018-06-29 23:43:51 +10:00
Finbar Crago
2722ca50fb fix QuickKeysMenu crash on reopening window after item drop + pickup [see: !11#note_85086570] 2018-06-29 23:32:05 +10:00
Finbar Crago
ed71656ea6 fix updateActivatedQuickKey() crash
keyboard numbers don't start at zero...
2018-06-29 01:58:57 +10:00
Finbar Crago
24d5fb09da fix crash on simultaneous key presses 2018-06-28 22:55:02 +10:00
Finbar Crago
80a3f0a0d4 switch mSelectedIndex/mActivatedIndex int to mSelected/mActivated keyData pointers 2018-06-28 17:02:25 +10:00
Finbar Crago
335e2c5897 add keyData struct + general cleanup 2018-06-28 13:27:08 +10:00
David Cernat
b81ca18316 [Client] Don't clear container Ptrs when disposing of corpses
The reason for this is that only the server should be determine whether a corpse can be disposed of or not.
2018-06-28 01:45:15 +03:00
Finbar Crago
cac6d59140 Merge branch 'master' into fix_quickkey_segfalt 2018-06-27 12:58:43 +10:00
Finbar Crago
43c9fd4cec check MWWorld::Ptr != NULL for MWGui ItemPtr tooltips 2018-06-26 13:41:53 +10:00
Finbar Crago
186ec8c50f rm ContainerStore/refItem 2018-06-26 13:35:04 +10:00
Marc Zinnschlag
705b2dca0e Merged pull request #1777 2018-06-25 11:58:12 +02:00
Finbar Crago
46c6abcf54 add string vectors for name/id in QuickKeysMenu for item lookups 2018-06-25 16:02:28 +10:00
Andrei Kortunov
441463327c Validate map size 2018-06-25 09:57:40 +04:00
Capostrophic
35b0546737 Consider <p> tag when discarding post-EOL tag text (regression #4473) 2018-06-23 14:27:40 +03:00
Finbar Crago
da4c55d5ad prevent segfalt in QuickKeysMenu when item has been removed from player inventory
added a MWWorld::ContainerStore to hold item copies which are then used to find
real items with findReplacement().

(storing the RefId could be a better solution but would probably leave tooltips broken...)
2018-06-23 17:51:32 +10:00
David Cernat
fd05beef94 [Client] Don't delete disposed of corpses on client
Clients should instead await a server reply approving the deletion.
2018-06-20 02:01:19 +03:00
Miloslav Číž
d629c30fdb
Merge branch 'master' into screenshot360 2018-06-13 21:16:28 +02:00
Andrei Kortunov
61c968d550 Ignore broken items when search for replacement (bug #4453) 2018-06-13 18:39:02 +04:00
Capostrophic
1c8a20a54a Set ok button focus in settings window by default (fixes #4368) 2018-06-12 19:45:43 +03:00
Bret Curtis
7310e3c8c2
Merge pull request #1748 from akortunov/bookfix
Do not show any book text after last <BR> tag
2018-06-11 17:08:26 +02:00
Andrei Kortunov
66a46ff03c Do not show any book text after last <BR> tag. 2018-06-11 11:22:56 +04:00
Capostrophic
d43766d3c9 Make WakeUpPC interrupt waiting if it was supposed to be (fixes #3629) 2018-06-10 18:42:18 +03: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
Capostrophic
191cc76378 Consider faction ownerships in item stolen checks (fixes #4293) 2018-06-03 10:22:20 +03: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