Pet system Global!!!!!

    Compartilhe
    avatar
    jiraya
    Administrador
    Administrador

    Mensagens : 1299
    Credibilidade : 54

    Pet system Global!!!!!

    Mensagem por jiraya em Sab Jan 29, 2011 12:10 pm

    [Autor: guis2la ]
    Pet System Global
    Olá gente eu andei vendo muitos pedidos de pet global recebi ate algumas PM`s!
    Então resolvi ver ce a alguma forma só tem um problema terá que haverá pelo menos um evento por mapa então.
    Isso pode ser cansativo e cada pet criado você terá que criar uma condição.
    Voltando ao tutorial.
    Índice
    Difilcudade:Medio
    Downloads
    Script Switch (Globais)
    Sistema pet
    Opções especiais
    [Downloads][Você precisa estar registrado e conectado para ver esta imagem.][Você precisa estar registrado e conectado para ver esta imagem.]
    Script Switch Global:
    [Switch Global]Todas as Swichts Que Tenham sua ID(ou valor como Preferir) Acima de 1000 serão Netglobais.
    Va no Script [NET]network e axe isto:
    Código:
    when /<10>(.*)<\/10>/
          return true if $1.match(/File|system|`/)
          eval($1)
          $game_map.need_refresh = true
          return true
    E troque pelo seguinte
    Código:
    when /<10>(.*)<\/10>/
          eval($1)
          $game_map.need_refresh = true
          $scene.update
          $game_map.update
          #if $1.match(/File|system|/)
          $game_map.need_refresh = true
          return true
    Agora crie um Script acima do main e coloque isto:
    OBS:nomeie de: Switch Global 1.0
    Código:
    #==============================================================================
    # ¦ Interpreter
    #------------------------------------------------------------------------------
    #  ???????????????????????????? Game_System ??
    # ?? Game_Event ??????????????
    #==============================================================================
    class Interpreter
     
      #--------------------------------------------------------------------------
      # ? Switches
      #--------------------------------------------------------------------------
      def command_121
        # ???????????
        for i in @parameters[0] .. @parameters[1]
          # ???????
          $game_switches[i] = (@parameters[2] == 0)
          Network::Main.socket.send("<10>$game_switches[#{i}] = [email=#{@parameters[2]#{@parameters[2[/email]] == 0}</10>\n") if i > User_Edit::STARTNETSWITCH
        end
        # ??????????
        $game_map.need_refresh = true
        # ??
        return true
      end
     
      #--------------------------------------------------------------------------
      # ? Variables
      #--------------------------------------------------------------------------
      def command_122
        # ?????
        value = 0
        # ????????
        case @parameters[3]
        when 0  # ??
          value = @parameters[4]
        when 1  # ??
          value = $game_variables[@parameters[4]]
        when 2  # ??
          value = @parameters[4] + rand(@parameters[5] - @parameters[4] + 1)
        when 3  # ????
          value = $game_party.item_number(@parameters[4])
        when 4  # ????
          actor = $game_actors[@parameters[4]]
          if actor != nil
            case @parameters[5]
            when 0  # ???
              value = actor.level
            when 1  # EXP
              value = actor.exp
            when 2  # HP
              value = actor.hp
            when 3  # SP
              value = actor.sp
            when 4  # MaxHP
              value = actor.maxhp
            when 5  # MaxSP
              value = actor.maxsp
            when 6  # ??
              value = actor.str
            when 7  # ???
              value = actor.dex
            when 8  # ???
              value = actor.agi
            when 9  # ??
              value = actor.int
            when 10  # ???
              value = actor.atk
            when 11  # ????
              value = actor.pdef
            when 12  # ????
              value = actor.mdef
            when 13  # ????
              value = actor.eva
            end
          end
        when 5  # ????
          enemy = $game_troop.enemies[@parameters[4]]
          if enemy != nil
            case @parameters[5]
            when 0  # HP
              value = enemy.hp
            when 1  # SP
              value = enemy.sp
            when 2  # MaxHP
              value = enemy.maxhp
            when 3  # MaxSP
              value = enemy.maxsp
            when 4  # ??
              value = enemy.str
            when 5  # ???
              value = enemy.dex
            when 6  # ???
              value = enemy.agi
            when 7  # ??
              value = enemy.int
            when 8  # ???
              value = enemy.atk
            when 9  # ????
              value = enemy.pdef
            when 10  # ????
              value = enemy.mdef
            when 11  # ????
              value = enemy.eva
            end
          end
        when 6  # ??????
          character = get_character(@parameters[4])
          if character != nil
            case @parameters[5]
            when 0  # X ??
              value = character.x
            when 1  # Y ??
              value = character.y
            when 2  # ??
              value = character.direction
            when 3  # ?? X ??
              value = character.screen_x
            when 4  # ?? Y ??
              value = character.screen_y
            when 5  # ????
              value = character.terrain_tag
            end
          end
        when 7  # ???
          case @parameters[4]
          when 0  # ??? ID
            value = $game_map.map_id
          when 1  # ??????
            value = $game_party.actors.size
          when 2  # ????
            value = $game_party.gold
          when 3  # ??
            value = $game_party.steps
          when 4  # ?????
            value = Graphics.frame_count / Graphics.frame_rate
          when 5  # ????
            value = $game_system.timer / Graphics.frame_rate
          when 6  # ?????
            value = $game_system.save_count
          end
        end
        # ???????????
        for i in @parameters[0] .. @parameters[1]
          # ?????
          case @parameters[2]
          when 0  # ??
            $game_variables[i] = value
          when 1  # ??
            $game_variables[i] += value
          when 2  # ??
            $game_variables[i] -= value
          when 3  # ??
            $game_variables[i] *= value
          when 4  # ??
            if value != 0
              $game_variables[i] /= value
            end
          when 5  # ??
            if value != 0
              $game_variables[i] %= value
            end
          end
          # ??????
          if $game_variables[i] > 99999999
            $game_variables[i] = 99999999
          end
          # ??????
          if $game_variables[i] < -99999999
            $game_variables[i] = -99999999
          end
          Network::Main.send("<10>$game_variables[#{i}]  = #{$game_variables[i]}</10>\n") if i > User_Edit::STARTNETVAR
        end
        # ??????????
        $game_map.need_refresh = true
        # ??
        return true
      end 
     
      #--------------------------------------------------------------------------
      # ? Self-Switches
      #-------------------------------------------------------------------------- 
      def command_123
        # ???? ID ??????
        if @event_id > 0
          # ?????????????
          key = [$game_map.map_id, @event_id, @parameters[0]]
          # ??????????
          $game_self_switches[key] = (@parameters[1] == 0)
        end
        # ??????????
        $game_map.need_refresh = true
        # ??
        return true
      end
     
    end
    #==============================================================================
    # ¦ Interpreter
    #------------------------------------------------------------------------------
    #  ???????????????????????????? Game_System ??
    # ?? Game_Event ??????????????
    #==============================================================================
    class Interpreter
     
      #--------------------------------------------------------------------------
      # ? Switches
      #--------------------------------------------------------------------------
      def command_121
        # ???????????
        for i in @parameters[0] .. @parameters[1]
          # ???????
          $game_switches[i] = (@parameters[2] == 0)
          Network::Main.socket.send("<10>$game_switches[#{i}] = [email=#{@parameters[2]#{@parameters[2[/email]] == 0}</10>\n") if i > User_Edit::STARTNETSWITCH
        end
        # ??????????
        $game_map.need_refresh = true
        # ??
        return true
      end
     
      #--------------------------------------------------------------------------
      # ? Variables
      #--------------------------------------------------------------------------
      def command_122
        # ?????
        value = 0
        # ????????
        case @parameters[3]
        when 0  # ??
          value = @parameters[4]
        when 1  # ??
          value = $game_variables[@parameters[4]]
        when 2  # ??
          value = @parameters[4] + rand(@parameters[5] - @parameters[4] + 1)
        when 3  # ????
          value = $game_party.item_number(@parameters[4])
        when 4  # ????
          actor = $game_actors[@parameters[4]]
          if actor != nil
            case @parameters[5]
            when 0  # ???
              value = actor.level
            when 1  # EXP
              value = actor.exp
            when 2  # HP
              value = actor.hp
            when 3  # SP
              value = actor.sp
            when 4  # MaxHP
              value = actor.maxhp
            when 5  # MaxSP
              value = actor.maxsp
            when 6  # ??
              value = actor.str
            when 7  # ???
              value = actor.dex
            when 8  # ???
              value = actor.agi
            when 9  # ??
              value = actor.int
            when 10  # ???
              value = actor.atk
            when 11  # ????
              value = actor.pdef
            when 12  # ????
              value = actor.mdef
            when 13  # ????
              value = actor.eva
            end
          end
        when 5  # ????
          enemy = $game_troop.enemies[@parameters[4]]
          if enemy != nil
            case @parameters[5]
            when 0  # HP
              value = enemy.hp
            when 1  # SP
              value = enemy.sp
            when 2  # MaxHP
              value = enemy.maxhp
            when 3  # MaxSP
              value = enemy.maxsp
            when 4  # ??
              value = enemy.str
            when 5  # ???
              value = enemy.dex
            when 6  # ???
              value = enemy.agi
            when 7  # ??
              value = enemy.int
            when 8  # ???
              value = enemy.atk
            when 9  # ????
              value = enemy.pdef
            when 10  # ????
              value = enemy.mdef
            when 11  # ????
              value = enemy.eva
            end
          end
        when 6  # ??????
          character = get_character(@parameters[4])
          if character != nil
            case @parameters[5]
            when 0  # X ??
              value = character.x
            when 1  # Y ??
              value = character.y
            when 2  # ??
              value = character.direction
            when 3  # ?? X ??
              value = character.screen_x
            when 4  # ?? Y ??
              value = character.screen_y
            when 5  # ????
              value = character.terrain_tag
            end
          end
        when 7  # ???
          case @parameters[4]
          when 0  # ??? ID
            value = $game_map.map_id
          when 1  # ??????
            value = $game_party.actors.size
          when 2  # ????
            value = $game_party.gold
          when 3  # ??
            value = $game_party.steps
          when 4  # ?????
            value = Graphics.frame_count / Graphics.frame_rate
          when 5  # ????
            value = $game_system.timer / Graphics.frame_rate
          when 6  # ?????
            value = $game_system.save_count
          end
        end
        # ???????????
        for i in @parameters[0] .. @parameters[1]
          # ?????
          case @parameters[2]
          when 0  # ??
            $game_variables[i] = value
          when 1  # ??
            $game_variables[i] += value
          when 2  # ??
            $game_variables[i] -= value
          when 3  # ??
            $game_variables[i] *= value
          when 4  # ??
            if value != 0
              $game_variables[i] /= value
            end
          when 5  # ??
            if value != 0
              $game_variables[i] %= value
            end
          end
          # ??????
          if $game_variables[i] > 99999999
            $game_variables[i] = 99999999
          end
          # ??????
          if $game_variables[i] < -99999999
            $game_variables[i] = -99999999
          end
          Network::Main.send("<10>$game_variables[#{i}]  = #{$game_variables[i]}</10>\n") if i > User_Edit::STARTNETVAR
        end
        # ??????????
        $game_map.need_refresh = true
        # ??
        return true
      end 
     
      #--------------------------------------------------------------------------
      # ? Self-Switches
      #-------------------------------------------------------------------------- 
      def command_123
        # ???? ID ??????
        if @event_id > 0
          # ?????????????
          key = [$game_map.map_id, @event_id, @parameters[0]]
          # ??????????
          $game_self_switches[key] = (@parameters[1] == 0)
        end
        # ??????????
        $game_map.need_refresh = true
        # ??
        return true
      end
    end
    Sistema pet:
    Simples a unica difereca que você ira usar uma SWITCH GLOBAL então quando você ativar o pet todos os verão então é bem simples crie um NPC os pets so poderão ser acionados ao falar com um NPC famos dizer que ele incuba o seu ovo (XD) 1º condição caso o tão personagem tem ovo de esporo então o NPC ira ligar uma Switch acima do 1000 que seria global então ao lado dese NPC tera um evento explo: um esporo progamado da seguinte forma Switch:1001 Tipo: Seguir Heroi , Vel.:Rapido e Freq.:Muito Alta então quando ativar o Pet todos verão caso esteja confuso siga estas imagens.
    [Você precisa estar registrado e conectado para ver esta imagem.]
    [Você precisa estar registrado e conectado para ver esta imagem.]
    [Você precisa estar registrado e conectado para ver esta imagem.]
    [Você precisa estar registrado e conectado para ver esta imagem.]
    [Você precisa estar registrado e conectado para ver esta imagem.]
    Opções especiais:
    [Você precisa estar registrado e conectado para ver esta imagem.]
    Opções especiais poden ser encontrada na demo Opções especiais as Opções especiais são como Fome Sede para o pet fugir ou morrer estão em um projeto off-line e as Switch não podem ser global pois ce um player alimentou seu pet isso Dara o efeito de que todos os outros jogadores tivessem alimentado seus pets
    OBS:Esta ocorendo um erro quando uma Switch Global é ligado mais ela chega a ser liga o jogo fexa e ao entra esta normal como não sou scripter não sei Desculpe mais o resto esta 100% caso um scripter arrumar eu agradeço.

      Data/hora atual: Seg Mar 27, 2017 8:21 pm