BaseClasses.h
上传用户:onward9999
上传日期:2022-06-27
资源大小:989k
文件大小:2k
源码类别:

其他游戏

开发平台:

Visual C++

  1. // BaseClasses.h: interface for the CFace class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_BASECLASSES_H__23936A45_A884_11D4_9A6C_973E5A1E3F59__INCLUDED_)
  5. #define AFX_BASECLASSES_H__23936A45_A884_11D4_9A6C_973E5A1E3F59__INCLUDED_
  6. #if _MSC_VER > 1000
  7. #pragma once
  8. #endif // _MSC_VER > 1000
  9. class CXY  //X,Y各占一字节的点类
  10. {
  11. public:
  12. CXY();
  13. CXY(int xx,int yy);
  14. CXY(CXY& xy);
  15. BOOL operator==(CXY& xy)const;
  16. BOOL operator!=(CXY& xy)const;
  17. CXY& operator=(CXY& xy);
  18. char x;
  19. char y;
  20. };
  21. class CMove //走法
  22. {
  23. public:
  24. CMove(CMove& move);
  25. CMove();
  26. CMove& operator=(CMove& move);
  27. char man; //所走的子
  28. char x;
  29. char y; //走到的位置
  30. };
  31. class CStep //棋步
  32. {
  33. public:
  34. CStep();
  35. char man; //所走的子
  36. char eaten; //被吃的子
  37. CXY from; //从 from 点
  38. CXY to; //走到 to 点
  39. };
  40. class CFace  //棋局
  41. {
  42. public:
  43. CFace();
  44. CFace(CFace& face);
  45. BOOL operator==(CFace& face)const;
  46. BOOL operator!=(CFace& face)const;
  47. CFace& operator=(CFace& face);
  48. BOOL Open(LPCSTR filename); //从文件读取
  49. BOOL Save(LPCSTR filename); //保存到文件
  50. BOOL IsNormal(); //是否合法
  51. void Reset(); //设为标准棋局
  52. CXY man [32]; //32棋子的位置(man[*].x==0则棋子已死)
  53. int side; //走的一方 RED|0-红;BLACK|1-黑
  54. };
  55. class CSetting
  56. {
  57. public:
  58. BOOL IsNormal();
  59. void Reset();
  60. CSetting();
  61. BOOL Load();
  62. BOOL Save();
  63. UINT m_nCOrM[2]; //给出[player]得到是否电脑
  64. UINT m_nPlayer[2]; //给出[color/side]得到棋手号
  65. UINT m_nLevel; //计算机的等级
  66. UINT m_nMode; //轮换方式(谁执什么棋)
  67. };
  68. #endif // !defined(AFX_BASECLASSES_H__23936A45_A884_11D4_9A6C_973E5A1E3F59__INCLUDED_)