Hard mode

This commit is contained in:
infinitefusion
2021-12-26 16:03:01 -05:00
parent 56c13d0907
commit 7240e76ed0
6 changed files with 259 additions and 242 deletions

View File

@@ -30,6 +30,7 @@ module Settings
OVERRIDE_BATTLE_LEVEL_SWITCH = 785
OVERRIDE_BATTLE_LEVEL_VALUE_VAR = 240
HARD_MODE_LEVEL_MODIFIER = 1.1
ZAPMOLCUNO_NB = 176821
@@ -184,6 +185,7 @@ module Settings
def self.storage_creator_name
return _INTL("Bill")
end
# The number of boxes in Pokémon storage.
NUM_STORAGE_BOXES = 30
@@ -202,6 +204,7 @@ module Settings
_INTL("Key Items")
]
end
# The maximum number of slots per pocket (-1 means infinite number). Ignore
# the first number (0).
BAG_MAX_POCKET_SIZE = [0, -1, -1, -1, -1, -1, -1, -1, -1]
@@ -233,6 +236,7 @@ module Settings
[_INTL("Kanto Pokédex"), 0]
]
end
# Whether all forms of a given species will be immediately available to view
# in the Pokédex so long as that species has been seen at all (true), or
# whether each form needs to be seen specifically before that form appears in

View File

@@ -144,6 +144,13 @@ module GameData
species = reverseFusionSpecies(species)
end
level = pkmn_data[:level]
if $game_switches[GAME_DIFFICULTY_HARD]
level *= Settings::HARD_MODE_LEVEL_MODIFIER.ceil
if level > Settings::MAXIMUM_LEVEL
level = Settings::MAXIMUM_LEVEL
end
end
if $game_switches[Settings::OVERRIDE_BATTLE_LEVEL_SWITCH]
override_level = $game_variables[Settings::OVERRIDE_BATTLE_LEVEL_VALUE_VAR]
if override_level.is_a?(Integer)

View File

@@ -172,8 +172,10 @@ class PokeBattle_Battle
new_index = pbLastInTeam(idxBattler)
idxPartyForName = new_index if new_index >= 0 && new_index != idxPartyNew
end
if pbDisplayConfirm(_INTL("{1} is about to send in {2}. Will you switch your Pokémon?",
opponent.full_name, enemyParty[idxPartyForName].name))
switchMessageHard = _INTL("{1} is about to send in a new Pokémon. Will you switch your Pokémon?", opponent.fullname)
switchMessageNormal = _INTL("{1} is about to send in {2}. Will you switch your Pokémon?", opponent.full_name, enemyParty[idxPartyForName].name)
switchMessage = $game_switches[GAME_DIFFICULTY_HARD] ? switchMessageHard : switchMessageNormal
if pbDisplayConfirm(switchMessage)
idxPlayerPartyNew = pbSwitchInBetween(0, false, true)
if idxPlayerPartyNew >= 0
pbMessageOnRecall(@battlers[0])
@@ -188,7 +190,8 @@ class PokeBattle_Battle
idxPlayerPartyNew = pbGetReplacementPokemonIndex(idxBattler) # Owner chooses
pbRecallAndReplace(idxBattler, idxPlayerPartyNew)
switched.push(idxBattler)
else # Player's Pokémon has fainted in a wild battle
else
# Player's Pokémon has fainted in a wild battle
switch = false
if !pbDisplayConfirm(_INTL("Use next Pokémon?"))
switch = (pbRun(idxBattler, true) <= 0)

View File

@@ -64,6 +64,9 @@ class Trainer
end
def skill_level
if $game_switches[GAME_DIFFICULTY_HARD]
return 100
end
return GameData::TrainerType.get(@trainer_type).skill_level;
end

View File

@@ -396,13 +396,13 @@ class PokemonOption_Scene
end
if $game_switches && $game_switches[GOT_BADGE_5] #badge for Surf
# if $game_switches && $game_switches[GOT_BADGE_5] #badge for Surf
@PokemonOptions <<
EnumOption.new(_INTL("Quick Surf"), [_INTL("Off"), _INTL("On")],
proc { $PokemonSystem.quicksurf },
proc { |value| $PokemonSystem.quicksurf = value }
)
end
# end
@PokemonOptions = pbAddOnOptions(@PokemonOptions)
@sprites["option"] = Window_PokemonOption.new(@PokemonOptions, 0,

Binary file not shown.