首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >批处理文件战斗系统技能缺陷

批处理文件战斗系统技能缺陷
EN

Stack Overflow用户
提问于 2015-03-12 18:53:36
回答 1查看 97关注 0票数 0

因此,我最近一直在努力研究一个基于rpg的批处理文件文本,遇到了几个问题并很好地解决了这些问题,所以我被困在了这个问题上:

我有一种持续伤害的战斗技能,只有当敌人的生命值等于或低于25%时,我才能激活它,但我不能。

我试着写,但没有用。就像,完全忽略了命令,所以我想知道出了什么问题,以及如何修复它

代码:

代码语言:javascript
复制
:Wolf
cls
echo.
echo   Wolf     Hp: %WolfHp%\30
echo.
echo.
echo   %name%     Hp: %hp%\100
echo.
echo 1)Attack Wolf
echo 2)Swift Cut
echo.
set /p input=)
if %input%==1 goto HitWolf
if %input%==2 goto CutWolf
goto Wolf

*我直接跳过VVV的技能

代码语言:javascript
复制
:CutWolf
set num=%random:~-2%
if %num% gtr %dmg% goto CutWolf
if %num% lss 01 goto CutWolf
if %num%== 00 goto WolfMiss
if %num%== 01 goto WolfMiss
if %num%== 02 set num=%cut%
if %num%== 03 set num=%cut%
if %num%== 04 set num=%cut%
if %num%== 05 set num=%cut%
if %num%== 06 set num=%cut%
if %num%== 07 set num=%cut%
if %num%== 08 set num=%cut%
if %num%== 09 set num=%cut%
if %WolfHp% gtr %WolfHp%*25/100 goto Wolf
cls
echo.
echo    Swift Cut Success
echo.
echo   You swiftly cut the wolf, damage dealt: %cut%
pause >nul
if %WolfHp% gtr %WolfHp%*25/100 goto Wolf
set /a WolfHp= %WolfHp%-%num%
goto WolfAttack
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-12 19:34:03

你不能在蝙蝠上这样做:

代码语言:javascript
复制
if %WolfHp% gtr %WolfHp%*25/100 goto Wolf

但你可以这样做:

代码语言:javascript
复制
set /a tmp=%WolfHp%*25/100
if %WolfHp% gtr %tmp% goto Wolf

所有的计算(算术)都必须用set /a来完成/设置。IF测试必须在两个变量之间进行

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29017993

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档