⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 boxmanmap.h

📁 手机8032的完整代码。吐血推荐。小做改动就可以生产。
💻 H
📖 第 1 页 / 共 2 页
字号:

#ifndef _BOXMANMAP_H_
#define _BOXMANMAP_H_

#ifdef _BOXMAN_C_
#define BMAP_EXTERN
#else
#define BMAP_EXTERN extern
#endif

#ifdef OSD_GAME_SOKOBAN

#define NLWALL    0
#define WALL      1
#define SPACE     2
#define DEST      3
#define BOX       4
#define APBOX     5
#define MAN       6
#define APMAN     7
#define BADPOS    8

typedef struct
{
  BYTE x;
  BYTE y;
}sBMANPos;

typedef struct
{
  BYTE  bBoxNo;
  sBMANPos rBoxPos[6]; // the most box is 6
  sBMANPos rManPos;
  BYTE bBmpWidth;
  BYTE bBmpHeight;
  BYTE bMapData[10][10];
}sMap;

BMAP_EXTERN code sMap rMap1
#ifdef _BOXMAN_C_
=
{
  4,
  { {3,1},{5,3},{3,4},{4,5} },
  {4,4},
  8,
  8,
  {
    {NLWALL, NLWALL, WALL,   WALL,   WALL,   NLWALL, NLWALL, NLWALL},
    {NLWALL, NLWALL, WALL,   DEST,   WALL,   NLWALL, NLWALL, NLWALL},
    {NLWALL, NLWALL, WALL,   SPACE,  WALL,   WALL,   WALL,   WALL},
    {WALL,   WALL,   WALL,   SPACE,  SPACE,  SPACE,  DEST,   WALL},
    {WALL,   DEST,   SPACE,  SPACE,  SPACE  ,WALL,   WALL,   WALL },
    {WALL,   WALL,   WALL,   WALL,   SPACE  ,WALL,   NLWALL, NLWALL},
    {NLWALL, NLWALL, NLWALL, WALL,   DEST,   WALL,   NLWALL, NLWALL},
    {NLWALL, NLWALL, NLWALL, WALL,   WALL,   WALL,   NLWALL, NLWALL}
  }
}
#endif
;

BMAP_EXTERN code sMap rMap2
#ifdef _BOXMAN_C_
=
{
  3,
  { {2,2},{3,2},{2,3} },
  {3,1},
  9,
  9,
  {
  // 0       1       2       3       4       5       6       7       8       9
    {WALL,   WALL,   WALL,   WALL,   WALL,   NLWALL, NLWALL, NLWALL, NLWALL, NLWALL},//0
    {WALL,   BADPOS, BADPOS, BADPOS, WALL,   NLWALL, NLWALL, NLWALL, NLWALL, NLWALL},//1
    {WALL,   BADPOS, SPACE,  SPACE,  WALL,   NLWALL, WALL,   WALL,   WALL,   NLWALL},//2
    {WALL,   BADPOS, SPACE,  SPACE,  WALL,   NLWALL, WALL,   DEST,   WALL,   NLWALL},//3
    {WALL,   WALL,   WALL,   SPACE,  WALL,   WALL,   WALL,   DEST,   WALL,   NLWALL},//4
    {NLWALL, WALL,   WALL,   SPACE,  SPACE,  SPACE,  SPACE,  DEST,   WALL,   NLWALL},//5
    {NLWALL, WALL,   BADPOS, SPACE,  SPACE,  WALL,   BADPOS, BADPOS, WALL,   NLWALL},//6
    {NLWALL, WALL,   BADPOS, BADPOS, BADPOS, WALL,   WALL,   WALL,   WALL,   NLWALL},//7
    {NLWALL, WALL,   WALL,   WALL,   WALL,   WALL,   NLWALL, NLWALL, NLWALL, NLWALL}//8
  }
}
#endif
;

BMAP_EXTERN code sMap rMap3
#ifdef _BOXMAN_C_
=
{
  5,
  { {3,3},{5,3},{7,3},{4,4},{4,5} },
  {8,1},
  10,
  8,
  {
  // 0       1       2       3       4       5       6       7       8       9
    {NLWALL, NLWALL, NLWALL, WALL,   WALL,   WALL,   WALL,   WALL,   WALL,   WALL },//0
    {NLWALL, NLWALL, WALL,   WALL,   BADPOS, BADPOS, WALL,   BADPOS, BADPOS, WALL},//1
    {NLWALL, NLWALL, WALL,   BADPOS, SPACE,  SPACE,  WALL,   SPACE,  BADPOS, WALL},//2
    {NLWALL, NLWALL, WALL,   SPACE,  SPACE,  SPACE,  SPACE,  SPACE,  BADPOS, WALL},//3
    {NLWALL, NLWALL, WALL,   SPACE,  SPACE,  WALL,   WALL,   SPACE,  BADPOS, WALL},//4
    {WALL,   WALL,   WALL,   SPACE,  SPACE,  BADPOS, WALL,   SPACE,  WALL,   WALL},//5
    {WALL,   DEST,   DEST,   DEST,   DEST,   DEST,   SPACE,  BADPOS, WALL,   NLWALL},//6
    {WALL,   WALL,   WALL,   WALL,   WALL,   WALL,   WALL,   WALL,   WALL,   NLWALL}//7
  }
}
#endif
;

