From bb487373ab1e778d35ebc85950aeccc772a85635 Mon Sep 17 00:00:00 2001 From: Flashfyre Date: Mon, 23 Oct 2023 17:47:05 -0400 Subject: [PATCH] Rework EXP. Share and rename to EXP. All --- src/battle-phases.ts | 10 +++++----- src/data/move.ts | 3 +-- src/modifier/modifier-type.ts | 2 +- 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/src/battle-phases.ts b/src/battle-phases.ts index cdcec8ed4..82f4402ae 100644 --- a/src/battle-phases.ts +++ b/src/battle-phases.ts @@ -2030,12 +2030,12 @@ export class VictoryPhase extends PokemonPhase { continue; } let expMultiplier = 0; - if (participated) + if (participated) { expMultiplier += (1 / participantIds.size); - if (participantIds.size > 1 && multipleParticipantExpBonusModifier) - expMultiplier += (multipleParticipantExpBonusModifier.getStackCount() * 0.1); - if (expShareModifier) - expMultiplier += expShareModifier.getStackCount() * 0.1; + if (participantIds.size > 1 && multipleParticipantExpBonusModifier) + expMultiplier += multipleParticipantExpBonusModifier.getStackCount() * 0.2; + } else if (expShareModifier) + expMultiplier += (expShareModifier.getStackCount() * 0.2) / participantIds.size; const pokemonExp = new Utils.NumberHolder(expValue * expMultiplier); this.scene.applyModifiers(PokemonExpBoosterModifier, true, partyMember, pokemonExp); partyMemberExp.push(Math.floor(pokemonExp.value)); diff --git a/src/data/move.ts b/src/data/move.ts index 6c90fe619..2a5be682c 100644 --- a/src/data/move.ts +++ b/src/data/move.ts @@ -2375,8 +2375,7 @@ export function initMoves() { new AttackMove(Moves.SURF, "Surf", Type.WATER, MoveCategory.SPECIAL, 90, 100, 15, 123, "Hits all adjacent Pokémon.", -1, 0, 1) .target(MoveTarget.ALL_NEAR_OTHERS), new AttackMove(Moves.ICE_BEAM, "Ice Beam", Type.ICE, MoveCategory.SPECIAL, 90, 100, 10, 135, "May freeze opponent.", 10, 0, 1) - .attr(StatusEffectAttr, StatusEffect.FREEZE) - .target(MoveTarget.ALL_NEAR_OTHERS), + .attr(StatusEffectAttr, StatusEffect.FREEZE), new AttackMove(Moves.BLIZZARD, "Blizzard", Type.ICE, MoveCategory.SPECIAL, 110, 70, 5, 143, "May freeze opponent.", 10, 0, 1) .attr(BlizzardAccuracyAttr) .attr(StatusEffectAttr, StatusEffect.FREEZE) // TODO: 30% chance to hit protect/detect in hail diff --git a/src/modifier/modifier-type.ts b/src/modifier/modifier-type.ts index 9e9903144..3f87fb2af 100644 --- a/src/modifier/modifier-type.ts +++ b/src/modifier/modifier-type.ts @@ -617,7 +617,7 @@ export const modifierTypes = { TM_GREAT: () => new TmModifierTypeGenerator(ModifierTier.GREAT), TM_ULTRA: () => new TmModifierTypeGenerator(ModifierTier.ULTRA), - EXP_SHARE: () => new ModifierType('EXP. Share', 'All Pokémon in your party gain an additional 10% of a battle\'s EXP. Points', + EXP_SHARE: () => new ModifierType('EXP. All', 'Non-participants gain 20% of a single participant\'s EXP. Points', (type, _args) => new Modifiers.ExpShareModifier(type)), EXP_BALANCE: () => new ModifierType('EXP. Balance', 'All EXP. Points received from battles are split between the lower leveled party members', (type, _args) => new Modifiers.ExpBalanceModifier(type)),