(100分)策划 俄罗斯方块 完整的游戏过程(可以的话还加50分,谢谢)

游戏攻略011

(100分)策划 俄罗斯方块 完整的游戏过程(可以的话还加50分,谢谢),第1张

(100分)策划 俄罗斯方块 完整的游戏过程 (可以的话还加50分,谢谢)
导读:  网上下载的CSDN里面的代码^^^  分享…………  我用TC调试成功了  因为头文件里有 所以不能在VC中运行  #include   #include   #include <

  网上下载的CSDN里面的代码^^^

  分享…………

  我用TC调试成功了

  因为头文件里有<graphicsh> 所以不能在VC中运行

  #include <stdioh>

  #include <stdlibh>

  #include <biosh> /这里须要读取系统运行时间来作为定时器/

  #include <graphicsh> /很不幸,TC2的简单图形,让我放弃了用/

  #include <conioh> /win32+openGL来讲解/

  #define MAX_X 14 /可见最大X/

  #define MAX_Y 21 /可见最大Y/

  /我们定义了最大的可见X和Y,那么即还有不

  可见的部分,事实上地图(大盒子)里的左右

  两侧和底部各两行都被1填充,这样大大简化

  出界的判断,事实上,在本例中没有这样的

  代码,因为旁边有一圈1阻止小盒子越出大

  盒子的按制范围

  /

  #define MAX_C 7 /最大种类,这个无须解释/

  #define KEY_UP 'w' /定义上下左右按按键/

  #define KEY_DOWN 's'

  #define KEY_LEFT 'a'

  #define KEY_RIGHT 'd'

  #define KEY_ESC 27 /退出/

  typedef int BOOL;

  #define FALSE 0

  #define TRUE 1 /这几个TC中没有自己定义一下吧:)/

  /时钟结构/

  typedef struct { /时钟结构/

  BOOL enabled; /时钟是否开启/

  unsigned int intervel; /定时间隔/

  unsigned int lasttime; /这个属于内部使用变量/

  } Timer;

  /

  现在进入了编程的初质阶段

  在开始处我会写出所有的函数原形,以及它们的作用

  main函数在程序的最后,你可以在这里看到整个游戏的组织架构

  很好,它只有几十行,并且非常容易理解,当然,还是先看一下函数原形

  及解释

  /

  /\

   函数原形及说明

  \/

  /以下三个函数可以参照Timer结构体在函数声明后面/

  int GetTickCount(); /返回电脑或操作系统运行逝去的时间/

  /在win32环境下已包含在windowsh里边,返回的是4byte/

  /在DOS(本代码)环境下,要自己编写,使用到BIOSh内容/

  int setTimer(Timer t, unsigned int intv, BOOL en);

  /设置时钟t,参数分别为时钟指针,时间间隔,是否活动/

  /时间间隔,win32下为毫秒,DOS下为1/18秒(有点低)/

  BOOL testTimer(Timer t); /测试时钟t是否到达定时时间/

  /如下面这段代码:/

  /

  setTimer(&t, 1, 1); 设置1个单位的间隔

  while(1) {

  if(testTimer(&t)) printf("Active!\n");

  }

  将会定时(1个单位)在屏幕上打印Active!

  一般来说testTimer必须放在循环中反复执行,激活时返回1

  /

  void render(void); /唯一的绘图函数/

  /注意,此函数重画整个地图,根据地图中的点阵,以及根据

  小盒在地图的中坐标在恰当位置画出小盒子/

  /DOS的图形当然是很低的,但,全屏绘图在这里还是过得去

  的,我用的是双缓冲,交换绘图,这样感觉好点/

  void initMap(void); /初始化地图(大盒子)/

  /之前提到过在这个两维数组中有一圈为1的东西来阻止

  小盒子出界,这就是生成这一圈的函数/

  void newGame(); /新建一个游戏/

  /这个函数初始化一几个时钟和建造第一个下落的小盒子/

  /当然建造完后要生成一个个的预览/

  void rotateBox(int box1[5][5], int box2[5][5]);

  /核心函数成员,把box1逆时针旋转90度,并保存到box2中/

  void rebuidNext();

  /核心函数成员,生成下一个方块/

  int drop();

  /核心函数成员,将下落的盒子向下移(实际上增加下落盒

  子的Y值而已,当然要判断是否与地图点阵重叠/

  /与地图重叠,无法完成下落操作,返回0/

  void putBox();

  /在这之上,下落的盒子与地图之前是独立的两个两维数/

  /当下落失败后,小盒子要回到顶端再次重新执行下落,这/

  /时原来的盒子内容当然就要变成地图上的内容了,putBox

  就是将下落盒子的内容根据XY写到地图上/

  void clear();

  /这个函数在下落失败并putBox后执行,扫描整个地图/

  /清除掉满行的点阵,具体细节在函数内讲/

  int move(int dir);

  /左右移动下落盒子,dir指出向左还是向右,这个与drop

  是一样的/

  int test(int mx, int my, int box[5][5]);

  /这个比较重点,判断box在mx,my为坐标上,与地图上的

  非空点阵是否有重叠很通用的一个函数/

  int rotate();

  /旋转下落的盒子,当然如果转了之后与地图有冲突,会

  取消转动,返回0,但返回的值好像没什么用~/

  int newfall();

  /创建下落元素,把"下一个"预览的内容复制到下落盒子/

  /并将下落的盒子移动到地图顶部,当然这个过程,如果顶

  部有冲突,会返回0,这时说明已经满了gameOver/

  /\

   变量区

  \/

  /在上面的说明中,可能会有一些蒙,因为可能对所用到的实际变量没

  有了解

  /

  int map[MAX_Y+4][MAX_X+4]; /地图\大盒子MAX_X,Y是可见面积/

  /我已说过需要在外面布两圈"卫兵"/

  int curbox[5][5]; /当前下落的盒子/

  int curx, cury; /保存着当前活动盒子在地图上的位置/

  int nextbox[5][5]; /保存着下一个形状的盒子/

  /以上就是这么几个盒子和坐标了/

  /这里列出了标准七种俄罗斯方块图形点阵,用到时它们会被复制到相/

  /应的盒子:)/

  int box[MAX_C][5][5] = { /MAX_C(7)种预定义的盒子/

  {

  {0,0,0,0,0},

  {0,0,0,0,0},

  {1,1,1,1,0},

  {0,0,0,0,0},

  {0,0,0,0,0}

  },

  {

  {0,0,0,0,0},

  {0,0,1,0,0},

  {0,1,1,1,0},

  {0,0,0,0,0},

  {0,0,0,0,0}

  },

  {

  {0,0,0,0,0},

  {0,1,1,0,0},

  {0,0,1,1,0},

  {0,0,0,0,0},

  {0,0,0,0,0}

  },

  {

  {0,0,0,0,0},

  {0,0,1,1,0},

  {0,1,1,0,0},

  {0,0,0,0,0},

  {0,0,0,0,0}

  },

  {

  {0,0,0,0,0},

  {0,1,1,0,0},

  {0,0,1,0,0},

  {0,0,1,0,0},

  {0,0,0,0,0}

  },

  {

  {0,0,0,0,0},

  {0,0,1,1,0},

  {0,0,1,0,0},

  {0,0,1,0,0},

  {0,0,0,0,0}

  },

  {

  {0,0,0,0,0},

  {0,0,1,1,0},

  {0,0,1,1,0},

  {0,0,0,0,0},

  {0,0,0,0,0}

  }

  };

  /\

   时钟

  \/

  /时钟部分也非常理解的,一个用到设置时钟,一个用来测试时钟激活态/

  Timer tDown; /正常下落定时时钟intervel会比较大/

  Timer tFast; /按KEY_DOWN时使用的快速下落/

  int speed = 13; /控制下落时间间隔/

  #define FAST_INTV 1 /快时钟的间隔/

  /\

   时钟

  \/

  /时钟部分也非常理解的,一个用到设置时钟,一个用来测试时钟激活态/

  Timer tDown; /正常下落定时时钟intervel会比较大/

  Timer tFast; /按KEY_DOWN时使用的快速下落/

  #define FAST_INTV 1 /快时钟的间隔/

  int GetTickCount() { /读取BIOS时钟/

  int ret;

  ret = peek(0x0,0x46e); /实际上读取了内存0:046e处的内容/

  ret <<= 8; /这个地方是$%#$^$%&^/

  ret += peek(0x0,0x46c); /太多新的东西了,找点书看一看吧/

  return (ret);

  }

  int setTimer(Timer t, unsigned int intv, BOOL en) {

  t -> enabled = en; /设置一个时钟罗/

  t -> intervel = intv;

  t -> lasttime = GetTickCount(); /lasttime记录的是上一个/

  /tickcount返回的东西/

  /这样当再一次测试时间时新的tickcount产生了

  它来减去上一次的tickcount就得出了一个时间

  间隔,这个就可以和intervel比较从而得出是否

  激活了

  /

  return 0;

  }

  BOOL testTimer(Timer t) { /在上面6行的地方解释了:)/

  unsigned int tmp, dt;

  if (!(t -> enabled)) return FALSE;

  tmp = GetTickCount();

  dt = tmp - (t -> lasttime);

  if(dt >= t -> intervel) {

  t -> lasttime = tmp;

  return TRUE;

  }

  return FALSE;

  }

  /\

   渲染部分

  \/

  /提供render更新整个屏幕/

  /关于这个函数,要说的东西还是比较多,为了追求漂亮和编译/

  /时的灵活性,这个函数被写得颇为冗长/

  /现在写一下本游戏图形的东西使用TC2的Graphics我也不

  太乐意,毕竟它本身已过时,但鉴于实在简单实用,它用来教学

  再合适不过,这也是教学总是用TC的原因,老师们不喜欢让学

  生问一些让他们掌握起来也困难的东西/

  /这里我使用了VGAMED模式,而不是 VGAHI,因为VGAMED有两个

  页(可以想像成缓冲),这样可以用来做到不闪动画即:在后台

  页绘制图形,完成后再显示出来

  这里用到了两个函数:

  setactivepage(1 | 0) 参数只能是1或0,选择绘图页,例如选

  择了1后,以后所有的绘图动作将画到页1上

  setvisualpage(1 | 0) 这个叫做选择可见页,即选择在屏幕上

  显示页面1还是0

  /

  void render(void) {

  int x, y;

  static int cPage = 0; /当前页,换页用/

  #define STARTX 50 /定义几个常量/

  #define STARTY 0

  #define LEN 18

  setactivepage(cPage=(cPage == 01:0)); /选择页/

  cleardevice(); /清屏/

  setcolor(15);

  rectangle( STARTX + LEN 2 - 2,

  STARTY + LEN 3 - 2,

  STARTX + LEN (MAX_X - 2) + 2,

  STARTY + LEN (MAX_Y - 2) + 2);

  /用白色画一个外框/

  setfillstyle(SOLID_FILL, 5);

  for(y = 3; y < MAX_Y - 2; y++) { /画地图 /

  for(x = 2; x < MAX_X - 2; x++) {

  if(map[y][x]) {

  rectangle( x LEN + STARTX,

  y LEN + STARTY,

  x LEN + STARTX + LEN,

  y LEN + STARTY + LEN);

  bar( x LEN + STARTX + 1,

  y LEN + STARTY + 1,

  x LEN + STARTX + LEN - 2,

  y LEN + STARTY + LEN - 2);

  }

  }

  }

  /绘图操作就不要作太复杂的介绍了,这只写作用/

  /以上段,根据地图上的点阵情况将地图反映到屏幕上/

  for(y = 0; y < 5; y++) { /画下落物/

  for(x = 0; x < 5; x++) {

  if(curbox[y][x]) {

  if(y + cury > 2) {

  rectangle( (x + curx) LEN + STARTX,

  (y + cury) LEN + STARTY,

  (x + curx) LEN + STARTX + LEN,

  (y + cury) LEN + STARTY + LEN);

  bar( (x + curx) LEN + STARTX + 1,

  (y + cury) LEN + STARTY + 1,

  (x + curx) LEN + STARTX + LEN - 2,

  (y + cury) LEN + STARTY + LEN - 2);

  }

  }

  }

  }

  /以上将下落的盒子按昭它在地图上的坐标,画到对应的区域里/

  for(y = 0; y < 5; y++) { /画下一个/

  for(x = 0; x < 5; x++) {

  if(nextbox[y][x]) {

  rectangle( x LEN + 320,

  y LEN + 10,

  x LEN + 338,

  y LEN + 28);

  bar( x LEN + 321,

  y LEN + 11,

  x LEN + 336,

  y LEN + 26);

  }

  }

  }

  /这个画出下一个盒子的预览/

  setvisualpage(cPage); /确认在cPage页里画好了/

  /将它显示出来/

  }

  /\

   初始化部分

  \/

  /提供newGame()初始化新游戏/

  void initMap(void) { /初始化地图/

  int x, y; /我们须要一圈卫兵/

  for(y = 0; y < MAX_Y; y++) {

  for(x = 0; x < MAX_X; x++) {

  if(x < 2 || x > MAX_X - 3 || y > MAX_Y - 3)

  map[y][x] = 1;

  else map[y][x] = 0;

  }

  } /这里初始化出这个形状/

  } /当然是无盖的/

  void newGame() { /新建游戏/

  int x, y;

  initMap(); /初始化地图/

  srand(GetTickCount()); /初始化随机发生器/

  rebuidNext(); /建立下一个/

  setTimer(&tDown, speed, 1); /启动时钟(快慢两个)/

  setTimer(&tFast, FAST_INTV, 1);

  newfall(); /对下落的盒子操作一下/

  /这样第一个下落的方块

  就在地图顶部准备好了/

  }

  /\

   核心函数

  \/

  void rotateBox(int box1[5][5], int box2[5][5]) {

  /旋转box1输出到box2/

  int x, y;

  for(x = 0; x < 5; x++) /这个函数可以须要实际/

  for(y = 4; y >= 0; y--) /编写一下才能印像深刻/

  box2[y][x] = box1[x][4 - y];

  }

  void rebuidNext() { /新建下一个形状并放到nextbox中/

  int i, x, y;

  i = random(MAX_C); /从几种方块里面选一种/

  for(y = 0; y < 5; y++) /并复制过来/

  for(x = 0; x < 5; x++)

  nextbox[y][x] = box[i][y][x]; /复制/

  }

  int drop() { /下落,返回成功与否/

  int newy; /盒子要下落的新位置/

  newy = cury + 1; /为当前Y位置+1/

  if(test(curx, newy, curbox)) {

  cury = newy; /测试下落盒在这个位置/

  return 1; /上是否有冲突,没有的话/

  } /直接设置cury/

  return 0;

  }

  void putBox() { /将curbox填充到地图上/

  int x, y;

  for(y = 0; y < 5; y++) /这个也简单,主要是要根/

  for(x = 0; x < 5; x++) /据curx,cury指出位置 /

  if(curbox[y][x])

  map[y + cury][x + curx] = curbox[y][x];

  }

  void clear() { /清除掉满行/

  /这个函数实际上效率也很低的,为了简便

  它从头到尾作了测试/

  /具体的算法为:

  从第0行开始到最后一行,测试地图点阵是否为满,如果是的话

  从当前行算起,之上的地图向下掉一行/

  int x, y;

  int dx, dy;

  int fullflag;

  for(y = 0; y < MAX_Y - 2; y++) { /最后两行保留行/

  fullflag = 1; /假设为满/

  for(x = 2; x < MAX_X - 2; x++) { /保留列~/

  if(!map[y][x]) {

  fullflag = 0;

  break;

  }

  }

  if(fullflag) { /向下移动一行/

  for(dy = y; dy > 0; dy--)

  for(dx = 2; dx < MAX_X - 2; dx++)

  map[dy][dx] = map[dy - 1][dx];

  for(dx = 2; dx < MAX_X - 2; dx++)

  map[0][dx] = 0;

  /并清除掉第一行/

  }

  }

  }

  int move(int dir) { /返回成功与否/

  int newx;

  if(dir) newx = curx + 1;

  /与drop一样,准备移动后的坐标/

  else newx = curx - 1;

  if(test(newx, cury, curbox)) { /测试是否冲突/

  curx = newx; /可以的话切换curx/

  return 1;

  }

  return 0;

  }

  int test(int mx, int my, int box[5][5]) {

  /测试box在map里mx,my位置上是否能着陆/

  /这个是最关键的一个函数,它判断是否产生非空冲突/

  /但算法还是很简单的/

  int x, y;

  for(y = 0; y < 5; y++)

  for(x = 0; x < 5; x++)

  if(map[y + my][x + mx] && box[y][x])

  return 0;

  return 1;

  }

  int rotate() {

  int x, y;

  int newbox[5][5]; /我们必须将当前盒子转动到新的盒子/

  /再对这个新的盒子的冲突作测试/

  rotateBox(curbox, newbox); /转动到新的盒子/

  if(test(curx, cury, newbox)) {

  /并且新的盒子能放到地图上而不冲突/

  for(y = 0; y < 5; y++)

  for(x = 0; x < 5; x++)

  curbox[y][x] = newbox[y][x]; /复制进来/

  return 1;

  }

  else return 0;

  }

  int newfall() { /创建下落元素失败返回0/

  int x, y;

  curx = MAX_X / 2 - 2; /重新指定小盒位置/

  cury = 0;

  for(y = 0; y < 5; y++)

  for(x = 0; x < 5; x++)

  curbox[y][x] = nextbox[y][x];/将nextBox复制过来/

  rebuidNext(); /重建nextBox/

  return test(curx, cury, curbox);

  }

  /\

   主函数 -- 整个游戏架构

  \/

  int main() {

  char key; /记录当前按键/

  int i;

  int gd = VGA, gm = VGAMED; /初始化的图形模式/

  Timer ptDown; /下落所指向的时钟(有快慢)/

  Timer trender; /为了避免渲染给程序造成过大的负担/

  /用一个时钟来控制渲染速度/

  /把它设置interval = 1,/

  /这样就是18 FPS了,当然无法达到标/

  /准的60 FPS毕竟这是DOS/

  setTimer(&trender, 1, 1);

  initgraph(&gd, &gm, ""); /初始化图形/

  newGame(); /新游戏/

  while(1) { /主游戏循环/

  if(kbhit()) { /如果键盘有按下/

  key = getch(); /读取一个按键值到key/

  }

  else key = 0;

  switch(key) { /对读到的key进行判断/

  case KEY_UP:

  rotate(); /上,旋转下落盒子/

  break;

  case KEY_DOWN:

  ptDown = &tFast; /使用tFast时钟 /

  break;

  case KEY_LEFT:

  move(0); /左移/

  break;

  case KEY_RIGHT:

  move(1); /右移/

  break;

  case KEY_ESC:

  closegraph(); /结束游戏/

  exit(0);

  default:

  ptDown = &tDown; /使用原来速度 /

  }

  if(testTimer(ptDown)) { /在上面已设置了下落要

  使用的时钟在ptDown里/

  if(!drop()) { /下落,失败返回0/

  putBox(); /写到地图里/

  clear(); /清除满行/

  if(!newfall()) { /新建下落,失败则游戏结束/

  closegraph();

  exit(0);

  }

  }

  }

  if(testTimer(&trender)) /最后渲染/

  render();

  }

  }