BMAP_EXTERN code sMap rMap4
#ifdef _BOXMAN_C_
=
{
  4,
  { {3,2},{4,3},{4,4},{5,4} },
  {5,1},
  8,
  7,
  {
  // 0       1       2       3       4       5       6       7       8       9
    {NLWALL, NLWALL, WALL,   WALL,   WALL,   WALL,   WALL,   NLWALL, NLWALL, NLWALL},//0
    {WALL,   WALL,   WALL,   BADPOS, BADPOS, BADPOS, WALL,   NLWALL, NLWALL, NLWALL},//1
    {WALL,   BADPOS, SPACE,  SPACE,  DEST,   SPACE,  WALL,   WALL,   NLWALL, NLWALL},//2
    {WALL,   BADPOS, SPACE,  DEST,   SPACE,  DEST,   BADPOS, WALL,   NLWALL, NLWALL},//3
    {WALL,   WALL,   WALL,   SPACE,  DEST,   SPACE,  BADPOS, WALL,   NLWALL, NLWALL},//4
    {NLWALL, NLWALL, WALL,   BADPOS, BADPOS, BADPOS, WALL,   WALL,   NLWALL, NLWALL},//5
    {NLWALL, NLWALL, WALL,   WALL,   WALL,   WALL,   WALL,   NLWALL, NLWALL, NLWALL}//6
  }
}
#endif
;

BMAP_EXTERN code sMap rMap5
#ifdef _BOXMAN_C_
=
{
  4,
  { {4,3},{3,4},{4,5},{5,5} },
  {3,6},
  8,
  8,
  {
  // 0       1       2       3       4       5       6       7       8       9
    {NLWALL, NLWALL, WALL,   WALL,   WALL,   WALL,   NLWALL, NLWALL, NLWALL, NLWALL},//0
    {NLWALL, NLWALL, WALL,   DEST,   DEST,   WALL,   NLWALL, NLWALL, NLWALL, NLWALL},//1
    {NLWALL, WALL,   WALL,   SPACE,  DEST,   WALL,   WALL,   NLWALL, NLWALL, NLWALL},//2
    {NLWALL, WALL,   BADPOS, SPACE,  SPACE,  DEST,   WALL,   NLWALL, NLWALL, NLWALL},//3
    {WALL,   WALL,   SPACE,  SPACE,  SPACE,  SPACE,  WALL,   WALL,   NLWALL, NLWALL},//4
    {WALL,   BADPOS, SPACE,  WALL,   SPACE,  SPACE,  BADPOS, WALL,   NLWALL, NLWALL},//5
    {WALL,   BADPOS, BADPOS, BADPOS, BADPOS, BADPOS, BADPOS, WALL,   NLWALL, NLWALL},//6
    {WALL,   WALL,   WALL,   WALL,   WALL,   WALL,   WALL,   WALL,   NLWALL, NLWALL},//7
  }
}
#endif
;

BMAP_EXTERN code sMap rMap6
#ifdef _BOXMAN_C_
=
{
  6,
  { {2,2},{5,2},{2,3},{2,4},{5,4},{4,3} },
  {1,3},
  8,
  7,
  {
  // 0       1       2       3       4       5       6       7       8       9
    {WALL,   WALL,   WALL,   WALL,   WALL,   WALL,   WALL,   WALL,   NLWALL, NLWALL},//0
    {WALL,   BADPOS, BADPOS, WALL,   BADPOS, BADPOS, BADPOS, WALL,   NLWALL, NLWALL},//1
    {WALL,   BADPOS, SPACE,  DEST,   DEST,   SPACE,  BADPOS, WALL,   NLWALL, NLWALL},//2
    {WALL,   BADPOS, SPACE,  DEST,   DEST,   SPACE,  WALL,   WALL,   NLWALL, NLWALL},//3
    {WALL,   BADPOS, SPACE,  DEST,   DEST,   SPACE,  BADPOS, WALL,   NLWALL, NLWALL},//4
    {WALL,   BADPOS, BADPOS, WALL,   BADPOS, BADPOS, BADPOS, WALL,   NLWALL, NLWALL},//5
    {WALL,   WALL,   WALL,   WALL,   WALL,   WALL,   WALL,   WALL,   NLWALL, NLWALL} //6
  }
}
#endif
;

