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

1573 commits

Author SHA1 Message Date
scrawl
03b6334ceb Get rid of a hack 2014-01-07 20:43:08 +01:00
scrawl
0285d18fc2 Respect items belonging to a faction 2014-01-07 20:24:01 +01:00
scrawl
3c0080d2c1 Implement theft detection 2014-01-07 19:58:17 +01:00
Marc Zinnschlag
48a08c4c4d Merge remote-tracking branch 'endorph/master' 2014-01-07 14:12:15 +01:00
Dmitriy 'Endorph' Shkurskiy
9afa8e952e tabs -> spaces 2014-01-07 14:32:14 +02:00
scrawl
29c823b9d4 Implement awareness check function. Use this for combat AI and GetDetected instruction. 2014-01-07 00:51:09 +01:00
Marc Zinnschlag
fefaec5804 Merge remote-tracking branch 'scrawl/savedgame' into savedgame 2014-01-06 22:30:08 +01:00
scrawl
68b87714bb Addition to 2f35e5a04e: companions should still auto equip 2014-01-06 22:14:11 +01:00
Marc Zinnschlag
43dd3b8ef2 removed redundant deletion flag from CellRef 2014-01-06 13:53:20 +01:00
scrawl
62774fcc4a Merge branch 'master' into HEAD
Conflicts:
	apps/openmw/mwbase/world.hpp
	apps/openmw/mwinput/inputmanagerimp.cpp
	apps/openmw/mwmechanics/actors.cpp
	apps/openmw/mwworld/worldimp.cpp
	apps/openmw/mwworld/worldimp.hpp
	components/esm/loadtes3.cpp
2014-01-06 00:23:17 +01:00
scrawl
2f35e5a04e Stop merchants from autoequipping items sold to them 2014-01-05 22:43:09 +01:00
scrawl
dde2cd5d5a Fix some code that still used setCount directly instead of using the ContainerStore interface. Also fix a related annoyance with the interface. 2014-01-05 20:53:45 +01:00
scrawl
45847c67ad Lock NIF cache when loading an interior cell as well. Should improve load performance. 2014-01-05 18:38:21 +01:00
scrawl
ce013315ba Nothing to see here, move along.
Fine... it's flying cliff racers. But did you really want to know?
2014-01-05 16:09:06 +01:00
scrawl
c4e4a8fb57 Closes #1083: Fix werewolf change handling 2014-01-04 20:50:18 +01:00
Dmitriy 'Endorph' Shkurskiy
18d4cdb2ac Fix for VS2010-Debug: manual assignment operator and cctor added for MMWorld::ContainerStoreIterator 2014-01-04 07:46:29 +02:00
scrawl
710a1e2f37 Smash case for manual reference IDs as well, consistent with references in data files 2014-01-04 04:39:06 +01:00
scrawl
be2ebc5cac Closes #1081: Implement disease contraction 2014-01-03 23:33:14 +01:00
scrawl
b42240be6d Implement Damage/restore skill/attribute effects. Use dedicated classes for skill and attribute values (instead of Stat<T>) since there are some important differences. 2014-01-03 03:48:43 +01:00
scrawl
623cdef69f Code cleanup 2014-01-02 21:49:12 +01:00
scrawl
299690631f Implement SoulTrap magic effect 2014-01-02 21:21:28 +01:00
scrawl
12de351feb Check if levitation is enabled before levitating 2014-01-02 16:38:23 +01:00
Marc Zinnschlag
a6e6411686 Merge remote-tracking branch 'scrawl/master' 2014-01-02 12:12:52 +01:00
scrawl
993edf0384 Bug #1063: Safety check in moveObject. Required when items in containers execute script commands like setAtStart etc. 2014-01-02 02:27:48 +01:00
scrawl
0f2b2fabdb Implement water walking 2014-01-02 02:03:44 +01:00
scrawl
c6421276bd Closes #841: Correct activation distance in third person mode 2014-01-01 23:59:17 +01:00
scrawl
24aa743573 Add function for converting feet to game units 2014-01-01 23:34:18 +01:00
scrawl
f6387d5979 Implement Telekinesis magic effect. Remove some duplicate code. 2014-01-01 23:30:58 +01:00
scrawl
531bef6193 Shorter Vector3 initialisation 2014-01-01 22:46:10 +01:00
scrawl
5729672262 Show marked position on map. Implement Detect X magic effects. 2014-01-01 22:37:52 +01:00
Marc Zinnschlag
1f4c192bf6 Merge remote-tracking branch 'lgro/issue417_apply_weather_instantly_when_teleporting' 2014-01-01 19:47:11 +01:00
scrawl
eab7ffd6b4 Remove redundant finding of default exterior position height 2014-01-01 18:05:28 +01:00
scrawl
8e5cae1081 Implement mark/recall magic effects 2014-01-01 17:06:21 +01:00
Lukasz Gromanowski
722469d57b Correction to the e9844e1 commit.
Restored interrior check in WeatherManager::update().

Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2014-01-01 16:45:39 +01:00
Marc Zinnschlag
c3482b6f24 Merge remote-tracking branch 'scrawl/master'
Conflicts:
	apps/openmw/mwmechanics/spellcasting.cpp
