Changed: PokemonSafari @@ -103,1 +103,3 @@ - decision=battle.pbStartBattle + pbSceneStandby { + decision=battle.pbStartBattle + } Changed: PokeBattle_MoveEffects @@ -579,0 +579,7 @@ +def pbBaseDamage(basedmg,attacker,opponent) + if @id==PBMoves::WHIRLPOOL&& + opponent.effects[PBEffects::TwoTurnAttack]==PBMoves::DIVE + return basedmg*2 + end + return basedmg +end @@ -745,1 +752,5 @@ - if opponent.effects[PBEffects::Transform] + if opponent.effects[PBEffects::Transform]|| + opponent.effects[PBEffects::TwoTurnAttack]==PBMoves::FLY|| + opponent.effects[PBEffects::TwoTurnAttack]==PBMoves::DIG|| + opponent.effects[PBEffects::TwoTurnAttack]==PBMoves::DIVE|| + opponent.effects[PBEffects::TwoTurnAttack]==PBMoves::BOUNCE @@ -1458,1 +1469,2 @@ - if opponent.effects[PBEffects::MeanLook]>=0 + if opponent.effects[PBEffects::MeanLook]>=0 || + opponent.effects[PBEffects::Substitute]>0 Changed: Scene_Map @@ -21,0 +21,1 @@ + @spritesets={} Changed: EventScene @@ -554,0 +554,1 @@ + arglist=arg[1,arg.length] @@ -555,1 +556,1 @@ - callback.call(arg[0],arg[1,arg.length]) + callback.call(arg[0],arglist) Changed: PokemonField @@ -48,0 +48,11 @@ +end + +def pbSceneStandby + if $scene && $scene.is_a?(Scene_Map) + $scene.disposeSpritesets + end + GC.start + yield + if $scene && $scene.is_a?(Scene_Map) + $scene.createSpritesets + end @@ -329,1 +340,3 @@ - decision=battle.pbStartBattle + pbSceneStandby { + decision=battle.pbStartBattle + } Changed: PokeBattle_ActualScene @@ -664,1 +664,1 @@ - @spritey=pkmn.index==1 ? 96 : 96 + @spritey=pkmn.index==1 ? 96+24 : 96+24 @@ -1047,0 +1047,1 @@ + partyAnimationUpdate @@ -1353,0 +1354,51 @@ +end + +def inPartyAnimation? + return @enablePartyAnim && @partyAnimPhase<4 +end + +def partyAnimationUpdate + return if !inPartyAnimation? + if @partyAnimPhase==0 + @sprites["partybase1"].x+=16 + @sprites["partybase2"].x-=16 + @partyAnimPhase=1 if @sprites["partybase1"].x+@sprites["partybase1"].bitmap.width>=208 + return + end + if @partyAnimPhase==1 + @enemyendpos=152 + @playerendpos=312 + @partyAnimPhase=2 + @partyAnimI=0 + end + if @partyAnimPhase==2 + if @partyAnimI>=6 + @partyAnimPhase=4 + return + end + if @partyAnimI>=@battle.party2.length || !@battle.party2[@partyAnimI] + pbAddSprite("enemy#{@partyAnimI}",-28,64+@yoffset,"Graphics/Pictures/ballempty.png",@viewport) + elsif @battle.party2[@partyAnimI].hp<=0 || @battle.party2[@partyAnimI].status>0 || @battle.party2[@partyAnimI].egg? + pbAddSprite("enemy#{@partyAnimI}",-28,64+@yoffset,"Graphics/Pictures/ballfainted.png",@viewport) + else + pbAddSprite("enemy#{@partyAnimI}",-28,64+@yoffset,"Graphics/Pictures/ballnormal.png",@viewport) + end + if @partyAnimI==@battle.party1.length || !@battle.party1[@partyAnimI] + pbAddSprite("player#{@partyAnimI}",492,176+@yoffset,"Graphics/Pictures/ballempty.png",@viewport) + elsif @battle.party1[@partyAnimI].hp<=0 || @battle.party1[@partyAnimI].status>0 || @battle.party1[@partyAnimI].egg? + pbAddSprite("player#{@partyAnimI}",492,176+@yoffset,"Graphics/Pictures/ballfainted.png",@viewport) + else + pbAddSprite("player#{@partyAnimI}",492,176+@yoffset,"Graphics/Pictures/ballnormal.png",@viewport) + end + @partyAnimPhase=3 + end + if @partyAnimPhase==3 + @sprites["enemy#{@partyAnimI}"].x+=20 + @sprites["player#{@partyAnimI}"].x-=20 + if @sprites["enemy#{@partyAnimI}"].x>=@enemyendpos + @partyAnimPhase=2 + @partyAnimI+=1 + @enemyendpos-=20 + @playerendpos+=20 + end + end @@ -1448,0 +1500,1 @@ + @sprites["pokemon1"].color=Color.new(0,0,0,128) @@ -1464,0 +1517,2 @@ + @sprites["pokemon1"].color=Color.new(0,0,0,160) + @sprites["pokemon3"].color=Color.new(0,0,0,160) @@ -1509,0 +1564,2 @@ + @enablePartyAnim=true + @partyAnimPhase=0 @@ -1511,34 +1568,0 @@ - loop do - @sprites["partybase1"].x+=16 - @sprites["partybase2"].x-=16 - pbGraphicsUpdate - pbInputUpdate - break if @sprites["partybase1"].x+@sprites["partybase1"].bitmap.width>=208 - end - enemyendpos=152 - playerendpos=312 - for i in 0...6 - if i>=@battle.party2.length || !@battle.party2[i] - pbAddSprite("enemy#{i}",-28,64+@yoffset,"Graphics/Pictures/ballempty.png",@viewport) - elsif @battle.party2[i].hp<=0 || @battle.party2[i].status>0 || @battle.party2[i].egg? - pbAddSprite("enemy#{i}",-28,64+@yoffset,"Graphics/Pictures/ballfainted.png",@viewport) - else - pbAddSprite("enemy#{i}",-28,64+@yoffset,"Graphics/Pictures/ballnormal.png",@viewport) - end - if i>=@battle.party1.length || !@battle.party1[i] - pbAddSprite("player#{i}",492,176+@yoffset,"Graphics/Pictures/ballempty.png",@viewport) - elsif @battle.party1[i].hp<=0 || @battle.party1[i].status>0 || @battle.party1[i].egg? - pbAddSprite("player#{i}",492,176+@yoffset,"Graphics/Pictures/ballfainted.png",@viewport) - else - pbAddSprite("player#{i}",492,176+@yoffset,"Graphics/Pictures/ballnormal.png",@viewport) - end - loop do - @sprites["enemy#{i}"].x+=20 - @sprites["player#{i}"].x-=20 - pbGraphicsUpdate - pbInputUpdate - break if @sprites["enemy#{i}"].x>=enemyendpos - end - enemyendpos-=20 - playerendpos+=20 - end @@ -1554,0 +1577,2 @@ + @sprites["pokemon1"].color.alpha-=16 + @sprites["pokemon1"].color=@sprites["pokemon1"].color @@ -1556,0 +1581,2 @@ + @sprites["pokemon3"].color.alpha-=16 + @sprites["pokemon3"].color=@sprites["pokemon3"].color @@ -1606,0 +1633,1 @@ + while inPartyAnimation?; end @@ -1646,0 +1674,1 @@ +while inPartyAnimation?; end @@ -1654,7 +1683,5 @@ -path=[[111, 164], [112, 156], [114, 148], [116, 140], -[118, 133], [121, 125], [124, 118], [130, 113], -[136, 117], [139, 124], [140, 132], [141, 140], -[142, 147], [143, 155], [144, 163], [144, 171], -[145, 179], [145, 187], [146, 195], [146, 203], -[146, 211], [146, 219], [147, 227], [147, 235], -[147, 243], [147, 251], [147, 251]] +path=[[111, 164], [113, 154], [115, 145], [118, 136], +[122, 128], [130, 124], [137, 129], [140, 138], +[142, 147], [143, 156], [144, 166], [145, 175], +[145, 185], [146, 194], [146, 203], [146, 213], +[147, 222], [147, 232], [147, 241], [147, 250]] Changed: PokemonTrainers @@ -315,1 +315,3 @@ - decision=battle.pbStartBattle + pbSceneStandby { + decision=battle.pbStartBattle + } Changed: SpriteResizer @@ -199,6 +199,9 @@ - value=(val.to_f*$ResizeFactorMul/100) - if (value-0.50).abs<=0.001 - value=0.50 - end - if (value-1.00).abs<=0.001 - value=1.00 + value=val + if $ResizeFactorMul!=100 + value=(val.to_f*$ResizeFactorMul/100) + if (value-0.50).abs<=0.001 + value=0.50 + end + if (value-1.00).abs<=0.001 + value=1.00 + end @@ -213,6 +216,9 @@ - value=(val.to_f*$ResizeFactorMul/100) - if (value-0.50).abs<=0.001 - value=0.50 - end - if (value-1.00).abs<=0.001 - value=1.00 + value=val + if $ResizeFactorMul!=100 + value=(val.to_f*$ResizeFactorMul/100) + if (value-0.50).abs<=0.001 + value=0.50 + end + if (value-1.00).abs<=0.001 + value=1.00 + end @@ -227,4 +233,9 @@ - offset=(self.viewport) ? 0 : $ResizeOffsetX - value=((val.to_i+offset)*$ResizeFactorMul/100) - _xeq_SpriteResizer(value.to_i) - @resizedX=val.to_i + if $ResizeFactorMul!=100 + offset=(self.viewport) ? 0 : $ResizeOffsetX + value=((val.to_i+offset)*$ResizeFactorMul/100) + _xeq_SpriteResizer(value.to_i) + @resizedX=val.to_i + else + _xeq_SpriteResizer(val) + @resizedX=val + end @@ -244,4 +255,9 @@ - offset=(self.viewport) ? 0 : $ResizeOffsetY - value=((val.to_i+offset)*$ResizeFactorMul/100) - _yeq_SpriteResizer(value.to_i) - @resizedY=val.to_i + if $ResizeFactorMul!=100 + offset=(self.viewport) ? 0 : $ResizeOffsetY + value=((val.to_i+offset)*$ResizeFactorMul/100) + _yeq_SpriteResizer(value.to_i) + @resizedY=val.to_i + else + _yeq_SpriteResizer(val) + @resizedY=val + end @@ -250,2 +266,4 @@ - val=(val*$ResizeFactor).to_i if $ResizeFactor!=1.0 - val=(val/$ResizeFactor).to_i if $ResizeFactor!=1.0 + if $ResizeFactor!=1.0 + val=(val*$ResizeFactor).to_i + val=(val/$ResizeFactor).to_i + end @@ -256,2 +274,4 @@ - val=(val*$ResizeFactor).to_i if $ResizeFactor!=1.0 - val=(val/$ResizeFactor).to_i if $ResizeFactor!=1.0 + if $ResizeFactor!=1.0 + val=(val*$ResizeFactor).to_i + val=(val/$ResizeFactor).to_i + end @@ -314,7 +334,17 @@ - @oldrect.set( - ((r.x+$ResizeOffsetX)*$ResizeFactorMul/100).to_i, - ((r.y+$ResizeOffsetY)*$ResizeFactorMul/100).to_i, - (r.width*$ResizeFactorMul/100).to_i, - (r.height*$ResizeFactorMul/100).to_i - ) - self._recteq_SpriteResizer(@oldrect) + if $ResizeFactorMul==100 + @oldrect.set( + r.x.to_i, + r.y.to_i, + r.width.to_i, + r.height.to_i + ) + self._recteq_SpriteResizer(@oldrect) + else + @oldrect.set( + ((r.x+$ResizeOffsetX)*$ResizeFactorMul/100).to_i, + ((r.y+$ResizeOffsetY)*$ResizeFactorMul/100).to_i, + (r.width*$ResizeFactorMul/100).to_i, + (r.height*$ResizeFactorMul/100).to_i + ) + self._recteq_SpriteResizer(@oldrect) + end Changed: Transitions @@ -27,0 +27,9 @@ +=begin + if Graphics.frame_count%40==0 + count=0 + ObjectSpace.each_object(Object) {|o| + count+=1 + } + echo("Objects: #{count}\r\n") + end +=end @@ -124,0 +133,1 @@ + @sprites.clear @@ -179,0 +189,1 @@ + @sprites.clear Changed: PokeBattle_AI @@ -273,0 +273,2 @@ + elsif opponent.effects[PBEffects::Attract]>=0 + score-=90 Changed: WindowAndTilemap @@ -1133,1 +1133,1 @@ - next if id<48 || @priorities[id]!=0 || !@priorities[id] + next if !id || id<48 || @priorities[id]!=0 || !@priorities[id] Changed: PokemonEvolution @@ -580,1 +580,1 @@ - if poke<=PBSpecies.getCount && (evo&EVODATAMASK)==EVONEXTFORM + if (evo&EVODATAMASK)==EVONEXTFORM Changed: PokeBattle_Battle @@ -2699,1 +2699,2 @@ - i.pbReduceHP((i.totalhp*i.effects[PBEffects::Toxic]/16).floor) + i.effects[PBEffects::Toxic]=[15,i.effects[PBEffects::Toxic]].min + i.pbReduceHP((i.totalhp/16).floor*i.effects[PBEffects::Toxic]) Changed: PokemonBugContest @@ -278,1 +278,1 @@ - pbDisplay(_INTL("Received {1}!",pokemon.name)) + pbDisplay(_INTL("Caught {1}!",pokemon.name)) Changed: PokemonOrgBattle @@ -434,1 +434,3 @@ - decision=battleplayer.pbStartBattle + pbSceneStandby { + decision=battleplayer.pbStartBattle + } @@ -609,1 +611,3 @@ - decision=battle.pbStartBattle + pbSceneStandby { + decision=battle.pbStartBattle + } Changed: PokemonSafari Changed: PokeBattle_MoveEffects Changed: Scene_Map Changed: EventScene Changed: PokemonField Changed: PokeBattle_ActualScene Changed: PokemonTrainers Changed: SpriteResizer Changed: Transitions Changed: PokeBattle_AI Changed: WindowAndTilemap Changed: PokemonEvolution Changed: PokeBattle_Battle Changed: PokemonBugContest Changed: PokemonOrgBattle