Unity实现俄罗斯方块(二)
代码部分
1. 实现物体自由降落(在有关于物体的脚本中编写)
- 使用循环调用方法实现
public float speed = 0.3f;//物体下落
// Start is called before the first frame update
void Start()
{
InvokeRepeating("Move", 0, speed);
}
void Move()
{
transform.position += new Vector3(0, -1, 0);
}
- 使用时间差进行自由降落(在这里使用的该方法)
float lastFail=0;
else if (Input.GetKeyDown(KeyCode.DownArrow)||Time.time-lastFail>=1)
{
transform.position += new Vector3(0, -1, 0);
lastFail = Time.time;
}
2. 处理碰边界问题
逻辑部分:
- 得到游戏区域的宽度和高度,分析宽度和高度能放多少个格子,用一个二维数组来保存信息。如果占据了这个格子将其设置为非空。
- 编写格子的脚本,处理格子的逻辑。
代码部分:
//设置变量
public static int width