赞 | 13 |
VIP | 118 |
好人卡 | 28 |
积分 | 12 |
经验 | 35779 |
最后登录 | 2017-7-6 |
在线时间 | 1564 小时 |
Lv3.寻梦者
- 梦石
- 0
- 星屑
- 1185
- 在线时间
- 1564 小时
- 注册时间
- 2008-7-30
- 帖子
- 4418
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
兼容性一直是令人头疼的问题,因此我再次征询广大程序员在编写脚本时遇到的(或可能遇到的)一些兼容性的问题,同时我们可以探讨这个解决方案,我们也很乐意分享这些兼容性问题的解决方案,这将会作为一些有用的技巧写入FSL(Free Script License)中。
一个方案是来自于KGC系列脚本(很高兴的是,很多程序员也用了这个方案,比如PocketWiki上的优秀RGSS2脚本),使用了一个Hash的实例,是$imported变量,我喜欢戏称他为进口变量,美刀能够使他全局作用。他们用一个可以代表脚本的字符串作为Hash的键,一个TrueClass或是FalseClass的唯一实例来作为值,当脚本被使用时,改键的值为true,反之为false,类似于这样:
$imported = {} if $imported == nil
$imported["TestScript"] = true
接下来的事相比大家都能明白了吧?不过在目前的FSL中,采用的是这种方法的另一种实现方法,键——值对应关系中的值是一个数组,标志了脚本的版本,我们要相信脚本是会做出改动的吧!
$fscript = {} if $fscript == nil
$fscript["TestScript"] = [1,0,0]
但问题同样来了,脚本的执行总要有个先后顺序吧?对到底是我让你呢还是你让我呢?还是互相让?
一个人的智慧是有限的,结合大家的力量和经验将会变得十分有效,大家参与讨论吧! |
|