中文改版攻略再开,这次小夜带来的是8月26日发布的漆黑的魅影V45。好了不废话游戏开始吧

奥德博士改成小田卷博士了,选性别取名字

调表,下楼

来到隔壁邻居家,研究怪兽球,对手小遥出现

博士总是被追啊……上去选精灵吧:

暖暖猪,技能:撞击,叫声

藤叶蛇,技能:撞击,瞪眼

球海獭,技能:撞击,摇尾

对方是Lv2的蛇纹熊(话说汉化工作不错啊),轻松搞定回到研究所,得到精灵,对话后去寻找小遥

右边多了个梦之实验室,暂时进不去

向上走在幻影之森找到小遥,对方竟然说不认识,本体来了才知道这个是假的

对话后佐罗亚出现,打败后加入队伍(一开始只会摇尾巴好桑心啊)

对手说要比试一下,来就来么,对方是Lv5的属性相反的精灵,小夜为小火鸡(哈不是猪)

回到研究所后得到图鉴和精灵球

妈妈给了双跑步鞋,可以出发了

老家到橙华市草丛可遇到小火龙、小火鸡、暖暖猪、火球鼠的三主角

古辰镇向左走来到橙华市,去道观看爸爸,小光(不是道夫了)进来索要精灵,再次进入捕捉教学

