- 81
- Posts
- 8
- Years
- Seen Sep 7, 2019
I'm adding Sun and Moon Pokemon to the BW essentials and when I head over to the Pokemon Form section in the Pokedex for the SM Pokemon I get this error https://prntscr.com/d6kxos
Pokemon BW Script: Highlighted in Red
Pokemon BW Script: Highlighted in Red
Code:
#===============================================================================
# € BW Pokedex Nest/Form by KleinStudio
#===============================================================================
def pbFindEncounter(encounter,species)
return false if !encounter
for i in 0...encounter.length
next if !encounter[i]
for j in 0...encounter[i].length
return true if encounter[i][j][0]==species
end
end
return false
end
class MapBottomSprite < SpriteWrapper
attr_reader :mapname,:maplocation
def initialize(viewport=nil)
super(viewport)
@mapname=""
@maplocation=""
@mapdetails=""
@nonests=false
@thisbitmap=BitmapWrapper.new(Graphics.width,Graphics.height)
pbSetSystemFont(@thisbitmap)
self.y=0
self.x=0
self.bitmap=@thisbitmap
refresh
end
def dispose
@thisbitmap.dispose
super
end
def nonests=(value)
@nonests=value
refresh
end
def mapname=(value)
if @mapname!=value
@mapname=value
refresh
end
end
def maplocation=(value)
if @maplocation!=value
@maplocation=value
refresh
end
end
def mapdetails=(value) # From Wichu
if @mapdetails!=value
@mapdetails=value
refresh
end
end
def refresh
self.bitmap.clear
if @nonests
imagepos=[[sprintf("Graphics/Pictures/Pokedex/pokedexNestUnknown"),108,468,0,0,-1,-1]]
end
textpos=[
[@mapname,18,-2,0,Color.new(248,248,248),Color.new(0,0,0)],
[@maplocation,18,354,0,Color.new(248,248,248),Color.new(0,0,0)],
[@mapdetails,Graphics.width-16,354,1,Color.new(248,248,248),Color.new(0,0,0)]
]
if @nonests
textpos.push([_INTL("Area Unknown"),Graphics.width/2,560,2,
Color.new(255,255,255),Color.new(165,165,173)])
end
pbDrawTextPositions(self.bitmap,textpos)
end
end
################################################################################
# Shows the "Nest" page of the Pokédex entry screen.
################################################################################
class PokemonNestMapScene
def pbStartScene(species,regionmap=-1)
@viewport=Viewport.new(0,0,Graphics.width,Graphics.height)
@viewport.z=99999
@sprites={}
pbRgssOpen("Data/townmap.dat","rb"){|f|
@mapdata=Marshal.load(f)
}
mappos=!$game_map ? nil : pbGetMetadata($game_map.map_id,MetadataMapPosition)
region=regionmap
if region<0 # Use player's current region
region=mappos ? mappos[0] : 0 # Region 0 default
end
@sprites["background"]=IconSprite.new(0,0,@viewport)
@sprites["background"].setBitmap(_INTL("Graphics/Pictures/Pokedex/dexbg3"))
@sprites["bginfo"]=Sprite.new(@viewport)
@sprites["bginfo"].bitmap=RPG::Cache.picture("Pokedex/dexbg3info")
@sprites["bginfo"].opacity=200
@sprites["normalbar"]=IconSprite.new(0,Graphics.height-48,@viewport)
@sprites["normalbar"].setBitmap("Graphics/Pictures/normalbar")
@sprites["entrybars"]=IconSprite.new(0,0,@viewport)
@sprites["entrybars"].setBitmap(_INTL("Graphics/Pictures/Pokedex/dexentrybars"))
@sprites["entrybars"].src_rect.set(0, 48, 512, 48)
@sprites["entryicons"]=IconSprite.new(102,740,@viewport)
@sprites["entryicons"].setBitmap("Graphics/Pictures/Pokedex/entryicons")
@sprites["entryicons"].src_rect.set(0, 126/3, 190, 126/3)
@sprites["entryicons"].z=999999
@sprites["arrowup"] = Sprite.new(@viewport)
@sprites["arrowup"].bitmap = Cache.picture("updownarrows")
@sprites["arrowup"].x=12; @sprites["arrowup"].y=744
@sprites["arrowup"].src_rect.set(0, 34, 28, 34)
@sprites["arrowup"].z=999999
@sprites["arrowdown"] = Sprite.new(@viewport)
@sprites["arrowdown"].bitmap = Cache.picture("updownarrows")
@sprites["arrowdown"].x=60; @sprites["arrowdown"].y=744
@sprites["arrowdown"].src_rect.set(28, 34, 28, 34)
@sprites["arrowdown"].z=999999
@sprites["pokeicon"]=IconSprite.new(45*2,158*2,@viewport)
@sprites["pokeicon"].setBitmap(sprintf("Graphics/Icons/icon%03d",species))
@sprites["pokeicon"].src_rect.set(0, 0, 64, 64)
@sprites["returnbuttom"]=Sprite.new(@viewport)
@sprites["returnbuttom"].bitmap=Cache.picture("globalicons")
@sprites["returnbuttom"].x=460; @sprites["returnbuttom"].y=Graphics.height-74
@sprites["returnbuttom"].src_rect.set(0, 64, 64, 64)
@sprites["overlay"]=BitmapSprite.new(Graphics.width,Graphics.height,@viewport)
pbSetSystemFont(@sprites["overlay"].bitmap)
textpos=[
["AREA",17*2,8,0,Color.new(255,255,255),Color.new(115,115,115)],
[_INTL("{1}'s AREA",PBSpecies.getName(species)),97*2,172*2,0,Color.new(255,255,255),Color.new(165,165,173)],
]
@sprites["map"]=IconSprite.new(0,400,@viewport)
@sprites["map"].setBitmap("Graphics/Pictures/TownMap/#{@mapdata[region][1]}")
@sprites["nonest"]=IconSprite.new(130,548,@viewport)
@sprites["nonest"].setBitmap("Graphics/Pictures/Pokedex/pokedexNestUnknown")
@sprites["nonest"].opacity=200
@sprites["nonest"].visible=false
pbDrawTextPositions(@sprites["overlay"].bitmap,textpos)
for hidden in REGIONMAPEXTRAS
if hidden[0]==region && hidden[1]>0 && $game_switches[hidden[1]]
if !@sprites["map2"]
@sprites["map2"]=BitmapSprite.new(512,336,@viewport)
@sprites["map2"].x=@sprites["map"].x; @sprites["map2"].y=@sprites["map"].y
end
pbDrawImagePositions(@sprites["map2"].bitmap,[
["Graphics/Pictures/TownMap/#{hidden[4]}",
hidden[2]*PokemonRegionMapScene::SQUAREWIDTH,
hidden[3]*PokemonRegionMapScene::SQUAREHEIGHT,0,0,-1,-1]
])
end
end
@point=BitmapWrapper.new(PokemonRegionMapScene::SQUAREWIDTH+4,
PokemonRegionMapScene::SQUAREHEIGHT+4)
@point.fill_rect(0,0,
PokemonRegionMapScene::SQUAREWIDTH+4,
PokemonRegionMapScene::SQUAREHEIGHT+4,Color.new(255,0,0))
@point2=BitmapWrapper.new(PokemonRegionMapScene::SQUAREWIDTH+4,
PokemonRegionMapScene::SQUAREHEIGHT+4)
@point2.fill_rect(4,0,
PokemonRegionMapScene::SQUAREWIDTH,
PokemonRegionMapScene::SQUAREHEIGHT+4,Color.new(255,0,0))
@point3=BitmapWrapper.new(PokemonRegionMapScene::SQUAREWIDTH+4,
PokemonRegionMapScene::SQUAREHEIGHT+4)
@point3.fill_rect(0,4,
PokemonRegionMapScene::SQUAREWIDTH+4,
PokemonRegionMapScene::SQUAREHEIGHT,Color.new(255,0,0))
@point4=BitmapWrapper.new(PokemonRegionMapScene::SQUAREWIDTH+4,
PokemonRegionMapScene::SQUAREHEIGHT+4)
@point4.fill_rect(4,4,
PokemonRegionMapScene::SQUAREWIDTH,
PokemonRegionMapScene::SQUAREHEIGHT,Color.new(255,0,0))
encdata=load_data("Data/encounters.dat")
points=[]
mapwidth=1+PokemonRegionMapScene::RIGHT-PokemonRegionMapScene::LEFT
for enc in encdata.keys
enctypes=encdata[enc][1]
if pbFindEncounter(enctypes,species)
mappos=pbGetMetadata(enc,MetadataMapPosition)
if mappos && mappos[0]==region
showpoint=true
for loc in @mapdata[region][2]
showpoint=false if loc[0]==mappos[1] && loc[1]==mappos[2] &&
loc[7] && !$game_switches[loc[7]]
end
if showpoint
mapsize=pbGetMetadata(enc,MetadataMapSize)
if mapsize && mapsize[0] && mapsize[0]>0
sqwidth=mapsize[0]
sqheight=(mapsize[1].length*1.0/mapsize[0]).ceil
for i in 0...sqwidth
for j in 0...sqheight
if mapsize[1][i+j*sqwidth,1].to_i>0
points[mappos[1]+i+(mappos[2]+j)*mapwidth]=true
end
end
end
else
points[mappos[1]+mappos[2]*mapwidth]=true
end
end
end
end
end
i=0
for j in 0...points.length
if points[j]
s=SpriteWrapper.new(@viewport)
s.x=(j%mapwidth)*PokemonRegionMapScene::SQUAREWIDTH-2
# s.x+=(Graphics.width-@sprites["map"].bitmap.width)/2
s.y=(j/mapwidth)*PokemonRegionMapScene::SQUAREHEIGHT-2
s.y+=400#(Graphics.height-@sprites["map"].bitmap.height)/2
if j>=1 && points[j-1]
if j>=mapwidth && points[j-mapwidth]
s.bitmap=@point4
else
s.bitmap=@point2
end
else
if j>=mapwidth && points[j-mapwidth]
s.bitmap=@point3
else
s.bitmap=@point
end
end
@sprites["point#{i}"]=s
i+=1
end
end
@numpoints=i
@sprites["mapbottom"]=MapBottomSprite.new(@viewport)
#@sprites["mapbottom"].maplocation=pbGetMessage(MessageTypes::RegionNames,region)
#@sprites["mapbottom"].mapdetails=_INTL("{1}'s nest",PBSpecies.getName(species))
if points.length==0
@sprites["mapbottom"].nonests=true
@sprites["nonest"].visible=true
end
return true
end
def pbUpdate
@numpoints.times {|i|
@sprites["point#{i}"].opacity=[64,96,128,160,128,96][(Graphics.frame_count/4)%6]
}
@sprites["background"].x-=1
@sprites["background"].x=0 if @sprites["background"].x==-64
end
def pbMapScene(listlimits)
Graphics.transition
ret=0
cb=@sprites["returnbuttom"]
loop do
Graphics.update
Input.update
pbUpdate
if Input.trigger?(Input::LEFT) or $mouse.inAreaLeft?(102,740,190/3,126/3)
ret=4
break
elsif Input.trigger?(Input::RIGHT) or $mouse.inAreaLeft?(102+((190/3)*2),740,190/3,126/3)
ret=6
break
elsif (Input.trigger?(Input::UP) or (@sprites["arrowup"] and $mouse.leftClick?(@sprites["arrowup"],28,34))) && listlimits&1==0 # If not at top of list
ret=8
break
elsif (Input.trigger?(Input::DOWN) or (@sprites["arrowdown"] and $mouse.leftClick?(@sprites["arrowdown"],28,34))) && listlimits&2==0 # If not at end of list
ret=2
break
elsif Input.trigger?(Input::B) || $mouse.inAreaLeft?(cb.x+16,cb.y+36,28,28)
ret=1
pbSEPlay("BW2Cancel")
globalIconAnim(cb,1)
pbFadeOutAndHide(@sprites)
break
end
end
return ret
end
def pbEndScene
pbDisposeSpriteHash(@sprites)
@point.dispose
@viewport.dispose
end
end
class PokemonNestMap
def initialize(scene)
@scene=scene
end
def pbStartScreen(species,region,listlimits)
@scene.pbStartScene(species,region)
[email protected](listlimits)
@scene.pbEndScene
return ret
end
end
################################################################################
# Shows the "Form" page of the Pokédex entry screen.
################################################################################
class PokedexFormScene
def pbStartScene(species)
@viewport=Viewport.new(0,0,Graphics.width,Graphics.height)
@viewport.z=99999
@species=species
@gender=$Trainer.formlastseen[species][0]
@form=$Trainer.formlastseen[species][1]
@shiny=0
@back=false
@available=pbGetAvailable # [name, gender, form]
@index = 0
@sprites={}
#$BGX = 0 if !$BGX
@sprites["background"]=IconSprite.new(0,0,@viewport)
@sprites["background"].setBitmap(_INTL("Graphics/Pictures/Pokedex/dexbg4"))
@sprites["backgrounddown"]=IconSprite.new(0,400,@viewport)
@sprites["backgrounddown"].setBitmap(_INTL("Graphics/Pictures/Pokedex/dexbg4_1"))
#@sprites["backgrounddown"].x = $BGX if $BGX
@sprites["normalbar"]=IconSprite.new(0,Graphics.height-48,@viewport)
@sprites["normalbar"].setBitmap("Graphics/Pictures/normalbar")
@sprites["entryicons"]=IconSprite.new(102,740,@viewport)
@sprites["entryicons"].setBitmap("Graphics/Pictures/Pokedex/entryicons")
@sprites["entryicons"].src_rect.set(0, (126/3)*2, 190, 126/3)
@sprites["entryicons"].z=999999
@sprites["arrowup"] = Sprite.new(@viewport)
@sprites["arrowup"].bitmap = Cache.picture("updownarrows")
@sprites["arrowup"].x=12; @sprites["arrowup"].y=744
@sprites["arrowup"].src_rect.set(0, 34, 28, 34)
@sprites["arrowup"].z=999999
@sprites["arrowdown"] = Sprite.new(@viewport)
@sprites["arrowdown"].bitmap = Cache.picture("updownarrows")
@sprites["arrowdown"].x=60; @sprites["arrowdown"].y=744
@sprites["arrowdown"].src_rect.set(28, 34, 28, 34)
@sprites["arrowdown"].z=999999
avisible=$Trainer.numFormsSeen(@species)+$Trainer.numShinySeen(@species)>1? true : false
@sprites["arrowleft"]=IconSprite.new(20,400,@viewport)
@sprites["arrowleft"].setBitmap("Graphics/Pictures/Pokedex/dexformarrow")
@sprites["arrowleft"].src_rect.set(0, 0, 24, 32)
@sprites["arrowleft"].visible=avisible
@sprites["arrowright"]=IconSprite.new(470,400,@viewport)
@sprites["arrowright"].setBitmap("Graphics/Pictures/Pokedex/dexformarrow")
@sprites["arrowright"].src_rect.set(24, 0, 24, 32)
@sprites["arrowright"].visible=avisible
@sprites["bginfo"]=Sprite.new(@viewport)
@sprites["bginfo"].bitmap=RPG::Cache.picture("Pokedex/dexbg4info")
@sprites["bginfo"].opacity=200
@sprites["formname"]=Sprite.new(@viewport)
@sprites["formname"].bitmap=RPG::Cache.picture("Pokedex/formname")
@sprites["formname"].opacity=200
@sprites["formname"].x=132;@sprites["formname"].y=410
@sprites["entrybars"]=IconSprite.new(0,0,@viewport)
@sprites["entrybars"].setBitmap(_INTL("Graphics/Pictures/Pokedex/dexentrybars"))
@sprites["entrybars"].src_rect.set(0, 144, 512, 48)
@sprites["normalbar"]=IconSprite.new(0,Graphics.height-48,@viewport)
@sprites["normalbar"].setBitmap("Graphics/Pictures/normalbar")
@sprites["iconrotate"]=Sprite.new(@viewport)
@sprites["iconrotate"].bitmap=RPG::Cache.picture("Pokedex/iconRotate")
@sprites["iconrotate"].x=232;@sprites["iconrotate"].y=708
@sprites["returnbuttom"]=Sprite.new(@viewport)
@sprites["returnbuttom"].bitmap=Cache.picture("globalicons")
@sprites["returnbuttom"].x=460; @sprites["returnbuttom"].y=Graphics.height-74
@sprites["returnbuttom"].src_rect.set(0, 64, 64, 64)
@sprites["overlay"]=BitmapSprite.new(Graphics.width,Graphics.height,@viewport)
pbSetSystemFont(@sprites["overlay"].bitmap)
@baseColor=Color.new(255,255,255)
@shadowColor=Color.new(165,165,173)
textpos=[
["FORMS",17*2,8,0,@baseColor,Color.new(115,115,115)],
["FORMS SEEN",52,304,0,@baseColor,@shadowColor],
["SHINY SEEN",52,336,0,@baseColor,@shadowColor],
[_INTL("{1}",$Trainer.numFormsSeen(@species)),440,304,0,@baseColor,@shadowColor],
[_INTL("{1}",$Trainer.numShinySeen(@species)),440,336,0,@baseColor,@shadowColor],
]
pbDrawTextPositions(@sprites["overlay"].bitmap,textpos)
@sprites["info"]=BitmapSprite.new(Graphics.width,Graphics.height,@viewport)
@genderTrue=@gender==0 ? false : true
@shinyTrue=@shiny==0 ? false : true
@sprites["pokemonsprite"]=PokemonSpriteDex.new(@viewport)
@sprites["pokemonsprite"].loadPokemonBitmap(@species, @genderTrue, @shinyTrue, @form, @back)
@sprites["pokemonsprite"].visible=true
pbPositionPokemonSprite(@sprites["pokemonsprite"],200,558)
@sprites["icon"]=PokemonSpeciesIconSprite.new(@species,@viewport)
@sprites["icon"].gender=@gender
@sprites["icon"].form=@form
@sprites["icon"].x=226
@sprites["icon"].y=224
pbUpdate
return true
end
def pbUpdate
@sprites["info"].bitmap.clear
pbSetSystemFont(@sprites["info"].bitmap)
name=""
shiny=false
for i in @available
if i[1]==@gender && i[2]==@form && i[3]==@shiny
name=i[0]
shiny=true if i[3]==1
break
end
end
textpos=[
[_INTL("{1}",PBSpecies.getName(@species)),370,262,2,@baseColor,@shadowColor],
]
if !shiny
textpos.push([_INTL("{1}",name),254,434,2,@baseColor,@shadowColor])
else
textpos.push([_INTL("{1}",name),254,420,2,@baseColor,@shadowColor])
textpos.push(["(Shiny)",254,450,2,@baseColor,@shadowColor])
end
pbDrawTextPositions(@sprites["info"].bitmap,textpos)
metrics=load_data("Data/metrics.dat")
backMetric=metrics[0][@species]
end
def pbGetAvailable
available=[] # [name, gender, form, shiny]
dexdata=pbOpenDexData
pbDexDataOffset(dexdata,@species,18)
genderbyte=dexdata.fgetb
dexdata.close
formnames=pbGetMessage(MessageTypes::FormNames,@species)
if !formnames || formnames==""
formnames=[""]
else
formnames=strsplit(formnames,/,/)
end
@gender=0 if genderbyte==0 || genderbyte==255 # Always male or genderless
@gender=1 if genderbyte==254 # Always female
if formnames && formnames[0]!=""
for j in 0...2
if $Trainer.formseen[@species][j][0] || ALWAYSSHOWALLFORMS # That gender/form has been seen
if pbResolveBitmap(sprintf("Graphics/Battlers/%sf",getConstantName(PBSpecies,@species))) ||
pbResolveBitmap(sprintf("Graphics/Battlers/%03df",@species))
if j==0
available.push([_INTL("{1} Male",formnames[0]),j,0,0])
if $Trainer.seenShiny[@species][j][0]==true
available.push([_INTL("{1} Male",formnames[0]),j,0,1]); end
else
available.push([_INTL("{1} Female",formnames[0]),j,0,0])
if $Trainer.seenShiny[@species][j][0]==true
available.push([_INTL("{1} Female",formnames[0]),j,0,1]); end
end
else
gendertopush=(genderbyte==254) ? 1 : 0
available.push([formnames[0],gendertopush,0,0])
if $Trainer.seenShiny[@species][gendertopush][0]==true
available.push([_INTL("{1}",formnames[0]),gendertopush,0,1])
end
break
end
end
end
else
if $Trainer.formseen[@species][0][0] || ALWAYSSHOWALLFORMS # Male/form 0 has been seen
if genderbyte!=254 && genderbyte!=255 # Not always female & not genderless
available.push([_INTL("Male"),0,0,0])
[COLOR="Red"] if $Trainer.seenShiny[@species][0][0]==true[/COLOR]
available.push([_INTL("Male"),0,0,1]); end
end
end
if $Trainer.formseen[@species][1][0] || ALWAYSSHOWALLFORMS # Female/form 0 has been seen
if genderbyte!=0 && genderbyte!=255 # Not always male & not genderless
available.push([_INTL("Female"),1,0,0])
if $Trainer.seenShiny[@species][1][0]==true
available.push([_INTL("Female"),1,0,1]); end
end
end
if $Trainer.formseen[@species][0][0] || ALWAYSSHOWALLFORMS # Genderless/form 0 has been seen
if genderbyte==255 # Genderless
if formnames && formnames.length>1
available.push([_INTL("One Form"),0,0,0])
if $Trainer.seenShiny[@species][0][0]==true
available.push([_INTL("One Form"),0,0,1]); end
else
available.push([_INTL("Genderless"),0,0,0])
if $Trainer.seenShiny[@species][0][0]==true
available.push([_INTL("Genderless"),0,0,1]); end
end
end
end
end
for i in 1...formnames.length
for j in 0...2
if $Trainer.formseen[@species][j][i] || ALWAYSSHOWALLFORMS # That gender/form has been seen
if pbResolveBitmap(sprintf("Graphics/Battlers/%sf_%d",getConstantName(PBSpecies,@species),i)) ||
pbResolveBitmap(sprintf("Graphics/Battlers/%03df_%d",@species,i))
if j==0
available.push([_INTL("{1} Male",formnames[i]),j,i,0])
if $Trainer.seenShiny[@species][j][i]==true
available.push([_INTL("{1} Male Shiny",formnames[i]),j,i,1]); end
else
available.push([_INTL("{1} Female",formnames[i]),j,i,0])
if $Trainer.seenShiny[@species][j][i]==true
available.push([_INTL("{1} Female Shiny",formnames[i]),j,i,1]); end
end
else
available.push([formnames[i],j,i,0])
if $Trainer.seenShiny[@species][j][i]==true
available.push([_INTL("{1} Shiny",formnames[i]),j,i,1])
end
break
end
end
end
end
return available
end
def pbGetCommands
commands=[]
for i in @available
commands.push(i[0])
end
return commands
end
def pbChooseForm(plus)
oldgender=@gender
oldform=@form
commands=pbGetCommands
if plus>0
if @index == @available.length-1
@index=0; else; @index+=1; end
else
if @index == 0
@[email protected]; else; @index-=1; end
end
@gender=@sprites["icon"].gender=@available[@index][1]
@form=@sprites["icon"].form=@available[@index][2]
@shiny=@available[@index][3]
@genderTrue=@gender==0 ? false : true
@shinyTrue=@shiny==0 ? false : true
@sprites["pokemonsprite"].loadPokemonBitmap(@species, @genderTrue, @shinyTrue, @form, @back)
pbPositionPokemonSprite(@sprites["pokemonsprite"],200,558)
pbUpdate
end
def pbControls(listlimits)
Graphics.transition
ret=0
cb=@sprites["returnbuttom"]
loop do
Graphics.update
Input.update
@sprites["background"].x-=1
@sprites["background"].x=0 if @sprites["background"].x==-64
@sprites["backgrounddown"].x-=1
@sprites["backgrounddown"].x=0 if @sprites["backgrounddown"].x==-126
@sprites["pokemonsprite"].update
# $BGX = @sprites["backgrounddown"].x
if $mouse.leftClick?(@sprites["iconrotate"])
@back=@back==true ? false : true
@sprites["pokemonsprite"].loadPokemonBitmap(@species, @genderTrue, @shinyTrue, @form, @back)
pbPositionPokemonSprite(@sprites["pokemonsprite"],200,558)
end
if @sprites["arrowleft"].visible
if $mouse.leftClick?(@sprites["arrowleft"],24,32)
pbChooseForm(-1)
elsif $mouse.leftClick?(@sprites["arrowright"],24,32)
pbChooseForm(1)
end
end
if Input.trigger?(Input::C)
pbChooseForm(1)
elsif Input.trigger?(Input::LEFT) or $mouse.inAreaLeft?(102+(190/3),740,190/3,126/3)
ret=4
break
elsif $mouse.inAreaLeft?(102,740,190/3,126/3)
ret=10
break
elsif (Input.trigger?(Input::UP) || (@sprites["arrowup"] && $mouse.leftClick?(@sprites["arrowup"],28,34))) && listlimits&1==0 # If not at top of list
ret=8
break
elsif (Input.trigger?(Input::DOWN) || (@sprites["arrowdown"] && $mouse.leftClick?(@sprites["arrowdown"],28,34))) && listlimits&2==0 # If not at end of list
ret=2
break
elsif Input.trigger?(Input::B) || $mouse.inAreaLeft?(cb.x+16,cb.y+36,28,28)
ret=1
pbSEPlay("BW2Cancel")
globalIconAnim(cb,1)
pbFadeOutAndHide(@sprites)
break
end
end
$Trainer.formlastseen[@species][0]=@gender
$Trainer.formlastseen[@species][1]=@form
return ret
end
def pbEndScene
pbDisposeSpriteHash(@sprites)
@viewport.dispose
end
end
class PokedexForm
def initialize(scene)
@scene=scene
end
def pbStartScreen(species,listlimits)
@scene.pbStartScene(species)
[email protected](listlimits)
@scene.pbEndScene
return ret
end
end
Last edited by a moderator: