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

588 commits

Author SHA1 Message Date
Andrei Kortunov
a08048da4e Avoid dereference after null check 2018-08-01 19:30:30 +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
Andrei Kortunov
c77c50e92b Make Equip console command to bypass most of restrictions (bug #4460) 2018-07-11 00:06:21 +04:00
David Cernat
7775780ad7 [Cllient] Update multiplayer code for handling quick keys 2018-07-04 05:56:10 +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
Bret Curtis
c75d774356
Merge pull request #1692 from akortunov/playsound
Prevent PlaySound overlapping
2018-05-15 19:03:01 +02: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
David Cernat
32d71de2f5 Update MapWindow every frame, not just when it's open (bug #4279) 2018-05-09 07:33:45 +03: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
4872edc5ed Prevent PlaySound overlapping 2018-05-01 16:24:32 +04:00
David Cernat
ac82124a5d Merge pull request #395 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwmechanics/actors.cpp
2018-03-29 07:28:30 +03:00
David Cernat
bb15ee9215 [Client] Make it possible to get ContainerWindow from elsewhere in code 2018-03-24 09:00:15 +02:00
scrawl
edb57306b6
Merge pull request #1628 2018-03-16 23:25:29 +00:00
Andrei Kortunov
e0aa5e8e79 Prevent overlapping for journal and books scrolling 2018-03-11 16:19:37 +04:00
David Cernat
b7c6261e16 Merge pull request #392 from OpenMW/master while resolving conflicts
# Conflicts:
#	README.md
2018-03-09 21:07:46 +02:00
scrawl
e81faf5f2f
Add an option to disable GUI keyboard navigation (Bug #4333) 2018-03-08 23:39:35 +00:00
David Cernat
5d4b97645d Merge pull request #374 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/CMakeLists.txt
2018-01-27 22:52:59 +02:00
David Cernat
e3bc11d9eb [Client] Fix ListBox overlap crashes by removing ListBoxes properly 2018-01-27 15:41:11 +02:00
scrawl
2caaa48b91
Workaround to make sure message box remains on top (Fixes #4298) 2018-01-14 00:27:53 +00:00
David Cernat
4caf7ca30a [Client] Add temporary fix for crashes caused by custom GUI elements 2018-01-06 20:16:32 +02:00
David Cernat
db0e0d376e [Client] Use new code to set the console's Ptrs from server scripts
Previously, reusing the console's object selection code made it so using the same Ptr twice in a row was akin to clicking on the same object twice in the console window, i.e. the object was deselected the second time around. Additionally, that same code was setting key focus to the hidden console window, preventing players from moving until they activated another window (such as their inventory or chat window).
2017-12-26 15:04:28 +02:00
David Cernat
cac2c6c1e8 Merge pull request #360 from TES3MP/0.6.1-openmw-updates while resolving conflicts 2017-12-25 02:25:01 +02:00
David Cernat
535fba0cb3 [Client] Finish drag and drops when arrested or teleported by server 2017-12-16 07:21:02 +02:00
David Cernat
d06817a356
Merge pull request #347 from OpenMW/master
Add OpenMW commits up to 25 Nov 2017
2017-11-25 08:54:22 +02:00
David Cernat
656453725b
Merge pull request #343 from OpenMW/master
Add OpenMW commits up to 23 Nov 2017
2017-11-23 04:51:13 +02:00
David Cernat
6668b9ab42 [General] Implement ConsoleCommand packet 2017-11-23 00:21:47 +02:00
Andrei Kortunov
3571f7f413 Remove getEncoding() from WindowManager 2017-11-22 08:32:38 +04:00
Andrei Kortunov
f0ca3eabd3 Merge from upstream master 2017-11-21 09:39:54 +04:00
Andrei Kortunov
a83a43e376 Determine when need to use the Cyrillic journal index 2017-11-21 09:32:35 +04:00
Miloslav Číž
ea2bbce68a Fix memory leak in WindowManager 2017-11-18 19:27:09 +01:00
David Cernat
50d5fffb7f [General] Add and implement PlayerQuickKeys packet 2017-10-25 07:21:00 +03:00
David Cernat
3e8d7c8416 Merge pull request #306 from OpenMW/master
Add OpenMW commits up to 7 Oct 2017
2017-10-07 21:54:21 +03:00
scrawl
2805781542 Fix a crash when exit() already hides the window (Fixes #4148) 2017-10-06 16:18:57 +00:00
David Cernat
38247ff086 Merge pull request #303 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwbase/dialoguemanager.hpp
#	apps/openmw/mwdialogue/dialoguemanagerimp.hpp
#	apps/openmw/mwgui/container.cpp
#	apps/openmw/mwgui/windowmanagerimp.cpp
#	apps/openmw/mwscript/dialogueextensions.cpp
2017-10-06 04:10:04 +03:00
scrawl
cd437f094d Fix exiting savegamedialog with 'esc' when no game is running 2017-10-05 18:35:09 +02:00
scrawl
a4737d8417 Use MyGUI frame events for ScreenFader 2017-10-04 16:00:38 +00:00
scrawl
e4f0f7157a Fix pinned windows not being updated 2017-10-04 16:00:37 +00:00
scrawl
49a0922f1b Remove 'visibility mask' gui feature which did not end up being useful 2017-10-04 16:00:37 +00:00
scrawl
7c68ed04b2 Don't require modal windows to be removed in the same order they were added 2017-10-04 16:00:37 +00:00
scrawl
433028e8d7 Fix GUI regressions 2017-10-03 22:07:56 +00:00
Andrei Kortunov
34895157f9 Consider taking items from unconscious NPC as a theft 2017-09-30 20:22:26 +04:00
scrawl
db650df416 Fix 'blocking' messageboxes not handling key focus properly 2017-09-27 21:41:22 +02:00
scrawl
1714271a76 Improve KeyboardNavigation to better handle modal windows
It's no longer possible to cycle to widgets that aren't part of the current modal window.

The window manager will remember the focused widget of a modal window on a limited basis (it'll be discarded when a different modal window opens).
2017-09-27 12:55:58 +00:00
scrawl
475ac46f3e Workaround keyfocus issues in current versions of MyGUI 2017-09-27 12:55:54 +00:00
scrawl
fce9a14986 Hide the mouse cursor until it's used 2017-09-27 12:55:48 +00:00
scrawl
9b91ea5d34 Exit drag-and-drop if dragged item is deleted (Fixes #3097) 2017-09-26 16:51:19 +02:00
scrawl
2ce79e07a4 Refactor dialogue GUI to talk to the dialogue manager, not the other way around and not both ways.
- Fix memory leaks in DialogueWindow
- Fix Link objects being deleted from their own event handler
2017-09-25 23:38:28 +02:00
scrawl
36c192a1dd Undo the console portion of 84657271c7 because it results in the console forgetting its object on opening 2017-09-25 21:15:38 +02:00
scrawl
b7752ec52d Make TradeWindow not depend on DialogueWindow 2017-09-25 18:07:49 +02:00
scrawl
d78e822833 Add 'delay' argument for screen fading operations 2017-09-25 00:47:10 +02:00
scrawl
94b538ac82 Fix crash due to not calling WindowModal::onClose() 2017-09-25 00:47:08 +02:00
scrawl
843106fc61 Handle the wait progress bar as part of the GUI mode 2017-09-25 00:47:06 +02:00
scrawl
9ed1b16553 Extend code that detects whether a key was consumed by the GUI (Fixes #4016) 2017-09-25 00:47:05 +02:00
scrawl
c0d8bef82f Call changeInputMode() from updateVisible() 2017-09-24 19:08:16 +02:00
scrawl
222defc6d8 Extend HUD::clear() 2017-09-24 19:08:16 +02:00
scrawl
f6c227b966 Reset screen faders in clear()
Fixes a black screen when loading a game while waiting/resting.
2017-09-24 19:08:15 +02:00
scrawl
d10985e481 Remove unneeded window pointers 2017-09-24 19:08:15 +02:00
scrawl
f67dbc8aa0 Remove redundant update function 2017-09-24 19:08:15 +02:00
scrawl
e7d2a8a4dc Call clear() for every window 2017-09-24 19:08:15 +02:00
scrawl
c6c01870ec Call onResChange for every window 2017-09-24 19:08:15 +02:00
scrawl
2b03bc0c56 Call WindowBase::onFrame() for every active window 2017-09-24 19:08:15 +02:00
scrawl
ba7ae2663f Use a generic container to delete windows 2017-09-24 19:08:15 +02:00
scrawl
32f9c8058a Remove redundant RestBed gui mode 2017-09-24 19:08:14 +02:00
scrawl
9ead331741 Fix pinned windows showing in other GUI modes 2017-09-24 19:08:14 +02:00
scrawl
5f440a29bd Remember key focus per GUI mode
Among other things, this will remember the focused button in the container window, allowing quick looting of multiple containers.
2017-09-24 19:08:14 +02:00
scrawl
ad4b91131f toggleGui renamed to toggleHud, remove unused variable 2017-09-24 19:08:14 +02:00
scrawl
4fff2e2e34 Refactor exitCurrentGuiMode 2017-09-24 19:08:13 +02:00
scrawl
20766fb508 Associate open/close sounds with the GUI mode 2017-09-24 19:08:13 +02:00
scrawl
531e7ac586 Allow drag-and-drop to be cancelled (Esc or Inventory key) 2017-09-24 19:08:13 +02:00
scrawl
269094ba8d Restore the previous key focus widget when exiting modal dialog 2017-09-24 19:08:13 +02:00
scrawl
84657271c7 Improve WindowManager API with a generic way of passing a Ptr to the opened GUI window 2017-09-24 19:08:12 +02:00
scrawl
3820416277 Refactor the unholy mess that is WindowManager::updateVisible
GUI modes are now defined in a general and extensible way. The next commits are going to take advantage of this.
2017-09-24 19:08:12 +02:00
scrawl
c11fe6788f Add basic keyboard navigation for the GUI
(Shift)Tab cycles, arrow keys move to the next button in that direction, Enter/Space accepts.

Note: Unless MyGUI is hacked to bits, clicking on an empty space will annoyingly reset the key focus. Not sure how to deal with that yet.

The visual highlight for selected buttons requires MyGUI commit 632d007429d0bf0c7d7f6c5db4a08353a63dd839 or later to appear (to be released in 3.2.3).
2017-09-24 19:08:11 +02:00
David Cernat
960b91a53c Merge pull request #290 from OpenMW/master
Add OpenMW commits up to 17 Sep 2017
2017-09-17 10:53:33 +03:00
Chris Robinson
780e82480d Make the PlayMode and PlayType enums scoped
Also shorten them by putting them in the MWSound namespace
2017-09-15 02:36:59 -07:00
David Cernat
bd541b1e5b Merge pull request #287 from OpenMW/master while resolving conflicts
# Conflicts:
#	CMakeLists.txt
#	apps/openmw/CMakeLists.txt
2017-09-12 07:38:49 +03:00
MiroslavR
1e585ac71a Log a warning in case of missing bookart instead of showing a pink rectangle (Fixes #3826) 2017-09-08 22:50:07 +02:00
David Cernat
4468e6ec4a Merge pull request #280 from OpenMW/master while resolving conflicts
# Conflicts:
#	.gitignore
#	apps/openmw/mwmechanics/actors.hpp
#	apps/openmw/mwmechanics/mechanicsmanagerimp.cpp
2017-08-31 15:14:13 +03:00
scrawl
8c6a8ca48d Respect the framelimit in all cases (Fixes #3531)
Affects loading screen, videos & modal dialogs. Also skips rendering if window is minimized.
2017-08-30 21:26:30 +00:00
scrawl
dc53573de4 Merge pull request #1405 from akortunov/stancechangefixes
Do not allow player to change weapon/spell during attack or spellcast
2017-08-29 23:11:23 +00:00
Andrei Kortunov
fb45995a41 Do not allow player to change weapon/spell during attack or spellcasting (bug #2445) 2017-08-29 15:53:23 +04:00
Andrei Kortunov
65d05ee1cd Get only text from clipboard (bug #4025) 2017-08-19 15:32:17 +04:00
David Cernat
721b218cc2 Merge pull request #258 from OpenMW/master while resolving conflicts
# Conflicts:
#	.travis.yml
#	README.md
2017-08-05 00:09:34 +03:00
scrawl
9ac409e61c Merge pull request #1287 from akortunov/spellsorting
Spellbuying menu improvements
2017-07-31 09:43:47 +00:00
Andrei Kortunov
6ab36c0539 Spellbuying menu improvements 2017-07-27 13:20:18 +04:00
David Cernat
500bff9911 Merge pull request #250 from OpenMW/master
Add OpenMW commits up to 27 Jul 2017
2017-07-27 04:01:44 +03:00
Julian
d7aa2a882d improve dialogue window performance 2017-07-26 18:58:27 +02:00
David Cernat
2c1ece79fc Merge pull request #245 from OpenMW/master
Add OpenMW commits up to 22 Jul 2017
2017-07-23 22:02:16 +03:00
scrawl
0e2e23e9f8 Remove tooltip object as part of WindowManager::clear 2017-07-20 20:59:09 +02:00
David Cernat
e3929df38a Merge pull request #239 from OpenMW/master
Add OpenMW commits up to 14 Jul 2017
2017-07-15 09:13:04 +03:00
David Cernat
708d3723eb [Client] Fix client script messagebox buttons that had always broken in tes3mp 2017-07-13 18:58:48 +03:00
Andrei Kortunov
54b4d93f79 Added a special function for GUI sounds playing 2017-07-10 15:48:00 +04:00
David Cernat
71313c5aa6 [General] Implement PlayerMap packet, part 1 2017-07-03 09:28:27 +03:00
David Cernat
ad4b1d05bb [Client] Add comments for GUI additions made by tes3mp 2017-07-03 05:06:07 +03:00
David Cernat
a5484d237b Merge pull request #203 from OpenMW/master
Add OpenMW commits up to 21 Apr 2017, part 2
2017-04-21 21:07:37 +03:00
Andrei Kortunov
f986e3fafa Remove unused code 2017-04-21 18:39:01 +04:00
David Cernat
fec82dc033 Merge pull request #202 from OpenMW/master
Add OpenMW commits up to 21 Apr 2017
2017-04-21 07:58:13 +03:00
Andrei Kortunov
6c1e3a0618 Merged from upstream master 2017-04-21 08:48:22 +04:00
scrawl
1ffb9e1bf3 Remove renderWorldMap() 2017-04-21 00:50:22 +02:00
David Cernat
edb155869b Merge pull request #201 from OpenMW/master
Add OpenMW commits up to 19 Apr 2017
2017-04-19 22:12:33 +03:00
Andrei Kortunov
f0f1df3a96 Properly clear inventory 2017-04-19 20:54:09 +04:00
scrawl
30081393a6 Add InventoryWindow::clear() as part of world cleanup 2017-04-19 18:28:49 +02:00
Andrei Kortunov
c3d49d5ca5 Fixed inventory crash and skipmenu launch 2017-04-12 22:57:32 +04:00
Andrei Kortunov
95ce7637f3 Adds persisted pin (feature #2834, bug #2489) 2017-04-10 10:18:00 +04:00
David Cernat
5eb183bacf Merge pull request #186 from OpenMW/master
Add OpenMW commits up to 15 Mar 2017
2017-03-15 23:13:24 +02:00
Andrei Kortunov
eb81ab5b24 Disables weapon and spells cycling in GUI mode (bugs #2409, #2483, #2645) 2017-03-15 17:07:25 +04:00
David Cernat
df051a777a Merge pull request #181 from OpenMW/master
Add OpenMW commits up to 4 Mar 2017
2017-03-04 22:56:16 +02:00
scrawl
29556a1802 More consistent wording of errors/warnings
A Warning indicates a potential problem in the content file(s) that the user told OpenMW to load. E.g. this might cause an object to not display at all or as intended, however the rest of the game will run fine.

An Error, however, is more likely to be a bug with the engine itself - it means that basic assumptions have been violated and the engine might not run correctly anymore.

The above mostly applies to errors/warnings during game-play; startup issues are handled differently: when a file is completely invalid/corrupted to the point that the engine can not start, that might cause messages that are worded as Error due to the severity of the issue but are not necessarily the engine's fault.

Hopefully, being a little more consistent here will alleviate confusion among users as to when a log message should be reported and to whom.
2017-03-04 21:48:31 +01:00
David Cernat
c32c004516 Merge pull request #151 from OpenMW/master
Add OpenMW commits up to 16 Feb 2017
2017-02-16 11:53:02 +02:00
scrawl
57b585570a Preload magic effect visuals of the player's selected weapon/spell 2017-02-15 21:01:25 +01:00
David Cernat
2ed9ae5739 Merge pull request #149 from OpenMW/master
Add OpenMW commits up to 14 Feb 2017
2017-02-14 10:27:53 +02:00
scrawl
72c6b11cf8 Move global map render to the worker thread 2017-02-14 07:58:16 +01:00
Koncord
536715cf46 Cleanup tes3mp headers 2016-12-16 16:59:15 +08:00
David Cernat
c6eac31d94 Merge pull request #106 from OpenMW/master
Add OpenMW changes up to 20 Nov
2016-11-20 01:20:25 +02:00
MiroslavR
8f91732b09 Show starting abilities, powers and spells in stat-review window (Fixes #2410) 2016-11-19 21:51:19 +01:00
David Cernat
3a733eb122 Make tes3mp includes consistent 2016-11-17 17:16:25 +02:00
David Cernat
48ca4d29bc Merge pull request #99 from OpenMW/master
Add OpenMW commits up to 7 Nov
2016-11-08 00:24:39 +02:00
MiroslavR
e80636f0ca Improve performance of repairing/recharging (Fixes #2493) 2016-11-06 11:01:46 +01:00
Koncord
adb49b7c7d Add New GUI dialog: ListBox
Example:

local GUI_LISTBOX = 42

function OnPlayerSendMessage(pid, message)
    if message == "/lb" then
        local items = "consectetur adipiscing elit\nsed do eiusmod tempor incididunt ut labore\net dolore magna aliqua." -- items can be separated through newline
        local label = "Lorem ipsum dolor sit amet"
        tes3mp.ListBox(pid, GUI_LISTBOX, label, items)
    end
end

function OnGUIAction(pid, idGui, data)
    if idGui == GUI_LISTBOX then
        print("ID: " .. idGui .. " data: " .. tostring(data)) -- if value higher than last item id
    end
end
2016-11-04 00:24:16 +08:00
Koncord
4c2415e9db Fix focus for InputDialog
Created a special pipe for future GUI modes.
2016-08-27 13:40:11 +08:00
scrawl
dda5bfbc9f CharacterPreview no longer depends on osgViewer 2016-08-16 22:47:45 +02:00
scrawl
8bfcf259a3 LocalMap no longer depends on osgViewer 2016-08-16 22:37:44 +02:00
scrawl
92c2a10de4 Fall back to 'warrior' for not found class images (Fixes #3228) 2016-03-24 16:52:16 +01:00
scrawl
60a12b3dee Use MyGUI's castType function 2016-03-05 20:00:51 +01:00
scrawl
eaf3f5a829 Remove unused arguments 2016-02-13 04:14:05 +01:00
scrawl
9e53e12c70 More renaming of TextureManager -> ImageManager 2016-02-05 23:10:27 +01:00
scrawl
f99f403dda Rename TextureManager to ImageManager 2016-02-05 23:03:53 +01:00
scrawl
6ef848b7c5 Remove TextureManager::getTexture2D
Instead use getImage and let the caller create the Texture. Sharing of textures is then handled in post by the SharedStateManager.

This is closer to what the OSG serializer does.

Streamlines the TextureManager and will make it easier to multithread.
2016-02-05 23:01:11 +01:00
scrawl
bd655c20fd Refactor local map updates
We don't need the delay any more because the rendering itself is part of the normal rendering traversal - so it's delayed anyway.

Don't request maps that we're not actually using (i.e. with cell grid sizes higher than the default 3, we were rendering more maps than the map window could show).
2016-02-05 01:19:45 +01:00
scrawl
05f1fbf593 WindowManager: explicitely pass the ESMStore
Fixes potential crash when the loading screen layout tries to retrieve a GMST value via #{GMST} syntax before the World has been created.

Possibly related to Bug #2854.
2015-12-09 01:09:09 +01:00
scrawl
152f415b9a Change texture coordinates when falling back to player_hit_01 2015-12-07 18:32:58 +01:00
scrawl
9d4af59860 Don't attempt to create quest log buttons if textures are unavailable (Fixes #3063) 2015-12-07 15:33:04 +01:00
scrawl
5981e1cbb3 Don't create the werewolf overlay if its texture is not available
Avoiding a warning in the log when Bloodmoon is not installed
2015-12-07 14:41:33 +01:00
scrawl
9897400d97 Restore the previous key focus widget after playing video 2015-11-12 19:03:24 +01:00
scrawl
516f2765a1 Use the ScalingLayer for journal, books and scrolls 2015-11-08 18:30:22 +01:00
scrawl
6c12c9a467 Layer renaming fix 2015-11-07 19:45:30 +01:00
scrawl
d85d74e615 Use AdditiveLayer for the hit fader 2015-11-07 18:05:16 +01:00
scrawl
a90ef8afd0 layer renaming 2015-11-07 17:49:11 +01:00
scrawl
57b9eafa0f osgMyGUI: implement AdditiveLayer 2015-11-07 17:45:22 +01:00
scrawl
51f3a8fec6 osgMyGUI: move Platform methods to the .cpp file 2015-11-07 17:39:31 +01:00
scrawl
13c7235b6b Remove old FPS setting code 2015-11-07 00:13:13 +01:00
scrawl
6e69808129 Fix the frameNumber not being incremented in certain frames 2015-11-06 23:14:27 +01:00
scrawl
fd48c1d6f4 Make the Equip script function "use" items (drink potion, use alchemy, etc) 2015-09-07 22:09:08 +02:00
Marc Zinnschlag
a52b947efe Merge remote-tracking branch 'dteviot/MagicEffectsRefactorDraft3' 2015-08-23 12:11:30 +02:00
scrawl
52d8bc555c Add missing checks to see if spell still exists when loading a savegame (Bug #2883) 2015-08-21 14:24:49 +02:00
dteviot
77a1d947cc extracted MWMechanics::getPlayer() 2015-08-21 21:12:39 +12:00
scrawl
e8c9d3ea2a Fix cell names on world map not always being translated (Fixes #2832) 2015-08-13 17:08:21 +02:00
Marc Zinnschlag
d2cd151f77 Merge remote-tracking branch 'kunesj/master' 2015-07-20 09:45:14 +02:00
Jiří Kuneš
a5b4e087c5 define owned colours in settings.cfg 2015-07-18 22:17:46 +02:00
scrawl
77f1387da8 Include cleanup 2015-07-18 20:36:28 +02:00