接着向左来到橙华森林,遇见研究员大叔,水舰队的小兵又来捣乱,揍他,对方是Lv9土狼犬

胜利后得到超级球,继续向上走

花店拿到吼吼鲸喷壶

来到卡那兹市,拿了居合斩后去挑战道馆吧

岩石系道馆人员精灵:

Lv10小拳石

Lv8小拳石Lv8小拳石

Lv8小拳石Lv8小拳石

馆主精灵:Lv15大岩蛇Lv15钢磁鼻Lv18由基拉

出门后看见水舰队的小兵跑走,追上去得知森林的大叔的包裹被抢了

继续向右走来到一个洞口前得知老爷爷的精灵被抢了,进洞发现水舰队的小兵,战斗,精灵为Lv11土狼犬

胜利后得到行李箱,哈奇老人进来道谢(PS:附近能捉到铁哑铃)

出洞找到大叔,得到超级球并被引荐给社长

从社长那里得到给大吾的信和口袋领航员(即主菜单)

出门后有研究员追加对战寻呼的功能(话说汉化的比原版好多了)

向下走在城市出口碰见小遥,对话后进入战斗

小遥精灵:Lv13莲叶童子Lv15火稚鸡

回到104号道路,找到哈奇老人坐船去武斗市

这里的大叔那得到低级钓竿

