Registrarse

[Duda] Script Foollowing Character V3

Estado
Cerrado para nuevas respuestas.
Hola, para mi proyecto necesito el Following Character, tengo el script de la V3 que saqué de un pack, pero no se como activarlo. Este es el script:

Código:
#==============================================================================
# ? Config Script For Your Game Here
#==============================================================================

Default_Following_Pokemon_Number = 0
Common_Event = 3
PFC_Variable = 26
Animation_Come_Out = 22
Animation_Come_In = 23
Emo_Happy = 24
Emo_Normal = 25
Emo_Hate = 26
Water_Pokemon_Can_Surf = true

#==============================================================================
#   ? Pokemon Following Character v3 By Help-14
#==============================================================================

class DependentEvents
  
  #----------------------------------------------------------------------------
  # -  change_following_pokemon
  # -  It will run when you press A button
  #----------------------------------------------------------------------------
  
  def change_following_pokemon
    if $game_variables[PFC_Variable]+1==$Trainer.party.length+1
      $game_variables[PFC_Variable]=0
    else
      $game_variables[PFC_Variable]+=1
    end
    if $game_variables[PFC_Variable]==6
      remove_sprite(true)
    else
      if $Trainer.party[$game_variables[PFC_Variable]].isShiny?
        shiny=true
      else
        shiny=false
      end
      change_sprite($Trainer.party[$game_variables[PFC_Variable]].species, shiny, true)
    end
  end
  
  #----------------------------------------------------------------------------
  # -  refresh_sprite
  # -  Change sprite without animation
  #----------------------------------------------------------------------------
  
  def refresh_sprite
    if $Trainer.party[$game_variables[PFC_Variable]].isShiny?
      shiny=true
    else
      shiny=false
    end
    change_sprite($Trainer.party[$game_variables[PFC_Variable]].species, shiny, false)
  end

  #----------------------------------------------------------------------------
  # - change_sprite(id, shiny, animation)
  # - Example, to change sprite to shiny lugia with animation:
  #     change_sprite(249, true, true)
  # - If just change sprite:
  #     change_sprite(249)
  #----------------------------------------------------------------------------

  def change_sprite(id, shiny=nil, animation=nil)
    events=$PokemonGlobal.dependentEvents
    for i in 0...events.length
      if events[i] && events[i][8]=="Dependent"
        if shiny==true
          events[i][6]=sprintf("%03ds",id)
          @realEvents[i].character_name=sprintf("%03ds",id)
        else
          events[i][6]=sprintf("%03d",id)
          @realEvents[i].character_name=sprintf("%03d",id)
        end
        if animation==true
          $scene.spriteset.addUserAnimation(Animation_Come_Out,@realEvents[i].x,@realEvents[i].y)
        end
      end
    end
  end
  
  #----------------------------------------------------------------------------
  # - remove_sprite(animation)
  # - Example, to remove sprite with animation:
  #     remove_sprite(true)
  # - If just remove sprite:
  #     remove_sprite
  #----------------------------------------------------------------------------
  
  def remove_sprite(animation=nil)
    events=$PokemonGlobal.dependentEvents
    for i in 0...events.length
      if events[i] && events[i][8]=="Dependent"
          events[i][6]=sprintf("nil")
          @realEvents[i].character_name=sprintf("nil")
        if animation==true
          $scene.spriteset.addUserAnimation(Animation_Come_In,@realEvents[i].x,@realEvents[i].y)
        end
      end
    end
  end
  
  #----------------------------------------------------------------------------
  # - check_surf(animation)
  # - If current Pokemon is a water Pokemon, it is still following.
  # - If current Pokemon is not a water Pokemon, remove sprite.
  # - Require Water_Pokemon_Can_Surf = true to enable
  #----------------------------------------------------------------------------
  
  def check_surf(animation=nil)
    if Water_Pokemon_Can_Surf == true
      if $Trainer.party[$game_variables[PFC_Variable]].type1!="WATER" and
                   $Trainer.party[$game_variables[PFC_Variable]].type2!="WATER"
        remove_sprite
      end
    else
      remove_sprite
    end
  end
  
  #----------------------------------------------------------------------------
  # -  talk_to_pokemon
  # -  It will run when you talk to Pokemon following
  #----------------------------------------------------------------------------
  
  def talk_to_pokemon
    events=$PokemonGlobal.dependentEvents
    for i in 0...events.length
      if events[i] && events[i][8]=="Dependent"
          pos_x=@realEvents[i].x
          pos_y=@realEvents[i].y
      end
    end
    pbPlayCry($Trainer.party[$game_variables[PFC_Variable]].species)
    if $game_variables[PFC_Variable]!=6
      if $Trainer.party[$game_variables[PFC_Variable]].happiness>0 &&
              $Trainer.party[$game_variables[PFC_Variable]].happiness<=50
        $scene.spriteset.addUserAnimation(Emo_Hate, pos_x, pos_y)
      elsif $Trainer.party[$game_variables[PFC_Variable]].happiness>50 &&
              $Trainer.party[$game_variables[PFC_Variable]].happiness<=150
        $scene.spriteset.addUserAnimation(Emo_Normal, pos_x, pos_y)
      else
        $scene.spriteset.addUserAnimation(Emo_Happy, pos_x, pos_y)
      end
    end
  end
  
