Added: RandomMaps2 Changed: DebugConsole @@ -84,1 +84,1 @@ - echo "Debug Ouput:\n" + echo "Debug Output:\n" @@ -156,1 +156,1 @@ - Console::WriteConsole(string) + Console::WriteConsole(string.is_a?(String) ? string : string.inspect) @@ -158,-1 +158,3 @@ + def echoln(string) + echo(string) + echo("\r\n") Changed: PokemonPokedex @@ -460,1 +460,1 @@ - _INTL("START SHIFT"), + _INTL("START SHIFT") Changed: PBTypes @@ -59,0 +59,2 @@ + # Add the names of new types at the end of + # this list Changed: PokeBattle_MoveEffects @@ -1175,2 +1175,2 @@ - PBDebug.log(sprintf("lastMoveUsed=[%02X], lastMoveCalled=[%02X]", - opponent.lastMoveUsed,opponent.lastMoveCalled)) +# PBDebug.log(sprintf("lastMoveUsed=[%02X], lastMoveCalled=[%02X]", +# opponent.lastMoveUsed,opponent.lastMoveCalled)) @@ -2604,0 +2604,1 @@ + thismovename=PBMoves.getName(@id) @@ -2605,1 +2606,1 @@ - @battle.pbDisplay(_INTL("Nature Power turned into {1}!",movename)) + @battle.pbDisplay(_INTL("{1} turned into {2}!",thismovename,movename)) Changed: PBIntl @@ -464,0 +464,3 @@ +# Replaces first argument with a localized version and +# formats the other parameters by replacing {1}, {2}, etc. +# with those placeholders. @@ -473,0 +476,4 @@ +# Replaces first argument with a localized version and +# formats the other parameters by replacing {1}, {2}, etc. +# with those placeholders. +# This version acts more like sprintf, supports e.g. {1:d} or {2:s} Changed: Walk/Run @@ -36,1 +36,3 @@ - if meta[5] && meta[5]!="" && Input.press?(Input::A) && Input.dir4!=0 + if meta[5] && meta[5]!="" && Input.press?(Input::A) && + Input.dir4!=0 && $PokemonGlobal.runningShoes + # Display running character sprite @@ -39,0 +41,1 @@ + # Display normal character sprite Changed: Game_Map* @@ -49,1 +49,0 @@ - # マップ ID を @map_id に記憶 @@ -51,1 +50,0 @@ - # マップをファイルからロードし、@map に設定 @@ -53,1 +51,0 @@ - # 公開インスタンス変数にタイルセットの情報を設定 @@ -70,1 +67,0 @@ - # 表示座標を初期化 @@ -73,1 +69,0 @@ - # リフレッシュ要求フラグをクリア @@ -75,1 +70,0 @@ - # マップイベントのデータを設定 @@ -80,1 +74,0 @@ - # コモンイベントのデータを設定 @@ -85,1 +78,0 @@ - # フォグの各情報を初期化 @@ -93,1 +85,0 @@ - # スクロール情報を初期化 @@ -98,3 +89,0 @@ - #-------------------------------------------------------------------------- - # ● マップ ID の取得 - #-------------------------------------------------------------------------- @@ -104,3 +92,0 @@ - #-------------------------------------------------------------------------- - # ● 幅の取得 - #-------------------------------------------------------------------------- @@ -110,3 +95,0 @@ - #-------------------------------------------------------------------------- - # ● 高さの取得 - #-------------------------------------------------------------------------- @@ -116,3 +98,0 @@ - #-------------------------------------------------------------------------- - # ● エンカウントリストの取得 - #-------------------------------------------------------------------------- @@ -122,3 +101,0 @@ - #-------------------------------------------------------------------------- - # ● エンカウント歩数の取得 - #-------------------------------------------------------------------------- @@ -164,3 +140,0 @@ - #-------------------------------------------------------------------------- - # ● リフレッシュ - #-------------------------------------------------------------------------- @@ -168,1 +141,0 @@ - # マップ ID が有効なら @@ -170,1 +142,0 @@ - # すべてのマップイベントをリフレッシュ @@ -174,1 +145,0 @@ - # すべてのコモンイベントをリフレッシュ @@ -179,1 +149,0 @@ - # リフレッシュ要求フラグをクリア Changed: PokemonTrainers @@ -107,1 +107,1 @@ - f.write(sprintf(",%s",getConstantName(PBMoves,poke[i]))) if poke[i] + f.write(sprintf(",%s",getConstantName(PBMoves,poke[i]))) if poke[i] && poke[i]!=0 @@ -131,1 +131,7 @@ - pokemon.push([species,level,10,0,0,0,0,0]) + tempPoke=PokeBattle_Pokemon.new(species,level) + pokemon.push([species,level,10,0, + tempPoke.moves[0].id, + tempPoke.moves[1].id, + tempPoke.moves[2].id, + tempPoke.moves[3].id + ]) Changed: PokemonRadar @@ -201,1 +201,1 @@ -ItemHandlers.addUseInField(PBItems::POKeRADAR, proc { +ItemHandlers.addUseInField(:POKeRADAR, proc { @@ -205,1 +205,1 @@ -ItemHandlers.addUseFromBag(PBItems::POKeRADAR, proc { +ItemHandlers.addUseFromBag(:POKeRADAR, proc { Changed: WindowAndTilemap @@ -629,0 +629,2 @@ + @oldViewportOx=0 + @oldViewportOy=0 @@ -698,1 +700,1 @@ - if !(@oldOx==@ox && @oldOy==@oy && + mustrefresh=!(@oldOx==@ox && @oldOy==@oy && @@ -701,0 +703,7 @@ + if @viewport.ox!=@oldViewportOx || + !@viewport.oy!=@oldViewportOy + mustrefresh=true + @oldViewportOx=@viewport.ox + @oldViewportOy=@viewport.oy + end + if mustrefresh Changed: PokemonEntry @@ -463,1 +463,1 @@ - @text+=ch + @text+=ch if ch @@ -474,1 +474,1 @@ - @text+=ch + @text+=ch if ch @@ -488,1 +488,1 @@ - @text+=ch + @text+=ch if ch @@ -534,1 +534,1 @@ - if @helper.insert(ch) + if @helper.delete @@ -1186,2 +1186,1 @@ - elsif @cursorpos==OK && @helper.length>=@minlength - ret=@helper.text + elsif @cursorpos==OK @@ -1189,1 +1188,4 @@ - break + if @helper.length>=@minlength + ret=@helper.text + break + end Changed: Spriteset_Map @@ -68,1 +68,17 @@ - if $game_map.terrain_tag(@event.x,@event.y+1)==6 + currentY=@event.real_y.to_i/128 + limit=@rsprite.src_rect.height + shouldShow=false + # Clipping at Y + i=0 + while i<@rsprite.src_rect.height+32 + nextY=currentY+1+(i>>5) + if @event.map.terrain_tag(@event.x,nextY)!=6 + limit= ((nextY * 128)-@event.map.display_y+3).to_i/4 + limit-=@rsprite.y + break + else + shouldShow=true + end + i+=32 + end + if limit>0 && shouldShow @@ -99,1 +115,1 @@ - @sprite.angle=180.0 + @sprite.angle=180 @@ -106,0 +122,7 @@ + currentY=@event.real_y.to_i/128 + if limit<@sprite.src_rect.height + diff=@sprite.src_rect.height-limit + @sprite.src_rect.y+=diff + @sprite.src_rect.height=limit + @sprite.y-=diff + end @@ -203,0 +226,1 @@ + @viewport1.ox += $game_screen.shake @@ -244,1 +268,0 @@ - @viewport1.ox += $game_screen.shake Changed: Game_Character 1 @@ -189,3 +189,0 @@ - #-------------------------------------------------------------------------- - # ● ロック解除 - #-------------------------------------------------------------------------- @@ -193,1 +190,0 @@ - # ロックされていない場合 @@ -195,1 +191,0 @@ - # メソッド終了 @@ -198,1 +193,0 @@ - # ロック中フラグをクリア @@ -200,1 +194,0 @@ - # 向き固定でない場合 @@ -202,1 +195,0 @@ - # ロック前の向きが保存されていれば @@ -204,1 +196,0 @@ - # ロック前の向きを復帰 @@ -209,5 +200,0 @@ - #-------------------------------------------------------------------------- - # ● 指定位置に移動 - # x : X 座標 - # y : Y 座標 - #-------------------------------------------------------------------------- @@ -221,3 +207,0 @@ - #-------------------------------------------------------------------------- - # ● 画面 X 座標の取得 - #-------------------------------------------------------------------------- @@ -225,1 +208,0 @@ - # 実座標とマップの表示位置から画面座標を求める @@ -228,3 +210,0 @@ - #-------------------------------------------------------------------------- - # ● 画面 Y 座標の取得 - #-------------------------------------------------------------------------- @@ -232,1 +211,0 @@ - # 実座標とマップの表示位置から画面座標を求める @@ -234,1 +212,0 @@ - # ジャンプカウントに応じて Y 座標を小さくする @@ -246,4 +223,0 @@ - #-------------------------------------------------------------------------- - # ● 画面 Z 座標の取得 - # height : キャラクターの高さ - #-------------------------------------------------------------------------- @@ -262,3 +235,0 @@ - #-------------------------------------------------------------------------- - # ● 茂み深さの取得 - #-------------------------------------------------------------------------- @@ -266,1 +236,0 @@ - # タイルの場合、または最前面に表示フラグが ON の場合 @@ -270,2 +239,1 @@ - # ジャンプ中以外で茂み属性のタイルなら 12、それ以外なら 0 - if @jump_count == 0 and self.map.bush?(@x, @y) + if @jump_count <= 0 and self.map.bush?(@x, @y) @@ -277,3 +245,0 @@ - #-------------------------------------------------------------------------- - # ● 地形タグの取得 - #-------------------------------------------------------------------------- Changed: PokemonMessages @@ -410,7 +410,1 @@ - if msgwindow - pbBottomRight(cmdwindow) - cmdwindow.y-=msgwindow.height - else - cmdwindow.x=0 - cmdwindow.y=0 - end + pbPositionNearMsgWindow(cmdwindow,msgwindow,:right) @@ -461,7 +455,1 @@ - if msgwindow - pbBottomRight(cmdwindow) - cmdwindow.y-=msgwindow.height - else - cmdwindow.x=0 - cmdwindow.y=0 - end + pbPositionNearMsgWindow(cmdwindow,msgwindow,:right) @@ -507,0 +495,27 @@ +def pbPositionNearMsgWindow(cmdwindow,msgwindow,side) + return if !cmdwindow + if msgwindow + height=[cmdwindow.height,Graphics.height-msgwindow.height].min + cmdwindow.height=height + cmdwindow.y=msgwindow.y-cmdwindow.height + if cmdwindow.y<0 + cmdwindow.y=msgwindow.y+msgwindow.height + if cmdwindow.y+cmdwindow.height>Graphics.height + cmdwindow.y=msgwindow.y-cmdwindow.height + end + end + case side + when :left + cmdwindow.x=msgwindow.x + when :right + cmdwindow.x=msgwindow.x+msgwindow.width-cmdwindow.width + else + cmdwindow.x=msgwindow.x+msgwindow.width-cmdwindow.width + end + else + cmdwindow.height=Graphics.height if cmdwindow.height>Graphics.height + cmdwindow.x=0 + cmdwindow.y=0 + end +end + @@ -514,14 +529,1 @@ - if msgwindow - height=[cmdwindow.height,Graphics.height-msgwindow.height].min - cmdwindow.height=height - pbBottomRight(cmdwindow) - if msgwindow.y==0 - cmdwindow.y=msgwindow.height - else - cmdwindow.y-=msgwindow.height - end - else - cmdwindow.height=Graphics.height if cmdwindow.height>Graphics.height - cmdwindow.x=0 - cmdwindow.y=0 - end + pbPositionNearMsgWindow(cmdwindow,msgwindow,:right) @@ -753,1 +755,0 @@ - text.gsub!(/\\[Ff][Nn]/,_INTL("Rival")) @@ -849,6 +850,1 @@ - pbBottomLeft(facewindow) - if facetop - facewindow.y=msgwindow.height - else - facewindow.y-=msgwindow.height - end + pbPositionNearMsgWindow(facewindow,msgwindow,:left) @@ -868,1 +864,7 @@ - if control=="g" # Display gold window + if control=="f" + facewindow.dispose if facewindow + facewindow=PictureWindow.new("Graphics/Pictures/#{param}") + pbPositionNearMsgWindow(facewindow,msgwindow,:left) + facewindow.viewport=msgwindow.viewport + facewindow.z=msgwindow.z + elsif control=="g" # Display gold window @@ -870,0 +872,6 @@ + moneyString="" + if $Trainer + moneyString=_INTL("${1}",$Trainer.money) + else + moneyString=_INTL("{1} {2}",$game_party.gold,$data_system.words.gold) + end @@ -871,1 +879,1 @@ - _INTL("MONEY:\n${1}",$Trainer.money),0,0,32,32,msgwindow.viewport) + _INTL("MONEY:\n{1}",moneyString),0,0,32,32,msgwindow.viewport) Changed: SpriteWindow @@ -11,1 +11,1 @@ - return $PokemonSystem ? $PokemonSystem.textspeed : 2 + return $PokemonSystem ? $PokemonSystem.textspeed : 3 @@ -17,1 +17,2 @@ - if $data_system.decision_se.name=="" + if !$data_system || !$data_system.respond_to?("decision_se") || + $data_system.decision_se.name=="" @@ -1967,0 +1968,6 @@ + def textspeed=(value) + @frameskip=value + end + def textspeed + @frameskip + end Changed: PokemonSystem @@ -94,17 +94,1 @@ - if !$havetraceproc - $havetraceproc=true - Console::setup_console -=begin - $trace=File.open("calls.txt","wb"); - set_trace_func(proc {|event, file, line, id, binding, classname| - if event=="call" - $trace.write(Kernel.caller(2)[0,2].to_s) - $trace.write("\r\n") - end - }) -=end - else - $trace.close if $trace - set_trace_func nil - $havetraceproc=false - end + Console::setup_console Changed: PokeBattle_Battle @@ -2002,1 +2002,1 @@ - species=@battlers[i].species + battlerSpecies=@battlers[i].species @@ -2004,1 +2004,1 @@ - pbDexDataOffset(dexdata,species,17) + pbDexDataOffset(dexdata,battlerSpecies,17) @@ -2063,1 +2063,1 @@ - pbDexDataOffset(dexdata,species,23) + pbDexDataOffset(dexdata,battlerSpecies,23) @@ -2075,1 +2075,2 @@ - evgain=totalev+evgain-510 + # Bug Fix: must use "-=" instead of "=" + evgain-=totalev+evgain-510 @@ -2079,1 +2080,2 @@ - evgain=thispoke.ev[k]+evgain-255 + # Bug Fix: must use "-=" instead of "=" + evgain-=thispoke.ev[k]+evgain-255 @@ -2083,0 +2085,4 @@ + if thispoke.ev[k]>255 + print "Single-stat EV limit 255 exceeded.\r\nStat: #{k} EV gain: #{evgain} EVs: #{thispoke.ev.inspect}" + thispoke.ev[k]=255 + end @@ -2084,0 +2090,3 @@ + if totalev>510 + print "EV limit 510 exceeded.\r\nTotal EVs: #{totalev} EV gain: #{evgain} EVs: #{thispoke.ev.inspect}" + end @@ -2089,1 +2098,1 @@ - species=thispoke.species + thisPokeSpecies=thispoke.species @@ -2125,2 +2134,2 @@ - offset=atkdata.getOffset(species-1) - length=atkdata.getLength(species-1)>>1 + offset=atkdata.getOffset(thisPokeSpecies-1) + length=atkdata.getLength(thisPokeSpecies-1)>>1 Changed: PokemonItems @@ -34,0 +34,12 @@ +def itemFromSymbol(item) + if item.is_a?(Symbol) || item.is_a?(String) + begin + return PBItems.const_get(item.to_sym) + rescue + return nil + end + else + return item + end +end + @@ -41,0 +53,1 @@ + return if (item=itemFromSymbol(item))==nil @@ -44,0 +57,1 @@ + return if (item=itemFromSymbol(item))==nil @@ -47,0 +61,1 @@ + return if (item=itemFromSymbol(item))==nil @@ -50,0 +65,1 @@ + return if (item=itemFromSymbol(item))==nil @@ -53,0 +69,1 @@ + return if (item=itemFromSymbol(item))==nil @@ -60,0 +77,1 @@ + return if (item=itemFromSymbol(item))==nil @@ -68,0 +86,1 @@ + return if (item=itemFromSymbol(item))==nil @@ -77,0 +96,1 @@ + return if (item=itemFromSymbol(item))==nil @@ -85,0 +105,1 @@ + return if (item=itemFromSymbol(item))==nil @@ -93,0 +114,1 @@ + return if (item=itemFromSymbol(item))==nil @@ -110,1 +132,2 @@ - evgain=totalev+evgain-510 + # Bug Fix: must use "-=" instead of "=" + evgain-=totalev+evgain-510 @@ -113,1 +136,2 @@ - evgain=pokemon.ev[ev]+evgain-255 + # Bug Fix: must use "-=" instead of "=" + evgain-=pokemon.ev[ev]+evgain-255 @@ -484,2 +508,2 @@ - Kernel.pbMessage(_INTL("{1} wants to learn {2}.",pkmnname,movename)) - Kernel.pbMessage(_INTL("But {1} already knows four moves.",pkmnname)) + Kernel.pbMessage(_INTL("{1} wants to learn {2}.\1",pkmnname,movename)) + Kernel.pbMessage(_INTL("But {1} already knows four moves.\1",pkmnname)) @@ -492,4 +516,4 @@ - Kernel.pbMessage(_INTL("1, 2, and... ... ...")) - Kernel.pbMessage(_INTL("Poof!")) - Kernel.pbMessage(_INTL("{1} forgot {2}.",pkmnname,oldmovename)) - Kernel.pbMessage(_INTL("And...")) + Kernel.pbMessage(_INTL("1, 2, and... ... ...\1")) + Kernel.pbMessage(_INTL("Poof!\1")) + Kernel.pbMessage(_INTL("{1} forgot {2}.\1",pkmnname,oldmovename)) + Kernel.pbMessage(_INTL("And...\1")) @@ -519,2 +543,2 @@ - Kernel.pbMessage(_INTL("Booted up an HM.")) - Kernel.pbMessage(_INTL("It contained {1}.",movename)) + Kernel.pbMessage(_INTL("Booted up an HM.\1")) + Kernel.pbMessage(_INTL("It contained {1}.\1",movename)) @@ -522,2 +546,2 @@ - Kernel.pbMessage(_INTL("Booted up a TM.")) - Kernel.pbMessage(_INTL("It contained {1}.",movename)) + Kernel.pbMessage(_INTL("Booted up a TM.\1")) + Kernel.pbMessage(_INTL("It contained {1}.\1",movename)) @@ -539,1 +563,1 @@ - Kernel.pbMessage(_INTL("{1} is not compatible with {2}.",pokemon.name,movename)) + Kernel.pbMessage(_INTL("{1} is not compatible with {2}.\1",pokemon.name,movename)) Changed: PokemonScreen @@ -644,1 +644,3 @@ - currentsel-=1 + begin + currentsel-=1 + end while currentsel>0 && !@party[currentsel] @@ -650,1 +652,3 @@ - currentsel+=1 + begin + currentsel+=1 + end while currentsel<@party.length && !@party[currentsel] Added: RandomMaps2 Changed: DebugConsole Changed: PokemonPokedex Changed: PBTypes Changed: PokeBattle_MoveEffects Changed: PBIntl Changed: Walk/Run Changed: Game_Map* Changed: PokemonTrainers Changed: PokemonRadar Changed: WindowAndTilemap Changed: PokemonEntry Changed: Spriteset_Map Changed: Game_Character 1 Changed: PokemonMessages Changed: SpriteWindow Changed: PokemonSystem Changed: PokeBattle_Battle Changed: PokemonItems Changed: PokemonScreen