发明名称 一种采用包机制的lua脚本文件管理方法
摘要 本发明提出了一种采用包机制的lua脚本文件管理方法,其中每个不同的lua脚本文件对应于一个包,每个包分配有一独有标识(ID),每个包均具有用于保存当前包所包含的包的ID的父(parents)表以及用于保存当前包所引用到的对象的名字的名字表;所述包被进一步设置为包之间相互独立,并通过特定的应用程序界面(API)在包之间建立称为包含(include)的单向联系。相对于现有技术,本发明所提出的lua脚本管理方法具有保证了内存使用效率和执行效率,不同文件里的同名对象不会互相冲突,不同的lua脚本文件可以通过特定机制共享数据进行通讯,在语法层面仍然保持兼容性等优点。
申请公布号 CN102819579B 申请公布日期 2014.12.10
申请号 CN201210259067.8 申请日期 2012.07.25
申请人 珠海金山网络游戏科技有限公司;成都西山居互动娱乐科技有限公司 发明人 王斌
分类号 G06F17/30(2006.01)I 主分类号 G06F17/30(2006.01)I
代理机构 广州嘉权专利商标事务所有限公司 44205 代理人 谭志强
主权项 一种采用包机制的lua脚本文件管理方法,其特征在于:包括作为程序中对象名字的容器的包,每个不同的lua脚本文件对应于一个包,每个包分配有一独有标识,每个包均具有用于保存当前包所包含的包的标识的父表以及用于保存当前包所引用到的对象的名字的名字表,所述包被进一步设置为:包之间相互独立,并通过特定的应用程序界面在包之间建立称为包含的单向联系,一个包可以被多个包所包含,也可以包含多个包,但一个包只知道自己包含了哪些包,而不知道自己被哪些包所包含; 所述方法还包括有全局包,其被配置为不需要被包含即自动为其他所有包可见; 所述方法还包括有统一的lua脚本文件名字到包的包表,用于对包进行检索; 所述方法还定义了以下脚本文件加载流程步骤: 1)根据名字查找需加载的脚本文件是否在包表中,如是则跳到到步骤6),如否则继续下一步; 2)新建包,并分配标识加入包表; 3)检查是否包含有其它包,如否则跳到步骤6),如是则 继续下一步; 4)加载被包含的包; 5)将被包含的包加入当前包的父表; 6)加载脚本文件。 
地址 519000 广东省珠海市吉大景山路莲山巷8号金山软件大厦