58 Commits

Author SHA1 Message Date
infinitefusion
6ba975ac51 removed broken character in randomzier sprites list 2023-11-06 19:08:22 -05:00
infinitefusion
2dd2a5d33b removed non-sprite lines in randomizer custom sprites list 2023-11-04 21:14:18 -04:00
infinitefusion
1ea6b531c2 updates randomizer custom sprites list 2023-11-03 18:14:22 -04:00
infinitefusion
b600e126bc reverts new version notification to 5.3.1.2 2023-10-26 15:09:08 -04:00
infinitefusion
2411a0c9fc updates new versin notification 2023-10-21 10:42:20 -04:00
infinitefusion
2f4d26a68f Minor map fixes 2023-10-19 22:39:56 -04:00
infinitefusion
0e0969b3d8 updated sprites managers list in credits 2023-10-18 17:13:45 -04:00
infinitefusion
5d59804d51 Merge remote-tracking branch 'origin/main' 2023-09-30 09:19:19 -04:00
infinitefusion
e918744613 fixes head pokemon not being registered in pokedex after fusion 2023-09-30 09:16:41 -04:00
infinitefusion
e280bf2460 Merge pull request #104 from xfix/backup-save-on-save
Backup save when saving
2023-09-30 09:14:16 -04:00
infinitefusion
1f1780cee4 creates backup when saving (original commit: infinitefusion-e18/pull/104/commits/c4ef959e47facac7ac883865ec71f3c3b0907ec1) 2023-09-30 09:13:27 -04:00
infinitefusion
d05e4569ea changed new version available text 2023-09-27 22:00:30 -04:00
infinitefusion
18758b007c updated custom sprites list for august pack 2023-09-27 21:18:48 -04:00
infinitefusion
1ea0934c19 changed url for fetching credits file 2023-09-27 21:02:54 -04:00
infinitefusion
24760804e1 Adds shiny chance to downloaded settings file 2023-09-18 21:33:56 -04:00
infinitefusion
581bdf3ca8 increases version number 2023-09-18 17:32:06 -04:00
infinitefusion
eba115202d Fixes water effect bug 2023-09-17 20:28:51 -04:00
infinitefusion
09f9f20468 Fixes water effect bug 2023-09-17 20:28:25 -04:00
infinitefusion
71409b6698 updates version number 2023-09-17 19:51:11 -04:00
infinitefusion
e448583222 fixes infinite splicers bug 2023-09-17 19:45:02 -04:00
infinitefusion
7b08544828 Fixes settings url 2023-09-17 19:44:52 -04:00
infinitefusion
b5bdac6775 fixed infinite splicers bug 2023-09-17 19:42:12 -04:00
infinitefusion
70e605ae79 re-enabled automatic url file download 2023-09-17 19:39:57 -04:00
infinitefusion
bd7b6bfa43 fixes crash when downloading base pokemon sprites 2023-09-17 19:39:26 -04:00
infinitefusion
84648ad7b5 increased version number 2023-09-17 19:01:13 -04:00
infinitefusion
0bb4ba944c automatically download remote urls settings 2023-09-17 19:00:39 -04:00
infinitefusion
bb7072d4cc changes sprites repo to gitlab 2 2023-09-17 18:06:55 -04:00
infinitefusion
9c560c7daf changes sprites repo to gitlab 2023-09-17 18:06:36 -04:00
infinitefusion
ecb0d4d2c3 minor game changes 2023-09-17 17:42:59 -04:00
infinitefusion
fa1bbc8728 updates july spritepack credits 2023-09-01 06:34:22 -04:00
infinitefusion
7f217583d0 updates randomizer file list with new spritepack 2023-09-01 06:30:31 -04:00
infinitefusion
9473fea8b9 updates sprite credits 2023-08-10 08:48:48 -04:00
infinitefusion
64923e1a0d updates custom sprites index with june spritepack 2023-08-10 07:53:06 -04:00
infinitefusion
ab24b9eb11 updates sprite credits file 2023-08-09 23:27:09 -04:00
infinitefusion
6378971055 fixes missing pixel line in outdoor tileset 2023-08-09 21:43:24 -04:00
infinitefusion
0f54173c05 updates some tilesets tiles 2023-08-09 21:26:47 -04:00
infinitefusion
05f9a7ec84 updates new version notification to 5.3.1 2023-08-07 18:57:30 -04:00
infinitefusion
8f15e963f1 updates version number 2023-08-07 18:43:56 -04:00
infinitefusion
9c5ca890f3 updates url for autogen sprites 2023-08-07 18:36:15 -04:00
infinitefusion
178d61eec0 fixed sprite managers section in game credits 2023-08-05 08:42:21 -04:00
infinitefusion
390fd72d2d Fixes lag in sinnoh trio portals 2023-08-04 18:14:36 -04:00
infinitefusion
6f8d4f9a9d mt. silver screen effects bugfix & portal animation 2023-08-04 11:20:10 -04:00
infinitefusion
b2d5e8c533 increases number of points for box link to 5000 2023-08-04 09:23:05 -04:00
infinitefusion
7e3610b365 adds missing ressources for puddle and shadows 2023-08-03 18:00:15 -04:00
infinitefusion
d4b882ff96 Adds water animation for surfing and puddles 2023-08-03 17:53:55 -04:00
infinitefusion
ba07453021 Adds water animation for surfing and puddles 2023-08-03 17:53:30 -04:00
infinitefusion
dca4118898 Adds overworld shadows 2023-08-03 14:29:42 -04:00
Konrad Borowski
c4ef959e47 Backup save when saving 2023-07-26 17:53:55 +02:00
infinitefusion
1247c1f43d Fixes kin island pokemon club trainers not using fusions 2023-07-25 20:16:53 -04:00
infinitefusion
38ea210de7 Fixes corrupt savefile issue with fusion quiz + update to v5.3.0.7 2023-07-16 20:15:54 -04:00
infinitefusion
d38c3f65f4 Adds spriter credits to evolution screen 2023-07-16 15:09:07 -04:00
infinitefusion
321f89282c deactivates arrows quick scroll outside of long lists and pokedex 2023-07-16 11:55:10 -04:00
infinitefusion
17a2d9b97a Makes it possible to jump up and down 1 colomn lists with the left and right arrows 2023-07-16 09:31:00 -04:00
infinitefusion
ba6b1b47d4 creates customBattlers folder if missing 2023-07-15 17:33:36 -04:00
infinitefusion
9106833a9d updates game version to 5.3.0.6 2023-07-11 20:10:41 -04:00
infinitefusion
c615791bad Fixes bad egg resize in pc 2023-07-11 20:09:06 -04:00
infinitefusion
e7778b72b9 Fixes crash when can't copy file when generating fusion icon 2023-07-11 19:53:55 -04:00
infinitefusion
e663541a88 fixes route 1 music 2023-07-09 16:51:15 -04:00
79 changed files with 115566 additions and 68801 deletions

Binary file not shown.

BIN
Audio/BGM/route1.mp3 Normal file

Binary file not shown.

BIN
Audio/SE/puddle.ogg Normal file

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
Data/Map799.rxdata Normal file

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@@ -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.3.0.5"
GAME_VERSION_NUMBER = "5.3.1.3"
POKERADAR_LIGHT_ANIMATION_RED_ID = 17
POKERADAR_LIGHT_ANIMATION_GREEN_ID = 18
@@ -31,9 +31,9 @@ module Settings
VERSION_FILE_PATH = "Data/VERSION"
CUSTOM_SPRITES_FILE_PATH = "Data/CUSTOM_SPRITES"
CREDITS_FILE_URL = "https://raw.githubusercontent.com/infinitefusion/sprites/main/Sprite Credits.csv"
SPRITES_FILE_URL = "https://raw.githubusercontent.com/infinitefusion/infinitefusion-e18/main/Data/CUSTOM_SPRITES"
VERSION_FILE_URL = "https://raw.githubusercontent.com/infinitefusion/infinitefusion-e18/main/Data/VERSION"
HTTP_CONFIGS_FILE_URL = "https://raw.githubusercontent.com/infinitefusion/infinitefusion-e18/main/Data/Scripts/RemoteUrls.rb"
HTTP_CONFIGS_FILE_PATH = "Data/Scripts/RemoteUrls.rb"
FRONTSPRITE_POSITION_OFFSET = 20
FRONTSPRITE_SCALE = 0.6666666666

View File

@@ -741,6 +741,7 @@ class SpriteWindow_Selectable < SpriteWindow_Base
@row_height = 32
@column_spacing = 32
@ignore_input = false
@allow_arrows_jump=false
end
def itemCount
@@ -767,6 +768,10 @@ class SpriteWindow_Selectable < SpriteWindow_Base
end
end
def setAllowArrowsJump(value)
@allow_arrows_jump=value
end
def columns
return @column_max || 1
end
@@ -848,63 +853,89 @@ class SpriteWindow_Selectable < SpriteWindow_Base
super
if self.active && @item_max > 0 && @index >= 0 && !@ignore_input
if Input.repeat?(Input::UP)
if @index >= @column_max ||
(Input.trigger?(Input::UP) && (@item_max % @column_max)==0)
oldindex = @index
@index = (@index - @column_max + @item_max) % @item_max
if @index!=oldindex
pbPlayCursorSE()
update_cursor_rect
end
end
scroll_up()
elsif Input.repeat?(Input::DOWN)
if @index < @item_max - @column_max ||
(Input.trigger?(Input::DOWN) && (@item_max % @column_max)==0)
oldindex = @index
@index = (@index + @column_max) % @item_max
if @index!=oldindex
pbPlayCursorSE()
update_cursor_rect
end
end
elsif Input.repeat?(Input::LEFT)
if @column_max >= 2 && @index > 0
oldindex = @index
@index -= 1
if @index!=oldindex
pbPlayCursorSE()
update_cursor_rect
end
end
elsif Input.repeat?(Input::RIGHT)
if @column_max >= 2 && @index < @item_max - 1
oldindex = @index
@index += 1
if @index!=oldindex
pbPlayCursorSE()
update_cursor_rect
end
end
elsif Input.repeat?(Input::JUMPUP)
if @index > 0
oldindex = @index
@index = [self.index-self.page_item_max, 0].max
if @index!=oldindex
pbPlayCursorSE()
self.top_row -= self.page_row_max
update_cursor_rect
end
end
elsif Input.repeat?(Input::JUMPDOWN)
if @index < @item_max-1
oldindex = @index
@index = [self.index+self.page_item_max, @item_max-1].min
if @index!=oldindex
pbPlayCursorSE()
self.top_row += self.page_row_max
update_cursor_rect
end
end
scroll_down()
elsif Input.repeat?(Input::LEFT) && !@allow_arrows_jump
scroll_left()
elsif Input.repeat?(Input::RIGHT) && !@allow_arrows_jump
scroll_right()
elsif Input.repeat?(Input::JUMPUP) || (Input.repeat?(Input::LEFT) && @allow_arrows_jump)
jump_up()
elsif Input.repeat?(Input::JUMPDOWN) || (Input.repeat?(Input::RIGHT) && @allow_arrows_jump)
jump_down()
end
end
end
def scroll_up()
if @index >= @column_max ||
(Input.trigger?(Input::UP) && (@item_max % @column_max)==0)
oldindex = @index
@index = (@index - @column_max + @item_max) % @item_max
if @index!=oldindex
pbPlayCursorSE()
update_cursor_rect
end
end
end
def scroll_down()
if @index < @item_max - @column_max ||
(Input.trigger?(Input::DOWN) && (@item_max % @column_max)==0)
oldindex = @index
@index = (@index + @column_max) % @item_max
if @index!=oldindex
pbPlayCursorSE()
update_cursor_rect
end
end
end
def scroll_left()
if @column_max >= 2 && @index < @item_max - 1
oldindex = @index
@index += 1
if @index!=oldindex
pbPlayCursorSE()
update_cursor_rect
end
end
end
def scroll_right()
if @column_max >= 2 && @index > 0
oldindex = @index
@index -= 1
if @index!=oldindex
pbPlayCursorSE()
update_cursor_rect
end
end
end
def jump_up()
if @index > 0
oldindex = @index
@index = [self.index-self.page_item_max, 0].max
if @index!=oldindex
pbPlayCursorSE()
self.top_row -= self.page_row_max
update_cursor_rect
end
end
end
def jump_down()
if @index < @item_max-1
oldindex = @index
@index = [self.index+self.page_item_max, @item_max-1].min
if @index!=oldindex
pbPlayCursorSE()
self.top_row += self.page_row_max
update_cursor_rect
end
end
end

View File

@@ -111,13 +111,13 @@ class PokeRadar_UI
bitmap1 = AnimatedBitmap.new(GameData::Species.icon_filename(headPoke))
bitmap2 = AnimatedBitmap.new(GameData::Species.icon_filename(bodyPoke))
dexNum = getDexNumberForSpecies(@pokemon.species)
dexNum = getDexNumberForSpecies(pokemonId)
ensureFusionIconExists()
bitmapFileName = sprintf("Graphics/Pokemon/FusionIcons/icon%03d", dexNum)
headPokeFileName = GameData::Species.icon_filename(headPoke)
bitmapPath = sprintf("%s.png", bitmapFileName)
IO.copy_stream(headPokeFileName, bitmapPath)
result_bitmap = AnimatedBitmap.new(bitmapPath)
generated_new_icon = generateFusionIcon(headPokeFileName,bitmapPath)
result_bitmap = generated_new_icon ? AnimatedBitmap.new(bitmapPath) : bitmap1
for i in 0..bitmap1.width-1
for j in ((bitmap1.height / 2) + Settings::FUSION_ICON_SPRITE_OFFSET)..bitmap1.height-1

View File

@@ -191,8 +191,8 @@ class PokemonIconSprite < SpriteWrapper
bitmapFileName = sprintf("Graphics/Pokemon/FusionIcons/icon%03d", dexNum)
headPokeFileName = GameData::Species.icon_filename(headPoke)
bitmapPath = sprintf("%s.png", bitmapFileName)
IO.copy_stream(headPokeFileName, bitmapPath)
result_icon = AnimatedBitmap.new(bitmapPath)
generated_new_icon = generateFusionIcon(headPokeFileName,bitmapPath)
result_icon = generated_new_icon ? AnimatedBitmap.new(bitmapPath) : icon1
for i in 0..icon1.width-1
for j in ((icon1.height / 2) + Settings::FUSION_ICON_SPRITE_OFFSET)..icon1.height-1

View File

@@ -588,6 +588,9 @@ class PokemonEvolutionScene
end
# Success jingle/message
pbMEPlay("Evolution success")
sprite_bitmap=@sprites["rsprite2"].getBitmap
drawSpriteCredits(sprite_bitmap.filename,sprite_bitmap.path, @viewport)
newspeciesname = GameData::Species.get(@newspecies).name
if !reversing
pbMessageDisplay(@sprites["msgwindow"],
@@ -599,6 +602,7 @@ class PokemonEvolutionScene
@pokemon.name,newspeciesname)) { pbUpdate }
end
@sprites["msgwindow"].text = ""
# Check for consumed item and check if Pokémon should be duplicated
pbEvolutionMethodAfterEvolution if !reversing

View File

@@ -81,13 +81,15 @@ Sprites pack manager
Kiwi
Sprite Managers
Howls
Kiwi
Melmcs
Milchik the Miltank
rezza
Punko
Skel'n
avianAnnihilator<s>Blaquaza
BéBoutton<s>CaBiNE
CoramSun<s>hero.drawing
Howls<s>Ignus
Kiwi<s>Maelmc
Milchik the Miltank<s>Payapon
Pix<s>Rosemagwin
Thorns
All of the custom fused Pokémon sprites
were made by various members of the sp
@@ -116,7 +118,7 @@ Hankiro, luckygirl88, Nalty,
OceansLugiaSpirit,Pokemon-Diamond,
rekman, Rick1234, SailorVicious,WolfPP
Tileset graphics:
Public use tileset graphics:
Alucus BoOmxBiG<s>chimcharsfireworkd
EpicDay<s>EternalTakai
Gallanty Heavy-Metal-Lover<s>Hek-el-grande
@@ -130,12 +132,12 @@ Spacemotion<s>Speedialga
ThatsSoWitty Thurpok<s>TyranitarDark
UltimoSpriter<s>WesleyFG
Music:
Public use music:
Pokeli, TailDoll666100
Kazune Sawatari, sentsinkantéun,
Nanashima, CharizardTheMaster, The Zame Jack
RPG Maker Scripts:
Public use RPG Maker scripts:
Luka S.J, shiney570, Erasus, Umbreon
FL, KleinStudio, carmaniac, Wootius,
andracass

View File

@@ -8,6 +8,7 @@ class Window_Pokedex < Window_DrawableCommand
@selarrow = AnimatedBitmap.new("Graphics/Pictures/Pokedex/cursor_list")
@pokeballOwn = AnimatedBitmap.new("Graphics/Pictures/Pokedex/icon_own")
@pokeballSeen = AnimatedBitmap.new("Graphics/Pictures/Pokedex/icon_seen")
@allow_arrows_jump=true
self.baseColor = Color.new(88,88,80)
self.shadowColor = Color.new(168,184,184)
self.windowskin = nil

View File

@@ -113,9 +113,14 @@ class PokemonPokedexInfo_Scene
@sprites["infosprite"].x = 104
@sprites["infosprite"].y = 136
@sprites["overlay"] = BitmapSprite.new(Graphics.width,Graphics.height,@viewport)
pbSetSystemFont(@sprites["overlay"].bitmap)
pbUpdateDummyPokemon
drawPage(@page)
pbSetSystemFont(@sprites["overlay"].bitmap)
pbUpdateDummyPokemon
drawPage(@page)
sprite_bitmap= @sprites["infosprite"].getBitmap
pbFadeInAndShow(@sprites) { pbUpdate }
end

View File

@@ -196,9 +196,10 @@ class Window_PokemonOption < Window_DrawableCommand
@selBaseColor = Color.new(31 * 8, 6 * 8, 3 * 8)
@selShadowColor = Color.new(31 * 8, 17 * 8, 16 * 8)
@optvalues = []
@mustUpdateOptions = false
@mustUpdateOptions = false
@mustUpdateDescription = false
@selected_position = 0
@allow_arrows_jump=false
for i in 0...@options.length
@optvalues[i] = 0
end

View File

@@ -38,8 +38,8 @@ class PokemonBoxIcon < IconSprite
bitmapFileName = sprintf("Graphics/Pokemon/FusionIcons/icon%03d", dexNum)
headPokeFileName = GameData::Species.icon_filename(headPoke)
bitmapPath = sprintf("%s.png", bitmapFileName)
IO.copy_stream(headPokeFileName, bitmapPath)
result_icon = AnimatedBitmap.new(bitmapPath)
generated_new_icon = generateFusionIcon(headPokeFileName,bitmapPath)
result_icon = generated_new_icon ? AnimatedBitmap.new(bitmapPath) : icon1
for i in 0..icon1.width - 1
for j in ((icon1.height / 2) + Settings::FUSION_ICON_SPRITE_OFFSET)..icon1.height - 1
@@ -1572,6 +1572,14 @@ class PokemonStorageScene
end
pbDrawTextPositions(overlay, textstrings)
@sprites["pokemon"].setPokemonBitmap(pokemon)
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
end
def update

View File

@@ -281,6 +281,7 @@ end
#
#===============================================================================
def pbWriteCup(id, rules)
return
return if !$DEBUG
trlists = (load_data("Data/trainer_lists.dat") rescue [])
list = []

View File

