C++ MFC棋牌类小游戏day5
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                C++ MFC棋牌类小游戏day5
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.                        
                                先整理一下之前的內容:
1.畫了棋盤,把棋盤的每個點的狀態都保存起來。
2.畫棋子,分別用tiger類和people類畫了棋子,并且保存了棋子的初始狀態。
下面開始設計棋子的移動:
1.單機棋子,選中要移動的棋子
觸發鼠標單機事件,傳遞窗口坐標。
把窗口坐標轉換成棋盤坐標。
判斷棋盤坐標是否有棋子,沒有棋子直接返回。
更改棋子的狀態,isChose
更改棋盤坐標的狀態。num isHavePiece根據num判斷
2.單機棋盤坐標,選中要移動的位置
觸發鼠標單機事件,傳遞窗口坐標。
把窗口坐標轉換成棋盤坐標。
更改棋子的狀態,x y num isChose
更改前后兩個棋盤坐標的狀態。
有發現一個大坑,tiger和people兩個類應該放在ruler里面定義,View界面通過調用ruler來設置tiger和people
填完坑,然后在ruler類中寫ClientToMove方法,用來判斷棋子的選中和移動。
根據上面所述,吧棋盤和棋子的狀態改變一下。
然后就是根據棋子狀態畫棋子了。
虎的棋子還好畫一點,因為虎沒有重疊,直接根據坐標就能畫出。
人的棋子開始有重疊,需要進行判斷畫出不同的棋子。
不過有了初始化時候的經驗,這些應該不是問題了。
先畫虎的Chose
總結
以上是生活随笔為你收集整理的C++ MFC棋牌类小游戏day5的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: C++ STL 优先队列
- 下一篇: opencv3.2.0 Cmake 3.
