哪个网站能帮助做试卷,种子资源,全flash网站制作,注册网站域名的入口我们要知道#xff0c;人机的移动和玩家的移动方式是一样的#xff0c;所以我们可以将玩家移动代码以及检测碰撞代码移过来#xff0c;唯一不同的就是人机检测到碰撞后会改变方向继续移动而不是停止
所以我们需要一个随机数使人机检测到碰撞后随机修改方向 Random rd new …我们要知道人机的移动和玩家的移动方式是一样的所以我们可以将玩家移动代码以及检测碰撞代码移过来唯一不同的就是人机检测到碰撞后会改变方向继续移动而不是停止
所以我们需要一个随机数使人机检测到碰撞后随机修改方向 Random rd new Random();
然后将方向的meiju类型给一个int类型 enum fangxiang { Up1, Down2, Left3, Right4//方便随机数设置方向 }
这样随机数是int类型方便强制类型转换为枚举类型
设置一个方向转换方法
private void gaibianfangxiang()//发生碰撞改变方向 { fangxiang fx(fangxiang)rd.Next(1, 5); if (fx Fangxiang) { fx (fangxiang)rd.Next(1, 5);//强制类型转换 } Fangxiang fx;
}
在方法中首先我们定义一个新的方向变量用来存储改变后的方向 fangxiang fx(fangxiang)rd.Next(1, 5);//强制类型转换随机数1到5不包含5
然后检测转换后的方向与原方向是否相等 if (fx Fangxiang) { fx (fangxiang)rd.Next(1, 5);//强制类型转换 } Fangxiang fx;
如果相等就再次调用随机数反之就将人机方向转换为转换后的方向
将移动固定为true