Registrarse

[RPG - Otros] Cambiar la animación de la hierba alta en un TileSet.

Estado
Cerrado para nuevas respuestas.

AdrianDeBolsillo

Profesional de WaH
Buenas noches, mi duda es la siguiente, estoy haciendo un cementerio en mi juego y quiero que aparezcan Pokémon salvajes sin la necesidad de poner hierba alta, he cambiado los tags del terreno a hierba alta, el caso es que mientras me muevo se produce la animación de caminar sobre hierba alta, alguna idea para neutralizar esta animación en este TileSet o hacer que aparezcan los Pokémon salvajes sin poner el Tag en hierba alta?

Gracias.:)
 

kurugane

Tan antiguo como las Rocas.
Bueno en la base de datos de RPG maker, se encuentra la animacion, en animaciones de batalla, puedes borrar la animacion simplemente, o cambiar a terreno de arena/cueva, donde no se ve la animacion de la hierba alta pero si aparecen pokemon :)
 

Jessie

What goes around, comes around
Buenas @pokeadry

Podrías hacer un nuevo tipo de encuentro el cual solo ocurra en un nuevo terrain tag, si quieres puedes usar este TUTORIAL o cualquier otro que te explique como agregar un nuevo tipo de encuentro y un nuevo tipo de terrain.

Pero si solo quieres eliminar la animación para 1 mapa, podrías editar el condicional para esa animación, primero busca lo siguiente dentro la sección PField_Field de la lista del cabezal de scripts.

Código:
# Show grass rustle animation, and auto-move the player over waterfalls and ice
Events.onStepTakenFieldMovement+=proc {|sender,e|
  event = e[0] # Get the event affected by field movement
  if $scene.is_a?(Scene_Map)
    currentTag = pbGetTerrainTag(event)
    if PBTerrain.isJustGrass?(pbGetTerrainTag(event,true))  # Won't show if under bridge
      $scene.spriteset.addUserAnimation(GRASS_ANIMATION_ID,event.x,event.y,true,1)
    elsif event==$game_player
      if currentTag==PBTerrain::WaterfallCrest
        # Descend waterfall, but only if this event is the player
        Kernel.pbDescendWaterfall(event)
      elsif PBTerrain.isIce?(currentTag) && !$PokemonGlobal.sliding
        Kernel.pbSlideOnIce(event)
      end
    end
  end
}

Y modificas la parte del grass animation con algo así :

Código:
# Show grass rustle animation, and auto-move the player over waterfalls and ice
NUMEROMAPACEMENTERIO=69
Events.onStepTakenFieldMovement+=proc {|sender,e|
  event = e[0] # Get the event affected by field movement
  if $scene.is_a?(Scene_Map)
    currentTag = pbGetTerrainTag(event)
    if PBTerrain.isJustGrass?(pbGetTerrainTag(event,true))  && $game_map.map_id!=NUMEROMAPACEMENTERIO# Won't show if under bridge
      $scene.spriteset.addUserAnimation(GRASS_ANIMATION_ID,event.x,event.y,true,1)
    elsif event==$game_player
      if currentTag==PBTerrain::WaterfallCrest
        # Descend waterfall, but only if this event is the player
        Kernel.pbDescendWaterfall(event)
      elsif PBTerrain.isIce?(currentTag) && !$PokemonGlobal.sliding
        Kernel.pbSlideOnIce(event)
      end
    end
  end
}

Ahora te agregué la constante NUMEROMAPACEMENTERIO esta va a ser igual al número del mapa del cementerio en el cual la animación de la hierba no se verá, por ejemplo NUMEROMAPACEMENTERIO=69 esto quiere decir que el mapa número 69 no tendrá esa animación.

Espero que alguna de estas formas te sean útiles y logres lo que quieres.
Saludos.
 
Estado
Cerrado para nuevas respuestas.
Arriba