diff --git a/Data/Map043.rxdata b/Data/Map043.rxdata index 422d306d4..85769f645 100644 Binary files a/Data/Map043.rxdata and b/Data/Map043.rxdata differ diff --git a/Data/MapInfos.rxdata b/Data/MapInfos.rxdata index b8c474ba1..f525b2b49 100644 Binary files a/Data/MapInfos.rxdata and b/Data/MapInfos.rxdata differ diff --git a/Data/Scripts/001_Settings.rb b/Data/Scripts/001_Settings.rb index d8e9520ec..4833d596d 100644 --- a/Data/Scripts/001_Settings.rb +++ b/Data/Scripts/001_Settings.rb @@ -6,7 +6,7 @@ module Settings # The version of your game. It has to adhere to the MAJOR.MINOR.PATCH format. GAME_VERSION = '5.0.0' - GAME_VERSION_NUMBER = "5.0.19.1 - beta" + GAME_VERSION_NUMBER = "5.0.20 - beta" POKERADAR_LIGHT_ANIMATION_RED_ID = 17 POKERADAR_LIGHT_ANIMATION_GREEN_ID = 18 diff --git a/Data/Scripts/016_UI/006_UI_Summary.rb b/Data/Scripts/016_UI/006_UI_Summary.rb index 9f2ff1600..83afc65fb 100644 --- a/Data/Scripts/016_UI/006_UI_Summary.rb +++ b/Data/Scripts/016_UI/006_UI_Summary.rb @@ -5,7 +5,7 @@ class MoveSelectionSprite < SpriteWrapper attr_reader :preselected attr_reader :index - def initialize(viewport=nil,fifthmove=false) + def initialize(viewport = nil, fifthmove = false) super(viewport) @movesel = AnimatedBitmap.new("Graphics/Pictures/Summary/cursor_move") @frame = 0 @@ -33,16 +33,16 @@ class MoveSelectionSprite < SpriteWrapper def refresh w = @movesel.width - h = @movesel.height/2 + h = @movesel.height / 2 self.x = 240 - self.y = 92+(self.index*64) + self.y = 92 + (self.index * 64) self.y -= 76 if @fifthmove - self.y += 20 if @fifthmove && self.index==Pokemon::MAX_MOVES # Add a gap + self.y += 20 if @fifthmove && self.index == Pokemon::MAX_MOVES # Add a gap self.bitmap = @movesel.bitmap if self.preselected - self.src_rect.set(0,h,w,h) + self.src_rect.set(0, h, w, h) else - self.src_rect.set(0,0,w,h) + self.src_rect.set(0, 0, w, h) end end @@ -59,7 +59,7 @@ end # #=============================================================================== class RibbonSelectionSprite < MoveSelectionSprite - def initialize(viewport=nil) + def initialize(viewport = nil) super(viewport) @movesel = AnimatedBitmap.new("Graphics/Pictures/Summary/cursor_ribbon") @frame = 0 @@ -77,21 +77,21 @@ class RibbonSelectionSprite < MoveSelectionSprite def refresh w = @movesel.width - h = @movesel.height/2 - self.x = 228+(self.index%4)*68 - self.y = 76+((self.index/4).floor*68) + h = @movesel.height / 2 + self.x = 228 + (self.index % 4) * 68 + self.y = 76 + ((self.index / 4).floor * 68) self.bitmap = @movesel.bitmap if self.preselected - self.src_rect.set(0,h,w,h) + self.src_rect.set(0, h, w, h) else - self.src_rect.set(0,0,w,h) + self.src_rect.set(0, 0, w, h) end end def update @updating = true super - self.visible = @spriteVisible && @index>=0 && @index<12 + self.visible = @spriteVisible && @index >= 0 && @index < 12 @movesel.update @updating = false refresh @@ -106,95 +106,100 @@ class PokemonSummary_Scene pbUpdateSpriteHash(@sprites) end - def pbStartScene(party,partyindex,inbattle=false) - @viewport = Viewport.new(0,0,Graphics.width,Graphics.height) + def pbStartScene(party, partyindex, inbattle = false) + @viewport = Viewport.new(0, 0, Graphics.width, Graphics.height) @viewport.z = 99999 - @party = party + @party = party @partyindex = partyindex - @pokemon = @party[@partyindex] - @inbattle = inbattle + @pokemon = @party[@partyindex] + @inbattle = inbattle @page = 1 - @typebitmap = AnimatedBitmap.new(_INTL("Graphics/Pictures/types")) + @typebitmap = AnimatedBitmap.new(_INTL("Graphics/Pictures/types")) @markingbitmap = AnimatedBitmap.new("Graphics/Pictures/Summary/markings") @sprites = {} - @sprites["background"] = IconSprite.new(0,0,@viewport) + @sprites["background"] = IconSprite.new(0, 0, @viewport) @sprites["pokemon"] = PokemonSprite.new(@viewport) @sprites["pokemon"].setOffset(PictureOrigin::Center) @sprites["pokemon"].x = 104 @sprites["pokemon"].y = 206 - @sprites["pokemon"].zoom_x = Settings::FRONTSPRITE_SCALE - @sprites["pokemon"].zoom_y = Settings::FRONTSPRITE_SCALE @sprites["pokemon"].setPokemonBitmap(@pokemon) - @sprites["pokeicon"] = PokemonIconSprite.new(@pokemon,@viewport) + if @pokemon.egg? + @sprites["pokemon"].zoom_x = Settings::EGGSPRITE_SCALE + @sprites["pokemon"].zoom_y = Settings::EGGSPRITE_SCALE + else + @sprites["pokemon"].zoom_x = Settings::FRONTSPRITE_SCALE + @sprites["pokemon"].zoom_y = Settings::FRONTSPRITE_SCALE + end + @sprites["pokeicon"] = PokemonIconSprite.new(@pokemon, @viewport) @sprites["pokeicon"].setOffset(PictureOrigin::Center) - @sprites["pokeicon"].x = 46 - @sprites["pokeicon"].y = 92 + @sprites["pokeicon"].x = 46 + @sprites["pokeicon"].y = 92 @sprites["pokeicon"].visible = false - @sprites["itemicon"] = ItemIconSprite.new(30,320,@pokemon.item_id,@viewport) + @sprites["itemicon"] = ItemIconSprite.new(30, 320, @pokemon.item_id, @viewport) @sprites["itemicon"].blankzero = true - @sprites["overlay"] = BitmapSprite.new(Graphics.width,Graphics.height,@viewport) + @sprites["overlay"] = BitmapSprite.new(Graphics.width, Graphics.height, @viewport) pbSetSystemFont(@sprites["overlay"].bitmap) @sprites["movepresel"] = MoveSelectionSprite.new(@viewport) - @sprites["movepresel"].visible = false + @sprites["movepresel"].visible = false @sprites["movepresel"].preselected = true @sprites["movesel"] = MoveSelectionSprite.new(@viewport) @sprites["movesel"].visible = false @sprites["ribbonpresel"] = RibbonSelectionSprite.new(@viewport) - @sprites["ribbonpresel"].visible = false + @sprites["ribbonpresel"].visible = false @sprites["ribbonpresel"].preselected = true @sprites["ribbonsel"] = RibbonSelectionSprite.new(@viewport) @sprites["ribbonsel"].visible = false - @sprites["uparrow"] = AnimatedSprite.new("Graphics/Pictures/uparrow",8,28,40,2,@viewport) + @sprites["uparrow"] = AnimatedSprite.new("Graphics/Pictures/uparrow", 8, 28, 40, 2, @viewport) @sprites["uparrow"].x = 350 @sprites["uparrow"].y = 56 @sprites["uparrow"].play @sprites["uparrow"].visible = false - @sprites["downarrow"] = AnimatedSprite.new("Graphics/Pictures/downarrow",8,28,40,2,@viewport) + @sprites["downarrow"] = AnimatedSprite.new("Graphics/Pictures/downarrow", 8, 28, 40, 2, @viewport) @sprites["downarrow"].x = 350 @sprites["downarrow"].y = 260 @sprites["downarrow"].play @sprites["downarrow"].visible = false - @sprites["markingbg"] = IconSprite.new(260,88,@viewport) + @sprites["markingbg"] = IconSprite.new(260, 88, @viewport) @sprites["markingbg"].setBitmap("Graphics/Pictures/Summary/overlay_marking") @sprites["markingbg"].visible = false - @sprites["markingoverlay"] = BitmapSprite.new(Graphics.width,Graphics.height,@viewport) + @sprites["markingoverlay"] = BitmapSprite.new(Graphics.width, Graphics.height, @viewport) @sprites["markingoverlay"].visible = false pbSetSystemFont(@sprites["markingoverlay"].bitmap) - @sprites["markingsel"] = IconSprite.new(0,0,@viewport) + @sprites["markingsel"] = IconSprite.new(0, 0, @viewport) @sprites["markingsel"].setBitmap("Graphics/Pictures/Summary/cursor_marking") - @sprites["markingsel"].src_rect.height = @sprites["markingsel"].bitmap.height/2 + @sprites["markingsel"].src_rect.height = @sprites["markingsel"].bitmap.height / 2 @sprites["markingsel"].visible = false @sprites["messagebox"] = Window_AdvancedTextPokemon.new("") - @sprites["messagebox"].viewport = @viewport - @sprites["messagebox"].visible = false + @sprites["messagebox"].viewport = @viewport + @sprites["messagebox"].visible = false @sprites["messagebox"].letterbyletter = true - pbBottomLeftLines(@sprites["messagebox"],2) + pbBottomLeftLines(@sprites["messagebox"], 2) drawPage(@page) pbFadeInAndShow(@sprites) { pbUpdate } end - def pbStartForgetScene(party,partyindex,move_to_learn) - @viewport = Viewport.new(0,0,Graphics.width,Graphics.height) + def pbStartForgetScene(party, partyindex, move_to_learn) + @viewport = Viewport.new(0, 0, Graphics.width, Graphics.height) @viewport.z = 99999 - @party = party + @party = party @partyindex = partyindex - @pokemon = @party[@partyindex] + @pokemon = @party[@partyindex] @page = 4 @typebitmap = AnimatedBitmap.new(_INTL("Graphics/Pictures/types")) @sprites = {} - @sprites["background"] = IconSprite.new(0,0,@viewport) - @sprites["overlay"] = BitmapSprite.new(Graphics.width,Graphics.height,@viewport) + @sprites["background"] = IconSprite.new(0, 0, @viewport) + @sprites["overlay"] = BitmapSprite.new(Graphics.width, Graphics.height, @viewport) pbSetSystemFont(@sprites["overlay"].bitmap) - @sprites["pokeicon"] = PokemonIconSprite.new(@pokemon,@viewport) + @sprites["pokeicon"] = PokemonIconSprite.new(@pokemon, @viewport) @sprites["pokeicon"].setOffset(PictureOrigin::Center) - @sprites["pokeicon"].x = 46 - @sprites["pokeicon"].y = 92 - @sprites["movesel"] = MoveSelectionSprite.new(@viewport,!move_to_learn.nil?) + @sprites["pokeicon"].x = 46 + @sprites["pokeicon"].y = 92 + @sprites["movesel"] = MoveSelectionSprite.new(@viewport, !move_to_learn.nil?) @sprites["movesel"].visible = false @sprites["movesel"].visible = true - @sprites["movesel"].index = 0 + @sprites["movesel"].index = 0 new_move = (move_to_learn) ? Pokemon::Move.new(move_to_learn) : nil - drawSelectedMove(new_move,@pokemon.moves[0]) + drawSelectedMove(new_move, @pokemon.moves[0]) pbFadeInAndShow(@sprites) end @@ -228,10 +233,10 @@ class PokemonSummary_Scene def pbConfirm(text) ret = -1 - @sprites["messagebox"].text = text + @sprites["messagebox"].text = text @sprites["messagebox"].visible = true - using(cmdwindow = Window_CommandPokemon.new([_INTL("Yes"),_INTL("No")])) { - cmdwindow.z = @viewport.z+1 + using(cmdwindow = Window_CommandPokemon.new([_INTL("Yes"), _INTL("No")])) { + cmdwindow.z = @viewport.z + 1 cmdwindow.visible = false pbBottomRight(cmdwindow) cmdwindow.y -= @sprites["messagebox"].height @@ -246,7 +251,7 @@ class PokemonSummary_Scene ret = false break elsif Input.trigger?(Input::USE) && @sprites["messagebox"].resume - ret = (cmdwindow.index==0) + ret = (cmdwindow.index == 0) break end end @@ -256,38 +261,38 @@ class PokemonSummary_Scene return ret end - def pbShowCommands(commands,index=0) + def pbShowCommands(commands, index = 0) ret = -1 using(cmdwindow = Window_CommandPokemon.new(commands)) { - cmdwindow.z = @viewport.z+1 - cmdwindow.index = index - pbBottomRight(cmdwindow) - loop do - Graphics.update - Input.update - cmdwindow.update - pbUpdate - if Input.trigger?(Input::BACK) - pbPlayCancelSE - ret = -1 - break - elsif Input.trigger?(Input::USE) - pbPlayDecisionSE - ret = cmdwindow.index - break - end - end + cmdwindow.z = @viewport.z + 1 + cmdwindow.index = index + pbBottomRight(cmdwindow) + loop do + Graphics.update + Input.update + cmdwindow.update + pbUpdate + if Input.trigger?(Input::BACK) + pbPlayCancelSE + ret = -1 + break + elsif Input.trigger?(Input::USE) + pbPlayDecisionSE + ret = cmdwindow.index + break + end + end } return ret end - def drawMarkings(bitmap,x,y) + def drawMarkings(bitmap, x, y) markings = @pokemon.markings - markrect = Rect.new(0,0,16,16) + markrect = Rect.new(0, 0, 16, 16) for i in 0...6 - markrect.x = i*16 - markrect.y = (markings&(1<= 0 - imagepos.push(["Graphics/Pictures/statuses",124,100,0,16*status,44,16]) + imagepos.push(["Graphics/Pictures/statuses", 124, 100, 0, 16 * status, 44, 16]) end # Show Pokérus cured icon - if @pokemon.pokerusStage==2 - imagepos.push([sprintf("Graphics/Pictures/Summary/icon_pokerus"),176,100]) + if @pokemon.pokerusStage == 2 + imagepos.push([sprintf("Graphics/Pictures/Summary/icon_pokerus"), 176, 100]) end # Show shininess star if @pokemon.shiny? - imagepos.push([sprintf("Graphics/Pictures/shiny"),2,134]) + imagepos.push([sprintf("Graphics/Pictures/shiny"), 2, 134]) end # Draw all images - pbDrawImagePositions(overlay,imagepos) + pbDrawImagePositions(overlay, imagepos) # Write various bits of text pagename = [_INTL("INFO"), _INTL("TRAINER MEMO"), _INTL("SKILLS"), _INTL("MOVES"), - _INTL("RIBBONS")][page-1] + _INTL("RIBBONS")][page - 1] textpos = [ - [pagename,26,10,0,base,shadow], - [@pokemon.name,46,56,0,base,shadow], - [@pokemon.level.to_s,46,86,0,Color.new(64,64,64),Color.new(176,176,176)], - [_INTL("Item"),66,312,0,base,shadow] + [pagename, 26, 10, 0, base, shadow], + [@pokemon.name, 46, 56, 0, base, shadow], + [@pokemon.level.to_s, 46, 86, 0, Color.new(64, 64, 64), Color.new(176, 176, 176)], + [_INTL("Item"), 66, 312, 0, base, shadow] ] # Write the held item's name if @pokemon.hasItem? - textpos.push([@pokemon.item.name,16,346,0,Color.new(64,64,64),Color.new(176,176,176)]) + textpos.push([@pokemon.item.name, 16, 346, 0, Color.new(64, 64, 64), Color.new(176, 176, 176)]) else - textpos.push([_INTL("None"),16,346,0,Color.new(192,200,208),Color.new(208,216,224)]) + textpos.push([_INTL("None"), 16, 346, 0, Color.new(192, 200, 208), Color.new(208, 216, 224)]) end # Write the gender symbol if @pokemon.male? - textpos.push([_INTL("♂"),178,56,0,Color.new(24,112,216),Color.new(136,168,208)]) + textpos.push([_INTL("♂"), 178, 56, 0, Color.new(24, 112, 216), Color.new(136, 168, 208)]) elsif @pokemon.female? - textpos.push([_INTL("♀"),178,56,0,Color.new(248,56,32),Color.new(224,152,144)]) + textpos.push([_INTL("♀"), 178, 56, 0, Color.new(248, 56, 32), Color.new(224, 152, 144)]) end # Draw all text - pbDrawTextPositions(overlay,textpos) + pbDrawTextPositions(overlay, textpos) # Draw the Pokémon's markings - drawMarkings(overlay,84,292) + drawMarkings(overlay, 84, 292) # Draw page-specific information case page - when 1 then drawPageOne - when 2 then drawPageTwo - when 3 then drawPageThree - when 4 then drawPageFour - when 5 then drawPageFive + when 1 then + drawPageOne + when 2 then + drawPageTwo + when 3 then + drawPageThree + when 4 then + drawPageFour + when 5 then + drawPageFive end end def drawPageOne overlay = @sprites["overlay"].bitmap - base = Color.new(248,248,248) - shadow = Color.new(104,104,104) - dexNumBase = (@pokemon.shiny?) ? Color.new(248,56,32) : Color.new(64,64,64) - dexNumShadow = (@pokemon.shiny?) ? Color.new(224,152,144) : Color.new(176,176,176) + base = Color.new(248, 248, 248) + shadow = Color.new(104, 104, 104) + dexNumBase = (@pokemon.shiny?) ? Color.new(248, 56, 32) : Color.new(64, 64, 64) + dexNumShadow = (@pokemon.shiny?) ? Color.new(224, 152, 144) : Color.new(176, 176, 176) # If a Shadow Pokémon, draw the heart gauge area and bar if @pokemon.shadowPokemon? shadowfract = @pokemon.heart_gauge.to_f / Pokemon::HEART_GAUGE_SIZE imagepos = [ - ["Graphics/Pictures/Summary/overlay_shadow",224,240], - ["Graphics/Pictures/Summary/overlay_shadowbar",242,280,0,0,(shadowfract*248).floor,-1] + ["Graphics/Pictures/Summary/overlay_shadow", 224, 240], + ["Graphics/Pictures/Summary/overlay_shadowbar", 242, 280, 0, 0, (shadowfract * 248).floor, -1] ] - pbDrawImagePositions(overlay,imagepos) + pbDrawImagePositions(overlay, imagepos) end # Write various bits of text textpos = [ - [_INTL("Dex No."),238,74,0,base,shadow], - [_INTL("Species"),238,106,0,base,shadow], - [@pokemon.speciesName,435,106,2,Color.new(64,64,64),Color.new(176,176,176)], - [_INTL("Type"),238,138,0,base,shadow], - [_INTL("OT"),238,170,0,base,shadow], - [_INTL("ID No."),238,202,0,base,shadow], + [_INTL("Dex No."), 238, 74, 0, base, shadow], + [_INTL("Species"), 238, 106, 0, base, shadow], + [@pokemon.speciesName, 435, 106, 2, Color.new(64, 64, 64), Color.new(176, 176, 176)], + [_INTL("Type"), 238, 138, 0, base, shadow], + [_INTL("OT"), 238, 170, 0, base, shadow], + [_INTL("ID No."), 238, 202, 0, base, shadow], ] # Write the Regional/National Dex number dexnum = GameData::Species.get(@pokemon.species).id_number @@ -411,19 +421,19 @@ class PokemonSummary_Scene # break # end # end - if dexnum<=0 - textpos.push(["???",435,74,2,dexNumBase,dexNumShadow]) + if dexnum <= 0 + textpos.push(["???", 435, 74, 2, dexNumBase, dexNumShadow]) else dexnum -= 1 if dexnumshift - textpos.push([sprintf("%03d",dexnum),435,74,2,dexNumBase,dexNumShadow]) + textpos.push([sprintf("%03d", dexnum), 435, 74, 2, dexNumBase, dexNumShadow]) end # Write Original Trainer's name and ID number if @pokemon.owner.name.empty? - textpos.push([_INTL("RENTAL"),435,170,2,Color.new(64,64,64),Color.new(176,176,176)]) - textpos.push(["?????",435,202,2,Color.new(64,64,64),Color.new(176,176,176)]) + textpos.push([_INTL("RENTAL"), 435, 170, 2, Color.new(64, 64, 64), Color.new(176, 176, 176)]) + textpos.push(["?????", 435, 202, 2, Color.new(64, 64, 64), Color.new(176, 176, 176)]) else - ownerbase = Color.new(64,64,64) - ownershadow = Color.new(176,176,176) + ownerbase = Color.new(64, 64, 64) + ownershadow = Color.new(176, 176, 176) case @pokemon.owner.gender when 0 ownerbase = Color.new(24, 112, 216) @@ -432,46 +442,46 @@ class PokemonSummary_Scene ownerbase = Color.new(248, 56, 32) ownershadow = Color.new(224, 152, 144) end - textpos.push([@pokemon.owner.name,435,170,2,ownerbase,ownershadow]) - textpos.push([sprintf("%05d",@pokemon.owner.public_id),435,202,2,Color.new(64,64,64),Color.new(176,176,176)]) + textpos.push([@pokemon.owner.name, 435, 170, 2, ownerbase, ownershadow]) + textpos.push([sprintf("%05d", @pokemon.owner.public_id), 435, 202, 2, Color.new(64, 64, 64), Color.new(176, 176, 176)]) end # Write Exp text OR heart gauge message (if a Shadow Pokémon) if @pokemon.shadowPokemon? - textpos.push([_INTL("Heart Gauge"),238,234,0,base,shadow]) + textpos.push([_INTL("Heart Gauge"), 238, 234, 0, base, shadow]) heartmessage = [_INTL("The door to its heart is open! Undo the final lock!"), _INTL("The door to its heart is almost fully open."), _INTL("The door to its heart is nearly open."), _INTL("The door to its heart is opening wider."), _INTL("The door to its heart is opening up."), _INTL("The door to its heart is tightly shut.")][@pokemon.heartStage] - memo = sprintf("%s\n",heartmessage) - drawFormattedTextEx(overlay,234,304,264,memo) + memo = sprintf("%s\n", heartmessage) + drawFormattedTextEx(overlay, 234, 304, 264, memo) else endexp = @pokemon.growth_rate.minimum_exp_for_level(@pokemon.level + 1) - textpos.push([_INTL("Exp. Points"),238,234,0,base,shadow]) - textpos.push([@pokemon.exp.to_s_formatted,488,266,1,Color.new(64,64,64),Color.new(176,176,176)]) - textpos.push([_INTL("To Next Lv."),238,298,0,base,shadow]) - textpos.push([(endexp-@pokemon.exp).to_s_formatted,488,330,1,Color.new(64,64,64),Color.new(176,176,176)]) + textpos.push([_INTL("Exp. Points"), 238, 234, 0, base, shadow]) + textpos.push([@pokemon.exp.to_s_formatted, 488, 266, 1, Color.new(64, 64, 64), Color.new(176, 176, 176)]) + textpos.push([_INTL("To Next Lv."), 238, 298, 0, base, shadow]) + textpos.push([(endexp - @pokemon.exp).to_s_formatted, 488, 330, 1, Color.new(64, 64, 64), Color.new(176, 176, 176)]) end # Draw all text - pbDrawTextPositions(overlay,textpos) + pbDrawTextPositions(overlay, textpos) # Draw Pokémon type(s) type1_number = GameData::Type.get(@pokemon.type1).id_number type2_number = GameData::Type.get(@pokemon.type2).id_number type1rect = Rect.new(0, type1_number * 28, 64, 28) type2rect = Rect.new(0, type2_number * 28, 64, 28) - if @pokemon.type1==@pokemon.type2 - overlay.blt(402,146,@typebitmap.bitmap,type1rect) + if @pokemon.type1 == @pokemon.type2 + overlay.blt(402, 146, @typebitmap.bitmap, type1rect) else - overlay.blt(370,146,@typebitmap.bitmap,type1rect) - overlay.blt(436,146,@typebitmap.bitmap,type2rect) + overlay.blt(370, 146, @typebitmap.bitmap, type1rect) + overlay.blt(436, 146, @typebitmap.bitmap, type2rect) end # Draw Exp bar - if @pokemon.level{1} {2}, {3}\n",date,month,year) + year = @pokemon.timeReceived.year + memo += _INTL("{1} {2}, {3}\n", date, month, year) end # Write map name egg was received on mapname = pbGetMapNameFromId(@pokemon.obtain_map) mapname = @pokemon.obtain_text if @pokemon.obtain_text && !@pokemon.obtain_text.empty? if mapname && mapname != "" - memo += _INTL("A mysterious Pokémon Egg received from {1}.\n",mapname) + memo += _INTL("A mysterious Pokémon Egg received from {1}.\n", mapname) else - memo += _INTL("A mysterious Pokémon Egg.\n",mapname) + memo += _INTL("A mysterious Pokémon Egg.\n", mapname) end memo += "\n" # Empty line # Write Egg Watch blurb @@ -530,63 +540,63 @@ class PokemonSummary_Scene eggstate = _INTL("What will hatch from this? It doesn't seem close to hatching.") if @pokemon.steps_to_hatch < 10200 eggstate = _INTL("It appears to move occasionally. It may be close to hatching.") if @pokemon.steps_to_hatch < 2550 eggstate = _INTL("Sounds can be heard coming from inside! It will hatch soon!") if @pokemon.steps_to_hatch < 1275 - memo += sprintf("%s\n",eggstate) + memo += sprintf("%s\n", eggstate) # Draw all text - drawFormattedTextEx(overlay,232,82,268,memo) + drawFormattedTextEx(overlay, 232, 82, 268, memo) # Draw the Pokémon's markings - drawMarkings(overlay,84,292) + drawMarkings(overlay, 84, 292) end def drawPageTwo overlay = @sprites["overlay"].bitmap memo = "" # Write nature - showNature = !@pokemon.shadowPokemon? || @pokemon.heartStage>3 + showNature = !@pokemon.shadowPokemon? || @pokemon.heartStage > 3 if showNature natureName = @pokemon.nature.name - memo += _INTL("{1} nature.\n",natureName) + memo += _INTL("{1} nature.\n", natureName) end # Write date received if @pokemon.timeReceived - date = @pokemon.timeReceived.day + date = @pokemon.timeReceived.day month = pbGetMonthName(@pokemon.timeReceived.mon) - year = @pokemon.timeReceived.year - memo += _INTL("{1} {2}, {3}\n",date,month,year) + year = @pokemon.timeReceived.year + memo += _INTL("{1} {2}, {3}\n", date, month, year) end # Write map name Pokémon was received on mapname = pbGetMapNameFromId(@pokemon.obtain_map) mapname = @pokemon.obtain_text if @pokemon.obtain_text && !@pokemon.obtain_text.empty? mapname = _INTL("Faraway place") if nil_or_empty?(mapname) - memo += sprintf("%s\n",mapname) + memo += sprintf("%s\n", mapname) # Write how Pokémon was obtained - mettext = [_INTL("Met at Lv. {1}.",@pokemon.obtain_level), + mettext = [_INTL("Met at Lv. {1}.", @pokemon.obtain_level), _INTL("Egg received."), - _INTL("Traded at Lv. {1}.",@pokemon.obtain_level), + _INTL("Traded at Lv. {1}.", @pokemon.obtain_level), "", - _INTL("Had a fateful encounter at Lv. {1}.",@pokemon.obtain_level) - ][@pokemon.obtain_method] - memo += sprintf("%s\n",mettext) if mettext && mettext!="" + _INTL("Had a fateful encounter at Lv. {1}.", @pokemon.obtain_level) + ][@pokemon.obtain_method] + memo += sprintf("%s\n", mettext) if mettext && mettext != "" # If Pokémon was hatched, write when and where it hatched if @pokemon.obtain_method == 1 if @pokemon.timeEggHatched - date = @pokemon.timeEggHatched.day + date = @pokemon.timeEggHatched.day month = pbGetMonthName(@pokemon.timeEggHatched.mon) - year = @pokemon.timeEggHatched.year - memo += _INTL("{1} {2}, {3}\n",date,month,year) + year = @pokemon.timeEggHatched.year + memo += _INTL("{1} {2}, {3}\n", date, month, year) end mapname = pbGetMapNameFromId(@pokemon.hatched_map) mapname = _INTL("Faraway place") if nil_or_empty?(mapname) - memo += sprintf("%s\n",mapname) + memo += sprintf("%s\n", mapname) memo += _INTL("Egg hatched.\n") else - memo += "\n" # Empty line + memo += "\n" # Empty line end # Write characteristic if showNature best_stat = nil best_iv = 0 stats_order = [:HP, :ATTACK, :DEFENSE, :SPEED, :SPECIAL_ATTACK, :SPECIAL_DEFENSE] - start_point = @pokemon.personalID % stats_order.length # Tiebreaker + start_point = @pokemon.personalID % stats_order.length # Tiebreaker for i in 0...stats_order.length stat = stats_order[(i + start_point) % stats_order.length] if !best_stat || @pokemon.iv[stat] > @pokemon.iv[best_stat] @@ -595,155 +605,158 @@ class PokemonSummary_Scene end end characteristics = { - :HP => [_INTL("Loves to eat."), - _INTL("Takes plenty of siestas."), - _INTL("Nods off a lot."), - _INTL("Scatters things often."), - _INTL("Likes to relax.")], - :ATTACK => [_INTL("Proud of its power."), - _INTL("Likes to thrash about."), - _INTL("A little quick tempered."), - _INTL("Likes to fight."), - _INTL("Quick tempered.")], - :DEFENSE => [_INTL("Sturdy body."), - _INTL("Capable of taking hits."), - _INTL("Highly persistent."), - _INTL("Good endurance."), - _INTL("Good perseverance.")], - :SPECIAL_ATTACK => [_INTL("Highly curious."), - _INTL("Mischievous."), - _INTL("Thoroughly cunning."), - _INTL("Often lost in thought."), - _INTL("Very finicky.")], + :HP => [_INTL("Loves to eat."), + _INTL("Takes plenty of siestas."), + _INTL("Nods off a lot."), + _INTL("Scatters things often."), + _INTL("Likes to relax.")], + :ATTACK => [_INTL("Proud of its power."), + _INTL("Likes to thrash about."), + _INTL("A little quick tempered."), + _INTL("Likes to fight."), + _INTL("Quick tempered.")], + :DEFENSE => [_INTL("Sturdy body."), + _INTL("Capable of taking hits."), + _INTL("Highly persistent."), + _INTL("Good endurance."), + _INTL("Good perseverance.")], + :SPECIAL_ATTACK => [_INTL("Highly curious."), + _INTL("Mischievous."), + _INTL("Thoroughly cunning."), + _INTL("Often lost in thought."), + _INTL("Very finicky.")], :SPECIAL_DEFENSE => [_INTL("Strong willed."), _INTL("Somewhat vain."), _INTL("Strongly defiant."), _INTL("Hates to lose."), _INTL("Somewhat stubborn.")], - :SPEED => [_INTL("Likes to run."), - _INTL("Alert to sounds."), - _INTL("Impetuous and silly."), - _INTL("Somewhat of a clown."), - _INTL("Quick to flee.")] + :SPEED => [_INTL("Likes to run."), + _INTL("Alert to sounds."), + _INTL("Impetuous and silly."), + _INTL("Somewhat of a clown."), + _INTL("Quick to flee.")] } memo += sprintf("%s\n", characteristics[best_stat][best_iv % 5]) end # Write all text - drawFormattedTextEx(overlay,232,82,268,memo) + drawFormattedTextEx(overlay, 232, 82, 268, memo) end def drawPageThree overlay = @sprites["overlay"].bitmap - base = Color.new(248,248,248) - shadow = Color.new(104,104,104) + base = Color.new(248, 248, 248) + shadow = Color.new(104, 104, 104) # Determine which stats are boosted and lowered by the Pokémon's nature statshadows = {} GameData::Stat.each_main { |s| statshadows[s.id] = shadow } if !@pokemon.shadowPokemon? || @pokemon.heartStage > 3 @pokemon.nature_for_stats.stat_changes.each do |change| - statshadows[change[0]] = Color.new(136,96,72) if change[1] > 0 - statshadows[change[0]] = Color.new(64,120,152) if change[1] < 0 + statshadows[change[0]] = Color.new(136, 96, 72) if change[1] > 0 + statshadows[change[0]] = Color.new(64, 120, 152) if change[1] < 0 end end # Write various bits of text textpos = [ - [_INTL("HP"),292,70,2,base,statshadows[:HP]], - [sprintf("%d/%d",@pokemon.hp,@pokemon.totalhp),462,70,1,Color.new(64,64,64),Color.new(176,176,176)], - [_INTL("Attack"),248,114,0,base,statshadows[:ATTACK]], - [sprintf("%d",@pokemon.attack),456,114,1,Color.new(64,64,64),Color.new(176,176,176)], - [_INTL("Defense"),248,146,0,base,statshadows[:DEFENSE]], - [sprintf("%d",@pokemon.defense),456,146,1,Color.new(64,64,64),Color.new(176,176,176)], - [_INTL("Sp. Atk"),248,178,0,base,statshadows[:SPECIAL_ATTACK]], - [sprintf("%d",@pokemon.spatk),456,178,1,Color.new(64,64,64),Color.new(176,176,176)], - [_INTL("Sp. Def"),248,210,0,base,statshadows[:SPECIAL_DEFENSE]], - [sprintf("%d",@pokemon.spdef),456,210,1,Color.new(64,64,64),Color.new(176,176,176)], - [_INTL("Speed"),248,242,0,base,statshadows[:SPEED]], - [sprintf("%d",@pokemon.speed),456,242,1,Color.new(64,64,64),Color.new(176,176,176)], - [_INTL("Ability"),224,278,0,base,shadow] + [_INTL("HP"), 292, 70, 2, base, statshadows[:HP]], + [sprintf("%d/%d", @pokemon.hp, @pokemon.totalhp), 462, 70, 1, Color.new(64, 64, 64), Color.new(176, 176, 176)], + [_INTL("Attack"), 248, 114, 0, base, statshadows[:ATTACK]], + [sprintf("%d", @pokemon.attack), 456, 114, 1, Color.new(64, 64, 64), Color.new(176, 176, 176)], + [_INTL("Defense"), 248, 146, 0, base, statshadows[:DEFENSE]], + [sprintf("%d", @pokemon.defense), 456, 146, 1, Color.new(64, 64, 64), Color.new(176, 176, 176)], + [_INTL("Sp. Atk"), 248, 178, 0, base, statshadows[:SPECIAL_ATTACK]], + [sprintf("%d", @pokemon.spatk), 456, 178, 1, Color.new(64, 64, 64), Color.new(176, 176, 176)], + [_INTL("Sp. Def"), 248, 210, 0, base, statshadows[:SPECIAL_DEFENSE]], + [sprintf("%d", @pokemon.spdef), 456, 210, 1, Color.new(64, 64, 64), Color.new(176, 176, 176)], + [_INTL("Speed"), 248, 242, 0, base, statshadows[:SPEED]], + [sprintf("%d", @pokemon.speed), 456, 242, 1, Color.new(64, 64, 64), Color.new(176, 176, 176)], + [_INTL("Ability"), 224, 278, 0, base, shadow] ] # Draw ability name and description ability = @pokemon.ability if ability - textpos.push([ability.name,362,278,0,Color.new(64,64,64),Color.new(176,176,176)]) - drawTextEx(overlay,224,320,282,2,ability.description,Color.new(64,64,64),Color.new(176,176,176)) + textpos.push([ability.name, 362, 278, 0, Color.new(64, 64, 64), Color.new(176, 176, 176)]) + drawTextEx(overlay, 224, 320, 282, 2, ability.description, Color.new(64, 64, 64), Color.new(176, 176, 176)) end # Draw all text - pbDrawTextPositions(overlay,textpos) + pbDrawTextPositions(overlay, textpos) # Draw HP bar - if @pokemon.hp>0 - w = @pokemon.hp*96*1.0/@pokemon.totalhp - w = 1 if w<1 - w = ((w/2).round)*2 + if @pokemon.hp > 0 + w = @pokemon.hp * 96 * 1.0 / @pokemon.totalhp + w = 1 if w < 1 + w = ((w / 2).round) * 2 hpzone = 0 - hpzone = 1 if @pokemon.hp<=(@pokemon.totalhp/2).floor - hpzone = 2 if @pokemon.hp<=(@pokemon.totalhp/4).floor + hpzone = 1 if @pokemon.hp <= (@pokemon.totalhp / 2).floor + hpzone = 2 if @pokemon.hp <= (@pokemon.totalhp / 4).floor imagepos = [ - ["Graphics/Pictures/Summary/overlay_hp",360,110,0,hpzone*6,w,6] + ["Graphics/Pictures/Summary/overlay_hp", 360, 110, 0, hpzone * 6, w, 6] ] - pbDrawImagePositions(overlay,imagepos) + pbDrawImagePositions(overlay, imagepos) end end def drawPageFour overlay = @sprites["overlay"].bitmap - moveBase = Color.new(64,64,64) - moveShadow = Color.new(176,176,176) - ppBase = [moveBase, # More than 1/2 of total PP - Color.new(248,192,0), # 1/2 of total PP or less - Color.new(248,136,32), # 1/4 of total PP or less - Color.new(248,72,72)] # Zero PP - ppShadow = [moveShadow, # More than 1/2 of total PP - Color.new(144,104,0), # 1/2 of total PP or less - Color.new(144,72,24), # 1/4 of total PP or less - Color.new(136,48,48)] # Zero PP - @sprites["pokemon"].visible = true + moveBase = Color.new(64, 64, 64) + moveShadow = Color.new(176, 176, 176) + ppBase = [moveBase, # More than 1/2 of total PP + Color.new(248, 192, 0), # 1/2 of total PP or less + Color.new(248, 136, 32), # 1/4 of total PP or less + Color.new(248, 72, 72)] # Zero PP + ppShadow = [moveShadow, # More than 1/2 of total PP + Color.new(144, 104, 0), # 1/2 of total PP or less + Color.new(144, 72, 24), # 1/4 of total PP or less + Color.new(136, 48, 48)] # Zero PP + @sprites["pokemon"].visible = true @sprites["pokeicon"].visible = false @sprites["itemicon"].visible = true - textpos = [] + textpos = [] imagepos = [] # Write move names, types and PP amounts for each known move yPos = 92 for i in 0...Pokemon::MAX_MOVES - move=@pokemon.moves[i] + move = @pokemon.moves[i] if move type_number = GameData::Type.get(move.type).id_number imagepos.push(["Graphics/Pictures/types", 248, yPos + 8, 0, type_number * 28, 64, 28]) - textpos.push([move.name,316,yPos,0,moveBase,moveShadow]) - if move.total_pp>0 - textpos.push([_INTL("PP"),342,yPos+32,0,moveBase,moveShadow]) + textpos.push([move.name, 316, yPos, 0, moveBase, moveShadow]) + if move.total_pp > 0 + textpos.push([_INTL("PP"), 342, yPos + 32, 0, moveBase, moveShadow]) ppfraction = 0 - if move.pp==0; ppfraction = 3 - elsif move.pp*4<=move.total_pp; ppfraction = 2 - elsif move.pp*2<=move.total_pp; ppfraction = 1 + if move.pp == 0; + ppfraction = 3 + elsif move.pp * 4 <= move.total_pp; + ppfraction = 2 + elsif move.pp * 2 <= move.total_pp; + ppfraction = 1 end - textpos.push([sprintf("%d/%d",move.pp,move.total_pp),460,yPos+32,1,ppBase[ppfraction],ppShadow[ppfraction]]) + textpos.push([sprintf("%d/%d", move.pp, move.total_pp), 460, yPos + 32, 1, ppBase[ppfraction], ppShadow[ppfraction]]) end else - textpos.push(["-",316,yPos,0,moveBase,moveShadow]) - textpos.push(["--",442,yPos+32,1,moveBase,moveShadow]) + textpos.push(["-", 316, yPos, 0, moveBase, moveShadow]) + textpos.push(["--", 442, yPos + 32, 1, moveBase, moveShadow]) end yPos += 64 end # Draw all text and images - pbDrawTextPositions(overlay,textpos) - pbDrawImagePositions(overlay,imagepos) + pbDrawTextPositions(overlay, textpos) + pbDrawImagePositions(overlay, imagepos) end def drawPageFourSelecting(move_to_learn) overlay = @sprites["overlay"].bitmap overlay.clear - base = Color.new(248,248,248) - shadow = Color.new(104,104,104) - moveBase = Color.new(64,64,64) - moveShadow = Color.new(176,176,176) - ppBase = [moveBase, # More than 1/2 of total PP - Color.new(248,192,0), # 1/2 of total PP or less - Color.new(248,136,32), # 1/4 of total PP or less - Color.new(248,72,72)] # Zero PP - ppShadow = [moveShadow, # More than 1/2 of total PP - Color.new(144,104,0), # 1/2 of total PP or less - Color.new(144,72,24), # 1/4 of total PP or less - Color.new(136,48,48)] # Zero PP + base = Color.new(248, 248, 248) + shadow = Color.new(104, 104, 104) + moveBase = Color.new(64, 64, 64) + moveShadow = Color.new(176, 176, 176) + ppBase = [moveBase, # More than 1/2 of total PP + Color.new(248, 192, 0), # 1/2 of total PP or less + Color.new(248, 136, 32), # 1/4 of total PP or less + Color.new(248, 72, 72)] # Zero PP + ppShadow = [moveShadow, # More than 1/2 of total PP + Color.new(144, 104, 0), # 1/2 of total PP or less + Color.new(144, 72, 24), # 1/4 of total PP or less + Color.new(136, 48, 48)] # Zero PP # Set background image if move_to_learn @sprites["background"].setBitmap("Graphics/Pictures/Summary/bg_learnmove") @@ -752,10 +765,10 @@ class PokemonSummary_Scene end # Write various bits of text textpos = [ - [_INTL("MOVES"),26,10,0,base,shadow], - [_INTL("CATEGORY"),20,116,0,base,shadow], - [_INTL("POWER"),20,148,0,base,shadow], - [_INTL("ACCURACY"),20,180,0,base,shadow] + [_INTL("MOVES"), 26, 10, 0, base, shadow], + [_INTL("CATEGORY"), 20, 116, 0, base, shadow], + [_INTL("POWER"), 20, 148, 0, base, shadow], + [_INTL("ACCURACY"), 20, 180, 0, base, shadow] ] imagepos = [] # Write move names, types and PP amounts for each known move @@ -764,42 +777,45 @@ class PokemonSummary_Scene limit = (move_to_learn) ? Pokemon::MAX_MOVES + 1 : Pokemon::MAX_MOVES for i in 0...limit move = @pokemon.moves[i] - if i==Pokemon::MAX_MOVES + if i == Pokemon::MAX_MOVES move = move_to_learn yPos += 20 end if move type_number = GameData::Type.get(move.type).id_number imagepos.push(["Graphics/Pictures/types", 248, yPos + 8, 0, type_number * 28, 64, 28]) - textpos.push([move.name,316,yPos,0,moveBase,moveShadow]) - if move.total_pp>0 - textpos.push([_INTL("PP"),342,yPos+32,0,moveBase,moveShadow]) + textpos.push([move.name, 316, yPos, 0, moveBase, moveShadow]) + if move.total_pp > 0 + textpos.push([_INTL("PP"), 342, yPos + 32, 0, moveBase, moveShadow]) ppfraction = 0 - if move.pp==0; ppfraction = 3 - elsif move.pp*4<=move.total_pp; ppfraction = 2 - elsif move.pp*2<=move.total_pp; ppfraction = 1 + if move.pp == 0; + ppfraction = 3 + elsif move.pp * 4 <= move.total_pp; + ppfraction = 2 + elsif move.pp * 2 <= move.total_pp; + ppfraction = 1 end - textpos.push([sprintf("%d/%d",move.pp,move.total_pp),460,yPos+32,1,ppBase[ppfraction],ppShadow[ppfraction]]) + textpos.push([sprintf("%d/%d", move.pp, move.total_pp), 460, yPos + 32, 1, ppBase[ppfraction], ppShadow[ppfraction]]) end else - textpos.push(["-",316,yPos,0,moveBase,moveShadow]) - textpos.push(["--",442,yPos+32,1,moveBase,moveShadow]) + textpos.push(["-", 316, yPos, 0, moveBase, moveShadow]) + textpos.push(["--", 442, yPos + 32, 1, moveBase, moveShadow]) end yPos += 64 end # Draw all text and images - pbDrawTextPositions(overlay,textpos) - pbDrawImagePositions(overlay,imagepos) + pbDrawTextPositions(overlay, textpos) + pbDrawImagePositions(overlay, imagepos) # Draw Pokémon's type icon(s) type1_number = GameData::Type.get(@pokemon.type1).id_number type2_number = GameData::Type.get(@pokemon.type2).id_number type1rect = Rect.new(0, type1_number * 28, 64, 28) type2rect = Rect.new(0, type2_number * 28, 64, 28) - if @pokemon.type1==@pokemon.type2 - overlay.blt(130,78,@typebitmap.bitmap,type1rect) + if @pokemon.type1 == @pokemon.type2 + overlay.blt(130, 78, @typebitmap.bitmap, type1rect) else - overlay.blt(96,78,@typebitmap.bitmap,type1rect) - overlay.blt(166,78,@typebitmap.bitmap,type2rect) + overlay.blt(96, 78, @typebitmap.bitmap, type1rect) + overlay.blt(166, 78, @typebitmap.bitmap, type2rect) end end @@ -817,9 +833,12 @@ class PokemonSummary_Scene textpos = [] # Write power and accuracy values for selected move case selected_move.base_damage - when 0 then textpos.push(["---", 216, 148, 1, base, shadow]) # Status move - when 1 then textpos.push(["???", 216, 148, 1, base, shadow]) # Variable power move - else textpos.push([selected_move.base_damage.to_s, 216, 148, 1, base, shadow]) + when 0 then + textpos.push(["---", 216, 148, 1, base, shadow]) # Status move + when 1 then + textpos.push(["???", 216, 148, 1, base, shadow]) # Variable power move + else + textpos.push([selected_move.base_damage.to_s, 216, 148, 1, base, shadow]) end if selected_move.accuracy == 0 textpos.push(["---", 216, 180, 1, base, shadow]) @@ -837,29 +856,29 @@ class PokemonSummary_Scene def drawPageFive overlay = @sprites["overlay"].bitmap - @sprites["uparrow"].visible = false + @sprites["uparrow"].visible = false @sprites["downarrow"].visible = false # Write various bits of text textpos = [ - [_INTL("No. of Ribbons:"),234,326,0,Color.new(64,64,64),Color.new(176,176,176)], - [@pokemon.numRibbons.to_s,450,326,1,Color.new(64,64,64),Color.new(176,176,176)], + [_INTL("No. of Ribbons:"), 234, 326, 0, Color.new(64, 64, 64), Color.new(176, 176, 176)], + [@pokemon.numRibbons.to_s, 450, 326, 1, Color.new(64, 64, 64), Color.new(176, 176, 176)], ] # Draw all text - pbDrawTextPositions(overlay,textpos) + pbDrawTextPositions(overlay, textpos) # Show all ribbons imagepos = [] coord = 0 - for i in @ribbonOffset*4...@ribbonOffset*4+12 + for i in @ribbonOffset * 4...@ribbonOffset * 4 + 12 break if !@pokemon.ribbons[i] ribbon_data = GameData::Ribbon.get(@pokemon.ribbons[i]) ribn = ribbon_data.id_number - 1 imagepos.push(["Graphics/Pictures/ribbons", - 230 + 68 * (coord % 4), 78 + 68 * (coord / 4).floor, - 64 * (ribn % 8), 64 * (ribn / 8).floor, 64, 64]) + 230 + 68 * (coord % 4), 78 + 68 * (coord / 4).floor, + 64 * (ribn % 8), 64 * (ribn / 8).floor, 64, 64]) coord += 1 end # Draw all images - pbDrawImagePositions(overlay,imagepos) + pbDrawImagePositions(overlay, imagepos) end def drawSelectedRibbon(ribbonid) @@ -867,32 +886,32 @@ class PokemonSummary_Scene drawPage(5) # Set various values overlay = @sprites["overlay"].bitmap - base = Color.new(64,64,64) - shadow = Color.new(176,176,176) - nameBase = Color.new(248,248,248) - nameShadow = Color.new(104,104,104) + base = Color.new(64, 64, 64) + shadow = Color.new(176, 176, 176) + nameBase = Color.new(248, 248, 248) + nameShadow = Color.new(104, 104, 104) # Get data for selected ribbon name = ribbonid ? GameData::Ribbon.get(ribbonid).name : "" desc = ribbonid ? GameData::Ribbon.get(ribbonid).description : "" # Draw the description box imagepos = [ - ["Graphics/Pictures/Summary/overlay_ribbon",8,280] + ["Graphics/Pictures/Summary/overlay_ribbon", 8, 280] ] - pbDrawImagePositions(overlay,imagepos) + pbDrawImagePositions(overlay, imagepos) # Draw name of selected ribbon textpos = [ - [name,18,280,0,nameBase,nameShadow] + [name, 18, 280, 0, nameBase, nameShadow] ] - pbDrawTextPositions(overlay,textpos) + pbDrawTextPositions(overlay, textpos) # Draw selected ribbon's description - drawTextEx(overlay,18,322,480,2,desc,base,shadow) + drawTextEx(overlay, 18, 322, 480, 2, desc, base, shadow) end def pbGoToPrevious newindex = @partyindex - while newindex>0 + while newindex > 0 newindex -= 1 - if @party[newindex] && (@page==1 || !@party[newindex].egg?) + if @party[newindex] && (@page == 1 || !@party[newindex].egg?) @partyindex = newindex break end @@ -901,9 +920,9 @@ class PokemonSummary_Scene def pbGoToNext newindex = @partyindex - while newindex<@party.length-1 + while newindex < @party.length - 1 newindex += 1 - if @party[newindex] && (@page==1 || !@party[newindex].egg?) + if @party[newindex] && (@page == 1 || !@party[newindex].egg?) @partyindex = newindex break end @@ -928,17 +947,17 @@ class PokemonSummary_Scene def pbMoveSelection @sprites["movesel"].visible = true - @sprites["movesel"].index = 0 - selmove = 0 + @sprites["movesel"].index = 0 + selmove = 0 oldselmove = 0 switching = false - drawSelectedMove(nil,@pokemon.moves[selmove]) + drawSelectedMove(nil, @pokemon.moves[selmove]) loop do Graphics.update Input.update pbUpdate - if @sprites["movepresel"].index==@sprites["movesel"].index - @sprites["movepresel"].z = @sprites["movesel"].z+1 + if @sprites["movepresel"].index == @sprites["movesel"].index + @sprites["movepresel"].z = @sprites["movesel"].z + 1 else @sprites["movepresel"].z = @sprites["movesel"].z end @@ -949,67 +968,67 @@ class PokemonSummary_Scene switching = false elsif Input.trigger?(Input::USE) pbPlayDecisionSE - if selmove==Pokemon::MAX_MOVES + if selmove == Pokemon::MAX_MOVES break if !switching @sprites["movepresel"].visible = false switching = false else if !@pokemon.shadowPokemon? if !switching - @sprites["movepresel"].index = selmove + @sprites["movepresel"].index = selmove @sprites["movepresel"].visible = true oldselmove = selmove switching = true else - tmpmove = @pokemon.moves[oldselmove] + tmpmove = @pokemon.moves[oldselmove] @pokemon.moves[oldselmove] = @pokemon.moves[selmove] - @pokemon.moves[selmove] = tmpmove + @pokemon.moves[selmove] = tmpmove @sprites["movepresel"].visible = false switching = false - drawSelectedMove(nil,@pokemon.moves[selmove]) + drawSelectedMove(nil, @pokemon.moves[selmove]) end end end elsif Input.trigger?(Input::UP) selmove -= 1 - if selmove=@pokemon.numMoves - selmove = @pokemon.numMoves-1 + if selmove < Pokemon::MAX_MOVES && selmove >= @pokemon.numMoves + selmove = @pokemon.numMoves - 1 end - selmove = 0 if selmove>=Pokemon::MAX_MOVES - selmove = @pokemon.numMoves-1 if selmove<0 + selmove = 0 if selmove >= Pokemon::MAX_MOVES + selmove = @pokemon.numMoves - 1 if selmove < 0 @sprites["movesel"].index = selmove pbPlayCursorSE - drawSelectedMove(nil,@pokemon.moves[selmove]) + drawSelectedMove(nil, @pokemon.moves[selmove]) elsif Input.trigger?(Input::DOWN) selmove += 1 - selmove = 0 if selmove=@pokemon.numMoves - selmove = 0 if selmove>=Pokemon::MAX_MOVES - selmove = Pokemon::MAX_MOVES if selmove<0 + selmove = 0 if selmove < Pokemon::MAX_MOVES && selmove >= @pokemon.numMoves + selmove = 0 if selmove >= Pokemon::MAX_MOVES + selmove = Pokemon::MAX_MOVES if selmove < 0 @sprites["movesel"].index = selmove pbPlayCursorSE - drawSelectedMove(nil,@pokemon.moves[selmove]) + drawSelectedMove(nil, @pokemon.moves[selmove]) end end - @sprites["movesel"].visible=false + @sprites["movesel"].visible = false end def pbRibbonSelection @sprites["ribbonsel"].visible = true - @sprites["ribbonsel"].index = 0 - selribbon = @ribbonOffset*4 + @sprites["ribbonsel"].index = 0 + selribbon = @ribbonOffset * 4 oldselribbon = selribbon switching = false numRibbons = @pokemon.ribbons.length - numRows = [((numRibbons+3)/4).floor,3].max + numRows = [((numRibbons + 3) / 4).floor, 3].max drawSelectedRibbon(@pokemon.ribbons[selribbon]) loop do - @sprites["uparrow"].visible = (@ribbonOffset>0) - @sprites["downarrow"].visible = (@ribbonOffset 0) + @sprites["downarrow"].visible = (@ribbonOffset < numRows - 3) Graphics.update Input.update pbUpdate - if @sprites["ribbonpresel"].index==@sprites["ribbonsel"].index - @sprites["ribbonpresel"].z = @sprites["ribbonsel"].z+1 + if @sprites["ribbonpresel"].index == @sprites["ribbonsel"].index + @sprites["ribbonpresel"].z = @sprites["ribbonsel"].z + 1 else @sprites["ribbonpresel"].z = @sprites["ribbonsel"].z end @@ -1023,20 +1042,20 @@ class PokemonSummary_Scene if !switching if @pokemon.ribbons[selribbon] pbPlayDecisionSE - @sprites["ribbonpresel"].index = selribbon-@ribbonOffset*4 + @sprites["ribbonpresel"].index = selribbon - @ribbonOffset * 4 oldselribbon = selribbon @sprites["ribbonpresel"].visible = true switching = true end else pbPlayDecisionSE - tmpribbon = @pokemon.ribbons[oldselribbon] + tmpribbon = @pokemon.ribbons[oldselribbon] @pokemon.ribbons[oldselribbon] = @pokemon.ribbons[selribbon] - @pokemon.ribbons[selribbon] = tmpribbon + @pokemon.ribbons[selribbon] = tmpribbon if @pokemon.ribbons[oldselribbon] || @pokemon.ribbons[selribbon] @pokemon.ribbons.compact! - if selribbon>=numRibbons - selribbon = numRibbons-1 + if selribbon >= numRibbons + selribbon = numRibbons - 1 hasMovedCursor = true end end @@ -1046,32 +1065,32 @@ class PokemonSummary_Scene end elsif Input.trigger?(Input::UP) selribbon -= 4 - selribbon += numRows*4 if selribbon<0 + selribbon += numRows * 4 if selribbon < 0 hasMovedCursor = true pbPlayCursorSE elsif Input.trigger?(Input::DOWN) selribbon += 4 - selribbon -= numRows*4 if selribbon>=numRows*4 + selribbon -= numRows * 4 if selribbon >= numRows * 4 hasMovedCursor = true pbPlayCursorSE elsif Input.trigger?(Input::LEFT) selribbon -= 1 - selribbon += 4 if selribbon%4==3 + selribbon += 4 if selribbon % 4 == 3 hasMovedCursor = true pbPlayCursorSE elsif Input.trigger?(Input::RIGHT) selribbon += 1 - selribbon -= 4 if selribbon%4==0 + selribbon -= 4 if selribbon % 4 == 0 hasMovedCursor = true pbPlayCursorSE end if hasMovedCursor - @ribbonOffset = (selribbon/4).floor if selribbon<@ribbonOffset*4 - @ribbonOffset = (selribbon/4).floor-2 if selribbon>=(@ribbonOffset+3)*4 - @ribbonOffset = 0 if @ribbonOffset<0 - @ribbonOffset = numRows-3 if @ribbonOffset>numRows-3 - @sprites["ribbonsel"].index = selribbon-@ribbonOffset*4 - @sprites["ribbonpresel"].index = oldselribbon-@ribbonOffset*4 + @ribbonOffset = (selribbon / 4).floor if selribbon < @ribbonOffset * 4 + @ribbonOffset = (selribbon / 4).floor - 2 if selribbon >= (@ribbonOffset + 3) * 4 + @ribbonOffset = 0 if @ribbonOffset < 0 + @ribbonOffset = numRows - 3 if @ribbonOffset > numRows - 3 + @sprites["ribbonsel"].index = selribbon - @ribbonOffset * 4 + @sprites["ribbonpresel"].index = oldselribbon - @ribbonOffset * 4 drawSelectedRibbon(@pokemon.ribbons[selribbon]) end end @@ -1079,44 +1098,44 @@ class PokemonSummary_Scene end def pbMarking(pokemon) - @sprites["markingbg"].visible = true + @sprites["markingbg"].visible = true @sprites["markingoverlay"].visible = true - @sprites["markingsel"].visible = true - base = Color.new(248,248,248) - shadow = Color.new(104,104,104) + @sprites["markingsel"].visible = true + base = Color.new(248, 248, 248) + shadow = Color.new(104, 104, 104) ret = pokemon.markings markings = pokemon.markings index = 0 redraw = true - markrect = Rect.new(0,0,16,16) + markrect = Rect.new(0, 0, 16, 16) loop do # Redraw the markings and text if redraw @sprites["markingoverlay"].bitmap.clear for i in 0...6 - markrect.x = i*16 - markrect.y = (markings&(1<=3; index = 6 - else; index += 3 + if index == 7; + index = 1 + elsif index == 6; + index = 7 + elsif index >= 3; + index = 6 + else + ; index += 3 end pbPlayCursorSE elsif Input.trigger?(Input::LEFT) - if index<6 + if index < 6 index -= 1 - index += 3 if index%3==2 + index += 3 if index % 3 == 2 pbPlayCursorSE end elsif Input.trigger?(Input::RIGHT) - if index<6 + if index < 6 index += 1 - index -= 3 if index%3==0 + index -= 3 if index % 3 == 0 pbPlayCursorSE end end end - @sprites["markingbg"].visible = false + @sprites["markingbg"].visible = false @sprites["markingoverlay"].visible = false - @sprites["markingsel"].visible = false - if pokemon.markings!=ret + @sprites["markingsel"].visible = false + if pokemon.markings != ret pokemon.markings = ret return true end @@ -1182,32 +1209,32 @@ class PokemonSummary_Scene def pbOptions dorefresh = false - commands = [] + commands = [] cmdGiveItem = -1 cmdTakeItem = -1 - cmdPokedex = -1 - cmdMark = -1 + cmdPokedex = -1 + cmdMark = -1 if !@pokemon.egg? commands[cmdGiveItem = commands.length] = _INTL("Give item") commands[cmdTakeItem = commands.length] = _INTL("Take item") if @pokemon.hasItem? #commands[cmdPokedex = commands.length] = _INTL("View Pokédex") if $Trainer.has_pokedex end - commands[cmdMark = commands.length] = _INTL("Mark") - commands[commands.length] = _INTL("Cancel") + commands[cmdMark = commands.length] = _INTL("Mark") + commands[commands.length] = _INTL("Cancel") command = pbShowCommands(commands) - if cmdGiveItem>=0 && command==cmdGiveItem + if cmdGiveItem >= 0 && command == cmdGiveItem item = nil pbFadeOutIn { scene = PokemonBag_Scene.new - screen = PokemonBagScreen.new(scene,$PokemonBag) + screen = PokemonBagScreen.new(scene, $PokemonBag) item = screen.pbChooseItemScreen(Proc.new { |itm| GameData::Item.get(itm).can_hold? }) } if item - dorefresh = pbGiveItemToPokemon(item,@pokemon,self,@partyindex) + dorefresh = pbGiveItemToPokemon(item, @pokemon, self, @partyindex) end - elsif cmdTakeItem>=0 && command==cmdTakeItem - dorefresh = pbTakeItemFromPokemon(@pokemon,self) - elsif cmdPokedex>=0 && command==cmdPokedex + elsif cmdTakeItem >= 0 && command == cmdTakeItem + dorefresh = pbTakeItemFromPokemon(@pokemon, self) + elsif cmdPokedex >= 0 && command == cmdPokedex $Trainer.pokedex.register_last_seen(@pokemon) pbFadeOutIn { scene = PokemonPokedexInfo_Scene.new @@ -1215,7 +1242,7 @@ class PokemonSummary_Scene screen.pbStartSceneSingle(@pokemon.species) } dorefresh = true - elsif cmdMark>=0 && command==cmdMark + elsif cmdMark >= 0 && command == cmdMark dorefresh = pbMarking(@pokemon) end return dorefresh @@ -1238,25 +1265,25 @@ class PokemonSummary_Scene break elsif Input.trigger?(Input::UP) selmove -= 1 - selmove = maxmove if selmove<0 - if selmove=@pokemon.numMoves - selmove = @pokemon.numMoves-1 + selmove = maxmove if selmove < 0 + if selmove < Pokemon::MAX_MOVES && selmove >= @pokemon.numMoves + selmove = @pokemon.numMoves - 1 end @sprites["movesel"].index = selmove - selected_move = (selmove==Pokemon::MAX_MOVES) ? new_move : @pokemon.moves[selmove] - drawSelectedMove(new_move,selected_move) + selected_move = (selmove == Pokemon::MAX_MOVES) ? new_move : @pokemon.moves[selmove] + drawSelectedMove(new_move, selected_move) elsif Input.trigger?(Input::DOWN) selmove += 1 - selmove = 0 if selmove>maxmove - if selmove=@pokemon.numMoves + selmove = 0 if selmove > maxmove + if selmove < Pokemon::MAX_MOVES && selmove >= @pokemon.numMoves selmove = (new_move) ? maxmove : 0 end @sprites["movesel"].index = selmove - selected_move = (selmove==Pokemon::MAX_MOVES) ? new_move : @pokemon.moves[selmove] - drawSelectedMove(new_move,selected_move) + selected_move = (selmove == Pokemon::MAX_MOVES) ? new_move : @pokemon.moves[selmove] + drawSelectedMove(new_move, selected_move) end end - return (selmove==Pokemon::MAX_MOVES) ? -1 : selmove + return (selmove == Pokemon::MAX_MOVES) ? -1 : selmove end def pbScene @@ -1273,11 +1300,11 @@ class PokemonSummary_Scene pbPlayCloseMenuSE break elsif Input.trigger?(Input::USE) - if @page==4 + if @page == 4 pbPlayDecisionSE pbMoveSelection dorefresh = true - elsif @page==5 + elsif @page == 5 pbPlayDecisionSE pbRibbonSelection dorefresh = true @@ -1285,18 +1312,18 @@ class PokemonSummary_Scene pbPlayDecisionSE dorefresh = pbOptions end - elsif Input.trigger?(Input::UP) && @partyindex>0 + elsif Input.trigger?(Input::UP) && @partyindex > 0 oldindex = @partyindex pbGoToPrevious - if @partyindex!=oldindex + if @partyindex != oldindex pbChangePokemon @ribbonOffset = 0 dorefresh = true end - elsif Input.trigger?(Input::DOWN) && @partyindex<@party.length-1 + elsif Input.trigger?(Input::DOWN) && @partyindex < @party.length - 1 oldindex = @partyindex pbGoToNext - if @partyindex!=oldindex + if @partyindex != oldindex pbChangePokemon @ribbonOffset = 0 dorefresh = true @@ -1304,9 +1331,9 @@ class PokemonSummary_Scene elsif Input.trigger?(Input::LEFT) && !@pokemon.egg? oldpage = @page @page -= 1 - @page = 1 if @page<1 - @page = 5 if @page>5 - if @page!=oldpage # Move to next page + @page = 1 if @page < 1 + @page = 5 if @page > 5 + if @page != oldpage # Move to next page pbSEPlay("GUI summary change page") @ribbonOffset = 0 dorefresh = true @@ -1314,9 +1341,9 @@ class PokemonSummary_Scene elsif Input.trigger?(Input::RIGHT) && !@pokemon.egg? oldpage = @page @page += 1 - @page = 1 if @page<1 - @page = 5 if @page>5 - if @page!=oldpage # Move to next page + @page = 1 if @page < 1 + @page = 5 if @page > 5 + if @page != oldpage # Move to next page pbSEPlay("GUI summary change page") @ribbonOffset = 0 dorefresh = true @@ -1334,21 +1361,21 @@ end # #=============================================================================== class PokemonSummaryScreen - def initialize(scene,inbattle=false) + def initialize(scene, inbattle = false) @scene = scene @inbattle = inbattle end - def pbStartScreen(party,partyindex) - @scene.pbStartScene(party,partyindex,@inbattle) + def pbStartScreen(party, partyindex) + @scene.pbStartScene(party, partyindex, @inbattle) ret = @scene.pbScene @scene.pbEndScene return ret end - def pbStartForgetScreen(party,partyindex,move_to_learn) + def pbStartForgetScreen(party, partyindex, move_to_learn) ret = -1 - @scene.pbStartForgetScene(party,partyindex,move_to_learn) + @scene.pbStartForgetScene(party, partyindex, move_to_learn) loop do ret = @scene.pbChooseMoveToForget(move_to_learn) break if ret < 0 || !move_to_learn @@ -1359,9 +1386,9 @@ class PokemonSummaryScreen return ret end - def pbStartChooseMoveScreen(party,partyindex,message) + def pbStartChooseMoveScreen(party, partyindex, message) ret = -1 - @scene.pbStartForgetScene(party,partyindex,nil) + @scene.pbStartForgetScene(party, partyindex, nil) pbMessage(message) { @scene.pbUpdate } loop do ret = @scene.pbChooseMoveToForget(nil) @@ -1376,16 +1403,16 @@ end #=============================================================================== # #=============================================================================== -def pbChooseMove(pokemon,variableNumber,nameVarNumber) +def pbChooseMove(pokemon, variableNumber, nameVarNumber) return if !pokemon ret = -1 pbFadeOutIn { scene = PokemonSummary_Scene.new screen = PokemonSummaryScreen.new(scene) - ret = screen.pbStartForgetScreen([pokemon],0,nil) + ret = screen.pbStartForgetScreen([pokemon], 0, nil) } $game_variables[variableNumber] = ret - if ret>=0 + if ret >= 0 $game_variables[nameVarNumber] = pokemon.moves[ret].name else $game_variables[nameVarNumber] = "" diff --git a/Data/System.rxdata b/Data/System.rxdata index 7df92c19a..41f208f17 100644 Binary files a/Data/System.rxdata and b/Data/System.rxdata differ