Registrarse

Problema con Nuevo tipo de Encuentro

Estado
Cerrado para nuevas respuestas.

Diego Mertens

Dartrix Joven
¡Hola! He intentado implementar un nuevo tipo de encuentro, que sólo se de en otro "Terrain Tag", diferente al de "Land", osea, un encuentro que se active en un "Pasto Oscuro", pero simplemente me salen los Pokémon del pasto normal, y ya tengo configurado desde el tile con el número 17 (el del terrain tag)
Código:
  PastoOscuro  = 13
Código:
  Names=[
     "Land",
     "Cave",
     "Water",
     "RockSmash",
     "OldRod",
     "GoodRod",
     "SuperRod",
     "HeadbuttLow",
     "HeadbuttHigh",
     "LandMorning",
     "LandDay",
     "LandNight",
     "BugContest",
     "PastoOscuro"
  ]
Código:
  EnctypeChances=[
     [20,20,10,10,10,10,5,5,4,4,1,1],
     [20,20,10,10,10,10,5,5,4,4,1,1],
     [60,30,5,4,1],
     [60,30,5,4,1],
     [70,30],
     [60,20,20],
     [40,40,15,4,1],
     [30,25,20,10,5,5,4,1],
     [30,25,20,10,5,5,4,1],
     [20,20,10,10,10,10,5,5,4,4,1,1],
     [20,20,10,10,10,10,5,5,4,4,1,1],
     [20,20,10,10,10,10,5,5,4,4,1,1],
     [20,20,10,10,10,10,5,5,4,4,1,1],
     [50,20,10,10,5,4,1],
  ]
  EnctypeDensities=[25,10,10,0,0,0,0,0,0,25,25,25,25,25]
  EnctypeCompileDens=[1,2,3,0,0,0,0,0,0,1,1,1,1,1]
end
Código:
  def isGrass?
    return false if  [MENTION=32434]Den[/MENTION]sity==nil
    return (@enctypes[EncounterTypes::Land] ||
            @enctypes[EncounterTypes::LandMorning] ||
            @enctypes[EncounterTypes::LandDay] ||
            @enctypes[EncounterTypes::LandNight] ||
            @enctypes[EncounterTypes::PastoOscuro] ||
            @enctypes[EncounterTypes::BugContest]) ? true : false
  end
Código:
  def pbEncounterType
    if $PokemonGlobal && $PokemonGlobal.surfing
      return EncounterTypes::Water
    elsif self.isCave?
      return EncounterTypes::Cave
    elsif self.isGrass?
      time=pbGetTimeNow
      enctype=EncounterTypes::Land
      enctype=EncounterTypes::PastoOscuro if self.hasEncounter?(EncounterTypes::PastoOscuro) && pbGetTerrainTag($game_player)==PBTerrain::DarkGrass
      enctype=EncounterTypes::LandNight if self.hasEncounter?(EncounterTypes::LandNight) && PBDayNight.isNight?(time)
      enctype=EncounterTypes::LandDay if self.hasEncounter?(EncounterTypes::LandDay) && PBDayNight.isDay?(time)
      enctype=EncounterTypes::LandMorning if self.hasEncounter?(EncounterTypes::LandMorning) && PBDayNight.isMorning?(time)
      if pbInBugContest? && self.hasEncounter?(EncounterTypes::BugContest)
        enctype=EncounterTypes::BugContest
      end
      return enctype
    end
    return -1
  end
He cambiado todas esas partes del script "PField_Encounters" y me salen los Pokémon normales, y eso que también definí el encuentro, osea, que definí los Pokémon que pueden salir por este método, y estos son únicos de este tipo de encuentro, para no confundirlos con otros.
EDITO: Me he dado cuenta que había puesto mal el número del terrain tag, pero ahora no salen Pokémon.
 
en esta parte estas mal

