Registrarse

[Script] [Rpgmaker script]¡Pokémon dominantes!

Rainsis

Lolita complex is a mental illness
Bien, para empezar con el script repasaremos algunas características que tienen los pokémon dominantes:

-No puedes huir de ellos.
-No los puedes capturar.
-Llaman compañeros. (lamentablemente esto no se puede implementar)


Pues con los siguientes pasos se podrán crear pokémon dominantes ezpz

En PokeBattle_Battle buscar el siguiente código y añadir lo rojo de forma que quede como está escrito.

Código:
 def pbThrowPokeBall(idxPokemon,ball,rareness=nil,showplayer=false)
[COLOR="Red"]    if $game_switches[[COLOR="Cyan"]XXX[/COLOR]]
      pbDisplay(_INTL("[COLOR="Cyan"]MENSAJE DE ESQUIVAR POKEBALL[/COLOR]"))
     return
    end[/COLOR]
    itemname=PBItems.getName(ball)
    battler=nil
    if pbIsOpposing?(idxPokemon)
      battler=self.battlers[idxPokemon]
De esta forma, al hacer un evento con el pokémon dominante al ACTIVAR el switch XXX justo antes del script de combate hará que el pokémon en cuestión sea incapturable siendo un pokémon salvaje (las pokéballs se gastarán igual)

-Créditos a pokecommunity.

Esto es un poco mas complicado, para hacerlo técnicamente crearemos un objeto cuyo efecto se aplicará al salir al campo y se consumirá tras eso.
-Como ejemplo crearemos un Aura de Ataque.

Teniendo esto en mente nos iremos al txt Items en la carpeta PBS t crearemos lo siguiente:
Código:
598,AURAATAQUE,Aura Dominante,Aura Dominante,5,0,Aura de ataque en Pokes dominantes,0,0,0,
Muchos de los números no importarán ya que influyen en el uso por parte del jugador (se supone que este item no será obtenible de ninguna forma).

Una vez creado el Item nos iremos a PokeBattle_Battler los Scripts y añadiremos la sección en rojo de modo que quede así:
Código:
    # Intimidate
    if self.hasWorkingAbility(:INTIMIDATE) && onactive
      PBDebug.log("[Ability triggered] #{pbThis}'s Intimidate")
      for i in 0...4
        if pbIsOpposing?(i) && !@battle.battlers[i].isFainted?
          @battle.battlers[i].pbReduceAttackStatIntimidate(self)
        end
      end
    end
[COLOR="red"]    #AURAS DOMINANTES
    if self.hasWorkingItem(:[COLOR="magenta"]AURAATAQUE[/COLOR])
        consumed=pbIncreaseStatWithCause(PBStats::[COLOR="Orange"]ATTACK[/COLOR],[COLOR="Cyan"]1.5[/COLOR],self,PBItems.getName(item))
        pbConsumeItem
        end[/COLOR]
    # Download
    if self.hasWorkingAbility(:DOWNLOAD) && onactive
      odef=ospdef=0
      if pbOpposing1 && !pbOpposing1.isFainted?
        odef+=pbOpposing1.defense
        ospdef+=pbOpposing1.spdef
      end
La palabra en color naranja indica el stat a subir mientras que la palabra en azul indica el multiplicador de la estadística. En este caso subiremos el ataque x1.5

Para crear múltiples "auras simplemente ir copiando y pegando debajo de esa cambiando la estadística y el objeto.

Finalmente para que un pokémon tenga un Aura Dominante habrá que equipárselo. Pero compañero, ¿Cómo lo hago?.

