亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? human.c

?? 操作系統SunOS 4.1.3版本的源碼
?? C
?? 第 1 頁 / 共 2 頁
字號:
				addintermediatepnt(midpnt, 1);				return(1);			}			if (computerboard[midpnt] <= 0) {				useroll(dice[0]);				useroll(dice[1]);				addintermediatepnt(midpnt, 0);				return(1);			}			message(ERR, "You cannot touch down on a blocked point!");			return(0);		}		message(ERR, "You didn't roll that  move!");		return(0);	}}useroll(num)int num;{	if (num == (humandieroll[0] & NUMMASK)) {		if ((humandieroll[0] & ROLLUSED) == 0) {			humandieroll[0] |= ROLLUSED;			rollstack[rollcntr++] = humandieroll[0] & NUMMASK;		} else if ((humandieroll[0] & SECONDROLLUSED) == 0) { /* must be dbles */			humandieroll[0] |= SECONDROLLUSED;			rollstack[rollcntr++] = humandieroll[0] & NUMMASK;		} else if ((humandieroll[1] & ROLLUSED) == 0) {			humandieroll[1] |= ROLLUSED;			rollstack[rollcntr++] = humandieroll[1] & NUMMASK;		} else {			humandieroll[1] |= SECONDROLLUSED;			rollstack[rollcntr++] = humandieroll[1] & NUMMASK;		}	} else {		humandieroll[1] |= ROLLUSED;		rollstack[rollcntr++] = humandieroll[1] & NUMMASK;	}}domove(from, to)int from, to;{	int ind = 0;	humanmoves[movesmade][FROM] = from;	if (intcntr) {		for (ind = 0; ind < intcntr; ind++) {			humanmoves[movesmade][TO] = intpnts[ind][0];			if (intpnts[ind][1]) {				movepiece(intpnts[ind][0], BAR, COMPUTER);				humanmoves[movesmade][HITBLOT] = 1;			} else {				humanmoves[movesmade][HITBLOT] = 0;			}			humanmoves[movesmade][DIEUSED] = rollstack[ind] | INTERMED;			humanmoves[++movesmade][FROM] = intpnts[ind][0];		}	}	if (computerboard[to] == 1 && to != HOME) {		movepiece(to, BAR, COMPUTER);		humanmoves[movesmade][HITBLOT] = 1;	} else {		humanmoves[movesmade][HITBLOT] = 0;	}	humanmoves[movesmade][TO] = to;	humanmoves[movesmade][DIEUSED] = rollstack[ind];	movepiece(from, to, HUMAN);	if (++movesmade == maxmoves || humanboard[HOME] == 15)		endhumanturn();}int rollsleft, dicecopy[4], boardcopy[26], numdice;starthumanturn(){	int index;	/* find the maximum number of moves the human can make */	boardcopy[BAR] = humanboard[BAR];	for (index = 1; index < 25; index++) {		boardcopy[25 - index] = humanboard[index];		if (computerboard[index] > 1)			boardcopy[25 - index] = BLOCKED;	}	dicecopy[0] = humandieroll[0];	dicecopy[1] = humandieroll[1];	if (humandieroll[0] == humandieroll[1]) {		dicecopy[2] = dicecopy[3] = dicecopy[0];		numdice = 4;		rollsleft = 4;	} else {		numdice = 2;		rollsleft = 2;	}	maxmoves = 0;	findmaxrolls(0);	if (!diddouble)		sendtogammon(NODOUBLE);	diddouble = 0;	if (maxmoves > 0) {		state = MOVE;		setcursor(MOVE_CUR);		movesmade = 0;		humannomove = 0;		sendtogammon(CANMOVE);		sendtogammon(DIEROLL);		sendtogammon((humandieroll[0] & NUMMASK) + '0');		sendtogammon((humandieroll[1] & NUMMASK) + '0');		lastmoved = HUMAN;	} else {		message(MSG, "You can't move...");		humannomove = 1;		setcursor(THINKING_CUR);		sleep(2);		message(MSG, "Thinking...");		sendtogammon(CANTMOVE);		state = THINKING;		if (logfp != NULL)			fprintf(logfp, "Human: (%d, %d) Can't move.\n", humandieroll[0], humandieroll[1]);	}}findmaxrolls(movesdone)int movesdone;{	int point, roll;	if (boardcopy[BAR] > 0) {		for (roll = 0; roll < numdice; roll++) {			if (dicecopy[roll] & ROLLUSED)				continue;			if (boardcopy[dicecopy[roll]] != BLOCKED) {				boardcopy[dicecopy[roll]]++;				boardcopy[BAR]--;				dicecopy[roll] |= ROLLUSED;				if (++movesdone > maxmoves)					maxmoves = movesdone;				if (--rollsleft == 0)					return(1);				if (findmaxrolls(movesdone))					return(1);				dicecopy[roll] &= ~ROLLUSED;				boardcopy[dicecopy[roll]]--;				boardcopy[BAR]++;				rollsleft++;				movesdone--;			}		}		if (boardcopy[BAR] > 0)			return(0);	}	for (point = 1; point <= 24; point++) {		if (boardcopy[point] <= 0)			continue;		for (roll = 0; roll < numdice; roll++) {			if (dicecopy[roll] & ROLLUSED)				continue;			if (dicecopy[roll] + point >= 25) {				int c;				for (c = 1; c < 24; c++)					if (boardcopy[c] > 0)						break;				if (c < 19)					continue;				if (dicecopy[roll] + point > 25 && point != c)					continue;				boardcopy[HOME]++;			} else if (boardcopy[dicecopy[roll] + point] != BLOCKED) {				boardcopy[dicecopy[roll] + point]++;			} else {				continue;			}			boardcopy[point]--;			dicecopy[roll] |= ROLLUSED;			if (++movesdone > maxmoves)				maxmoves = movesdone;			if (--rollsleft == 0)				return(1);			if (findmaxrolls(movesdone))				return(1);			dicecopy[roll] &= ~ROLLUSED;			if (dicecopy[roll] + point >= 25)				boardcopy[HOME]--;			else				boardcopy[dicecopy[roll] + point]--;			boardcopy[point]++;			rollsleft++;			movesdone--;		}	}	return(0);}endhumanturn(){	int c;	if (humanboard[HOME] == 15) {		if (computerboard[BAR] > 0) {			win(HUMAN, BACKGAMMON);		} else {			for (c = 1; c < 25; c++)				if (computerboard[c] > 0)					break;			if (c <= 6)				win(HUMAN, BACKGAMMON);			else if (computerboard[HOME] == 0)				win(HUMAN, GAMMON);			else				win(HUMAN, STRAIGHT);		}	} else {		sendhumanmove();		message(MSG, "Thinking...");		state = THINKING;		setcursor(THINKING_CUR);	}}undoonemove(){	if (movesmade == 0)		return;	movesmade--;	movepiece(humanmoves[movesmade][TO], humanmoves[movesmade][FROM], HUMAN);	if (humanmoves[movesmade][HITBLOT])		movepiece(BAR, humanmoves[movesmade][TO], COMPUTER);	/* painstakingly find which roll was used and reclaim it */	if ((humandieroll[0] & NUMMASK) == (humandieroll[1] & NUMMASK)) {		if (humandieroll[1] & SECONDROLLUSED) {			humandieroll[1] &= ~SECONDROLLUSED;		} else if (humandieroll[1] & ROLLUSED) {			humandieroll[1] &= ~ROLLUSED;		} else if (humandieroll[0] & SECONDROLLUSED) {			humandieroll[0] &= ~SECONDROLLUSED;		} else {			humandieroll[0] &= ~ROLLUSED;		}	} else {		if ((humandieroll[0] & NUMMASK) == (humanmoves[movesmade][DIEUSED] & ~INTERMED)) {			humandieroll[0] &= ~ROLLUSED;		} else {			humandieroll[1] &= ~ROLLUSED;		}	}	if (movesmade && (humanmoves[movesmade-1][DIEUSED] & INTERMED))		undoonemove();}undowholemove(){	while (movesmade)		undoonemove();}sendhumanmove(){	int c;	for (c = 0; c < movesmade; c++) {		if (c > 0)			sendtogammon(',');		if (humanmoves[c][FROM] == BAR) {			sendtogammon('B');		} else {			if (humanmoves[c][FROM] > 9)				sendtogammon(humanmoves[c][FROM] / 10 + '0');			sendtogammon(humanmoves[c][FROM] % 10 + '0');		}		sendtogammon('-');		if (humanmoves[c][TO] == HOME) {			sendtogammon('H');		} else {			if (humanmoves[c][TO] > 9)				sendtogammon(humanmoves[c][TO] / 10 + '0');			sendtogammon(humanmoves[c][TO] % 10 + '0');		}	}	sendtogammon('\n');	if (logfp != NULL) {		fprintf(logfp, "Human: (%d, %d) ", humandieroll[0] & NUMMASK, humandieroll[1] & NUMMASK);		for (c = 0; c < movesmade; c++) {			if (c > 0)				fprintf(logfp, ", ");			fprintf(logfp, "%d%c%d", humanmoves[c][FROM],				humanmoves[c][HITBLOT] ? 'x' : '-',				humanmoves[c][TO]);		}		putc('\n', logfp);	}}showlasthumanmove(){	int index;	if (movesmade == 0) {		message(ERR, "Nobody has moved yet!");		return;	}	if (!humannomove) {		for (index = 0; index < movesmade; index++) {			movepiece(humanmoves[index][TO], humanmoves[index][FROM], HUMAN);			if (humanmoves[index][HITBLOT])				movepiece(BAR, humanmoves[index][TO], COMPUTER);		}	}	if (dicedisplayed == COMPUTER)		showlastdice();	sleep(2);	if (!humannomove) {		for (index--; index >= 0; index--) {			if (humanmoves[index][HITBLOT])				movepiece(humanmoves[index][TO], BAR, COMPUTER);			movepiece(humanmoves[index][FROM], humanmoves[index][TO], HUMAN);		}	}	if (dicedisplayed == COMPUTER)		showlastdice();}clearintermediatepnts(){	int i;	for (i = 0; i < 3; i++)		intpnts[i][0] = intpnts[i][1] = 0;	intcntr = 0;	rollcntr = 0;}addintermediatepnt(point, hitblot)int point, hitblot;{	intpnts[intcntr][0] = point;	intpnts[intcntr][1] = hitblot;	intcntr++;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品日韩精品| 久久日韩精品一区二区五区| 91精品国产综合久久福利软件| 久久久久国色av免费看影院| 亚洲国产精品一区二区www在线| 久草这里只有精品视频| 在线免费观看日韩欧美| 国产精品视频yy9299一区| 亚洲.国产.中文慕字在线| 91丝袜美腿高跟国产极品老师| 亚洲精品一区二区三区在线观看| 午夜精品久久一牛影视| 一本色道久久加勒比精品| 亚洲国产精品精华液ab| 中文字幕一区不卡| 3d动漫精品啪啪一区二区竹菊| 日韩你懂的电影在线观看| 久久久久久久网| 亚洲人成在线播放网站岛国 | 精品污污网站免费看| 欧美高清精品3d| 精品国产伦一区二区三区观看体验| 日韩一级片网址| 中文字幕av一区二区三区高| 亚洲欧美另类小说| 日韩av在线免费观看不卡| 国精品**一区二区三区在线蜜桃| 成人av在线资源| 欧美男生操女生| 中文字幕av一区二区三区免费看 | 日韩av电影一区| 国产不卡视频在线播放| 91麻豆国产福利在线观看| 欧美一区二区网站| 国产女人18水真多18精品一级做| 亚洲综合男人的天堂| 精品一区二区三区免费视频| 99精品黄色片免费大全| 7777精品伊人久久久大香线蕉| 久久久欧美精品sm网站| 亚洲伊人伊色伊影伊综合网| 国内精品在线播放| 欧美色图激情小说| 国产精品国产馆在线真实露脸| 三级一区在线视频先锋| 波多野结衣亚洲| 精品国产乱码久久久久久老虎 | 婷婷中文字幕一区三区| 国产精品69毛片高清亚洲| 欧美三级日韩在线| 亚洲色欲色欲www在线观看| 久久 天天综合| 欧美老肥妇做.爰bbww| 国产精品青草久久| 精品一区二区三区在线观看| 欧美性受xxxx黑人xyx性爽| 国产精品伦理一区二区| 国产精品影音先锋| 欧美一区二区三区日韩视频| 亚洲一卡二卡三卡四卡五卡| 91亚洲国产成人精品一区二区三| 久久丝袜美腿综合| 久久99久久99| 日韩片之四级片| 亚洲精品高清在线| 不卡一区二区中文字幕| 久久午夜免费电影| 精品亚洲成a人在线观看 | 国产激情91久久精品导航| 日韩小视频在线观看专区| 三级久久三级久久久| 欧美日韩精品一区二区在线播放| 亚洲精品免费看| 在线免费视频一区二区| 亚洲精品成人精品456| 色欧美日韩亚洲| 亚洲自拍另类综合| 在线免费观看日韩欧美| 亚洲国产精品精华液网站| 欧美优质美女网站| 亚洲午夜久久久久久久久电影院| 欧美综合色免费| 亚洲一区二区在线观看视频| 欧美日韩一区久久| 日韩福利视频网| 日韩你懂的在线观看| 国产精品一区二区男女羞羞无遮挡| 久久精品综合网| a在线播放不卡| 亚洲电影一级片| 日韩欧美一二三| 国产一区二区三区国产| 久久精品视频一区| av在线这里只有精品| 亚洲午夜国产一区99re久久| 欧美精品第1页| 国产乱码精品一区二区三区忘忧草 | 中文字幕日韩av资源站| 欧美最新大片在线看| 日韩成人伦理电影在线观看| 2021国产精品久久精品| www..com久久爱| 免费欧美在线视频| 国产精品久久二区二区| 56国语精品自产拍在线观看| 国产麻豆视频一区二区| 一区二区三区在线播| 精品日韩在线观看| caoporn国产一区二区| 青青草国产精品97视觉盛宴| 国产精品人人做人人爽人人添| 欧美综合久久久| 国产精品1024| 日韩电影免费在线观看网站| 国产精品少妇自拍| 日韩欧美中文字幕精品| 99re热视频精品| 国内精品免费在线观看| 午夜免费久久看| 国产精品国产三级国产普通话三级| 欧美三级视频在线观看| av亚洲产国偷v产偷v自拍| 欧美aaa在线| 日韩美女精品在线| 久久久精品日韩欧美| 欧美精品在线一区二区三区| a亚洲天堂av| 国产传媒久久文化传媒| 久久成人精品无人区| 亚洲成人精品在线观看| 亚洲精品日产精品乱码不卡| 中文字幕不卡在线观看| 久久理论电影网| 日韩欧美精品在线视频| 欧美精品久久久久久久久老牛影院| 91免费国产视频网站| 国产福利精品一区二区| 九九精品视频在线看| 日韩电影在线看| 丝袜美腿亚洲一区二区图片| 亚洲一区二区视频| 一区二区三区美女| 亚洲精品国产品国语在线app| 中文字幕中文字幕一区| 国产亚洲精品aa| 日本一区二区三区视频视频| 日韩免费看的电影| 日韩欧美一区二区免费| 日韩精品一区二区三区三区免费| 欧美日韩电影在线| 欧美日韩一区国产| 91搞黄在线观看| 在线视频观看一区| 欧美日韩的一区二区| 欧洲在线/亚洲| 欧美精品v日韩精品v韩国精品v| 91久久久免费一区二区| 欧美视频在线观看一区二区| 欧美日韩一区二区三区不卡| 欧美日韩亚洲综合一区二区三区| 在线视频国产一区| 欧美丰满少妇xxxbbb| 日韩一区二区在线观看视频| 欧美成人aa大片| 精品欧美一区二区三区精品久久| 精品久久久久一区二区国产| 亚洲精品一区二区三区香蕉| 日本一区二区不卡视频| 一区二区三区四区精品在线视频 | 91精品国产黑色紧身裤美女| 日韩欧美成人一区| 久久精品视频在线免费观看| 亚洲少妇30p| 亚洲成a人片综合在线| 免费高清在线视频一区·| 国产不卡视频在线播放| 色欲综合视频天天天| 在线播放欧美女士性生活| 久久人人97超碰com| 亚洲视频在线观看三级| 免费成人在线网站| 成人黄色电影在线| 欧美日产国产精品| 欧美国产日韩在线观看| 亚洲一区二区三区美女| 国产在线不卡一卡二卡三卡四卡| 成人激情免费视频| 欧美日韩久久一区二区| 国产网站一区二区| 亚洲成人免费看| 高清视频一区二区| 91精品国产91热久久久做人人| 中文字幕 久热精品 视频在线 | 亚洲一卡二卡三卡四卡无卡久久 | 国产精品久久久久三级| 日本欧美在线看| 91亚洲精品久久久蜜桃网站| 欧美v亚洲v综合ⅴ国产v| 国产精品家庭影院| 极品少妇一区二区三区精品视频|