Finish Missing Docs

This commit is contained in:
xsn34kzx 2024-08-22 22:24:17 -04:00
parent 6fe3183c52
commit eeb1ff5760
3 changed files with 20 additions and 2 deletions

View File

@ -746,6 +746,16 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
} }
} }
/**
* Calculates and retrieves the final value of a stat considering any held
* items, move effects, opponent abilities, and whether there was a critical
* hit.
* @param stat the desired {@linkcode EffectiveStat}
* @param opponent the target {@linkcode Pokemon}
* @param move the {@linkcode Move} being used
* @param isCritical determines whether a critical hit has occurred or not (`false` by default)
* @returns the final in-battle value of a stat
*/
getEffectiveStat(stat: EffectiveStat, opponent?: Pokemon, move?: Move, isCritical: boolean = false): integer { getEffectiveStat(stat: EffectiveStat, opponent?: Pokemon, move?: Move, isCritical: boolean = false): integer {
const statValue = new Utils.NumberHolder(this.getStat(stat, false)); const statValue = new Utils.NumberHolder(this.getStat(stat, false));
this.scene.applyModifiers(StatBoosterModifier, this.isPlayer(), this, stat, statValue); this.scene.applyModifiers(StatBoosterModifier, this.isPlayer(), this, stat, statValue);
@ -1958,7 +1968,10 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
* *
* Note that this does not apply to evasion or accuracy * Note that this does not apply to evasion or accuracy
* @see {@linkcode getAccuracyMultiplier} * @see {@linkcode getAccuracyMultiplier}
* @param * @param stat the desired {@linkcode EffectiveStat}
* @param opponent the target {@linkcode Pokemon}
* @param move the {@linkcode Move} being used
* @param isCritical determines whether a critical hit has occurred or not (`false` by default)
* @return the stat stage multiplier to be used for effective stat calculation * @return the stat stage multiplier to be used for effective stat calculation
*/ */
getStatStageMultiplier(stat: EffectiveStat, opponent?: Pokemon, move?: Move, isCritical: boolean = false): number { getStatStageMultiplier(stat: EffectiveStat, opponent?: Pokemon, move?: Move, isCritical: boolean = false): number {

View File

@ -2876,7 +2876,7 @@ export class EnemyFusionChanceModifier extends EnemyPersistentModifier {
* - The player * - The player
* - The enemy * - The enemy
* @param scene current {@linkcode BattleScene} * @param scene current {@linkcode BattleScene}
* @param isPlayer {@linkcode boolean} for whether the the player (`true`) or enemy (`false`) is being overridden * @param isPlayer {@linkcode boolean} for whether the player (`true`) or enemy (`false`) is being overridden
*/ */
export function overrideModifiers(scene: BattleScene, isPlayer: boolean = true): void { export function overrideModifiers(scene: BattleScene, isPlayer: boolean = true): void {
const modifiersOverride: ModifierTypes.ModifierOverride[] = isPlayer ? Overrides.STARTING_MODIFIER_OVERRIDE : Overrides.OPP_MODIFIER_OVERRIDE; const modifiersOverride: ModifierTypes.ModifierOverride[] = isPlayer ? Overrides.STARTING_MODIFIER_OVERRIDE : Overrides.OPP_MODIFIER_OVERRIDE;

View File

@ -281,6 +281,11 @@ export class OverridesHelper extends GameManagerHelper {
return this; return this;
} }
/**
* Override the items rolled at the end of a battle
* @param items the items to be rolled
* @returns this
*/
itemRewards(items: ModifierOverride[]) { itemRewards(items: ModifierOverride[]) {
vi.spyOn(Overrides, "ITEM_REWARD_OVERRIDE", "get").mockReturnValue(items); vi.spyOn(Overrides, "ITEM_REWARD_OVERRIDE", "get").mockReturnValue(items);
this.log("Item rewards set to:", items); this.log("Item rewards set to:", items);