挑战道馆吧

格斗系道馆人员精灵:

Lv13幕下力士

Lv13幕下力士

Lv13腕力

Lv13猴怪

Lv13幕下力士

Lv13腕力

馆主精灵:Lv18腕力Lv18里奥鲁Lv21幕下力士

得到徽章后来到左上的洞穴,入口处的山男处拿到闪光

在洞的深处找到大吾,送出信后得到里奥鲁的精灵蛋

坐船回到卡那兹市,在得文公司社长处拿到学习装置

坐船来到凯那市,在左上的房子里打败三个训练家可以得到6个提神苏打水

在造船厂跟一个大叔对话得知要交给馆长

出来后在博物馆二楼找到馆长,对话后水舰队再次出现,进入战斗

水舰队小兵精灵:

Lv15利牙鱼

Lv14超音蝠Lv14利牙鱼

胜利后水舰队老大露了个面就走了,任务完成

接着向上走遇见小遥,对话后战斗

小遥精灵:Lv18长翅鸥Lv18莲帽小童Lv20力壮鸡

胜利后得到道具探测仪,接着向上来到紫堇市

在右边拿到秘传笈碎岩

在这里拿到自行车

在道馆门前看见小光,对话后战斗,对方是Lv16拉鲁拉丝

胜利后道馆可以进去了挑战吧

电系道馆人员精灵

Lv17猴怪Lv17里奥鲁

Lv17电斑马Lv17雷电球

Lv17蛇纹熊Lv17溶食兽

Lv17甜甜萤Lv17电萤虫

Lv17雷电球Lv17小磁怪

馆主精灵:Lv21雷电球Lv21皮卡丘Lv23自爆磁怪Lv24雷精灵

向右来到绿荫镇,这里能查看亲密度

上方的洞口进去打碎岩石,可以得到秘传笈怪力

返回紫堇市向上走,沙漠依然进不去。穿过热焰小径,这里可以恢复体力

原来的火山灰落下的地方变成了冰结晶,这里可以用冰结晶做玻璃

来到冬雪镇,这里可以用心灵鳞片学技能

向左来到流星瀑布,听过对话后坐缆车上山,烟突山上各种小兵

火岩队小兵精灵:

Lv20超音蝠

Lv20呆火驼

Lv18呆火驼Lv22呆火驼Lv20土狼犬Lv22超音蝠

火岩队老大精灵:Lv24大狼犬Lv24超音蝠Lv25喷火驼