BMAP_EXTERN code sMap rMap7
#ifdef _BOXMAN_C_
=
{
  5,
  { {3,2},{3,3},{3,4},{3,5},{3,6} },
  {5,3},
  7,
  9,
  {
  // 0       1       2       3       4       5       6       7       8       9
    {NLWALL, NLWALL, WALL,   WALL,   WALL,   WALL,   NLWALL, NLWALL, NLWALL, NLWALL},//0
    {NLWALL, NLWALL, WALL,   BADPOS, BADPOS, WALL,   NLWALL, NLWALL, NLWALL, NLWALL},//1
    {WALL,   WALL,   WALL,   SPACE,  SPACE,  WALL,   WALL,   NLWALL, NLWALL, NLWALL},//2
    {WALL,   BADPOS, SPACE,  DEST,   SPACE,  BADPOS, WALL,   NLWALL, NLWALL, NLWALL},//3
    {WALL,   BADPOS, SPACE,  DEST,   SPACE,  BADPOS, WALL,   NLWALL, NLWALL, NLWALL},//4
    {WALL,   BADPOS, SPACE,  DEST,   SPACE,  WALL,   WALL,   NLWALL, NLWALL, NLWALL},//5
    {WALL,   WALL,   WALL,   DEST,   SPACE,  WALL,   NLWALL, NLWALL, NLWALL, NLWALL},//6
    {NLWALL, NLWALL, WALL,   DEST,   WALL,   WALL,   NLWALL, NLWALL, NLWALL, NLWALL},//7
    {NLWALL, NLWALL, WALL,   WALL,   WALL,   NLWALL, NLWALL, NLWALL, NLWALL, NLWALL}//8

  }
}
#endif
;

BMAP_EXTERN code sMap rMap8
#ifdef _BOXMAN_C_
=
{
  3,
  { {3,4},{5,3},{4,5} },
  {4,4},
  8,
  8,
  {
  // 0       1       2       3       4       5       6       7       8       9
    {NLWALL, NLWALL, WALL,   WALL,   WALL,   WALL,   NLWALL, NLWALL, NLWALL, NLWALL},//0
    {NLWALL, WALL,   WALL,   BADPOS, BADPOS, WALL,   WALL,   NLWALL, NLWALL, NLWALL},//1
    {WALL,   WALL,   BADPOS, SPACE,  SPACE,  BADPOS, WALL,   NLWALL, NLWALL, NLWALL},//2
    {WALL,   BADPOS, DEST,   SPACE,  DEST,   SPACE,  WALL,   WALL,   NLWALL, NLWALL},//3
    {WALL,   BADPOS, SPACE,  SPACE,  SPACE,  SPACE,  BADPOS, WALL,   NLWALL, NLWALL},//4
    {WALL,   WALL,   WALL,   WALL,   DEST,   WALL,   SPACE,  WALL,   NLWALL, NLWALL},//5
    {NLWALL, NLWALL, NLWALL, WALL,   BADPOS, BADPOS, BADPOS, WALL,   NLWALL, NLWALL},//6
    {NLWALL, NLWALL, NLWALL, WALL,   WALL,   WALL,   WALL,   WALL,   NLWALL, NLWALL},//7
  }
}
#endif
;

BMAP_EXTERN code sMap rMap9
#ifdef _BOXMAN_C_
=
{
  4,
  { {2,4},{5,5},{3,6},{6,6} },
  {4,2},
  9,
  9,
  {
  // 0       1       2       3       4       5       6       7       8       9
    {NLWALL, NLWALL, WALL,   WALL,   WALL,   WALL,   WALL,   NLWALL, NLWALL, NLWALL},//0
    {WALL,   WALL,   WALL,   BADPOS, BADPOS, BADPOS, WALL,   NLWALL, NLWALL, NLWALL},//1
    {WALL,   BADPOS, SPACE,  SPACE,  SPACE,  SPACE,  WALL,   NLWALL, NLWALL, NLWALL},//2
    {WALL,   BADPOS, SPACE,  SPACE,  WALL,   SPACE,  WALL,   NLWALL, NLWALL, NLWALL},//3
    {WALL,   WALL,   SPACE,  WALL,   SPACE,  DEST,   BADPOS, WALL,   WALL,   NLWALL},//4
    {NLWALL, WALL,   SPACE,  SPACE,  DEST,   DEST,   DEST,   BADPOS, WALL,   NLWALL},//5
    {NLWALL, WALL,   BADPOS, BADPOS, SPACE,  WALL,   SPACE,  BADPOS, WALL,   NLWALL},//6
    {NLWALL, WALL,   WALL,   WALL,   BADPOS, BADPOS, BADPOS, WALL,   WALL,   NLWALL},//7
    {NLWALL, NLWALL, NLWALL, WALL,   WALL,   WALL,   WALL,   WALL,   NLWALL, NLWALL},//8
  }
}
#endif
;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -