10 Commits

Author SHA1 Message Date
infinitefusion
172797184e Fixes crash when sending bait in safari zone 2023-07-09 16:04:54 -04:00
infinitefusion
172180790b Eusine give back stolen pokemon in goldenrod 2023-07-09 10:52:35 -04:00
infinitefusion
fc243c6ac7 Removes option to fuse from PC while holding a pokemon (the option did nothing) 2023-07-08 12:18:27 -04:00
infinitefusion
95779bfccb adds missing several sound effects 2023-07-08 10:09:11 -04:00
infinitefusion
78caa8fc21 Fixes crash when trying to revive fossil after updating from older version 2023-07-08 09:07:18 -04:00
infinitefusion
0bbbbea686 Added more prizes to fusion quiz and adjusted prize exchange prices 2023-07-04 20:41:24 -04:00
infinitefusion
45bb8d5946 Fix fusion icons 2023-07-03 18:41:46 -04:00
infinitefusion
6e1dd22df8 FIxes mareanie doll not working 2023-07-03 12:42:40 -04:00
infinitefusion
0fca95c637 Fixes boon island warps 2023-07-03 07:48:27 -04:00
infinitefusion
dbfaf352bc Fixes abilities activating twice 2023-07-02 22:26:07 -04:00
76 changed files with 41 additions and 32 deletions

3
.gitignore vendored
View File

