2015-12-22 107 views
1

我會盡量保持簡單。如果批量聲明:一個變量等於某個數字範圍,它應該只回聲一個回聲

呼應你的統計:

echo Health: %hp% 
if %hp% LEQ 100 echo (Healthy) 
if %hp% LEQ 75 echo (Hurt) 
if %hp% LEQ 25 echo (Injured) 
if %hp% LEQ 1 echo (Near Death) 
if %hp% LEQ 0 echo (Rekt) 
echo Reputation: %rep% 
if %rep% LEQ 500 echo (King of the School) 
if %rep% LEQ 200 echo (Popular) 
if %rep% LEQ 50 echo (Accepted) 
if %rep% LEQ 1 echo (Bully-Victim) 
if %rep% LEQ 0 echo (Queerboy) 
echo Confidence: %conf% 
if %conf% LEQ 300 echo (Feels like he can do anything) 
if %conf% LEQ 200 echo (Very Confident) 
if %conf% LEQ 100 echo (Confident) 
if %conf% LEQ 1 echo (So-So Confident) 
if %conf% LEQ 0 echo (What's Confidence?) 
echo Intelligence: %int% 
if %int% LEQ 500 echo (Know-It-All) 
if %int% LEQ 300 echo (Brainy) 
if %int% LEQ 100 echo (Smart) 
if %int% LEQ 1 echo (Decent Grades) 
if %int% LEQ 0 echo (Dumb) 
echo Strength: %str% 
if %str% LEQ 500 echo (The Incredible Jackie Chan Hulk) 
if %str% LEQ 300 echo (Mike Tyson on steriods) 
if %str% LEQ 100 echo (Strong) 
if %str% LEQ 1 echo (Average Joe) 
if %str% LEQ 0 echo (Paper feels like a Boulder) 
echo Happiness: %hap% 
if %hap% LEQ 300 echo (WOOOOO!) 
if %hap% LEQ 100 echo (Happy) 
if %hap% LEQ 50 echo (Sort of Happy) 
if %hap% LEQ 1 echo (Barley Happy) 
if %hap% LEQ 0 echo (Depressed) 
echo Stamina: %stam% 
if %stam% LEQ 100 echo (Energetic) 
if %stam% LEQ 75 echo (Wide-Awake) 
if %stam% LEQ 50 echo (Tired) 
if %stam% LEQ 1 echo (Barley Awake) 
if %stam% LEQ 0 echo (Passed Out) 
echo Swag: %swg% 
if %swg% LEQ 500 echo (Swag Master) 
if %swg% LEQ 300 echo (Swag King) 
if %swg% LEQ 100 echo (Swag) 
if %swg% LEQ 1 echo (Some Swag) 
if %swg% LEQ 0 echo (Cancer) 
echo Hunger: %hngr% 
if %hngr% LEQ 100 echo (Well-Fed) 
if %hngr% LEQ 75 echo (Little Hungry) 
if %hngr% LEQ 25 echo (Pretty Hungry) 
if %hngr% LEQ 1 echo (Near Starvation) 
if %hngr% LEQ 0 echo (No Stomach) 
echo Thirst: %trst% 
if %trst% LEQ 100 echo (Well Quenched) 
if %trst% LEQ 75 echo (Little Thirsty) 
if %trst% LEQ 25 echo (Pretty Thirsty) 
if %trst% LEQ 1 echo (Nearly Dried up) 
if %trst% LEQ 0 echo (Dryer Than a Bone) 
echo Money: $%cash% 
echo You Got the "%end%" ending! 
set /a deaths=%deaths%+1 
pause 
goto start 

所以基本上,我想在這裏發生的是,它會列出你的統計,併爲每個統計它給你一個等級。 (I.E擁有100個健康狀態,它會說「健康」)

但是,它似乎列出了所有的等級。 (IE如果%int%= 0,它會說知道所有,聰明,聰明,體面的等級和愚蠢的,而我只是想說它「愚蠢」)有沒有一種方法,我可以做到這一點只列出每個統計的一個等級?

讓我知道是否有任何需要澄清,並感謝您的先進。

回答

2

改變你的邏輯有點:

echo Health: %hp% 
if %hp% LEQ 0 echo (Rekt) & goto :rep 
if %hp% LEQ 1 echo (Near Death) & goto :rep 
if %hp% LEQ 25 echo (Injured) & goto :rep 
if %hp% LEQ 75 echo (Hurt) & goto :rep 
if %hp% LEQ 100 echo (Healthy) & goto :rep 
:rep 
echo Reputation: %rep% 

也可以,但更難讀/保持(一個例子線):

... 
if %hp% gtr 75 if %hp% leq 100 echo (hurt) 
... 
+1

,或者代替GOTO ELSE使用 – dbenham