胜利后从机器上取下一块陨石,交给冬雪镇的研究员可以得到技能27

坐缆车来到釜炎镇,温泉边的老奶奶给了一个小果然的蛋

挑战道馆吧

火系道馆人员精灵:

Lv23熔岩虫

Lv23呆火驼

Lv23变隐龙

Lv23呆火驼

Lv23呆火驼

Lv23熔岩虫

Lv23猴怪

Lv22熔岩虫Lv22熔岩虫

馆主精灵:Lv24戴鲁比Lv24鸭嘴炎龙Lv26呆火驼Lv31煤炭龟

出门遇见小遥,得到go-go护眼罩,可以进沙漠了

带上音速自行车去幻影塔找化石,只能拿走一个

这时怪力可用,可以收第一只神兽了(等级不高者慎入)

来到热焰小径这里推开石头向上进洞

这里是Lv50炎帝

PS:出了炎帝洞后向下捡火焰石的地方附近可捉到火炬虫(Lv50进化成炎翅蛾)

从绿荫镇隧道来到卡那兹市,大叔在另一边等着,给了个重复球

顺便去一趟得文公司复活化石,木根化石为触手百合,指爪化石为化石蝎

回到橘华市,挑战爸爸的道馆

普通系道馆人员精灵:

Lv26大王燕

Lv26晃晃斑

Lv26猫鼬斩

Lv26优雅猫

Lv26胖可丁

Lv26过动猿

Lv26懒人翁

馆主精灵:Lv29卡比兽Lv29吉利蛋Lv33请假王Lv31袋龙

胜利后被小光爸爸叫去,给了秘传笈冲浪

回家一趟,在妈妈那里得到守护金币

橙华市左边橙华森林那里有个房子可以冲浪过去了,名为森之洋馆,里面各种幽灵系PM

深处看见小光,但是情况好像不对劲,对话后进入战斗

小光精灵:Lv32七夕青鸟Lv33沙奈朵

胜利后得知小光被什么控制了

这时回到一层,左边多了个入口

进入走到尽头,从一个玻璃柜里拿到月食之羽(二周目抓噩梦神用)

马上会跳出一个Lv35的噬魂吊灯,抓住或打死后就可以离开了

冲浪来到武斗镇上方的石之洞窟,这里被石头堵着,现在可以过去了

尽头站着一个人,这里回答否,得到破坏因子(抓超梦用)

凯那市向左冲浪来到废弃船,屋里拿到仓库钥匙,仓库里是秘籍冷冻光线

这里需要潜水,目前进不去

在紫堇市看见道馆的老爷爷,对话后被拜托去新紫堇关掉发电机,并得到钥匙

城市下方向右冲浪来到新紫堇,使用钥匙门打开了

深处有个红色按钮,踩上去即可

新紫堇进门右拐向上走,来到一个地方(等级不高者慎入)

直走到尽头可捉Lv50雷公

回去找老爷爷对话可以得到十万伏特的秘籍

紫堇市向右冲浪,钓鱼大叔这里拿到中级钓竿

向上走来到天气研究所,右边的桥被堵住了,进去后看见水舰队的人,开打

水舰队小兵精灵:

Lv28利牙鱼

Lv27超音蝠Lv27土狼犬

Lv27土狼犬Lv27利牙鱼

Lv27超音蝠Lv27土狼犬

Lv26土狼犬Lv26超音蝠Lv26利牙鲨

水舰队头目精灵:Lv28利牙鱼Lv28大狼犬

胜利后得到精灵漂浮泡泡(之后的草丛里有的抓)

离开天气研究所向右走,过了桥就碰到小遥前来比试

小遥精灵:Lv29大嘴鸥Lv29莲帽小童Lv31力壮鸡

胜利后得到秘传笈飞天

来到茵郁市,本想去挑战道馆,可是被什么挡着

接着向前走遇见大吾,对话后进入战斗,对方是野生Lv30变隐龙

胜利后得到得文观测镜,可以看见看不见的精灵

回去时先在这里绕下路,冲浪进洞(等级不高者慎入)

之前拿到了破坏因子,尽头可捉到Lv70超梦

捕捉后在洞口看见之前火箭队的研究员,并得知反转世界的入口

挑战道馆吧,飞行系道馆人员精灵:

Lv30盔甲鸟

Lv27嘟嘟Lv27盔甲鸟Lv27热带龙

Lv27青绵鸟Lv27青绵鸟Lv27青绵鸟

Lv29大王燕Lv29天然鸟

Lv29嘟嘟Lv29大嘴鸥

Lv30热带龙

馆主精灵:Lv31嘟嘟利Lv31毽子棉Lv32暴鲤龙Lv33盔甲鸟Lv35七夕青鸟

终于可以飞了,接着向下个城市走,半路看见一堆水舰队的小兵,先不管他们

继续向前,这里砍掉小树,可捉到闪光皮丘

来到水静市,上方的百货大楼前有小遥守着,上前对话进入战斗

小遥精灵:Lv31热带龙Lv32大嘴鸥Lv32乐天河童Lv34力壮鸡

右边是忘光光老爷爷

在选美赛场这里拿到能量方块盒(怪兽盒),砂狐乐园可以进去了

水手这里拿到梦幻船票

带上音速自行车,冲上这个斜坡,在深处的水池中间可捉到闪光暴鲤龙

从送神火山码头冲浪来到送神火山

上到最顶层,在这里可以进入反转世界(需要超梦剧情,野怪等级60+,慎入)

穿过很长的走廊可到达轮回镇,不过镇上的人暂时看不见

在镇子的左下有个入口,到达一个风雨交加的地方

上前与之前见到的火箭队研究员对话,之后进入战斗

精灵阵容为:Lv66 3D龙ZLv66胡地Lv66巨钳螳螂Lv68艾路蕾朵

胜利后就可以上前捕捉Lv70盖诺塞克特

接着向前走,尽头可捉到Lv70冥王龙

收服后获得看到灵魂的能力,回去就可以看见镇上的人了

回到轮回镇,这里的男人给了冥界之花

原路返回后可以先飞去绿荫镇,把冥界之花交给这个女人,得到感恩之花

来到右边的洞穴里,跟赛伊米对话,即可收服之,Lv30