@@ -1,3 +0,0 @@
/*
!/Data/Scripts/
!/Data/Scripts/**

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
Audio/SE/Battle flee.ogg Normal file

Binary file not shown.

Binary file not shown.

BIN
Audio/SE/Battle recall.ogg Normal file

Binary file not shown.

BIN
Audio/SE/Battle throw.ogg Normal file

Binary file not shown.

BIN
Audio/SE/Exclaim.wav Normal file

Binary file not shown.

BIN
Audio/SE/GUI menu close.ogg Normal file

Binary file not shown.

BIN
Audio/SE/GUI menu open.ogg Normal file

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
Audio/SE/GUI sel buzzer.ogg Normal file

Binary file not shown.

BIN
Audio/SE/GUI sel cancel.ogg Normal file

Binary file not shown.

BIN
Audio/SE/GUI sel cursor.ogg Normal file

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
Audio/SE/Mart buy item.ogg Normal file

Binary file not shown.

BIN
Audio/SE/PC access.ogg Normal file

Binary file not shown.

BIN
Audio/SE/PC close.ogg Normal file

Binary file not shown.

BIN
Audio/SE/PC open.ogg Normal file

Binary file not shown.

BIN
Audio/SE/Pkmn exp full.ogg Normal file

Binary file not shown.

BIN
Audio/SE/Pkmn exp gain.ogg Normal file

Binary file not shown.

BIN
Audio/SE/Pkmn faint.ogg Normal file

Binary file not shown.

Binary file not shown.

BIN
Audio/SE/Player bump.ogg Normal file

Binary file not shown.

BIN
Audio/SE/Player jump.ogg Normal file

Binary file not shown.

BIN
Audio/SE/Rock Smash.ogg Normal file

Binary file not shown.

BIN
Audio/SE/Vs flash.ogg Normal file

Binary file not shown.

BIN
Audio/SE/Vs sword.ogg Normal file

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.

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"
GAME_VERSION_NUMBER = "5.3.0.5"
POKERADAR_LIGHT_ANIMATION_RED_ID = 17
POKERADAR_LIGHT_ANIMATION_GREEN_ID = 18

View File

@@ -32,7 +32,7 @@ class Game_Player < Game_Character
def bump_into_object
return if @bump_se && @bump_se>0
pbSEPlay("Player bump")
@bump_se = Graphics.frame_rate/4
@bump_se = Graphics.frame_rate/2
end
def move_generic(dir, turn_enabled = true)

View File

@@ -734,7 +734,7 @@ def pbMessageDisplay(msgwindow, message, letterbyletter = true, commandProc = ni
head = getBasePokemonID(param.to_i, false)
body = getBasePokemonID(param.to_i, true)
facewindow.dispose if facewindow
path = obtainPokemonSpritePath(body, head, $game_variables[VAR_CUSTOM_SPRITES_ENABLED] == 0)
path = obtainPokemonSpritePath(body, head, true)
facewindow = isFusion ? PictureWindow.new(path) : PictureWindow.new("Graphics/Battlers/#{head}/#{head}.png")
pbPositionNearMsgWindow(facewindow, msgwindow, :left)
facewindow.viewport = msgwindow.viewport

View File

@@ -621,7 +621,7 @@ class BattlerDamageAnimation < PokeBattle_Animation
# Animation
delay = 0
case @effectiveness
when 0 then battler.setSE(delay, "Battle damage normal")
when 0 then battler.setSE(delay, "Battle damage normal");
when 1 then battler.setSE(delay, "Battle damage weak")
when 2 then battler.setSE(delay, "Battle damage super")
end

View File

@@ -150,7 +150,7 @@ class ThrowBaitAnimation < PokeBattle_Animation
# Show Pokémon jumping before eating the bait
delay = ball.totalDuration+3
2.times do
battler.setSE(delay,"player jump")
battler.setSE(delay,"Player jump")
battler.moveDelta(delay,3,0,-16)
battler.moveDelta(delay+4,3,0,16)
delay = battler.totalDuration+1

View File

@@ -657,6 +657,7 @@ def pbRockSmash
pbMessage(_INTL("{1} used {2}!", speciesname, GameData::Move.get(move).name))
pbHiddenMoveAnimation(movefinder)
facingEvent = $game_player.pbFacingEvent(true)
pbSEPlay("Rock Smash", 80)
$scene.spriteset.addUserAnimation(Settings::ROCK_SMASH_ANIMATION_ID, facingEvent.x, facingEvent.y, false)
return true
end

View File

@@ -111,8 +111,9 @@ class PokeRadar_UI
bitmap1 = AnimatedBitmap.new(GameData::Species.icon_filename(headPoke))
bitmap2 = AnimatedBitmap.new(GameData::Species.icon_filename(bodyPoke))
dexNum = getDexNumberForSpecies(@pokemon.species)
ensureFusionIconExists()
bitmapFileName = sprintf("Graphics/Pokemon/FusionIcons/icon%03d", headPoke_number)
bitmapFileName = sprintf("Graphics/Pokemon/FusionIcons/icon%03d", dexNum)
headPokeFileName = GameData::Species.icon_filename(headPoke)
bitmapPath = sprintf("%s.png", bitmapFileName)
IO.copy_stream(headPokeFileName, bitmapPath)

View File

@@ -186,9 +186,9 @@ class PokemonIconSprite < SpriteWrapper
icon1 = AnimatedBitmap.new(GameData::Species.icon_filename(headPoke))
icon2 = AnimatedBitmap.new(GameData::Species.icon_filename(bodyPoke))
dexNum = getDexNumberForSpecies(@pokemon.species)
ensureFusionIconExists
bitmapFileName = sprintf("Graphics/Pokemon/FusionIcons/icon%03d", headPoke_number)
bitmapFileName = sprintf("Graphics/Pokemon/FusionIcons/icon%03d", dexNum)
headPokeFileName = GameData::Species.icon_filename(headPoke)
bitmapPath = sprintf("%s.png", bitmapFileName)
IO.copy_stream(headPokeFileName, bitmapPath)

View File

@@ -33,8 +33,9 @@ class PokemonBoxIcon < IconSprite
icon1 = AnimatedBitmap.new(GameData::Species.icon_filename(headPoke))
icon2 = AnimatedBitmap.new(GameData::Species.icon_filename(bodyPoke))
dexNum = getDexNumberForSpecies(species)
ensureFusionIconExists
bitmapFileName = sprintf("Graphics/Pokemon/FusionIcons/icon%03d", headPoke_number)
bitmapFileName = sprintf("Graphics/Pokemon/FusionIcons/icon%03d", dexNum)
headPokeFileName = GameData::Species.icon_filename(headPoke)
bitmapPath = sprintf("%s.png", bitmapFileName)
IO.copy_stream(headPokeFileName, bitmapPath)
@@ -1670,10 +1671,10 @@ class PokemonStorageScreen
commands[cmdUnfuse = commands.length] = _INTL("Unfuse")
commands[cmdReverse = commands.length] = _INTL("Reverse") if $PokemonBag.pbQuantity(:DNAREVERSER) > 0 || $PokemonBag.pbQuantity(:INFINITEREVERSERS) > 0
else
commands[cmdFuse = commands.length] = _INTL("Fuse")
commands[cmdFuse = commands.length] = _INTL("Fuse") if !@heldpkmn
end
end
commands[cmdNickname = commands.length] = _INTL("Nickname")
commands[cmdNickname = commands.length] = _INTL("Nickname") if !@heldpkmn
commands[cmdWithdraw = commands.length] = (selected[0] == -1) ? _INTL("Store") : _INTL("Withdraw")
commands[cmdItem = commands.length] = _INTL("Item")
@@ -2200,7 +2201,6 @@ class PokemonStorageScreen
pbDisplay(_INTL("{1} is already fused!", heldpoke.name))
return
end
p selected
if(heldpoke.egg?)
pbDisplay(_INTL("It's impossible to fuse an egg!"))
return

View File

@@ -303,7 +303,9 @@ end
def tryRandomizeGiftPokemon(pokemon, dontRandomize = false)
if $game_switches[SWITCH_RANDOM_GIFT_POKEMON] && $game_switches[SWITCH_RANDOM_WILD] && !dontRandomize
oldSpecies = dexNum(pokemon.species)
pokemon.species = getSpecies($PokemonGlobal.psuedoBSTHash[oldSpecies])
oldSpecies = pokemon.is_a?(Pokemon) ? dexNum(pokemon) : dexNum(pokemon.species)
if $PokemonGlobal.psuedoBSTHash[oldSpecies]
pokemon.species = getSpecies($PokemonGlobal.psuedoBSTHash[oldSpecies])
end
end
end

View File

@@ -730,6 +730,7 @@ class PokemonFusionScene
@pokemon1.steps_to_hatch = @pokemon1.species_data.hatch_steps
end
#@pokemon1.ability = pbChooseAbility(@pokemon1, hiddenAbility1, hiddenAbility2)
#
pbChooseAbility(@pokemon1, hiddenAbility1, hiddenAbility2)
setFusionMoves(@pokemon1, @pokemon2, firstOptionSelected) if !noMoves

View File

@@ -19,10 +19,12 @@ class PokeBattle_Battler
#Secondary ability utility methods for battlers class
def ability2
return nil if !$game_switches[SWITCH_DOUBLE_ABILITIES]
return GameData::Ability.try_get(@ability2_id)
end
def ability2=(value)
return if !$game_switches[SWITCH_DOUBLE_ABILITIES]
new_ability = GameData::Ability.try_get(value)
@ability2_id = (new_ability) ? new_ability.id : nil
end
@@ -42,6 +44,7 @@ class PokeBattle_Battler
end
def hasActiveAbilityDouble?(check_ability, ignore_fainted = false)
return false if !$game_switches[SWITCH_DOUBLE_ABILITIES]
return false if !abilityActive?(ignore_fainted)
if check_ability.is_a?(Array)
return check_ability.include?(@ability_id) || check_ability.include?(@ability2_id)
@@ -148,15 +151,18 @@ class Pokemon
#Secondary ability utility methods for pokemon class
def ability2_index
return nil if !$game_switches[SWITCH_DOUBLE_ABILITIES]
@ability2_index = (@personalID & 1) if !@ability2_index
return @ability2_index
end
def ability2
return nil if !$game_switches[SWITCH_DOUBLE_ABILITIES]
return GameData::Ability.try_get(ability2_id())
end
def ability2=(value)
return if !$game_switches[SWITCH_DOUBLE_ABILITIES]
return if value && !GameData::Ability.exists?(value)
@ability2 = (value) ? GameData::Ability.get(value).id : value
end
@@ -183,6 +189,7 @@ class Pokemon
end
def ability2_id
return nil if !$game_switches[SWITCH_DOUBLE_ABILITIES]
if !@ability2
sp_data = species_data
abil_index = ability_index
@@ -244,10 +251,6 @@ class PokemonFusionScene
if scene.hasNickname
@pokemon1.name = scene.nickname
end
p @pokemon1.ability.real_name
p @pokemon1.ability2.real_name
end
end

View File

@@ -36,15 +36,15 @@ class ExperimentalOptionsScene < PokemonOption_Scene
proc { |value|
$game_switches[SWITCH_NO_LEVELS_MODE] = value == 0
}, "All Pokémon use their base stats, regardless of levels."
),
EnumOption.new(_INTL("Double abilities"), [_INTL("On"), _INTL("Off")],
proc {
$game_switches[SWITCH_DOUBLE_ABILITIES] ? 0 : 1
},
proc { |value|
$game_switches[SWITCH_DOUBLE_ABILITIES] = value == 0
}, "Fused Pokémon have two abilities at the same time"
)
)#,
# EnumOption.new(_INTL("Double abilities"), [_INTL("On"), _INTL("Off")],
# proc {
# $game_switches[SWITCH_DOUBLE_ABILITIES] ? 0 : 1
# },
# proc { |value|
# $game_switches[SWITCH_DOUBLE_ABILITIES] = value == 0
# }, "Fused Pokémon have two abilities at the same time"
#)
]
return options

View File

@@ -191,12 +191,16 @@ class FusionQuiz
def current_streak_dialog()
return if @current_streak ==0
streak_base_worth= @difficulty == :REGULAR ? 25 : 100
if @current_streak % 4 == 0
extra_points = (@current_streak/4)*streak_base_worth
if @current_streak >= 8
pbMessage(_INTL("That's {1} correct answers in a row. You're on a roll!", @current_streak))
else
pbMessage(_INTL("That's {1} correct answers in a row. You're doing great!", @current_streak))
end
pbMessage(_INTL("Here's {1} extra points for maintaining a streak!",extra_points))
award_points(extra_points)
end
end
@@ -229,7 +233,6 @@ class FusionQuiz
def give_answer(prompt_message, answer_id, should_generate_new_choices)
question_answered = false
answer_pokemon_name = getPokemon(answer_id).real_name
while !question_answered
if @difficulty == :ADVANCED
player_answer = prompt_pick_answer_advanced(prompt_message, answer_id)

View File

@@ -1870,7 +1870,8 @@ ItemHandlers::UseInField.add(:BOXLINK, proc { |item|
blacklisted_maps = [
315,316,317,318,328,343,#Elite Four
776,777,778,779,780,781,782,783,784, #Mt. Silver
722,723,724,720 #Dream sequence
722,723,724,720, #Dream sequence
304,306,307 #Victory road
]
if blacklisted_maps.include?($game_map.map_id)
Kernel.pbMessage("There doesn't seem to be any network coverage here...")

Binary file not shown.

BIN
x64-msvcrt-ruby300.dll Normal file

Binary file not shown.