赞 | 0 |
VIP | 7 |
好人卡 | 10 |
积分 | 6 |
经验 | 80946 |
最后登录 | 2024-11-7 |
在线时间 | 2166 小时 |
Lv2.观梦者 故九江太守
- 梦石
- 0
- 星屑
- 618
- 在线时间
- 2166 小时
- 注册时间
- 2012-12-5
- 帖子
- 4464
|
本帖最后由 你最珍贵 于 2013-12-29 00:48 编辑
目的: 仿VA的rgss_main,纯绿色版,也不是用callcc等工具的思路,也并没有用alias或者其他的全局变量来标记重复运行哦~
用法:
把下面脚本插入到调用rgss_main之前的任意位置就行了- trace_var :$RGSS_SCRIPTS do
- $RGSS_SCRIPTS.each{|x| x[2] = Zlib::Deflate.deflate ""}
- $RGSS_SCRIPTS[-1][2] = Zlib::Deflate.deflate "($_rgss_main_block || proc{}).call"
- end
-
- def rgss_main &block
- $_rgss_main_block = block
- $_rgss_main_block.call
- end
- #print 5 #可以去掉注释符号试试F12之后这行执行没
复制代码 然后Main部分用rgss_main括起来,举个例子:- #==============================================================================
- # ■ Main
- #------------------------------------------------------------------------------
- # 各定义结束后、从这里开始实际处理。
- #==============================================================================
- rgss_main {
- begin
- # 准备过渡
- # 设置系统默认字体
- Font.default_name = (["黑体"])
- Graphics.freeze
- # 生成场景对像 (标题画面)
- $scene = Scene_Title.new
- # $scene 为有效的情况下调用 main 过程
- while $scene != nil
- $scene.main
- end
- # 淡入淡出
- Graphics.transition(20)
- rescue Errno::ENOENT
- # 补充 Errno::ENOENT 以外错误
- # 无法打开文件的情况下、显示信息后结束
- filename = $!.message.sub("No such file or directory - ", "")
- print("找不到文件 #{filename}。 ")
- end
- }
复制代码 哎呀。。。我来错区了…… |
|