mirror of
https://github.com/pagefaultgames/pokerogue.git
synced 2025-08-26 01:09:29 +02:00
Bugfixing
Removed another RNG inconsistency where a 100% accurate move could still miss 1% of the time Fixed attack calculation
This commit is contained in:
parent
186d6f906e
commit
590016218c
@ -1852,8 +1852,7 @@ export function logShop(scene: BattleScene, floor: integer = scene.currentBattle
|
|||||||
* @param floor The wave index to write to. Defaults to the current floor.
|
* @param floor The wave index to write to. Defaults to the current floor.
|
||||||
*/
|
*/
|
||||||
export function logTrainer(scene: BattleScene, floor: integer = scene.currentBattle.waveIndex) {
|
export function logTrainer(scene: BattleScene, floor: integer = scene.currentBattle.waveIndex) {
|
||||||
var drpd: DRPD = JSON.parse(localStorage.getItem(getLogID(scene))!) as DRPD;
|
var drpd: DRPD = getDRPD(scene)
|
||||||
drpd = updateLog(drpd);
|
|
||||||
console.log(`Logging trainer: ${scene.currentBattle.trainer!.getTitleOnly()} ${scene.currentBattle.trainer!.getNameOnly()}`)
|
console.log(`Logging trainer: ${scene.currentBattle.trainer!.getTitleOnly()} ${scene.currentBattle.trainer!.getNameOnly()}`)
|
||||||
var wv: Wave = getWave(drpd, floor, scene)
|
var wv: Wave = getWave(drpd, floor, scene)
|
||||||
var t: LogTrainerData = exportTrainer(scene.currentBattle.trainer!)
|
var t: LogTrainerData = exportTrainer(scene.currentBattle.trainer!)
|
||||||
|
@ -385,7 +385,7 @@ export class MoveEffectPhase extends PokemonPhase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const accuracyMultiplier = user.getAccuracyMultiplier(target, this.move.getMove());
|
const accuracyMultiplier = user.getAccuracyMultiplier(target, this.move.getMove());
|
||||||
const rand = user.randSeedInt(100, 1, "Accuracy roll");
|
const rand = user.randSeedInt(100, undefined, "Accuracy roll");
|
||||||
|
|
||||||
return rand < (moveAccuracy * accuracyMultiplier);
|
return rand < (moveAccuracy * accuracyMultiplier);
|
||||||
}
|
}
|
||||||
|
@ -330,6 +330,7 @@ export default class FightUiHandler extends UiHandler {
|
|||||||
var dmgHigh = 0;
|
var dmgHigh = 0;
|
||||||
var dmgLow = 0;
|
var dmgLow = 0;
|
||||||
var out = target.apply(user, move.getMove(), true) as AttackData
|
var out = target.apply(user, move.getMove(), true) as AttackData
|
||||||
|
//console.log(out)
|
||||||
dmgHigh = out.damageHigh;
|
dmgHigh = out.damageHigh;
|
||||||
dmgLow = out.damageLow;
|
dmgLow = out.damageLow;
|
||||||
var minHits = 1
|
var minHits = 1
|
||||||
@ -369,8 +370,8 @@ export default class FightUiHandler extends UiHandler {
|
|||||||
maxHits += h[i].getStackCount()
|
maxHits += h[i].getStackCount()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
dmgLow = out[0] * minHits
|
dmgLow = dmgLow * minHits
|
||||||
dmgHigh = out[1] * maxHits
|
dmgHigh = dmgHigh * maxHits
|
||||||
var qSuffix = ""
|
var qSuffix = ""
|
||||||
if (target.isBoss()) {
|
if (target.isBoss()) {
|
||||||
var bossSegs = (target as EnemyPokemon).bossSegments
|
var bossSegs = (target as EnemyPokemon).bossSegments
|
||||||
@ -378,8 +379,8 @@ export default class FightUiHandler extends UiHandler {
|
|||||||
//dmgHigh /= bossSegs
|
//dmgHigh /= bossSegs
|
||||||
//qSuffix = "?"
|
//qSuffix = "?"
|
||||||
}
|
}
|
||||||
var dmgLowP = Math.round((dmgLow)/target.getMaxHp())
|
var dmgLowP = Math.round((dmgLow)/target.getMaxHp() * 100)
|
||||||
var dmgHighP = Math.round((dmgHigh)/target.getMaxHp())
|
var dmgHighP = Math.round((dmgHigh)/target.getMaxHp() * 100)
|
||||||
/*
|
/*
|
||||||
if (user.hasAbility(Abilities.PARENTAL_BOND)) {
|
if (user.hasAbility(Abilities.PARENTAL_BOND)) {
|
||||||
// Second hit deals 0.25x damage
|
// Second hit deals 0.25x damage
|
||||||
@ -394,6 +395,7 @@ export default class FightUiHandler extends UiHandler {
|
|||||||
var percentChance = Utils.rangemap(target.hp, dmgLow, dmgHigh, 0, 1)
|
var percentChance = Utils.rangemap(target.hp, dmgLow, dmgHigh, 0, 1)
|
||||||
koText = " (" + Math.round(percentChance * 100) + "% KO)"
|
koText = " (" + Math.round(percentChance * 100) + "% KO)"
|
||||||
}
|
}
|
||||||
|
//console.log(target.getMoveEffectiveness(user, move.getMove(), false, true) + "x - " + ((dmgLowP == dmgHighP) ? (dmgLowP + "%" + qSuffix) : (dmgLowP + "%-" + dmgHighP + "%" + qSuffix)) + koText)
|
||||||
if (target.getMoveEffectiveness(user, move.getMove(), false, true) == undefined) {
|
if (target.getMoveEffectiveness(user, move.getMove(), false, true) == undefined) {
|
||||||
return "---"
|
return "---"
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user