|
下面先介绍一下nut函数冲突(下面简称函数冲突)相关知识。
【什么叫函数冲突】
给不懂的小白简单科普一下,pvf中的nut脚本语言是从sqr/loadstate.nut文件入口,加载其中所有关联的nut文件,nut文件中可以注册各种函数。一般来说,函数名都是唯一的,当出现注册多个同名的函数时就会有问题,,这就叫函数冲突。
【函数冲突出现的原因】
例如:我在某个地方注册了A函数,然后再其他地方也注册了A函数,这样会导致其中至少有一个函数不能生效。这是因为后面加载的A函数会覆盖前面加载的A函数,导致之前的A函数失效,加载的顺序取决于其所在的位置,这里不展开多讲了。
【函数冲突出现的场景】
如果该pvf的nut都是一个人所写的话,基本是不存在这种问题的,因为他很清楚哪些函数该写在哪些地方。出现函数冲突基本都是因为一个pvf加了不同nut文件,如新职业、技能以及各种nut实现的功能等。因为nut编程没有一个统一的规范,完全取决于编写者的习惯和水平,所以会存在许多共用函数被写在各种不同的地方,这就造成了函数冲突 |
|