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

1435 commits

Author SHA1 Message Date
Emanuel Guevel
bbfd7f4c9d Disable equipped item re-stacking when the item is removed from inventory
The item was not removed if it was re-stacked.
2013-11-10 02:45:17 +01:00
Emanuel Guevel
d2dcf0b203 Add a warning comment to RefData::setCount() 2013-11-10 02:45:17 +01:00
Emanuel Guevel
467bd91651 Update actor model on inventory change 2013-11-10 02:45:17 +01:00
Emanuel Guevel
37e91a278e Add InventoryStore::unequipItem() 2013-11-10 02:45:17 +01:00
Emanuel Guevel
12dbbde1e3 InvStore::unequipSlot: return an iterator to the unequipped item 2013-11-10 02:45:17 +01:00
Emanuel Guevel
59c963b6cc Auto-equip items when a clothe or an armor is removed from inventory
This fix auto-equip on corpses.
2013-11-10 02:45:16 +01:00
Emanuel Guevel
750f1fd760 Edit ContainerStore::stacks for clarifications and correctness
Rename arguments and fix some potential errors (add checks).
2013-11-10 02:45:16 +01:00
Emanuel Guevel
26e4ccb8c2 Cosmetic changes
Rename ContainerStore::addImpl to addNewStack (it was confusing, since
ContainerStore had methods named 'addImp' and 'addImpl').
2013-11-10 02:45:16 +01:00
Emanuel Guevel
aefa54d72d Pass item count to ManualRef constructor
This remove the need to call setCount in multiple places.
2013-11-10 02:45:16 +01:00
Emanuel Guevel
0691978603 Add item count to ManualRef constructor as optional argument 2013-11-10 02:45:16 +01:00
Emanuel Guevel
8ff747fbef Move some deleteObject logic from OpDelete to MWWorld::deleteObject 2013-11-10 02:45:16 +01:00
Emanuel Guevel
2786530430 Edit InventoryStore::equip() to call the new unequipSlot function…
…to unequip previously equipped item.
2013-11-10 02:45:16 +01:00
Emanuel Guevel
52cef19982 Update weapon/magic icons when items are removed from player inventory 2013-11-10 02:45:16 +01:00
Emanuel Guevel
d05baa8c22 Add method InventoryStore::unequipSlot()
This will permit to do run a treatment when an item is unequipped.
2013-11-10 02:45:16 +01:00
Emanuel Guevel
10abb9d297 Call ContainerStore::remove() to remove items from inventory
Make placeObject() and dropObjectOnGround() in MWWorld to copy objects
(and indicate it clearly).

Enchanting an item now unequips it.
2013-11-10 02:45:16 +01:00
Emanuel Guevel
23b8206bdc Add remove methods to MWWorld::ContainerStore 2013-11-10 02:45:16 +01:00
Marc Zinnschlag
a198751f21 Merge remote-tracking branch 'scrawl/magic' 2013-11-09 17:00:27 +01:00
Marc Zinnschlag
8be3ffc2a0 Merge remote-tracking branch 'scrawl/magic'
Conflicts:
	apps/openmw/mwworld/worldimp.cpp
2013-11-09 10:54:51 +01:00
scrawl
3ea7d58ca8 Advance skill on successfull spell cast 2013-11-09 10:34:46 +01:00
scrawl
976344f0a3 Handle CastOnce enchantments 2013-11-09 08:07:40 +01:00
scrawl
1051611ffa Added spell failure sound 2013-11-09 07:59:17 +01:00
scrawl
cbe96a2170 Refactor ActiveSpells to track range type. Added basic self range magic. 2013-11-09 07:51:46 +01:00
Marc Zinnschlag
2d4a6c0edf cleaned up ID handling in INFO record (including a ESMTool bug fix) 2013-11-05 12:56:20 +01:00
Alexander "Ace" Olofsson
468e8e3635 Missing iostream include 2013-11-04 10:36:22 +01:00
Marc Zinnschlag
dec1483fa4 Merge branch 'saving' into openmw-27 2013-11-04 08:57:32 +01:00
Lukasz Gromanowski
afce10cf37 Fixes #597: Assertion `dialogue->mId == id' failed in esmstore.cpp
It seems that assertion was unnecessary, after removing it, dialogs
related to moon-and-star in "Path of the Incarnate" quest were
correctly loaded (dumped DialInfo records were correct).

Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-11-02 16:39:05 +01:00
gus
d587f3c946 Merge branch 'master' of https://github.com/zinnschlag/openmw.git into AICombat
Conflicts:
	apps/openmw/mwmechanics/actors.cpp
	apps/openmw/mwscript/docs/vmformat.txt