@@ -604,32 +604,39 @@ DebugMenuCommands.register("fillboxes", {
added = 0
box_qty = $PokemonStorage.maxPokemon(0)
completed = true
GameData::Species.each do |species_data|
sp = species_data.species
f = species_data.form
# Record each form of each species as seen and owned
if f == 0
if [:AlwaysMale, :AlwaysFemale, :Genderless].include?(species_data.gender_ratio)
g = (species_data.gender_ratio == :AlwaysFemale) ? 1 : 0
$Trainer.pokedex.register(sp, g, f, false)
else # Both male and female
$Trainer.pokedex.register(sp, 0, f, false)
$Trainer.pokedex.register(sp, 1, f, false)
end
$Trainer.pokedex.set_owned(sp, false)
elsif species_data.real_form_name && !species_data.real_form_name.empty?
g = (species_data.gender_ratio == :AlwaysFemale) ? 1 : 0
$Trainer.pokedex.register(sp, g, f, false)
end
# Add Pokémon (if form 0, i.e. one of each species)
next if f != 0
if added >= Settings::NUM_STORAGE_BOXES * box_qty
completed = false
next
end
added += 1
$PokemonStorage[(added - 1) / box_qty, (added - 1) % box_qty] = Pokemon.new(sp, 50)
for num in 1..NB_POKEMON
pokemon = getPokemon(num)
pbAddPokemonSilent(pokemon,50)
end
# GameData::Species.each do |species_data|
# break if species_data.is_fusion
# sp = species_data.species
# f = species_data.form
# # Record each form of each species as seen and owned
# if f == 0
# if [:AlwaysMale, :AlwaysFemale, :Genderless].include?(species_data.gender_ratio)
# g = (species_data.gender_ratio == :AlwaysFemale) ? 1 : 0
# $Trainer.pokedex.register(sp, g, f, false)
# else # Both male and female
# $Trainer.pokedex.register(sp, 0, f, false)
# $Trainer.pokedex.register(sp, 1, f, false)
# end
# $Trainer.pokedex.set_owned(sp, false)
# elsif species_data.real_form_name && !species_data.real_form_name.empty?
# g = (species_data.gender_ratio == :AlwaysFemale) ? 1 : 0
# $Trainer.pokedex.register(sp, g, f, false)
# end
# # Add Pokémon (if form 0, i.e. one of each species)
# next if f != 0
# if added >= Settings::NUM_STORAGE_BOXES * box_qty
# completed = false
# next
# end
# added += 1
# $PokemonStorage[(added - 1) / box_qty, (added - 1) % box_qty] = Pokemon.new(sp, 50)
# end
$Trainer.pokedex.refresh_accessible_dexes
pbMessage(_INTL("Storage boxes were filled with one Pokémon of each species."))
if !completed

View File

@@ -3,6 +3,7 @@
#===============================================================================
def pbListWindow(cmds, width = Graphics.width / 2)
list = Window_CommandPokemon.newWithSize(cmds, 0, 0, width, Graphics.height)
list.setAllowArrowsJump(true)
list.index = 0
list.rowHeight = 24
pbSetSmallFont(list.contents)

View File

@@ -691,7 +691,7 @@ class PokemonFusionScene
overlay = BitmapSprite.new(Graphics.width, Graphics.height, @viewport).bitmap
sprite_bitmap = @sprites["rsprite2"].getBitmap
drawSpriteCredits(sprite_bitmap.filename,sprite_bitmap.path, overlay)
drawSpriteCredits(sprite_bitmap.filename,sprite_bitmap.path, @viewport)
Kernel.pbMessageDisplay(@sprites["msgwindow"],
_INTL("\\se[]Congratulations! Your Pokémon were fused into {2}!\\wt[80]", @pokemon1.name, newspeciesname))
@@ -770,7 +770,9 @@ class PokemonFusionScene
end
end
def drawSpriteCredits(filename,path,overlay)
def drawSpriteCredits(filename,path,viewport)
overlay = BitmapSprite.new(Graphics.width, Graphics.height, @viewport).bitmap
return if path.start_with?(Settings::BATTLERS_FOLDER)
x= Graphics.width/2
y=240

View File

@@ -206,22 +206,14 @@ end
def getCustomSpeciesListForPokemon(dexNum,allowLegendaries=true)
excluded = allowLegendaries ? [] : listLegendaryPokemonIds()
filesList = Dir["./Graphics/CustomBattlers/*"]
customsList = getCustomSpeciesList($PokemonSystem.download_sprites == 0)
speciesList = []
maxDexNumber = (NB_POKEMON * NB_POKEMON) + NB_POKEMON
maxVal = filesList.length - 1
for i in 0..maxVal
path = filesList[i]
file = File.basename(path, ".*")
splitPoke = file.split(".")
head = splitPoke[0].to_i
body = splitPoke[1].to_i
if (head == dexNum || body == dexNum) && !(excluded.include?(head) || excluded.include?(body))
fused = (body * NB_POKEMON) + head
if fused <= maxDexNumber && fused > 0
speciesList << fused
end
for comparedPoke in customsList
next if excluded.include?(comparedPoke)
if Kernel.isPartPokemon(comparedPoke, dexNum)
speciesList << comparedPoke
end
end
if speciesList.length == 0
speciesList << dexNum

View File

@@ -13,7 +13,7 @@ def pbAddPokemonID(pokemon, level = nil, seeform = true, dontRandomize = false)
end
#random species if randomized gift pokemon & wild poke
if $game_switches[SWITCH_RANDOM_GIFT_POKEMON] && $game_switches[SWITCH_RANDOM_WILD] && !dontRandomize
tryRandomizeGiftPokemon(pokemon,dontRandomize)
tryRandomizeGiftPokemon(pokemon, dontRandomize)
end
speciesname = PBSpecies.getName(pokemon.species)
@@ -38,7 +38,7 @@ def pbAddPokemonID(pokemon_id, level = 1, see_form = true, skip_randomize = fals
#random species if randomized gift pokemon & wild poke
if $game_switches[SWITCH_RANDOM_GIFT_POKEMON] && $game_switches[SWITCH_RANDOM_WILD] && !skip_randomize
tryRandomizeGiftPokemon(pokemon,skip_randomize)
tryRandomizeGiftPokemon(pokemon, skip_randomize)
end
pbMessage(_INTL("{1} obtained {2}!\\me[Pkmn get]\\wtnp[80]\1", $Trainer.name, species_name))
@@ -47,13 +47,21 @@ def pbAddPokemonID(pokemon_id, level = 1, see_form = true, skip_randomize = fals
return true
end
def generateFusionIcon(dexNum, path)
begin
IO.copy_stream(dexNum, path)
return true
rescue
return false
end
end
def ensureFusionIconExists
directory_name = "Graphics/Pokemon/FusionIcons"
Dir.mkdir(directory_name) unless File.exists?(directory_name)
end
def addNewTripleFusion(pokemon1,pokemon2,pokemon3,level = 1)
def addNewTripleFusion(pokemon1, pokemon2, pokemon3, level = 1)
return if !pokemon1
return if !pokemon2
return if !pokemon3
@@ -64,7 +72,7 @@ def addNewTripleFusion(pokemon1,pokemon2,pokemon3,level = 1)
return false
end
pokemon = TripleFusion.new(pokemon1,pokemon2,pokemon3,level)
pokemon = TripleFusion.new(pokemon1, pokemon2, pokemon3, level)
pokemon.calc_stats
pbMessage(_INTL("{1} obtained {2}!\\me[Pkmn get]\\wtnp[80]\1", $Trainer.name, pokemon.name))
pbNicknameAndStore(pokemon)
@@ -85,9 +93,8 @@ def pbHasSpecies?(species)
return false
end
#ancienne methode qui est encore callée un peu partout dans les vieux scripts
def getID(pbspecies_unused,species)
def getID(pbspecies_unused, species)
if species.is_a?(String)
return nil
elsif species.is_a?(Symbol)
@@ -96,6 +103,7 @@ def getID(pbspecies_unused,species)
id = species.dexNum
end
end
#Check if the Pokemon can learn a TM
def CanLearnMove(pokemon, move)
species = getID(PBSpecies, pokemon)
@@ -138,8 +146,6 @@ def getDexNumberForSpecies(species)
return dexNum
end
def getPokemon(dexNum)
return GameData::Species.get(dexNum)
end
@@ -152,7 +158,6 @@ def getSpeciesIdForFusion(head_id, body_id)
return (body_id) * Settings::NB_POKEMON + head_id
end
#shortcut for using in game events because of script characters limit
def dexNum(species)
return getDexNumberForSpecies(species)
@@ -162,10 +167,9 @@ def isTripleFusion?(num)
return num >= Settings::ZAPMOLCUNO_NB
end
def getRandomCustomFusionForIntro(returnRandomPokemonIfNoneFound = true, customPokeList = [], maxPoke = -1, recursionLimit = 3)
if customPokeList.length == 0
customPokeList = getCustomSpeciesList(false )
customPokeList = getCustomSpeciesList(false)
end
randPoke = []
if customPokeList.length >= 5000
@@ -191,11 +195,10 @@ def getRandomCustomFusionForIntro(returnRandomPokemonIfNoneFound = true, customP
return randPoke
end
def addShinyStarsToGraphicsArray(imageArray, xPos, yPos, shinyBody, shinyHead, debugShiny, srcx=nil, srcy=nil, width=nil, height=nil,
showSecondStarUnder=false, showSecondStarAbove=false )
color = debugShiny ? Color.new(0,0,0,255) : nil
imageArray.push(["Graphics/Pictures/shiny",xPos,yPos,srcx,srcy,width,height,color])
def addShinyStarsToGraphicsArray(imageArray, xPos, yPos, shinyBody, shinyHead, debugShiny, srcx = nil, srcy = nil, width = nil, height = nil,
showSecondStarUnder = false, showSecondStarAbove = false)
color = debugShiny ? Color.new(0, 0, 0, 255) : nil
imageArray.push(["Graphics/Pictures/shiny", xPos, yPos, srcx, srcy, width, height, color])
if shinyBody && shinyHead
if showSecondStarUnder
yPos += 15
@@ -204,7 +207,7 @@ def addShinyStarsToGraphicsArray(imageArray, xPos, yPos, shinyBody, shinyHead, d
else
xPos -= 15
end
imageArray.push(["Graphics/Pictures/shiny",xPos,yPos,srcx,srcy,width,height,color])
imageArray.push(["Graphics/Pictures/shiny", xPos, yPos, srcx, srcy, width, height, color])
end
# if onlyOutline
# imageArray.push(["Graphics/Pictures/shiny_black",xPos,yPos,srcx,srcy,width,height,color])
@@ -212,7 +215,7 @@ def addShinyStarsToGraphicsArray(imageArray, xPos, yPos, shinyBody, shinyHead, d
end
def getRandomCustomFusion(returnRandomPokemonIfNoneFound = true, customPokeList = [], maxPoke = -1, recursionLimit = 3, maxBST=300)
def getRandomCustomFusion(returnRandomPokemonIfNoneFound = true, customPokeList = [], maxPoke = -1, recursionLimit = 3, maxBST = 300)
if customPokeList.length == 0
customPokeList = getCustomSpeciesList()
end
@@ -235,11 +238,10 @@ def getRandomCustomFusion(returnRandomPokemonIfNoneFound = true, customPokeList
return randPoke
end
def getBodyID(species)
dexNum = getDexNumberForSpecies(species)
if dexNum % NB_POKEMON ==0
return (dexNum/NB_POKEMON)-1
if dexNum % NB_POKEMON == 0
return (dexNum / NB_POKEMON) - 1
end
return (dexNum / NB_POKEMON).round
end
@@ -409,16 +411,12 @@ def obtainPokemonSpritePath(id, includeCustoms = true)
return obtainPokemonSpritePath(body, head, includeCustoms)
end
def obtainPokemonSpritePath(bodyId, headId, include_customs = true)
download_pokemon_sprite_if_missing(bodyId,headId)
download_pokemon_sprite_if_missing(bodyId, headId)
picturePath = _INTL("Graphics/Battlers/{1}/{1}.{2}.png", headId, bodyId)
if include_customs && customSpriteExistsBodyHead(bodyId,headId)
pathCustom = getCustomSpritePath(bodyId,headId)
if include_customs && customSpriteExistsBodyHead(bodyId, headId)
pathCustom = getCustomSpritePath(bodyId, headId)
if (pbResolveBitmap(pathCustom))
picturePath = pathCustom
end
@@ -426,14 +424,14 @@ def obtainPokemonSpritePath(bodyId, headId, include_customs = true)
return picturePath
end
def getCustomSpritePath(body,head)
def getCustomSpritePath(body, head)
return _INTL("Graphics/CustomBattlers/indexed/{1}/{1}.{2}.png", head, body)
end
def customSpriteExists(species)
head = getBasePokemonID(species, false)
body = getBasePokemonID(species, true)
pathCustom = getCustomSpritePath(body,head)
pathCustom = getCustomSpritePath(body, head)
return true if pbResolveBitmap(pathCustom) != nil
return download_custom_sprite(head, body) != nil
@@ -443,16 +441,15 @@ def checkIfCustomSpriteExistsByPath(path)
return true if pbResolveBitmap(path) != nil
end
def customSpriteExistsBodyHead(body, head)
pathCustom = getCustomSpritePath(body,head)
pathCustom = getCustomSpritePath(body, head)
return true if pbResolveBitmap(pathCustom) != nil
return download_custom_sprite(head, body) != nil
end
def customSpriteExistsBase(body,head)
pathCustom = getCustomSpritePath(body,head)
def customSpriteExistsBase(body, head)
pathCustom = getCustomSpritePath(body, head)
return true if pbResolveBitmap(pathCustom) != nil
return download_custom_sprite(head, body) != nil
end
@@ -521,49 +518,47 @@ def reverseFusionSpecies(species)
end
def Kernel.getRoamingMap(roamingArrayPos)
curmap=$PokemonGlobal.roamPosition[roamingArrayPos]
mapinfos=$RPGVX ? load_data("Data/MapInfos.rvdata") : load_data("Data/MapInfos.rxdata")
text= mapinfos[curmap].name#,(curmap==$game_map.map_id) ? _INTL("(this map)") : "")
curmap = $PokemonGlobal.roamPosition[roamingArrayPos]
mapinfos = $RPGVX ? load_data("Data/MapInfos.rvdata") : load_data("Data/MapInfos.rxdata")
text = mapinfos[curmap].name #,(curmap==$game_map.map_id) ? _INTL("(this map)") : "")
return text
end
def Kernel.listPlatesInBag()
list = []
list << PBItems::FISTPLATE if $PokemonBag.pbQuantity(:FISTPLATE)>=1
list << PBItems::SKYPLATE if $PokemonBag.pbQuantity(:SKYPLATE)>=1
list << PBItems::TOXICPLATE if $PokemonBag.pbQuantity(:TOXICPLATE)>=1
list << PBItems::EARTHPLATE if $PokemonBag.pbQuantity(:EARTHPLATE)>=1
list << PBItems::STONEPLATE if $PokemonBag.pbQuantity(:STONEPLATE)>=1
list << PBItems::INSECTPLATE if $PokemonBag.pbQuantity(:INSECTPLATE)>=1
list << PBItems::SPOOKYPLATE if $PokemonBag.pbQuantity(:SPOOKYPLATE)>=1
list << PBItems::IRONPLATE if $PokemonBag.pbQuantity(:IRONPLATE)>=1
list << PBItems::FLAMEPLATE if $PokemonBag.pbQuantity(:FLAMEPLATE)>=1
list << PBItems::SPLASHPLATE if $PokemonBag.pbQuantity(:SPLASHPLATE)>=1
list << PBItems::MEADOWPLATE if $PokemonBag.pbQuantity(:MEADOWPLATE)>=1
list << PBItems::ZAPPLATE if $PokemonBag.pbQuantity(:ZAPPLATE)>=1
list << PBItems::MINDPLATE if $PokemonBag.pbQuantity(:MINDPLATE)>=1
list << PBItems::ICICLEPLATE if $PokemonBag.pbQuantity(:ICICLEPLATE)>=1
list << PBItems::DRACOPLATE if $PokemonBag.pbQuantity(:DRACOPLATE)>=1
list << PBItems::DREADPLATE if $PokemonBag.pbQuantity(:DREADPLATE)>=1
list << PBItems::PIXIEPLATE if $PokemonBag.pbQuantity(:PIXIEPLATE)>=1
list << PBItems::FISTPLATE if $PokemonBag.pbQuantity(:FISTPLATE) >= 1
list << PBItems::SKYPLATE if $PokemonBag.pbQuantity(:SKYPLATE) >= 1
list << PBItems::TOXICPLATE if $PokemonBag.pbQuantity(:TOXICPLATE) >= 1
list << PBItems::EARTHPLATE if $PokemonBag.pbQuantity(:EARTHPLATE) >= 1
list << PBItems::STONEPLATE if $PokemonBag.pbQuantity(:STONEPLATE) >= 1
list << PBItems::INSECTPLATE if $PokemonBag.pbQuantity(:INSECTPLATE) >= 1
list << PBItems::SPOOKYPLATE if $PokemonBag.pbQuantity(:SPOOKYPLATE) >= 1
list << PBItems::IRONPLATE if $PokemonBag.pbQuantity(:IRONPLATE) >= 1
list << PBItems::FLAMEPLATE if $PokemonBag.pbQuantity(:FLAMEPLATE) >= 1
list << PBItems::SPLASHPLATE if $PokemonBag.pbQuantity(:SPLASHPLATE) >= 1
list << PBItems::MEADOWPLATE if $PokemonBag.pbQuantity(:MEADOWPLATE) >= 1
list << PBItems::ZAPPLATE if $PokemonBag.pbQuantity(:ZAPPLATE) >= 1
list << PBItems::MINDPLATE if $PokemonBag.pbQuantity(:MINDPLATE) >= 1
list << PBItems::ICICLEPLATE if $PokemonBag.pbQuantity(:ICICLEPLATE) >= 1
list << PBItems::DRACOPLATE if $PokemonBag.pbQuantity(:DRACOPLATE) >= 1
list << PBItems::DREADPLATE if $PokemonBag.pbQuantity(:DREADPLATE) >= 1
list << PBItems::PIXIEPLATE if $PokemonBag.pbQuantity(:PIXIEPLATE) >= 1
return list
end
def Kernel.getItemNamesAsString(list)
strList = ""
for i in 0..list.length-1
for i in 0..list.length - 1
id = list[i]
name =PBItems.getName(id)
name = PBItems.getName(id)
strList += name
if i != list.length-1 && list.length > 1
if i != list.length - 1 && list.length > 1
strList += ","
end
end
return strList
end
def Kernel.getPlateType(item)
return :FIGHTING if item == PBItems::FISTPLATE
return :FLYING if item == PBItems::SKYPLATE
@@ -584,7 +579,8 @@ def Kernel.getPlateType(item)
return :FAIRY if item == PBItems::PIXIEPLATE
return -1
end
def get_default_moves_at_level(species,level)
def get_default_moves_at_level(species, level)
moveset = GameData::Species.get(species).moves
knowable_moves = []
moveset.each { |m| knowable_moves.push(m[1]) if m[0] <= level }
@@ -604,11 +600,10 @@ def get_default_moves_at_level(species,level)
return moves
end
def find_newer_available_version
latest_Version = fetch_latest_game_version
return nil if !latest_Version
return nil if is_higher_version(Settings::GAME_VERSION_NUMBER,latest_Version)
return nil if is_higher_version(Settings::GAME_VERSION_NUMBER, latest_Version)
return latest_Version
end
@@ -640,28 +635,26 @@ def get_difficulty_text
end
end
def change_game_difficulty(down_only=false)
def change_game_difficulty(down_only = false)
message = "The game is currently on " + get_difficulty_text() + " difficulty."
pbMessage(message)
choice_easy = "Easy"
choice_normal = "Normal"
choice_hard = "Hard"
choice_cancel = "Cancel"
available_difficulties = []
currentDifficulty =get_current_game_difficulty
currentDifficulty = get_current_game_difficulty
if down_only
if currentDifficulty == :HARD
available_difficulties << choice_hard
available_difficulties << choice_normal
available_difficulties << choice_easy
elsif currentDifficulty ==:NORMAL
elsif currentDifficulty == :NORMAL
available_difficulties << choice_normal
available_difficulties << choice_easy
elsif currentDifficulty ==:EASY
elsif currentDifficulty == :EASY
available_difficulties << choice_easy
end
else
@@ -674,13 +667,13 @@ def change_game_difficulty(down_only=false)
choice = available_difficulties[index]
case choice
when choice_easy
$game_switches[SWITCH_GAME_DIFFICULTY_EASY]=true
$game_switches[SWITCH_GAME_DIFFICULTY_EASY] = true
$game_switches[SWITCH_GAME_DIFFICULTY_HARD] = false
when choice_normal
$game_switches[SWITCH_GAME_DIFFICULTY_EASY]=false
$game_switches[SWITCH_GAME_DIFFICULTY_EASY] = false
$game_switches[SWITCH_GAME_DIFFICULTY_HARD] = false
when choice_hard
$game_switches[SWITCH_GAME_DIFFICULTY_EASY]=false
$game_switches[SWITCH_GAME_DIFFICULTY_EASY] = false
$game_switches[SWITCH_GAME_DIFFICULTY_HARD] = true
when choice_cancel
return

View File

@@ -50,7 +50,7 @@ class FusionQuiz
prompt_quit = pbMessage(_INTL("You still have {1} rounds to go. You'll only keep your points if you finish all {2} rounds. Do you really want to quit now?", rounds_left, nb_rounds), ["Yes", "No"])
if prompt_quit
@abandonned = true
return
break
end
end
round_multiplier += round_multiplier_increase
@@ -63,12 +63,14 @@ class FusionQuiz
end
def end_quiz()
hide_fusion_picture
Kernel.pbClearText()
previous_highest = pbGet(VAR_STAT_FUSION_QUIZ_HIGHEST_SCORE)
pbSet(VAR_STAT_FUSION_QUIZ_HIGHEST_SCORE,@score) if @score > previous_highest
previous_total = pbGet(VAR_STAT_FUSION_QUIZ_TOTAL_PTS)
pbSet(VAR_STAT_FUSION_QUIZ_TOTAL_PTS,previous_total+@score)
dispose
end
def start_quiz_new_round(round_multiplier = 1)

View File

@@ -6,11 +6,25 @@ def test_http_get
end
end
def updateHttpSettingsFile
return if $PokemonSystem.download_sprites != 0
download_file(Settings::HTTP_CONFIGS_FILE_URL, Settings::HTTP_CONFIGS_FILE_PATH)
end
def updateCreditsFile
return if $PokemonSystem.download_sprites != 0
download_file(Settings::CREDITS_FILE_URL,Settings::CREDITS_FILE_PATH,)
end
def createCustomSpriteFolders()
if !Dir.exist?(Settings::CUSTOM_BATTLERS_FOLDER)
Dir.mkdir(Settings::CUSTOM_BATTLERS_FOLDER)
end
if !Dir.exist?(Settings::CUSTOM_BATTLERS_FOLDER_INDEXED)
Dir.mkdir(Settings::CUSTOM_BATTLERS_FOLDER_INDEXED)
end
end
def download_file(url, saveLocation)
begin
response = HTTPLite.get(url)
@@ -52,7 +66,7 @@ def download_sprite(base_path, head_id, body_id, saveLocation = "Graphics/temp",
File.open(downloaded_file_name, "wb") do |file|
file.write(response[:body])
end
echo _INTL("\nDownloaded file {1} to {2}", downloaded_file_name, saveLocation)
echo _INTL("\nDownloaded file from {1} to {2}", base_path, saveLocation)
return downloaded_file_name
end
return nil
@@ -63,7 +77,7 @@ end
def download_autogen_sprite(head_id, body_id)
return nil if $PokemonSystem.download_sprites != 0
url = "https://raw.githubusercontent.com/Aegide/autogen-fusion-sprites/master/Battlers/{1}/{1}.{2}.png"
url = Settings::AUTOGEN_SPRITES_REPO_URL + "{1}/{1}.{2}.png"
destPath = _INTL("{1}{2}", Settings::BATTLERS_FOLDER, head_id)
sprite = download_sprite(_INTL(url, head_id, body_id), head_id, body_id, destPath)
return sprite if sprite
@@ -72,8 +86,7 @@ end
def download_custom_sprite(head_id, body_id)
return nil if $PokemonSystem.download_sprites != 0
#base_path = "https://raw.githubusercontent.com/Aegide/custom-fusion-sprites/main/CustomBattlers/{1}.{2}.png"
url = "https://raw.githubusercontent.com/infinitefusion/sprites/main/CustomBattlers/{1}.{2}.png"
url = Settings::CUSTOM_SPRITES_REPO_URL + "{1}.{2}.png"
destPath = _INTL("{1}{2}", Settings::CUSTOM_BATTLERS_FOLDER_INDEXED, head_id)
if !Dir.exist?(destPath)
Dir.mkdir(destPath)
@@ -85,7 +98,7 @@ def download_custom_sprite(head_id, body_id)
end
def download_unfused_alt_sprites(dex_num)
base_url = "https://raw.githubusercontent.com/infinitefusion/sprites/main/Other/Base%20Sprites/{1}"
base_url = Settings::BASE_POKEMON_ALT_SPRITES_REPO_URL + "{1}"
extension = ".png"
destPath = _INTL("{1}", Settings::CUSTOM_BASE_SPRITES_FOLDER)
if !Dir.exist?(destPath)
@@ -102,7 +115,7 @@ def download_unfused_alt_sprites(dex_num)
end
def download_alt_sprites(head_id,body_id)
base_url = "https://raw.githubusercontent.com/infinitefusion/sprites/main/CustomBattlers/{1}.{2}"
base_url = "#{Settings::CUSTOM_SPRITES_REPO_URL}{1}.{2}"
extension = ".png"
destPath = _INTL("{1}{2}", Settings::CUSTOM_BATTLERS_FOLDER_INDEXED, head_id)
if !Dir.exist?(destPath)

View File

@@ -285,7 +285,9 @@ class PokemonLoadScreen
def try_load_backup(file_path)
if File.file?(file_path + ".bak")
pbMessage(_INTL("The save file is corrupt. A backup will be loaded."))
save_data = load_save_file(file_path + ".bak")
file_copy(file_path, SaveData.get_backup_file_path)
File.rename(file_path + '.bak', file_path)
save_data = load_save_file(file_path)
else
self.prompt_save_deletion(file_path)
return {}
@@ -334,10 +336,11 @@ class PokemonLoadScreen
end
def pbStartLoadScreen
updateHttpSettingsFile
updateCreditsFile
newer_version = find_newer_available_version
if newer_version
pbMessage(_INTL("Version {1} is now available! Please check the game's official page to download the newest version.", newer_version))
pbMessage(_INTL("Version {1} is now available! Please use the game's installer to download the newest version. Check the Discord for more information.", newer_version))
end
if ($game_temp.unimportedSprites && $game_temp.unimportedSprites.size > 0)
@@ -693,6 +696,9 @@ module Game
$Trainer.save_slot = slot unless auto
$Trainer.last_time_saved = Time.now
begin
if File.exists?(file_path)
file_copy(file_path, file_path + '.bak')
end
SaveData.save_to_file(file_path)
Graphics.frame_reset
rescue IOError, SystemCallError

View File

@@ -1569,6 +1569,8 @@ def pbUnfuse(pokemon, scene, supersplicers, pcPosition = nil)
#On ajoute l'autre dans le pokedex aussi
$Trainer.pokedex.set_seen(poke1.species)
$Trainer.pokedex.set_owned(poke1.species)
$Trainer.pokedex.set_seen(poke2.species)
$Trainer.pokedex.set_owned(poke2.species)
pokemon.species = poke1.species
pokemon.level = poke1.level

View File

@@ -0,0 +1,302 @@
#==============================================================================#
# Overworld Shadows #
# by Marin #
#==============================================================================#
# Info #
# #
# You'll have likely heard of KleinStudios' Overworld Shadows script; many #
# fangames use it, after all. It was not compatible with Essentials v17+ #
# though, so after getting the suggestion I thought it would be cool if I #
# could make something of my own that would work with v16, as well as v17. #
#==============================================================================#
# Features: #
# - Blacklisting events from receiving shadows #
# - Whitelisting events to always receive shadows #
# - A scaling animation when an event jumps #
#==============================================================================#
# Usage #
# #
# Shadow_Path is the path to the shadow graphic. You can change this #
# sprite, though you may need to fiddle with positioning of the sprite in #
# relation to the event after, though. That's done in "def position_shadow". #
# #
# As the name literally says, if an event's name includes any of the strings #
# in "No_Shadow_If_Event_Name_Has", it won't get a shadow, UNLESS the event's #
# name also includes any of the strings in #
# "Always_Give_Shadow_If_Event_Name_Has". This is essentially "overriding". #
# #
# Case_Sensitive is either true or false. It's used when determing if an #
# event's name includes a string in the "No_Shadow" and "Always_Give" arrays. #
# If true, it must match all strings with capitals exactly as well. #
# If false, capitals don't need to match up. #
#==============================================================================#
# Please give credit when using this. #
#==============================================================================#
SHADOW_IMG_FOLDER = "Graphics/Characters/"
SHADOW_IMG_NAME = "shadow"
# Whether or not the event names below need to match in capitals as well.
Case_Sensitive = false
No_Shadow_If_Event_Name_Has = [
# I like to use "extensions" like these. Up to you though.
".shadowless",
".noshadow",
".sl",
"Door",
"Stairs"
]
# Events that have this in their event name will always receive a shadow.
# Does take "Case_Sensitive" into account.
Always_Give_Shadow_If_Event_Name_Has = [
"Trainer", "npc"
]
# Determines whether or not an event should be given a shadow.
def pbShouldGetShadow?(event)
return true if event.is_a?(Game_Player) # The player will always have a shadow
page = pbGetActiveEventPage(event)
return false unless page
comments = page.list.select { |e| e.code == 108 || e.code == 408 }.map do |e|
e.parameters.join
end
Always_Give_Shadow_If_Event_Name_Has.each do |e|
name = event.name.clone
unless Case_Sensitive
e.downcase!
name.downcase!
end
return true if name.include?(e) || comments.any? { |c| c.include?(e) }
end
No_Shadow_If_Event_Name_Has.each do |e|
name = event.name.clone
unless Case_Sensitive
e.downcase!
name.downcase!
end
return false if name.include?(e) || comments.any? { |c| c.include?(e) }
end
return true
end
# Extending so we can access some private instance variables.
class Game_Character
attr_reader :jump_count
end
unless Spriteset_Map.respond_to?(:viewport)
class Spriteset_Map
def viewport
return @viewport1
end
def self.viewport
return $scene.spriteset.viewport rescue nil
end
end
end
# Following Pokémon compatibility
def pbToggleFollowingPokemon
return if $Trainer.party[0].hp <= 0 || $Trainer.party[0].isEgg?
if $game_switches[Following_Activated_Switch]
if $game_switches[Toggle_Following_Switch]
$game_switches[Toggle_Following_Switch] = false
$PokemonTemp.dependentEvents.remove_sprite(true)
$scene.spriteset.usersprites.select do |e|
e.is_a?(DependentEventSprites)
end.each do |des|
des.sprites.each do |e|
if e && e.shadow
e.shadow.dispose
e.shadow = nil
end
end
end
pbWait(1)
else
$game_switches[Toggle_Following_Switch] = true
$PokemonTemp.dependentEvents.refresh_sprite
$scene.spriteset.usersprites.select do |e|
e.is_a?(DependentEventSprites)
end.each do |des|
des.sprites.each do |e|
e.make_shadow if e.respond_to?(:make_shadow)
end
end
pbWait(1)
end
end
end
class DependentEventSprites
def refresh
for sprite in @sprites
sprite.dispose
end
@sprites.clear
$PokemonTemp.dependentEvents.eachEvent do |event, data|
if data[2] == @map.map_id # Check current map
spr = Sprite_Character.new(@viewport,event,true)
@sprites.push(spr)
end
end
end
end
unless defined?(pbGetActiveEventPage)
def pbGetActiveEventPage(event, mapid = nil)
mapid ||= event.map.map_id if event.respond_to?(:map)
pages = (event.is_a?(RPG::Event) ? event.pages : event.instance_eval { @event.pages })
for i in 0...pages.size
c = pages[pages.size - 1 - i].condition
ss = !(c.self_switch_valid && !$game_self_switches[[mapid,
event.id,c.self_switch_ch]])
sw1 = !(c.switch1_valid && !$game_switches[c.switch1_id])
sw2 = !(c.switch2_valid && !$game_switches[c.switch2_id])
var = true
if c.variable_valid
if !c.variable_value || !$game_variables[c.variable_id].is_a?(Numeric) ||
$game_variables[c.variable_id] < c.variable_value
var = false
end
end
if ss && sw1 && sw2 && var # All conditions are met
return pages[pages.size - 1 - i]
end
end
return nil
end
end
class Spriteset_Map
attr_accessor :usersprites
end
class Sprite_Character
attr_accessor :shadow
alias ow_shadow_init initialize
def initialize(viewport, character = nil, is_follower = false)
@viewport = viewport
@is_follower = is_follower
ow_shadow_init(@viewport, character)
return unless pbShouldGetShadow?(character)
return if @is_follower && defined?(Toggle_Following_Switch) &&
!$game_switches[Toggle_Following_Switch]
return if @is_follower && defined?(Following_Activated_Switch) &&
!$game_switches[Following_Activated_Switch]
@character = character
if @character.is_a?(Game_Event)
page = pbGetActiveEventPage(@character)
return if !page || !page.graphic || page.graphic.character_name == ""
end
make_shadow
end
def make_shadow
@shadow.dispose if @shadow
@shadow = nil
@shadow = Sprite.new(@viewport)
@shadow.bitmap = RPG::Cache.load_bitmap(SHADOW_IMG_FOLDER,SHADOW_IMG_NAME)
# Center the shadow by halving the origin points
@shadow.ox = @shadow.bitmap.width / 2.0
@shadow.oy = @shadow.bitmap.height / 2.0
# Positioning the shadow
position_shadow
end
def position_shadow
return unless @shadow
# x = @character.screen_x
# y = @character.screen_y
# if @character.jumping?
# @totaljump = @character.jump_count if !@totaljump
# case @character.jump_count
# when 1..(@totaljump / 3)
# @shadow.zoom_x += 0.1
# @shadow.zoom_y += 0.1
# when (@totaljump / 3 + 1)..(@totaljump / 3 + 2)
# @shadow.zoom_x += 0.05
# @shadow.zoom_y += 0.05
# when (@totaljump / 3 * 2 - 1)..(@totaljump / 3 * 2)
# @shadow.zoom_x -= 0.05
# @shadow.zoom_y -= 0.05
# when (@totaljump / 3 * 2 + 1)..(@totaljump)
# @shadow.zoom_x -= 0.1
# @shadow.zoom_y -= 0.1
# end
# if @character.jump_count == 1
# @shadow.zoom_x = 1.0
# @shadow.zoom_y = 1.0
# @totaljump = nil
# end
# end
@shadow.x = x
@shadow.y = y - 6
@shadow.z = self.z - 1
if @shadow
if @charbitmap.disposed? || @character.instance_eval { @erased }
@shadow.dispose
@shadow = nil
end
end
end
alias ow_shadow_visible visible=
def visible=(value)
ow_shadow_visible(value)
@shadow.visible = value if @shadow
end
alias ow_shadow_dispose dispose
def dispose
ow_shadow_dispose
@shadow.dispose if @shadow
@shadow = nil
end
alias ow_shadow_update update
def update
ow_shadow_update
position_shadow
if @character.is_a?(Game_Event)
page = pbGetActiveEventPage(@character)
if @old_page != page
@shadow.dispose if @shadow
@shadow = nil
if page && page.graphic && page.graphic.character_name != "" &&
pbShouldGetShadow?(@character)
unless @is_follower && defined?(Toggle_Following_Switch) &&
!$game_switches[Toggle_Following_Switch]
unless @is_follower && defined?(Following_Activated_Switch) &&
!$game_switches[Following_Activated_Switch]
make_shadow
end
end
end
end
end
@old_page = (@character.is_a?(Game_Event) ? pbGetActiveEventPage(@character) : nil)
bushdepth = @character.bush_depth
if @shadow
@shadow.opacity = self.opacity
@shadow.visible = (bushdepth == 0)
if !self.visible || (@is_follower || @character == $game_player) &&
($PokemonGlobal.surfing || $PokemonGlobal.diving)
@shadow.visible = false
end
end
end
end

View File

@@ -0,0 +1,23 @@
PUDDLE_ANIMATION_ID = 22
Events.onStepTakenFieldMovement += proc { |_sender, e|
event = e[0] # Get the event affected by field movement
if $scene.is_a?(Scene_Map)
event.each_occupied_tile do |x, y|
mapTerrainTag = $MapFactory.getTerrainTag(event.map.map_id, x, y, false)
if $PokemonGlobal.surfing
if isWaterTerrain?(mapTerrainTag)
$scene.spriteset.addUserAnimation(PUDDLE_ANIMATION_ID, event.x, event.y, true, 0)
end
else
if mapTerrainTag == 16 #puddle
pbSEPlay("puddle", 100) if event == $game_player && !$PokemonGlobal.surfing #only play sound effect in puddle
$scene.spriteset.addUserAnimation(PUDDLE_ANIMATION_ID, event.x, event.y, true, 0)
end
end
end
end
}
def isWaterTerrain?(tag)
return [5, 6, 17, 7, 9, 16].include?(tag)
end

View File

@@ -144,6 +144,7 @@ def mainFunctionDebug
Graphics.update
Graphics.freeze
#clearTempFolder()
createCustomSpriteFolders()
begin
sortCustomBattlers()
rescue

View File

@@ -0,0 +1,12 @@
module Settings
SHINY_POKEMON_CHANCE = 16
CREDITS_FILE_URL = "https://gitlab.com/pokemoninfinitefusion/customsprites/-/raw/master/Sprite Credits.csv"
SPRITES_FILE_URL = "https://raw.githubusercontent.com/infinitefusion/infinitefusion-e18/main/Data/CUSTOM_SPRITES"
VERSION_FILE_URL = "https://raw.githubusercontent.com/infinitefusion/infinitefusion-e18/main/Data/VERSION"
AUTOGEN_SPRITES_REPO_URL = "https://gitlab.com/pokemoninfinitefusion/autogen-fusion-sprites/-/raw/master/Battlers/"
CUSTOM_SPRITES_REPO_URL = "https://gitlab.com/pokemoninfinitefusion/customsprites/-/raw/master/CustomBattlers/"
BASE_POKEMON_SPRITES_REPO_URL = "https://gitlab.com/pokemoninfinitefusion/autogen-fusion-sprites/-/raw/master/Battlers/"
BASE_POKEMON_ALT_SPRITES_REPO_URL = "https://gitlab.com/pokemoninfinitefusion/customsprites/-/raw/master/Other/BaseSprites/"
end

Binary file not shown.

Binary file not shown.

View File

@@ -1 +1 @@
5.3
5.3.1.2

View File

@@ -1,867 +0,0 @@
"File Name"
.idea
abilities.dat
Actors.rxdata
Animations.rxdata
Armors.rxdata
attacksRS.dat
berry_plants.dat
Classes.rxdata
CommonEvents.rxdata
compiler.rb
connections.dat
Constants.rxdata
Copy - Scripts.rxdata
CUSTOM_SPRITES.csv
dexdata.rxdata
EditorScripts.rxdata
eggEmerald.dat
encounters - Copie.dat
encounters - Copy.dat
encounters.dat
encounters_modern.dat
encounters_randomized.dat
Enemies.rxdata
evolutions.dat
files_lister.bat
file_list.txt
items.dat
Items.rxdata
keybindings.mkxp1
Map001.rxdata
Map002.rxdata
Map003.rxdata
Map004.rxdata
Map005.rxdata
Map006.rxdata
Map007.rxdata
Map008.rxdata
Map009.rxdata
Map010.rxdata
Map011.rxdata
Map012.rxdata
Map013.rxdata
Map014.rxdata
Map015.rxdata
Map016.rxdata
Map017.rxdata
Map018.rxdata
Map019.rxdata
Map020.rxdata
Map021.rxdata
Map022.rxdata
Map023.rxdata
Map024.rxdata
Map025.rxdata
Map026.rxdata
Map027.rxdata
Map028.rxdata
Map029.rxdata
Map030.rxdata
Map031.rxdata
Map032.rxdata
Map033.rxdata
Map034.rxdata
Map035.rxdata
Map036.rxdata
Map037.rxdata
Map038.rxdata
Map039.rxdata
Map040.rxdata
Map041.rxdata
Map042.rxdata
Map043.rxdata
Map044.rxdata
Map045.rxdata
Map046.rxdata
Map047.rxdata
Map048.rxdata
Map049.rxdata
Map050.rxdata
Map051.rxdata
Map052.rxdata
Map053.rxdata
Map054.rxdata
Map055.rxdata
Map056.rxdata
Map057.rxdata
Map058.rxdata
Map059.rxdata
Map060.rxdata
Map061.rxdata
Map062.rxdata
Map063.rxdata
Map064.rxdata
Map065.rxdata
Map066.rxdata
Map067.rxdata
Map068.rxdata
Map069.rxdata
Map070.rxdata
Map071.rxdata
Map072.rxdata
Map073.rxdata
Map074.rxdata
Map075.rxdata
Map076.rxdata
Map077.rxdata
Map078.rxdata
Map079.rxdata
Map080.rxdata
Map081.rxdata
Map082.rxdata
Map083.rxdata
Map084.rxdata
Map085.rxdata
Map086.rxdata
Map087.rxdata
Map088.rxdata
Map089.rxdata
Map090.rxdata
Map091.rxdata
Map092.rxdata
Map093.rxdata
Map094.rxdata
Map095.rxdata
Map096.rxdata
Map097.rxdata
Map098.rxdata
Map099.rxdata
Map100.rxdata
Map101.rxdata
Map102.rxdata
Map103.rxdata
Map104.rxdata
Map105.rxdata
Map106.rxdata
Map107.rxdata
Map108.rxdata
Map109.rxdata
Map110.rxdata
Map111.rxdata
Map112.rxdata
Map113.rxdata
Map114.rxdata
Map115.rxdata
Map116.rxdata
Map117.rxdata
Map118.rxdata
Map119.rxdata
Map120.rxdata
Map121.rxdata
Map122.rxdata
Map123.rxdata
Map124.rxdata
Map125.rxdata
Map126.rxdata
Map127.rxdata
Map128.rxdata
Map129.rxdata
Map130.rxdata
Map131.rxdata
Map132.rxdata
Map133.rxdata
Map134.rxdata
Map135.rxdata
Map136.rxdata
Map137.rxdata
Map138.rxdata
Map139.rxdata
Map140.rxdata
Map141.rxdata
Map142.rxdata
Map143.rxdata
Map144.rxdata
Map145.rxdata
Map146.rxdata
Map147.rxdata
Map148.rxdata
Map149.rxdata
Map150.rxdata
Map151.rxdata
Map152.rxdata
Map153.rxdata
Map154.rxdata
Map155.rxdata
Map156.rxdata
Map157.rxdata
Map158.rxdata
Map159.rxdata
Map160.rxdata
Map161.rxdata
Map162.rxdata
Map163.rxdata
Map164.rxdata
Map165.rxdata
Map166.rxdata
Map167.rxdata
Map168.rxdata
Map169.rxdata
Map170.rxdata
Map171.rxdata
Map172.rxdata
Map173.rxdata
Map174.rxdata
Map175.rxdata
Map176.rxdata
Map177.rxdata
Map178.rxdata
Map179.rxdata
Map180.rxdata
Map181.rxdata
Map182.rxdata
Map183.rxdata
Map184.rxdata
Map185.rxdata
Map186.rxdata
Map187.rxdata
Map188.rxdata
Map189.rxdata
Map190.rxdata
Map191.rxdata
Map192.rxdata
Map193.rxdata
Map194.rxdata
Map195.rxdata
Map196.rxdata
Map197.rxdata
Map198.rxdata
Map199.rxdata
Map200.rxdata
Map201.rxdata
Map202.rxdata
Map203.rxdata
Map204.rxdata
Map205.rxdata
Map206.rxdata
Map207.rxdata
Map208.rxdata
Map209.rxdata
Map210.rxdata
Map211.rxdata
Map212.rxdata
Map213.rxdata
Map214.rxdata
Map215.rxdata
Map216.rxdata
Map217.rxdata
Map218.rxdata
Map219.rxdata
Map220.rxdata
Map221.rxdata
Map222.rxdata
Map223.rxdata
Map224.rxdata
Map225.rxdata
Map226.rxdata
Map227.rxdata
Map228.rxdata
Map229.rxdata
Map230.rxdata
Map231.rxdata
Map232.rxdata
Map233.rxdata
Map234.rxdata
Map235.rxdata
Map236.rxdata
Map237.rxdata
Map238.rxdata
Map239.rxdata
Map240.rxdata
Map241.rxdata
Map242.rxdata
Map243.rxdata
Map244.rxdata
Map245.rxdata
Map246.rxdata
Map247.rxdata
Map248.rxdata
Map249.rxdata
Map250.rxdata
Map251.rxdata
Map252.rxdata
Map253.rxdata
Map254.rxdata
Map255.rxdata
Map256.rxdata
Map257.rxdata
Map258.rxdata
Map259.rxdata
Map260.rxdata
Map261.rxdata
Map262.rxdata
Map263.rxdata
Map264.rxdata
Map265.rxdata
Map266.rxdata
Map267.rxdata
Map268.rxdata
Map269.rxdata
Map270.rxdata
Map271.rxdata
Map272.rxdata
Map273.rxdata
Map274.rxdata
Map275.rxdata
Map276.rxdata
Map277.rxdata
Map278.rxdata
Map279.rxdata
Map280.rxdata
Map281.rxdata
Map282.rxdata
Map283.rxdata
Map284.rxdata
Map285.rxdata
Map286.rxdata
Map287.rxdata
Map288.rxdata
Map289.rxdata
Map290.rxdata
Map291.rxdata
Map292.rxdata
Map293.rxdata
Map294.rxdata
Map295.rxdata
Map296.rxdata
Map297.rxdata
Map298.rxdata
Map299.rxdata
Map300.rxdata
Map301.rxdata
Map302.rxdata
Map303.rxdata
Map304.rxdata
Map305.rxdata
Map306.rxdata
Map307.rxdata
Map308.rxdata
Map309.rxdata
Map310.rxdata
Map311.rxdata
Map312.rxdata
Map313.rxdata
Map314.rxdata
Map315.rxdata
Map316.rxdata
Map317.rxdata
Map318.rxdata
Map319.rxdata
Map320.rxdata
Map321.rxdata
Map322.rxdata
Map323.rxdata
Map324.rxdata
Map325.rxdata
Map326.rxdata
Map327.rxdata
Map328.rxdata
Map329.rxdata
Map330.rxdata
Map331.rxdata
Map332.rxdata
Map333.rxdata
Map334.rxdata
Map335.rxdata
Map336.rxdata
Map337.rxdata
Map338.rxdata
Map339.rxdata
Map340.rxdata
Map341.rxdata
Map342.rxdata
Map343.rxdata
Map344.rxdata
Map345.rxdata
Map346.rxdata
Map347.rxdata
Map348.rxdata
Map349.rxdata
Map350.rxdata
Map351.rxdata
Map352.rxdata
Map353.rxdata
Map354.rxdata
Map355.rxdata
Map356.rxdata
Map357.rxdata
Map358.rxdata
Map359.rxdata
Map360.rxdata
Map361.rxdata
Map362.rxdata
Map363.rxdata
Map364.rxdata
Map365.rxdata
Map366.rxdata
Map367.rxdata
Map368.rxdata
Map369.rxdata
Map370.rxdata
Map371.rxdata
Map372.rxdata
Map373.rxdata
Map374.rxdata
Map375.rxdata
Map376.rxdata
Map377.rxdata
Map378.rxdata
Map379.rxdata
Map380.rxdata
Map381.rxdata
Map382.rxdata
Map383.rxdata
Map384.rxdata
Map385.rxdata
Map386.rxdata
Map387.rxdata
Map388.rxdata
Map389.rxdata
Map390.rxdata
Map391.rxdata
Map392.rxdata
Map393.rxdata
Map394.rxdata
Map395.rxdata
Map396.rxdata
Map397.rxdata
Map398.rxdata
Map399.rxdata
Map400.rxdata
Map401.rxdata
Map402.rxdata
Map403.rxdata
Map404.rxdata
Map405.rxdata
Map406.rxdata
Map407.rxdata
Map408.rxdata
Map409.rxdata
Map410.rxdata
Map411.rxdata
Map412.rxdata
Map413.rxdata
Map414.rxdata
Map415.rxdata
Map416.rxdata
Map417.rxdata
Map418.rxdata
Map419.rxdata
Map420.rxdata
Map421.rxdata
Map422.rxdata
Map423.rxdata
Map424.rxdata
Map425.rxdata
Map426.rxdata
Map427.rxdata
Map428.rxdata
Map429.rxdata
Map430.rxdata
Map431.rxdata
Map432.rxdata
Map433.rxdata
Map434.rxdata
Map435.rxdata
Map436.rxdata
Map437.rxdata
Map438.rxdata
Map439.rxdata
Map440.rxdata
Map441.rxdata
Map442.rxdata
Map443.rxdata
Map444.rxdata
Map445.rxdata
Map446.rxdata
Map447.rxdata
Map448.rxdata
Map449.rxdata
Map450.rxdata
Map451.rxdata
Map452.rxdata
Map453.rxdata
Map454.rxdata
Map455.rxdata
Map456.rxdata
Map457.rxdata
Map458.rxdata
Map459.rxdata
Map460.rxdata
Map461.rxdata
Map462.rxdata
Map463.rxdata
Map464.rxdata
Map465.rxdata
Map466.rxdata
Map467.rxdata
Map468.rxdata
Map469.rxdata
Map470.rxdata
Map471.rxdata
Map472.rxdata
Map473.rxdata
Map474.rxdata
Map475.rxdata
Map476.rxdata
Map477.rxdata
Map478.rxdata
Map479.rxdata
Map480.rxdata
Map481.rxdata
Map482.rxdata
Map483.rxdata
Map484.rxdata
Map485.rxdata
Map486.rxdata
Map487.rxdata
Map488.rxdata
Map489.rxdata
Map490.rxdata
Map491.rxdata
Map492.rxdata
Map493.rxdata
Map494.rxdata
Map495.rxdata
Map496.rxdata
Map497.rxdata
Map498.rxdata
Map499.rxdata
Map500.rxdata
Map501.rxdata
Map502.rxdata
Map503.rxdata
Map504.rxdata
Map505.rxdata
Map506.rxdata
Map507.rxdata
Map508.rxdata
Map509.rxdata
Map510.rxdata
Map511.rxdata
Map512.rxdata
Map513.rxdata
Map514.rxdata
Map515.rxdata
Map516.rxdata
Map517.rxdata
Map518.rxdata
Map519.rxdata
Map520.rxdata
Map521.rxdata
Map522.rxdata
Map523.rxdata
Map524.rxdata
Map525.rxdata
Map526.rxdata
Map527.rxdata
Map528.rxdata
Map529.rxdata
Map530.rxdata
Map531.rxdata
Map532.rxdata
Map533.rxdata
Map534.rxdata
Map535.rxdata
Map536.rxdata
Map537.rxdata
Map538.rxdata
Map539.rxdata
Map540.rxdata
Map541.rxdata
Map542.rxdata
Map543.rxdata
Map544.rxdata
Map545.rxdata
Map546.rxdata
Map547.rxdata
Map548.rxdata
Map549.rxdata
Map550.rxdata
Map551.rxdata
Map552.rxdata
Map553.rxdata
Map554.rxdata
Map555.rxdata
Map556.rxdata
Map557.rxdata
Map558.rxdata
Map559.rxdata
Map560.rxdata
Map561.rxdata
Map562.rxdata
Map563.rxdata
Map564.rxdata
Map565.rxdata
Map566.rxdata
Map567.rxdata
Map568.rxdata
Map569.rxdata
Map570.rxdata
Map571.rxdata
Map572.rxdata
Map573.rxdata
Map574.rxdata
Map575.rxdata
Map576.rxdata
Map577.rxdata
Map578.rxdata
Map579.rxdata
Map580.rxdata
Map581.rxdata
Map582.rxdata
Map583.rxdata
Map584.rxdata
Map585.rxdata
Map586.rxdata
Map587.rxdata
Map588.rxdata
Map589.rxdata
Map590.rxdata
Map591.rxdata
Map592.rxdata
Map593.rxdata
Map594.rxdata
Map595.rxdata
Map596.rxdata
Map597.rxdata
Map598.rxdata
Map599.rxdata
Map600.rxdata
Map601.rxdata
Map602.rxdata
Map603.rxdata
Map604.rxdata
Map605.rxdata
Map606.rxdata
Map607.rxdata
Map608.rxdata
Map609.rxdata
Map610.rxdata
Map611.rxdata
Map612.rxdata
Map613.rxdata
Map614.rxdata
Map615.rxdata
Map616.rxdata
Map617.rxdata
Map618.rxdata
Map619.rxdata
Map620.rxdata
Map621.rxdata
Map622.rxdata
Map623.rxdata
Map624.rxdata
Map625.rxdata
Map626.rxdata
Map627.rxdata
Map628.rxdata
Map629.rxdata
Map630.rxdata
Map631.rxdata
Map632.rxdata
Map633.rxdata
Map634.rxdata
Map635.rxdata
Map636.rxdata
Map637.rxdata
Map638.rxdata
Map639.rxdata
Map640.rxdata
Map641.rxdata
Map642.rxdata
Map643.rxdata
Map644.rxdata
Map645.rxdata
Map646.rxdata
Map647.rxdata
Map648.rxdata
Map649.rxdata
Map650.rxdata
Map651.rxdata
Map652.rxdata
Map653.rxdata
Map654.rxdata
Map655.rxdata
Map656.rxdata
Map657.rxdata
Map658.rxdata
Map659.rxdata
Map660.rxdata
Map661.rxdata
Map662.rxdata
Map663.rxdata
Map664.rxdata
Map665.rxdata
Map666.rxdata
Map667.rxdata
Map668.rxdata
Map669.rxdata
Map670.rxdata
Map671.rxdata
Map672.rxdata
Map673.rxdata
Map674.rxdata
Map675.rxdata
Map676.rxdata
Map677.rxdata
Map678.rxdata
Map679.rxdata
Map680.rxdata
Map681.rxdata
Map682.rxdata
Map683.rxdata
Map684.rxdata
Map685.rxdata
Map686.rxdata
Map687.rxdata
Map688.rxdata
Map689.rxdata
Map690.rxdata
Map691.rxdata
Map692.rxdata
Map693.rxdata
Map694.rxdata
Map695.rxdata
Map696.rxdata
Map697.rxdata
Map698.rxdata
Map699.rxdata
Map700.rxdata
Map701.rxdata
Map702.rxdata
Map703.rxdata
Map704.rxdata
Map705.rxdata
Map706.rxdata
Map707.rxdata
Map708.rxdata
Map709.rxdata
Map710.rxdata
Map711.rxdata
Map712.rxdata
Map713.rxdata
Map714.rxdata
Map715.rxdata
Map716.rxdata
Map717.rxdata
Map718.rxdata
Map719.rxdata
Map720.rxdata
Map721.rxdata
Map722.rxdata
Map723.rxdata
Map724.rxdata
Map725.rxdata
Map726.rxdata
Map727.rxdata
Map728.rxdata
Map729.rxdata
Map730.rxdata
Map731.rxdata
Map732.rxdata
Map733.rxdata
Map734.rxdata
Map734_bakcup.rxdata
Map735.rxdata
Map736.rxdata
Map737.rxdata
Map738.rxdata
Map739.rxdata
Map740.rxdata
Map741.rxdata
Map742.rxdata
Map743.rxdata
Map744.rxdata
Map745.rxdata
Map746.rxdata
Map747.rxdata
Map748.rxdata
Map749.rxdata
Map750.rxdata
Map751.rxdata
Map752.rxdata
Map753.rxdata
Map754.rxdata
Map755.rxdata
Map756.rxdata
Map757.rxdata
Map758.rxdata
Map759.rxdata
Map760.rxdata
Map761.rxdata
Map762.rxdata
Map763.rxdata
Map764.rxdata
Map765.rxdata
Map766.rxdata
Map767.rxdata
Map768.rxdata
Map769.rxdata
Map770.rxdata
Map771.rxdata
Map772.rxdata
Map773.rxdata
Map774.rxdata
Map775.rxdata
Map776.rxdata
Map777.rxdata
Map778.rxdata
Map779.rxdata
Map780.rxdata
Map781.rxdata
Map782.rxdata
Map783.rxdata
Map784.rxdata
Map785.rxdata
Map786.rxdata
Map787.rxdata
Map788.rxdata
Map789.rxdata
Map790.rxdata
Map791.rxdata
Map792.rxdata
Map793.rxdata
Map794.rxdata
Map795.rxdata
Map796.rxdata
MapInfos.rxdata
map_connections.dat
map_metadata.dat
messages.dat
messages_fr.dat
metadata.dat
metrics.dat
move2anim.dat
moves.backup.dat
moves.dat
phone.dat
PkmnAnimations.rxdata
Plugins
PluginScripts.rxdata
regionals.dat
regional_dexes.dat
ribbons.dat
Scripts
Scripts.rxdata
shadowmoves.dat
shadow_movesets.dat
Skills.rxdata
species.dat
SPRITE_CREDS
States.rxdata
System.rxdata
Tilesets.rxdata
TilesetsTemp.rxdata
townmap.dat
town_map.dat
trainerlists.dat
trainers.dat
trainers_modern.dat
trainertypes.dat
trainer_lists.dat
trainer_types.dat
Troops.rxdata
types.dat
VERSION
Weapons.rxdata
Can't render this file because it contains an unexpected character in line 1 and column 11.

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 238 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 583 KiB

After

Width:  |  Height:  |  Size: 774 KiB

View File

@@ -547,11 +547,11 @@
539,SURFBOARD,Surfboard,Surfboards,8,0,"A board that can be used to cross water without the use of a HM.",2,0,6
540,TELEPORTER,Teleporter,Teleporters,8,0,"A small device that can be used to teleport to a city without the use of a HM.",2,0,6
541,SCUBAGEAR,Scuba Gear,Scuba Gears,8,0,"Diving equipment that can be used to dive underwater without the use of a HM.",2,0,6
542,LEVER,Handtruck,Handtrucks,8,0,"A utility dolly that allows to move large rocks without the use of a HM.",2,0,6
542,LEVER,Dolly,Dollies,8,0,"A utility dolly that allows to move large rocks without the use of a HM.",2,0,6
543,DEBUGGER,Debugger,Debuggers,8,0,"Use this to return to the last Pokémon Center you've visited if you get stuck somewhere.",2,0,6
544,WOODENPLANKS,Wooden Planks,Wooden Planks,8,0,A set of wooden planks used for construction.,0,0,6,
545,BRICKS,Bricks,Bricks,8,0,A set of bricks used for construction.,0,0,6,
546,ROCKETID,Team Rocket ID,Team Rocket IDs,8,0,A Team Rocket ID badge that belongs to somebedy else. It could be useful.,0,0,6,
546,ROCKETID,Team Rocket ID,Team Rocket IDs,8,0,A Team Rocket ID badge that belongs to somebedy else. It could be useful.,0,0,6,
547,BEER,Beer,Beers,7,0,"A can of beer. It raises your Pokémon's Atk and Spd stats. But it also makes your Pokémon confused.",0,2,0,
548,SHOOTER,Tequila,Tequilas,7,0,"A small glass of strong liquor. It raises your Pokémon's Sp.Atk and Spd stats. But it also makes your Pokémon confused.",0,2,0,
549,SUPERSPLICERS,Super Splicers,Super Splicers,1,1000,"A splicer used to fuse two Pokémon together. It results in a higher-leveled fusion than regular splicers.",1,0,0,

View File

@@ -1815,7 +1815,7 @@ Pokemon = B109H33,26 #Nidofing,
[TEAMROCKET_M,Joffrey]
Pokemon = KOFFING,21 #Tentata,
Ball = ROCKETBALL
Pokemon = B20H73,23 #Tentaicate,
Pokemon = B42H20,23 #RATICATE/GOLBAT,
Ball = ROCKETBALL
########################
@@ -1843,7 +1843,7 @@ Pokemon = B100H132,26 #Ditorb,
Moves = TRANSFORM,CHARGEBEAM,LIGHTSCREEN,SONICBOOM
AbilityIndex = 0
Ball = ROCKETBALL
Pokemon = B147H88,25 #Gritini,
Pokemon = B89h42,25 #muk / golbat,
Ball = ROCKETBALL
#######################