设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 6977|回复: 20
打印 上一主题 下一主题

[已经解决] 可能面临的兼容性问题以及解决方案

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1050
在线时间
1564 小时
注册时间
2008-7-30
帖子
4418

贵宾

跳转到指定楼层
发表于 2010-7-8 13:19:07 | 显示全部楼层 回帖奖励 |正序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

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]


但问题同样来了,脚本的执行总要有个先后顺序吧?对到底是我让你呢还是你让我呢?还是互相让?

一个人的智慧是有限的,结合大家的力量和经验将会变得十分有效,大家参与讨论吧!

See FScript Here:https://github.com/DeathKing/fscript
潜心编写URG3中。
所有对URG3的疑问和勘误或者建议,请移步至发布页面。
欢迎萌妹纸催更

Lv2.观梦者 (管理员)

八云紫的式神

梦石
0
星屑
549
在线时间
1243 小时
注册时间
2008-1-1
帖子
4282

烫烫烫

发表于 2010-7-11 06:16:51 | 显示全部楼层
alias只允许修改方法开头和结尾,如果要改动中间任何部分还是要完全def,这个应该是冲突的主要根源之一
另外FSL协议咱想直接加进我那个XE的游戏制作工具当脚本规范了

点评

完全支持,不过现在准备把前辈的脚本给拉进来……好多前辈的优良脚本没有更新真是可惜。(特别是沉影前辈的,思想和FSL若合一契啊。)  发表于 2010-7-11 13:08
rm for linux(wine)制作中,期待夏娜SAMA能实现到webrm上
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-2 14:28

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表