为了账号安全,请及时绑定邮箱和手机立即绑定

方块不下落啊!???

代码照着敲的,应该没问题,方块还是一直在最上面不下落。老师帮忙看看啊,多谢了!
	void doFall ()
	{
		for (int x = 0; x < _model.width; ++x) {
			for(int y = _model.height-1; y >= 0; --y){
				
				Cube c = _model.getCube(x, y);
				if(c.isEnabled){
					for(int n = y+1; n < _model.height; ++n){
						Cube fall = _model.getCube(x, n);
						if(fall == null || fall.isEnabled == true){
							break;
						}else{
							fall.number = c.number;
							fall.isEnabled = true;
							c.isEnabled = false;
						}
					}
				}
			}		
		}
		refreshModel2View ();
	}

	private State fallState ()
	{
		StateWithEventMap state = TaskState.Create(delegate {
			Task task = new Task();
			TaskManager.PushFront(task, delegate {
				doFall();
			});
			return task;
		}, fsm_, "remove");


		state.onStart += delegate {
			Debug.LogWarning("in fall!");
		};
		return state;
	}


正在回答

4 回答

State inputState ()

{

StateWithEventMap state = new StateWithEventMap ();

state.onStart += delegate {

Debug.LogWarning("in input!");

};

state.addAction("1", delegate(FSMEvent evt) {

Debug.Log ("I get one~");

input(0);

return "fall";

});

state.addAction("2", delegate(FSMEvent evt) {

Debug.Log ("I get two~");

input(1);

return "fall";

});

state.addAction("3", delegate(FSMEvent evt) {

Debug.Log ("I get 3~");

input(2);

return "fall";

});

state.addAction("4", delegate(FSMEvent evt) {

Debug.Log ("I get 4~");

input(3);

return "fall";

});

return state;

}

老师之前把return 后的fall删了,之后又自己偷偷加上了,所以咱们的不下落,加上就行了

0 回复 有任何疑惑可以回复我~

input跳的状态不是fall吧

0 回复 有任何疑惑可以回复我~

跟我遇到的问题一样  好像逻辑上有问题。

0 回复 有任何疑惑可以回复我~

在下一节看到了正确的代码,老师你太调皮了。。。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
《小十传奇》 Unity3D 休闲游戏开发
  • 参与学习       40215    人
  • 解答问题       133    个

手把手教你用Unity3D开发休闲游戏,小伙伴们,还等什么

进入课程

方块不下落啊!???

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号