Categorias no Inventário - NPM.V3

    Compartilhe
    avatar
    jiraya
    Administrador
    Administrador

    Mensagens : 1299
    Credibilidade : 54

    Categorias no Inventário - NPM.V3

    Mensagem por jiraya em Seg Abr 16, 2012 7:05 pm

    [Autor:RD12]

    Inventário com Categorias
    Netplay Master

    Oi galera venho aqui postar um inventário para vocês feito por meu truta RD12, o Netplay precisava disso...
    É um inventário em que você pode escolher entre: Itens, Armas, Armaduras.
    O bom é que assim o inventário fica mais espaçoso, mais fácil de procurar seus itens, e ficará mais difícil de lotar o iventário.

    Imagens

    Categoria: Itens
    Spoiler:
    [Você precisa estar registrado e conectado para ver esta imagem.]
    Categoria: Armas
    Spoiler:
    [Você precisa estar registrado e conectado para ver esta imagem.]
    Categoria: Armaduras
    Spoiler:
    [Você precisa estar registrado e conectado para ver esta imagem.]

    Script

    Vá no script [WIN] Window_Item, Apague tudo, e cole esse no lugar:

    Spoiler:
    Código:
    #==============================================================================
    # ** Window_Item
    #------------------------------------------------------------------------------
    #  By Marlos Gama
    #  Categorias por RD12
    #==============================================================================

    class Window_Item2 < Window_Selectable3

      def initialize
        super(100, 85, 180, 205)
        self.windowskin = RPG::Cache.windowskin("WindSkinA")
        self.back_opacity = 220
        @item = Button2.new(self,10, 153, "Itens") {itens}
        @arma = Button2.new(self,48, 153, "Armas") {arma}
        @armadura = Button2.new(self,95, 153, "Armadura") {armadura}
        @column_max = 5
        refresh
        @aba = 0
        self.index = 0
        self.z = 99999
      end

      def itens
        @aba = 0
        refresh
      end
        def arma
        @aba = 1
        refresh
      end
        def armadura
        @aba = 2
        refresh
      end
     
      def item
        return @data[self.index]
      end
     
      def refresh
        if self.contents != nil
          self.contents.dispose
          self.contents = nil
        end
        @data = []
       
      if @aba == 0
      for i in 1...$data_items.size
        if $game_party.item_number(i) > 0
            @data.push($data_items[i])
          end
        end
      end#if
     
        unless $game_temp.in_battle
          if @aba == 1
          for i in 1...$data_weapons.size
            if $game_party.weapon_number(i) > 0
              @data.push($data_weapons[i])
            end
          end
        end
       
        if @aba == 2
          for i in 1...$data_armors.size
            if $game_party.armor_number(i) > 0
              @data.push($data_armors[i])
            end
          end
        end
       
        end
        @item_max = @data.size
        if @item_max > 0
          self.contents = Bitmap.new(width - 32, row_max * 32)
          for i in 0...@item_max
            #return if i > 20
            draw_item(i)
          end
        end
      end
     
    def selecao
     
      if in_area?([40*0, 16, 40, 45])
      return if $pegando_item_trade == true
      return if $pegando_item == true
      return if $pegando_item_loja == true
      return if $desequipar_arma == true
      return if $desequipar_armadura== true
      return if $desequipar_escudo == true
      return if $desequipar_helmet== true
      return if $desequipar_acessorio == true
      return if $desequipar_capa == true
      return if $desequipar_bota == true
      return if $desequipar_amuleto == true
      return if $desequipar_luva == true
      self.index = 0
      return if item == nil
     end

      if in_area?([40*1, 16, 40, 45])
      return if $pegando_item_trade == true
      return if $pegando_item == true
      return if $pegando_item_loja == true
      return if $desequipar_arma == true
      return if $desequipar_armadura== true
      return if $desequipar_escudo == true
      return if $desequipar_helmet== true
      return if $desequipar_acessorio == true
      return if $desequipar_capa == true
      return if $desequipar_bota == true
      return if $desequipar_amuleto == true
      return if $desequipar_luva == true
      self.index = 1 if 1 != @data.size and 1 < @data.size
      return if item == nil
      end
     
      if in_area?([40*2, 16, 40, 45])
      return if $pegando_item_trade == true
      return if $pegando_item == true
      return if $pegando_item_loja == true
      return if $desequipar_arma == true
      return if $desequipar_armadura== true
      return if $desequipar_escudo == true
      return if $desequipar_helmet== true
      return if $desequipar_acessorio == true
      return if $desequipar_capa == true
      return if $desequipar_bota == true
      return if $desequipar_amuleto == true
      return if $desequipar_luva == true
      self.index = 2 if 2 != @data.size and 2 < @data.size
      return if item == nil
     end
     
      if in_area?([40*3-16, 16, 40, 45])
      return if $pegando_item_trade == true
      return if $pegando_item == true
      return if $pegando_item_loja == true
      return if $desequipar_arma == true
      return if $desequipar_armadura== true
      return if $desequipar_escudo == true
      return if $desequipar_helmet== true
      return if $desequipar_acessorio == true
      return if $desequipar_capa == true
      return if $desequipar_bota == true
      return if $desequipar_amuleto == true
      return if $desequipar_luva == true
      self.index = 3 if 3 != @data.size and 3 < @data.size
      return if item == nil
      end
     
      if in_area?([40*4-16, 16, 40, 45])
      return if $pegando_item_trade == true
      return if $pegando_item == true
      return if $pegando_item_loja == true
      return if $desequipar_arma == true
      return if $desequipar_armadura== true
      return if $desequipar_escudo == true
      return if $desequipar_helmet== true
      return if $desequipar_acessorio == true
      return if $desequipar_capa == true
      return if $desequipar_bota == true
      return if $desequipar_amuleto == true
      return if $desequipar_luva == true
      self.index = 4 if 4 != @data.size and 4 < @data.size
      return if item == nil
     end
     
      if in_area?([0, 45*1, 40, 45])
      return if $pegando_item_trade == true
      return if $pegando_item == true
      return if $pegando_item_loja == true
      return if $desequipar_arma == true
      return if $desequipar_armadura== true
      return if $desequipar_escudo == true
      return if $desequipar_helmet== true
      return if $desequipar_acessorio == true
      return if $desequipar_capa == true
      return if $desequipar_bota == true
      return if $desequipar_amuleto == true
      return if $desequipar_luva == true
      self.index = 5 if 5 != @data.size and 5 < @data.size
      return if item == nil
     end
     
      if in_area?([40*1, 45*1, 40, 45])
      return if $pegando_item_trade == true
      return if $pegando_item == true
      return if $pegando_item_loja == true
      return if $desequipar_arma == true
      return if $desequipar_armadura== true
      return if $desequipar_escudo == true
      return if $desequipar_helmet== true
      return if $desequipar_acessorio == true
      return if $desequipar_capa == true
      return if $desequipar_bota == true
      return if $desequipar_amuleto == true
      return if $desequipar_luva == true
      self.index = 6 if 6 != @data.size and 6 < @data.size
      return if item == nil
     end
     
      if in_area?([40*2, 45*1, 40, 45])
      return if $pegando_item_trade == true
      return if $pegando_item == true
      return if $pegando_item_loja == true
      return if $desequipar_arma == true
      return if $desequipar_armadura== true
      return if $desequipar_escudo == true
      return if $desequipar_helmet== true
      return if $desequipar_acessorio == true
      return if $desequipar_capa == true
      return if $desequipar_bota == true
      return if $desequipar_amuleto == true
      return if $desequipar_luva == true
      self.index = 7 if 7 != @data.size and 7 < @data.size
      return if item == nil
     end
     
      if in_area?([40*3-16, 45*1, 40, 45])
      return if $pegando_item_trade == true
      return if $pegando_item == true
      return if $pegando_item_loja == true
      return if $desequipar_arma == true
      return if $desequipar_armadura== true
      return if $desequipar_escudo == true
      return if $desequipar_helmet== true
      return if $desequipar_acessorio == true
      return if $desequipar_capa == true
      return if $desequipar_bota == true
      return if $desequipar_amuleto == true
      return if $desequipar_luva == true
      self.index = 8 if 8 != @data.size and 8 < @data.size
      return if item == nil
     end
     
      if in_area?([40*4-16, 45*1, 40, 45])
      return if $pegando_item_trade == true
      return if $pegando_item == true
      return if $pegando_item_loja == true
      return if $desequipar_arma == true
      return if $desequipar_armadura== true
      return if $desequipar_escudo == true
      return if $desequipar_helmet== true
      return if $desequipar_acessorio == true
      return if $desequipar_capa == true
      return if $desequipar_bota == true
      return if $desequipar_amuleto == true
      return if $desequipar_luva == true
      self.index = 9 if 9 != @data.size and 9 < @data.size
      return if item == nil
     end
     
      if in_area?([0, 45*2-16, 40, 45])
      return if $pegando_item_trade == true
      return if $pegando_item == true
      return if $pegando_item_loja == true
      return if $desequipar_arma == true
      return if $desequipar_armadura== true
      return if $desequipar_escudo == true
      return if $desequipar_helmet== true
      return if $desequipar_acessorio == true
      return if $desequipar_capa == true
      return if $desequipar_bota == true
      return if $desequipar_amuleto == true
      return if $desequipar_luva == true
      self.index = 10 if 10 != @data.size and 10 < @data.size
      return if item == nil
     end
     
      if in_area?([40*1, 45*2-16, 40, 45])
      return if $pegando_item_trade == true
      return if $pegando_item == true
      return if $pegando_item_loja == true
      return if $desequipar_arma == true
      return if $desequipar_armadura== true
      return if $desequipar_escudo == true
      return if $desequipar_helmet== true
      return if $desequipar_acessorio == true
      return if $desequipar_capa == true
      return if $desequipar_bota == true
      return if $desequipar_amuleto == true
      return if $desequipar_luva == true
      self.index = 11 if 11 != @data.size and 11 < @data.size
      return if item == nil
     end
     
      if in_area?([40*2-16, 45*2-16, 40, 45])
      return if $pegando_item_trade == true
      return if $pegando_item == true
      return if $pegando_item_loja == true
      return if $desequipar_arma == true
      return if $desequipar_armadura== true
      return if $desequipar_escudo == true
      return if $desequipar_helmet== true
      return if $desequipar_acessorio == true
      return if $desequipar_capa == true
      return if $desequipar_bota == true
      return if $desequipar_amuleto == true
      return if $desequipar_luva == true
      self.index = 12 if 12 != @data.size and 12 < @data.size
      return if item == nil
     end
     
      if in_area?([40*3-16, 45*2-16, 40, 45])
      return if $pegando_item_trade == true
      return if $pegando_item == true
      return if $pegando_item_loja == true
      return if $desequipar_arma == true
      return if $desequipar_armadura== true
      return if $desequipar_escudo == true
      return if $desequipar_helmet== true
      return if $desequipar_acessorio == true
      return if $desequipar_capa == true
      return if $desequipar_bota == true
      return if $desequipar_amuleto == true
      return if $desequipar_luva == true
      self.index = 13 if 13 != @data.size and 13 < @data.size
      return if item == nil
     end
     
      if in_area?([40*4-16, 45*2-16, 40, 45])
      return if $pegando_item_trade == true
      return if $pegando_item == true
      return if $pegando_item_loja == true
      return if $desequipar_arma == true
      return if $desequipar_armadura== true
      return if $desequipar_escudo == true
      return if $desequipar_helmet== true
      return if $desequipar_acessorio == true
      return if $desequipar_capa == true
      return if $desequipar_bota == true
      return if $desequipar_amuleto == true
      return if $desequipar_luva == true
      self.index = 14 if 14 != @data.size and 14 < @data.size
      return if item == nil
     end
     
      if in_area?([0, 45*3-16, 40, 45])
      return if $pegando_item_trade == true
      return if $pegando_item == true
      return if $pegando_item_loja == true
      return if $desequipar_arma == true
      return if $desequipar_armadura== true
      return if $desequipar_escudo == true
      return if $desequipar_helmet== true
      return if $desequipar_acessorio == true
      return if $desequipar_capa == true
      return if $desequipar_bota == true
      return if $desequipar_amuleto == true
      return if $desequipar_luva == true
      self.index = 15 if 15 != @data.size and 15 < @data.size
      return if item == nil
     end
     
     
      if in_area?([40*1, 45*3-16, 40, 45])
      return if $pegando_item_trade == true
      return if $pegando_item == true
      return if $pegando_item_loja == true
      return if $desequipar_arma == true
      return if $desequipar_armadura== true
      return if $desequipar_escudo == true
      return if $desequipar_helmet== true
      return if $desequipar_acessorio == true
      return if $desequipar_capa == true
      return if $desequipar_bota == true
      return if $desequipar_amuleto == true
      return if $desequipar_luva == true
      self.index = 16 if 16 != @data.size and 16 < @data.size
      return if item == nil
     end
     
      if in_area?([40*2-16, 45*3-16, 40, 45])
      return if $pegando_item_trade == true
      return if $pegando_item == true
      return if $pegando_item_loja == true
      return if $desequipar_arma == true
      return if $desequipar_armadura== true
      return if $desequipar_escudo == true
      return if $desequipar_helmet== true
      return if $desequipar_acessorio == true
      return if $desequipar_capa == true
      return if $desequipar_bota == true
      return if $desequipar_amuleto == true
      return if $desequipar_luva == true
      self.index = 17 if 17 != @data.size and 17 < @data.size
      return if item == nil
     end
     
      if in_area?([40*3-16, 45*3-16, 40, 45])
      return if $pegando_item_trade == true
      return if $pegando_item == true
      return if $pegando_item_loja == true
      return if $desequipar_arma == true
      return if $desequipar_armadura== true
      return if $desequipar_escudo == true
      return if $desequipar_helmet== true
      return if $desequipar_acessorio == true
      return if $desequipar_capa == true
      return if $desequipar_bota == true
      return if $desequipar_amuleto == true
      return if $desequipar_luva == true
      self.index = 18 if 18 != @data.size and 18 < @data.size
      return if item == nil
     end
     
      if in_area?([40*4-16, 45*3-16, 40, 45])
      return if $pegando_item_trade == true
      return if $pegando_item == true
      return if $pegando_item_loja == true
      return if $desequipar_arma == true
      return if $desequipar_armadura== true
      return if $desequipar_escudo == true
      return if $desequipar_helmet== true
      return if $desequipar_acessorio == true
      return if $desequipar_capa == true
      return if $desequipar_bota == true
      return if $desequipar_amuleto == true
      return if $desequipar_luva == true
      $memorizando = false #if 19 != @data.size and 19 < @data.size
      self.index = 19 if 19 != @data.size and 19 < @data.size
      return if item == nil
     end
     
    end 
     
     
      def click
        if Input.pressed?(Input::Mouse_Left) and in_area?
        return if $pegando_item_trade == true
        return if $pegando_item_loja == true
        return if $mouse_active == true
        return if $desequipar_arma == true
        return if $desequipar_armadura== true
        return if $desequipar_escudo == true
        return if $desequipar_helmet== true
        return if $desequipar_acessorio == true
        return if $desequipar_capa == true
        return if $desequipar_bota == true
        return if $desequipar_amuleto == true
        return if $desequipar_luva == true
        $pegando_item = true
        item = @data[index]
        return if item == nil 
        $mouse_iconfor = item.icon_name
        $game_temp.atualizar_mouse = true
      end
     
      if Input.pressed?(Input::Mouse_Right)
        if in_area?
         
      return if $mouse_active == true
      $mouse_active = true
      item = @data[index]
      if item.is_a?(RPG::Item)
      if $game_party.item_can_use?(item.id)
        target = $game_party.actors[0]
        used = target.item_effect(item)
        $game_system.se_play(item.menu_se)
        $game_player.animation_id = item.animation1_id
        if item.consumable
        $game_party.lose_item(item.id, 1)
        if item.common_event_id > 0
        $game_temp.common_event_id = item.common_event_id
        end
        refresh
        end
        end
      end
         
        else 
        $help_w.visible = false
        $help_w.active = false
        end
      end
     
    end

    def use_item_1(item_carregado)
      item = item_carregado#$data_items[1]
      if item.is_a?(RPG::Item)
      if $game_party.item_can_use?(item.id)
        target = $game_party.actors[0]
        used = target.item_effect(item)
        $game_system.se_play(item.menu_se)
        $game_player.animation_id = item.animation1_id
        if item.consumable
        $game_party.lose_item(item.id, 1)
        refresh
        end
        end
      end
    end

    def use_item_2(item_carregado2)
      item = item_carregado2#$data_items[1]
      if item.is_a?(RPG::Item)
      if $game_party.item_can_use?(item.id)
        target = $game_party.actors[0]
        used = target.item_effect(item)
        $game_system.se_play(item.menu_se)
        $game_player.animation_id = item.animation1_id
        if item.consumable
        $game_party.lose_item(item.id, 1)
        refresh
        end
        end
      end
    end

    def use_item_3(item_carregado3)
      item = item_carregado3#$data_items[1]
      if item.is_a?(RPG::Item)
      if $game_party.item_can_use?(item.id)
        target = $game_party.actors[0]
        used = target.item_effect(item)
        $game_system.se_play(item.menu_se)
        $game_player.animation_id = item.animation1_id
        if item.consumable
        $game_party.lose_item(item.id, 1)
        refresh
        end
        end
      end
    end

    def use_item_4(item_carregado4)
      item = item_carregado4#$data_items[1]
      if item.is_a?(RPG::Item)
      if $game_party.item_can_use?(item.id)
        target = $game_party.actors[0]
        used = target.item_effect(item)
        $game_system.se_play(item.menu_se)
        $game_player.animation_id = item.animation1_id
        if item.consumable
        $game_party.lose_item(item.id, 1)
        refresh
        end
        end
      end
    end


    def comprar_loja
      if $loja == true
    if $pegando_item == true
    if !Input.pressed?(Input::Mouse_Left) and $loja_w.in_area?
        $mouse_iconfor = "arrow"
        $game_temp.atualizar_mouse = true
        @item = $item_w.item
        if @item.is_a?(RPG::Item)
        return if @item.id == Item_Ouro::Item_Id.to_i
        end
        if @item == nil
          return
        end
        case @item
        when RPG::Item
          @number = $game_party.item_number(@item.id)
        when RPG::Weapon
          @number = $game_party.weapon_number(@item.id)
        when RPG::Armor
          @number = $game_party.armor_number(@item.id)
        end
        return if @number < $amount
        $game_party.gain_item(Item_Ouro::Item_Id.to_i,$amount * (@item.price/2))
        $game_party.lose_item(Item_Ouro::Item_Id.to_i,$amount * @item.price/2)
        $game_party.gain_gold($amount * (@item.price / 2))
        #$game_system.se_play($data_system.shop_se)
          case @item
          when RPG::Item
            $game_party.lose_item(@item.id, $amount)
          when RPG::Weapon
            $game_party.lose_weapon(@item.id, $amount)
          when RPG::Armor
            $game_party.lose_armor(@item.id, $amount)
          end
        $item_w.refresh
        $loja_w.refresh
        $janela_gold_w.refresh
        $item_w.active = false
        $pegando_item = false
    end
    end
    end
    end

     def voltar_mouse
      if !Input.pressed?(Input::Mouse_Left)
      $mouse_iconfor = "arrow"
      $game_temp.atualizar_mouse = true
      $pegando_item = false
      $pegando_item_loja = false
      $pegando_item_trade = false
      $desequipar_arma = false
      $desequipar_armadura = false
      $desequipar_escudo = false
      $desequipar_helmet = false
      $desequipar_acessorio = false
      $desequipar_capa = false
      $desequipar_bota = false
      $desequipar_amuleto = false
      $desequipar_luva = false
     end
     end
     
      def draw_item(index)
        item = @data[index]
        return if index > 19
        case item
        when RPG::Item
          number = $game_party.item_number(item.id)
        when RPG::Weapon
          number = $game_party.weapon_number(item.id)
        when RPG::Armor
          number = $game_party.armor_number(item.id)
        end
        x = index % @column_max * (width/@column_max - 6)
        y = index / @column_max * 32
        rect = Rect.new(x, y, self.width / @column_max - 32, 32)
        self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
        bitmap = RPG::Cache.icon(item.icon_name)
        if item.is_a?(RPG::Item)
        if item.id != Item_Ouro::Item_Id.to_i
          opacity = 255
          self.contents.font.color = normal_color
        else
          opacity = 128
          self.contents.font.color = Color.new(128,128,128)
        end
        else
        opacity = 255
        self.contents.font.color = normal_color
        end
        #opacity = self.contents.font.color == normal_color ? 255 : 128#255
        self.contents.blt(x, y + 2, bitmap, Rect.new(0, 0, 24, 24), opacity)
        if item.id == 33
       
        if number < 1000
        self.contents.draw_text(x - 6, y + 9, 34, 32, number.to_s, 2)
        elsif number > 10000
        self.contents.draw_text(x - 7, y + 9, 34, 32, number.to_s, 2)
        elsif number == 10000
        self.contents.draw_text(x - 7, y + 9, 34, 32, number.to_s, 2)
       
        elsif number > 100000
        self.contents.draw_text(x + 2, y + 9, 32, 32, number.to_s, 2)
        elsif number == 100000
        self.contents.draw_text(x + 2, y + 9, 32, 32, number.to_s, 2)
       
        else
        self.contents.draw_text(x - 4, y + 9, 34, 32, number.to_s, 2)
        end
       
       
        else
        self.contents.draw_text(x + 2, y + 9, 24, 32, number.to_s, 2)
        end
      end

    end

    Agora falta só mudar a posição do Gold_Window, então vá no script [SC] Net Rmxp Hud, linha 599, procure por @janela_gold_w.y = $equip_w.y + 300, em vez de + 300, bote + 314, prontinho, só isso :P.

    Eu não achei nem um Bug, se acharem um postem aí que tentarem arrumar, mas acho que não tem bug.

    Créditos: RD12
    Se for usar dê os créditos.

      Data/hora atual: Sab Ago 18, 2018 6:43 pm