#==============================================================================
# F01 - 细节美化 - By芙蕾娅
#------------------------------------------------------------------------------
# ★ - 新增 ☆ - 修改 ■ - 删除 ● - 无变更
#==============================================================================
module Freya
# 值槽的种类
# 0 = 默认
# 1 = 描绘边框
# 2 = 渐变
# 3 = 描绘边框 + 渐变
Gauge_Type = 3
end
#==============================================================================
# ■ Window_Base
#------------------------------------------------------------------------------
# 游戏中所有窗口的父类
#==============================================================================
class Window_Base < Window
#--------------------------------------------------------------------------
# ☆ 放大字体尺寸
# 放大字体尺寸从8更改为4
#--------------------------------------------------------------------------
def make_font_bigger
contents.font.size += 4 if contents.font.size <= 64
end
#--------------------------------------------------------------------------
# ☆ 缩小字体尺寸
# 缩小字体尺寸从8更改为4
#--------------------------------------------------------------------------
def make_font_smaller
contents.font.size -= 4 if contents.font.size >= 16
end
#--------------------------------------------------------------------------
# ☆ 绘制值槽
# rate : 比率(1.0 为满值)
# color1 : 渐变色的左端
# color2 : 渐变色的右端
# 增加了绘制种类
#--------------------------------------------------------------------------
def draw_gauge(x, y, width, rate, color1, color2)
if Freya::Gauge_Type == 0
fill_w = (width * rate).to_i
gauge_y = y + line_height - 8
contents.fill_rect(x, gauge_y, width, 6, gauge_back_color)
contents.gradient_fill_rect(x, gauge_y, fill_w, 6, color1, color2)
elsif Freya::Gauge_Type == 1
fill_w = ((width - 2) * rate).to_i
gauge_y = y + line_height - 8
contents.fill_rect(x, gauge_y, width, 6, gauge_back_color)
contents.gradient_fill_rect(x + 1, gauge_y + 1, fill_w, 4, color1, color2)
elsif Freya::Gauge_Type == 2
fill_w = ((width) * rate).to_i
gauge_y = y + line_height - 8
contents.fill_rect(x, gauge_y, width, 6, gauge_back_color)
contents.gradient_fill_rect(x, gauge_y, fill_w / 2, 6, color1, color2)
contents.gradient_fill_rect(x + fill_w / 2, gauge_y, fill_w / 2, 6, color2, color1)
elsif Freya::Gauge_Type == 3
fill_w = ((width - 2) * rate).to_i
gauge_y = y + line_height - 8
contents.fill_rect(x, gauge_y, width, 6, gauge_back_color)
contents.gradient_fill_rect(x + 1, gauge_y + 1, fill_w / 2, 4, color1, color2)
contents.gradient_fill_rect(x + 1 + fill_w / 2, gauge_y + 1, fill_w / 2, 4, color2, color1)
end
end
#--------------------------------------------------------------------------
# ☆ 以 当前值/最大值 这样的分数形式绘制当前值和最大值
# current : 当前值
# max : 最大值
# color1 : 当前值的颜色
# color2 : 最大值的颜色
# 稍微缩小字体大小,移动一些坐标
#--------------------------------------------------------------------------
def draw_current_and_max_values(x, y, width, current, max, color1, color2)
change_color(color1)
xr = x + width
contents.font.size = 15
if width < 96
draw_text(xr - 40, y, 42, line_height, current, 2)
else
draw_text(xr - 92, y, 42, line_height, current, 2)
change_color(color2)
draw_text(xr - 52, y, 12, line_height, "/", 2)
draw_text(xr - 42, y, 42, line_height, max, 2)
end
contents.font.size = Font.default_size
end
end