#encoding:utf-8
#==============================================================================
# ■ Window_Status
#------------------------------------------------------------------------------
#  状态画面中,显示角色基本信息的窗口。
#==============================================================================
class Window_Status < Window_Selectable
        #--------------------------------------------------------------------------
        # ● 初始化对象
        #--------------------------------------------------------------------------
        def initialize(actor)
                super(0, 0, 544, 412)
                @actor = actor
                refresh
                activate
    self.opacity=0
                @data = []
        end
        #--------------------------------------------------------------------------
        # ● 设置角色
        #--------------------------------------------------------------------------
        def actor=(actor)
                return if @actor == actor
                @actor = actor
                refresh
        end
        #--------------------------------------------------------------------------
        # ● 刷新
        #--------------------------------------------------------------------------
        def refresh
                contents.clear
                draw_block1   (0)
                draw_skill
        end
        #--------------------------------------------------------------------------
        # ● 绘制区域 1 
        #--------------------------------------------------------------------------
        def draw_block1(y)
#~     draw_window_backg
                draw_backg
                draw_actor_name(@actor, 4, y)
                draw_actor_class(@actor, 128, y)
                draw_basic_info(136, y)
                draw_parameters(32, y)
                draw_xparameters
                draw_sparameters
                draw_equipments(288, y)
                draw_description(4, y)
        end
        #--------------------------------------------------------------------------
        # ● 绘制水平线
        #--------------------------------------------------------------------------
        def draw_horz_line(y)
                line_y = y + line_height / 2 - 1
                contents.fill_rect(0, line_y, contents_width, 2, line_color)
        end
        #--------------------------------------------------------------------------
        # ● 获取水平线的颜色
        #--------------------------------------------------------------------------
        def line_color
                color = normal_color
                color.alpha = 48
                color
        end
        #--------------------------------------------------------------------------
        # ● 绘制基本信息
        #--------------------------------------------------------------------------
        def draw_basic_info(x, y)
                w=28
                rct_w=32
                rct_h=24
                y_z=160
                x_z=0
                #~  draw_actor_icons(@actor, x, y + line_height * 1)绘制状态图标
                contents.font.size=16
#~                 draw_actor_hp(@actor, 160, 200,width= 100)
#~                 draw_actor_mp(@actor, 160, 224,width= 100)
                draw_icon(6, x_z  , y_z    , enabled = true)
                draw_icon(3, x_z+w  , y_z  , enabled = true)
                draw_icon(4, x_z+w*2  , y_z, enabled = true)
                draw_icon(8, x_z+w*3  , y_z, enabled = true)
                draw_icon(5, x_z+w*4  , y_z, enabled = true)
                draw_icon(10, x_z+w*5  , y_z, enabled = true)
 
    draw_text(x_z+4 ,y_z+w-8    ,rct_w,rct_h,@actor.m5_20150228_skill_point["红莲"])
                draw_text(x_z+w+4 ,y_z+w-8  ,rct_w,rct_h,@actor.m5_20150228_skill_point["冻牙"])
                draw_text(x_z+w*2+4 ,y_z+w-8,rct_w,rct_h,@actor.m5_20150228_skill_point["闪光"])
                draw_text(x_z+w*3+4 ,y_z+w-8,rct_w,rct_h,@actor.m5_20150228_skill_point["烈空"])
                draw_text(x_z+w*4+4 ,y_z+w-8,rct_w,rct_h,@actor.m5_20150228_skill_point["金刚"])
                draw_text(x_z+w*5+4 ,y_z+w-8,rct_w,rct_h,@actor.m5_20150228_skill_point["修罗"])
 
                draw_text(x_z+4 ,y_z+w+4    ,rct_w,rct_h,@actor.m5_20150228_skill_point_use["红莲"])
                draw_text(x_z+w+4 ,y_z+w+4  ,rct_w,rct_h,@actor.m5_20150228_skill_point_use["冻牙"])
                draw_text(x_z+w*2+4 ,y_z+w+4,rct_w,rct_h,@actor.m5_20150228_skill_point_use["闪光"])
                draw_text(x_z+w*3+4 ,y_z+w+4,rct_w,rct_h,@actor.m5_20150228_skill_point_use["烈空"])
                draw_text(x_z+w*4+4 ,y_z+w+4,rct_w,rct_h,@actor.m5_20150228_skill_point_use["金刚"])
                draw_text(x_z+w*5+4 ,y_z+w+4,rct_w,rct_h,@actor.m5_20150228_skill_point_use["修罗"])
        end
        #--------------------------------------------------------------------------
        # ● 绘制技能
        #-------------------------------------------------------------------------- 
        def draw_skill
                dx = 170; dy = 40
                contents.font.size=16
                for skill in @actor.skills
                        next if skill.nil?
                        next unless @actor.added_skill_types.include?(skill.stype_id)
                        draw_item_name(skill, dx, dy)
                        #~  dx = dx == contents.width / 2 + 16 ? 0 : contents.width / 2 + 16
                        dy += line_height #if dx == 0
                        return if dy + line_height > contents.height
                end
        end
        #--------------------------------------------------------------------------
        # ● 绘制普通能力值  
  #def mhp;  param(0);   end    # 最大HP          Maximum Hit Point
  #def mmp;  param(1);   end    # 最大MP          Maximum Magic Point
  #def atk;  param(2);   end    # 物理攻击        ATtacK power
  #def def;  param(3);   end    # 物理防御        DEFense power
  #def mat;  param(4);   end    # 魔法攻击        Magic ATtack power
  #def mdf;  param(5);   end    # 魔法防御        Magic DeFense power
  #def agi;  param(6);   end    # 敏 捷 值        AGIlity
  #def luk;  param(7);   end    # 幸 运 值        LUcK
        #--------------------------------------------------------------------------
        def draw_parameters(x, y)
                contents.font.size=18
    w=24
                rct_w=32
                rct_h=24
                y_z=210
                x_z=0
