mirror of
https://github.com/infinitefusion/infinitefusion-e18.git
synced 2025-12-06 06:01:46 +00:00
Moved methods that return item/trainer graphics, refactored evolution helper methods, rearranged some methods
This commit is contained in:
@@ -947,7 +947,7 @@ def pbPokemonEditor
|
||||
(regionallist[numb]==0) ? regionallist.pop : break
|
||||
numb -= 1
|
||||
end
|
||||
evolutions = pbGetEvolvedFormData(selection)
|
||||
evolutions = EvolutionHelper.evolutions(selection)
|
||||
data = []
|
||||
data.push(speciesname) # 0
|
||||
data.push(cname) # 1
|
||||
@@ -1068,7 +1068,7 @@ def pbPokemonEditor
|
||||
evos[sp].push([data[41][i][2],data[41][i][0],data[41][i][1],false])
|
||||
end
|
||||
else
|
||||
t = pbGetEvolvedFormData(sp)
|
||||
t = EvolutionHelper.evolutions(sp)
|
||||
for i in 0...t.length
|
||||
evos[sp].push([t[i][2],t[i][0],t[i][1],false])
|
||||
end
|
||||
@@ -1366,7 +1366,7 @@ end
|
||||
def pbAppendEvoToFamilyArray(species,array,seenarray)
|
||||
return if seenarray[species]
|
||||
array.push(species); seenarray[species] = true
|
||||
evos = pbGetEvolvedFormData(species)
|
||||
evos = EvolutionHelper.evolutions(species)
|
||||
if evos.length>0
|
||||
evos.sort! { |a,b| a[2]<=>b[2] }
|
||||
subarray = []
|
||||
@@ -1381,7 +1381,7 @@ def pbGetEvoFamilies
|
||||
seen = []
|
||||
ret = []
|
||||
for sp in 1..PBSpecies.maxValue
|
||||
species = pbGetBabySpecies(sp)
|
||||
species = EvolutionHelper.baby_species(sp)
|
||||
next if seen[species]
|
||||
subret = []
|
||||
pbAppendEvoToFamilyArray(species,subret,seen)
|
||||
|
||||
@@ -774,7 +774,7 @@ def pbSavePokemonData
|
||||
end
|
||||
pokedata.write("Evolutions = ")
|
||||
count = 0
|
||||
for form in pbGetEvolvedFormData(i)
|
||||
for form in EvolutionHelper.evolutions(i)
|
||||
method = form[0]
|
||||
parameter = form[1]
|
||||
new_species = form[2]
|
||||
@@ -1189,7 +1189,7 @@ def pbSavePokemonFormsData
|
||||
end
|
||||
end
|
||||
origevos = []
|
||||
for form in pbGetEvolvedFormData(species)
|
||||
for form in EvolutionHelper.evolutions(species)
|
||||
method = form[0]
|
||||
parameter = form[1]
|
||||
new_species = form[2]
|
||||
@@ -1200,7 +1200,7 @@ def pbSavePokemonFormsData
|
||||
origevos.push([method,parameter,new_species])
|
||||
end
|
||||
evos = []
|
||||
for form in pbGetEvolvedFormData(i)
|
||||
for form in EvolutionHelper.evolutions(i)
|
||||
method = form[0]
|
||||
parameter = form[1]
|
||||
new_species = form[2]
|
||||
|
||||
@@ -580,6 +580,43 @@ end
|
||||
|
||||
|
||||
|
||||
def chooseMapPoint(map,rgnmap=false)
|
||||
viewport=Viewport.new(0,0,Graphics.width,Graphics.height)
|
||||
viewport.z=99999
|
||||
title=Window_UnformattedTextPokemon.new(_INTL("Click a point on the map."))
|
||||
title.x=0
|
||||
title.y=Graphics.height-64
|
||||
title.width=Graphics.width
|
||||
title.height=64
|
||||
title.viewport=viewport
|
||||
title.z=2
|
||||
if rgnmap
|
||||
sprite=RegionMapSprite.new(map,viewport)
|
||||
else
|
||||
sprite=MapSprite.new(map,viewport)
|
||||
end
|
||||
sprite.z=2
|
||||
ret=nil
|
||||
loop do
|
||||
Graphics.update
|
||||
Input.update
|
||||
xy=sprite.getXY
|
||||
if xy
|
||||
ret=xy
|
||||
break
|
||||
end
|
||||
if Input.trigger?(Input::B)
|
||||
ret=nil
|
||||
break
|
||||
end
|
||||
end
|
||||
sprite.dispose
|
||||
title.dispose
|
||||
return ret
|
||||
end
|
||||
|
||||
|
||||
|
||||
module MapCoordsProperty
|
||||
def self.set(settingname,oldsetting)
|
||||
chosenmap = pbListScreen(settingname,MapLister.new((oldsetting) ? oldsetting[0] : 0))
|
||||
@@ -624,7 +661,7 @@ end
|
||||
|
||||
module RegionMapCoordsProperty
|
||||
def self.set(_settingname,oldsetting)
|
||||
regions = getMapNameList
|
||||
regions = self.getMapNameList
|
||||
selregion = -1
|
||||
if regions.length==0
|
||||
pbMessage(_INTL("No region maps are defined."))
|
||||
@@ -650,6 +687,18 @@ module RegionMapCoordsProperty
|
||||
def self.format(value)
|
||||
return value.inspect
|
||||
end
|
||||
|
||||
def self.getMapNameList
|
||||
mapdata = pbLoadTownMapData
|
||||
ret=[]
|
||||
for i in 0...mapdata.length
|
||||
next if !mapdata[i]
|
||||
ret.push(
|
||||
[i,pbGetMessage(MessageTypes::RegionNames,i)]
|
||||
)
|
||||
end
|
||||
return ret
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
||||
@@ -121,10 +121,8 @@ def pbListScreenBlock(title,lister)
|
||||
Input.update
|
||||
end
|
||||
|
||||
|
||||
|
||||
#===============================================================================
|
||||
# General listers
|
||||
#
|
||||
#===============================================================================
|
||||
class GraphicsLister
|
||||
def initialize(folder,selection)
|
||||
@@ -196,8 +194,9 @@ class GraphicsLister
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
||||
#===============================================================================
|
||||
#
|
||||
#===============================================================================
|
||||
class MusicFileLister
|
||||
def initialize(bgm,setting)
|
||||
@oldbgm = getPlayingBGM
|
||||
@@ -263,8 +262,9 @@ class MusicFileLister
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
||||
#===============================================================================
|
||||
#
|
||||
#===============================================================================
|
||||
class MapLister
|
||||
def initialize(selmap,addGlobal=false)
|
||||
@sprite = SpriteWrapper.new
|
||||
@@ -322,8 +322,9 @@ class MapLister
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
||||
#===============================================================================
|
||||
#
|
||||
#===============================================================================
|
||||
class SpeciesLister
|
||||
def initialize(selection,includeNew=false)
|
||||
@selection = selection
|
||||
@@ -373,8 +374,9 @@ class SpeciesLister
|
||||
def refresh(index); end
|
||||
end
|
||||
|
||||
|
||||
|
||||
#===============================================================================
|
||||
#
|
||||
#===============================================================================
|
||||
class ItemLister
|
||||
def initialize(selection = 0, includeNew = false)
|
||||
@sprite = ItemIconSprite.new(Graphics.width * 3 / 4, Graphics.height / 2, nil)
|
||||
@@ -432,8 +434,9 @@ class ItemLister
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
||||
#===============================================================================
|
||||
#
|
||||
#===============================================================================
|
||||
class TrainerTypeLister
|
||||
def initialize(selection = 0, includeNew = false)
|
||||
@sprite = IconSprite.new(Graphics.width * 3 / 4, (Graphics.height - 64) / 2 + 64)
|
||||
@@ -490,7 +493,7 @@ class TrainerTypeLister
|
||||
@sprite.bitmap.dispose if @sprite.bitmap
|
||||
return if index < 0
|
||||
begin
|
||||
@sprite.setBitmap(pbTrainerSpriteFile(@ids[index]), 0)
|
||||
@sprite.setBitmap(GameData::TrainerType.front_sprite_filename(@ids[index]), 0)
|
||||
rescue
|
||||
@sprite.setBitmap(nil)
|
||||
end
|
||||
@@ -501,8 +504,9 @@ class TrainerTypeLister
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
||||
#===============================================================================
|
||||
#
|
||||
#===============================================================================
|
||||
class TrainerBattleLister
|
||||
def initialize(selection,includeNew)
|
||||
@sprite = IconSprite.new(Graphics.width * 3 / 4, (Graphics.height / 2) + 32)
|
||||
@@ -577,7 +581,7 @@ class TrainerBattleLister
|
||||
@sprite.bitmap.dispose if @sprite.bitmap
|
||||
return if index<0
|
||||
begin
|
||||
@sprite.setBitmap(pbTrainerSpriteFile(@ids[index]),0)
|
||||
@sprite.setBitmap(GameData::TrainerType.front_sprite_filename(@ids[index]),0)
|
||||
rescue
|
||||
@sprite.setBitmap(nil)
|
||||
end
|
||||
|
||||
@@ -8,7 +8,7 @@ def pbGetLegalMoves(species)
|
||||
next if !i.move
|
||||
moves.push(i.move) if tmdat[i.move] && tmdat[i.move].include?(species)
|
||||
end
|
||||
babyspecies = pbGetBabySpecies(species)
|
||||
babyspecies = EvolutionHelper.baby_species(species)
|
||||
eggMoves = pbGetSpeciesEggMoves(babyspecies)
|
||||
eggMoves.each { |m| moves.push(m) }
|
||||
moves |= []
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
#===============================================================================
|
||||
# Edits the terrain tags of tiles in tilesets.
|
||||
#
|
||||
#===============================================================================
|
||||
begin
|
||||
|
||||
def pbTilesetWrapper
|
||||
return PokemonDataWrapper.new(
|
||||
"Data/Tilesets.rxdata",
|
||||
@@ -14,8 +12,9 @@ def pbTilesetWrapper
|
||||
)
|
||||
end
|
||||
|
||||
|
||||
|
||||
#===============================================================================
|
||||
# Edits the terrain tags of tiles in tilesets.
|
||||
#===============================================================================
|
||||
class PokemonTilesetScene
|
||||
TILESET_WIDTH = 256
|
||||
TILE_SIZE = 32
|
||||
@@ -203,11 +202,3 @@ def pbTilesetScreen
|
||||
scene.pbStartScene
|
||||
}
|
||||
end
|
||||
|
||||
|
||||
|
||||
rescue Exception
|
||||
if $!.is_a?(SystemExit) || "#{$!.class}"=="Reset"
|
||||
raise $!
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#===============================================================================
|
||||
# Miniature game map/Town Map drawing
|
||||
# Miniature game map drawing
|
||||
#===============================================================================
|
||||
class MapSprite
|
||||
def initialize(map,viewport=nil)
|
||||
@@ -34,8 +34,9 @@ class MapSprite
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
||||
#===============================================================================
|
||||
#
|
||||
#===============================================================================
|
||||
class SelectionSprite < Sprite
|
||||
def initialize(viewport=nil)
|
||||
@sprite=Sprite.new(viewport)
|
||||
@@ -82,8 +83,9 @@ class SelectionSprite < Sprite
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
||||
#===============================================================================
|
||||
#
|
||||
#===============================================================================
|
||||
class RegionMapSprite
|
||||
def initialize(map,viewport=nil)
|
||||
@sprite=Sprite.new(viewport)
|
||||
@@ -101,6 +103,20 @@ class RegionMapSprite
|
||||
@sprite.z=value
|
||||
end
|
||||
|
||||
def createRegionMap(map)
|
||||
@mapdata = pbLoadTownMapData
|
||||
@map=@mapdata[map]
|
||||
bitmap=AnimatedBitmap.new("Graphics/Pictures/#{@map[1]}").deanimate
|
||||
retbitmap=BitmapWrapper.new(bitmap.width/2,bitmap.height/2)
|
||||
retbitmap.stretch_blt(
|
||||
Rect.new(0,0,bitmap.width/2,bitmap.height/2),
|
||||
bitmap,
|
||||
Rect.new(0,0,bitmap.width,bitmap.height)
|
||||
)
|
||||
bitmap.dispose
|
||||
return retbitmap
|
||||
end
|
||||
|
||||
def getXY
|
||||
return nil if !Input.triggerex?(Input::LeftMouseKey)
|
||||
mouse=Mouse::getMousePos(true)
|
||||
@@ -117,125 +133,6 @@ class RegionMapSprite
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
||||
def createRegionMap(map)
|
||||
@mapdata = pbLoadTownMapData
|
||||
@map=@mapdata[map]
|
||||
bitmap=AnimatedBitmap.new("Graphics/Pictures/#{@map[1]}").deanimate
|
||||
retbitmap=BitmapWrapper.new(bitmap.width/2,bitmap.height/2)
|
||||
retbitmap.stretch_blt(
|
||||
Rect.new(0,0,bitmap.width/2,bitmap.height/2),
|
||||
bitmap,
|
||||
Rect.new(0,0,bitmap.width,bitmap.height)
|
||||
)
|
||||
bitmap.dispose
|
||||
return retbitmap
|
||||
end
|
||||
|
||||
def getMapNameList
|
||||
@mapdata = pbLoadTownMapData
|
||||
ret=[]
|
||||
for i in 0...@mapdata.length
|
||||
next if !@mapdata[i]
|
||||
ret.push(
|
||||
[i,pbGetMessage(MessageTypes::RegionNames,i)]
|
||||
)
|
||||
end
|
||||
return ret
|
||||
end
|
||||
|
||||
def createMinimap2(mapid)
|
||||
map=load_data(sprintf("Data/Map%03d.rxdata",mapid)) rescue nil
|
||||
return BitmapWrapper.new(32,32) if !map
|
||||
bitmap=BitmapWrapper.new(map.width*4,map.height*4)
|
||||
black=Color.new(0,0,0)
|
||||
bigmap=(map.width>40 && map.height>40)
|
||||
tilesets=load_data("Data/Tilesets.rxdata")
|
||||
tileset=tilesets[map.tileset_id]
|
||||
return bitmap if !tileset
|
||||
helper=TileDrawingHelper.fromTileset(tileset)
|
||||
for y in 0...map.height
|
||||
for x in 0...map.width
|
||||
if bigmap
|
||||
next if (x>8 && x<=map.width-8 && y>8 && y<=map.height-8)
|
||||
end
|
||||
for z in 0..2
|
||||
id=map.data[x,y,z]
|
||||
next if id==0 || !id
|
||||
helper.bltSmallTile(bitmap,x*4,y*4,4,4,id)
|
||||
end
|
||||
end
|
||||
end
|
||||
bitmap.fill_rect(0,0,bitmap.width,1,black)
|
||||
bitmap.fill_rect(0,bitmap.height-1,bitmap.width,1,black)
|
||||
bitmap.fill_rect(0,0,1,bitmap.height,black)
|
||||
bitmap.fill_rect(bitmap.width-1,0,1,bitmap.height,black)
|
||||
return bitmap
|
||||
end
|
||||
|
||||
def createMinimap(mapid)
|
||||
map=load_data(sprintf("Data/Map%03d.rxdata",mapid)) rescue nil
|
||||
return BitmapWrapper.new(32,32) if !map
|
||||
bitmap=BitmapWrapper.new(map.width*4,map.height*4)
|
||||
black=Color.new(0,0,0)
|
||||
tilesets=load_data("Data/Tilesets.rxdata")
|
||||
tileset=tilesets[map.tileset_id]
|
||||
return bitmap if !tileset
|
||||
helper=TileDrawingHelper.fromTileset(tileset)
|
||||
for y in 0...map.height
|
||||
for x in 0...map.width
|
||||
for z in 0..2
|
||||
id=map.data[x,y,z]
|
||||
id=0 if !id
|
||||
helper.bltSmallTile(bitmap,x*4,y*4,4,4,id)
|
||||
end
|
||||
end
|
||||
end
|
||||
bitmap.fill_rect(0,0,bitmap.width,1,black)
|
||||
bitmap.fill_rect(0,bitmap.height-1,bitmap.width,1,black)
|
||||
bitmap.fill_rect(0,0,1,bitmap.height,black)
|
||||
bitmap.fill_rect(bitmap.width-1,0,1,bitmap.height,black)
|
||||
return bitmap
|
||||
end
|
||||
|
||||
def chooseMapPoint(map,rgnmap=false)
|
||||
viewport=Viewport.new(0,0,Graphics.width,Graphics.height)
|
||||
viewport.z=99999
|
||||
title=Window_UnformattedTextPokemon.new(_INTL("Click a point on the map."))
|
||||
title.x=0
|
||||
title.y=Graphics.height-64
|
||||
title.width=Graphics.width
|
||||
title.height=64
|
||||
title.viewport=viewport
|
||||
title.z=2
|
||||
if rgnmap
|
||||
sprite=RegionMapSprite.new(map,viewport)
|
||||
else
|
||||
sprite=MapSprite.new(map,viewport)
|
||||
end
|
||||
sprite.z=2
|
||||
ret=nil
|
||||
loop do
|
||||
Graphics.update
|
||||
Input.update
|
||||
xy=sprite.getXY
|
||||
if xy
|
||||
ret=xy
|
||||
break
|
||||
end
|
||||
if Input.trigger?(Input::B)
|
||||
ret=nil
|
||||
break
|
||||
end
|
||||
end
|
||||
sprite.dispose
|
||||
title.dispose
|
||||
return ret
|
||||
end
|
||||
|
||||
|
||||
|
||||
#===============================================================================
|
||||
# Visual Editor (map connections)
|
||||
#===============================================================================
|
||||
@@ -686,8 +583,9 @@ class MapScreenScene
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
||||
#===============================================================================
|
||||
#
|
||||
#===============================================================================
|
||||
def pbConnectionsEditor
|
||||
pbCriticalCode {
|
||||
mapscreen = MapScreenScene.new
|
||||
|
||||
Reference in New Issue
Block a user