13/07/09 11:24:12.81 4ZWPcpqB
80です。
白のターンでめくるのがうまく行かないのは自己解決しました。
(>>105さんの書き込みはそのあとでみましたが、まさにその通りでした。)
0.2ずつ変化させていた値をintに入れて比較に使っていたことが原因でした。
一部抜粋
board[r2,c2].transform.eulerAngles.x=180*n;
color[r2,c2]=n; //colorはintで宣言していたために、0か1しか入らない
//中略
print("color:"+color[r2,c2]+" (turn==0 && color[r2,c2]<=turn):"+(turn==0 && color[r2,c2]<=turn));
//これを出してみてやっと気がつきました。
if((turn==0 && color[r2,c2]<=turn) || (turn==1 && color[r2,c2]>=turn)){
/*なので黒のターンでは小数をintに入れたときの扱いによって偶然うまく行ったが、
白のターンの時には意図しないところでこの条件に引っかかってしまっていたために
めくるのが途中で止まってしまった*/
以下で黒のターンだと白のターンへ行く前に"next turn"と出力されるのに白のターンでは出なかったのは、
コンソールでCollapseを押していたことが原因のようでした。
これで無事互いにめくることができました。
出来上がったものをアップしなおしておきます。
[948.zip] とりあえず互いにめくることができるようになったリバーシ 7.15MB 2013-07-09 reversi.zip
まだ互いのコマの数の表示やおける場所があるか判断して自動パスするのは実装していませんが、
一応遊べなくもないものです。
ありがとうございました。