2013-10-31 09:51:17 +01:00
gus
d7584f9df7 getLineOfSight, no script instruction yet 2013-10-28 18:01:40 +01:00
Marc Zinnschlag
c995533e07 Merge branch 'dialogue' into saving
Conflicts:
	apps/opencs/model/world/columnimp.hpp
	apps/opencs/model/world/columns.cpp
	apps/opencs/model/world/columns.hpp
	apps/opencs/model/world/data.cpp
	components/esm/loaddial.hpp
2013-10-21 16:45:43 +02:00
Marc Zinnschlag
19bd0f90b9 Merge remote-tracking branch 'rainChu/torches' 2013-10-16 21:24:45 +02:00
Alex "rainChu" Haddad
65818155d8 Fixed punctuation consistency 2013-10-16 15:14:35 -04:00
Alex "rainChu" Haddad
30ee3c5cf6 Equipped torches and lights run out of fuel 2013-10-15 21:50:14 -04:00
Marc Zinnschlag
708cde2688 Merge remote-tracking branch 'jordan-ayers/topic/COC-Exterior-Cell-Selection' 2013-10-12 23:18:19 +02:00
Jordan Ayers
141382b8c0 COC Command: Exterior cell selection fix.
Return the northernmost cell of the easternmost matching column for Ext. cells.
2013-10-12 14:48:37 -05:00
Marc Zinnschlag
608d154ad7 Merge remote-tracking branch 'rainChu/master' 2013-10-12 20:31:33 +02:00
Marc Zinnschlag
87cd5d4267 Merge remote-tracking branch 'potatoesmaster/DisableLevitation' 2013-10-12 13:31:06 +02:00
Emanuel Guevel
4265dddc40 Add MWWorld::isSlowFalling(Ptr) 2013-10-02 23:34:25 +02:00
Emanuel Guevel
496f786c2a Implement Disable/EnableLevitation script functions
Totally copied on Disable/EnableTeleporting implementation.
Thanks KittyCat!
2013-10-02 15:33:20 +02:00
Emanuel Guevel
b8c60dabb3 Reintroduce Acrobatics changes made by Glorf
Advance Acrobatics skill on jump and on landing,
apply fall damage on landing.
2013-10-01 23:35:34 +02:00
Alex "rainChu" Haddad
00a776a1a8 Fixed compilation failure on my machine
Fixed shared records not being populated before the player record is
moved.
2013-09-30 02:54:20 -04:00
Lukasz Gromanowski
9c2145eda1 Issue #913: Merge --master and --plugin switches
Merged master/plugin switches into content in openmw
and mwiniimporter.

