Alexei Dobrohotov
2bfee281fd
Merge branch 'restore_caster' into 'master'
...
Restore projectile caster from savegame (#5860 )
See merge request OpenMW/openmw!616
(cherry picked from commit d595c7adb0fb45eafed6d3d0403ad640a91411ed)
c5426bec In the savegame, projectile caster is identified by its actor id. When
2021-03-05 21:07:29 +00:00
fredzio
6e969ca3fa
Use mesh collision box instead of node bounding sphere for projectile
...
size. The bounding sphere is much bigger than the mesh.
2021-02-05 22:53:45 +01:00
fredzio
1f4c85520f
Use convexSweepTest for projectile movement to solve any
...
imprecision issue with projectile collision detection.
Simplify the mechanics: manage hits in one spot.
Give magic projectiles a collision shape similar in size to their visible
model.
Rename the 2 convex result callback to clearly state their purpose.
2021-01-21 20:36:33 +01:00
fredzio
b39437dfb6
Don't allow projectiles to stand still when they hit an ally.
...
When an NPC fire a projectile, it should affect only its targeted actor.
To this end, after a hit is detected the target is checked against the
list of AI targets and reactivated if necessary.
Problem occurs when the hit occurs as a result of a friendly actor going
into the projectile (detected in ClosestNotMeConvexResultCallback):
while the projectile is inside the friend's collision box, it is
deactivated, just to be immediately reactivated. Effectively, the
projectile does nothing until the actor moves out.
Add a check inside the ClosestNotMeConvexResultCallback before declaring
a hit.
Since the necessary data is not safely accessible from the async thread,
maintain a copy inside the Projectile class.
2020-12-14 22:23:01 +01:00
fredzio
66fe3b0d38
Modify projectile collision to work with async physics
2020-12-08 09:06:33 +01:00
Andrei Kortunov
dc7b48e92e
Generate physics collisions for projectiles (bug #3372 )
...
Remove redundant now mHit field
2020-12-08 09:05:38 +01:00
Capostrophic
f0433704b4
Only collect every unique magic bolt sound once (bug #4964 )
2019-04-17 19:23:50 +03:00
Miloslav Číž
3dbcda6686
Make use of mEffectAnimationTime for projectile rotation
2017-11-23 15:14:15 +01:00
Miloslav Číž
de42aa9d03
Make thrown projectiles rotate
2017-11-23 00:32:22 +01:00
MiroslavR
b5f5268ff3
Clean up faraway projectiles
2017-09-23 18:54:17 +02:00
MiroslavR
f15de6d3ca
ESS-Importer: Convert magic projectiles ( Closes #2320 )
2017-09-20 18:58:56 +02:00
Chris Robinson
1fe60dd8e2
Replace some shared_ptrs with pointers to deque entries
2017-09-14 16:00:30 -07:00
Bret Curtis
07f75e1104
replace boost::shared_ptr in extern and components
2017-06-09 19:08:53 +02:00
mrohrlach
3b0c791892
Removed bad casts and unnecessary comments
2016-12-09 18:10:06 -07:00
mrohrlach
ef5cf76ad8
Implemented retrieval of effect colors for lights, made recommended changes
2016-12-04 16:11:21 -07:00
mrohrlach
49ce80346c
Changed methods slightly to ensure non-magic projectiles do not receive lights
2016-12-03 15:42:24 -07:00
Allofich
fe3a033642
Use particle textures for spell projectiles
2016-09-08 23:56:54 +09:00
Allofich
f8270f6bd5
Consolidations and cleanup for multi-effect spells
2016-09-05 05:30:51 +09:00
Allofich
dbd7c038b2
Add loading code for multi-effect projectiles
2016-09-05 03:45:13 +09:00
Allofich
f49ebee56a
Play sounds for multi-effect projectile
2016-09-04 23:57:06 +09:00
Allofich
37f07f7435
Combine into one multi-effect magic projectile
2016-09-04 22:35:29 +09:00
Allofich
10842462c7
Send lists of models and sounds to launchMagicBolt
2016-09-04 17:42:27 +09:00
scrawl
aec8c38461
Move observer_ptr include where it belongs
2016-01-25 21:03:33 +01:00
Tobias Kortkamp
0659687bfb
Some fixes for building on FreeBSD
2016-01-25 14:13:16 +01:00
scrawl
553132cb51
Accept a ConstPtr in launchProjectile
2015-12-18 17:13:54 +01:00
scrawl
a8938589f6
Magic projectiles rotate during flight
2015-12-05 00:33:01 +01:00
scrawl
3f93af4181
Projectiles interact with the water surface ( Fixes #2986 )
2015-12-04 23:28:11 +01:00
scrawl
62169a7039
Use a single-precision PositionAttitudeTransform in speed critical places
2015-11-22 19:54:26 +01:00
scrawl
882e359008
Move attackStrength to the CharacterController, where it should have been to begin with
...
Only relevant for actors in active cells, so doesn't belong in CreatureStats. This change should slightly reduce the game's memory usage.
2015-06-26 05:15:07 +02:00
scrawl
5bc6513e2d
Fix projectile hit bug where the incorrect attackStrength would be used if a new attack has been performed in the meantime
2015-06-26 02:32:41 +02:00
scrawl
f81c3bcd6d
Fix for broken InitWorldSpaceParticles on projectile effects
2015-06-11 16:40:26 +02:00
scrawl
de8e5f0db1
Restore projectiles
2015-06-01 21:41:13 +02:00
scrawl
7a3bc69df7
Readded sound listener
2015-05-12 19:02:56 +02:00
scrawl
c883a73d30
Several warning fixes
2015-01-23 15:34:47 +01:00
scrawl
11b05c352f
Fix exception when casting Bound Gloves spell
2014-06-19 16:00:27 +02:00
scrawl
e95483c40f
Fix crash for on target spells cast by non-actors ( Fixes #1529 )
2014-06-18 16:57:53 +02:00
scrawl
e266aff561
Savegame: store projectiles
2014-05-17 05:24:32 +02:00
scrawl
9adb990143
Fix potentially unsafe use of MWWorld::Ptr
2014-05-17 02:52:24 +02:00
scrawl
e5a21aca53
Refactor projectiles to no longer use MW-objects
2014-05-16 13:33:30 +02:00