end

  #----------------------------------------------------------------------------
  # -  Auto add Script to PokemonScreen, It'll change sprite when change Pokemon
  #----------------------------------------------------------------------------
  
  class PokemonScreen
    
    alias pbps pbPokemonScreen
    
    def pbPokemonScreen
      pbps
      $PokemonTemp.dependentEvents.refresh_sprite
    end
    
  end
  
  #----------------------------------------------------------------------------
  # -  Auto add Script to PokemonStorageScreen, It'll change sprite when use PC
  #----------------------------------------------------------------------------
  
  class PokemonStorageScreen
    
    alias pbs pbStore
    
    def pbStore(selected,heldpoke)
      pbs
      $PokemonTemp.dependentEvents.refresh_sprite
    end
    
  end

  #----------------------------------------------------------------------------
  # -  Auto add Script to PokemonEvolutionScene, It'll change sprite when evolution
  #----------------------------------------------------------------------------

  class PokemonEvolutionScene
    
    alias pbe pbEvolution
    
    def pbEvolution(cancancel=true)
      pbe
      $PokemonTemp.dependentEvents.refresh_sprite
    end
    
  end
  
  #----------------------------------------------------------------------------
  # -  Auto add Script to Kernel.pbSurf, It'll check curent Pokemon when surf
  #----------------------------------------------------------------------------  
  
  def Kernel.pbSurf
    if $game_player.pbHasDependentEvents?
      return false
    end
    if $DEBUG || $Trainer.badges[BADGEFORSURF]
      movefinder=Kernel.pbCheckMove(PBMoves::SURF)
      if $DEBUG || movefinder
        if Kernel.pbConfirmMessage(_INTL("The water is dyed a deep blue...  Would you like to surf?"))
          speciesname=!movefinder ? PBSpecies.getName(0) : movefinder.name
          Kernel.pbMessage(_INTL("{1} used Surf!",speciesname))
          pbHiddenMoveAnimation(movefinder)
          surfbgm=pbGetMetadata(0,MetadataSurfBGM)
          #Pokemon Following Character
          $PokemonTemp.dependentEvents.remove_sprite(true)
          if surfbgm
            pbCueBGM(surfbgm,0.5)
          end
          Kernel.pbCancelVehicles
          $PokemonGlobal.surfing=true
          $PokemonEncounters.clearStepCount
          Kernel.pbJumpToward
          Kernel.pbUpdateVehicle
          $game_player.check_event_trigger_here([1,2])
          return true
        end
      end
    end
    return false
  end
  
  #----------------------------------------------------------------------------
  # -  Auto add Script to pbEndSurf, It'll show sprite after surf
  #----------------------------------------------------------------------------  
  
  def pbEndSurf(xOffset,yOffset)
    return false if !$PokemonGlobal.surfing
    x=$game_player.x
    y=$game_player.y
    currentTag=$game_map.terrain_tag(x,y)
    facingTag=Kernel.pbFacingTerrainTag
    if pbIsWaterTag?(currentTag)&&!pbIsWaterTag?(facingTag)
      if Kernel.pbJumpToward
        Kernel.pbCancelVehicles
        $game_map.autoplayAsCue
        increase_steps
        result=$game_player.check_event_trigger_here([1,2])
        Kernel.pbOnStepTaken(result)
        #Pokemon Following Character
        refresh_sprite
      end
      return true
    end
    return false
  end


ya tengo el equipo Pokémnon (los 6 pokes) pero no me siguen. Alguna idea de como activar el Following Character?
 
Estado
Cerrado para nuevas respuestas.
Arriba