2014-01-01 15:05:42 +01:00
Marc Zinnschlag
5fa9aa5d1e Merge remote-tracking branch 'lgro/issue417_apply_weather_instantly_when_teleporting'
Conflicts:
	apps/openmw/mwworld/weather.cpp
	apps/openmw/mwworld/worldimp.cpp
2014-01-01 14:57:14 +01:00
scrawl
ea3b88951a Implement divine/almsivi intervention magic effects 2014-01-01 02:22:11 +01:00
scrawl
c86760e3cd Remember the last known exterior position of the player in case we fail to map the interior to a world position. 2014-01-01 01:10:55 +01:00
Lukasz Gromanowski
101813fd0d Fixes #417: Apply weather instantly when teleporting
Correction to previous commit - WeatherManager->update()
will always be called.

Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-12-31 21:18:10 +01:00
Lukasz Gromanowski
e9844e1b37 Fixes #417: Apply weather instantly when teleporting
Changed teleporting detection from "position tracking" to manually
setting "teleportation" flag ( player->setTeleported(true) ).

Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-12-31 20:40:23 +01:00
scrawl
3604b9d171 Closes #566: In interior cells, update global map position marker using the first exterior teleport door 2013-12-31 18:35:46 +01:00
scrawl
79a440e94a Many additions to 900bc06d2c:
- Fix indentation
 - Consider any kind of light, not just torch_infinite_time
 - Hostile NPCs should also wear lights, if they have nothing else that could use the slot (or a twohanded weapon)
 - Remove redundant code and don't add additional lights to the inventory
 - World::isDark returns false for interiors which are unaffected by weather
2013-12-30 17:57:41 +01:00
Lukasz Gromanowski
c65f018760 Fixes #417: Apply weather instantly when teleporting
Corrected constant name.

Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-12-29 15:09:49 +01:00
Marc Zinnschlag
6de39a7329 Merge remote-tracking branch 'lgro/issue845_NPCs_hold_torches_whole_day'
Conflicts:
	apps/openmw/mwmechanics/character.cpp
2013-12-29 15:00:31 +01:00
Lukasz Gromanowski
faf8011c48 Fixes #417: Apply weather instantly when teleporting
Removed changing speed of weather transition introduced in previous
commit. Instead try to detect player "teleporting" (ie. coc),
and then switch instantly to the next weather type.

Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-12-29 12:47:44 +01:00
Lukasz Gromanowski
100edda8c0 Fixes #417: Apply weather instantly when teleporting
Change speed of weather transition from blight to other (twice fast as normal)
and from other to blight (four times faster than normal).

Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-12-28 16:15:34 +01:00
scrawl
7265b427fe Bug #1013: Rewrote fall height detection 2013-12-27 21:21:18 +01:00
scrawl
686d9efac3 Bug #1060: Fix incorrect spell type checks 2013-12-27 18:58:35 +01:00
scrawl
27092a4494 flagAsModified should be private 2013-12-27 18:58:35 +01:00
scrawl
561c661156 Reset starting angle / position when adding world item to a container 2013-12-27 01:57:08 +01:00
scrawl
608bd0f525 Don't copy the base node pointer when adding a world object to a container. Fixes bug #1028 2013-12-27 01:34:56 +01:00
scrawl
5a287a7e01 Remove no longer accurate flagAsModified calls. Container items are now modified via ContainerStore, not RefData. 2013-12-27 00:41:19 +01:00
scrawl
5054d8e6c1 Bug #1055: Check power use and mana before starting cast animation 2013-12-26 22:06:13 +01:00
scrawl
71d9755ef1 Bug #991: Don't autoequip items with harmful permanent enchantments 2013-12-26 21:26:59 +01:00
Lukasz Gromanowski
900bc06d2c Fixes #845: NPCs hold torches during the day
Moved 'equipping torches at night and unequipping at day' code from Character
to Actors class.

