- 注册时间
- 2007-5-17
- 最后登录
- 2009-4-23
②入门
- 积分
- 97
|
发表于 2007-5-18 19:08:44
|
显示全部楼层
其实多重状态本来就自带了的,只是没有显示而已,我这里有个来自日站的脚本 作者是Claimh
应该可以满足你的要求- #==============================================================================
- # 多重状态 Ver. 1.1 by Claimh
- #------------------------------------------------------------------------------
- # [url]http://www.k3.dion.ne.jp/~claimh/[/url]
- #==============================================================================
- 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[i].rating >= 1
- if text == ""
- text = $data_states[i].name
- else
- new_text = text + "/" + $data_states[i].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
复制代码 |
|