Project1
标题:
显示文章自动换行
[打印本页]
作者:
zh99998
时间:
2008-10-19 19:23
标题:
显示文章自动换行
用于更改对话框大小后难以对齐和懒得手动对齐的人
class Game_Interpreter
#--------------------------------------------------------------------------
# ● 显示文章
#--------------------------------------------------------------------------
def command_101
unless $game_message.busy
$game_message.face_name = @params[0]
$game_message.face_index = @params[1]
$game_message.background = @params[2]
$game_message.position = @params[3]
@index += 1
texts = ""
while @list[@index].code == 401 # 文章数据
texts += @list[@index].parameters[0]
@index += 1
end
texts = texts.split("\\'")
$game_message.texts = texts
if @list[@index].code == 102 # 显示选择项
setup_choices(@list[@index].parameters)
elsif @list[@index].code == 103 # 数值输入处理
setup_num_input(@list[@index].parameters)
end
set_message_waiting # 设置等待信息结束
end
return false
end
end
class Window_Message < Window_Selectable
def update_message
loop do
c = @text.slice!(/./m) # 获取一个文字
new_line if @contents_x + contents.text_size(c).width + 32 > self.width
case c
when nil # 无法获取文字时
finish_message # 结束文章更新
break
when "\x00" # 新行
new_line
if @line_count >= MAX_LINE # 当行数已至最大行数
unless @text.empty? # 并还有有等待显示的文字时
self.pause = true # 等待输入
break
end
end
when "\x01" # \C[n](文字变色)
@text.sub!(/\[([0-9]+)\]/, "")
contents.font.color = text_color($1.to_i)
next
when "\x02" # \G (显示金钱)
@gold_window.refresh
@gold_window.open
when "\x03" # \. (等待四分之一秒)
@wait_count = 15
break
when "\x04" # \| (等待一秒)
@wait_count = 60
break
when "\x05" # \! (等待输入)
self.pause = true
break
when "\x06" # \> (瞬间表示on)
@line_show_fast = true
when "\x07" # \< (瞬间表示off)
@line_show_fast = false
when "\x08" # \^ (不等待输入)
@pause_skip = true
else # 一般文字
contents.draw_text(@contents_x, @contents_y, 40, WLH, c)
c_width = contents.text_size(c).width
@contents_x += c_width
end
break unless @show_fast or @line_show_fast
end
end
end
复制代码
如果需要强制换行输入\'
范例:
http://rpg.blue/UP_PIC/200801/显示文章自动换行.rar
作者:
沉影不器
时间:
2008-10-19 19:47
提示:
作者被禁止或删除 内容自动屏蔽
作者:
zh99998
时间:
2008-10-20 04:03
嘛,fuki没看过,我写这个是为了方便我的640*480窗口
4行问题……对我来说不用考虑……因为编辑器里根本盛不了4行的640*480{/cy}
写对话的时候注意点就是了{/cy}
作者:
zh99998
时间:
2008-11-16 05:05
顶起我的被无视的脚本……
作者:
白羽
时间:
2008-12-20 04:09
提示:
作者被禁止或删除 内容自动屏蔽
作者:
zh99998
时间:
2008-12-21 05:18
呼呼,终于有人发现我的东西了……
作者:
CIS狂人
时间:
2008-12-22 02:52
啥也不说了- -所针对的问题脚本我用过....
作者:
八云紫
时间:
2008-12-24 22:04
发布完毕。
VIP += 2;
页面: http://rpg.blue/web/htm/news1227.htm
作者:
043023123
时间:
2009-2-4 06:47
好东西,没有这个之前真是苦了我了,都快成杨白劳了 [LINE]1,#dddddd[/LINE]
版主对此帖的评论:『挖坟+灌水』,积分『-10』。这些被扣积分的一半会用于对本帖正确答案的悬赏。
[LINE]1,#dddddd[/LINE]
系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
作者:
弱水三分
时间:
2009-2-4 22:01
好东西!
收了
作者:
千past
时间:
2009-2-6 22:13
提示:
作者被禁止或删除 内容自动屏蔽
作者:
黑之翅膀
时间:
2010-6-28 20:39
希望可以改自动换行时 可以选用停留的速度和时间 \^ 等待帧
顶一个
作者:
winder5k
时间:
2010-7-16 17:38
省去了手动调整的利器啊~~~ 不过对于默认分辨率要注意不要让行数超出……
作者:
huahuapro
时间:
2010-9-9 09:38
请问具体怎么用?我纯小白。。。。。。。
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1