Removed unneeded showLights method (introduced in previous commits)
from animation/npcanimation classes.

Since this commit autoEquip() method doesn't automatically equip lights.

Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-12-20 22:38:23 +01:00
scrawl
9afdf71af3 Fix crash with player->position command 2013-12-19 00:37:57 +01:00
scrawl
876fb9a899 Addition to bb4bd999ba : adjust position for objects placed from inventory 2013-12-19 00:11:14 +01:00
Marc Zinnschlag
c22e38f825 removing 255 content file limitation 2013-12-17 21:19:05 +01:00
Marc Zinnschlag
09fadd446b Merge remote-tracking branch 'mrcheko/savedgame' into savedgame 2013-12-17 19:33:32 +01:00
mrcheko
f50ff0b1c4 reworked http://bugs.openmw.org/issues/428 2013-12-16 15:40:47 +02:00
scrawl
19e5978a01 Merge branch 'master' of https://github.com/zinnschlag/openmw
Conflicts:
	apps/openmw/main.cpp
2013-12-16 13:35:31 +01:00
scrawl
56893a097d Don't stack used torches 2013-12-16 13:31:03 +01:00
Marc Zinnschlag
1cf1d49bc4 fix to content file reading error reporting in case of missing dependency 2013-12-16 11:39:24 +01:00
mrcheko
fd9f8c34f6 bug fix http://bugs.openmw.org/issues/428 2013-12-15 18:50:25 +02:00
Marc Zinnschlag
74793c1c2f globals script cleanup; fixed potential case folding bug 2013-12-12 13:15:38 +01:00
Marc Zinnschlag
fc37c77a91 store global variables in saved game files 2013-12-12 12:19:25 +01:00
Lukasz Gromanowski
91a4d9a2eb Fixes #845: NPCs hold torches during the day
Added method in WeatherManger and World which returns true if it is night.
This method is used later in character controller to show torches
(or other sources of light) at night and hide them at day.

Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-12-10 23:48:49 +01:00
Marc Zinnschlag
b38bfe1f21 removed a redundant function for listing global variables 2013-12-10 15:22:38 +01:00
Marc Zinnschlag
51bfa5cde3 rewrote global variable storage (using ESM variant type now) 2013-12-10 15:09:58 +01:00
Marc Zinnschlag
1fdd43bbb7 removed a redundant new 2013-12-10 12:31:18 +01:00
Marc Zinnschlag
77a2179d1e Merge remote-tracking branch 'scrawl/master' 2013-12-09 18:39:34 +01:00
scrawl
0bc3a13c0f Break invisibility on Use or Activate 2013-12-08 23:36:37 +01:00
scrawl
5fd2df5546 Ignore invisible targets for combat AI 2013-12-08 23:21:23 +01:00
Marc Zinnschlag
1c13a9037a save and load dynamic records 2013-12-07 13:17:28 +01:00
Marc Zinnschlag
030c733e2d Merge branch 'master' into savedgame
Conflicts:
	apps/openmw/mwmechanics/actors.cpp
	apps/openmw/mwworld/worldimp.cpp
	files/settings-default.cfg
