[KM] Window Status (Compatível com Netplay Master v2)

    jiraya
    jiraya
    Administrador
    Administrador

    Mensagens : 1299
    Credibilidade : 54

    [KM] Window Status (Compatível com Netplay Master v2) Empty [KM] Window Status (Compatível com Netplay Master v2)

    Mensagem por jiraya em Seg Dez 06, 2010 2:39 pm

    autor=kDuM4C3d0
    [KM] Window_Status

    Eae pessoal, este é o primeiro script que eu disponibilizo para as comunidades, esse menu de status foi pedido por Mihawk da MRM, é um menu de status bem simples, mas que conta com um Sistema de Profissão.
    Esse sistema de profissão é feito atravéz de uma variavel que em determinado valor diz qual a profissão do jogador.
    Na demo utilizei a variavel número 6, e criei 4 profissões:
    » Estudante - A variavel nº6 assume o valor 1
    » Professor - A variavel nº6 assume o valor 2
    » Monitor - A variavel nº6 assume o valor 3
    » Diretor - A variavel nº6 assume o valor 4
    Para trocar a profissão de um jogador basta criar um evento comum e definir o valor desejado para a variavel escolhida no script.
    Todo o menu é totalmente customizavel, adicionei vários comentários para facilitar no momento da personalização dele.
    #Imagem que será usada no fundo do menu
    FUNDO_MENU = "fundo_menu" <--- Gráfico do fundo do menu
    #Barra de HP
    BARRA_HP = "barra_hp" <--- Gráfico da Barra de HP
    #Barra de MP
    BARRA_MP = "barra_mp" <--- Gráfico da Barra de MP
    #Barra de XP
    BARRA_XP = "barra_xp" <--- Gráfico da Barra de XP
    #Barra de AGI
    BARRA_AGI = "barra_agi" <--- Gráfico da Barra de Agi
    #Barra de DEX
    BARRA_DEX = "barra_dex" <--- Gráfico da Barra de Dex
    #Barra de INT
    BARRA_INT = "barra_int" <--- Gráfico da Barra de Int
    #Barra de EVA
    BARRA_STR = "barra_eva" <--- Gráfico da Barra de Força (Eu errei o nome da barra, por isso está escrito eva. =P )
    #Barra de M.ATK
    BARRA_MATK = "barra_matk" <--- Ignorem esta parte eu acabei adicionando uma barra nova, depois percebi que não existia esse atributo. )
    #Barra de M.DEF
    BARRA_MDEF = "barra_mdef" <--- Gráfico da Barra de M. Def
    #Barra de P.ATK
    BARRA_PATK = "barra_patk" <--- Gráfico da Barra de P. Atk
    #Barra de P.DEF
    BARRA_PDEF = "barra_pdef" <--- Gráfico da Barra de P. Def
    #Valor Máximo dos Atributos
    STAT_MAX = 250 <--- Valor máximo que um atributo poderá atingir.
    #Variavel da Profissão (Não utilize uma variavel global)
    VAR_PRO = 6 <--- Variavel responsavel por definir quais serão as profissões.
    #Profissão 1
    PRO1 = "Estudante" <--- Nome da 1ª profissão
    #Profissão 2
    PRO2 = "Professor" <--- Nome da 2ª profissão
    #Profissão 3
    PRO3 = "Monitor" <--- Nome da 3ª profissão
    #Profissão 4
    PRO4 = "Diretor" <--- Nome da 4ª profissão
    Uma screenshot do menu (Design do menu foi feito por Mihawk)
    [KM] Window Status (Compatível com Netplay Master v2) ScreenKMWindowStatus
    Script:
    Código:
    #==============================================================================#
    # » [KM] Window Status #
    #==============================================================================#
    # » Desenvolvido por Kadu Macedo #
    # » Pedido feito por Mihawk- #
    # » Visite: [url=http://www.imperiomakers.com.br]www.imperiomakers.com.br[/url] #
    #==============================================================================#
    # » Instruções sobre como utilizar o sistema de profissões: #
    # Para definir a profissão de um jogador é bem simples você só #
    # deve definir por um evento comum qual será o valor da variavel #
    # escolhida. Você pode ver como foi feito nesse script analizando #
    # como eu fiz o NPC de Troca de Profissão. #
    #==============================================================================#
    module KDU
    #Imagem que será usada no fundo do menu
    FUNDO_MENU = "fundo_menu"
    #Barra de HP
    BARRA_HP = "barra_hp"
    #Barra de MP
    BARRA_MP = "barra_mp"
    #Barra de XP
    BARRA_XP = "barra_xp"
    #Barra de AGI
    BARRA_AGI = "barra_agi"
    #Barra de DEX
    BARRA_DEX = "barra_dex"
    #Barra de INT
    BARRA_INT = "barra_int"
    #Barra de EVA
    BARRA_STR = "barra_eva"
    #Barra de M.ATK
    BARRA_MATK = "barra_matk"
    #Barra de M.DEF
    BARRA_MDEF = "barra_mdef"
    #Barra de P.ATK
    BARRA_PATK = "barra_patk"
    #Barra de P.DEF
    BARRA_PDEF = "barra_pdef"
    #Valor Máximo dos Atributos
    STAT_MAX = 250
    #Variavel da Profissão (Não utilize uma variavel global)
    VAR_PRO = 6
    #Profissão 1
    PRO1 = "Estudante"
    #Profissão 2
    PRO2 = "Professor"
    #Profissão 3
    PRO3 = "Monitor"
    #Profissão 4
    PRO4 = "Diretor"
    end

    class Window_Status2 < Window_Base
    def initialize
    super(125,90,450,310) # Posição e Tamanho do Menu
    self.contents = Bitmap.new(width - 32, height - 32)
    @dragable = true #Permite arrastar a windowskin
    @closable = true #Permite fechar a windowskin
    self.z = 999999
    self.back_opacity = 0 # Opacidade da Windowskin
    refresh
    end
    def refresh
    self.contents.clear
    @actor = $game_party.actors[0]
    # Mostra a imagem de fundo
    fundo3 = RPG::Cache.picture(KDU::FUNDO_MENU)
    fundo1 = fundo3.width
    fundo2 = fundo3.height
    fundo4 = Rect.new(0,0,fundo1,fundo2)
    self.contents.blt(0,0,fundo3,fundo4)
    # Mostra o gráfico do Personagem
    draw_actor_graphic(@actor, 150, 135)
    # Informações sobre os Equipamentos
    @data = []
    @data.push($data_weapons[@actor.weapon_id])
    @data.push($data_armors[@actor.armor1_id])
    @data.push($data_armors[@actor.armor2_id])
    @data.push($data_armors[@actor.armor3_id])
    @data.push($data_armors[@actor.armor4_id])
    # Mostra a Arma equipada
    draw_item_name2(@data[0], 95, 95) #Posição X e Y
    # Mostra o Escudo equipado
    draw_item_name2(@data[1], 180, 95) #Posição X e Y
    # Mostra o Capaçete equipado
    draw_item_name2(@data[2], 137, 47) #Posição X e Y
    # Mostra a Armadura equipada
    draw_item_name2(@data[3], 137, 140) #Posição X e Y
    # Mostra o Acessório equipado
    draw_item_name2(@data[4], 181, 140) #Posição X e Y
    # Mostra o nome do Personagem
    self.contents.draw_text(140, 180, 100, 32, "[email=#{@actor.name]#{@actor.name[/email]}")
    # Mostra o nome do Clã
    self.contents.draw_text(140, 202, 100, 32, $game_party.actors[0].guild)
    # Exibe a Profissão do Personagem
    if $game_variables[KDU::VAR_PRO] == 1
    self.contents.draw_text(140, 224, self.width-64, 32, KDU::PRO1,0)
    end
    if $game_variables[KDU::VAR_PRO] == 2
    self.contents.draw_text(140, 224, self.width-64, 32, KDU::PRO2,0)
    end
    if $game_variables[KDU::VAR_PRO] == 3
    self.contents.draw_text(140, 224, self.width-64, 32, KDU::PRO3,0)
    end
    if $game_variables[KDU::VAR_PRO] == 4
    self.contents.draw_text(140, 224, self.width-64, 32, KDU::PRO4,0)
    end
    # Mostra a Classe do Personagem
    draw_actor_class(@actor, 85, 246)
    # Mostra a Barra de HP
    hpbar = RPG::Cache.picture(KDU::BARRA_HP)
    hpbarwidth = hpbar.width * @actor.hp / @actor.maxhp
    hpbarheight = hpbar.height
    hpbar_rect = Rect.new(0,0,hpbarwidth,hpbarheight)
    self.contents.blt(300,45,hpbar,hpbar_rect) # Posição da Barra
    # Mostra a Barra de MP
    spbar = RPG::Cache.picture(KDU::BARRA_MP)
    spbarwidth = spbar.width * @actor.sp / @actor.maxsp
    spbarheight = spbar.height
    spbar_rect = Rect.new(0,0,spbarwidth,spbarheight)
    self.contents.blt(300,65,spbar,spbar_rect) # Posição da Barra
    # Mostra a Barra de XP
    if $game_party.actors[0].level != 99
    xpbar = RPG::Cache.picture(KDU::BARRA_XP)
    xpbarwidth = xpbar.width * @actor.now_exp / @actor.next_exp
    xpbarheight = xpbar.height
    xpbar_rect = Rect.new(0,0,xpbarwidth,xpbarheight)
    self.contents.blt(300,85,xpbar,xpbar_rect) # Posição da Barra
    end
    # Mostra a Barra de P.ATK
    patkbar = RPG::Cache.picture(KDU::BARRA_PATK)
    patkbarwidth = patkbar.width * @actor.atk / KDU::STAT_MAX
    patkbarheight = patkbar.height
    patkbar_rect = Rect.new(0,0,patkbarwidth,patkbarheight)
    self.contents.blt(300,105,patkbar,patkbar_rect) # Posição da Barra
    # Mostra a Barra de P.DEF
    pdefbar = RPG::Cache.picture(KDU::BARRA_PDEF)
    pdefbarwidth = pdefbar.width * @actor.pdef / KDU::STAT_MAX
    pdefbarheight = pdefbar.height
    pdefbar_rect = Rect.new(0,0,pdefbarwidth,pdefbarheight)
    self.contents.blt(300,125,pdefbar,pdefbar_rect) # Posição da Barra
    # Mostra a Barra de M.DEF
    mdefbar = RPG::Cache.picture(KDU::BARRA_MDEF)
    mdefbarwidth = mdefbar.width * @actor.mdef / KDU::STAT_MAX
    mdefbarheight = mdefbar.height
    mdefbar_rect = Rect.new(0,0,mdefbarwidth,mdefbarheight)
    self.contents.blt(300,145,mdefbar,mdefbar_rect) # Posição da Barra
    # Mostra a Barra de DEX
    dexbar = RPG::Cache.picture(KDU::BARRA_DEX)
    dexbarwidth = dexbar.width * @actor.dex / KDU::STAT_MAX
    dexbarheight = dexbar.height
    dexbar_rect = Rect.new(0,0,dexbarwidth,dexbarheight)
    self.contents.blt(300,166,dexbar,dexbar_rect) # Posição da Barra
    # Mostra a Barra de INT
    intbar = RPG::Cache.picture(KDU::BARRA_INT)
    intbarwidth = intbar.width * @actor.int / KDU::STAT_MAX
    intbarheight = intbar.height
    intbar_rect = Rect.new(0,0,intbarwidth,intbarheight)
    self.contents.blt(300,187,intbar,intbar_rect) # Posição da Barra
    # Mostra a Barra de AGI
    agibar = RPG::Cache.picture(KDU::BARRA_AGI)
    agibarwidth = agibar.width * @actor.agi / KDU::STAT_MAX
    agibarheight = agibar.height
    agibar_rect = Rect.new(0,0,agibarwidth,agibarheight)
    self.contents.blt(300,207,agibar,agibar_rect) # Posição da Barra
    #Mostra a Barra de EVA
    strbar = RPG::Cache.picture(KDU::BARRA_STR)
    strbarwidth = strbar.width * @actor.str / KDU::STAT_MAX
    strbarheight = strbar.height
    strbar_rect = Rect.new(0,0,strbarwidth,strbarheight)
    self.contents.blt(300,227,strbar,strbar_rect) # Posição da Barra
    end
    end
    E finalmente, o download da window: Clique aqui para baixar
    Créditos: KaduMacedo por criar a window
    Mihawk por ter feito o pedido da window
    ~Junior~
    ~Junior~
    Membro
    Membro

    Mensagens : 27
    Credibilidade : 2

    [KM] Window Status (Compatível com Netplay Master v2) Empty Re: [KM] Window Status (Compatível com Netplay Master v2)

    Mensagem por ~Junior~ em Qua Jul 20, 2011 9:28 pm

    Link quebrado
    Alucard
    Alucard
    Semi-programador
    Semi-programador

    Mensagens : 191
    Credibilidade : 9

    [KM] Window Status (Compatível com Netplay Master v2) Empty Re: [KM] Window Status (Compatível com Netplay Master v2)

    Mensagem por Alucard em Qua Mar 07, 2012 6:00 pm

    Link quebrado que pena

    Conteúdo patrocinado

    [KM] Window Status (Compatível com Netplay Master v2) Empty Re: [KM] Window Status (Compatível com Netplay Master v2)

    Mensagem por Conteúdo patrocinado


      Data/hora atual: Qui Set 19, 2019 6:02 pm