#~     draw_icon(15, x_z , y_z, enabled = true)
#~                 draw_icon(16, x_z , y_z+w, enabled = true)
#~                 draw_icon(17, x_z , y_z+w*2, enabled = true)
#~                 draw_icon(18, x_z , y_z+w*3, enabled = true)
#~                 draw_icon(19, x_z+70 , y_z, enabled = true)
#~                 draw_icon(10, x_z+70 , y_z+w, enabled = true)
#~                 draw_icon(21, x_z+70 , y_z+w*2, enabled = true)
#~     draw_icon(21, x_z+70 , y_z+w*3, enabled = true)
    draw_actor_param(@actor, x_z, y_z  , 0)
    draw_actor_param(@actor, x_z, y_z + w * 1, 1)
    draw_actor_param(@actor, x_z, y_z + w * 2, 2)
    draw_actor_param(@actor, x_z, y_z + w * 3, 3)
    draw_actor_param(@actor, 74, y_z , 4)
    draw_actor_param(@actor, 74, y_z + w * 1, 5)
    draw_actor_param(@actor, 74, y_z + w * 2, 6)
    draw_actor_param(@actor, 74, y_z + w * 3, 7)
        end
  #--------------------------------------------------------------------------
        # ● 绘制X能力值
        #--------------------------------------------------------------------------
        def draw_xparameters
                x=140
                l=18
                y=Graphics.height-l*10
                contents.font.size=16
                draw_actor_xparam(@actor, x, y+l*1,0 , "物理命中")
                draw_actor_xparam(@actor, x, y+l*2,1 , "物理闪避")
                draw_actor_xparam(@actor, x, y+l*3,2 , "会心一击")
                draw_actor_xparam(@actor, x, y+l*4,3 , "抗会心一击")
                #~  draw_actor_xparam(@actor, x, y+l*5,4 , "技能闪避")
                #~  draw_actor_xparam(@actor, x, y+l*6,5 , "技能反射")
                draw_actor_xparam(@actor, x, y+l*5,6 , "反击")
                draw_actor_xparam(@actor, x, y+l*6,7 , "生命再生")
                draw_actor_xparam(@actor, x, y+l*7,8 , "士气再生")
                #~  draw_actor_xparam(@actor, x, y+l*10,9 , "怒气增长")
        end
  #--------------------------------------------------------------------------
        # ● 绘制S能力值
        #--------------------------------------------------------------------------
        def draw_sparameters
                x=0
                l=18
                y=Graphics.height-l*7
                contents.font.size=16
                draw_actor_sparam(@actor, x, y+l*1, 1,"防御修正")
                draw_actor_sparam(@actor, x, y+l*2, 2,"恢复修正")
                draw_actor_sparam(@actor, x, y+l*3, 3,"治疗修正")
                #~  draw_actor_sparam(@actor, x, y+l*4, 4,"MP消费率")
                #~  draw_actor_sparam(@actor, x, y+l*5, 5,"TP消耗率")
                draw_actor_sparam(@actor, x, y+l*4, 6,"物抗修正")
                #~  draw_actor_sparam(@actor, x, y+l*7, 7,"魔法伤害加成")
                #~  draw_actor_sparam(@actor, x, y+l*8, 8,"地形伤害加成")
                #~  draw_actor_sparam(@actor, x, y+l*9, 9,"经验获得加成")
        end
  #--------------------------------------------------------------------------
        # ● 绘制人物背景
        #--------------------------------------------------------------------------
        def draw_backg
                actor=@actor
                actor_bg(actor.id)
        end
        def actor_bg(file_name)
                bitmap = Cache.picture("/Actor#{file_name}_Status")
                src_rect = Rect.new(0,0,544 ,412)
                contents.blt(0, 0, bitmap, src_rect,255)
        end
  #--------------------------------------------------------------------------
        # ● 绘制窗口背景
        #--------------------------------------------------------------------------
#~         def draw_window_backg
#~                 windowbg = Cache.picture("/windowbg")
#~                 src_rect = Rect.new(0,0,windowbg.width ,windowbg.height)
#~                 contents.blt(0, 0, windowbg, src_rect,125)
#~         end
end