table.h
上传用户:hbrsgg1
上传日期:2014-05-08
资源大小:2826k
文件大小:1k
源码类别:

其他智力游戏

开发平台:

C/C++

  1. /*++
  2. Copyright (c) AFE(Active-Free-Elegance)
  3. Module Name:
  4.     table.h
  5. Abstract:
  6.  the table class:
  7. 1. the table envirement configuration
  8. 2. set and clear the food(good ones and bad ones)
  9. 3. call the snake instance to move
  10. Author:
  11.     Weijian Luo (Arthur Luo)   15-Jun-2005
  12. E-mail: skybluehacker@yahoo.com.cn
  13. Revision History:      1.0
  14. --*/
  15. #ifndef _GAME_TABLE_
  16. #define _GAME_TABLE_
  17. #define TB_STATE_OK                   0   //正常
  18. #define TB_STATE_FOOD                 1   //食物
  19. #define TB_STATE_BLOCK                2   //障碍-毒果
  20. #define TB_STATE_SBLOCK               3   //障碍-墙
  21. #include"snake.h"
  22. class CTable
  23. {
  24. private:
  25. int m_width;          //桌子的宽度
  26. int m_height;         //桌子的高度
  27. int m_foodNumber;     //水果的数目
  28. int m_blockNumber;    //障碍物(毒果)的数目
  29. CSnake m_snake;       //桌子上的蛇
  30. int **m_board;          //桌子面板
  31. public:
  32. CTable();
  33. ~CTable();
  34. //初始化桌子面板
  35. void InitialTable(int w,int h);
  36. //食物的操作
  37. bool AddBlock(int x,int y);
  38. bool AddFood(int x,int y);
  39. bool ClearFood(int x,int y);
  40. //物件获取
  41. CSnake* GetSnake(void);
  42. int** GetBoard(void);
  43. int GetData(int x,int y);
  44. //蛇的操作
  45. void SnakeMove(void);
  46. bool ChangeSnakeDirect(MoveState d);
  47. };
  48. #endif //_GAME_TABLE_