R 28183. Only single reservation is fine. Multiple reservation doesn't work properly - it doesn't freeze more points.
I remember how TU reservation used to work, it had 3 possible states:
x = no reservation
| = single shot reservation
||| = reservation for maximum number of shots
Now it is:
x = no reservation
| = single shot reservation
||| = single shot reservation but if you have more points, soldier can shoot more times
I would like to propose new solution. Button would have only one function - toggling. When its clicked, check is performed if we have enough TUs to reserve one more shot (it is done anyway). If yes, just add one more shot, if not, toggle reservation to OFF:
if (enough TUs to reserve next shot):
status = +1 shot reservation
else:
status = no reservation