I double checked here, and I see it is working as intended. I think the issue now is just a minor misunderstanding of how the plugin works.
The substitution state is not applied in the actor doing the substitution, it's applied in the one being covered. So if you setup the substitution state to be removed by restrictions, the substitution will be canceled if the actor being covered gets restricted, or has a restriction when you try to apply the substitution.
If I'm getting it right, I think what you intended to do was ensure that the actor doing the substitution cannot do so if he himself has a restriction. Correct?
Whenever the character doing the substitution cannot move, the substitution state in the covered actor is not removed, but the restriction will prevent the substitution to happen. If the substitution state lasts more turns than the "tank" restrictions, he will resume substitutions when the restrictions are lifted, until the state expires.
However, there is no clear battle message being displayed right now to let the player know the substitution did not occur due to a tanker restriction. I could add one and release a new version right away if you deem it necessary. If not, I'll let it rest in my backlog to be released in the future along other bug fixes or new features. =]