Describe the bug
ACE handcuffs and Antistasi's undercover code both use setCaptive. Under some conditions, Antistasi will set the captive state to false to remove undercover status, leaving handcuffs in an inconsistent state. This may cause players to be incapable of entering their own vehicle (with a captive inside), or AIs firing at handcuffed players.
There are probably glitches in the other direction too, where Antistasi reports undercover state on for units that were never undercover.
To Reproduce
The most common method is to capture someone while they're unconscious. When they wake up, captive state will be removed, even if they still have handcuffs on. Another method is to have someone handcuffed in a vehicle, go undercover in the vehicle and then lose undercover.
Preferred fix
In the long run, the undercover system needs to be reworked to consider handcuffed state. Some elements should be worked around in the short term, notably the lose-captive-on-wakeup case.
Describe the bug ACE handcuffs and Antistasi's undercover code both use setCaptive. Under some conditions, Antistasi will set the captive state to false to remove undercover status, leaving handcuffs in an inconsistent state. This may cause players to be incapable of entering their own vehicle (with a captive inside), or AIs firing at handcuffed players.
There are probably glitches in the other direction too, where Antistasi reports undercover state on for units that were never undercover.
To Reproduce The most common method is to capture someone while they're unconscious. When they wake up, captive state will be removed, even if they still have handcuffs on. Another method is to have someone handcuffed in a vehicle, go undercover in the vehicle and then lose undercover.
Preferred fix In the long run, the undercover system needs to be reworked to consider handcuffed state. Some elements should be worked around in the short term, notably the lose-captive-on-wakeup case.