lowieliang 发表于 2021-11-15 15:49

员工默认工作分配全空

    看见了 @dft2010 的帖子,后期医院功能较多的情况下,逐一勾选员工的工作分配的确很痛苦,要点很多下
    分析以后,如下修改
    在 TH20.Staff 类的构造函数中有这么一句
      this.JobExclusions = new List<JobDescription>();


    把这句改成
      this.JobExclusions = RoomAlgorithms.GetAllJobs(level.Metagame, level.WorldState, this.Definition._type);


    最后的效果是,新雇佣的员工在工作分配页面里全部不勾选

zwj_325200 发表于 2021-11-16 16:44

大佬,能不能改成长按鼠标,清空该员工任务分配
这样会不会更好

dft2010 发表于 2021-11-16 17:39

感谢~~~要是能增加一个批量勾选就好了~~

lowieliang 发表于 2021-11-16 20:48

dft2010 发表于 2021-11-16 17:39
感谢~~~要是能增加一个批量勾选就好了~~

批量勾选?是怎么个表现,具体一点描述一下

lowieliang 发表于 2021-11-16 21:04

zwj_325200 发表于 2021-11-16 16:44
大佬,能不能改成长按鼠标,清空该员工任务分配
这样会不会更好

长按在 Unity 的鼠标事件里没有现成的,要通过按下记录时间点,然后抬起的时候用当前时间点计算差值
这样一来,按下和长按两个事件会冲突,一般来说只能设定一个,现在员工每行有都点击事件,再加长按就不太合适了
不过,你说的功能,我有些想法了,正在尝试中,稍等。

lowieliang 发表于 2021-11-16 22:37

尝试失败了,我改到了继承树很深的类里面,结果游戏崩溃了
没办法,毕竟 dnSpy 反编译不是拿原始工程来改,看样子只能做轻量级改动

lowieliang 发表于 2021-11-16 23:44

zwj_325200 发表于 2021-11-16 16:44
大佬,能不能改成长按鼠标,清空该员工任务分配
这样会不会更好
不死心,又分析了一次代码,结果笑哭了。本来就有这个功能的:lol


打开员工列表,切换到工作分配


看到第一列,那个数字 “N/N” 那里


右键点一下, 就会清空该员工所有工作分配
再右键点一次,所有合适该员工的工作就会分配给他

lowieliang 发表于 2021-11-16 23:50

话说,再玩一阵子,如果没有更进一步的修改,我考虑放个 v1,26 版自用的 Assembly-CSharp.dll 出来,绝不是变态修改。到时候你们捧个场试一下

dft2010 发表于 2021-11-16 23:58

lowieliang 发表于 2021-11-16 23:50
话说,再玩一阵子,如果没有更进一步的修改,我考虑放个 v1,26 版自用的 Assembly-CSharp.dll 出来,绝不是 ...

嗯,你说的这个我今天也发现了,但我又去装了一个UnityModManager,安装MOD成功了,但启动游戏看不到MOD界面……%这是咋回事呢

dft2010 发表于 2021-11-16 23:59

lowieliang 发表于 2021-11-16 23:44
不死心,又分析了一次代码,结果笑哭了。本来就有这个功能的




也可以竖着取消~~横着就是全科,竖着就是本科室全取消~

david4801 发表于 2021-12-21 08:52

lowieliang 发表于 2021-11-16 23:44
不死心,又分析了一次代码,结果笑哭了。本来就有这个功能的




请问是右键点数字那里么?还是要点哪里?

zhangafei123 发表于 2024-2-2 03:53

大佬,按照你的函数改了,但是报错改不了。
页: [1]
查看完整版本: 员工默认工作分配全空