2013-12-07 12:27:06 +01:00
Marc Zinnschlag
14eff87339 removed some junk from ESM store 2013-12-06 11:34:24 +01:00
Lukasz Gromanowski
bfd79bfbe6 Various fixes for CppCheck warnings.
Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2013-12-06 07:36:16 +01:00
Marc Zinnschlag
a7b42b867b more cleanup 2013-12-05 14:18:43 +01:00
Marc Zinnschlag
ce624e024b make sure player record stays in place across cleanups 2013-12-05 14:03:25 +01:00
Marc Zinnschlag
e818d43bc3 removed an outdated typedef and some dead code 2013-12-05 13:21:26 +01:00
Marc Zinnschlag
537b2efe8e first round of cleaning up world cleanup 2013-12-05 12:49:25 +01:00
scrawl
8391891a5b Ignore case for content file extensions 2013-11-30 14:25:29 +01:00
scrawl
4b4025ed0f Keep the player's CharacterController when changing cells. Fixes several glitches. 2013-11-30 11:01:45 +01:00
scrawl
bb4bd999ba PlaceAt: Copy the rotation when placing a non-actor. Don't modify placement position by bounding box for non-actors. Fixes placement in Graphic Herbalism mod. 2013-11-30 08:29:22 +01:00
scrawl
ce2d521b8f Always apply queued movement, even when there's no duration. Fixes crash with --start="bal isra".
When a script disables a reference that still has movement queued, trying to apply that movement will then fail due to the reference not being in the scene. Therefore, we should make sure that movement is always applied in the frame that it's queued in.
2013-11-29 20:03:50 +01:00
scrawl
ffc885853a Fix bolt for magic effects that don't have one specified 2013-11-29 10:39:37 +01:00
scrawl
b82ee4b44f Fix some problems with the previous commit 2013-11-28 21:49:15 +01:00
scrawl
076cc9230b First try at handling target magic 2013-11-28 17:31:17 +01:00
Marc Zinnschlag
5aea6ef80f some clean up for the cleanup code 2013-11-28 11:22:34 +01:00
Marc Zinnschlag
7e2819c62e store year in saved game profile 2013-11-28 09:27:10 +01:00
Marc Zinnschlag
b0eb5938bf removed some redundant code 2013-11-28 09:13:54 +01:00
Marc Zinnschlag
71436b1160 changed interface for global variable access 2013-11-28 09:10:38 +01:00
scrawl
a8c838b53a Don't list deleted refs in CellStore::foreach 2013-11-27 18:49:04 +01:00
Marc Zinnschlag
99ea63dc4a factored out code for generating month names 2013-11-26 12:47:30 +01:00
Marc Zinnschlag
bc6fe682c9 replaced getCurrentCellName function with a more general getCellName function 2013-11-26 11:39:58 +01:00
Marc Zinnschlag
616e3aa32f store content file list in saved games and reject saved games not matching the current game 2013-11-25 13:00:05 +01:00
scrawl
0e254aa7c7 Fix startNewGame assigning an already freed CellStore to the player Ptr supplied to WindowManager. Fixes a crash when equipping lights after starting a new game (bug 967). Side note: The inventory preview's Ptr being assigned a cell at all doesn't make sense, as that is used to determine the light setting which should be the same no matter which cell you're in. 2013-11-23 03:25:55 +01:00
scrawl
39de0510a0 Fix another case of container scripts not getting re-added 2013-11-22 02:12:37 +01:00
scrawl
829512ded4 Fix container scripts not getting re-added when the player changes cells 2013-11-22 01:02:12 +01:00
scrawl
b490e56ba1 Remove redundant setLocals (already done by ContainerStore::add) 2013-11-21 17:19:41 +01:00
scrawl
bab657fe2b Add a utility function to add items to a ContainerStore by RefID 2013-11-21 17:14:30 +01:00
scrawl
800a2845b0 Add Bound & Summon effects (will need some adjustments later) 2013-11-21 17:14:23 +01:00
scrawl
8b095982e9 Don't auto equip for dead actors 2013-11-19 18:42:43 +01:00
Marc Zinnschlag
8190fdb16c Merge remote-tracking branch 'scrawl/master' 2013-11-19 16:56:18 +01:00
scrawl
e8dcd74741 Recharge enchanted items in player's inventory over time 2013-11-19 16:42:24 +01:00
Marc Zinnschlag
11e254aac8 Merge remote-tracking branch 'gus/AICombat'
Conflicts:
	apps/openmw/CMakeLists.txt
	apps/openmw/mwbase/mechanicsmanager.hpp
	apps/openmw/mwmechanics/mechanicsmanagerimp.cpp
	apps/openmw/mwmechanics/mechanicsmanagerimp.hpp
