今天的主要工作是整理昨天 D17 chatGPT 產出的扣,然後稍微想一下接下來要怎麼調整程式的寫法?
遊戲進程
- server 端初始化遊戲狀態,設定好起始玩家
- 以 notify 的方式通知玩家行動、另一位進入等待。server 可以趁這時候發送遊戲的公開狀態給所有玩家,client 端比對並且更新自身遊戲狀態
- wait_for 玩家行動,該部分是以 API 形式接收,會驗證 socket.id 當前的玩家是否吻合?當玩家成功完成該回合行動之後,server 發送 update notify 給所有玩家。
- 檢查遊戲是否結束?否的話,進行回合輪換工作
server 使用到的 notify
- 通知玩家開始
- 通知玩家等待
- 通知遊戲狀態更新
- 通知完整遊戲狀態
server 使用的 API
client 特性
- 需要被通知開始行動才能發送相關的 API
- 以通知觸發事件,改變 client 內部狀態
以上是初步構想,之後的日子會繼續努力實作 OUO/