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

Project1

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

修正\c[1]、\g等令对话换行不准确问题

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
142
在线时间
264 小时
注册时间
2006-11-22
帖子
1057
跳转到指定楼层
1
发表于 2008-3-26 03:54:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
范例工程:http://rpg.blue/upload_program/files/Project1000_86904252.rar

Interpreter3的command_101
return true
end 下
@index += 1 上
加入


  1. # 插入换行符
  2.       a = $game_temp.message_text.gsub(/\\\\/) { "㏒" }
  3.       # 有需要自已增加...如果用了一些对话脚本的变更文字大小此脚本没办法解决
  4.       a.gsub!(/\\[Cc]\[([0-9]+)\]/) { "㏑" }
  5.       a.gsub!(/\\[Vv]\[([0-9]+)\]/) { "㏑" }
  6.       a.gsub!(/\\[Gg]/) { "㏒" }
  7.       nsize = 0
  8.       letter = 0
  9.       done1 = nil
  10.       done2 = nil
  11.       ary = $game_temp.message_text.scan(/./)
  12.       ary2 = a.scan(/./)
  13.       for i in 0...ary2.size
  14.         rege = /[[:punct:]]/e =~ ary2[i]
  15.         rege2 = /[[:blank:]]/e =~ ary2[i]
  16.         if ary2[i] == "㏒"
  17.           letter += 2 # += 后的是有多少个字符 eg: \g <--2个字符
  18.         elsif ary2[i] == "㏑"
  19.           letter += 5 # \c[2] <--5个字符
  20.         else
  21.           if ary2[i].scan(/\d/) != [] or ary2[i].tr_s!("a-z", "a-z") != nil or rege == 0 or rege2 == 0
  22.             nsize += 0.5
  23.             letter += 1
  24.           else
  25.             nsize += 1
  26.             letter += 1
  27.           end
  28.         end
  29.         if done1 != true
  30.           if nsize.round >= 20 # 一行可容纳字数,自己调试
  31.             ary.insert(letter, "\n")
  32.             done1 = true
  33.           end
  34.         end
  35.         if done2 != true
  36.           if nsize.round >= 40
  37.             ary.insert(letter+1, "\n")
  38.             done2 = true
  39.           end
  40.         end
  41.         if nsize.round >= 60
  42.           ary.insert(letter+1, "\n")
  43.         end
  44.       end
  45.       $game_temp.message_text = ary.to_s
复制代码




if ary2.scan(/\d/) != [] or ary2.tr_s!("a-z", "a-z") != nil or rege == 0 or rege2 == 0
这行是分辨半角全角字...对默认脚本好像没什么用
改了对话框大小的游戏较有用..

此为初步构思,有bug请提出

提供一些有用字符;
∩∪⊥∠∟⊿㎡㏎㎏㏕{/gg}

以上的只适用在默认脚本
总括来说,要根据自己的游戏调整,要有点脚本基础才能用好。
头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
46
在线时间
10 小时
注册时间
2007-5-27
帖子
2558

第1届Title华丽大赛新人奖

2
发表于 2008-3-26 03:56:12 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
142
在线时间
264 小时
注册时间
2006-11-22
帖子
1057
3
 楼主| 发表于 2008-3-26 03:57:04 | 只看该作者
漏了说,以上的只适用在默认脚本
总括来说,要根据自己的游戏调整,要有点脚本基础才能用好。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

月下可怜人

梦石
0
星屑
50
在线时间
10 小时
注册时间
2005-11-23
帖子
4085

第1届短篇游戏比赛亚军

4
发表于 2008-3-26 04:00:04 | 只看该作者
原来是要弄这个,原以为还是破解.
纵然千里外,我等雁归来。
回复 支持 反对

使用道具 举报

Lv5.捕梦者

御灵的宠物

梦石
12
星屑
8438
在线时间
88 小时
注册时间
2006-12-11
帖子
3148

第2届TG大赛亚军

5
发表于 2008-3-26 04:05:04 | 只看该作者
在显示文章那把\n那个东西去了不行么……(天音:这人很天真……)
我的Lofter:http://nightoye.lofter.com/

回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
142
在线时间
264 小时
注册时间
2006-11-22
帖子
1057
6
 楼主| 发表于 2008-3-26 04:41:47 | 只看该作者
以下引用水迭澜于2008-3-25 20:05:04的发言:

在显示文章那把\n那个东西去了不行么……(天音:这人很天真……)


[本贴由作者于 2008-3-25 20:05:58 最后编辑]

不就无法换行..
回复 支持 反对

使用道具 举报

Lv5.捕梦者

御灵的宠物

梦石
12
星屑
8438
在线时间
88 小时
注册时间
2006-12-11
帖子
3148

第2届TG大赛亚军

7
发表于 2008-3-26 04:58:58 | 只看该作者
为什么我记得window_message里有换行的……= =bbb
好吧我退散
我的Lofter:http://nightoye.lofter.com/

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-4-9 04:49

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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