2013-11-19 09:10:48 +01:00
scrawl
0dc2e829dd Lots of cleanup. Implemented Absorb and Resist. Implemented several instant effects. Added hand VFX. 2013-11-17 23:31:08 +01:00
scrawl
2a11618ee7 Make sure the equipped weapon HUD icon is updated properly 2013-11-17 23:31:07 +01:00
scrawl
b8c358df63 Fix a bug with equipping using the quick keys: when item is already equipped, equipping it again would cause the slot to get unequipped first, possibly restacking and destroying the Ptr that was supposed to be equipped in the first place 2013-11-17 23:31:07 +01:00
scrawl
07251f0fa4 Don't apply spells to dead actors 2013-11-17 04:32:56 +01:00
scrawl
b1a29eb27e Implement Resist & Weakness effects 2013-11-16 02:34:43 +01:00
scrawl
c73217627e Move code for listing effect sources to the spell management classes 2013-11-15 20:29:47 +01:00
scrawl
f7befa3e54 Remove a no longer required method 2013-11-15 02:20:04 +01:00
scrawl
00af6b5617 Use an inventory store listener for animation parts and VFX update instead of updating them directly. Slightly more flexible, reduces InventoryStore dependencies and solves a crash during character creation due to the preview doll's animation not being registered in World. 2013-11-15 02:08:36 +01:00
scrawl
427de69b79 Allow stacking enchanted items when charge is full 2013-11-14 21:02:37 +01:00
scrawl
49125fa26e Fix restacking unequipped items 2013-11-14 19:54:00 +01:00
scrawl
da85f3e575 Use the formula from the wiki for spell success. 2013-11-14 19:19:32 +01:00
scrawl
5458207325 Reduce fatigue when casting. Has no effect in the vanilla game due to the GMSTs being 0. 2013-11-14 18:41:34 +01:00
scrawl
e26cc31e3b Disable projectiles for now 2013-11-14 14:45:08 +01:00
scrawl
992a8e9c36 Refactor NpcAnimation: get rid of delayed update (no longer required), make sure that the Animation is set up *before* the inventory store is accessed anywhere (which now triggers auto equip and animation update). Allows better tracking of magic VFX for permanent enchantments in InventoryStore. 2013-11-14 14:41:10 +01:00
scrawl
956d8adb99 Merge branch 'master' of https://github.com/zinnschlag/openmw into magic
Conflicts:
	apps/openmw/mwgui/inventoryitemmodel.cpp
2013-11-14 14:25:22 +01:00
scrawl
0b5f5351b5 Fix continuous FX getting removed instantly 2013-11-14 13:30:48 +01:00
Marc Zinnschlag
d49b8e7443 Merge branch 'dialogue' 2013-11-14 11:40:50 +01:00
scrawl
ff7e4174f9 Fix some leftover code that still calculated random magnitude per spell rather than per effect. Major cleanup of InventoryStore: Magic effects are now updated when needed, rather than cached. Also allows to get rid of 'mutable' hacks and non-const method that should be const. Play sounds and particles when equipping a permanent enchantment item. 2013-11-13 18:51:28 +01:00
scrawl
9b0e82a37f Projectile models are now spawned (no movement or impact yet). Refactored trap activation to apply range types properly. Handle ContinuousVFX for magic effects (note they aren't stopped yet when the effect ends) 2013-11-13 14:02:15 +01:00
Marc Zinnschlag
a8274e5c86 Merge remote-tracking branch 'potatoesmaster/inventory-fix' 2013-11-13 13:55:24 +01:00
Emanuel Guevel
baf13483c0 Update actor model only when in the current cell 2013-11-13 00:04:04 +01:00
scrawl
60bec03987 Rename variables called 'slots' to work around wrong code parsing in QT Creator. 2013-11-12 23:23:19 +01:00
scrawl
027f4152e4 Missing flagAsModified() 2013-11-12 23:17:03 +01:00
scrawl
3c6a391507 Rename arguments again 2013-11-12 23:12:56 +01:00
scrawl
700d06764c Order of arguments for ContainerStore::stacks shouldn't matter. Supplying them in the correct order is error prone, and also caused a bug where equipped items would incorrectly stack. 2013-11-12 22:58:56 +01:00
scrawl
eccb8f38ba Apply "cast when strikes" enchantments when hitting with a weapon 2013-11-12 02:07:51 +01:00
scrawl
5f209b120b Use the new ContainerStore::remove method. 2013-11-12 01:26:16 +01:00
scrawl
ffdb91bb21 Add particles for Cast + Hit. Not looking quite right yet. 2013-11-11 23:43:28 +01:00
scrawl
6f3d737498 Missing const, thanks to jeaye 2013-11-10 23:27:11 +01:00
scrawl
1773c70455 Merge branch 'master' of https://github.com/zinnschlag/openmw into magic 2013-11-10 22:03:17 +01:00
scrawl
6cd373c5c6 Only allow using powers once every 24 h. Apply on touch effects. 2013-11-10 15:40:31 +01:00
Marc Zinnschlag
8c4303399f Merge branch 'master' into dialogue
Conflicts:
	apps/opencs/model/world/columns.cpp
	apps/opencs/model/world/columns.hpp
	apps/opencs/model/world/data.cpp
	components/esm/loadinfo.hpp
2013-11-10 13:21:39 +01:00
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