|
|
发表于 2015-9-26 18:25:26
|
显示全部楼层
只要状态不相互抵消,那么一个角色可以被赋予多个状态
只是因为菜单和动画的关系,默认只能显示其中优先级最高的一个
送你个脚本好了
【多重状态,可以显示多个状态】
[pre lang="ruby"]#==============================================================================
# 本脚本来自www.66RPG.com,使用和转载请保留此信息
#==============================================================================
#==============================================================================
# 多重状态 Ver. 1.1 by Claimh
#------------------------------------------------------------------------------
# http://www.k3.dion.ne.jp/~claimh/
#==============================================================================
class Window_Base < Window
#--------------------------------------------------------------------------
# 生成状态文字
#--------------------------------------------------------------------------
def make_battler_state_text_over3(battler, width, need_normal)
brackets_width = self.contents.text_size("[]").width
text = ""
text0 = ""
ret_text = ["",""]
for i in battler.states
if $data_states.rating >= 1
if text == ""
text = $data_states.name
else
new_text = text + "/" + $data_states.name
text_width = self.contents.text_size(new_text).width
if text_width > width - brackets_width
text0 = new_text
text = ""
new_text = ""
text_width = 0
else
text = new_text
end
end
end
end
if text == "" and text0 == ""
ret_text = ["[正常]", ""]
elsif text0 == ""
ret_text[0] = "[" + text + "]"
ret_text[1] = ""
else
ret_text[0] = "[" + text0 + "]"
if text != ""
ret_text[1] = "[" + text + "]"
else
ret_text[1] = ""
end
end
return ret_text
end
#--------------------------------------------------------------------------
# 描绘角色状态
#--------------------------------------------------------------------------
def draw_actor_state(actor, x, y, width = 120)
text = make_battler_state_text_over3(actor, width, true)
self.contents.font.color = actor.hp == 0 ? knockout_color : normal_color
if text[1] == ""
self.contents.draw_text(x-5, y, width+5, 32, text[0])
else
self.contents.font.size = 20
self.contents.draw_text(x-5, y - 15 , width+5, 32, text[0])
self.contents.draw_text(x-5, y + 8, width+5, 32, text[1])
end
end
end
#==============================================================================
# 本脚本来自www.66RPG.com,使用和转载请保留此信息
#==============================================================================
[/pre] |
评分
-
查看全部评分
|