网上一个Android开源项目学习(国际象棋),可是有一些地方看不懂,请指教

Mr.Liuuuuuuuuuuu 2016-04-04 04:44:39
第一个部分
public class ZasobnikTahu {
public static final int MAX_HLOUBKA_PROPOCTU = 32;
public static final int HLOUBKA_ZASOBNIKU = 23 * 128;

public ZasobnikTahu() {
pos = 0;
}

public int[] tahy = new int[HLOUBKA_ZASOBNIKU];
public int[] hodnoty = new int[HLOUBKA_ZASOBNIKU];
public int[] hranice = new int[MAX_HLOUBKA_PROPOCTU];
public int pos;
byte[] mimoch = new byte[MAX_HLOUBKA_PROPOCTU];
int[] roch = new int[MAX_HLOUBKA_PROPOCTU];
byte[] brani = new byte[MAX_HLOUBKA_PROPOCTU];
int[] bm = new int[MAX_HLOUBKA_PROPOCTU];
int[] cm = new int[MAX_HLOUBKA_PROPOCTU];
int[] hodpos = new int[MAX_HLOUBKA_PROPOCTU];
int[] hF = new int[MAX_HLOUBKA_PROPOCTU];
int[] hG = new int[MAX_HLOUBKA_PROPOCTU];
int[] kam = new int[MAX_HLOUBKA_PROPOCTU];
boolean[] sach = new boolean[MAX_HLOUBKA_PROPOCTU];
int[] zmen = new int[MAX_HLOUBKA_PROPOCTU];
int[] rozsir = new int[MAX_HLOUBKA_PROPOCTU];
int[] druhRozsir = new int[MAX_HLOUBKA_PROPOCTU];
}
第二个部分
public class Hash {

int[][] mF; //[13][99];
public int mWhite;
int[] mCastle; //[16];
int[] mEp; //[69];

public int iRandom() {
return (int) (((Math.random() - 0.5) * 2) * 0x7FFFFFFF);
}
public Hash() {
mF = new int[13][];
for (int i = 0; i < mF.length; i++) {
mF[i] = new int[99];
for (int j = 0; j < mF[i].length; j++)
mF[i][j] = iRandom();
}
mWhite = iRandom();
mCastle = new int[16];
for (int i = 0; i < mCastle.length; i++)
mCastle[i] = iRandom();
mEp = new int[69];
for (int i = 0; i < mEp.length; i++)
mEp[i] = iRandom();
}
public int hash(Pozice p) {
int i,j;
int ret;

ret = 0;
for (i = 0; i <= 7; i++)
for(j = 0; j <= 7; j++)
ret ^= mF[p.sch[Pozice.a1 + j + i * 10] + 6][Pozice.a1 + j + i * 10];
ret ^= mEp[p.mimoch];
ret ^= mCastle[p.roch];
if (p.bily) ret ^= mWhite;
return ret;
}
}

第三个SavedTaskAndroid与SavedTaskChessAndroid区别是什么
public class SavedTaskChessAndroid implements Serializable {

private static final long serialVersionUID = -1693344356611714151L;

public SavedTaskChessAndroid(
SavedTaskAndroid savedTaskAndroid,
SavedTask savedTaskChess) {
mSavedTaskAndroid = savedTaskAndroid;
mSavedTaskChess = savedTaskChess;
}
public SavedTaskAndroid mSavedTaskAndroid;
public SavedTask mSavedTaskChess;

}

public class SavedTaskAndroid implements Serializable {

private static final long serialVersionUID = -5285979235163176289L;

public int mcx = 4;
public int mcy = 4;
public int mox = -1;
public int moy = -1;
public int mPole = -1;
public boolean mFlipped = false;
public boolean mWhitePerson = true;
public boolean mBlackPerson = false;
boolean mSetup = false;
}
...全文
169 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
Goorwl 2016-04-05
  • 打赏
  • 举报
回复
已乱码,看不懂

80,490

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