#=============================================================================== # # Birthsign Events - By Lucidious89 # For -Pokémon Essentials v17- # Add-On for -Pokémon Birthsigns- # #=============================================================================== # This script is meant as an add-on to the Pokémon Birthsigns script. # This may cause errors if Pokémon Birthsigns is not installed. #=============================================================================== # ~Installation~ #=============================================================================== # To install, insert a new section below PokemonBirthsigns (and above Main), # and paste this script there. This is a plug-n-play addition, and doesn't # require any other script changes. # # To set up a Birthsign Event, all you have to do is put this script in an event: # # pbBirthsignEvent(eventnum,monthnum) # # Set "eventnum" to the number associated with your desired event type. # When set to 1, it will run the Birthstone event. # When set to 2, it will run the Birthpath event. # When set to 3, it will run the Celestial Boss event. # When set to 4, it will run the Matchmaker event. # When set to 5, it will run the Fortune Teller event. # When set to 0, or left blank, it will default to a Birthstone event. # # Set "monthnum" to the desired month number (1-12) to select the particular sign # for this event to check for. For example, setting "month" to 12 for a # Birthstone event will give a Pokemon December's birthsign. # Note: If you set "month" to 0, it will return a random month. # If left blank, it will return the current month. # # Control Self Switch A is automatically turned on once a Birthsign Event # is completed. #=============================================================================== # Everything below is written for Pokémon Essentials v.17 #=============================================================================== BIRTHSTONE = false BIRTHPATH = false CELESTIALBOSS = false MATCHMAKER = false FORTUNETELLER = false def pbBirthsignEvent(eventnum=nil,monthnum=nil) $game_variables[1]=-1 interp=pbMapInterpreter thisEvent=interp.get_character(0) BIRTHSTONE==true if eventnum==1 BIRTHPATH==true if eventnum==2 CELESTIALBOSS==true if eventnum==3 MATCHMAKER==true if eventnum==4 FORTUNETELLER==true if eventnum==5 TRAINERSIGN==true if eventnum==6 monthnum=Time.now.mon if monthnum==nil monthnum=(1+rand(11)) if monthnum==0 sign=getZodiacList(monthnum) sprites={} viewport=Viewport.new(0,0,Graphics.width,Graphics.height) viewport.z=99999 sprites["ritual"] = IconSprite.new(0,0) sprites["token"] = IconSprite.new(218,154) sprites["token"].zoom_x=1.5 sprites["token"].zoom_y=1.5 case eventnum #============================================================================= # Birthstone Event (eventnum==1) #============================================================================= # Blesses a Pokemon with the birthsign associated with the chosen month. #============================================================================= when nil,0,1 sprites["ritual"].setBitmap("Graphics/Pictures/Birthsigns/Other/ritualoverlay") tokenpath="Graphics/Pictures/Birthsigns/token%02d" sprites["token"].setBitmap(sprintf(tokenpath,sign)) Kernel.pbMessage(_INTL("The sign of {1} is etched into the surface...", PBZodiacsigns.getName(monthnum))) pbWait(10) Kernel.pbMessage(_INTL("If a Pokémon communes with this stone, it may be blessed with the sign's power!")) if Kernel.pbConfirmMessage(_INTL("Commune with the zodiac stone?")) Kernel.pbMessage(_INTL("Choose a Pokémon to receive this blessing.")) pbWait(5) sprites["token"].dispose sprites["ritual"].dispose pbChoosePokemon(1,3) poke=pbGetPokemon(1) pokename=$game_variables[3] if $game_variables[1]<0 Kernel.pbMessage(_INTL("...but you decide to leave the zodiac stone alone.")) elsif (poke.isShadow? rescue false) Kernel.pbMessage(_INTL("...but shadow Pokémon can't have zodiac signs!")) elsif poke.egg? Kernel.pbMessage(_INTL("...but eggs can't have zodiac signs!")) elsif poke.isCelestial? Kernel.pbMessage(_INTL("...but celestial Pokémon can't change zodiac signs!")) elsif poke.isBlessed? Kernel.pbMessage(_INTL("...but that Pokémon has already been blessed!")) elsif poke.getCalendarsign==monthnum Kernel.pbMessage(_INTL("...but that Pokémon already has the depicted zodiac sign!")) else Kernel.pbMessage(_INTL("Accepting this blessing will replace any current zodiac sign, and prevent {1} from receiving another blessing.",pokename)) pbWait(10) if Kernel.pbConfirmMessage(_INTL("Are you sure you want to bless {1}?",pokename)) Kernel.pbMessage(_INTL("{1} touched the zodiac stone and entered a trance!",pokename)) pbRitualAnimation(poke) if poke.hasBirthsign? Kernel.pbMessage(_INTL("{1} lost the power of {2}...",pokename,poke.pbGetBirthsignName)) end Kernel.pbMessage(_INTL("And...")) pbWait(5) $game_screen.start_flash(Color.new(255,255,255,255), 20) pbMEPlay("Evolution success") Kernel.pbMessage(_INTL("\\se[]{1} was blessed with the power of {2}!\\wt[80]",poke.name,PBZodiacsigns.getName(monthnum))) poke.setZodiacsign(monthnum) poke.applyBirthsignBonuses if poke.birthsign==7 || poke.birthsign==8 poke.genderflag=nil elsif poke.birthsign==12 && !poke.isShiny? poke.makeShiny end poke.makeBlessed poke.calcStats pbWait(5) pbSetSelfSwitch(thisEvent.id,"A",true) if pbSetSelfSwitch(thisEvent.id,"A",true) Kernel.pbMessage(_INTL("With the ritual complete, the zodiac stone reverts to its dormant state.")) end else Kernel.pbMessage(_INTL("...you decide to leave the zodiac stone alone.")) end end else Kernel.pbMessage(_INTL("You decide to leave the zodiac stone alone.")) end #============================================================================= # Birthpath Event (eventnum==2) #============================================================================= # Opens up a path if a Pokemon with the chosen month's birthsign is selected. #============================================================================= when 2 sprites["ritual"].setBitmap("Graphics/Pictures/Birthsigns/Other/ritualoverlay") tokenpath="Graphics/Pictures/Birthsigns/token%02d" sprites["token"].setBitmap(sprintf(tokenpath,sign)) Kernel.pbMessage(_INTL("The sign of {1} is etched into the surface...", PBZodiacsigns.getName(monthnum))) pbWait(10) Kernel.pbMessage(_INTL("If a Pokémon has this zodiac sign, it may uncover the secret hidden here!")) if Kernel.pbConfirmMessage(_INTL("Reveal the secret behind the ritual wall?")) Kernel.pbMessage(_INTL("Choose a Pokémon with the depicted zodiac sign.")) pbWait(5) sprites["token"].dispose sprites["ritual"].dispose pbChoosePokemon(1,3) poke=pbGetPokemon(1) pokename=$game_variables[3] if $game_variables[1]<0 Kernel.pbMessage(_INTL("...but you decide to leave the mysterious wall alone.")) $game_variables[1]=-1 elsif (poke.isShadow? rescue false) Kernel.pbMessage(_INTL("...but shadow Pokémon don't have zodiac signs!")) $game_variables[1]=-1 elsif poke.egg? Kernel.pbMessage(_INTL("...but eggs don't have zodiac signs!")) $game_variables[1]=-1 elsif poke.Calendarsign!=monthnum Kernel.pbMessage(_INTL("...but that Pokémon doesn't have the right zodiac sign!")) $game_variables[1]=-1 else Kernel.pbMessage(_INTL("{1}'s presence causes the wall to react!",pokename)) pbRitualAnimation(poke) Kernel.pbMessage(_INTL("{1} discovered an ancient passage!",pokename)) pbSEPlay("Entering Door") $game_screen.start_flash(Color.new(255,255,255,255), 20) pbSetSelfSwitch(thisEvent.id,"A",true) end else Kernel.pbMessage(_INTL("You decide to leave the mysterious wall alone.")) end #============================================================================= # Celestial Boss Event (eventnum==3) #============================================================================= # Initiates a battle with a Celestial Boss relative to the chosen month. #============================================================================= when 3 sprites["ritual"].setBitmap("Graphics/Pictures/Birthsigns/Other/ritualoverlay") tokenpath="Graphics/Pictures/Birthsigns/token%02d" sprites["token"].setBitmap(sprintf(tokenpath,sign)) Kernel.pbMessage(_INTL("The sign of {1} is etched into the surface...", PBZodiacsigns.getName(monthnum))) pbWait(10) Kernel.pbMessage(_INTL("The markings indicate that this is a shrine to {1}.", pbGetBossName(sign))) if PBDayNight.isNight? || $DEBUG Kernel.pbMessage(_INTL("If a Pokemon has this zodiac sign, perhaps it may draw out the guardian of this shrine.")) if Kernel.pbConfirmMessage(_INTL("Should your Pokémon call to this shrine's guardian?")) Kernel.pbMessage(_INTL("Choose a Pokémon with the depicted zodiac sign.")) pbWait(5) sprites["token"].dispose sprites["ritual"].dispose pbChoosePokemon(1,3) poke=pbGetPokemon(1) pokename=$game_variables[3] if $game_variables[1]<0 Kernel.pbMessage(_INTL("...but you decide to leave the celestial shrine alone.")) $game_variables[1]=-1 elsif (poke.isShadow? rescue false) Kernel.pbMessage(_INTL("...but shadow Pokémon don't have zodiac signs!")) $game_variables[1]=-1 elsif poke.egg? Kernel.pbMessage(_INTL("...but eggs don't have zodiac signs!")) $game_variables[1]=-1 elsif poke.getCalendarsign!=monthnum Kernel.pbMessage(_INTL("...but that Pokémon doesn't have the right zodiac sign!")) $game_variables[1]=-1 else # Species for each boss celestial=[:UNOWN, :PIKACHU,:LUVDISC,:AMPHAROS,:LUXRAY,:EEVEE,:CHANSEY,:GARDEVOIR, :GALLADE,:BEHEEYEM,:SNEASEL,:MUNCHLAX,:JIRACHI,:HOOH,:SLOWKING, :KLEFKI,:MEOWTH,:AUDINO,:MEDICHAM,:SIGILYPH,:SMEARGLE,:DARKRAI, :KANGASKHAN,:HOUNDOOM,:MEW,:KRICKETUNE,:MESPRIT,:BRONZOR,:BISHARP, :SPINDA,:SHUCKLE,:GLISCOR,311,:HYPNO] # 311 is Plusle # Boss levels - fluctuates based on player's badge count if $Trainer.numbadges>=8 level=70 elsif $Trainer.numbadges==7 level=60 elsif $Trainer.numbadges==6 level=55 elsif $Trainer.numbadges==5 level=45 elsif $Trainer.numbadges==4 level=35 elsif $Trainer.numbadges==3 level=30 else level=25 end pbRitualAnimation(poke) pbWait(60) Kernel.pbMessage(_INTL("....")) pbWait(30) cry=pbCryFile(celestial[poke.birthsign]) pbSEPlay(cry,80,100) if cry Kernel.pbMessage(_INTL("\\se[]{1}'s call was answered!\\wt[20]",poke.name)) pbWait(5) $game_switches[BOSS_SWITCH]=true pbCelestialBosses pbWait(5) $PokemonGlobal.nextBattleBGM="Celestial Battle" if poke.birthsign==32 pbDoubleWildBattle(celestial[poke.birthsign],level, celestial[poke.birthsign]+1,level,1,false,true) else pbWildBattle(celestial[poke.birthsign],level,1,false,true) end $game_switches[BOSS_SWITCH]=false pbSetSelfSwitch(thisEvent.id,"A",true) if pbSetSelfSwitch(thisEvent.id,"A",true) if $game_variables[1]==4 || $game_variables[1]==1 $Trainer.celestialcheck[monthnum-1] = poke.birthsign if ZODIACSET!=3 end Kernel.pbMessage(_INTL("After its guardian's appearance, this shrine no longer has any use.")) end end else Kernel.pbMessage(_INTL("You decide to leave the celestial shrine alone.")) end else pbWait(5) Kernel.pbMessage(_INTL("...but the shrine appears unresponsive right now.")) end #============================================================================= # Matchmaker Event (eventnum==4) #============================================================================= # Matches up a Pokemon with the chosen month & rewards based on compatibility. #============================================================================= when 4 Kernel.pbMessage(_INTL("Hiya!\nThey call me the Pokémon Matchmaker.")) Kernel.pbMessage(_INTL("People come to me whenever they want to find new playmates for their Pokémon!")) Kernel.pbMessage(_INTL("Pairing up Pokémon based on their zodiac sign is a sure-fire way of knowing they'll get along.")) Kernel.pbMessage(_INTL("That's just science!")) Kernel.pbMessage(_INTL("Right now, my buddy is looking for a Pokémon that pairs well with those that have this zodiac sign:")) sprites["ritual"].setBitmap("Graphics/Pictures/Birthsigns/Other/ritualoverlay") tokenpath="Graphics/Pictures/Birthsigns/token%02d" sprites["token"].setBitmap(sprintf(tokenpath,sign)) pbWait(100) sprites["token"].dispose sprites["ritual"].dispose if Kernel.pbConfirmMessage(_INTL("Would you happen to have a Pokémon that would want to play?")) Kernel.pbMessage(_INTL("Excellent! Show me who would get along with my buddy's Pokémon!")) pbChoosePokemon(1,3) poke=pbGetPokemon(1) pokename=$game_variables[3] if $game_variables[1]<0 Kernel.pbMessage(_INTL("Aww, change of heart, huh? No problem, come back some other time!")) elsif (poke.isShadow? rescue false) Kernel.pbMessage(_INTL("Hmm...no offence, but that Pokémon doesn't look very friendly.")) Kernel.pbMessage(_INTL("Come back with a Pokémon that would like to play.")) elsif poke.egg? Kernel.pbMessage(_INTL("Whoa there! An egg is way too fragile to be played with!")) else Kernel.pbMessage(_INTL("Aw yeah! Your {1} looks like it's raring to go!",pokename)) Kernel.pbMessage(_INTL("Let me introduce it to my buddy's Pokémon!")) pbFadeOutIn(99999){pbWait(80)} if poke.hasPartnersign?(monthnum) Kernel.pbMessage(_INTL("Wow! They got along great! {1} looks overjoyed!",pokename)) Kernel.pbMessage(_INTL("Another successful matchmaking by yours truly!")) pbWait(20) Kernel.pbMessage(_INTL("Oh? {1} seems to have come back with something...",pokename)) getitem = [:LUCKYEGG,:DESTINYKNOT,:POWERWEIGHT,:POWERBRACER,:POWERLENS, :POWERBAND,:POWERANKLET,:MACHOBRACE,:RARECANDY,:HEARTSCALE] Kernel.pbReceiveItem(getitem[rand(9)],1) poke.changeHappiness("groom") elsif poke.getCalendarsign==monthnum Kernel.pbMessage(_INTL("It seems like they got along fine, but they got bored of each other pretty fast.")) Kernel.pbMessage(_INTL("I guess it's not as exciting to meet others who are just like yourself. Variety is the spice of life!")) pbWait(20) Kernel.pbMessage(_INTL("Oh? {1} seems to have come back with something...",pokename)) getitem = [:LAXINCENSE,:FULLINCENSE,:LUCKINCENSE,:PUREINCENSE,:SEAINCENSE, :WAVEINCENSE,:ROSEINCENSE,:ROCKINCENSE,:ODDINCENSE] Kernel.pbReceiveItem(getitem[rand(8)],1) poke.changeHappiness("levelup") elsif poke.hasRivalsign?(monthnum) Kernel.pbMessage(_INTL("Oh dear. That could have gone better. {1} didn't seem to like its playmate at all...",pokename)) Kernel.pbMessage(_INTL("Try bringing a Pokémon with a sign that better matches its playmate next time. I've got a reputation to uphold!")) pbWait(20) Kernel.pbMessage(_INTL("{1} seems to have come back with something...",pokename)) getitem = [:TOXICORB,:FLAMEORB,:STICKYBARB,:POISONBARB] Kernel.pbReceiveItem(getitem[rand(3)],1) poke.changeHappiness("revivalherb") else Kernel.pbMessage(_INTL("{1} didn't really seem to have much in common with its playmate...",pokename)) Kernel.pbMessage(_INTL("Oh well, can't win 'em all I suppose.")) end pbWait(5) pbSetSelfSwitch(thisEvent.id,"A",true) if pbSetSelfSwitch(thisEvent.id,"A",true) Kernel.pbMessage(_INTL("Come back another time and I'm sure I'll have a new Pokémon lined up looking to play!")) end end else Kernel.pbMessage(_INTL("Aww, it's ok. Come back if you want to arrange a Poké-Playdate!")) end #============================================================================= # Fortune Teller Event (eventnum==5) #============================================================================= when 5 trainermonth=$Trainer.getCalendarsign trainersign=getZodiacList($Trainer.getCalendarsign) rival=$Trainer.getRivalsign partner1=$Trainer.getPartnersign(1) partner2=$Trainer.getPartnersign(2) Kernel.pbMessage(_INTL("Hello, I'm the Fortune Teller.")) Kernel.pbMessage(_INTL("I can read the stars and make predictions of your future!")) if $Trainer.hasZodiacsign? if Kernel.pbConfirmMessage(_INTL("Would you like to hear more?")) Kernel.pbMessage(_INTL("Of course!")) Kernel.pbMessage(_INTL("Ah! I can sense that you have the sign of {1}!",PBZodiacsigns.getName(trainermonth))) if Kernel.pbConfirmMessage(_INTL("Would you like me to take your reading?")) Kernel.pbMessage(_INTL("I knew you'd agree! Now, let me see...")) $PokemonGlobal.fortuneEqual=false $PokemonGlobal.fortuneGood=false $PokemonGlobal.fortuneBad=false pbFadeOutIn(99999){ pbWait(10) sprites["ritual"].setBitmap("Graphics/Pictures/Birthsigns/Other/ritualoverlay") tokenpath="Graphics/Pictures/Birthsigns/token%02d" sprites["token"].setBitmap(sprintf(tokenpath,trainersign)) } pbWait(10) Kernel.pbMessage(_INTL("Hmm...")) pbWait(20) Kernel.pbMessage(_INTL("Yes! I see it!")) Kernel.pbMessage(_INTL("Right now, the sign of {1} is shining brightest in the stars.",PBZodiacsigns.getName(monthnum))) if trainermonth==monthnum Kernel.pbMessage(_INTL("This is good news for you!")) Kernel.pbMessage(_INTL("I foresee future meetings with Pokémon that are very similar to yourself!")) pbActivateFortuneEffect $PokemonGlobal.fortuneEqual=true elsif $Trainer.hasPartnersign?(monthnum) Kernel.pbMessage(_INTL("This is wonderful news for you!")) Kernel.pbMessage(_INTL("I foresee future meetings with Pokémon that you'll get along with very well!")) pbActivateFortuneEffect $PokemonGlobal.fortuneGood=true elsif $Trainer.hasRivalsign?(monthnum) Kernel.pbMessage(_INTL("This does not bode well for you...")) Kernel.pbMessage(_INTL("I foresee future meetings with Pokémon that you'll have trouble getting along with.")) pbActivateFortuneEffect $PokemonGlobal.fortuneBad=true else Kernel.pbMessage(_INTL("This doesn't seem to influence you one way or the other...")) end Kernel.pbMessage(_INTL("I think you will find the best friendships with those born in the months of {1} or {2}.", pbGetMonthName(partner1),pbGetMonthName(partner2))) Kernel.pbMessage(_INTL("But be careful! Those born in {1} will be difficult to get along with.",pbGetMonthName(rival))) Kernel.pbMessage(_INTL("This is all that I'm able to see...")) pbFadeOutIn(99999){ pbWait(10) sprites["token"].dispose sprites["ritual"].dispose } if ZODIACSET!=0 && INCLUDE_ZPOWER Kernel.pbMessage(_INTL("Thanks for listening, I want you to have this.")) Kernel.pbReceiveItem(getZodiacGem(monthnum-1),1) end Kernel.pbMessage(_INTL("I hope this information proves useful on your journey.")) pbWait(5) pbSetSelfSwitch(thisEvent.id,"A",true) if pbSetSelfSwitch(thisEvent.id,"A",true) Kernel.pbMessage(_INTL("Please visit me again for your next reading!")) end else Kernel.pbMessage(_INTL("Do not worry, the stars shall lead your way back to me.")) end else Kernel.pbMessage(_INTL("Ehem...yes. I could foresee that you'd say that.")) end else Kernel.pbMessage(_INTL("Hmm...nevermind. I don't sense that you're the sort that would get anything from this.")) end #============================================================================= end sprites["token"].dispose sprites["ritual"].dispose BIRTHSTONE==false BIRTHPATH==false CELESTIALBOSS==false MATCHMAKER==false FORTUNETELLER==false end #=============================================================================== # Trainer Signs - Sign Selection Event #=============================================================================== def pbTrainerSignEvent if ZODIACSET!=0 Kernel.pbMessage(_INTL("Could you tell me what month were you born in, {1}?",$Trainer.name)) command=0 loop do command=Kernel.pbShowCommands(nil,[ _INTL("January"), _INTL("February"), _INTL("March"), _INTL("April"), _INTL("May"), _INTL("June"), _INTL("July"), _INTL("August"), _INTL("September"), _INTL("October"), _INTL("November"), _INTL("December"), _INTL("Who knows?"), _INTL("Rather not say") ],command) case command when 0 # January $Trainer.setZodiacsign(1) Kernel.pbMessage(_INTL("Right! That means you have the sign of {1}! It suits you!", PBBirthsigns.getName(JAN_BIRTHSIGN))) when 1 # February $Trainer.setZodiacsign(2) Kernel.pbMessage(_INTL("Right! That means you have the sign of {1}! It suits you!", PBBirthsigns.getName(FEB_BIRTHSIGN))) when 2 # March $Trainer.setZodiacsign(3) Kernel.pbMessage(_INTL("Right! That means you have the sign of {1}! It suits you!", PBBirthsigns.getName(MAR_BIRTHSIGN))) when 3 # April $Trainer.setZodiacsign(4) Kernel.pbMessage(_INTL("Right! That means you have the sign of {1}! It suits you!", PBBirthsigns.getName(APR_BIRTHSIGN))) when 4 # May $Trainer.setZodiacsign(5) Kernel.pbMessage(_INTL("Right! That means you have the sign of {1}! It suits you!", PBBirthsigns.getName(MAY_BIRTHSIGN))) when 5 # June $Trainer.setZodiacsign(6) Kernel.pbMessage(_INTL("Right! That means you have the sign of {1}! It suits you!", PBBirthsigns.getName(JUN_BIRTHSIGN))) when 6 # July $Trainer.setZodiacsign(7) Kernel.pbMessage(_INTL("Right! That means you have the sign of {1}! It suits you!", PBBirthsigns.getName(JUL_BIRTHSIGN))) when 7 # August $Trainer.setZodiacsign(8) Kernel.pbMessage(_INTL("Right! That means you have the sign of {1}! It suits you!", PBBirthsigns.getName(AUG_BIRTHSIGN))) when 8 # September $Trainer.setZodiacsign(9) Kernel.pbMessage(_INTL("Right! That means you have the sign of {1}! It suits you!", PBBirthsigns.getName(SEP_BIRTHSIGN))) when 9 # October $Trainer.setZodiacsign(10) Kernel.pbMessage(_INTL("Right! That means you have the sign of {1}! It suits you!", PBBirthsigns.getName(OCT_BIRTHSIGN))) when 10# November $Trainer.setZodiacsign(11) Kernel.pbMessage(_INTL("Right! That means you have the sign of {1}! It suits you!", PBBirthsigns.getName(NOV_BIRTHSIGN))) when 11# December $Trainer.setZodiacsign(12) Kernel.pbMessage(_INTL("Right! That means you have the sign of {1}! It suits you!", PBBirthsigns.getName(DEC_BIRTHSIGN))) when 12# Random $Trainer.setRandomZodiac Kernel.pbMessage(_INTL("Hmm...well, you look like someone who would have the sign of {1} to me.", PBBirthsigns.getName($Trainer.birthsign))) when 13# Default Kernel.pbMessage(_INTL("Ah! The mysterious type, eh?")) end break end end end #=============================================================================== # Celestial Bosses - Boss List #=============================================================================== def pbCelestialBosses Events.onWildPokemonCreate+=proc {|sender,e| pokemon=e[0] if $game_switches[BOSS_SWITCH] pokemon.iv=[31,31,31,31,31,31] if isConst?(pokemon.species,PBSpecies,:PIKACHU) pokemon.setBirthsign(1) pokemon.name=pbGetBossName(1) pokemon.setNature(:HASTY) pokemon.makeMale pokemon.ev=[6,252,0,252,0,0] elsif isConst?(pokemon.species,PBSpecies,:LUVDISC) pokemon.setBirthsign(2) pokemon.name=pbGetBossName(2) pokemon.setNature(:BOLD) pokemon.makeFemale pokemon.ev=[126,0,252,6,126,0] elsif isConst?(pokemon.species,PBSpecies,:AMPHAROS) pokemon.setBirthsign(3) pokemon.name=pbGetBossName(3) pokemon.setNature(:QUIET) pokemon.makeFemale pokemon.ev=[252,0,6,0,252,0] elsif isConst?(pokemon.species,PBSpecies,:LUXRAY) pokemon.setBirthsign(4) pokemon.name=pbGetBossName(4) pokemon.setNature(:NAUGHTY) pokemon.makeMale pokemon.ev=[0,252,6,252,0,0] elsif isConst?(pokemon.species,PBSpecies,:EEVEE) pokemon.setBirthsign(5) pokemon.name=pbGetBossName(5) pokemon.setNature(:TIMID) pokemon.makeMale pokemon.ev=[6,0,0,252,252,0] elsif isConst?(pokemon.species,PBSpecies,:CHANSEY) pokemon.setBirthsign(6) pokemon.name=pbGetBossName(6) pokemon.setNature(:BOLD) pokemon.makeFemale pokemon.ev=[126,0,252,6,126,0] elsif isConst?(pokemon.species,PBSpecies,:GARDEVOIR) pokemon.setBirthsign(7) pokemon.name=pbGetBossName(7) pokemon.setNature(:MODEST) pokemon.makeFemale pokemon.ev=[0,0,0,252,252,6] elsif isConst?(pokemon.species,PBSpecies,:GALLADE) pokemon.setBirthsign(8) pokemon.name=pbGetBossName(8) pokemon.setNature(:ADAMANT) pokemon.makeMale pokemon.ev=[0,252,6,252,0,0] elsif isConst?(pokemon.species,PBSpecies,:BEHEEYEM) pokemon.setBirthsign(9) pokemon.name=pbGetBossName(9) pokemon.setNature(:QUIET) pokemon.setGender(2) pokemon.ev=[252,0,6,0,252,0] elsif isConst?(pokemon.species,PBSpecies,:SNEASEL) pokemon.setBirthsign(10) pokemon.name=pbGetBossName(10) pokemon.setNature(:JOLLY) pokemon.makeMale pokemon.ev=[0,252,6,252,0,0] elsif isConst?(pokemon.species,PBSpecies,:MUNCHLAX) pokemon.setBirthsign(11) pokemon.name=pbGetBossName(11) pokemon.setNature(:RELAXED) pokemon.makeMale pokemon.ev=[126,252,126,0,0,6] elsif isConst?(pokemon.species,PBSpecies,:JIRACHI) pokemon.setBirthsign(12) pokemon.name=pbGetBossName(12) pokemon.setNature(:NAIVE) pokemon.makeMale pokemon.ev=[0,252,6,252,0,0] elsif isConst?(pokemon.species,PBSpecies,:HOOH) pokemon.setBirthsign(13) pokemon.name=pbGetBossName(13) pokemon.setNature(:BOLD) pokemon.makeMale pokemon.ev=[252,0,126,6,126,0] elsif isConst?(pokemon.species,PBSpecies,:SLOWKING) pokemon.setBirthsign(14) pokemon.name=pbGetBossName(14) pokemon.setNature(:RELAXED) pokemon.makeMale pokemon.ev=[252,0,126,0,126,6] elsif isConst?(pokemon.species,PBSpecies,:KLEFKI) pokemon.setBirthsign(15) pokemon.name=pbGetBossName(15) pokemon.setNature(:HASTY) pokemon.makeFemale pokemon.ev=[252,0,126,6,0,126] elsif isConst?(pokemon.species,PBSpecies,:MEOWTH) pokemon.setBirthsign(16) pokemon.name=pbGetBossName(16) pokemon.setNature(:HASTY) pokemon.makeFemale pokemon.ev=[0,252,0,252,0,6] elsif isConst?(pokemon.species,PBSpecies,:AUDINO) pokemon.setBirthsign(17) pokemon.name=pbGetBossName(17) pokemon.setNature(:BOLD) pokemon.makeFemale pokemon.ev=[126,0,252,6,126,0] elsif isConst?(pokemon.species,PBSpecies,:MEDICHAM) pokemon.setBirthsign(18) pokemon.name=pbGetBossName(18) pokemon.setNature(:TIMID) pokemon.makeFemale pokemon.ev=[126,0,126,252,0,6] elsif isConst?(pokemon.species,PBSpecies,:SIGILYPH) pokemon.setBirthsign(19) pokemon.name=pbGetBossName(19) pokemon.setNature(:CALM) pokemon.setGender(2) pokemon.ev=[252,0,126,6,0,126] elsif isConst?(pokemon.species,PBSpecies,:SMEARGLE) pokemon.setBirthsign(20) pokemon.name=pbGetBossName(20) pokemon.setNature(:HASTY) pokemon.makeMale pokemon.ev=[126,0,0,252,126,6] elsif isConst?(pokemon.species,PBSpecies,:DARKRAI) pokemon.setBirthsign(21) pokemon.name=pbGetBossName(21) pokemon.setNature(:TIMID) pokemon.makeMale pokemon.ev=[0,0,0,252,252,6] elsif isConst?(pokemon.species,PBSpecies,:KANGASKHAN) pokemon.setBirthsign(22) pokemon.name=pbGetBossName(22) pokemon.setNature(:ADAMANT) pokemon.makeFemale pokemon.ev=[252,252,6,0,0,0] elsif isConst?(pokemon.species,PBSpecies,:HOUNDOOM) pokemon.setBirthsign(23) pokemon.name=pbGetBossName(23) pokemon.setNature(:LONELY) pokemon.makeMale pokemon.ev=[0,252,0,252,6,0] elsif isConst?(pokemon.species,PBSpecies,:MEW) pokemon.setBirthsign(24) pokemon.name=pbGetBossName(24) pokemon.setNature(:QUIRKY) pokemon.makeMale pokemon.ev=[126,126,6,126,126,0] elsif isConst?(pokemon.species,PBSpecies,:KRICKETUNE) pokemon.setBirthsign(25) pokemon.name=pbGetBossName(25) pokemon.setNature(:TIMID) pokemon.makeMale pokemon.ev=[0,0,6,252,252,0] elsif isConst?(pokemon.species,PBSpecies,:MESPRIT) pokemon.setBirthsign(26) pokemon.name=pbGetBossName(26) pokemon.setNature(:TIMID) pokemon.makeFemale pokemon.ev=[126,0,126,6,126,126] elsif isConst?(pokemon.species,PBSpecies,:BRONZOR) pokemon.setBirthsign(27) pokemon.name=pbGetBossName(27) pokemon.setNature(:QUIET) pokemon.setGender(2) pokemon.ev=[252,0,0,0,252,6] elsif isConst?(pokemon.species,PBSpecies,:BISHARP) pokemon.setBirthsign(28) pokemon.name=pbGetBossName(28) pokemon.setNature(:ADAMANT) pokemon.makeMale pokemon.ev=[126,252,6,126,0,0] elsif isConst?(pokemon.species,PBSpecies,:SPINDA) pokemon.setBirthsign(29) pokemon.name=pbGetBossName(29) pokemon.setNature(:NAIVE) pokemon.makeFemale pokemon.ev=[252,126,6,126,0,0] elsif isConst?(pokemon.species,PBSpecies,:SHUCKLE) pokemon.setBirthsign(30) pokemon.name=pbGetBossName(30) pokemon.setNature(:RELAXED) pokemon.makeMale pokemon.ev=[252,0,126,0,6,126] elsif isConst?(pokemon.species,PBSpecies,:GLISCOR) pokemon.setBirthsign(31) pokemon.name=pbGetBossName(31) pokemon.setNature(:JOLLY) pokemon.makeMale pokemon.ev=[126,126,126,126,0,6] elsif isConst?(pokemon.species,PBSpecies,:PLUSLE) pokemon.setBirthsign(32) pokemon.name=pbGetDoubleBoss(0) pokemon.setNature(:HASTY) pokemon.makeFemale pokemon.ev=[126,0,0,252,126,6] elsif isConst?(pokemon.species,PBSpecies,:MINUN) pokemon.setBirthsign(32) pokemon.name=pbGetDoubleBoss(1) pokemon.setNature(:NAIVE) pokemon.makeMale pokemon.ev=[126,126,6,252,0,0] elsif isConst?(pokemon.species,PBSpecies,:HYPNO) pokemon.setBirthsign(33) pokemon.name=pbGetBossName(33) pokemon.setNature(:BOLD) pokemon.makeMale pokemon.ev=[126,0,126,0,252,6] end if ZODIACSET!=0 && INCLUDE_ZPOWER pokemon.setItem(getZodiacGem(pokemon.monthsign)) else pokemon.setItem(:STARDUST) end pokemon.obtainText=_INTL("Celestial Shrine.") pokemon.ot=pokemon.name pokemon.otgender=pokemon.gender pokemon.trainerID=$Trainer.getForeignID pokemon.makeNotShiny pokemon.makeCelestial pokemon.resetMoves pokemon.calcStats end } end #=============================================================================== # Celestial Bosses - Skips nicknaming prompt after capture. #=============================================================================== module PokeBattle_BattleCommon def pbStorePokemon(pokemon) if !(pokemon.isShadow? rescue false) && !pokemon.isCelestial? if pbDisplayConfirm(_INTL("Would you like to give a nickname to {1}?",pokemon.name)) species=PBSpecies.getName(pokemon.species) nickname=@scene.pbNameEntry(_INTL("{1}'s nickname?",species),pokemon) pokemon.name=nickname if nickname!="" end end oldcurbox=@peer.pbCurrentBox() storedbox=@peer.pbStorePokemon(self.pbPlayer,pokemon) creator=@peer.pbGetStorageCreator() return if storedbox<0 curboxname=@peer.pbBoxName(oldcurbox) boxname=@peer.pbBoxName(storedbox) if storedbox!=oldcurbox if creator pbDisplayPaused(_INTL("Box \"{1}\" on {2}'s PC was full.",curboxname,creator)) else pbDisplayPaused(_INTL("Box \"{1}\" on someone's PC was full.",curboxname)) end pbDisplayPaused(_INTL("{1} was transferred to box \"{2}\".",pokemon.name,boxname)) else if creator pbDisplayPaused(_INTL("{1} was transferred to {2}'s PC.",pokemon.name,creator)) else pbDisplayPaused(_INTL("{1} was transferred to someone's PC.",pokemon.name)) end pbDisplayPaused(_INTL("It was stored in box \"{1}\".",boxname)) end end end #=============================================================================== # Celestial Bosses - Redundancy to prevent evolution. #=============================================================================== def pbCheckEvolutionEx(pokemon) return -1 if pokemon.species<=0 || pokemon.egg? || pokemon.isCelestial? return -1 if isConst?(pokemon.item,PBItems,:EVERSTONE) return -1 if isConst?(pokemon.species,PBSpecies,:PICHU) && pokemon.form==1 ret=-1 for form in pbGetEvolvedFormData(pbGetFSpeciesFromForm(pokemon.species,pokemon.form)) ret = yield pokemon,form[0],form[1],form[2] break if ret>0 end return ret end