From f1c53390c4817e5f9552588f298808764ef1bc65 Mon Sep 17 00:00:00 2001 From: scw Date: Sat, 10 Sep 2005 17:30:22 +0000 Subject: GO convertion to chess framework * versus, personal and watching all work chess.c framework update * "pass" and "tie request" are distinguished * chess-specific key binding * post-game processing !!!NOTE!!! Chess protocals are NOT backward compatible RESTART WHOLE system to ensure correctness git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@3153 63ad8ddf-47c3-0310-b6dd-a9e9d9715204 --- mbbsd/talk.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'mbbsd/talk.c') diff --git a/mbbsd/talk.c b/mbbsd/talk.c index 12d526bf..56f1d4bd 100644 --- a/mbbsd/talk.c +++ b/mbbsd/talk.c @@ -1487,7 +1487,7 @@ my_talk(userinfo_t * uin, int fri_stat, char defact) ch == DARK || ch == GO || ch == CHESSWATCHING || (!ch && (uin->chatid[0] == 1 || uin->chatid[0] == 3)) || uin->lockmode == M_FIVE || uin->lockmode == CHC) { - if (ch == CHC || ch == M_FIVE || ch == CHESSWATCHING) { + if (ch == CHC || ch == M_FIVE || ch == GO || ch == CHESSWATCHING) { sock = make_connection_to_somebody(uin, 20); if (sock < 0) vmsg("無法建立連線"); @@ -1512,6 +1512,10 @@ my_talk(userinfo_t * uin, int fri_stat, char defact) case SIG_GOMO: gomoku(msgsock, CHESS_MODE_WATCH); break; + + case SIG_GO: + gochess(msgsock, CHESS_MODE_WATCH); + break; } } } @@ -1613,7 +1617,7 @@ my_talk(userinfo_t * uin, int fri_stat, char defact) close(sock); currutmp->sockactive = NA; - if (uin->sig == SIG_CHC || uin->sig == SIG_GOMO) + if (uin->sig == SIG_CHC || uin->sig == SIG_GOMO || uin->sig == SIG_GO) ChessEstablishRequest(msgsock); add_io(msgsock, 0); @@ -1648,7 +1652,7 @@ my_talk(userinfo_t * uin, int fri_stat, char defact) chc(msgsock, CHESS_MODE_VERSUS); break; case SIG_GO: - gochess(msgsock); + gochess(msgsock, CHESS_MODE_VERSUS); break; case SIG_TALK: default: @@ -3066,7 +3070,7 @@ talkreply(void) currutmp->destuid = uip->uid; currstat = REPLY; /* 避免出現動畫 */ - is_chess = (sig == SIG_CHC || sig == SIG_GOMO); + is_chess = (sig == SIG_CHC || sig == SIG_GOMO || sig == SIG_GO); a = reply_connection_request(uip); if (a < 0) { @@ -3152,7 +3156,7 @@ talkreply(void) chc(a, CHESS_MODE_VERSUS); break; case SIG_GO: - gochess(a); + gochess(a, CHESS_MODE_VERSUS); break; case SIG_TALK: default: -- cgit v1.2.3