If the InputHook script is not achieving your goal, then your goal is not clear, at least not clear to me. If you have a revised script, then you should post it, describe what it does, and describe what it should do differently to achieve your goal.
KeyWait does not tell you whether a
different key is pressed at any time. It tells you only whether the target (via parameter) of the KeyWait function is pressed or released. InputHook can be used to determine whether a different key, among many possibilities, is pressed while your hotkey itself is still being held. It seemed to me that this was your goal, but I am uncertain.
If you want to look for just a few combinations, this could be accomplished with a custom combination, while understanding the limitations of custom combinations.
Thus, there is not necessarily one right answer, but tradeoffs to be considered in pursuit of whatever your goal may be.
What the current InputHook script actually does:
The function was triggered when only a short Shift press was pressed, and not if an extra key was pressed.
My recommendation is to run the InputHook script, and see whether it achieves your goal.