Fácil. En PField_EncounterModifiers pegar esto al final.
Código:
Events.onWildPokemonCreate+=proc {|sender,e|
   pokemon=e[0]
   if $game_switches[[COLOR="Red"]XXX[/COLOR]]
     pokemon.setItem(:[COLOR="Cyan"]AURAATAQUE[/COLOR])
   end
Siendo la parte en rojo el número de un switch y la de azul el Internal name del objeto que le equiparás al pokémon.

El resultado final debería ser mas o menos esto

Todo está testeado y funciona correctamente(o debería).

Dudas, preguntas o bugs comentadlos.
Recordad que un +gracias o un comentario siempre motiva a hacer más aportes ¡aunque no lo parezca se nota!
 
Última edición:

Sage0ne

Baneado
¡COMENTARIO DEL JINETE WAHPOCALÍPTICO SAGE!


Vaya, un día y nadie comenta? Y yo que pensaba que estabamos en tiempos de actividad,
me parece un aportazo, es genial que cada día se siga estando cada vez más al día en el desarrollo de nuevos sistemas parecidos a los nuevos juegos de Pokémon en Essentials,
lo del aura.. había visto que LucaSSJ lo estaba desarrollando, pero no supe más. ¿Es este sistema creado por ti? De todas formas, se agradece que lo hayas traído al foro, seguro le servirá a muchas personas que quieran tener esta efecto en la jugabilidad de sus proyectos.

Te daría repu por estar aportando tan seguido pero esa cosa ya ni existe
En fin, Saludos y Buenas vibras!
【Guerra】
 
COMENTAR O MORIR

¡Vaya! Me veo obligado a comentar como buen Jinete que soy. La verdad es que aportes como estos son más que interesantes. Muchas gracias por traernos algo como esto, sin duda algo genial que implementaré en mi proyecto. ~Bye
[Hambre]
 

Geo

El señor de las sombras
No te cansas de aportar verdad? Siempre es bueno que gente que sepa del tema traiga aportes de este tipo y aunque modificaciones no muy complejas son son útiles (algún día de estos traeré mis aportes de scripts, algún día)


Salu2 y Geo fuera
 

Sergiofr_18

En el sendero de la vida
El script iba bien hasta que vi que tienes que equiparle un objeto al Pokémon dominante. Esto podría crear situaciones que harían que todo se fuese al garete. Por ejemplo, ¿qué pasaría si uso Knock off (desarme) al Pokémon dominante? Pierde el boost. Lo mismo si uso intercambio para darle un objeto que incluso podría hacérmelo todo más fácil (véase la cola plúmbea o similares).

No sé si será fácil o no solucionarlo, pero supongo que se podría tirar de interruptores como haces con lo de poder capturar o no.

Un saludo.
 

Rainsis

Lolita complex is a mental illness
El script iba bien hasta que vi que tienes que equiparle un objeto al Pokémon dominante. Esto podría crear situaciones que harían que todo se fuese al garete. Por ejemplo, ¿qué pasaría si uso Knock off (desarme) al Pokémon dominante? Pierde el boost. Lo mismo si uso intercambio para darle un objeto que incluso podría hacérmelo todo más fácil (véase la cola plúmbea o similares).

No sé si será fácil o no solucionarlo, pero supongo que se podría tirar de interruptores como haces con lo de poder capturar o no.

Un saludo.
El objeto está hecho para que se active al salir al campo (en este caso al iniciar el combate) y tras eso desaparecer (como una baya) de manera que el jugador no pueda beneficiarse de él.
 

Sergiofr_18

En el sendero de la vida
El objeto está hecho para que se active al salir al campo (en este caso al iniciar el combate) y tras eso desaparecer (como una baya) de manera que el jugador no pueda beneficiarse de él.
Oh, cierto; no vi el pbConsumeItem. Entonces sí debería funcionar, aunque intentaré pensar una manera más "limpia" de hacerlo y te lo haré saber.

Saludos :D
 
Seria mejor crearle una forma alterna y anadirle una habilidad que le aumente la caracteristica
como:
if self.hasWorkingAbility:)DOMINANTE) && onactive
if pbIncreaseStatWithCause(PBStats::ATTACK,1,self,PBAbilities.getName(ability))
@battle.pbDisplay(_INTL("¡Mensaje!"))
end
end
 

Guilly Alpha

It's eleven o'clock
Guau, eso está bastaaante bien.
Me parece un aporte muy util, ya que con un poco de imaginacion se pueden sacar cosas bastante interesantes e ingeniosas.
Solo tengo dos dudas.
- El "Aura" lo podemos usar como un objeto que encontremos y equipemos a un Pokemon para un combate??
- Si usamos un movimiento que intercambie los objetos, ¿en ese combate nos afectaria el aura a nosotros en vez de al Pokémon rival?
 

Sergiofr_18

En el sendero de la vida
Guau, eso está bastaaante bien.
Me parece un aporte muy util, ya que con un poco de imaginacion se pueden sacar cosas bastante interesantes e ingeniosas.
Solo tengo dos dudas.
- El "Aura" lo podemos usar como un objeto que encontremos y equipemos a un Pokemon para un combate??
- Si usamos un movimiento que intercambie los objetos, ¿en ese combate nos afectaria el aura a nosotros en vez de al Pokémon rival?
1- Sí
2- No, ya que el objeto está programado para que se active y consuma nada más entrar en combate, es decir, al empezar el turno 1, por lo que usar truco u otros movimientos de ese estilo no afectaría de esa manera al combate.
 

JesusPoke

Me llaman el XDeador
Vaya pues he probado el script y funciona fenomenal y es increiblemente util, gracias por el aporte.
¿Y una duda, se podria cambiar la animacion que se ve?
 
Arriba