Suporte ao desenvolvimento de jogos!


    Script de Fome - Com Huds

    Compartilhe
    avatar
    LordSparda
    Novato
    Novato

    Mensagens : 1
    Créditos : 0

    Re: Script de Fome - Com Huds

    Mensagem por LordSparda em Dom Nov 23, 2014 1:06 am

    Não tem como tirar o nome de cima da barra de fome e por o nome Fome no lugar do nome do Heroi?? Isso ia me ajudar bastante Wink
    avatar
    Zero
    Semi-Experiente
    Semi-Experiente

    Mensagens : 111
    Créditos : 13

    Re: Script de Fome - Com Huds

    Mensagem por Zero em Dom Nov 23, 2014 9:30 am

    @LordSparda escreveu:Não tem como tirar o nome de cima da barra de fome e por o nome Fome no lugar do nome do Heroi?? Isso ia me ajudar bastante Wink
    Bom não só profissional em rgss3 mais com base no que eu sei creio que isso posa te ajudar

    Código:
    #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
    #|Autor: RD12|                Script de Fome                          07/06/12
    #       
    #        Acesse:  www.aldeiarpgbr.com  Para mais scripts meus
    #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
    # A fome vai de 0 a 100, quanto maior o valor mais com fome o membro estará
    # Se a fome chegar no 100 o membro irá fifcar com hp=0 (morre)
    #
    # Para um item diminuir a fome bote em sua Nota: -fome valor
    # E para um item aumentar a fomt, bote na nota: +fome valor

    module Fome
      #Tempo em segundos que irá aumentar a fome
      Segundos = 30
      #Valor que irá aumentar de fome quando o tempo acima chegar
      Valor = 5 # A Fome vai até 100, aí morre
      #Modifique a posição das Huds aqui
      HUDs_x = 1
      HUDs_y = 190
     
      Texto = "Fome"
    end

    class Hud_Fome < Sprite
      def initialize
        super
        self.bitmap = bitmap = Bitmap.new(100,300)
        self.bitmap.font.size = 14
        self.bitmap.font.name = "Segoe UI"
        self.x = Fome::HUDs_x
        self.y = Fome::HUDs_y
        refresh
      end
     
      def update
        super
        refresh
      end
     
      def refresh
        self.bitmap.clear
      if $game_party.members.size >= 1
        #---------------------------------------------------------------------------
        #Hud de Fome do 1° Membro - .members[0]
        #---------------------------------------------------------------------------
        base = Cache.picture("Fome_Base")
        rect = Rect.new(0,0,base.width,base.height)
        self.bitmap.blt(10,21,base,rect)
        self.bitmap.draw_text(10, 0, 100, 32, Fome::Texto, 0)
          @actor = $game_party.members[0]
        if @actor.fome >= 100
          @actor.hp = 0
          hud_name = "Fome_100"
        else
          hud_name = "Fome_Hud"
        end
        base = Cache.picture(hud_name)
        rect = Rect.new(0,0,base.width * @actor.fome / 100,base.height)
        self.bitmap.blt(10,21,base,rect)
     
      end
      if $game_party.members.size >= 2
        #---------------------------------------------------------------------------
        #Hud de Fome do 2° Membro - .members[0]
        #---------------------------------------------------------------------------
        base = Cache.picture("Fome_Base")
        rect = Rect.new(0,0,base.width,base.height)
        self.bitmap.blt(10,45,base,rect)
        self.bitmap.draw_text(10, 24, 100, 32, Fome::Texto, 0)
          @actor = $game_party.members[1]
        if @actor.fome >= 100
          @actor.hp = 0
          hud_name = "Fome_100"
        else
          hud_name = "Fome_Hud"
        end
        base = Cache.picture(hud_name)
        rect = Rect.new(0,0,base.width * @actor.fome / 100,base.height)
        self.bitmap.blt(10,45,base,rect)
      end
      if $game_party.members.size >= 3
        #---------------------------------------------------------------------------
        #Hud de Fome do 3° Membro - .members[0]
        #---------------------------------------------------------------------------
        base = Cache.picture("Fome_Base")
        rect = Rect.new(0,0,base.width,base.height)
        self.bitmap.blt(10,45+24,base,rect)
        self.bitmap.draw_text(10, 24*2, 100, 32, Fome::Texto, 0)
          @actor = $game_party.members[2]
        if @actor.fome >= 100
          @actor.hp = 0
          hud_name = "Fome_100"
        else
          hud_name = "Fome_Hud"
        end
        base = Cache.picture(hud_name)
        rect = Rect.new(0,0,base.width * @actor.fome / 100,base.height)
        self.bitmap.blt(10,45+24,base,rect)
      end
      if $game_party.members.size >= 4
        #---------------------------------------------------------------------------
        #Hud de Fome do 4° Membro - .members[0]
        #---------------------------------------------------------------------------
        base = Cache.picture("Fome_Base")
        rect = Rect.new(0,0,base.width,base.height)
        self.bitmap.blt(10,45+(24*2),base,rect)
        self.bitmap.draw_text(10, 24*3, 100, 32, Fome::Texto, 0)
          @actor = $game_party.members[3]
        if @actor.fome >= 100
          @actor.hp = 0
          hud_name = "Fome_100"
        else
          hud_name = "Fome_Hud"
        end
        base = Cache.picture(hud_name)
        rect = Rect.new(0,0,base.width * @actor.fome / 100,base.height)
        self.bitmap.blt(10,45+(24*2),base,rect)
      end
      if $game_party.members.size >= 5
        #---------------------------------------------------------------------------
        #Hud de Fome do 5° Membro - .members[0]
        #---------------------------------------------------------------------------
        base = Cache.picture("Fome_Base")
        rect = Rect.new(0,0,base.width,base.height)
        self.bitmap.blt(10,45+(24*3),base,rect)
        self.bitmap.draw_text(10, 24*4, 100, 32, Fome::Texto, 0)
          @actor = $game_party.members[4]
        if @actor.fome >= 100
          @actor.hp = 0
          hud_name = "Fome_100"
        else
          hud_name = "Fome_Hud"
        end
        base = Cache.picture(hud_name)
        rect = Rect.new(0,0,base.width * @actor.fome / 100,base.height)
        self.bitmap.blt(10,45+(24*3),base,rect)
      end
      if $game_party.members.size >= 6
        #---------------------------------------------------------------------------
        #Hud de Fome do 6° Membro - .members[0]
        #---------------------------------------------------------------------------
        base = Cache.picture("Fome_Base")
        rect = Rect.new(0,0,base.width,base.height)
        self.bitmap.blt(10,45+(24*4),base,rect)
        self.bitmap.draw_text(10, 24*5, 100, 32, Fome::Texto, 0)
          @actor = $game_party.members[5]
        if @actor.fome >= 100
          @actor.hp = 0
          hud_name = "Fome_100"
        else
          hud_name = "Fome_Hud"
        end
        base = Cache.picture(hud_name)
        rect = Rect.new(0,0,base.width * @actor.fome / 100,base.height)
        self.bitmap.blt(10,45+(24*4),base,rect)
      end
      if $game_party.members.size >= 7
        #---------------------------------------------------------------------------
        #Hud de Fome do 7° Membro - .members[0]
        #---------------------------------------------------------------------------
        base = Cache.picture("Fome_Base")
        rect = Rect.new(0,0,base.width,base.height)
        self.bitmap.blt(10,45+(24*5),base,rect)
        self.bitmap.draw_text(10, 24*6, 100, 32, Fome::Texto, 0)
          @actor = $game_party.members[6]
        if @actor.fome >= 100
          @actor.hp = 0
          hud_name = "Fome_100"
        else
          hud_name = "Fome_Hud"
        end
        base = Cache.picture(hud_name)
        rect = Rect.new(0,0,base.width * @actor.fome / 100,base.height)
        self.bitmap.blt(10,45+(24*5),base,rect)
      end
      if $game_party.members.size >= 8
        #---------------------------------------------------------------------------
        #Hud de Fome do 8° Membro - .members[0]
        #---------------------------------------------------------------------------
        base = Cache.picture("Fome_Base")
        rect = Rect.new(0,0,base.width,base.height)
        self.bitmap.blt(10,45+(24*6),base,rect)
        self.bitmap.draw_text(10, 24*7, 100, 32, Fome::Texto, 0)
          @actor = $game_party.members[7]
        if @actor.fome >= 100
          @actor.hp = 0
          hud_name = "Fome_100"
        else
          hud_name = "Fome_Hud"
        end
        base = Cache.picture(hud_name)
        rect = Rect.new(0,0,base.width * @actor.fome / 100,base.height)
        self.bitmap.blt(10,45+(24*6),base,rect)
      end
     end
    end

    #Bota a HUD no mapa e atualiza ela de acordo com o tempo configurado
    class Scene_Map
      alias rd12_main main
      def main
        $Fome = Hud_Fome.new
        @tocomfome = 0
        rd12_main
        $Fome.dispose
      end
      alias rd12_update update
      def update
        if Graphics.frame_count % 80 == 0
          @tocomfome += 1
        end
        if @tocomfome == Fome::Segundos
        for i in 0..$game_party.members.size-1
          $game_party.members[i].fome = (Fome::Valor)
        end
        @tocomfome = 0
        end
        rd12_update
      end
    end

    # Adiciona o $game_party.members[x].fome
    # Pra adicionar mais fome: $game_party.members[x].fome = quantidade
    # Pra remover fome: $game_party.members[x].fome = -quantidade

    class Game_Actor < Game_Battler
      alias rd12_initialize initialize
      def initialize(actor_id)
        @fome = 0
        rd12_initialize(actor_id)
      end
     
      def fome=(arg)
      @fome = 0 if @fome == nil
      @fome += arg
      $Fome.refresh
      end
     
      def fome
      @fome
      end
     
    end
    #Modifica o método para ganhar ou perder Fome
    class Scene_Item < Scene_ItemBase
      def use_item_to_actors
        item_target_actors.each do |target|
          arg = item.note.split
          if arg[0] == "-fome"
            target.fome = -arg[1].to_i
            #Mostra mensagem com a fome atual
            msgbox("Fome atual: #{target.fome}/100")
          end
          if arg[0] == "+fome"
            target.fome = arg[1].to_i
            #Mostra mensagem com a fome atual
            msgbox("Fome atual: #{target.fome}/100")
          end
          item.repeats.times { target.item_apply(user, item) }
        end
      end
    end

    Espero que ajude em seu projeto


    _________________
    Consultor de Segurança
    Full Stack Developer

    Amante de Software Livre!


    avatar
    Equinho
    Iniciante
    Iniciante

    Mensagens : 38
    Créditos : 5

    Re: Script de Fome - Com Huds

    Mensagem por Equinho em Sex Dez 12, 2014 9:20 pm

    Cara Eu To Com Seu Script Mas Assim Man =( Quando eu Uso Por Exemplo o Item "Pão" e Deixo em Notas -fome 7 (Pois no Script Modifiquei pra +7 Fome de 30 em 30s so pra teste) eu uso ele e a barra de fome ela não diminui  Sad Sad Me Ajuda Mano  Neutral Neutral Pois Gostei Muito do Estilo do Script mas como eu nao sei oque deu ele sera inutil =/ e eu nao quero joga-lo fora sem te perguntar pra ver se tu sabe resolver!


    _________________



     
    avatar
    RD12
    Lenda
    Lenda

    Medalhas :
    Mensagens : 1965
    Créditos : 743

    Re: Script de Fome - Com Huds

    Mensagem por RD12 em Seg Dez 15, 2014 11:55 am

    Equinho, outros itens deram certo? Veja a configuração do item, se ele está "consumível", algo assim. Qualquer coisa retorne.
    avatar
    Equinho
    Iniciante
    Iniciante

    Mensagens : 38
    Créditos : 5

    Re: Script de Fome - Com Huds

    Mensagem por Equinho em Ter Dez 16, 2014 12:51 pm

    Ja Resolvi o Erro por Mais Estranho que ele é '-'

    É que eu nao estava usando o menu do jogo eu estava usando outro menu o Menu cheio de opçoes e tal mostrando varias coisas dai quando eu tirei o script desse menu o sistema de fome pegou normal '-' Mas tive que sacrificar o menu lá! (Não Me Peça o nome do menu pois eu ja esqueci rsr) mas obrigado pela atenção Successful


    _________________



     

    -TheMaker-
    Novato
    Novato

    Mensagens : 1
    Créditos : 0

    Re: Script de Fome - Com Huds

    Mensagem por -TheMaker- em Sex Jul 10, 2015 10:18 am

    Muito bom! Porém, não consigo fazer com que o personagem coma. Eu coloquei o "-fome" e o "+fome" e o número logo em seguida, mas quando eu executo o jogo, não dá!

    Conteúdo patrocinado

    Re: Script de Fome - Com Huds

    Mensagem por Conteúdo patrocinado


      Data/hora atual: Seg Nov 19, 2018 12:39 pm