|It's clear what your trying to do, not so much for exactly what you need help with.|
I'm guessing that %r% is the room number and it looks like you have 10(numbered 1-10) rooms so at the start of the script you can set a psuedo array of monster hit points, like so:
You can even make monster free rooms by setting the initial hp to zero.
Then you could do something like:
if !monsters[%r%]! leq 0 (
echo There are no monsters in this room^^!
) else goto trollbattle
set /A monsters[%r%] -= %Rand%
Another thing I would suggest would be swapping the == with leq because you may take away more hp than available which will result in a negative and false condition:
if !monsters[%r%]! leq 0 goto battleend
One tiny last little thing:
set /A Rand=(%Random% %%tda%)+1
Should really be:
set /A Rand=(%Random% %% %tda%)+1
rem this is how it is currently expanding....
set /A Rand=(%Random% %% tda)+1