logan83 11 Posted May 1, 2017 Hi guys, im trying to simulate a miles (Multiple Integrated Laser Engagement System) exercise but im having some troubles, i'm using a eventhandler "HIT" to execute the effects, like this: { if ((side _x) == Independent) then { _x addEventHandler ["HIT",{ _this select 0 setCaptive true; _this select 0 setdamage 0; _this select 0 disableai "Anim"; _this select 0 disableAI "Move"; _this select 0 disableAI "AutoTarget"; _this select 0 switchMove "AmovPercMstpSnonWnonDnon_AmovPercMstpSsurWnonDnon"; }]; }; } forEach allUnits; well, if i shoot a independent unit to a leg, to a arm or even in the kevlar vest at distance, work well, the unit will stop, put his hands behind the head and the blufor IA´s stop shooting them, but, if i shoot to the units at the head, well, they simply dies, the same if i shoot to the chest in close combat... if i put the units in allowdamage false, the eventhandler "HIT" dont work... somebody knows how can i solve this? thank for all and sorry about my poor english :( Share this post Link to post Share on other sites
pierremgi 4851 Posted May 2, 2017 Use the handleDamage EH instead. You can override the damage value. Peruse this EH. 1 Share this post Link to post Share on other sites
logan83 11 Posted May 5, 2017 Thanks pierremgi, I never use this EH, im try it and see how it work, ;) Share this post Link to post Share on other sites
logan83 11 Posted May 5, 2017 ok i used the eh handledamage like this: _MilUnit = _this select 0; _MilUnit setVariable ["selections", []]; _MilUnit setVariable ["gethit", []]; _MilUnit addEventHandler ["HandleDamage", { _unit = _this select 0; _unit disableai "Anim"; _unit disableAI "Move"; _unit disableAI "AutoTarget"; if (animationState _unit != "AmovPercMstpSnonWnonDnon_AmovPercMstpSsurWnonDnon") then { _unit switchMove "AmovPercMstpSnonWnonDnon_AmovPercMstpSsurWnonDnon"}; _selections = _unit getVariable ["selections", []]; _gethit = _unit getVariable ["gethit", []]; _selection = _this select 1; if !(_selection in _selections) then { _selections set [count _selections, _selection]; _gethit set [count _gethit, 0]; }; _i = _selections find _selection; _olddamage = _gethit select _i; _damage = _olddamage + ((_this select 2) - _olddamage) * 0; _gethit set [_i, _damage]; _damage; }]; _index = _MilUnit getVariable ["selections", []] find "nameofselection"; _damage = if (_index >= 0) then { _MilUnit getVariable "gethit" select _index; }else{ 0; }; And work like a charm, thank u pierremgi Share this post Link to post Share on other sites
Txstor 0 Posted September 9 Hello Logan83. I was looking for an exact same way to simulate the MILES SYSTEM. Could you explain me how to set up something like that with your script? Could you also provide it? Share this post Link to post Share on other sites
pierremgi 4851 Posted September 9 1 hour ago, Txstor said: Hello Logan83. I was looking for an exact same way to simulate the MILES SYSTEM. Could you explain me how to set up something like that with your script? Could you also provide it? Welcome on forum Logan83 last visit: May 7th 2018 You can apply some behaviors on AIs (NPCs) but it's hard to disable player(s). You can remove their weapons, try to apply an animation but the player can choose to skip it. You can disable keyboard and mouse temporarily but that doesn't mean the anim (hands on head) will stay. So, MILES for AI freeze is simple. Not for players. Share this post Link to post Share on other sites