Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def pbDreamStart
- @briefmessage=false
- @sprites["battlebox0"]=DreamWorldDataBox.new(@battle.battlers[0],@battle.doublebattle,@viewport)
- @sprites["battlebox0"].appear
- loop do
- @sprites["battlebox0"].update
- pbGraphicsUpdate
- pbInputUpdate
- pbFrameUpdate
- break if !@sprites["battlebox0"].appearing
- end
- pbRefresh
- end
- def pbStartDreamBattle(battle)
- # Called whenever the battle begins
- $lowHPbattle=false
- @battle=battle
- @lastcmd=[0,0,0,0]
- @lastmove=[0,0,0,0]
- @showingplayer=true
- @showingenemy=true
- @sprites.clear
- @viewport=Viewport.new(0,Graphics.height/2,Graphics.width,0)
- @viewport.z=99999
- #@sprites["weather"] = RPG::BattleWeather.new(@viewport) if !@safaribattle
- @traineryoffset=(Graphics.height-320) # Adjust player's side for screen size
- @foeyoffset=(@traineryoffset*3/4).floor # Adjust foe's side for screen size
- pbBackdrop
- pbAddSprite("partybarfoe",
- PokeBattle_SceneConstants::FOEPARTYBAR_X,
- PokeBattle_SceneConstants::FOEPARTYBAR_Y,
- "Graphics/Pictures/battleLineup",@viewport)
- pbAddSprite("partybarplayer",
- PokeBattle_SceneConstants::PLAYERPARTYBAR_X,
- PokeBattle_SceneConstants::PLAYERPARTYBAR_Y,
- "Graphics/Pictures/battleLineup",@viewport)
- @sprites["partybarfoe"].x-=@sprites["partybarfoe"].bitmap.width
- @sprites["partybarplayer"].mirror=true
- @sprites["partybarfoe"].z=40
- @sprites["partybarplayer"].z=40
- @sprites["partybarfoe"].visible=false
- @sprites["partybarplayer"].visible=false
- if @battle.player.is_a?(Array)
- trainerfile=pbPlayerSpriteBackFile(@battle.player[0].trainertype)
- pbAddSprite("player",
- PokeBattle_SceneConstants::PLAYERTRAINERD1_X,
- PokeBattle_SceneConstants::PLAYERTRAINERD1_Y,trainerfile,@viewport)
- trainerfile=pbTrainerSpriteBackFile(@battle.player[1].trainertype)
- pbAddSprite("playerB",
- PokeBattle_SceneConstants::PLAYERTRAINERD2_X,
- PokeBattle_SceneConstants::PLAYERTRAINERD2_Y,trainerfile,@viewport)
- if @sprites["player"].bitmap
- if @sprites["player"].bitmap.width>@sprites["player"].bitmap.height
- @sprites["player"].src_rect.x=0
- @sprites["player"].src_rect.width=@sprites["player"].bitmap.width/5
- end
- @sprites["player"].x-=(@sprites["player"].src_rect.width/2)
- @sprites["player"].y-=@sprites["player"].bitmap.height
- @sprites["player"].z=30
- end
- if @sprites["playerB"].bitmap
- if @sprites["playerB"].bitmap.width>@sprites["playerB"].bitmap.height
- @sprites["playerB"].src_rect.x=0
- @sprites["playerB"].src_rect.width=@sprites["playerB"].bitmap.width/5
- end
- @sprites["playerB"].x-=(@sprites["playerB"].src_rect.width/2)
- @sprites["playerB"].y-=@sprites["playerB"].bitmap.height
- @sprites["playerB"].z=31
- end
- else
- trainerfile=pbPlayerSpriteBackFile(@battle.player.trainertype)
- pbAddSprite("player",
- PokeBattle_SceneConstants::PLAYERTRAINER_X,
- PokeBattle_SceneConstants::PLAYERTRAINER_Y,trainerfile,@viewport)
- if @sprites["player"].bitmap
- if @sprites["player"].bitmap.width>@sprites["player"].bitmap.height
- @sprites["player"].src_rect.x=0
- @sprites["player"].src_rect.width=@sprites["player"].bitmap.width/5
- end
- @sprites["player"].x-=(@sprites["player"].src_rect.width/2)
- @sprites["player"].y-=@sprites["player"].bitmap.height
- @sprites["player"].z=30
- end
- end
- if @battle.opponent
- if @battle.opponent.is_a?(Array)
- trainerfile=pbTrainerSpriteFile(@battle.opponent[1].trainertype)
- pbAddSprite("trainer2",
- PokeBattle_SceneConstants::FOETRAINERD2_X,
- PokeBattle_SceneConstants::FOETRAINERD2_Y,trainerfile,@viewport)
- trainerfile=pbTrainerSpriteFile(@battle.opponent[0].trainertype)
- pbAddSprite("trainer",
- PokeBattle_SceneConstants::FOETRAINERD1_X,
- PokeBattle_SceneConstants::FOETRAINERD1_Y,trainerfile,@viewport)
- else
- trainerfile=pbTrainerSpriteFile(@battle.opponent.trainertype)
- pbAddSprite("trainer",
- PokeBattle_SceneConstants::FOETRAINER_X,
- PokeBattle_SceneConstants::FOETRAINER_Y,trainerfile,@viewport)
- end
- else
- trainerfile="Graphics/Characters/trfront"
- pbAddSprite("trainer",
- PokeBattle_SceneConstants::FOETRAINER_X,
- PokeBattle_SceneConstants::FOETRAINER_Y,trainerfile,@viewport)
- end
- if @sprites["trainer"].bitmap
- @sprites["trainer"].x-=(@sprites["trainer"].bitmap.width/2)
- @sprites["trainer"].y-=@sprites["trainer"].bitmap.height
- @sprites["trainer"].z=8
- end
- if @sprites["trainer2"] && @sprites["trainer2"].bitmap
- @sprites["trainer2"].x-=(@sprites["trainer2"].bitmap.width/2)
- @sprites["trainer2"].y-=@sprites["trainer2"].bitmap.height
- @sprites["trainer2"].z=7
- end
- @sprites["shadow0"]=IconSprite.new(0,0,@viewport)
- @sprites["shadow0"].z=3
- pbAddSprite("shadow1",0,0,"Graphics/Pictures/battleShadow",@viewport)
- @sprites["shadow1"].z=3
- @sprites["shadow1"].visible=false
- @sprites["pokemon0"]=PokemonBattlerSprite.new(battle.doublebattle,0,@viewport)
- @sprites["pokemon0"].z=21
- @sprites["pokemon1"]=PokemonBattlerSprite.new(battle.doublebattle,1,@viewport)
- @sprites["pokemon1"].z=16
- if battle.doublebattle
- @sprites["shadow2"]=IconSprite.new(0,0,@viewport)
- @sprites["shadow2"].z=3
- pbAddSprite("shadow3",0,0,"Graphics/Pictures/battleShadow",@viewport)
- @sprites["shadow3"].z=3
- @sprites["shadow3"].visible=false
- @sprites["pokemon2"]=PokemonBattlerSprite.new(battle.doublebattle,2,@viewport)
- @sprites["pokemon2"].z=26
- @sprites["pokemon3"]=PokemonBattlerSprite.new(battle.doublebattle,3,@viewport)
- @sprites["pokemon3"].z=11
- end
- @sprites["battlebox0"]=PokemonDataBox.new(battle.battlers[0],battle.doublebattle,@viewport)
- @sprites["battlebox1"]=PokemonDataBox.new(battle.battlers[1],battle.doublebattle,@viewport)
- if battle.doublebattle
- @sprites["battlebox2"]=PokemonDataBox.new(battle.battlers[2],battle.doublebattle,@viewport)
- @sprites["battlebox3"]=PokemonDataBox.new(battle.battlers[3],battle.doublebattle,@viewport)
- end
- pbAddSprite("messagebox",0,Graphics.height-96,"Graphics/Pictures/battleMessage",@viewport)
- @sprites["messagebox"].z=90
- @sprites["helpwindow"]=Window_UnformattedTextPokemon.newWithSize("",0,0,32,32,@viewport)
- @sprites["helpwindow"].visible=false
- @sprites["helpwindow"].z=90
- @sprites["messagewindow"]=Window_AdvancedTextPokemon.new("")
- @sprites["messagewindow"].letterbyletter=true
- @sprites["messagewindow"].viewport=@viewport
- @sprites["messagewindow"].z=100
- @sprites["commandwindow"]=CommandMenuDisplay.new(@viewport)
- @sprites["commandwindow"].z=100
- @sprites["fightwindow"]=FightMenuDisplay.new(nil,@viewport)
- @sprites["fightwindow"].z=100
- pbShowWindow(MESSAGEBOX)
- pbSetMessageMode(false)
- playersprite1=@sprites["player"]
- playersprite2=@sprites["playerB"]
- trainersprite1=@sprites["trainer"]
- trainersprite2=@sprites["trainer2"]
- if @battle.party1.length>=1
- if @battle.party1.length==1
- @sprites["player"].visible=false
- species=@battle.party1[0].species
- @sprites["pokemon0"].setPokemonBitmap(@battle.party1[0],true)
- @sprites["pokemon0"].tone=Tone.new(-128,-128,-128,-128)
- @sprites["pokemon0"].x=PokeBattle_SceneConstants::PLAYERBATTLER_X
- @sprites["pokemon0"].x-=@sprites["pokemon0"].width/2
- @sprites["pokemon0"].y=PokeBattle_SceneConstants::PLAYERBATTLER_Y
- #@sprites["pokemon0"].y=PokeBattle_SceneConstants::PLAYERBATTLER_Y_TOTEM if @battle.party2[0].isTotem?
- @sprites["pokemon0"].y+=adjustBattleSpriteY(@sprites["pokemon0"],species,0)
- @sprites["pokemon0"].visible=true
- @sprites["shadow0"].x=PokeBattle_SceneConstants::PLAYERBATTLER_X
- @sprites["shadow0"].y=PokeBattle_SceneConstants::PLAYERBATTLER_Y
- @sprites["shadow0"].x-=@sprites["shadow0"].bitmap.width/2 if @sprites["shadow0"].bitmap!=nil
- @sprites["shadow0"].y-=@sprites["shadow0"].bitmap.height/2 if @sprites["shadow0"].bitmap!=nil
- @sprites["shadow0"].visible=showShadow?(species)
- playersprite1=@sprites["pokemon0"]
- elsif @battle.party1.length==2
- @sprites["player"].visible=false
- @sprites["playerB"].visible=false
- species=@battle.party1[0].species
- @sprites["pokemon0"].setPokemonBitmap(@battle.party1[0],true)
- @sprites["pokemon0"].tone=Tone.new(-128,-128,-128,-128)
- @sprites["pokemon0"].x=PokeBattle_SceneConstants::PLAYERBATTLERD1_X
- @sprites["pokemon0"].x-=@sprites["pokemon1"].width/2
- @sprites["pokemon0"].y=PokeBattle_SceneConstants::PLAYERBATTLERD1_Y
- @sprites["pokemon0"].y+=adjustBattleSpriteY(@sprites["pokemon0"],species,0)
- @sprites["pokemon0"].visible=true
- @sprites["shadow0"].x=PokeBattle_SceneConstants::PLAYERBATTLERD1_X
- @sprites["shadow0"].y=PokeBattle_SceneConstants::PLAYERBATTLERD1_Y
- @sprites["shadow0"].x-=@sprites["shadow0"].bitmap.width/2 if @sprites["shadow0"].bitmap!=nil
- @sprites["shadow0"].y-=@sprites["shadow0"].bitmap.height/2 if @sprites["shadow0"].bitmap!=nil
- @sprites["shadow0"].visible=showShadow?(species)
- playersprite1=@sprites["pokemon0"]
- species=@battle.party1[1].species
- @sprites["pokemon2"].setPokemonBitmap(@battle.party1[1],true)
- @sprites["pokemon2"].tone=Tone.new(-128,-128,-128,-128)
- @sprites["pokemon2"].x=PokeBattle_SceneConstants::PLAYERBATTLERD2_X
- @sprites["pokemon2"].x-=@sprites["pokemon2"].width/2
- @sprites["pokemon2"].y=PokeBattle_SceneConstants::PLAYERBATTLERD2_Y
- @sprites["pokemon2"].y+=adjustBattleSpriteY(@sprites["pokemon2"],species,2)
- @sprites["pokemon2"].visible=true
- @sprites["shadow2"].x=PokeBattle_SceneConstants::PLAYERBATTLERD2_X
- @sprites["shadow2"].y=PokeBattle_SceneConstants::PLAYERBATTLERD2_Y
- @sprites["shadow2"].x-=@sprites["shadow2"].bitmap.width/2 if @sprites["shadow2"].bitmap!=nil
- @sprites["shadow2"].y-=@sprites["shadow2"].bitmap.height/2 if @sprites["shadow2"].bitmap!=nil
- @sprites["shadow2"].visible=showShadow?(species)
- playersprite2=@sprites["pokemon2"]
- end
- end
- if !@battle.opponent
- @sprites["trainer"].visible=false
- if @battle.party2.length>=1
- if @battle.party2.length==1
- species=@battle.party2[0].species
- @sprites["pokemon1"].setPokemonBitmap(@battle.party2[0],false)
- @sprites["pokemon1"].tone=Tone.new(-128,-128,-128,-128)
- @sprites["pokemon1"].x=PokeBattle_SceneConstants::FOEBATTLER_X
- @sprites["pokemon1"].x-=@sprites["pokemon1"].width/2
- @sprites["pokemon1"].y=PokeBattle_SceneConstants::FOEBATTLER_Y
- @sprites["pokemon1"].y=PokeBattle_SceneConstants::FOEBATTLER_Y_TOTEM if @battle.party2[0].isTotem?
- @sprites["pokemon1"].y+=adjustBattleSpriteY(@sprites["pokemon1"],species,1)
- @sprites["pokemon1"].visible=true
- @sprites["shadow1"].x=PokeBattle_SceneConstants::FOEBATTLER_X
- @sprites["shadow1"].y=PokeBattle_SceneConstants::FOEBATTLER_Y
- @sprites["shadow1"].x-=@sprites["shadow1"].bitmap.width/2 if @sprites["shadow1"].bitmap!=nil
- @sprites["shadow1"].y-=@sprites["shadow1"].bitmap.height/2 if @sprites["shadow1"].bitmap!=nil
- @sprites["shadow1"].visible=showShadow?(species)
- trainersprite1=@sprites["pokemon1"]
- elsif @battle.party2.length==2
- species=@battle.party2[0].species
- @sprites["pokemon1"].setPokemonBitmap(@battle.party2[0],false)
- @sprites["pokemon1"].tone=Tone.new(-128,-128,-128,-128)
- @sprites["pokemon1"].x=PokeBattle_SceneConstants::FOEBATTLERD1_X
- @sprites["pokemon1"].x-=@sprites["pokemon1"].width/2
- @sprites["pokemon1"].y=PokeBattle_SceneConstants::FOEBATTLERD1_Y
- @sprites["pokemon1"].y+=adjustBattleSpriteY(@sprites["pokemon1"],species,1)
- @sprites["pokemon1"].visible=true
- @sprites["shadow1"].x=PokeBattle_SceneConstants::FOEBATTLERD1_X
- @sprites["shadow1"].y=PokeBattle_SceneConstants::FOEBATTLERD1_Y
- @sprites["shadow1"].x-=@sprites["shadow1"].bitmap.width/2 if @sprites["shadow1"].bitmap!=nil
- @sprites["shadow1"].y-=@sprites["shadow1"].bitmap.height/2 if @sprites["shadow1"].bitmap!=nil
- @sprites["shadow1"].visible=showShadow?(species)
- trainersprite1=@sprites["pokemon1"]
- species=@battle.party2[1].species
- @sprites["pokemon3"].setPokemonBitmap(@battle.party2[1],false)
- @sprites["pokemon3"].tone=Tone.new(-128,-128,-128,-128)
- @sprites["pokemon3"].x=PokeBattle_SceneConstants::FOEBATTLERD2_X
- @sprites["pokemon3"].x-=@sprites["pokemon3"].width/2
- @sprites["pokemon3"].y=PokeBattle_SceneConstants::FOEBATTLERD2_Y
- @sprites["pokemon3"].y+=adjustBattleSpriteY(@sprites["pokemon3"],species,3)
- @sprites["pokemon3"].visible=true
- @sprites["shadow3"].x=PokeBattle_SceneConstants::FOEBATTLERD2_X
- @sprites["shadow3"].y=PokeBattle_SceneConstants::FOEBATTLERD2_Y
- @sprites["shadow3"].x-=@sprites["shadow3"].bitmap.width/2 if @sprites["shadow3"].bitmap!=nil
- @sprites["shadow3"].y-=@sprites["shadow3"].bitmap.height/2 if @sprites["shadow3"].bitmap!=nil
- @sprites["shadow3"].visible=showShadow?(species)
- trainersprite2=@sprites["pokemon3"]
- end
- end
- end
- #################
- # Move trainers/bases/etc. off-screen
- oldx=[]
- oldx[0]=@sprites["playerbase"].x; @sprites["playerbase"].x+=Graphics.width
- oldx[1]=playersprite1.x; playersprite1.x+=Graphics.width
- if playersprite2
- oldx[2]=playersprite2.x; playersprite2.x+=Graphics.width
- end
- oldx[3]=@sprites["enemybase"].x; @sprites["enemybase"].x-=Graphics.width
- oldx[4]=trainersprite1.x; trainersprite1.x-=Graphics.width
- if trainersprite2
- oldx[5]=trainersprite2.x; trainersprite2.x-=Graphics.width
- end
- oldx[6]=@sprites["shadow1"].x; @sprites["shadow1"].x-=Graphics.width
- if @sprites["shadow3"]
- oldx[7]=@sprites["shadow3"].x; @sprites["shadow3"].x-=Graphics.width
- end
- @sprites["partybarfoe"].x-=PokeBattle_SceneConstants::FOEPARTYBAR_X
- @sprites["partybarplayer"].x+=Graphics.width-PokeBattle_SceneConstants::PLAYERPARTYBAR_X
- #################
- appearspeed=12
- (1+Graphics.width/appearspeed).times do
- tobreak=true
- if @viewport.rect.y>0
- @viewport.rect.y-=appearspeed/2
- @viewport.rect.y=0 if @viewport.rect.y<0
- @viewport.rect.height+=appearspeed
- @viewport.rect.height=Graphics.height if @viewport.rect.height>Graphics.height
- tobreak=false
- end
- if !tobreak
- for i in @sprites
- i[1].ox=@viewport.rect.x
- i[1].oy=@viewport.rect.y
- end
- end
- if @sprites["playerbase"].x>oldx[0]
- @sprites["playerbase"].x-=appearspeed; tobreak=false
- @sprites["playerbase"].x=oldx[0] if @sprites["playerbase"].x<oldx[0]
- end
- if playersprite1.x>oldx[1]
- playersprite1.x-=appearspeed; tobreak=false
- playersprite1.x=oldx[1] if @sprites["player"].x<oldx[1]
- end
- if playersprite2 && playersprite2.x>oldx[2]
- playersprite2.x-=appearspeed; tobreak=false
- playersprite2.x=oldx[2] if @sprites["playerB"].x<oldx[2]
- end
- if @sprites["enemybase"].x<oldx[3]
- @sprites["enemybase"].x+=appearspeed; tobreak=false
- @sprites["enemybase"].x=oldx[3] if @sprites["enemybase"].x>oldx[3]
- end
- if trainersprite1.x<oldx[4]
- trainersprite1.x+=appearspeed; tobreak=false
- trainersprite1.x=oldx[4] if trainersprite1.x>oldx[4]
- end
- if trainersprite2 && trainersprite2.x<oldx[5]
- trainersprite2.x+=appearspeed; tobreak=false
- trainersprite2.x=oldx[5] if trainersprite2.x>oldx[5]
- end
- if @sprites["shadow1"].x<oldx[6]
- @sprites["shadow1"].x+=appearspeed; tobreak=false
- @sprites["shadow1"].x=oldx[6] if @sprites["shadow1"].x>oldx[6]
- end
- if @sprites["shadow3"] && @sprites["shadow3"].x<oldx[7]
- @sprites["shadow3"].x+=appearspeed; tobreak=false
- @sprites["shadow3"].x=oldx[7] if @sprites["shadow3"].x>oldx[7]
- end
- pbGraphicsUpdate
- pbInputUpdate
- pbFrameUpdate
- break if tobreak
- end
- #################
- if @battle.opponent
- @enablePartyAnim=true
- @partyAnimPhase=0
- @sprites["partybarfoe"].visible=true
- @sprites["partybarplayer"].visible=true
- else
- pbPlayCry(@battle.party2[0]) # Play cry for wild Pokémon
- @sprites["battlebox1"].appear
- @sprites["battlebox3"].appear if @battle.party2.length==2
- appearing=true
- begin
- pbGraphicsUpdate
- pbInputUpdate
- pbFrameUpdate
- @sprites["pokemon0"].tone.red+=8 if @sprites["pokemon0"].tone.red<0
- @sprites["pokemon0"].tone.blue+=8 if @sprites["pokemon0"].tone.blue<0
- @sprites["pokemon0"].tone.green+=8 if @sprites["pokemon0"].tone.green<0
- @sprites["pokemon0"].tone.gray+=8 if @sprites["pokemon0"].tone.gray<0
- appearing=@sprites["battlebox0"].appearing
- @sprites["pokemon1"].tone.red+=8 if @sprites["pokemon1"].tone.red<0
- @sprites["pokemon1"].tone.blue+=8 if @sprites["pokemon1"].tone.blue<0
- @sprites["pokemon1"].tone.green+=8 if @sprites["pokemon1"].tone.green<0
- @sprites["pokemon1"].tone.gray+=8 if @sprites["pokemon1"].tone.gray<0
- appearing=@sprites["battlebox1"].appearing
- if @battle.party2.length==2
- @sprites["pokemon2"].tone.red+=8 if @sprites["pokemon2"].tone.red<0
- @sprites["pokemon2"].tone.blue+=8 if @sprites["pokemon2"].tone.blue<0
- @sprites["pokemon2"].tone.green+=8 if @sprites["pokemon2"].tone.green<0
- @sprites["pokemon2"].tone.gray+=8 if @sprites["pokemon2"].tone.gray<0
- appearing=(appearing || @sprites["battlebox3"].appearing)
- @sprites["pokemon3"].tone.red+=8 if @sprites["pokemon3"].tone.red<0
- @sprites["pokemon3"].tone.blue+=8 if @sprites["pokemon3"].tone.blue<0
- @sprites["pokemon3"].tone.green+=8 if @sprites["pokemon3"].tone.green<0
- @sprites["pokemon3"].tone.gray+=8 if @sprites["pokemon3"].tone.gray<0
- appearing=(appearing || @sprites["battlebox3"].appearing)
- end
- end while appearing
- # Show shiny animation for wild Pokémon
- if @battle.battlers[1].isShiny? && @battle.battlescene
- pbCommonAnimation("Shiny",@battle.battlers[1],nil)
- end
- if @battle.party2.length==2
- if @battle.battlers[3].isShiny? && @battle.battlescene
- pbCommonAnimation("Shiny",@battle.battlers[3],nil)
- end
- end
- end
- pbAddSprite("EffectFoe",0,90,"Graphics/Pictures/battleEffectFoe",@viewport)
- pbAddSprite("EffectPlayer",Graphics.width-192,158,"Graphics/Pictures/battleEffectPlayer",@viewport)
- @sprites["EffectFoe"].visible=false
- @sprites["EffectFoe"].z=95
- @sprites["EffectPlayer"].visible=false
- @sprites["EffectPlayer"].z=95
- end
- def pbDreamItemMenu(index)
- ret=0
- retindex=-1
- pkmnid=-1
- endscene=true
- oldsprites=pbFadeOutAndHide(@sprites)
- itemscene=PokemonBag_Scene.new
- itemscene.pbStartScene($Trainer.dreambag)
- loop do
- item=itemscene.pbChooseItem
- break if item==0
- usetype=$ItemData[item][ITEMBATTLEUSE]
- cmdUse=-1
- commands=[]
- if usetype==0
- commands[commands.length]=_INTL("Cancel")
- else
- commands[cmdUse=commands.length]=_INTL("Use")
- commands[commands.length]=_INTL("Cancel")
- end
- itemname=PBItems.getName(item)
- command=itemscene.pbShowCommands(_INTL("{1} is selected.",itemname),commands)
- if cmdUse>=0 && command==cmdUse
- if usetype==1 || usetype==3
- modparty=[]
- for i in 0...6
- modparty.push(@battle.party1[@battle.party1order[i]])
- end
- pkmnlist=PokemonScreen_Scene.new
- pkmnscreen=PokemonScreen.new(pkmnlist,modparty)
- itemscene.pbEndScene
- pkmnscreen.pbStartScene(_INTL("Use on which Pokémon?"),@battle.doublebattle)
- activecmd=pkmnscreen.pbChoosePokemon
- pkmnid=@battle.party1order[activecmd]
- if activecmd>=0 && pkmnid>=0 && ItemHandlers.hasBattleUseOnPokemon(item)
- pkmnlist.pbEndScene
- ret=item
- retindex=pkmnid
- endscene=false
- break
- end
- pkmnlist.pbEndScene
- itemscene.pbStartScene($Trainer.dreambag)
- elsif usetype==2 || usetype==4
- if ItemHandlers.hasBattleUseOnBattler(item)
- ret=item
- retindex=index
- break
- end
- end
- end
- end
- pbConsumeItemInBattle($Trainer.dreambag,ret) if ret>0
- itemscene.pbEndScene if endscene
- pbFadeInAndShow(@sprites,oldsprites)
- return [ret,retindex]
- end
- def pbDreamCommandMenu(index)
- pbCommandMenuEx(index,[
- _INTL("What will\n{1} do?",@battle.pbPlayer.name),
- _INTL("Fight"),
- _INTL("Bag"),
- _INTL("Ball"),
- _INTL("Run")
- ],4)
- end
- # Must go under class PokemonDataBox, remember to remove the old one
- class DreamWorldDataBox < PokemonDataBox
- def refresh
- self.bitmap.clear
- return if !@battler.pokemon
- self.bitmap.blt(0,0,@databox.bitmap,Rect.new(0,0,@databox.width,@databox.height))
- base=PokeBattle_SceneConstants::BOXTEXTBASECOLOR
- shadow=PokeBattle_SceneConstants::BOXTEXTSHADOWCOLOR
- pokename=@battler.name
- pbSetSystemFont(self.bitmap)
- textpos=[
- [pokename,@spritebaseX+8,6,false,base,shadow]
- ]
- genderX=self.bitmap.text_size(pokename).width
- genderX+=@spritebaseX+14
- case @battler.displayGender
- when 0 # Male
- textpos.push([_INTL("♂"),genderX,6,false,Color.new(48,96,216),shadow])
- when 1 # Female
- textpos.push([_INTL("♀"),genderX,6,false,Color.new(248,88,40),shadow])
- end
- textpos.push([_INTL("Dream Balls"),30,8,false,base,shadow])
- textpos.push([_INTL("Left: {1}",@battler.battle.ballcount),30,38,false,base,shadow]) # Edit
- pbDrawTextPositions(self.bitmap,textpos)
- pbSetSmallFont(self.bitmap)
- textpos=[
- [_INTL("Lv{1}",@battler.level),@spritebaseX+202,8,true,base,shadow]
- ]
- if @showhp
- hpstring=_ISPRINTF("{1: 2d}/{2: 2d}",self.hp,@battler.totalhp)
- textpos.push([hpstring,@spritebaseX+188,48,true,base,shadow])
- end
- pbDrawTextPositions(self.bitmap,textpos)
- imagepos=[]
- if @battler.isShiny?
- shinyX=206
- shinyX=-6 if (@battler.index&1)==0 # If player's Pokémon
- imagepos.push(["Graphics/Pictures/shiny.png",@spritebaseX+shinyX,36,0,0,-1,-1])
- end
- if @battler.isDelta?
- deltaX=206
- deltaX=-6 if (@battler.index&1)==0 # If player's Pokémon
- deltaX+=18 if @battler.isShiny?
- disptype1=@battler.type1
- disptype2=@battler.type2
- if @battler.effects[PBEffects::Illusion] != nil
- disptype1=illusionpoke.effects[PBEffects::Illusion].type1
- disptype2=illusionpoke.effects[PBEffects::Illusion].type2
- end
- if disptype1==disptype2
- imagepos.push(["Graphics/Pictures/delta.png",@spritebaseX+deltaX,36,20*disptype1,0,20,-1])
- else
- imagepos.push(["Graphics/Pictures/delta.png",@spritebaseX+deltaX-4,30,20*disptype1,0,20,-1])
- imagepos.push(["Graphics/Pictures/delta.png",@spritebaseX+deltaX+4,34+4,20*disptype2,0,20,-1])
- end
- end
- if @battler.isMega?
- imagepos.push(["Graphics/Pictures/battleMegaEvoBox.png",@spritebaseX+8,34,0,0,-1,-1])
- elsif @battler.isPrimal?
- if isConst?(@battler.pokemon.species,PBSpecies,:KYOGRE)
- imagepos.push(["Graphics/Pictures/battlePrimalKyogreBox.png",@spritebaseX+140,4,0,0,-1,-1])
- elsif isConst?(@battler.pokemon.species,PBSpecies,:GROUDON)
- imagepos.push(["Graphics/Pictures/battlePrimalGroudonBox.png",@spritebaseX+140,4,0,0,-1,-1])
- elsif isConst?(@battler.pokemon.species,PBSpecies,:DIALGA)
- imagepos.push(["Graphics/Pictures/battlePrimalDialgaBox.png",@spritebaseX+140,4,0,0,-1,-1])
- end
- end
- if @battler.owned && (@battler.index&1)==1
- imagepos.push(["Graphics/Pictures/battleBoxOwned.png",@spritebaseX+8,36,0,0,-1,-1])
- end
- pbDrawImagePositions(self.bitmap,imagepos)
- if @battler.status>0
- self.bitmap.blt(@spritebaseX+24,36,@statuses.bitmap,
- Rect.new(0,(@battler.status-1)*16,44,16))
- end
- hpGaugeSize=PokeBattle_SceneConstants::HPGAUGESIZE
- hpgauge=@battler.totalhp==0 ? 0 : (self.hp*hpGaugeSize/@battler.totalhp)
- hpgauge=2 if hpgauge==0 && self.hp>0
- hpzone=0
- hpzone=1 if self.hp<=(@battler.totalhp/2).floor
- hpzone=2 if self.hp<=(@battler.totalhp/4).floor
- hpcolors=[
- PokeBattle_SceneConstants::HPCOLORGREENDARK,
- PokeBattle_SceneConstants::HPCOLORGREEN,
- PokeBattle_SceneConstants::HPCOLORYELLOWDARK,
- PokeBattle_SceneConstants::HPCOLORYELLOW,
- PokeBattle_SceneConstants::HPCOLORREDDARK,
- PokeBattle_SceneConstants::HPCOLORRED
- ]
- # fill with black (shows what the HP used to be)
- hpGaugeX=PokeBattle_SceneConstants::HPGAUGE_X
- hpGaugeY=PokeBattle_SceneConstants::HPGAUGE_Y
- if @animatingHP && self.hp>0
- self.bitmap.fill_rect(@spritebaseX+hpGaugeX,hpGaugeY,
- @starthp*hpGaugeSize/@battler.totalhp,6,Color.new(0,0,0))
- end
- # fill with HP color
- self.bitmap.fill_rect(@spritebaseX+hpGaugeX,hpGaugeY,hpgauge,2,hpcolors[hpzone*2])
- self.bitmap.fill_rect(@spritebaseX+hpGaugeX,hpGaugeY+2,hpgauge,4,hpcolors[hpzone*2+1])
- if @showexp
- # fill with EXP color
- expGaugeX=PokeBattle_SceneConstants::EXPGAUGE_X
- expGaugeY=PokeBattle_SceneConstants::EXPGAUGE_Y
- self.bitmap.fill_rect(@spritebaseX+expGaugeX,expGaugeY,self.exp,2,
- PokeBattle_SceneConstants::EXPCOLORSHADOW)
- self.bitmap.fill_rect(@spritebaseX+expGaugeX,expGaugeY+2,self.exp,2,
- PokeBattle_SceneConstants::EXPCOLORBASE)
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement