2017-12-14战斗有限状态机FSM -第四天

来源:互联网 发布:2017网络热点 编辑:程序博客网 时间:2024/06/10 04:15


1.AIController

先对变量定义,属性

初始化

操作——更新

物理更新

设置状态

发射子弹



2.执行报错

InvalidOperationException: Collection was modified; enumeration operation may not execute.

收集修改;枚举操作可能不会执行

3.修改后,执行中,不切换到attack状态,上面的报错,仍然有

百度查到:

在运行程序时遇到这样一段异常,仔细检查后发现是使用Foreach...In语法体内运用了对Collection的Remove或Add导致的,只需要将foreach方法改为for方法即可。出问题的原代码如下:

foreach (DataRow dr in dt.Rows){if (dr[1].ToString().Equals("3")) {dt.Rows.Remove(dr); }}改成这样就ok了:for(int i=dt.Rows.Count-1;i>=0;i--){ DataRow dr = dt.Rows[i]; if(dr[1].ToString("3").Equals()) { dt.Rows.Remove(dr); }}


重新写了脚本里的for循环,替换foreach,解决了,开心啊





原创粉丝点击