Código:
   def isGrass?
    return false if  [MENTION=32434]Den[/MENTION]sity==nil
    return (@enctypes[EncounterTypes::Land] ||
            @enctypes[EncounterTypes::LandMorning] ||
            @enctypes[EncounterTypes::LandDay] ||
            @enctypes[EncounterTypes::LandNight] ||
            @enctypes[EncounterTypes::PastoOscuro] ||
            @enctypes[EncounterTypes::BugContest]) ? true : false
  end
tienes que definir tu propio tipo de encuentro:

Código:
  def DarkGrass?
    return false if  [MENTION=32434]Den[/MENTION]sity==nil
    return (@enctypes[EncounterTypes::PastoOscuro]) ? true : false
  end
y en este agregarlo tambien

Código:
  def pbEncounterType
    if $PokemonGlobal && $PokemonGlobal.surfing
      return EncounterTypes::Water
    elsif self.isCave?
      return EncounterTypes::Cave
    [COLOR="Red"]elsif self.DarkGrass?
     return EncounterTypes::PastoOscuro[/COLOR]
    elsif self.isGrass?
      time=pbGetTimeNow
      enctype=EncounterTypes::Land
 pbGetTerrainTag($game_player)==PBTerrain::DarkGrass
      enctype=EncounterTypes::LandNight if self.hasEncounter?(EncounterTypes::LandNight) && PBDayNight.isNight?(time)
      enctype=EncounterTypes::LandDay if self.hasEncounter?(EncounterTypes::LandDay) && PBDayNight.isDay?(time)
      enctype=EncounterTypes::LandMorning if self.hasEncounter?(EncounterTypes::LandMorning) && PBDayNight.isMorning?(time)
      if pbInBugContest? && self.hasEncounter?(EncounterTypes::BugContest)
        enctype=EncounterTypes::BugContest
      end
      return enctype
    end
    return -1
  end
y agregarlo en la seccion de PBEnvironment

Código:
module PBEnvironment
DarkGrass = 17

Espero me entiendas...
 

Diego Mertens

Dartrix Joven
Respuesta: Re: Problema con Nuevo tipo de Encuentro

en esta parte estas mal

Código:
   def isGrass?
    return false if density==nil
    return (@enctypes[EncounterTypes::Land] ||
            @enctypes[EncounterTypes::LandMorning] ||
            @enctypes[EncounterTypes::LandDay] ||
            @enctypes[EncounterTypes::LandNight] ||
            @enctypes[EncounterTypes::PastoOscuro] ||
            @enctypes[EncounterTypes::BugContest]) ? true : false
  end
tienes que definir tu propio tipo de encuentro:

Código:
  def DarkGrass?
    return false if  density==nil
    return (@enctypes[EncounterTypes::PastoOscuro]) ? true : false
  end
y en este agregarlo tambien

Código:
  def pbEncounterType
    if $PokemonGlobal && $PokemonGlobal.surfing
      return EncounterTypes::Water
    elsif self.isCave?
      return EncounterTypes::Cave
    [COLOR="Red"]elsif self.DarkGrass?
     return EncounterTypes::PastoOscuro[/COLOR]
    elsif self.isGrass?
      time=pbGetTimeNow
      enctype=EncounterTypes::Land
 pbGetTerrainTag($game_player)==PBTerrain::DarkGrass
      enctype=EncounterTypes::LandNight if self.hasEncounter?(EncounterTypes::LandNight) && PBDayNight.isNight?(time)
      enctype=EncounterTypes::LandDay if self.hasEncounter?(EncounterTypes::LandDay) && PBDayNight.isDay?(time)
      enctype=EncounterTypes::LandMorning if self.hasEncounter?(EncounterTypes::LandMorning) && PBDayNight.isMorning?(time)
      if pbInBugContest? && self.hasEncounter?(EncounterTypes::BugContest)
        enctype=EncounterTypes::BugContest
      end
      return enctype
    end
    return -1
  end
y agregarlo en la seccion de PBEnvironment

Código:
module PBEnvironment
DarkGrass = 17

Espero me entiendas...
Ahora no me salen encuentros ni en pasto normal.
 
Re: Respuesta: Re: Problema con Nuevo tipo de Encuentro

