SortedList添加Dictionary.Value出现的问题
WorkOfflineComponent workOfflineComponent = ZoneScene.AddComponent<WorkOfflineComponent>();
foreach (Unit hero in ZoneScene.GetComponent<HerosComponent>().IdHeros.Values)
{
WorkComponent workComponent = hero.GetComponent<WorkComponent>();
//正常来说不应该=0,因为弟子新招募就会马上行动,只是个容错处理
if (workComponent.CursorTime==0)
{
workComponent.ContinueNewWork(cursorTime);
}
//按下次行动时间顺序加入列表
workOfflineComponent.WorkInfosSortedList.Add(hero, hero.Id);
}
记录一个疑难杂症,以后搞清楚再来补充。
这段代码不知道为什么,直接用字典的Values遍历,SortedList.Add之后,每个元素包含两个Unit对象和2个ID值
而先用List转存Values之后再Add,就是正常的。