回到送神火山,进门向左来到一个有雾的地方,水舰队又出现了

水舰队小兵精灵:

Lv32利牙鱼

Lv32超音蝠

Lv30土狼犬Lv30利牙鱼

Lv30吼吼鲸Lv30超音蝠

上前对话得知水舰队拿到了红色玉石,之后老奶奶给了火岩队之证

坐缆车来到烟突山向下走,半路会打开一个洞口

是火岩队藏身所,自然有不少小兵,精灵如下:

Lv29土狼犬

Lv29呆火驼

Lv29大狼犬

Lv28青铜镜Lv28呆火驼

Lv28青铜镜Lv28超音蝠

Lv29呆火驼

Lv29大狼犬

Lv29超音蝠

Lv29土狼犬

Lv29超音蝠

Lv29超音蝠

Lv29大狼犬

Lv29青铜镜

Lv29青铜镜

Lv29呆火驼

Lv29超音蝠

Lv28大狼犬Lv29呆火驼Lv30超音蝠Lv33喷火驼

深处看见火岩队的老大,他试图叫醒古拉顿但是失败,之后进入战斗

火岩队老大精灵:Lv37大狼犬Lv38叉字蝠Lv39喷火驼

胜利后火岩松去追古拉顿了,没我们什么事了,出去吧

来到凯那市,码头那里一群人,上去与馆长对话后水舰队出现抢走了潜水艇

飞到水静市抄家去,这里可以进去了

水舰队小兵精灵:

Lv32土狼犬

Lv32利牙鱼

Lv31超音蝠Lv31利牙鱼

Lv31土狼犬Lv31超音蝠

Lv32利牙鱼

Lv32超音蝠

Lv32超音蝠

Lv32利牙鱼

两只顽皮弹,一个金珠,一个大师球

水舰队头目精灵:Lv34大狼犬Lv34大嘴蝠

胜利后潜水艇跑掉了,没办法以后再收拾他

出门的吼吼鲸群不见了,向右冲浪来到绿岭市

这里可以用碎片换进化石

这里拿到高级钓竿

先去挑战道馆吧

超能系道馆人员精灵:

Lv36艾路蕾朵

Lv36勇吉拉

Lv36麒麟奇

Lv36勇吉拉

Lv36果然翁

Lv36天然雀

Lv36麒麟奇

Lv36天然鸟

Lv36拉鲁拉丝

Lv36跳跳猪

Lv36艾路蕾朵

Lv36艾路蕾朵

馆主精灵:Lv43天然鸟Lv43青铜钟Lv44太阳岩Lv44月石

得到徽章后在右边看见火岩队的人,来到宇宙中心,开打

火岩队小兵精灵:

Lv31超音蝠Lv31土狼犬

Lv32呆火驼

Lv32青铜镜

Lv26大狼犬Lv28大狼犬Lv30呆火驼

Lv32超音蝠

Lv32大狼犬

Lv32青铜镜

来到二楼,与大吾对话后选择三只PM进入双人战斗

大吾精灵:Lv42金属怪Lv43盔甲鸟Lv44恐惧斧龙

火岩队头目精灵:Lv36喷火驼Lv38大狼犬Lv40大嘴蝠

火岩队老大精灵:Lv42大狼犬Lv44喷火驼Lv43叉字蝠

胜利后火岩队放弃了作乱,大吾表示有东西要给

对着这块石头许愿,来到了一个很神奇的世界

尽头可以捉到Lv30基拉祈

来到城市左上的大吾家,得到秘传笈潜水

现在可以去废弃船那里看看,这里潜水下去

在这有个口,进去后可以捕捉黑暗路奇亚,Lv70

从前面的口浮上去,依次找到钥匙,最后在二号房找到探知机

来到凯那市的码头,把探知机交给馆长可得到深海之牙或深海之鳞

潜水找到这个洞口,进去后看见一个潜水艇,上岸横扫水舰队吧

水舰队小兵精灵:

Lv36土狼犬

Lv36利牙鱼

Lv37巨牙鲨Lv37大狼犬

Lv35大狼犬Lv35大嘴蝠

依然是试图唤醒海皇牙但是失败,还要打一场

水舰队老大精灵:Lv41大狼犬Lv41叉字蝠Lv43巨牙鲨

不过这次问题要大得多,世界面临毁灭的危险了

来到琉璃岛,果然两只神兽在打架

从左边过去,大吾会让你去找米可利

进洞找到人之后,被问到裂空座在哪里,自然是天空之柱了

131号路进去这个口到达天柱的洞口

在出口看见米可利,他把门打开后就走了,进天柱吧

在最顶层看见裂空座后它飞走了,回到琉璃岛两神兽被劝停

与两位首领对话后在米可利那里拿到秘传笈攀瀑

挑战道馆吧

水系道馆人员精灵:

Lv40角金鱼

Lv40翻车鱼

Lv39翻车鱼Lv39翻车鱼

Lv39笨笨鱼Lv39笨笨鱼

Lv39利牙鱼Lv39巨牙鲨

Lv39角金鱼Lv39吼吼鲸

Lv35珍珠贝Lv37大钳蟹Lv39莲帽小童

Lv35露利利Lv37玛丽露Lv39玛丽露丽

Lv40玛丽露丽

Lv40金鱼王

馆主精灵:Lv45乘龙Lv45暴鲤龙Lv47美纳斯Lv47乐天河童Lv50刺龙王

攀瀑可用,来收神兽吧~

先来到流星瀑布,在最深处可捉到迷你龙、宝贝龙和四只需要用化石复活的精灵

后面的洞进去后可捉到Lv50闪电鸟

114号道路这里攀瀑,上面有个洞

进去可抓Lv50急冻鸟

天柱骑自行车冲到顶层,可以捕捉Lv70裂空座

暮水市向左冲浪(带上会挖洞的精灵和古空棘鱼、吼鲸王),来到这里潜水下去,阅读石板上的不名符号后上去

阅读最后的石板后使用挖洞技能,打开一个洞口

进洞后阅读最后的石板,再以吼鲸王为头古空棘鱼为尾再读一次,会出现某处门打开的提示

中间的洞里是圣柱王,但是需要先捕捉三圣柱