quitaste los cambios que tu hiciste?
Código:
 def isGrass?
    return false if density==nil
    return (@enctypes[EncounterTypes::Land] ||
            @enctypes[EncounterTypes::LandMorning] ||
            @enctypes[EncounterTypes::LandDay] ||
            @enctypes[EncounterTypes::LandNight] ||
            [COLOR="Red"]@enctypes[EncounterTypes::PastoOscuro] ||[/COLOR]
            @enctypes[EncounterTypes::BugContest]) ? true : false
  end
Código:
def pbEncounterType
    if $PokemonGlobal && $PokemonGlobal.surfing
      return EncounterTypes::Water
    elsif self.isCave?
      return EncounterTypes::Cave
    elsif self.isGrass?
      time=pbGetTimeNow
      enctype=EncounterTypes::Land
[COLOR="red"] pbGetTerrainTag($game_player)==PBTerrain::DarkGrass[/COLOR]
      enctype=EncounterTypes::LandNight if self.hasEncounter?(EncounterTypes::LandNight) && PBDayNight.isNight?(time)
      enctype=EncounterTypes::LandDay if self.hasEncounter?(EncounterTypes::LandDay) && PBDayNight.isDay?(time)
      enctype=EncounterTypes::LandMorning if self.hasEncounter?(EncounterTypes::LandMorning) && PBDayNight.isMorning?(time)
      if pbInBugContest? && self.hasEncounter?(EncounterTypes::BugContest)
        enctype=EncounterTypes::BugContest
      end
      return enctype
    end
    return -1
  end
 

Diego Mertens

Dartrix Joven
Respuesta: Re: Respuesta: Re: Problema con Nuevo tipo de Encuentro

quitaste los cambios que tu hiciste?
Código:
 def isGrass?
    return false if density==nil
    return (@enctypes[EncounterTypes::Land] ||
            @enctypes[EncounterTypes::LandMorning] ||
            @enctypes[EncounterTypes::LandDay] ||
            @enctypes[EncounterTypes::LandNight] ||
            [COLOR="Red"]@enctypes[EncounterTypes::PastoOscuro] ||[/COLOR]
            @enctypes[EncounterTypes::BugContest]) ? true : false
  end
Código:
def pbEncounterType
    if $PokemonGlobal && $PokemonGlobal.surfing
      return EncounterTypes::Water
    elsif self.isCave?
      return EncounterTypes::Cave
    elsif self.isGrass?
      time=pbGetTimeNow
      enctype=EncounterTypes::Land
[COLOR="red"] pbGetTerrainTag($game_player)==PBTerrain::DarkGrass[/COLOR]
      enctype=EncounterTypes::LandNight if self.hasEncounter?(EncounterTypes::LandNight) && PBDayNight.isNight?(time)
      enctype=EncounterTypes::LandDay if self.hasEncounter?(EncounterTypes::LandDay) && PBDayNight.isDay?(time)
      enctype=EncounterTypes::LandMorning if self.hasEncounter?(EncounterTypes::LandMorning) && PBDayNight.isMorning?(time)
      if pbInBugContest? && self.hasEncounter?(EncounterTypes::BugContest)
        enctype=EncounterTypes::BugContest
      end
      return enctype
    end
    return -1
  end
Sí, lo he hecho, pero ahora ni siquiera en la hierba normal aparecen Pokémon.
 
Re: Respuesta: Re: Respuesta: Re: Problema con Nuevo tipo de Encuentro

Sí, lo he hecho, pero ahora ni siquiera en la hierba normal aparecen Pokémon.
si copiaste tu codigo de aqui puede estar separado
Código:
  def isGrass?
    return false if  
[COLOR="Red"]@Den
sity==nil[/COLOR]
    return (@enctypes[EncounterTypes::Land] ||
            @enctypes[EncounterTypes::LandMorning] ||
            @enctypes[EncounterTypes::LandDay] ||
            @enctypes[EncounterTypes::LandNight] ||
            @enctypes[EncounterTypes::PastoOscuro] ||
            @enctypes[EncounterTypes::BugContest]) ? true : false
  end
