当前位置:首页 > 游戏开发之〈俄罗斯方块规则简述〉
[核心规则]
(积木在场景中显示出来是因为指定的方块透明度=0,而透明度=1的方块是看不见颜色的,也就是用黑色方块来显示出积木的形状)
(具体变换,那就是根据方块标记的唯一坐标来给指定的方块透明度进行赋值的过程了)
因为篇幅问题所以就只列出一部分来说明: 。
注意:*[X,Y]=1/0 表示该坐标的方块alpa值 alpa=1/0。
*参考积木的代号
*积木的变形规则可以根据积木的标记来判断变形后的alpa值
A: A_1 A_2
A_2 A_1 变形前/变形后 输入变形命令 变形后/变形前 [1,N\\2 ]=0 [1,N\\2 ]=1 [2,N\\2 ]=0 [2,N\\2 ]=0 [2,N\\2 ]=1 [2,N\\2+1]=0 [2,N\\2+1]=0 [2,N\\2+1]=1 [3,N\\2 ]=0 [3,N\\2+1]=0 [3,N\\2+1]=1 [3,N\\2-1]=0
优化:
变形前/变形后 输入变形命令 变形后/变形前 [1,N\\2 ]=0 [1,N\\2 ]=1 [2,N\\2 ]=0 [2,N\\2 ]=0 [2,N\\2+1]=0 [2,N\\2+1]=0 [3,N\\2 ]=0 [3,N\\2+1]=0 [3,N\\2+1]=1 [3,N\\2-1]=0
B:
B_1 B_2
C_1 C_2 C_3 C_4 C:
C_1 C_2 C_3
变形前/变形后 输入变形命令 变形后/变形前 输入变形命令 变形前/变形后 [1,N\\2 ]=0 [1,N\\2 ]=1 [2,N\\2 ]=0 [2,N\\2 ]=1 [1,N\\2-1]=0 [2,N\\2 ]=0 [2,N\\2 ]=1 [2,N\\2-1]=0 [2,N\\2-1]=1 [1,N\\2 ]=0 [3,N\\2 ]=0 [3,N\\2 ]=1 [2,N\\2+1]=0 [2,N\\2+1]=1 [2,N\\2 ]=0 [3,N\\2+1]=0 [3,N\\2+1]=1 [3,N\\2-1]=0 [3,N\\2-1]=1 [3,N\\2 ]=0 优化:
变形前/变形后 输入变形命令 变形后/变形前 输入变形命令 变形前/变形后
[1,N\\2 ]=0 [1,N\\2 ]=1 [2,N\\2 ]=0 [1,N\\2-1]=0 [2,N\\2 ]=0 [2,N\\2-1]=0 [2,N\\2-1]=1 [1,N\\2 ]=0 [3,N\\2 ]=0 [3,N\\2 ]=1 [2,N\\2+1]=0 [2,N\\2+1]=1 [2,N\\2 ]=0 [3,N\\2+1]=0 [3,N\\2+1]=1 [3,N\\2-1]=0 [3,N\\2-1]=1 [3,N\\2 ]=0
C_4 C_1 输入变形命令 变形前/变形后 输入变形命令 变形前/变形后 [1,N\\2-1] =1 [2,N\\2+1] =0 [2,N\\2+1]=1 [1,N\\2 ]=0 [1,N\\2 ] =1 [3,N\\2-1] =0 [3,N\\2-1]=1 [2,N\\2 ]=0 [2,N\\2 ] =1 3,N\\2 ] =0 [3,N\\2 ]=1 [3,N\\2 ]=0 [3,N\\2 ] =1 [3,N\\2+1] =0 [3,N\\2+1]=1 [3,N\\2+1]=0 优化:
输入变形命令 变形前/变形后 输入变形命令 变形前/变形后 [1,N\\2-1] =1 [2,N\\2+1] =0 [2,N\\2+1]=1 [1,N\\2 ]=0 [1,N\\2 ] =1 [3,N\\2-1] =0 [3,N\\2-1]=1 [2,N\\2 ]=0 [2,N\\2 ] =1 [3,N\\2 ] =0 [3,N\\2 ]=0 [3,N\\2+1] =0 [3,N\\2+1]=0
D:
E:
F:
G:
移动规则:
[操作按键] B_1:左移动键
B_2:右移动键 B_3:下落键 [移动规则]
左平移: 积木延水平方向左移一个方块大小的位置
E_1 D_1 D_2 C_3 C_4 F_1 F_2 G_1 G_2 G_3 G_4 右平移: 积木延水平方向右移一个方块大小的位置 垂直下落: 积木延垂直方向迅速下落
[核心规则]
第一次平移:
移动后坐标
构成积木的方块系统初始化坐标 [X1,Y1]=0 [X1,Y1]=1 [X1,Y1-1]=0
[X2,Y2]=0 ->左平移命令->[X2,Y2]=1 [X2,Y2-1]=0 [X3,Y3]=0 碰撞检测失败 [X3,Y3]=1 [X3,Y3-1]=0 [X4,Y4]=0 [X4,Y4]=1 , [X4,Y4-1]=0 平移后的坐标再默认赋给初始坐标
移动后坐标 构成积木的方块系统初始化坐标[X1,Y1]=0 [X1,Y1]=1 [X1,Y1+1]=0
[X2,Y2]=0 ->右平移命令->[X2,Y2]=1 [X2,Y2+1]=0 [X3,Y3]=0 碰撞检测失败 [X3,Y3]=1 [X3,Y3+1]=0 [X4,Y4]=0 [X4,Y4]=1 ,[X4,Y4+1] =0 平移后的坐标再默认赋给初始坐标
第二次平移:
移动后坐标
构成积木的方块默认初始坐标 [X1,Y1]=0 [X1,Y1]=1 [X1,Y1-1]=0
[X2,Y2]=0 ->左平移命令-> [X2,Y2]=1 [X2,Y2-1]=0 [X3,Y3]=0 碰撞检测失败 [X3,Y3]=1 [X3,Y3-1]=0 [X4,Y4]=0 [X4,Y4]=1 ,[X4,Y4-1]=0 平移后的坐标再默认赋给初始坐标
移动后坐标 构成积木的方块默认初始坐标 [X1,Y1]=0 [X1,Y1]=1 [X1,Y1+1]=0
[X2,Y2]=0 ->右平移命令->[X2,Y2]=1 [X2,Y2+1]=0 [X3,Y3]=0 碰撞检测失败 [X3,Y3]=1 [X3,Y3+1]=0 [X4,Y4]=0 [X4,Y4]=1 ,[X4,Y4+1]=0 平移后的坐标再默认赋给初始坐标
移动后坐标 构成积木的方块默认初始坐标 [X1,Y1]=0 [X1,Y1]=0
[X2,Y2]=0 ->左平移命令-> [X2,Y2]=0 [X3,Y3]=0 成功碰撞 [X3,Y3]=0 [X4,Y4]=0 [X4,Y4]=0 平移后的坐标再默认赋给初始坐标
移动后坐标 构成积木的方块默认初始坐标 [X1,Y1]=0 [X1,Y1]=0
[X2,Y2]=0 ->右平移命令->[X2,Y2]=0
[X3,Y3]=0 成功碰撞 [X3,Y3]=0 [X4,Y4]=0 [X4,Y4]=0 依次类推。
垂直下落: 将下落后的坐标 初始坐标 下落一层后坐标 再定为初始坐 [X1,Y1]=0 [X1,Y1]=1 [X1+1,Y1]=0 标,循环 垂直下落命令 [X2,Y2]=0 [X2,Y2]=1 [X2+1,Y2]=0 [X3,Y3]=0 [X3,Y3]=1 [X3+1,Y3]=0 [X4,Y4]=0 [X4,Y4]=1 [X4+1,Y4]=0 (失败) 碰撞检测
消除规则:
[操作按键] 无(系统自动完成) [消除规则]
(以X轴来分层,一个方块大小为一层。) 条件:在同一层中被添满方块时触发
结果:该层方块被消除,在该层上方的方块下落一层。 [积分规则]
一次消除一层: 获得10积分 一次消除二层: 获得30积分 一次消除三层: 获得50积分 一次消除四层: 获得70积分 [核心规则]
条件: x×y大小场景,根据X=1++,X<=x的方法检测方块坐标[X,Y] ,检测[X,Y|(Y=1++,Y<=y)]=0是否成立,成立则触发
结果:[X,Y|(Y=1++,Y<=y)]=1,
再将[X-1,Y|(Y=1++,Y<=y)] 的值赋值给[X,Y|(Y=1++,Y<=y)], 再将[X-2,Y|(Y=1++,Y<=y)] 的值赋值给[X-1,Y|(Y=1++,Y<=y)] 依次类推。
积分:定义一个变量@=0
一个积木出现到下个积木出现的中间阶段,满足一次条件时变量@=@+1,然后根据@的值来判定积分获得的加值。
积木下落速度规则:
[操作按键] 无(系统自动完成) [速度规则]
条件: 碰撞检测失败 下落轨迹: 垂直下落,
速度设置: 系统默认的初始速度为:速度0= 2 秒1层
共分享92篇相关文档