Commit graph

365 commits

Author SHA1 Message Date
in0finite
6f21cc8bf0 destroy all rigid bodies on clients except for the root bone - they work for themselves, and bones look deformed and stretched 2021-02-06 19:20:21 +01:00
in0finite
d525a99575 sync velocity only for root bone 2021-02-06 19:18:36 +01:00
in0finite
ae834f63c7 add flags to sync data 2021-02-06 17:19:35 +01:00
in0finite
dac7f81574 add setting for ragdoll interpolation mode 2021-02-06 03:16:36 +01:00
in0finite
af54f74847 optimize network traffic for ragdolls - sync only rigid bodies - traffic should be 4 KB/s for 1 ragdoll 2021-02-06 01:29:55 +01:00
in0finite
b7ab28fedf add "num rigid bodies in dead bodies" to misc stats 2021-01-08 03:00:03 +01:00
in0finite
ebaa36fb1a add "num bones in dead bodies" to misc stats 2021-01-08 02:57:39 +01:00
in0finite
be97e40457 cleanup 2021-01-08 02:52:10 +01:00
in0finite
2451514db1 use custom serialization 2021-01-08 02:40:45 +01:00
in0finite
4b20f5de34 ... 2021-01-08 00:18:46 +01:00
in0finite
38e205efc4 found almost perfect solution 2021-01-07 23:21:28 +01:00
in0finite
c8b44837af fix comments 2021-01-07 22:16:51 +01:00
in0finite
dcc65fa8c5 tried to use MovePosition()/MoveRotation(), but it doesn't work 2021-01-07 21:43:03 +01:00
in0finite
34b9613782 don't set rigid body to kinematic - it behaves a little better with high velocity 2021-01-07 21:35:14 +01:00
in0finite
9267660a97 configure interpolation in Inspector 2021-01-07 21:02:12 +01:00
in0finite
2051451095 fix commented code 2021-01-07 20:59:36 +01:00
in0finite
7990d25ed5 extract SetPosition() and SetRotation() 2021-01-07 18:48:02 +01:00
in0finite
38d3035044 use struct for storing info about bones 2021-01-07 18:32:59 +01:00
in0finite
31d7d3c5dd apply initial velocities 2021-01-07 17:50:58 +01:00
in0finite
6b3e656ed7 extract SetVelocity() method 2021-01-07 17:47:45 +01:00
in0finite
2d5d67fc55 cleanup 2021-01-07 17:44:47 +01:00
in0finite
a9e70bf7cc cleanup 2021-01-07 16:51:30 +01:00
in0finite
506bca3faf cleanup 2021-01-07 15:43:56 +01:00
in0finite
34175971ae syncing is finally decent enough 2021-01-07 15:26:11 +01:00
in0finite
68413a5c37 sync velocity 2021-01-05 22:58:47 +01:00
in0finite
20100a34aa add "dead body sync rate" setting 2021-01-05 21:32:20 +01:00
in0finite
8d400bfceb syncing works 2021-01-05 21:09:25 +01:00
in0finite
f9e320ce23 move creation of dead body to it's own class 2021-01-05 19:30:14 +01:00
in0finite
8469f18862 use prefab to spawn dead body 2021-01-05 18:21:57 +01:00
in0finite
17f6aaeeda peds are killed with a separate function ; ragdoll is detached only when peds are killed, not destroyed 2021-01-05 05:18:47 +01:00
in0finite
3a5e237e06 add button to remove all dead bodies 2021-01-05 03:09:45 +01:00
in0finite
d6d5d660cf wip on ragdoll 2021-01-04 01:28:58 +01:00
in0finite
64680f7280 initial ragdoll stuff 2021-01-03 14:23:18 +01:00
in0finite
99c1cf8ecc ped can not be damaged by explosion while he is in vehicle 2020-06-29 17:50:33 +02:00
in0finite
e5c6144706 ped damage handling is done by State classes 2020-06-29 17:12:48 +02:00
in0finite
ba1ebf4213 don't try to damage ped if his health is <= 0 2020-06-27 22:12:22 +02:00
in0finite
16bd731403 ped can be damaged by explosion 2020-06-27 22:00:10 +02:00
in0finite
394348745e converting on-screen messages to uGUI 2020-06-06 18:09:26 +02:00
in0finite
29ab0556c6 specify ignored layer mask for finding ground in Inspector 2020-06-06 15:54:04 +02:00
in0finite
fe557282eb fix for recruiting peds 2020-06-05 23:49:50 +02:00
in0finite
03a0f5c35e extract method 2020-06-05 23:22:30 +02:00
in0finite
d37d601082 peds can not damage other peds in the same vehicle 2020-06-03 02:12:40 +02:00
in0finite
cb495440cd fix camera being blocked by vehicle's high detail meshes 2020-06-03 00:27:18 +02:00
in0finite
71d18bbe6d change way of specifying which object should be ignored when raycasting - peds can not damage other peds in the same vehicle 2020-06-01 14:58:51 +02:00
in0finite
e9ef2f709d better specify which object should be ignored when raycasting 2020-05-31 19:09:58 +02:00
in0finite
2fec510ce3 display inflicted damage as on-screen message 2020-05-31 19:09:58 +02:00
in0finite
756f7e8563 move Damageable class to Utilities assembly 2020-05-31 19:09:57 +02:00
in0finite
f2c9e5ff75 inflict damage based on part of body that was hit 2020-05-31 19:09:57 +02:00
in0finite
8f56469b28 camera can move through "PedBone" layer 2020-05-31 19:09:57 +02:00
in0finite
d675a8b4a4 provide layer as property 2020-05-31 19:09:57 +02:00
in0finite
d29a1e1a4e refactor 2020-05-31 19:09:57 +02:00
in0finite
8134b8a1d9 properly detecting when ped is assigned to vehicle and removed from vehicle ; fix radio playing ; wait some time before loading sound of radio station ; 2020-05-31 19:09:57 +02:00
in0finite
4d646c853d small optimization for finding closest vehicle/seat 2020-05-31 19:09:57 +02:00
in0finite
0e130999f4 fix bug when peds were not able to enter any vehicle when there was a vehicle with no seats spawned 2020-05-31 19:09:57 +02:00
in0finite
f90732229d change SEO of some scripts 2020-05-31 19:09:56 +02:00
in0finite
5c9b83d240 remove unneeded code 2020-05-31 19:09:55 +02:00
in0finite
101069ce0a convert speedometer 2020-05-31 19:09:55 +02:00
in0finite
d7db52c142 don't show label when ped is in flying state 2020-05-31 19:09:55 +02:00
in0finite
7243560fe0 convert ped state label 2020-05-31 19:09:54 +02:00
in0finite
ef83e9aed5 fix errors 2020-05-31 19:09:54 +02:00
in0finite
c77f6c471d removed imGUI code 2020-05-31 19:09:54 +02:00
in0finite
2eb36c245f fix lower shooting rate 2020-05-31 19:09:53 +02:00
in0finite
9db8019d9a extract GetFirePosition() and GetFireDirection() into IAimState interface/classes - states now control fire position and direction ; drive-by aiming now works for AWA weapons (they no longer aim up in the sky) ; 2020-05-31 19:09:53 +02:00
in0finite
0c620cc228 refactor firing system to use additional parameters - this will make it possible to ignore current vehicle when firing in drive-by state 2020-05-31 19:09:53 +02:00
in0finite
ca40df585d cleanup 2020-05-31 19:09:53 +02:00
in0finite
886edc3084 adjust camera focus position and camera distance 2020-05-31 19:09:53 +02:00
in0finite
a2e9d3f971 camera offset is configurable 2020-05-31 19:09:53 +02:00
in0finite
a9f665bc33 camera handling works, but needs improvements 2020-05-31 19:09:53 +02:00
in0finite
42946f3a02 convert CheckCameraCollision() to static method 2020-05-31 19:09:53 +02:00
in0finite
0dffb495c6 aim anim max time is equal to half of the anim length 2020-05-31 19:09:53 +02:00
in0finite
bc05cb0b4c manually update aim anim ; don't play anim while firing, but pause it ; stop firing when weapon is ready to fire, not when anim reaches certain time ; 2020-05-31 19:09:53 +02:00
in0finite
212d1187ff drive-by firing WIP 2020-05-31 19:09:53 +02:00
in0finite
18136f279f convert other TryFire() to static function 2020-05-31 19:09:53 +02:00
in0finite
3a9b07cf7b convert TryFire() to static function 2020-05-31 19:09:53 +02:00
in0finite
84b2d4209c update anims from the right place 2020-05-31 19:09:53 +02:00
in0finite
cbf874da6c anims are finally playing correctly 2020-05-31 19:09:53 +02:00
in0finite
c7db8963ff attempt to play driveby anims 2020-05-31 19:09:53 +02:00
in0finite
7f384860b5 small cleanup 2020-05-31 19:09:52 +02:00
in0finite
e2d1702e6b change anim wrap mode 2020-05-31 19:09:52 +02:00
in0finite
531e787515 play correct anim 2020-05-31 19:09:52 +02:00
in0finite
e50a1e70e2 drive-by WIP 2020-05-31 19:09:52 +02:00
in0finite
33b8d217aa small fix 2020-05-31 19:09:52 +02:00
in0finite
c5c8f2c75b any NPC ped can be recruited 2020-05-31 19:09:52 +02:00
in0finite
193577d9b5 stalker peds can be recruited 2020-05-31 19:09:52 +02:00
in0finite
c4d9fcc924 read G and H button events 2020-05-31 19:09:52 +02:00
in0finite
ecc17aef6d add button pressed event which uses button name 2020-05-31 19:09:52 +02:00
in0finite
688b2c0015 proper switching to/from sprint state 2020-05-31 19:09:52 +02:00
in0finite
4acc23dacd ignore next collision with first enex too 2020-05-31 19:09:51 +02:00
in0finite
8d93a7f2c5 use small raycast distance when teleporting through enexes 2020-05-31 19:09:51 +02:00
in0finite
5fb330cbb0 raycast distance for finding ground is configurable 2020-05-31 19:09:51 +02:00
in0finite
a1751c7ba4 refactor FindGroundParams 2020-05-31 19:09:51 +02:00
in0finite
a12f8aebc1 ignore next collision with second enex 2020-05-31 19:09:51 +02:00
in0finite
66d1709492 teleport only to different interiors 2020-05-31 19:09:51 +02:00
in0finite
14f9e0bd34 remember first and second enex ; teleport from second enex back to first enex 2020-05-31 19:09:51 +02:00
in0finite
c2c84b4c91 rename var 2020-05-31 19:09:51 +02:00
in0finite
9dd1dad363 log matching enexes 2020-05-31 19:09:51 +02:00
in0finite
028d74331f only teleport to enex's counterpart on server 2020-05-31 19:09:51 +02:00
in0finite
a34e9e27d1 don't ignore collision with enex if current enex is disabled 2020-05-31 19:09:51 +02:00
in0finite
d82c42a906 teleport ped to enex's counterpart when collided 2020-05-31 19:09:51 +02:00
in0finite
c78d25f269 report enex collisions to ped 2020-05-31 19:09:51 +02:00