Rework EXP. Share and rename to EXP. All

pull/2/head
Flashfyre 2023-10-23 17:47:05 -04:00
parent 2001dd780b
commit bb487373ab
3 changed files with 7 additions and 8 deletions

View File

@ -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));

View File

@ -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

View File

@ -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)),