reversi's Introduction
reversi's People
reversi's Issues
オフラインダブル対戦でパスの実装が出来ていない
パスした時に次に置ける場所が表示されない
具体的
パスした後にDBのnext_coordsがnullになっている
考えられる原因
パスしたときの関数がパスの処理の関数の前に次に置ける場所を特定している可能性がある
すべき対策
パス周りの関数のコードを読み直す
ボット対戦時に自分の次に置ける場所がおかしい
具体的:想定ではボット対戦時に自分が次に置ける場所を表示されるが、現在はボット側が置ける場所を自分が次に置ける場所と表示しているため自分が置ける場所を指定してあげる必要がある。
原因:次に置ける場所を指定する関数の仕様を変更したためそれに合わせた引数を渡せていない事が原因だと考えられる
解決策:引数あたりを重点的に確認する
ボット対戦時にボットが置かない
原因:次に置ける場所を探す関数を変更したため、その関数の発火場所がそれに合わせた引数を渡していない事が原因と思われる。
解決策:ボット操作の流れを再度把握し、引数の部分を変更する
最初に次に置ける場所を設定できていない
具体的
最初に次に置ける場所をDBに保存できていない。
考えられる原因
次に置ける場所の初期値の設定は上手くいっているためDBに保存する処理が上手くいっていない。もしくは、DBに保存できているがその変更をブラウザ側が処理の順番により読み込めていない。
パス時にエラーが発生
具体的:
パスをした時に「Attempt to read property "board" on null」と表示される
考えられる原因:
boardが存在しない
すべき対策:
コードを読む
オンライン対戦時の最初に相手の残り時間が表示されない
具体的:対戦ルームの画面に遷移した時に自分の残り時間は表示されるが相手の残り時間が表示されていない
原因:入室処理の後に時間を設定する関数(自分と相手の時間を設定&カウントを始める)を発火していないため
解決策:入室処理後に時間を設定する関数を発火する
ログイン後のリダイレクト先が「/dashboard」になってしまう
具体的
ログイン後に「/」に飛ばしたいのに「/dashboard」になってしまっている。
原因
不明
置けない場所を選択したときに相手の残り時間が消え、自分の残り時間がリセットされる
具体的
置けない場所を指定した時に相手の残り時間が消えて、自分の残り時間が60秒にリセットされる
考えられる原因
置けない場所を指定した時に時間をカウントする関数は想定通り動いているため、$this->has_timeと$this->enemy_has_timeを参照しているのが問題と思われる。
すべき対策
置けない場所を指定された時に$has_timeと$enemy_has_timeを指定してあげる必要があると思う。
投了や接続切れではなく、置くマスがなくなって勝負が終了したときエラーが発生する
具体的:
全てのマスを埋めて勝負が終了した時片方(多分最後にマスに置いていない方)がLivewireのBoardの関数が正常に動いていないようで「Attempt to read property "time" on null」というエラーを出す。
考えられる原因:
相手が最後に置いた時にturn_next_color関数のget_users_times関数のget_enemy_time関数の$enemyが存在しないため、$enemy->timeも存在しない事となり、エラーとなっている。
すべき対策:
turn_next_color関数のget_users_times関数を行う前にDBのnext_colorが存在しているかチェックを行う事でその後のget_users_times関数を行わないようにする
オフラインダブル対戦時にパスをしても反応しない
考えられる原因
パスボタンを押したときにAjax通信を行えていない、パスされた時の対処をサーバーサイド側で処理出来ていない。
対策すべきこと
コードを読み直す
オンライン対戦時に自分が置ける場所がない時に「置ける場所がないと」判定しない
具体的な問題:
自分が置ける場所がない時に次に置ける場所は表示されない、なぜか相手が次に置ける場所を表示される。
考えられる原因:
DBのnext_coordsが正常に更新されていない。
終了か判定する処理を行った時に相手が次に置ける場所をDBのnext_coordsに更新されている。
対策:
原因と思われる部分を調査してみる。
ゲスト機能を追加する
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.