Extension in content files is now required.

Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-09-29 09:11:57 +02:00
graffy76
70ac14b8ba Merge branch 'master' into esxSelector 2013-09-21 23:07:53 -05:00
graffy76
cfdc19c427 Renamed esxSelector to contentSelector
Fixed datafilespage model implementation in launcher
Filtered addons in table view by selected game file
2013-09-21 23:06:29 -05:00
mckibbenta
644f081c60 minor changes 2013-09-15 15:48:32 -04:00
Marc Zinnschlag
bf8a25c2c6 Merge remote-tracking branch 'mckibbenta/tgm' 2013-09-12 19:07:35 +02:00
mckibbenta
89b7d6121d Initial toggleGodMod/tgm instruction. Currently only affects player health. 2013-09-12 08:30:00 -04:00
mckibbenta
85b8af6262 Merge branch 'master' of https://github.com/zinnschlag/openmw into tgm 2013-09-12 08:08:07 -04:00
gus
f9bfbc8764 Merge branch 'master' of https://github.com/zinnschlag/openmw.git into AICombat 2013-09-10 16:18:39 +02:00
gus
46a734852b adding script instruction getLOS + some test about AI 2013-09-10 16:16:13 +02:00
scrawl
10c21579bc Item stacking case sensitivity fix 2013-09-07 01:00:38 +02:00
mckibbenta
f65172bdca Merge branch 'master' of https://github.com/zinnschlag/openmw into tgm 2013-08-29 20:26:36 -04:00
mckibbenta
eef9df504a fiddlings 2013-08-29 20:25:36 -04:00
scrawl
c8e31725dc Fix weather sounds persisting on a new game 2013-08-29 15:16:08 +02:00
scrawl
d3d6dfbde8 Refactored loading screen
- Add loading progress for data files, global map, terrain
 - Refactored and improved cell loading progress
2013-08-27 15:48:13 +02:00
Marc Zinnschlag
dcc55b60c3 Merge remote-tracking branch 'kcat/misc-cleanup' 2013-08-26 08:51:19 +02:00
Chris Robinson
f2889e4bb5 Remove unused functions and parameters 2013-08-25 16:08:45 -07:00
Chris Robinson
3843357cd2 Fix actor stepping 2013-08-25 16:08:43 -07:00
scrawl
3f8a69b4ad Don't crash when trying to delete a reference that doesn't exist anymore 2013-08-26 00:14:02 +02:00
mckibbenta
06701467ab Merge branch 'master' into tgm 2013-08-24 21:28:26 -04:00
mckibbenta
8998b90e8b initial do-nothing implementation; registered opcode 2013-08-24 21:19:12 -04:00
Chris Robinson
ca24a809fc Use the position of the actor to determine if they're swimming 2013-08-23 13:44:16 -07:00
Chris Robinson
3fa65f21dd Use a proper cone shape with a contact test to check for melee hits 2013-08-23 12:27:40 -07:00
Chris Robinson
f5d03a16c1 Rename getFacedObject and getFacedHandle for melee hits 2013-08-23 12:27:39 -07:00
Marc Zinnschlag
e03e2f0817 Merge remote-tracking branch 'scrawl/master' 2013-08-21 19:50:08 +02:00
scrawl
758d989a03 If multiple plugins have land data for the same cell, the last plugin should win 2013-08-21 17:26:11 +02:00
Chris Robinson
c855ab65cf Non-colliding objects are considered flying 2013-08-21 07:24:54 -07:00
Chris Robinson
602be9bbe7 Avoid swimming into the air from underwater 2013-08-21 07:24:54 -07:00
Chris Robinson
9f09bb6f6f Use separate inputs for swimming and flying 2013-08-21 07:24:54 -07:00
Chris Robinson
a546ace94d Remove an unused method 2013-08-21 07:24:54 -07:00
Chris Robinson
1a9672e31b Don't update player physics more than 60 times a second
Bullet and/or our collision handling code doesn't like timesteps much
smaller than that. Ideally we should do physics in 60fps (or even 30fps)
steps and use prediction and interpolation to get more, but that's not
straight forward and needs a fixed timestep loop to lock physics and
logic together.
2013-08-20 11:31:49 -07:00
Chris Robinson
0e56b2facb Merge remote-tracking branch 'zini/master' into physics 2013-08-20 04:42:28 -07:00
Chris Robinson
d9040df9d6 Increase the max number of physics iterations
Should help with highly tessellated collision meshes with high
framerates.
2013-08-20 04:41:52 -07:00
scrawl
fa76d1631b Some terrain fixes 2013-08-20 12:08:46 +02:00
scrawl
0545622f5a Fix werewolf state not getting completely reset when starting a new game 2013-08-20 11:24:19 +02:00
Chris Robinson
a993af53e7 Merge remote-tracking branch 'zini/master' into physics 2013-08-20 02:21:44 -07:00
Chris Robinson
a17997a973 Continually add bits of input velocity to inertia when falling 2013-08-20 02:10:18 -07:00
scrawl
8c8653160d Crash fix, material fix 2013-08-20 09:52:27 +02:00
scrawl
ebf9debb80 Enabled terrain self shadows, implemented getHeightAt, some optimizations 2013-08-19 20:39:37 +02:00
Chris Robinson
d727b15580 Fix tracing down 2013-08-19 20:39:37 +02:00
Chris Robinson
394fc75697 Clean up the trace struct 2013-08-19 20:39:37 +02:00
Chris Robinson
b351109649 Get rid of the old newtrace method 2013-08-19 20:39:37 +02:00
Chris Robinson
14acacf401 Use a better method to do actor physics traces 2013-08-19 20:39:37 +02:00
Chris Robinson
76b812f75f Improve actor movement collision handling 2013-08-19 20:39:37 +02:00
Chris Robinson
584eec3743 Store the object class in the LiveCellRef 2013-08-19 20:39:37 +02:00
scrawl
e27437f8ed New terrain renderer - improvements:
- Consistent triangle alignment, fixes a noticable crack near the census and excise office. Note that alignment is still not the same as vanilla. Vanilla uses a weird diagonal pattern. I hope there aren't more trouble spots that will force us to replicate vanilla, but at least we can do that now.
 - Fixes several blending issues and cell border seams
 - Fix map render to use the terrain bounding box instead of an arbitrary height
 - Different LODs are now properly connected instead of using skirts
 - Support self shadowing
 - Normals and colors are stored in the vertices instead of a texture, this enables per-vertex lighting which should improve performance, fix compatibility issues due to the PS getting too large and mimic vanilla better
 - Support a fixed function fallback (though the splatting shader usually performs better)
 - Designed for distant land support - test: https://www.youtube.com/watch?v=2wnd9EuPJIY - we can't really enable this yet due to depth precision issues when using a large view distance
