I'm working on a program which generates the day's weather for D&D games. I want the program to display a warning in red text when a storm is generated so the DM is aware that this weather is not typical. To reduce the number of keystrokes, it must do this on the same screen as the text detailing the weather itself.
Currently for a storm's entry I have this:
:des4a
cls
type c:\AutoDM\WeatherGen\data\forcast1.txt
color 0c
echo There is an Ashstorm!
color 0a
echo.
echo It is %temp% degrees and the sky is invisible threw the thick
echo billowing clouds of ash.
echo.
echo # Survival checks to light a fire are at +15.
echo # Small unprotected flames will be snuffed out.
echo # Non-firearm ranged attacks are at a -8 to hit.
echo # Preception checks take a -10 for every 10 feet of distance.
echo # Survival checks to get along in the wild are at +15.
echo # Stealth checks are at a +5.
echo.
echo SPECIAL!
echo.
set /a die=6
set /a inches=%random%%%die+1
echo # The ashstorm will deposit %inches% inches of ash durring its
echo durration.
echo # Tracking a target after an ashstorm is at a +15.
type c:\AutoDM\WeatherGen\data\forcast2.txt
echo.
echo.
pause
goto menu
The type commands are calling text documents which contain a header and footer for each entry to help the program look professional and provide a border to assist with word wrap. Thy cannot be removed. DO not suggest something which would make me unable to use the type commands as they currently exist please. Please understand that this red text line will be added to a lot of different parts of the program, each time there is a storm for each and every biome in the generator. I would prefer it to not be more then just 2 or 3 lines of code (But if there is only one way to do it well...)
Can I have the one line in red and the rest in green? Or should I have the program beep to call attention to the fact? Do you have a better and simpler idea? How do I do this?
ECHO(
to terminate the line in preparation for the next. – Amitythrew
tothrough
anddurration
toduration
. – Wobblingtemp
without even realsing it. Make sure that you are usingsetlocal
at the beginning of your script or even better, use a different variable name. – Larcener