来到沙漠这里,进洞阅读石板后左两步下两步碎岩即可开洞

进洞可捉到Lv40雷吉洛克

105号道路冲浪这个路口上去找到另一个洞口

阅读石板后顺时针贴墙走一圈洞口出现

进洞可捕捉Lv40雷吉艾斯

120号道路沿这里的台阶上去,找到最后一个洞

在中间使用闪光即可打开洞口,Lv40雷吉斯奇鲁

回到134号道路开启三神柱剧情那里,别忘了带上三神柱

从中间的洞口下去,可以捕捉Lv70雷吉奇卡斯

去彩幽市进冠军之路吧,这里瀑布下面有个洞可以直接进去

捉到Lv50水君

进冠军之路,小光还是会来要求对战

小光精灵:Lv49七夕青鸟Lv49巨龙花Lv49火暴兽Lv49大力鳄Lv50沙奈朵

PS:冠军之路可以捉到化石翼龙

二层这里推开石头进上面的洞口

可以捕捉Lv50火焰鸟

好了,先出去一趟飞去绿荫镇,来到左边的卡绿隧道

攀两个瀑布上去,左边是Lv70凤王

右边是Lv70洛奇亚

挑战四天王去

恶系天王:Lv67狡猾天狗Lv68梦歌奈亚Lv69黑鲁加Lv70月精灵Lv71班吉拉

幽灵系天王:Lv69梦魇Lv70耿鬼Lv70鬼盆栽Lv71夜黑魔人Lv72耿鬼

冰系天王:Lv70河马王Lv70迷唇姐Lv71冰鬼护Lv71猛犸猪Lv72乘龙

龙系天王:Lv71暗黑翼龙Lv71七夕青鸟Lv72快龙Lv72化石翼龙Lv73血翼飞龙

冠军米可利精灵:Lv73乐天河童Lv73沼王Lv73暴鲤龙Lv74刺龙王Lv74电灯怪Lv75美纳斯