2013-08-19 20:34:20 +02:00
Chris Robinson
48e594b7c4 Improve stepping down when starting on the ground 2013-08-19 08:09:23 -07:00
Chris Robinson
1aa92067c2 Fix tracing down 2013-08-19 04:56:02 -07:00
Chris Robinson
7770203dff Some physics cleanup
Gets rid of some unneeded/unused variables, and halves the 'on ground'
offset.
2013-08-18 08:24:39 -07:00
Chris Robinson
8c3564326e Improve movement inertia
Handles all 3 axis. Incoming velocity is only added to inertia when
leaving the ground, and does not continually add to it.
2013-08-18 05:38:50 -07:00
Chris Robinson
9d56e2d86d Apply movement by queueing it to do later 2013-08-17 22:34:38 -07:00
Chris Robinson
96bab88da6 Add physics methods to queue and apply movements 2013-08-17 07:48:45 -07:00
Chris Robinson
0481e64b02 Fix tracing down 2013-08-17 05:09:34 -07:00
Chris Robinson
8bcce0fb55 Clean up the trace struct 2013-08-17 05:09:33 -07:00
Chris Robinson
62c7b3698d Get rid of the old newtrace method 2013-08-17 05:09:33 -07:00
Chris Robinson
65ce3c6ba5 Use a better method to do actor physics traces 2013-08-17 05:09:32 -07:00
Chris Robinson
d82f54c771 Improve actor movement collision handling 2013-08-17 05:09:30 -07:00
Chris Robinson
21121d5ba5 Store the object class in the LiveCellRef 2013-08-16 04:18:48 -07:00
Chris Robinson
08d1d486a4 Merge remote-tracking branch 'zini/master' into ptr-improvements 2013-08-15 17:42:16 -07:00
Marc Zinnschlag
d122699b2f and another fix for the same issue :( 2013-08-15 18:29:09 +02:00
Chris Robinson
58481ec7c3 Merge remote-tracking branch 'zini/master' into ptr-improvements 2013-08-15 07:11:38 -07:00
Marc Zinnschlag
7b4d8afde7 fix to previous commit 2013-08-15 15:53:50 +02:00
Chris Robinson
fdbf09ed40 Merge remote-tracking branch 'zini/master' into ptr-improvements
Conflicts:
	apps/openmw/mwworld/containerstore.cpp
2013-08-15 05:56:24 -07:00
Marc Zinnschlag
e94fcce622 accessing references via their ID now also works for references in containers in active cells 2013-08-15 14:45:13 +02:00
Chris Robinson
2853b56ed5 Throw an exception when trying to get an empty Ptr's type 2013-08-15 04:52:01 -07:00
Chris Robinson
0f2b2ff1ce Small header cleanup 2013-08-15 01:21:43 -07:00
Chris Robinson
86f2cd5848 Use dynamic_cast to get the LiveCellRef 2013-08-14 20:26:50 -07:00
Chris Robinson
48c07fbd98 Remove some unnecessary fields from Ptr 2013-08-14 17:05:42 -07:00
Chris Robinson
74f855e948 Move common LiveCellRef fields to the base class 2013-08-14 01:55:51 -07:00
Chris Robinson
11166a1a17 Don't store the type name string in the Ptr
This should get rid of all heap allocations caused by constructing or copying
Ptr objects.
2013-08-14 00:45:28 -07:00
Chris Robinson
b6d2888c48 Avoid using boost::any in MWWorld::Ptr
Reduces dependency on Boost, and should improve performance a bit when
copying or constructing Ptr objects.
2013-08-14 00:45:27 -07:00
Chris Robinson
2353ac1739 Properly implement SetWerewolfAcrobatics 2013-08-13 04:54:41 -07:00
Chris Robinson
6fd4cdb5fb Play randomized werewolf sounds 2013-08-11 00:53:17 -07:00
Chris Robinson
89c7f5bc70 Handle object activation as a werewolf 2013-08-08 22:34:53 -07:00
Chris Robinson
6110a0ee3b Don't allow resting as a werewolf 2013-08-08 18:30:47 -07:00
Chris Robinson
75131e6a48 Rebuild the actor after switching between werewolf forms 2013-08-08 17:16:24 -07:00
Chris Robinson
960ea3d96c Add/remove a WerewolfRobe when werewolf form is toggled 2013-08-08 04:40:31 -07:00
Emanuel Guevel
1cbfcc3910 Fix HUD weapon icon when turning from werewolf to normal
The werewolf hand icon remained until the inventory menu was opened.
2013-08-08 10:56:44 +02:00
Chris Robinson
2bac4566c0 Merge remote-tracking branch 'PotatoesMaster/werewolf' into werewolf
Conflicts:
	apps/openmw/mwmechanics/actors.cpp
	apps/openmw/mwscript/statsextensions.cpp
2013-08-08 00:09:29 -07:00
PLkolek
8f4506f5b6 Implemented drowning.
Currently no visual effects on losing health, the breathing sound doesn't change (we don't have one),
the breath bar doesn't turn red when no breath left and it doesn't pulse from black to red.
2013-08-07 16:46:46 +02:00
Emanuel Guevel
48d2554ac3 Auto-equip when items are added to the inventory
We limit that to armor pieces and clothing items.
No auto-equiping for the player nor werewolves.
2013-08-07 15:17:55 +02:00
Emanuel Guevel
47b8a31317 Fixes suggested by KittyCat 2013-08-07 12:05:53 +02:00
Chris Robinson
a9cc3a2844 Ensure a valid CellStore for Ptr::isInCell 2013-08-06 19:49:01 -07:00
Chris Robinson
eab4e09566 Handle the pick/probe in the character controller 2013-08-06 19:48:59 -07:00
Emanuel Guevel
20d40c4368 Implement MWWorld::World::setWerewolf() 2013-08-06 12:34:35 +02:00
Emanuel Guevel
aa563e947e Implement MWWorld::InventoryStore::unequipAll() 2013-08-06 12:34:35 +02:00
Marc Zinnschlag
41b2fa985b silenced some warnings 2013-08-03 15:26:53 +02:00
Marc Zinnschlag
9123afa863 Merge remote-tracking branch 'gus/MeleeCombat2' 2013-08-03 15:23:36 +02:00
gus
a23e7fac93 clean up 2013-08-03 13:58:16 +02:00
gus
c8bb32c40d small maths correction 2013-08-03 12:29:18 +02:00
gus
a25ee360dc use angles and GMST. not sure this work as it should 2013-08-03 12:16:51 +02:00
gus
830762722d first attempt: hit detection with a sphere (not finished) 2013-08-03 11:26:36 +02:00
Emanuel Guevel
a9483dbdf1 Show sneak indicator when sneaking
Temporary solution, as the indicator should be shown only when the
player is not detected by any other actor.
2013-08-03 03:03:29 +02:00
Chris Robinson
b70975a74d Move getEvasion to CreatureStats 2013-08-02 00:21:01 -07:00
Chris Robinson
9e7d670745 Inline Class::get(const Ptr& ptr) 2013-08-02 00:20:59 -07:00
scrawl
fe51a00112 Fix the initial player inventory being added twice when starting a new game 2013-07-31 21:00:58 +02:00
Marc Zinnschlag
5cafe65cd7 Merge remote-tracking branch 'scrawl/cppcheck' 2013-07-31 20:00:35 +02:00
scrawl
7dc30a01cd Some changes suggested by cppcheck 2013-07-31 18:46:32 +02:00
PLkolek
f297c21e4d Old door sound fades out on door open/close. Door sound is synchronised to angle on action. 2013-07-31 15:46:23 +02:00
scrawl
45006ea193 Fix inventory/container content loading so that it's done for dynamically spawned objects as well 2013-07-31 00:02:24 +02:00
scrawl
04b90b7d14 Other actors no longer collide with an actor that has collision disabled 2013-07-30 22:00:48 +02:00
Marc Zinnschlag
3fa4a194a7 Merge remote-tracking branch 'scrawl/master' 2013-07-29 09:59:23 +02:00
scrawl
6164e5bae6 Restored window resizing 2013-07-29 02:32:08 +02:00
Chris Robinson
54f91d4b3a Implement hand-to-hand attacks 2013-07-28 06:48:25 -07:00
Chris Robinson
c94653dc49 Implement the ModRegion script function 2013-07-27 07:10:18 -07:00
Chris Robinson
1174b85ac8 Implement Disable/EnableTeleporting script functions 2013-07-27 00:14:55 -07:00
Chris Robinson
dd6edd21f8 Add a separate on-hit method to handle objects being hit 2013-07-26 10:50:23 -07:00
Chris Robinson
6195062d72 Try to figure out what gets hit
This isn't the greatest. The distance multiplier is a guess, and a sphere cast
may be better.
2013-07-25 12:58:43 -07:00
Chris Robinson
b3a057d679 Handle hit chance and damage calculation
Math is based on what the UESP describes, with some tweaks (using
fatigue term, and the fCombatCriticalStrikeMult GMST):
http://www.uesp.net/wiki/Morrowind:Combat
2013-07-25 08:15:42 -07:00
Chris Robinson
92cc566fdc Rename the Class::attack method to Class::hit 2013-07-25 00:30:01 -07:00
Chris Robinson
0c8d4d9be2 Add beginnings of melee hits 2013-07-24 02:51:42 -07:00