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

Project1

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

[讨论] 将RMVX脚本与RMXP互相转换,或通用化

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
37 小时
注册时间
2015-2-13
帖子
126
跳转到指定楼层
1
发表于 2015-2-22 20:03:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 布冷.逆天 于 2015-2-22 21:42 编辑

由于我并不懂RMVX的脚本,所以希望大神给点资料,让我们大家一起找RMVX脚本和RMXP脚本的共同点。
目前呢,我觉得可以先将共同点找出来,然后将不同点注释,用RMVX是将RMVX的脚本解除注释,RMXP同理。
也可以将不同点转换成共同点!@RyanBern @恐惧剑刃 @芯☆淡茹水@︶ㄣ牛排ぶ @晴兰   

点评

共同点:Ruby  发表于 2015-2-22 20:05

Lv3.寻梦者 (版主)

…あたしは天使なんかじゃないわ

梦石
0
星屑
2207
在线时间
4033 小时
注册时间
2010-10-4
帖子
10779

开拓者贵宾

2
发表于 2015-2-22 21:46:41 | 只看该作者
一般做法是:

RUBY 代码复制
  1. # 由于我不知道 XP 的 Ruby 版本,但是听说过 self 的问题,就用顶层 self 来判断了。
  2. RGSS_VERSION = if RUBY_VERSION == '1.9.2'
  3.   :VA
  4. elsif self
  5.   :VX
  6. else
  7.   :XP
  8. end
  9.  
  10. # ... maybe in a class definition ...
  11.  
  12. if RGSS_VERSION == :VA
  13.   def some_method_in_va
  14.     do_something_in_va
  15.   end
  16. elsif RGSS_VERSION == :VX
  17.   def some_method_in_vx
  18.     do_something_in_vx
  19.   end
  20. else
  21.   # XP
  22. end

评分

参与人数 2星屑 +250 收起 理由
3106345123 + 50 我很赞同
恐惧剑刃 + 200 我很赞同

查看全部评分

回复 支持 反对

使用道具 举报

Lv3.寻梦者 (暗夜天使)

精灵族の天使

梦石
0
星屑
1697
在线时间
3038 小时
注册时间
2007-3-16
帖子
33731

开拓者贵宾

3
发表于 2015-2-25 17:42:04 | 只看该作者
本帖最后由 精灵使者 于 2015-2-25 18:24 编辑
  1. OS = self ? (RUBY_VERSION == '1.9.2' ? :va : :vx) : :xp
  2. case OS
  3. when :xp
  4.   #code in RMXP
  5. when :vx
  6.   #code in RMVX
  7. when :va
  8.   #code in RMVA
  9. end
复制代码

点评

忘记了,多谢提醒,已经更正  发表于 2015-2-25 18:25
应该改为 OS = self ? (RUBY_VERSION == '1.9.2' ? :va : :vx) : :xp  发表于 2015-2-25 18:13

评分

参与人数 2星屑 +250 收起 理由
chd114 + 50 认可答案
恐惧剑刃 + 200 我很赞同

查看全部评分

回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3228
在线时间
1120 小时
注册时间
2009-4-15
帖子
815
4
发表于 2015-3-24 15:07:45 | 只看该作者
如果按照楼上那样设定,岂不是一段代码写3次?加大工作量不好说,还不方便维护修改啊……

点评

是的,因此只适合功能比较独立的脚本。  发表于 2015-3-28 15:15
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
351
在线时间
252 小时
注册时间
2015-2-17
帖子
136
5
发表于 2015-8-28 19:43:35 | 只看该作者
vx,va,xp通用类的脚本多不涉及数据
原因是调用方法不一样,比如vx属性6条,va八条。。。
于是vx改va华丽的失败了。

点评

所以改起来就呵呵哒。调用都不一样  发表于 2015-9-4 15:41
还有两点:1.不涉及ruby各版本的特性1.9和2.0的变动还是不小的。2.不涉及RGSS不同版本之间的新特性。比如VAF1里有注明不少地方属于RGSS3特有  发表于 2015-8-31 13:13
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-4-20 12:27

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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