2013-08-28 126 views
0

所以我正在製作RPG,口袋妖怪風格格鬥遊戲(帶電影角色)來測試我的技能,我顯然需要更多的工作。它是一個批處理(.bat)文件,我使用notepad ++。 「Katniss」部分確實有效,而其他三部分不起作用。 (字符)是之前設置的,Katniss的作品,所以它不會成爲一個問題。這個問題與我認爲的「if」聲明有關。這裏是代碼的一部分,我會整件事情,但它大約有400行,我已經使用pause s縮小到這一部分。if%variable%==,not working

`:character2 
cls  
REM --------------------------------------------------Characters aren't working here 
if %char% == Katniss set hp=100 
    set mattack1=Knife 
    set rattack1=Arrow 
    set rattack2=Fire Arrow 
    set rattack3=Explosive Arrow 
    set block1=Bow Block 
    set armr=2 
    set energy=140 
    set m1enc=50 
    set m1hpd=25 
    set m2enc=25 
    set r1hpd=20 
    set r1enc=65 
    set r2hpd=50 
    set r2enc=110 
    set r3hpd=75 
    set r3enc=140 
    set bk1md=5 
    set bk1ec=50 
    set defense=2 
    goto corc 
if %char% == Gandalf set hp=120 
    set mattack1=Staff 
    set mattack2=Sword 
    set mgttack1=Fireball 
    set mgttack2=Blast 
    set mgttac2=Staff 
    set block2=Magic Shield 
    set block3=Sword 
    set armr=0 
    set energy=100 
    set m1hpd=15 
    set m1enc=40 
    set m2hpd=40 
    set m2enc=90 
    set mg1hd=45 
    set mg1ec=100 
    set mg2hd=10 
    set mg2ec=25 
    set mg3hd=5 
    set mg3ec=25 
    set bk1md=5 
    set bk1ec=80 
    set bk2md=25 
    set bk2ec=100 
    set bk3md=3 
    set bk1ec=45 
    set defense=0 
    goto corc` 

我想雅虎問答,但該人士並未閱讀完整的問題,說我需要設置。

---- 回答 原來這是(

) 

的事情,我錯過了一些,並且被設置防止變量,但""沒有什麼可以用它做。

回答

0

使用括號:

if %char% == Katniss (
    set hp=100 
    set x=1 
    set y=2 
) 
3

使用括號和雙引號:

if "%char%"=="Katniss" (
    set "hp=100" 
    set "x=1" 
    set "y=2" 
    ... 
    goto corc 
)