From e7c049791643d2226f27dbc6c087bfb6d9a4908c Mon Sep 17 00:00:00 2001 From: diwako Date: Sat, 21 Jul 2018 14:03:47 +0200 Subject: [PATCH 01/13] Revert "Add animations" This reverts commit e62cef87398bb133920f34c52c5a2618c3896381. From d7b302f972087b71cf0b206eb36010408725e97b Mon Sep 17 00:00:00 2001 From: diwako Date: Sat, 21 Jul 2018 14:09:54 +0200 Subject: [PATCH 02/13] Add animations --- mod/anims/kka3_unc_1.rtm | Bin 0 -> 8992 bytes mod/anims/kka3_unc_2.rtm | Bin 0 -> 8992 bytes mod/anims/kka3_unc_3.rtm | Bin 0 -> 8992 bytes mod/anims/kka3_unc_4.rtm | Bin 0 -> 8992 bytes mod/anims/kka3_unc_5.rtm | Bin 0 -> 8992 bytes mod/anims/kka3_unc_6.rtm | Bin 0 -> 8992 bytes mod/anims/kka3_unc_7.rtm | Bin 0 -> 8992 bytes mod/anims/kka3_unc_8.rtm | Bin 0 -> 8992 bytes 8 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 mod/anims/kka3_unc_1.rtm create mode 100644 mod/anims/kka3_unc_2.rtm create mode 100644 mod/anims/kka3_unc_3.rtm create mode 100644 mod/anims/kka3_unc_4.rtm create mode 100644 mod/anims/kka3_unc_5.rtm create mode 100644 mod/anims/kka3_unc_6.rtm create mode 100644 mod/anims/kka3_unc_7.rtm create mode 100644 mod/anims/kka3_unc_8.rtm diff --git a/mod/anims/kka3_unc_1.rtm b/mod/anims/kka3_unc_1.rtm new file mode 100644 index 0000000000000000000000000000000000000000..97b9c9eae000a8f12671beacc41faa5a51b1c025 GIT binary patch literal 8992 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 literal 0 HcmV?d00001 diff --git a/mod/anims/kka3_unc_2.rtm b/mod/anims/kka3_unc_2.rtm new file mode 100644 index 0000000000000000000000000000000000000000..cba9c8cece9cb5e86bdfbbe7ceac80fe1fac508e GIT binary patch literal 8992 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 literal 0 HcmV?d00001 diff --git a/mod/anims/kka3_unc_4.rtm b/mod/anims/kka3_unc_4.rtm new file mode 100644 index 0000000000000000000000000000000000000000..93bedd1e2efc67c72f37f66d19cc7405f22587fb GIT binary patch literal 8992 zcmai(2UJwY_s3U61hFAl5=BugV52wLH)BN%VgV6Eq{-5x3!(-Q?0|{|RFu$^V8nu5 zkvAg*3kX4pSQDZNB*yj=%U{K)|NC~?b$Pps>*2sT-<{99Gk4x?y3BL-F*P$a6Uco! z!QXS>$2BS>LIl4x;m70MH-eB#ANWi1$?J4ZO{~Mp4t4Xd=oYGVcadLIWQ1ycrYJDh zH8?UZEI=ply+dSVEGNM~rTlr3qRDT>&;EA0`B!uc)w**?KtPxX0)+~` zM2A4pp$>sUh3*m(5hM_)*5`yoELp)tI2G%~Iy}BZ9q_7j?)l;Xs)Eny9KNIV9A1?^ zFE}pTzXSWldI$E4btU%8-tV>xz<+*wUC}@7b;a|S>Cy|pJ0G5IuJZYk^%g31=><^5 zmtKGl^$zwYUf;p~q!&OHUwQ#L(mV2x^a7|_FTDUA>WcQy5-naL;NrXVg7DV+IQxY} z2vqCbdb1An#eU(U7(d7lD)O-CrdJa_eQf5(C@mN(^kLD>1O0uEao2=gy}s{ELm} z4qEz=t(X4-Pv^cXsR1QPQVijJNBzQdJgjvH_RVN2E3JLcIv@OQh`?vJa6D#0-iSTP5^Ha@a6;019(ZJ z?wN^s<^q*G-|N$H&p(FXUB5P$Sq<7q(21Ssm)s@PP*;bJ|HTduK6nK^FVScILWNA6 zV{Mt3XQ7(65O^ONhhU34&1KfWa|B)^@C<D4Zz&iEPmSX@j-&DFp~a~0Suex4A4 ze~SzyA(M8HkNq^+nh-l&HQSVC9V|ublSblQdq!i+4Q1@UXn!_fks)d0iAx%R5?%%H zdPRkjk-&S>SCc&hyc59N2fR$+%>!N>@E%9`vp=-)WF@Q;-q05}NTTBi-27xX&3LdD z-H)D(E&mySUH-TN&_u?THkzAY^`ieVx#KEGg?$34 za1EgGX`QKe@oAE~>?g_j$vc>LesPH-=m1|!s?m^%N?J$Jk~Ay)P49JR*{mz%kxpHi z;khN0jOj@~1Xq% z*fXRhvUCB&zioFe9_8M*c0Cr4r}jJ-HRng;nGfzWnVKfFK6Nh=^&L%DG#JsY9$Ki} zgTW?yPYUS%SBDVyZXm{<_F-F18)iN!hkmzc$a}^0lYNe zS=^QIQcqBkm`0npeNRj{_{`V%k#Lfu)biIot9*B8uN66#d%-D@K0&iH$ z4e}g#o(J_vGVoRb&lGs!z-tDc1MqUCJUIvR{qehFIZFI541Z`oUxxb4CinM8GFDSo z(gwF68s<#VDwp|a4s(l9cix1qA3h?nPtL)7UNi7k1JAJOe3=k zO4if!c-~JA5TSE3I=J4AX4V}H2q{CpG{ll~jA-WQH^HoKA9G%Hzt z6Z5zk0FSqrts=i1-G_?0c~eiv<$8%;`n{-9k~UgLawWwh25Q z^f)};#fI=hxBor$f-+iS9BU z*Aj?l9z0$^X*uz+9EKOtv2;dEKfK>@0v<5vG}7;DgQu+9KK_s<>tyZ7c zp2zjbJYH6SK7DvY3wge9pp(^WQSqxl>=QhkkQd|dqx&~VL-j!Va&aRPU7|wcxc28K zp4sqto=Gi4!{I5qx?m!;+TR6h+PdMpj1Z+gwZfs{*`xstqY);D(RWF1Wau&m16 z&wILbFs(niUwA+;gLb}{j}o3P!FeA8N!Nb1_~xq1#Hvu2E_!(%Wo6VeTSt4!c;Xh7 z+c0mxw#Ck**k2Ei9Qz%8x26Ue+;zk|ufIeSJ_g`H34Uaq?G<9V&=^%E?xQNX)3<~#Zi@C<>s5_smo`}2DVuK;+Pf#-0R$5Z0pXy9!H9s~A01l~m871g~& zLf~BiUb@{C;t9MH!29pC_m_IDEdcWOdwljJI{j!L`fA{Q6l(g6xP{Ed)s1ISujFTB zw!ufnVuvp^svknL$7YiU{cCwV#dx4U+KaYUoF!_f&LcmK)#O@GDDIw~k2YyE5rf5c zD0PJ|-TBIt{&#a2DV;)iJjHkrW*$OKou0CRHPz_-B%QLsL*ub=%6c@~->UJBFqR z5#4W)A^i8x`Y$|b0Oaj=qsMp}7;HmxUVe*=zZ*~A>zd=O_d?P3E~#YCuM3!IBbHI4 zl)m&+U^OZHERggwT*8zFKpyYG?~ZiJEInGH>yHd;d(!$tbMTD*2B zJDM3jg3Rpys69_fJgBOPrY0+#$@hcTBfkU>GR1TyF8{@^%<4!InI=qQbwj?E^U#KS^rJf@Lpq|WvdU7q)ldqtj zoC)>h;e+l(9qLJ2s3(g9Q_2)(z&u_jK@#0MGX9hqd*Nhkf7YU#x4PwL=vT)ErC6we z_E&B9Q+6<~A)KbyiHI)&jQ|J;0*@eJJ_!i@U&pRH-Ogzcsrt{Jn>{wGLz=ER_RGh#!iPit4Cv%A%t>C{*qWCZo;mnJ zNDL-5P@k@Y`ZNRT)2Yer>nmk5^?Oji*qq)k)a*2aYC-*y1og|J&w)f6>KC=d%Vfs^ zU5cQ7355DZU9NsnGU67WUnbOlHBkSVLH!p5_1{lW|8)%-POd`zR}S@G&b5K`71VzR zp#F`Mf{m^UK$&QIt@pOc(OGd+K_$5b}8>FTUku3Y?6;t-B!5BX>bE{|kZ}@k&1&?-0yOI>WrA$^5weT9}uNg?ULT z%u8xvUh*x>OWwi!C6b%Jz`VpkIxmq2@_3mAS?pQp&kGhFWo)58p9}r@Ht5f-p+7$i W{dqR@=esPQ+HZpX{Kmor_WuFy+*|Dc literal 0 HcmV?d00001 diff --git a/mod/anims/kka3_unc_5.rtm b/mod/anims/kka3_unc_5.rtm new file mode 100644 index 0000000000000000000000000000000000000000..0c6d345b060350ebefa1d119244a1ecbd05abeda GIT binary patch literal 8992 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 literal 0 HcmV?d00001 diff --git a/mod/anims/kka3_unc_7.rtm b/mod/anims/kka3_unc_7.rtm new file mode 100644 index 0000000000000000000000000000000000000000..21a17990663bd3a293fa5809a5534eb953306c28 GIT binary patch literal 8992 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 Date: Sat, 21 Jul 2018 14:10:37 +0200 Subject: [PATCH 03/13] Rewrite Animations support Server only Rewrite AnimChanged EH --- README.md | 6 + ace_ragdoll_unconscious.VR/description.ext | 7 +- ace_ragdoll_unconscious.VR/mission.sqm | Bin 4191 -> 8302 bytes .../scripts/diwako/ragdoll/cba_settings.sqf | 31 ++++- .../scripts/diwako/ragdoll/fn_initRagdoll.sqf | 43 ++----- mod/cfgFunctions.hpp | 1 + mod/cfgMovesMaleSdr.hpp | 54 +++++++++ mod/config.cpp | 5 +- mod/functions/diwako/ragdoll/cba_settings.sqf | 31 ++++- .../diwako/ragdoll/fn_animChangedEH.sqf | 113 ++++++++++++++++++ .../diwako/ragdoll/fn_initRagdoll.sqf | 43 ++----- 11 files changed, 257 insertions(+), 77 deletions(-) create mode 100644 mod/cfgMovesMaleSdr.hpp create mode 100644 mod/functions/diwako/ragdoll/fn_animChangedEH.sqf diff --git a/README.md b/README.md index b1777e9..04bf3cd 100644 --- a/README.md +++ b/README.md @@ -17,6 +17,9 @@ In order to use this script, you need to run these mods alongside it: Mount this mod and configure it in Eden editor. Any configuration will be done within Eden editor and in `Settings -> Addon Options -> Diwako's ACE Ragdoll` +Beginning with version 1.1 server only mode is available for the mod is avaiable. Script version has the option as well, but it is a rather useless thing there.\ +When server only mode is activated then only the server needs to run the mod, the drawback is that no custom animations will be supported! + ## Troubleshooting In any event, that something goes wrong, you can disable ragdolling by setting the variable `diwako_ragdoll_ragdolling` to `false` on all machines.\ Additionally for ingame error handling you can either run ACE's headbug fix or reapply unconsciousness and take it away again. @@ -24,6 +27,9 @@ Additionally for ingame error handling you can either run ACE's headbug fix or r ## Additional Discussion can be found in the [BI Thread](https://forums.bohemia.net/forums/topic/215720-release-ragdolling-on-player-ace-unconsciousness/), for bug reports please use the thread on the BI forums. +## Special thanks +Special thanks to KokaKolaA3 for donating animations! + ## License Copyright 2018 diwako diff --git a/ace_ragdoll_unconscious.VR/description.ext b/ace_ragdoll_unconscious.VR/description.ext index c4141ae..1f8a8cf 100644 --- a/ace_ragdoll_unconscious.VR/description.ext +++ b/ace_ragdoll_unconscious.VR/description.ext @@ -10,6 +10,11 @@ class cfgFunctions { class functions { file = "scripts\diwako\ragdoll"; class initRagdoll{}; + class animChangedEH{}; }; }; -}; \ No newline at end of file +}; + +// Debug (and CBA target debug) +enableDebugConsole = 1; +enableTargetDebug = 1; \ No newline at end of file diff --git a/ace_ragdoll_unconscious.VR/mission.sqm b/ace_ragdoll_unconscious.VR/mission.sqm index 819cdf7e6abb5d0993b127323dbd9bf61dd3631a..8ac22b5766b9457969895706c02aa1e8ef41accd 100644 GIT binary patch literal 8302 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 Kbj+DZ;Nkyiw$|AI literal 4191 zcmbVPU2IfE6h3p?LInj(4(r;7_~VZOfXLR$8c$m}S^I-Mx1A-p$3|WCYT68{5fZ4?%liFT?#a5d(XM& z=ey^8b7lr4p9B0E#NQ*^@Xto(G=vPjz=x;l#f0mrK<2pO@CAwvciq4b!GX+3AzS8> z7ZsWpCV><)fm^Q#lnU9p#XUi17? z&I=W~r!ve@K?(gsKu`dAC93({oD3SCDUyre6$vt(H}u8cAg;wK7jVm1?y#g}q5-D}gFwt*|n@uF8Rg@t`cK9#7?c z>^nB!YY2Qk5n?70)vk0cun0nhiu0r2<-ten`)TqTBVdLADOV+54<^1Rle*RA3lj zfW7AnD>VUnx#Ab-<*_Je&BpEdg(7B@lHM@{8p2lnEuM>70G-2$a8L;>j$7zOmN1w| zGkffH>@mPx5Mt{CKkqLE@WudEB$1gpOBIe4Cg)_{vt;LBUR`KVgnPVD6|PsL$(XH& zDySxKuA;q0z-Vabe7N!#7*39ho6n80DYlTKnBdrT;ns0BV1{t6!dH-4l!t;KZR4Cyd24n`TUS_gZ6&iBwY866WHZy5gC>As&7JbEKtxEC_ao%8<^c^6 zP3&&`JBeOoxjz5?Maw(k-(K9lbza&K*!uk2kMktVLo5Im^s(n&;(AldhOBH~5NMe*^wH4%S|WZU~& zC?|=S-b+L@9vwu~$|Rt>CgLIj(Vu0(lp@)Jd7BDhiAX0BV;jRTMAS+{pACr#H64_^ zV#k2mxQRYaZ=ENG3lW6a*%}IF}zHgI9;Q0NNAlZHbsq-eQ-2t~S+w^-*rNekkNiBH(b;}nk7V1AhY)E*4n1Ryaoi9yptSOKNaJ0#+r&yhHFiC)et=kX zCq-zxM)f_XzE=%!zbogmoivKv#QvCYHLXK?OC++W~Ni4B>~QJPgC#^mh$5~uBH8xfeL`!wg7eFmcCbY&?*==5PF9NM z9npsjdtiSQ52CtmmgmEfY_T6e8Sl#aFhm=pv5mlw&(2O8m4lZze>riXJWVHD(uMFb zKI&U{>pn^CA~o*2YcF}<&7 hxzjGL$vVH{7mcPBtQ8=wubI7q> "CfgPatches" >> "diwako_ragdoll")}) then { + // mod version found + diwako_ragdoll_animHolder pushBack ["kka3_unc_2"]; // 0 on their back + diwako_ragdoll_animHolder pushBack ["kka3_unc_1", "kka3_unc_3", "kka3_unc_4","unconscious","KIA_passenger_boat_holdleft"]; // 1 on their belly + diwako_ragdoll_animHolder pushBack ["kka3_unc_7","kka3_unc_8"]; // 2 on their right shoulder + diwako_ragdoll_animHolder pushBack ["kka3_unc_5","kka3_unc_6","KIA_driver_boat01"]; // 3 on their left shoulder + } else { + // script version or server only mode + diwako_ragdoll_animHolder pushBack ["unconscious"]; // 0 on their back + diwako_ragdoll_animHolder pushBack ["unconscious","KIA_passenger_boat_holdleft"]; // 1 on their belly + diwako_ragdoll_animHolder pushBack ["unconscious"]; // 2 on their right shoulder + diwako_ragdoll_animHolder pushBack ["unconscious","KIA_driver_boat01"]; // 3 on their left shoulder + }; + }; + + if( _heightDif > 0.2 || _heightDif < -0.2) then { + // unit on side + // first one is right shoulder, second one is on left shoulder + _anim = selectRandom ([ diwako_ragdoll_animHolder#2 , diwako_ragdoll_animHolder#3 ] select (_heightDif < -0.2)); + } else { + if(_vRightShoulder#0 > _vLeftShoulder#0) then { + // unit on their belly + _anim = selectRandom (diwako_ragdoll_animHolder#1); + } else { + // unit on their back + _anim = selectRandom (diwako_ragdoll_animHolder#0); + }; + }; + + _unit setUnconscious false; + // play animation + [ + { + params ["_unit","_anim"]; + if(_unit getVariable ["ACE_isUnconscious",false]) then { + // [_unit, _anim, 2, true] call ace_common_fnc_doAnimation; + // ["ace_common_switchMove", [_unit, _anim]] call CBA_fnc_globalEvent; + _unit switchMove _anim; + }; + }, // code + [_unit,_anim], // params + 0.2 // delay + ] call CBA_fnc_waitAndExecute; + + // combat network sync issues + if(isMultiplayer) then { + [ + { + params ["_unit","_anim"]; + if((_unit getVariable ["ACE_isUnconscious",false]) && // unit still unconscious + {(isNull objectParent _unit) && // unit not in a car + {!([_unit] call ace_medical_fnc_isBeingCarried) && // not being carried + {!([_unit] call ace_medical_fnc_isBeingDragged)}}} // not being dragged + ) then { + // reapply unconscious animation just in case + // [_unit, _anim, 2, true] call ace_common_fnc_doAnimation; + // ["ace_common_switchMove", [_unit, _anim]] call CBA_fnc_globalEvent; + _unit switchMove _anim; + }; + if(!(_unit getVariable ["ACE_isUnconscious",false])) then { + // unit is not unconscious anymore + _unit setUnconscious false; + // free unit of unconscious animation if it is still trapped in it + if(animationState _unit == _anim) then { + _unit switchMove ""; + }; + }; + }, // code + [_unit,_anim], // params + 6.25 // delay + ] call CBA_fnc_waitAndExecute; + }; +}; \ No newline at end of file diff --git a/mod/functions/diwako/ragdoll/fn_initRagdoll.sqf b/mod/functions/diwako/ragdoll/fn_initRagdoll.sqf index b8ac4ba..6a9d2e2 100644 --- a/mod/functions/diwako/ragdoll/fn_initRagdoll.sqf +++ b/mod/functions/diwako/ragdoll/fn_initRagdoll.sqf @@ -22,44 +22,21 @@ diwako_ragdoll_ragdollRunning = true; ["ace_unconscious", { params [["_unit", objNull],["_state", false]]; - if(!diwako_ragdoll_ragdolling) exitWith {}; // ragdolling if it active - if( (_unit != player && {!diwako_ragdoll_ai}) || (!local _unit)) exitWith {}; // only ragdoll players and only ragdolling if it active - if(_state && {vehicle _unit == _unit && {!([_unit] call ace_medical_fnc_isBeingCarried) && {!([_unit] call ace_medical_fnc_isBeingDragged)}}}) then { - // ragdoll player + // if(!local _unit || {!diwako_ragdoll_ragdolling}) exitWith {}; // ragdolling if it's active and unit local + if(!diwako_ragdoll_ragdolling) exitWith {}; // ragdolling if it's active + if((!(isPlayer _unit) && {!diwako_ragdoll_ai})) exitWith {}; // only ragdoll players and only ragdolling AI if that option is set active + if(_state && {(isNull objectParent _unit) && {!([_unit] call ace_medical_fnc_isBeingCarried) && {!([_unit] call ace_medical_fnc_isBeingDragged)}}}) then { + // ragdoll unit _unit setUnconscious true; + + _unit addEventHandler ["AnimChanged",{ + _this call diwako_ragdoll_fnc_animChangedEH; + }]; }; if(!_state) then { - // player woke up before ragdolling was finished + // unit woke up before ragdolling was finished _unit setUnconscious false; }; }] call CBA_fnc_addEventHandler; -["CAManBase", "AnimChanged", { - params ["_unit","_anim"]; - if(!diwako_ragdoll_ragdolling) exitWith {}; // disable ragdolling mid mission - if( (_unit != player && {!diwako_ragdoll_ai}) || !(local _unit)) exitWith {}; // only run on players if ai setting is disabled - if(_anim == "unconsciousrevivedefault" && {alive _unit && {_unit getVariable ["ACE_isUnconscious",false] && {vehicle _unit == _unit}}}) then { - // unit stopped ragdolling, apply ace_death animation to unit - _unit setUnconscious false; - [_unit, [_unit] call ace_common_fnc_getDeathAnim, 2, true] call ace_common_fnc_doAnimation; - if(isMultiplayer) then { - // combat sync issues - [ - { - params ["_unit"]; - if(!(_unit getVariable ["ACE_isUnconscious",false])) then { - // unit is not unconscious anymore - _unit setUnconscious false; - } else { - // unit is still unconscious, reapply death animation just in case and sync it again to all clients - [_unit, [_unit] call ace_common_fnc_getDeathAnim, 2, true] call ace_common_fnc_doAnimation; - }; - }, // code - [_unit], // params - 5 // delay - ] call CBA_fnc_waitAndExecute; - }; - }; -}] call CBA_fnc_addClassEventHandler; - player createDiaryRecord ["CBA_docs", ["Ragdolling", "Ragdolling has been activated in this mission! Better check those bodies!"]]; \ No newline at end of file From 60698dc79a76cf27ea1eaa252f0ae690fa3c0b9d Mon Sep 17 00:00:00 2001 From: diwako Date: Sat, 21 Jul 2018 14:16:33 +0200 Subject: [PATCH 04/13] Tabs to spaces --- mod/cfgFunctions.hpp | 16 ++++++++-------- mod/cfgMovesMaleSdr.hpp | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/mod/cfgFunctions.hpp b/mod/cfgFunctions.hpp index 81c5be8..4ad11bd 100644 --- a/mod/cfgFunctions.hpp +++ b/mod/cfgFunctions.hpp @@ -1,10 +1,10 @@ class cfgFunctions { - class diwako_ragdoll { - tag="diwako_ragdoll"; - class functions { - file = "diwako_ragdoll\functions\diwako\ragdoll"; - class initRagdoll{}; - class animChangedEH{}; - }; - }; + class diwako_ragdoll { + tag="diwako_ragdoll"; + class functions { + file = "diwako_ragdoll\functions\diwako\ragdoll"; + class initRagdoll{}; + class animChangedEH{}; + }; + }; }; \ No newline at end of file diff --git a/mod/cfgMovesMaleSdr.hpp b/mod/cfgMovesMaleSdr.hpp index ee154a7..d7f683e 100644 --- a/mod/cfgMovesMaleSdr.hpp +++ b/mod/cfgMovesMaleSdr.hpp @@ -48,7 +48,7 @@ class CfgMovesMaleSdr }; class kka3_unc_8: kka3_unc_1 { - file = "diwako_ragdoll\anims\kka3_unc_8.rtm"; + file = "diwako_ragdoll\anims\kka3_unc_8.rtm"; }; }; }; \ No newline at end of file From cadb2fa6022a29194a901715f31746aedb19efc1 Mon Sep 17 00:00:00 2001 From: diwako Date: Sat, 21 Jul 2018 14:31:01 +0200 Subject: [PATCH 05/13] Spaces and not tabs! --- mod/cfgFunctions.hpp | 9 ++-- mod/cfgMovesMaleSdr.hpp | 99 +++++++++++++++++++++-------------------- 2 files changed, 56 insertions(+), 52 deletions(-) diff --git a/mod/cfgFunctions.hpp b/mod/cfgFunctions.hpp index 4ad11bd..30c92da 100644 --- a/mod/cfgFunctions.hpp +++ b/mod/cfgFunctions.hpp @@ -1,7 +1,10 @@ -class cfgFunctions { - class diwako_ragdoll { +class cfgFunctions +{ + class diwako_ragdoll + { tag="diwako_ragdoll"; - class functions { + class functions + { file = "diwako_ragdoll\functions\diwako\ragdoll"; class initRagdoll{}; class animChangedEH{}; diff --git a/mod/cfgMovesMaleSdr.hpp b/mod/cfgMovesMaleSdr.hpp index d7f683e..3e09cad 100644 --- a/mod/cfgMovesMaleSdr.hpp +++ b/mod/cfgMovesMaleSdr.hpp @@ -1,54 +1,55 @@ class CfgMovesMaleSdr { - class States { - class Unconscious; - class kka3_unc_1: Unconscious - { - file = "diwako_ragdoll\anims\kka3_unc_1.rtm"; - collisionShape = "A3\anims_f\Data\Geom\Sdr\geom_empty.p3d"; - actions = "ReviveWoundedDefaultActions"; - looped = 1; - useIdles = 1; - interpolationRestart = 0; - interpolationSpeed = 60; - leaning = "empty"; - aiming = "empty"; - aimingBody = "empty"; - head = "headNo"; - forceAim = 1; - variantAfter[] = {17,17,17}; - variantsPlayer[] = {}; - variantsAI[] = {}; - InterpolateTo[] = {}; - ConnectTo[] = {}; - }; + class States + { + class Unconscious; + class kka3_unc_1: Unconscious + { + file = "diwako_ragdoll\anims\kka3_unc_1.rtm"; + collisionShape = "A3\anims_f\Data\Geom\Sdr\geom_empty.p3d"; + actions = "ReviveWoundedDefaultActions"; + looped = 1; + useIdles = 1; + interpolationRestart = 0; + interpolationSpeed = 60; + leaning = "empty"; + aiming = "empty"; + aimingBody = "empty"; + head = "headNo"; + forceAim = 1; + variantAfter[] = {17,17,17}; + variantsPlayer[] = {}; + variantsAI[] = {}; + InterpolateTo[] = {}; + ConnectTo[] = {}; + }; class kka3_unc_2: kka3_unc_1 - { - file = "diwako_ragdoll\anims\kka3_unc_2.rtm"; - }; - class kka3_unc_3: kka3_unc_1 - { - file = "diwako_ragdoll\anims\kka3_unc_3.rtm"; - }; - class kka3_unc_4: kka3_unc_1 - { - file = "diwako_ragdoll\anims\kka3_unc_4.rtm"; - }; - class kka3_unc_5: kka3_unc_1 - { - file = "diwako_ragdoll\anims\kka3_unc_5.rtm"; - }; - class kka3_unc_6: kka3_unc_1 - { - file = "diwako_ragdoll\anims\kka3_unc_6.rtm"; - }; - class kka3_unc_7: kka3_unc_1 - { - file = "diwako_ragdoll\anims\kka3_unc_7.rtm"; - }; - class kka3_unc_8: kka3_unc_1 - { + { + file = "diwako_ragdoll\anims\kka3_unc_2.rtm"; + }; + class kka3_unc_3: kka3_unc_1 + { + file = "diwako_ragdoll\anims\kka3_unc_3.rtm"; + }; + class kka3_unc_4: kka3_unc_1 + { + file = "diwako_ragdoll\anims\kka3_unc_4.rtm"; + }; + class kka3_unc_5: kka3_unc_1 + { + file = "diwako_ragdoll\anims\kka3_unc_5.rtm"; + }; + class kka3_unc_6: kka3_unc_1 + { + file = "diwako_ragdoll\anims\kka3_unc_6.rtm"; + }; + class kka3_unc_7: kka3_unc_1 + { + file = "diwako_ragdoll\anims\kka3_unc_7.rtm"; + }; + class kka3_unc_8: kka3_unc_1 + { file = "diwako_ragdoll\anims\kka3_unc_8.rtm"; - }; - }; + }; + }; }; \ No newline at end of file From d149023bfc6e59aaeb1b62d98c7aba7d316c3759 Mon Sep 17 00:00:00 2001 From: diwako Date: Sat, 21 Jul 2018 14:32:55 +0200 Subject: [PATCH 06/13] Spaces! --- mod/config.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/mod/config.cpp b/mod/config.cpp index 4d7c51b..93f2943 100644 --- a/mod/config.cpp +++ b/mod/config.cpp @@ -15,14 +15,14 @@ class CfgPatches { authorUrl = "https://github.com/diwako/a3AceRagdoll"; version = VERSION; versionStr = VERSION; - license = "https://www.bohemia.net/community/licenses/arma-public-license-share-alike"; + license = "https://www.bohemia.net/community/licenses/arma-public-license-share-alike"; }; }; class Extended_PreInit_EventHandlers { - class diwako_ragdoll { - init = "call compile preprocessFileLineNumbers 'diwako_ragdoll\functions\diwako\ragdoll\cba_settings.sqf'"; - }; + class diwako_ragdoll { + init = "call compile preprocessFileLineNumbers 'diwako_ragdoll\functions\diwako\ragdoll\cba_settings.sqf'"; + }; }; #include "cfgFunctions.hpp" From 7ad11c4ca50be1b46dcc4a26aaccb7e62dddad19 Mon Sep 17 00:00:00 2001 From: diwako Date: Sat, 21 Jul 2018 14:56:03 +0200 Subject: [PATCH 07/13] Sycn Mod and Script version --- .../diwako/ragdoll/fn_animChangedEH.sqf | 113 ++++++++++++++++++ 1 file changed, 113 insertions(+) create mode 100644 ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf diff --git a/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf b/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf new file mode 100644 index 0000000..b8637e4 --- /dev/null +++ b/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf @@ -0,0 +1,113 @@ +/* + Author: diwako + + Description: + Code for AnimChanged eventhandler + + Parameter(s): + _unit - Ragdolled unit + _anim - Currentl changed animation + + Examples: + (begin) + [_unit,_anim] call diwako_ragdoll_fnc_animChangedEH; + (end) + + Returns: + none +*/ +params ["_unit","_anim"]; +if(!(_unit getVariable ["ACE_isUnconscious",false])) exitWith {_unit removeEventHandler ["AnimChanged", _thisEventHandler]}; // do not run if unit is conscious +if(!(alive _unit) && // do not run if unit is dead + {!(isNull objectParent _unit)}) exitWith {}; // do not run if unit in any vehicle + +_anim = toLower(_anim); + +if( (_anim find "unconsciousrevivedefault") != -1 ) then { + // remove this EH + _unit removeEventHandler ["AnimChanged", _thisEventHandler]; + _anim = "unconscious"; + + // figure out which position state is need + private _vRightShoulder = _unit selectionPosition "rightshoulder"; + private _vLeftShoulder = _unit selectionPosition "leftshoulder"; + private _heightDif = _vRightShoulder#2 - _vLeftShoulder#2; + + // array of array for each animation + private _animHolder = []; + + if(isNil "diwako_ragdoll_animHolder") then { + diwako_ragdoll_animHolder = []; + if(!diwako_ragdoll_server_only && {isClass(configFile >> "CfgPatches" >> "diwako_ragdoll")}) then { + // mod version found + diwako_ragdoll_animHolder pushBack ["kka3_unc_2"]; // 0 on their back + diwako_ragdoll_animHolder pushBack ["kka3_unc_1", "kka3_unc_3", "kka3_unc_4","unconscious","KIA_passenger_boat_holdleft"]; // 1 on their belly + diwako_ragdoll_animHolder pushBack ["kka3_unc_7","kka3_unc_8"]; // 2 on their right shoulder + diwako_ragdoll_animHolder pushBack ["kka3_unc_5","kka3_unc_6","KIA_driver_boat01"]; // 3 on their left shoulder + } else { + // script version or server only mode + diwako_ragdoll_animHolder pushBack ["unconscious"]; // 0 on their back + diwako_ragdoll_animHolder pushBack ["unconscious","KIA_passenger_boat_holdleft"]; // 1 on their belly + diwako_ragdoll_animHolder pushBack ["unconscious"]; // 2 on their right shoulder + diwako_ragdoll_animHolder pushBack ["unconscious","KIA_driver_boat01"]; // 3 on their left shoulder + }; + }; + + if( _heightDif > 0.2 || _heightDif < -0.2) then { + // unit on side + // first one is right shoulder, second one is on left shoulder + _anim = selectRandom ([ diwako_ragdoll_animHolder#2 , diwako_ragdoll_animHolder#3 ] select (_heightDif < -0.2)); + } else { + if(_vRightShoulder#0 > _vLeftShoulder#0) then { + // unit on their belly + _anim = selectRandom (diwako_ragdoll_animHolder#1); + } else { + // unit on their back + _anim = selectRandom (diwako_ragdoll_animHolder#0); + }; + }; + + _unit setUnconscious false; + // play animation + [ + { + params ["_unit","_anim"]; + if(_unit getVariable ["ACE_isUnconscious",false]) then { + // [_unit, _anim, 2, true] call ace_common_fnc_doAnimation; + // ["ace_common_switchMove", [_unit, _anim]] call CBA_fnc_globalEvent; + _unit switchMove _anim; + }; + }, // code + [_unit,_anim], // params + 0.2 // delay + ] call CBA_fnc_waitAndExecute; + + // combat network sync issues + if(isMultiplayer) then { + [ + { + params ["_unit","_anim"]; + if((_unit getVariable ["ACE_isUnconscious",false]) && // unit still unconscious + {(isNull objectParent _unit) && // unit not in a car + {!([_unit] call ace_medical_fnc_isBeingCarried) && // not being carried + {!([_unit] call ace_medical_fnc_isBeingDragged)}}} // not being dragged + ) then { + // reapply unconscious animation just in case + // [_unit, _anim, 2, true] call ace_common_fnc_doAnimation; + // ["ace_common_switchMove", [_unit, _anim]] call CBA_fnc_globalEvent; + _unit switchMove _anim; + }; + if(!(_unit getVariable ["ACE_isUnconscious",false])) then { + // unit is not unconscious anymore + _unit setUnconscious false; + // free unit of unconscious animation if it is still trapped in it + if(animationState _unit == _anim) then { + _unit switchMove ""; + }; + }; + }, // code + [_unit,_anim], // params + 6.25 // delay + ] call CBA_fnc_waitAndExecute; + }; +}; \ No newline at end of file From 66651945fd00414da3e8548e820855827b7e3826 Mon Sep 17 00:00:00 2001 From: diwako Date: Sat, 21 Jul 2018 16:50:29 +0200 Subject: [PATCH 08/13] Revert back to class EH --- .../scripts/diwako/ragdoll/fn_animChangedEH.sqf | 6 ++---- .../scripts/diwako/ragdoll/fn_initRagdoll.sqf | 8 ++++---- mod/functions/diwako/ragdoll/fn_animChangedEH.sqf | 6 ++---- mod/functions/diwako/ragdoll/fn_initRagdoll.sqf | 8 ++++---- 4 files changed, 12 insertions(+), 16 deletions(-) diff --git a/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf b/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf index b8637e4..d86431c 100644 --- a/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf +++ b/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf @@ -17,15 +17,13 @@ none */ params ["_unit","_anim"]; -if(!(_unit getVariable ["ACE_isUnconscious",false])) exitWith {_unit removeEventHandler ["AnimChanged", _thisEventHandler]}; // do not run if unit is conscious +if(!(_unit getVariable ["ACE_isUnconscious",false])) exitWith {}; // do not run if unit is conscious if(!(alive _unit) && // do not run if unit is dead {!(isNull objectParent _unit)}) exitWith {}; // do not run if unit in any vehicle _anim = toLower(_anim); -if( (_anim find "unconsciousrevivedefault") != -1 ) then { - // remove this EH - _unit removeEventHandler ["AnimChanged", _thisEventHandler]; +if( (_anim find "unconsciousrevive") != -1 ) then { _anim = "unconscious"; // figure out which position state is need diff --git a/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_initRagdoll.sqf b/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_initRagdoll.sqf index 6a9d2e2..0e928b6 100644 --- a/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_initRagdoll.sqf +++ b/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_initRagdoll.sqf @@ -28,10 +28,6 @@ diwako_ragdoll_ragdollRunning = true; if(_state && {(isNull objectParent _unit) && {!([_unit] call ace_medical_fnc_isBeingCarried) && {!([_unit] call ace_medical_fnc_isBeingDragged)}}}) then { // ragdoll unit _unit setUnconscious true; - - _unit addEventHandler ["AnimChanged",{ - _this call diwako_ragdoll_fnc_animChangedEH; - }]; }; if(!_state) then { // unit woke up before ragdolling was finished @@ -39,4 +35,8 @@ diwako_ragdoll_ragdollRunning = true; }; }] call CBA_fnc_addEventHandler; +["CAManBase", "AnimChanged", { + _this call diwako_ragdoll_fnc_animChangedEH; +}] call CBA_fnc_addClassEventHandler; + player createDiaryRecord ["CBA_docs", ["Ragdolling", "Ragdolling has been activated in this mission! Better check those bodies!"]]; \ No newline at end of file diff --git a/mod/functions/diwako/ragdoll/fn_animChangedEH.sqf b/mod/functions/diwako/ragdoll/fn_animChangedEH.sqf index b8637e4..d86431c 100644 --- a/mod/functions/diwako/ragdoll/fn_animChangedEH.sqf +++ b/mod/functions/diwako/ragdoll/fn_animChangedEH.sqf @@ -17,15 +17,13 @@ none */ params ["_unit","_anim"]; -if(!(_unit getVariable ["ACE_isUnconscious",false])) exitWith {_unit removeEventHandler ["AnimChanged", _thisEventHandler]}; // do not run if unit is conscious +if(!(_unit getVariable ["ACE_isUnconscious",false])) exitWith {}; // do not run if unit is conscious if(!(alive _unit) && // do not run if unit is dead {!(isNull objectParent _unit)}) exitWith {}; // do not run if unit in any vehicle _anim = toLower(_anim); -if( (_anim find "unconsciousrevivedefault") != -1 ) then { - // remove this EH - _unit removeEventHandler ["AnimChanged", _thisEventHandler]; +if( (_anim find "unconsciousrevive") != -1 ) then { _anim = "unconscious"; // figure out which position state is need diff --git a/mod/functions/diwako/ragdoll/fn_initRagdoll.sqf b/mod/functions/diwako/ragdoll/fn_initRagdoll.sqf index 6a9d2e2..0e928b6 100644 --- a/mod/functions/diwako/ragdoll/fn_initRagdoll.sqf +++ b/mod/functions/diwako/ragdoll/fn_initRagdoll.sqf @@ -28,10 +28,6 @@ diwako_ragdoll_ragdollRunning = true; if(_state && {(isNull objectParent _unit) && {!([_unit] call ace_medical_fnc_isBeingCarried) && {!([_unit] call ace_medical_fnc_isBeingDragged)}}}) then { // ragdoll unit _unit setUnconscious true; - - _unit addEventHandler ["AnimChanged",{ - _this call diwako_ragdoll_fnc_animChangedEH; - }]; }; if(!_state) then { // unit woke up before ragdolling was finished @@ -39,4 +35,8 @@ diwako_ragdoll_ragdollRunning = true; }; }] call CBA_fnc_addEventHandler; +["CAManBase", "AnimChanged", { + _this call diwako_ragdoll_fnc_animChangedEH; +}] call CBA_fnc_addClassEventHandler; + player createDiaryRecord ["CBA_docs", ["Ragdolling", "Ragdolling has been activated in this mission! Better check those bodies!"]]; \ No newline at end of file From edd25ba71adf49964bd1c427edcba2f9baae1f1d Mon Sep 17 00:00:00 2001 From: diwako Date: Sat, 21 Jul 2018 19:54:16 +0200 Subject: [PATCH 09/13] Debugging to catch player specific animations --- .../scripts/diwako/ragdoll/fn_animChangedEH.sqf | 9 ++++++++- .../scripts/diwako/ragdoll/fn_initRagdoll.sqf | 1 + mod/functions/diwako/ragdoll/fn_animChangedEH.sqf | 9 ++++++++- mod/functions/diwako/ragdoll/fn_initRagdoll.sqf | 1 + 4 files changed, 18 insertions(+), 2 deletions(-) diff --git a/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf b/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf index d86431c..1fcfdc1 100644 --- a/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf +++ b/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf @@ -23,7 +23,14 @@ if(!(alive _unit) && // do not run if unit is dead _anim = toLower(_anim); -if( (_anim find "unconsciousrevive") != -1 ) then { +if(isPlayer _unit) then { + diw_last = _anim; + diw_debug pushBackUnique _anim; +}; + +if((_anim find "unconsciousrevive") != -1 || // catch ragdoll recovery animations + {_anim in ["unconsciousoutprone"] || // catch also ragdoll recovery animations + {(_anim find "amove") == 0 }} ) then { // catch any movement or stance type of animation (player specific clause) _anim = "unconscious"; // figure out which position state is need diff --git a/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_initRagdoll.sqf b/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_initRagdoll.sqf index 0e928b6..a9d1ff0 100644 --- a/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_initRagdoll.sqf +++ b/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_initRagdoll.sqf @@ -35,6 +35,7 @@ diwako_ragdoll_ragdollRunning = true; }; }] call CBA_fnc_addEventHandler; +diw_debug = []; ["CAManBase", "AnimChanged", { _this call diwako_ragdoll_fnc_animChangedEH; }] call CBA_fnc_addClassEventHandler; diff --git a/mod/functions/diwako/ragdoll/fn_animChangedEH.sqf b/mod/functions/diwako/ragdoll/fn_animChangedEH.sqf index d86431c..1fcfdc1 100644 --- a/mod/functions/diwako/ragdoll/fn_animChangedEH.sqf +++ b/mod/functions/diwako/ragdoll/fn_animChangedEH.sqf @@ -23,7 +23,14 @@ if(!(alive _unit) && // do not run if unit is dead _anim = toLower(_anim); -if( (_anim find "unconsciousrevive") != -1 ) then { +if(isPlayer _unit) then { + diw_last = _anim; + diw_debug pushBackUnique _anim; +}; + +if((_anim find "unconsciousrevive") != -1 || // catch ragdoll recovery animations + {_anim in ["unconsciousoutprone"] || // catch also ragdoll recovery animations + {(_anim find "amove") == 0 }} ) then { // catch any movement or stance type of animation (player specific clause) _anim = "unconscious"; // figure out which position state is need diff --git a/mod/functions/diwako/ragdoll/fn_initRagdoll.sqf b/mod/functions/diwako/ragdoll/fn_initRagdoll.sqf index 0e928b6..a9d1ff0 100644 --- a/mod/functions/diwako/ragdoll/fn_initRagdoll.sqf +++ b/mod/functions/diwako/ragdoll/fn_initRagdoll.sqf @@ -35,6 +35,7 @@ diwako_ragdoll_ragdollRunning = true; }; }] call CBA_fnc_addEventHandler; +diw_debug = []; ["CAManBase", "AnimChanged", { _this call diwako_ragdoll_fnc_animChangedEH; }] call CBA_fnc_addClassEventHandler; From 01ca28a9e8cfdf06ecedad68f71f5925bf5cea95 Mon Sep 17 00:00:00 2001 From: diwako Date: Sat, 21 Jul 2018 23:08:14 +0200 Subject: [PATCH 10/13] Sync player animations --- .../scripts/diwako/ragdoll/fn_animChangedEH.sqf | 14 ++++++++++---- mod/functions/diwako/ragdoll/fn_animChangedEH.sqf | 14 ++++++++++---- 2 files changed, 20 insertions(+), 8 deletions(-) diff --git a/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf b/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf index 1fcfdc1..b69b28c 100644 --- a/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf +++ b/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf @@ -79,8 +79,11 @@ if((_anim find "unconsciousrevive") != -1 || // catch ragdoll recovery animation params ["_unit","_anim"]; if(_unit getVariable ["ACE_isUnconscious",false]) then { // [_unit, _anim, 2, true] call ace_common_fnc_doAnimation; - // ["ace_common_switchMove", [_unit, _anim]] call CBA_fnc_globalEvent; - _unit switchMove _anim; + if(_unit == ace_player) then { + ["ace_common_switchMove", [_unit, _anim]] call CBA_fnc_globalEvent; + } else { + _unit switchMove _anim; + }; }; }, // code [_unit,_anim], // params @@ -99,8 +102,11 @@ if((_anim find "unconsciousrevive") != -1 || // catch ragdoll recovery animation ) then { // reapply unconscious animation just in case // [_unit, _anim, 2, true] call ace_common_fnc_doAnimation; - // ["ace_common_switchMove", [_unit, _anim]] call CBA_fnc_globalEvent; - _unit switchMove _anim; + if(_unit == ace_player) then { + ["ace_common_switchMove", [_unit, _anim]] call CBA_fnc_globalEvent; + } else { + _unit switchMove _anim; + }; }; if(!(_unit getVariable ["ACE_isUnconscious",false])) then { // unit is not unconscious anymore diff --git a/mod/functions/diwako/ragdoll/fn_animChangedEH.sqf b/mod/functions/diwako/ragdoll/fn_animChangedEH.sqf index 1fcfdc1..b69b28c 100644 --- a/mod/functions/diwako/ragdoll/fn_animChangedEH.sqf +++ b/mod/functions/diwako/ragdoll/fn_animChangedEH.sqf @@ -79,8 +79,11 @@ if((_anim find "unconsciousrevive") != -1 || // catch ragdoll recovery animation params ["_unit","_anim"]; if(_unit getVariable ["ACE_isUnconscious",false]) then { // [_unit, _anim, 2, true] call ace_common_fnc_doAnimation; - // ["ace_common_switchMove", [_unit, _anim]] call CBA_fnc_globalEvent; - _unit switchMove _anim; + if(_unit == ace_player) then { + ["ace_common_switchMove", [_unit, _anim]] call CBA_fnc_globalEvent; + } else { + _unit switchMove _anim; + }; }; }, // code [_unit,_anim], // params @@ -99,8 +102,11 @@ if((_anim find "unconsciousrevive") != -1 || // catch ragdoll recovery animation ) then { // reapply unconscious animation just in case // [_unit, _anim, 2, true] call ace_common_fnc_doAnimation; - // ["ace_common_switchMove", [_unit, _anim]] call CBA_fnc_globalEvent; - _unit switchMove _anim; + if(_unit == ace_player) then { + ["ace_common_switchMove", [_unit, _anim]] call CBA_fnc_globalEvent; + } else { + _unit switchMove _anim; + }; }; if(!(_unit getVariable ["ACE_isUnconscious",false])) then { // unit is not unconscious anymore From 589e098c7afb41a04d943925dd1a8ad395ed90d7 Mon Sep 17 00:00:00 2001 From: diwako Date: Sat, 21 Jul 2018 23:12:29 +0200 Subject: [PATCH 11/13] widen animation range to search for --- .../scripts/diwako/ragdoll/fn_animChangedEH.sqf | 4 ++-- mod/functions/diwako/ragdoll/fn_animChangedEH.sqf | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf b/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf index b69b28c..93870ec 100644 --- a/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf +++ b/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf @@ -29,8 +29,8 @@ if(isPlayer _unit) then { }; if((_anim find "unconsciousrevive") != -1 || // catch ragdoll recovery animations - {_anim in ["unconsciousoutprone"] || // catch also ragdoll recovery animations - {(_anim find "amove") == 0 }} ) then { // catch any movement or stance type of animation (player specific clause) + {_anim == "unconsciousoutprone" || // catch another ragdoll recovery animation + {(_anim find "amov") == 0 }} ) then { // catch any movement or stance type of animation (player specific clause) _anim = "unconscious"; // figure out which position state is need diff --git a/mod/functions/diwako/ragdoll/fn_animChangedEH.sqf b/mod/functions/diwako/ragdoll/fn_animChangedEH.sqf index b69b28c..93870ec 100644 --- a/mod/functions/diwako/ragdoll/fn_animChangedEH.sqf +++ b/mod/functions/diwako/ragdoll/fn_animChangedEH.sqf @@ -29,8 +29,8 @@ if(isPlayer _unit) then { }; if((_anim find "unconsciousrevive") != -1 || // catch ragdoll recovery animations - {_anim in ["unconsciousoutprone"] || // catch also ragdoll recovery animations - {(_anim find "amove") == 0 }} ) then { // catch any movement or stance type of animation (player specific clause) + {_anim == "unconsciousoutprone" || // catch another ragdoll recovery animation + {(_anim find "amov") == 0 }} ) then { // catch any movement or stance type of animation (player specific clause) _anim = "unconscious"; // figure out which position state is need From c4f92a4e9539f0b0500732c99fd390e293b55fec Mon Sep 17 00:00:00 2001 From: diwako Date: Sat, 21 Jul 2018 23:30:28 +0200 Subject: [PATCH 12/13] Enable respawn in multiplayer scenario --- ace_ragdoll_unconscious.VR/description.ext | 4 ++++ ace_ragdoll_unconscious.VR/mission.sqm | Bin 8302 -> 10522 bytes 2 files changed, 4 insertions(+) diff --git a/ace_ragdoll_unconscious.VR/description.ext b/ace_ragdoll_unconscious.VR/description.ext index 1f8a8cf..8f4fa31 100644 --- a/ace_ragdoll_unconscious.VR/description.ext +++ b/ace_ragdoll_unconscious.VR/description.ext @@ -15,6 +15,10 @@ class cfgFunctions { }; }; +respawn = BASE; +respawnDelay = 2; +respawnDialog = 0; + // Debug (and CBA target debug) enableDebugConsole = 1; enableTargetDebug = 1; \ No newline at end of file diff --git a/ace_ragdoll_unconscious.VR/mission.sqm b/ace_ragdoll_unconscious.VR/mission.sqm index 8ac22b5766b9457969895706c02aa1e8ef41accd..b08ae8041861bac95d2cecf99f38750bdd6bee88 100644 GIT binary patch literal 10522 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 H84&&l`7hfx literal 8302 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 Kbj+DZ;Nkyiw$|AI From 1c59ceaf6bfa5c2285224ebb59b0d5d072de9c33 Mon Sep 17 00:00:00 2001 From: diwako Date: Sun, 22 Jul 2018 19:27:32 +0200 Subject: [PATCH 13/13] Remove debugging after tests --- ace_ragdoll_unconscious.VR/mission.sqm | Bin 10522 -> 10667 bytes .../diwako/ragdoll/fn_animChangedEH.sqf | 5 ----- .../scripts/diwako/ragdoll/fn_initRagdoll.sqf | 1 - .../diwako/ragdoll/fn_animChangedEH.sqf | 5 ----- .../diwako/ragdoll/fn_initRagdoll.sqf | 1 - 5 files changed, 12 deletions(-) diff --git a/ace_ragdoll_unconscious.VR/mission.sqm b/ace_ragdoll_unconscious.VR/mission.sqm index b08ae8041861bac95d2cecf99f38750bdd6bee88..aa3de7fe9ce25694d61b964d15acd4479841b70f 100644 GIT binary patch delta 2876 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 diff --git a/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf b/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf index 93870ec..10aa7cc 100644 --- a/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf +++ b/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_animChangedEH.sqf @@ -23,11 +23,6 @@ if(!(alive _unit) && // do not run if unit is dead _anim = toLower(_anim); -if(isPlayer _unit) then { - diw_last = _anim; - diw_debug pushBackUnique _anim; -}; - if((_anim find "unconsciousrevive") != -1 || // catch ragdoll recovery animations {_anim == "unconsciousoutprone" || // catch another ragdoll recovery animation {(_anim find "amov") == 0 }} ) then { // catch any movement or stance type of animation (player specific clause) diff --git a/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_initRagdoll.sqf b/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_initRagdoll.sqf index a9d1ff0..0e928b6 100644 --- a/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_initRagdoll.sqf +++ b/ace_ragdoll_unconscious.VR/scripts/diwako/ragdoll/fn_initRagdoll.sqf @@ -35,7 +35,6 @@ diwako_ragdoll_ragdollRunning = true; }; }] call CBA_fnc_addEventHandler; -diw_debug = []; ["CAManBase", "AnimChanged", { _this call diwako_ragdoll_fnc_animChangedEH; }] call CBA_fnc_addClassEventHandler; diff --git a/mod/functions/diwako/ragdoll/fn_animChangedEH.sqf b/mod/functions/diwako/ragdoll/fn_animChangedEH.sqf index 93870ec..10aa7cc 100644 --- a/mod/functions/diwako/ragdoll/fn_animChangedEH.sqf +++ b/mod/functions/diwako/ragdoll/fn_animChangedEH.sqf @@ -23,11 +23,6 @@ if(!(alive _unit) && // do not run if unit is dead _anim = toLower(_anim); -if(isPlayer _unit) then { - diw_last = _anim; - diw_debug pushBackUnique _anim; -}; - if((_anim find "unconsciousrevive") != -1 || // catch ragdoll recovery animations {_anim == "unconsciousoutprone" || // catch another ragdoll recovery animation {(_anim find "amov") == 0 }} ) then { // catch any movement or stance type of animation (player specific clause) diff --git a/mod/functions/diwako/ragdoll/fn_initRagdoll.sqf b/mod/functions/diwako/ragdoll/fn_initRagdoll.sqf index a9d1ff0..0e928b6 100644 --- a/mod/functions/diwako/ragdoll/fn_initRagdoll.sqf +++ b/mod/functions/diwako/ragdoll/fn_initRagdoll.sqf @@ -35,7 +35,6 @@ diwako_ragdoll_ragdollRunning = true; }; }] call CBA_fnc_addEventHandler; -diw_debug = []; ["CAManBase", "AnimChanged", { _this call diwako_ragdoll_fnc_animChangedEH; }] call CBA_fnc_addClassEventHandler;