我正在做一個口袋妖怪遊戲,本節給我3個錯誤: 「無效的表達術語';' (CS1525)」和 「預期(CS1002)」獲取涉及';'的語法錯誤
public class HeldItem
{
public static int CritCalc(bool item,bool skill, bool UsedItem,int dmg)
{
Random rand=new Random();
Action jump=new Action();
int i = rand()%100;
double CritPerc = 6.25;
if(item==true)
CritPerc=12.5;
else if(skill==true)
CritPerc=12.5;
else if(UsedItem==true)
CritPerc=12.5;
else if((item==true & skill== true) || (item==true & UsedItem == true) || (skill==true & UsedItem==true))
CritPerc=25%;
else if(item==true & skill == true & UsedItem==true)
CritPerc=33.3%;
if(Action) //jump
CritPerc = 50%;
if(i<CritPerc)
dmg=2*dmg;
else if(i>CritPerc)
dmg==dmg;
return dmg;
}
}
}
也許這是一個愚蠢的問題,但我不知道它是什麼
你可能打算使用''&&(邏輯),而不是' &'(按位)。 – Pubby
只要快速看一下事物,CritPerc = 25%就沒有意義。它應該是.25或「25%」。代碼中的其他兩個地方也是如此。編輯:由於CritPerc是雙倍的,它應該是25.0根據您的慣例。 – Bee
@Pubby - &運算符對整型操作數執行按位邏輯AND操作,對bool操作數執行邏輯AND操作。 - http://msdn.microsoft.com/en-us/library/e669ax02 – adatapost