Código:
  def isGrass?
    return false if  
[COLOR="Red"]@Density==nil[/COLOR]
    return (@enctypes[EncounterTypes::Land] ||
            @enctypes[EncounterTypes::LandMorning] ||
            @enctypes[EncounterTypes::LandDay] ||
            @enctypes[EncounterTypes::LandNight] ||
            @enctypes[EncounterTypes::PastoOscuro] ||
            @enctypes[EncounterTypes::BugContest]) ? true : false
  end
copia el código original y has los cambios nuevamente para que todo este en orden
 

Diego Mertens

Dartrix Joven
Respuesta: Re: Respuesta: Re: Respuesta: Re: Problema con Nuevo tipo de Encuentro

si copiaste tu codigo de aqui puede estar separado
Código:
  def isGrass?
    return false if  
[COLOR="Red"]@Den
sity==nil[/COLOR]
    return (@enctypes[EncounterTypes::Land] ||
            @enctypes[EncounterTypes::LandMorning] ||
            @enctypes[EncounterTypes::LandDay] ||
            @enctypes[EncounterTypes::LandNight] ||
            @enctypes[EncounterTypes::PastoOscuro] ||
            @enctypes[EncounterTypes::BugContest]) ? true : false
  end
Código:
  def isGrass?
    return false if  
[COLOR="Red"]@Density==nil[/COLOR]
    return (@enctypes[EncounterTypes::Land] ||
            @enctypes[EncounterTypes::LandMorning] ||
            @enctypes[EncounterTypes::LandDay] ||
            @enctypes[EncounterTypes::LandNight] ||
            @enctypes[EncounterTypes::PastoOscuro] ||
            @enctypes[EncounterTypes::BugContest]) ? true : false
  end
copia el código original y has los cambios nuevamente para que todo este en orden
No, yo he notado eso y lo he ordenado antes.
 

Diego Mertens

Dartrix Joven
Respuesta: Re: Respuesta: Re: Respuesta: Re: Respuesta: Re: Problema con Nuevo tipo de Encuentro

Te dejo un tuto que hice a prisa espero te sirva...


https://www.youtube.com/watch?v=nVfBg51l3yc
Realmente no me ha servido, he intentado muchas cosas y todo lo que me dijiste, pero nada me sirve.
He borrado todo lo que he hecho y lo intentaré de nuevo luego.
Por cierto, ¿Cuál es la versión en la que te basaste en el script? Yo uso la 16.2, tal vez sea eso.
 
Re: Respuesta: Re: Respuesta: Re: Respuesta: Re: Respuesta: Re: Problema con Nuevo tipo de Encuentro

Realmente no me ha servido, he intentado muchas cosas y todo lo que me dijiste, pero nada me sirve.
He borrado todo lo que he hecho y lo intentaré de nuevo luego.
Por cierto, ¿Cuál es la versión en la que te basaste en el script? Yo uso la 16.2, tal vez sea eso.
Que versión tienes?
tal vez pueda crear un script para ti
 

Diego Mertens

Dartrix Joven
Respuesta: Re: Respuesta: Re: Respuesta: Re: Respuesta: Re: Respuesta: Re: Problema con Nuevo tipo de Encuentro

Que versión tienes?
tal vez pueda crear un script para ti
Yo uso la versión 16.2, con el Elite Battle System, y sí, por favor, si no es mucha molestia, claro.:p
 
Re: Respuesta: Re: Respuesta: Re: Respuesta: Re: Respuesta: Re: Respuesta: Re: Problema con Nuevo tipo de Encuentro

Yo uso la versión 16.2, con el Elite Battle System, y sí, por favor, si no es mucha molestia, claro.:p
yo tengo la misma versión pero sin el Elite...
tal vez te equivocaste con algo
tal vez me puedas mandar tu código y te lo corrijo si gustas.
 
Estado
Cerrado para nuevas respuestas.
Arriba