胜利后观看结束动画,一周目完结(可以选择跳过的哟

二周目在家中开始

下楼后爸爸给了张船票,同时电视上播放了水都的消息,同样建议选不喜欢的颜色

出门后博士前来升级图鉴

与小遥对话可以无限对战(我能说这有个BUG么……小遥你把我第一个徽章还回来!!!)

小遥精灵:Lv74电龙Lv75雪妖女Lv76火焰鸡Lv76蜥蜴王Lv76巨沼怪Lv78沙漠蜻蜓

古辰镇的梦之实验室可以进去了,不过剧情还不能激活

来到橙华森林,这里冲浪进去

直走看见火箭队老大,进入战斗

火箭队老大精灵:Lv78袋龙Lv78天蝎王Lv78重甲暴龙Lv78班吉拉Lv78尼多王Lv80烈咬陆鲨

胜利后阪木跑掉了,上前捉Lv30雪拉比

在112号道路坐缆车去烟突山,出口上方多了个洞

上前与火岩队老大对话进入战斗

火岩队老大精灵:Lv78九尾Lv78青铜钟Lv78椰蛋树Lv78火焰鸡Lv78狡猾天狗Lv80喷火驼

胜利后可捕捉Lv30维库蒂尼

在114号道路化石迷家里拿到另一块化石,同样是去得文公司复活

去119号道路天气研究所与研究员对话得知某处天气异常,小夜为这里

多了个潜水点,潜水下去可捕捉Lv70海皇牙

再次回到天气研究所可得知另一处异常天气发生处,小夜为这里

这里多了个山洞,进去可捕捉Lv70古拉顿

绿岭市大吾家可以得到Lv5铁哑铃

琉璃岛出口处潜水下去,前方多了个洞口

在石板前浮上去,来到一个神殿,直走看见水舰队老大,战斗

水舰队老大精灵:Lv78牛蛙君Lv78快泳蛙Lv78巨牙鲨Lv78刺龙王Lv78铁盘坚果Lv80帝牙海狮

胜利后可以捉到Lv30玛娜菲

凯那市码头处坐船,上传后碰见亚希达,开启对战开拓区

在第二个房间里床上休息就可以到达水静市

再与那个姐姐对话会突然换成一个怪蜀黍……可以去南方小岛(船票之前在水静市拿到)

调查中间的不明物体出现水都,Lv50拉帝欧斯或Lv50拉迪奥斯(选的那只在全国随机遇)

从超梦身上取下古代海图,再去坐船,来到遥远小岛

在草丛里围追堵截,可以捕捉Lv30梦幻

水静市这所房子里睡觉,来到一个神奇的地方(需要月食之羽)

可捉到Lv50噩梦神

之后开启赤日剧情,进入战斗(这里有个BUG,貌似输了就会卡在这)

赤日精灵:Lv78玛狃拉Lv78绅士鸦Lv78暴鲤龙Lv78黑鲁加Lv78叉字蝠Lv80血翼飞龙

粉碎赤日的阴谋后离开这个世界

绿岭市向上来到浅滩洞穴,在洞的深处找到大吾(此处有个BUG,一定要先抓迪亚鲁加,若先捉帕鲁奇亚则迪亚鲁加就会消失)

对话后上前捕捉Lv70迪亚鲁加

流星瀑布通往最深处水道最下方进洞,瀑布底下多了个洞口

进去与米可利对话就可以捕捉Lv70帕鲁奇亚

顺带一提,这个洞口进去可与大吾对战

大吾精灵:Lv83盔甲鸟Lv84太古盔甲Lv84摇篮百合Lv84班吉拉Lv84青铜钟Lv85巨金怪

冠军之路出口处可以与小光对战

小光精灵:Lv54七夕青鸟Lv54巨龙花Lv54火暴兽Lv54大力鳄Lv55沙奈朵

来到琉璃岛,门口的爷爷直接无视掉,来到最深处下梯子

直走看见创世神,记得存了大师球,不然就这样

捕捉吧,Lv85创世神

水静市旅馆二楼得到三日月之羽

古辰镇这所房子里睡觉,来到新月岛

可以捕捉Lv50美梦神

来到右边的梦之实验室,与研究员对话开启梦世界剧情

通过这个床可以进入梦世界

镜之湖向下冲浪,进这个洞到达红莲之窟

这里可以过去,走旁边的小路,最深处的洞口

可以捉到Lv50炎钢巨兽

穿过红莲之窟到达绝望荒漠,右上是幻龙之塔(野怪等级80+,太恐怖了)

左边可捉到Lv70烈希拉姆

右边是Lv70捷克罗姆

中间可以过去了,貌似是个父子,主角自告奋勇上前挑战

盖奇斯精灵:Lv78夜黑魔人Lv78柯波郎Lv78 3D龙ZLv78鸭嘴炎龙Lv78海月水母Lv80暗黑翼龙

胜利后可进洞捕捉Lv70丘雷姆

梦之镇向上走来带梦之城,这里卖进化石

向左来到魅影之森,这里一直向左,跟“小遥”对话可捕捉闪光佐罗亚克,Lv35

一直向右走,过海穿洞,在这里登瀑,可以捉到Lv30凯尔迪奥

梦世界联盟暂时不能挑战,梦之镇睡觉可以回到现实世界

115号道路上进这个洞,可以挑战小智

小智精灵: Lv81乘龙Lv83卡比兽Lv84水箭龟Lv84妙蛙花Lv84喷火龙Lv88皮卡丘

119号路向下冲浪来到这个草堆,可以挑战希罗娜

希罗娜精灵:Lv83鬼盆栽Lv83假面蔷薇Lv83鲁卡里奥Lv84波克基斯Lv84美纳斯Lv86烈咬陆鲨

120号道路冲浪进这个洞口,可以挑战渡

渡精灵:Lv82暴鲤龙Lv82化石翼龙Lv84刺龙王Lv84血翼飞龙Lv84恐惧斧龙Lv86快龙

123号道路这里有个藤,进去可以挑战N

N精灵:Lv83雪妖女Lv83自爆磁怪Lv84钢钻鼹鼠Lv84噬魂吊灯Lv85佐罗亚克Lv86暗黑翼龙

回到梦世界,与门口的人对话他会让开,可以挑战了

第一人为希罗娜,阵容是:Lv100梦幻Lv100凯尔迪奥Lv100维库蒂尼Lv100拉帝欧斯Lv100赛伊米Lv100达克莱伊

第二人是大吾,阵容:Lv100班吉拉Lv100雷吉洛克Lv100巨金怪Lv100基拉祈Lv100迪亚鲁加Lv100烈咬陆鲨

第三人是渡,阵容为:Lv100古拉顿Lv100凤王Lv100克雷塞莉娅Lv100烈希拉姆Lv100雪拉比Lv100炎钢巨兽

第四人是米可利,阵容为:Lv100海皇牙Lv100捷克罗姆Lv100玛娜菲Lv100帕鲁奇亚Lv100闪电鸟Lv100洛奇亚

最后是联盟冠军,呃…小智,阵容是:Lv100超梦Lv100盖诺塞克特Lv100基拉帝纳Lv100裂空座Lv100阿尔修斯Lv100丘雷姆

胜利后成为了梦世界联盟冠军,得到魅影幻晶,诞生岛船票,梦之城最右边的人那里可以买东西了

来到水静市坐船,来到诞生岛,以最短路线推三角

推到最红后出现Lv30代欧奇西斯

凯那市或水静市坐船来到对战开拓区,这里冲浪过去

对树使用吼吼鲸喷壶,出现Lv40胡说树

从瀑布下去左边冲浪,来到工匠之穴(即图图犬洞)

从上方的梯子进去,调查石头可捉到闪光大岩蛇,Lv30

到此漆黑魅影攻略宣告完结,对战开拓区就留给诸位去挑战了,有漏掉的地方和不足欢迎指出,小夜在次谢谢大家的支持。

首先用命令/give @a command_block来获得一个命令方块。然后用末地传送门摆放出一个缺了四个角的44结构,再在每个末地传送门上放上末影之眼,激活传送门。

来到末地,找到折跃门方块。把折跃门方块下面的方块拆掉,放上命令方块,并在命令方块里输入以下命令:setblock 1  air 0 destroy,方块类型为脉冲,红石始终活动。启动后折跃门方块就会掉落。

《我的世界》(Minecraft)是一款第一人称视角的沙盒游戏,最初由瑞典游戏设计师马库斯·阿列克谢·泊松单独开发,随后由瑞典公司Mojang AB和4J Studios开发。

《我的世界》呈现的世界并不是华丽的画面与特效,而是注重在游戏性上面。游戏没有剧情,自由度高,玩家可在游戏中自由建设与拆除建筑,可单人娱乐,也可多人联机,更可以安装一些模组来增加游戏趣味性。该游戏曾荣获2018金翎奖年度游戏评选大赛“玩家最喜爱的网络游戏”奖项。

游戏分为生存、创造、冒险、旁观4个游戏模式(极限模式为特殊模式),创造模式版本中虽然可以无限制的创造,但是仅只有付费购买的生存模式版本还有在持续更新中。在创造模式的世界中没有怪物侵略,没有饱腹之忧,更不用担心任何资源的获取,玩家可以飞行,并且无限制的使用任何方块等来建构自己的世界。

至于生存模式就丰富许多,虽然在游戏中能够运用的资源不像是创造模式那样无限使用,而是需要通过不同的方式来获得(矿石开采、种植植物、攻击动物、探险寻宝等),方块携带量也有上限限制。玩家必须运用这些方块来建造建筑、打造器械来抵御怪物的袭击,保护自己。至于有些方块甚至还可以制作成小船、箱子、采矿车或者是轨道等各种道具。

生存模式中玩家将会有一格格的血条,从高处摔落、怪物袭击都会损血,血量的消耗可以吃下食物通过饱食度来恢复,也可以酿造恢复药水来进行恢复,不过一但死亡,身上的所有东西都将掉落在死亡地点,玩家则会在出生点复活,这时候就得趁物品还没消失之前,狂奔回去拾取了。虽然游戏中的天空高度与地表深度都有限制,但是地表的宽度则是接近无边界的平面,《Minecraft》的世界足足可达地球表面积的八倍大(默认36000亿平方千米,理论上可以无限延伸)。