Project1
标题:
如何令游戏中,符号和文字使用不同字体呢?
[打印本页]
作者:
冰舞蝶恋
时间:
2012-10-18 23:06
标题:
如何令游戏中,符号和文字使用不同字体呢?
呜我记得在哪里看到过中文和英文区分字体之类的脚本。。不过现在又找不到了,
想要有办法能使符号和文字字体不同,谁有办法呢 拜托了诶 谢谢~ dsu_plus_rewardpost_czw
作者:
怪蜀黍
时间:
2012-10-19 10:57
1.PNG
(158.42 KB, 下载次数: 43)
下载附件
保存到相册
2012-10-19 10:56 上传
例子:
Project1.rar
(238.94 KB, 下载次数: 62)
2012-10-19 10:56 上传
点击文件名下载附件
脚本很简单:
#==============================================================================
# ■ 符号使用其他字体
#------------------------------------------------------------------------------
#
#==============================================================================
class Window_Message < Window_Selectable
# 请设定符号使用的字体,默认为宋体:
FONT_NAME=["宋体"]
#--------------------------------------------------------------------------
# ● 更新文章显示
#--------------------------------------------------------------------------
def update_message
loop do
c = @text.slice!(/./m) # 获取一个文字
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 # 一般文字
if c.size == 3
contents.font.name = Font.default_name
else
contents.font.name = FONT_NAME
end
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
复制代码
作者:
怪蜀黍
时间:
2012-10-20 10:33
默认符号为英文的A至Z(包含大小写),数字的0至9,还有大量的常用符号。
如果还有其它符号,请自行在下面脚本的指定地方添加:
#==============================================================================
# ■ 符号使用其他字体
#------------------------------------------------------------------------------
#
#==============================================================================
class Window_Message < Window_Selectable
# 请设定符号使用的字体,默认为宋体:
FONT_NAME = ["宋体"]
SIGN_TABLE = ("A".."Z").to_a + ("a".."z").to_a + ("0".."9").to_a +
# 如果还有其它符号,请自行在下面接着添加:
[
"~" , "!" , "@" ,"#" , "$" , "%" , "^" , "&" , "*" , "(" , ")" , "_" ,
"+" , "-" , "{" , "}" ,"[" , "]" , ":" , ";" , "|" , "," , "." , "?" ,
"/" , "<" , ">"
]
#--------------------------------------------------------------------------
# ● 更新文章显示
#--------------------------------------------------------------------------
def update_message
loop do
c = @text.slice!(/./m) # 获取一个文字
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.font.name = SIGN_TABLE.include?(c) ? FONT_NAME : Font.default_name
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
复制代码
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1