mirror of
https://github.com/pagefaultgames/pokerogue.git
synced 2024-11-29 18:26:09 +00:00
Balance endless tokens (#1733)
* Balanced tokens * Remove existing tokens, all 10 stack limit * Linter complained * Sorry Mr. Lint I’ll do better next time * Removed redundant min * Used a version system to update tokens * The linter has peculiar tastes * See if this works * I'm at my limit omg wtf Sam * Call me Swoobat the way I keep it Simple * Clean up some log statements * Adjust token weights to make up for removal of sleep and freeze * Be so fr GitHub that’s not a real merge conflict
This commit is contained in:
parent
a8205ae819
commit
eecad0fdc4
@ -230,10 +230,8 @@ export const modifierType: ModifierTypeTranslationEntries = {
|
|||||||
"ENEMY_HEAL": { name: "Wiederherstellungsmarke", description: "Heilt 2% der maximalen KP pro Runde" },
|
"ENEMY_HEAL": { name: "Wiederherstellungsmarke", description: "Heilt 2% der maximalen KP pro Runde" },
|
||||||
"ENEMY_ATTACK_POISON_CHANCE": { name: "Giftmarke" },
|
"ENEMY_ATTACK_POISON_CHANCE": { name: "Giftmarke" },
|
||||||
"ENEMY_ATTACK_PARALYZE_CHANCE": { "name": "Lähmungsmarke" },
|
"ENEMY_ATTACK_PARALYZE_CHANCE": { "name": "Lähmungsmarke" },
|
||||||
"ENEMY_ATTACK_SLEEP_CHANCE": { "name": "Schlafmarke" },
|
|
||||||
"ENEMY_ATTACK_FREEZE_CHANCE": { "name": "Gefriermarke" },
|
|
||||||
"ENEMY_ATTACK_BURN_CHANCE": { "name": "Brandmarke" },
|
"ENEMY_ATTACK_BURN_CHANCE": { "name": "Brandmarke" },
|
||||||
"ENEMY_STATUS_EFFECT_HEAL_CHANCE": { "name": "Vollheilungsmarke", "description": "Fügt eine 10%ige Chance hinzu, jede Runde einen Statuszustand zu heilen" },
|
"ENEMY_STATUS_EFFECT_HEAL_CHANCE": { "name": "Vollheilungsmarke", "description": "Fügt eine 2,5%ige Chance hinzu, jede Runde einen Statuszustand zu heilen" },
|
||||||
"ENEMY_ENDURE_CHANCE": { "name": "Ausdauer-Marke" },
|
"ENEMY_ENDURE_CHANCE": { "name": "Ausdauer-Marke" },
|
||||||
"ENEMY_FUSED_CHANCE": { "name": "Fusionsmarke", "description": "Fügt eine 1%ige Chance hinzu, dass ein wildes Pokémon eine Fusion ist" },
|
"ENEMY_FUSED_CHANCE": { "name": "Fusionsmarke", "description": "Fügt eine 1%ige Chance hinzu, dass ein wildes Pokémon eine Fusion ist" },
|
||||||
|
|
||||||
|
@ -230,10 +230,8 @@ export const modifierType: ModifierTypeTranslationEntries = {
|
|||||||
"ENEMY_HEAL": { name: "Recovery Token", description: "Heals 2% of max HP every turn" },
|
"ENEMY_HEAL": { name: "Recovery Token", description: "Heals 2% of max HP every turn" },
|
||||||
"ENEMY_ATTACK_POISON_CHANCE": { name: "Poison Token" },
|
"ENEMY_ATTACK_POISON_CHANCE": { name: "Poison Token" },
|
||||||
"ENEMY_ATTACK_PARALYZE_CHANCE": { name: "Paralyze Token" },
|
"ENEMY_ATTACK_PARALYZE_CHANCE": { name: "Paralyze Token" },
|
||||||
"ENEMY_ATTACK_SLEEP_CHANCE": { name: "Sleep Token" },
|
|
||||||
"ENEMY_ATTACK_FREEZE_CHANCE": { name: "Freeze Token" },
|
|
||||||
"ENEMY_ATTACK_BURN_CHANCE": { name: "Burn Token" },
|
"ENEMY_ATTACK_BURN_CHANCE": { name: "Burn Token" },
|
||||||
"ENEMY_STATUS_EFFECT_HEAL_CHANCE": { name: "Full Heal Token", description: "Adds a 10% chance every turn to heal a status condition" },
|
"ENEMY_STATUS_EFFECT_HEAL_CHANCE": { name: "Full Heal Token", description: "Adds a 2.5% chance every turn to heal a status condition" },
|
||||||
"ENEMY_ENDURE_CHANCE": { name: "Endure Token" },
|
"ENEMY_ENDURE_CHANCE": { name: "Endure Token" },
|
||||||
"ENEMY_FUSED_CHANCE": { name: "Fusion Token", description: "Adds a 1% chance that a wild Pokémon will be a fusion" },
|
"ENEMY_FUSED_CHANCE": { name: "Fusion Token", description: "Adds a 1% chance that a wild Pokémon will be a fusion" },
|
||||||
},
|
},
|
||||||
|
@ -230,10 +230,8 @@ export const modifierType: ModifierTypeTranslationEntries = {
|
|||||||
"ENEMY_HEAL": { name: "Recovery Token", description: "Cura el 2% de los PS máximo en cada turno" },
|
"ENEMY_HEAL": { name: "Recovery Token", description: "Cura el 2% de los PS máximo en cada turno" },
|
||||||
"ENEMY_ATTACK_POISON_CHANCE": { name: "Poison Token" },
|
"ENEMY_ATTACK_POISON_CHANCE": { name: "Poison Token" },
|
||||||
"ENEMY_ATTACK_PARALYZE_CHANCE": { name: "Paralyze Token" },
|
"ENEMY_ATTACK_PARALYZE_CHANCE": { name: "Paralyze Token" },
|
||||||
"ENEMY_ATTACK_SLEEP_CHANCE": { name: "Sleep Token" },
|
|
||||||
"ENEMY_ATTACK_FREEZE_CHANCE": { name: "Freeze Token" },
|
|
||||||
"ENEMY_ATTACK_BURN_CHANCE": { name: "Burn Token" },
|
"ENEMY_ATTACK_BURN_CHANCE": { name: "Burn Token" },
|
||||||
"ENEMY_STATUS_EFFECT_HEAL_CHANCE": { name: "Full Heal Token", description: "Agrega un 10% de probabilidad cada turno de curar un problema de estado" },
|
"ENEMY_STATUS_EFFECT_HEAL_CHANCE": { name: "Full Heal Token", description: "Agrega un 2.5% de probabilidad cada turno de curar un problema de estado" },
|
||||||
"ENEMY_ENDURE_CHANCE": { name: "Endure Token" },
|
"ENEMY_ENDURE_CHANCE": { name: "Endure Token" },
|
||||||
"ENEMY_FUSED_CHANCE": { name: "Fusion Token", description: "Agrega un 1% de probabilidad de que un Pokémon salvaje sea una fusión" },
|
"ENEMY_FUSED_CHANCE": { name: "Fusion Token", description: "Agrega un 1% de probabilidad de que un Pokémon salvaje sea una fusión" },
|
||||||
},
|
},
|
||||||
|
@ -230,10 +230,8 @@ export const modifierType: ModifierTypeTranslationEntries = {
|
|||||||
"ENEMY_HEAL": { name: "Jeton Soin", description: "Soigne 2% des PV max à chaque tour" },
|
"ENEMY_HEAL": { name: "Jeton Soin", description: "Soigne 2% des PV max à chaque tour" },
|
||||||
"ENEMY_ATTACK_POISON_CHANCE": { name: "Jeton Poison" },
|
"ENEMY_ATTACK_POISON_CHANCE": { name: "Jeton Poison" },
|
||||||
"ENEMY_ATTACK_PARALYZE_CHANCE": { name: "Jeton Paralysie" },
|
"ENEMY_ATTACK_PARALYZE_CHANCE": { name: "Jeton Paralysie" },
|
||||||
"ENEMY_ATTACK_SLEEP_CHANCE": { name: "Jeton Sommeil" },
|
|
||||||
"ENEMY_ATTACK_FREEZE_CHANCE": { name: "Jeton Gel" },
|
|
||||||
"ENEMY_ATTACK_BURN_CHANCE": { name: "Jeton Brulure" },
|
"ENEMY_ATTACK_BURN_CHANCE": { name: "Jeton Brulure" },
|
||||||
"ENEMY_STATUS_EFFECT_HEAL_CHANCE": { name: "Jeton Total Soin", description: "Ajoute 10% de chances à chaque tour de se soigner d’un problème de statut." },
|
"ENEMY_STATUS_EFFECT_HEAL_CHANCE": { name: "Jeton Total Soin", description: "Ajoute 2.5% de chances à chaque tour de se soigner d’un problème de statut." },
|
||||||
"ENEMY_ENDURE_CHANCE": { name: "Jeton Ténacité" },
|
"ENEMY_ENDURE_CHANCE": { name: "Jeton Ténacité" },
|
||||||
"ENEMY_FUSED_CHANCE": { name: "Jeton Fusion", description: "Ajoute 1% de chances qu’un Pokémon sauvage soit une fusion." },
|
"ENEMY_FUSED_CHANCE": { name: "Jeton Fusion", description: "Ajoute 1% de chances qu’un Pokémon sauvage soit une fusion." },
|
||||||
},
|
},
|
||||||
|
@ -230,10 +230,8 @@ export const modifierType: ModifierTypeTranslationEntries = {
|
|||||||
"ENEMY_HEAL": { name: "Gettone del Recupero", description: "Cura il 2% dei PS massimi ogni turno" },
|
"ENEMY_HEAL": { name: "Gettone del Recupero", description: "Cura il 2% dei PS massimi ogni turno" },
|
||||||
"ENEMY_ATTACK_POISON_CHANCE": { name: "Gettone del Veleno" },
|
"ENEMY_ATTACK_POISON_CHANCE": { name: "Gettone del Veleno" },
|
||||||
"ENEMY_ATTACK_PARALYZE_CHANCE": { name: "Gettone della Paralisi" },
|
"ENEMY_ATTACK_PARALYZE_CHANCE": { name: "Gettone della Paralisi" },
|
||||||
"ENEMY_ATTACK_SLEEP_CHANCE": { name: "Gettone del Sonno" },
|
|
||||||
"ENEMY_ATTACK_FREEZE_CHANCE": { name: "Gettone del Congelamento" },
|
|
||||||
"ENEMY_ATTACK_BURN_CHANCE": { name: "Gettone della Bruciatura" },
|
"ENEMY_ATTACK_BURN_CHANCE": { name: "Gettone della Bruciatura" },
|
||||||
"ENEMY_STATUS_EFFECT_HEAL_CHANCE": { name: "Gettone Guarigione Completa", description: "Aggiunge una probabilità del 10% a ogni turno di curare una condizione di stato" },
|
"ENEMY_STATUS_EFFECT_HEAL_CHANCE": { name: "Gettone Guarigione Completa", description: "Aggiunge una probabilità del 2.5% a ogni turno di curare una condizione di stato" },
|
||||||
"ENEMY_ENDURE_CHANCE": { name: "Gettone di Resistenza" },
|
"ENEMY_ENDURE_CHANCE": { name: "Gettone di Resistenza" },
|
||||||
"ENEMY_FUSED_CHANCE": { name: "Gettone della fusione", description: "Aggiunge l'1% di possibilità che un Pokémon selvatico sia una fusione" },
|
"ENEMY_FUSED_CHANCE": { name: "Gettone della fusione", description: "Aggiunge l'1% di possibilità che un Pokémon selvatico sia una fusione" },
|
||||||
},
|
},
|
||||||
|
@ -230,10 +230,8 @@ export const modifierType: ModifierTypeTranslationEntries = {
|
|||||||
"ENEMY_HEAL": { name: "회복 토큰", description: "매 턴 최대 체력의 2%를 회복" },
|
"ENEMY_HEAL": { name: "회복 토큰", description: "매 턴 최대 체력의 2%를 회복" },
|
||||||
"ENEMY_ATTACK_POISON_CHANCE": { name: "독 토큰" },
|
"ENEMY_ATTACK_POISON_CHANCE": { name: "독 토큰" },
|
||||||
"ENEMY_ATTACK_PARALYZE_CHANCE": { name: "마비 토큰" },
|
"ENEMY_ATTACK_PARALYZE_CHANCE": { name: "마비 토큰" },
|
||||||
"ENEMY_ATTACK_SLEEP_CHANCE": { name: "잠듦 토큰" },
|
|
||||||
"ENEMY_ATTACK_FREEZE_CHANCE": { name: "얼음 토큰" },
|
|
||||||
"ENEMY_ATTACK_BURN_CHANCE": { name: "화상 토큰" },
|
"ENEMY_ATTACK_BURN_CHANCE": { name: "화상 토큰" },
|
||||||
"ENEMY_STATUS_EFFECT_HEAL_CHANCE": { name: "만병통치 토큰", description: "매 턴 상태이상에서 회복될 확률 10% 추가" },
|
"ENEMY_STATUS_EFFECT_HEAL_CHANCE": { name: "만병통치 토큰", description: "매 턴 상태이상에서 회복될 확률 2.5% 추가" },
|
||||||
"ENEMY_ENDURE_CHANCE": { name: "버티기 토큰" },
|
"ENEMY_ENDURE_CHANCE": { name: "버티기 토큰" },
|
||||||
"ENEMY_FUSED_CHANCE": { name: "합체 토큰", description: "야생 포켓몬이 합체할 확률 1% 추가" },
|
"ENEMY_FUSED_CHANCE": { name: "합체 토큰", description: "야생 포켓몬이 합체할 확률 1% 추가" },
|
||||||
},
|
},
|
||||||
|
@ -230,10 +230,8 @@ export const modifierType: ModifierTypeTranslationEntries = {
|
|||||||
"ENEMY_HEAL": { name: "Token de Recuperação", description: "Cura 2% dos PS máximos a cada turno" },
|
"ENEMY_HEAL": { name: "Token de Recuperação", description: "Cura 2% dos PS máximos a cada turno" },
|
||||||
"ENEMY_ATTACK_POISON_CHANCE": { name: "Token de Veneno" },
|
"ENEMY_ATTACK_POISON_CHANCE": { name: "Token de Veneno" },
|
||||||
"ENEMY_ATTACK_PARALYZE_CHANCE": { name: "Token de Paralisia" },
|
"ENEMY_ATTACK_PARALYZE_CHANCE": { name: "Token de Paralisia" },
|
||||||
"ENEMY_ATTACK_SLEEP_CHANCE": { name: "Token de Sono" },
|
|
||||||
"ENEMY_ATTACK_FREEZE_CHANCE": { name: "Token de Congelamento" },
|
|
||||||
"ENEMY_ATTACK_BURN_CHANCE": { name: "Token de Queimadura" },
|
"ENEMY_ATTACK_BURN_CHANCE": { name: "Token de Queimadura" },
|
||||||
"ENEMY_STATUS_EFFECT_HEAL_CHANCE": { name: "Token de Cura Total", description: "Adiciona uma chance de 10% a cada turno de curar uma condição de status" },
|
"ENEMY_STATUS_EFFECT_HEAL_CHANCE": { name: "Token de Cura Total", description: "Adiciona uma chance de 2.5% a cada turno de curar uma condição de status" },
|
||||||
"ENEMY_ENDURE_CHANCE": { name: "Token de Persistência" },
|
"ENEMY_ENDURE_CHANCE": { name: "Token de Persistência" },
|
||||||
"ENEMY_FUSED_CHANCE": { name: "Token de Fusão", description: "Adiciona uma chance de 1% de que um Pokémon selvagem seja uma fusão" },
|
"ENEMY_FUSED_CHANCE": { name: "Token de Fusão", description: "Adiciona uma chance de 1% de que um Pokémon selvagem seja uma fusão" },
|
||||||
},
|
},
|
||||||
|
@ -230,10 +230,8 @@ export const modifierType: ModifierTypeTranslationEntries = {
|
|||||||
"ENEMY_HEAL": { name: "回复硬币", description: "每回合回复2%最大HP" },
|
"ENEMY_HEAL": { name: "回复硬币", description: "每回合回复2%最大HP" },
|
||||||
"ENEMY_ATTACK_POISON_CHANCE": { name: "剧毒硬币" },
|
"ENEMY_ATTACK_POISON_CHANCE": { name: "剧毒硬币" },
|
||||||
"ENEMY_ATTACK_PARALYZE_CHANCE": { name: "麻痹硬币" },
|
"ENEMY_ATTACK_PARALYZE_CHANCE": { name: "麻痹硬币" },
|
||||||
"ENEMY_ATTACK_SLEEP_CHANCE": { name: "睡眠硬币" },
|
|
||||||
"ENEMY_ATTACK_FREEZE_CHANCE": { name: "冰冻硬币" },
|
|
||||||
"ENEMY_ATTACK_BURN_CHANCE": { name: "灼烧硬币" },
|
"ENEMY_ATTACK_BURN_CHANCE": { name: "灼烧硬币" },
|
||||||
"ENEMY_STATUS_EFFECT_HEAL_CHANCE": { name: "万灵药硬币", description: "增加10%每回合治愈异常状态的概率" },
|
"ENEMY_STATUS_EFFECT_HEAL_CHANCE": { name: "万灵药硬币", description: "增加2.5%每回合治愈异常状态的概率" },
|
||||||
"ENEMY_ENDURE_CHANCE": { name: "忍受硬币" },
|
"ENEMY_ENDURE_CHANCE": { name: "忍受硬币" },
|
||||||
"ENEMY_FUSED_CHANCE": { name: "融合硬币", description: "增加1%野生融合宝可梦出现概率" },
|
"ENEMY_FUSED_CHANCE": { name: "融合硬币", description: "增加1%野生融合宝可梦出现概率" },
|
||||||
},
|
},
|
||||||
|
@ -282,12 +282,10 @@ export const modifierType: ModifierTypeTranslationEntries = {
|
|||||||
ENEMY_HEAL: { name: "恢復硬幣", description: "每回合恢復2%最大HP" },
|
ENEMY_HEAL: { name: "恢復硬幣", description: "每回合恢復2%最大HP" },
|
||||||
ENEMY_ATTACK_POISON_CHANCE: { name: "劇毒硬幣" },
|
ENEMY_ATTACK_POISON_CHANCE: { name: "劇毒硬幣" },
|
||||||
ENEMY_ATTACK_PARALYZE_CHANCE: { name: "麻痹硬幣" },
|
ENEMY_ATTACK_PARALYZE_CHANCE: { name: "麻痹硬幣" },
|
||||||
ENEMY_ATTACK_SLEEP_CHANCE: { name: "睡眠硬幣" },
|
|
||||||
ENEMY_ATTACK_FREEZE_CHANCE: { name: "冰凍硬幣" },
|
|
||||||
ENEMY_ATTACK_BURN_CHANCE: { name: "灼燒硬幣" },
|
ENEMY_ATTACK_BURN_CHANCE: { name: "灼燒硬幣" },
|
||||||
ENEMY_STATUS_EFFECT_HEAL_CHANCE: {
|
ENEMY_STATUS_EFFECT_HEAL_CHANCE: {
|
||||||
name: "萬靈藥硬幣",
|
name: "萬靈藥硬幣",
|
||||||
description: "增加10%每回合治癒異常狀態的概率",
|
description: "增加2.5%每回合治癒異常狀態的概率",
|
||||||
},
|
},
|
||||||
ENEMY_ENDURE_CHANCE: { name: "忍受硬幣" },
|
ENEMY_ENDURE_CHANCE: { name: "忍受硬幣" },
|
||||||
ENEMY_FUSED_CHANCE: {
|
ENEMY_FUSED_CHANCE: {
|
||||||
|
@ -978,8 +978,8 @@ export class EnemyAttackStatusEffectChanceModifierType extends ModifierType {
|
|||||||
private chancePercent: integer;
|
private chancePercent: integer;
|
||||||
private effect: StatusEffect;
|
private effect: StatusEffect;
|
||||||
|
|
||||||
constructor(localeKey: string, iconImage: string, chancePercent: integer, effect: StatusEffect) {
|
constructor(localeKey: string, iconImage: string, chancePercent: integer, effect: StatusEffect, stackCount?: integer) {
|
||||||
super(localeKey, iconImage, (type, args) => new Modifiers.EnemyAttackStatusEffectChanceModifier(type, effect, chancePercent), "enemy_status_chance");
|
super(localeKey, iconImage, (type, args) => new Modifiers.EnemyAttackStatusEffectChanceModifier(type, effect, chancePercent, stackCount), "enemy_status_chance");
|
||||||
|
|
||||||
this.chancePercent = chancePercent;
|
this.chancePercent = chancePercent;
|
||||||
this.effect = effect;
|
this.effect = effect;
|
||||||
@ -1216,14 +1216,12 @@ export const modifierTypes = {
|
|||||||
ENEMY_DAMAGE_BOOSTER: () => new ModifierType("modifierType:ModifierType.ENEMY_DAMAGE_BOOSTER", "wl_item_drop", (type, _args) => new Modifiers.EnemyDamageBoosterModifier(type, 5)),
|
ENEMY_DAMAGE_BOOSTER: () => new ModifierType("modifierType:ModifierType.ENEMY_DAMAGE_BOOSTER", "wl_item_drop", (type, _args) => new Modifiers.EnemyDamageBoosterModifier(type, 5)),
|
||||||
ENEMY_DAMAGE_REDUCTION: () => new ModifierType("modifierType:ModifierType.ENEMY_DAMAGE_REDUCTION", "wl_guard_spec", (type, _args) => new Modifiers.EnemyDamageReducerModifier(type, 2.5)),
|
ENEMY_DAMAGE_REDUCTION: () => new ModifierType("modifierType:ModifierType.ENEMY_DAMAGE_REDUCTION", "wl_guard_spec", (type, _args) => new Modifiers.EnemyDamageReducerModifier(type, 2.5)),
|
||||||
//ENEMY_SUPER_EFFECT_BOOSTER: () => new ModifierType('Type Advantage Token', 'Increases damage of super effective attacks by 30%', (type, _args) => new Modifiers.EnemySuperEffectiveDamageBoosterModifier(type, 30), 'wl_custom_super_effective'),
|
//ENEMY_SUPER_EFFECT_BOOSTER: () => new ModifierType('Type Advantage Token', 'Increases damage of super effective attacks by 30%', (type, _args) => new Modifiers.EnemySuperEffectiveDamageBoosterModifier(type, 30), 'wl_custom_super_effective'),
|
||||||
ENEMY_HEAL: () => new ModifierType("modifierType:ModifierType.ENEMY_HEAL", "wl_potion", (type, _args) => new Modifiers.EnemyTurnHealModifier(type, 2)),
|
ENEMY_HEAL: () => new ModifierType("modifierType:ModifierType.ENEMY_HEAL", "wl_potion", (type, _args) => new Modifiers.EnemyTurnHealModifier(type, 2, 10)),
|
||||||
ENEMY_ATTACK_POISON_CHANCE: () => new EnemyAttackStatusEffectChanceModifierType("modifierType:ModifierType.ENEMY_ATTACK_POISON_CHANCE", "wl_antidote", 10, StatusEffect.POISON),
|
ENEMY_ATTACK_POISON_CHANCE: () => new EnemyAttackStatusEffectChanceModifierType("modifierType:ModifierType.ENEMY_ATTACK_POISON_CHANCE", "wl_antidote", 5, StatusEffect.POISON, 10),
|
||||||
ENEMY_ATTACK_PARALYZE_CHANCE: () => new EnemyAttackStatusEffectChanceModifierType("modifierType:ModifierType.ENEMY_ATTACK_PARALYZE_CHANCE", "wl_paralyze_heal", 10, StatusEffect.PARALYSIS),
|
ENEMY_ATTACK_PARALYZE_CHANCE: () => new EnemyAttackStatusEffectChanceModifierType("modifierType:ModifierType.ENEMY_ATTACK_PARALYZE_CHANCE", "wl_paralyze_heal", 2.5, StatusEffect.PARALYSIS, 10),
|
||||||
ENEMY_ATTACK_SLEEP_CHANCE: () => new EnemyAttackStatusEffectChanceModifierType("modifierType:ModifierType.ENEMY_ATTACK_SLEEP_CHANCE", "wl_awakening", 10, StatusEffect.SLEEP),
|
ENEMY_ATTACK_BURN_CHANCE: () => new EnemyAttackStatusEffectChanceModifierType("modifierType:ModifierType.ENEMY_ATTACK_BURN_CHANCE", "wl_burn_heal", 5, StatusEffect.BURN, 10),
|
||||||
ENEMY_ATTACK_FREEZE_CHANCE: () => new EnemyAttackStatusEffectChanceModifierType("modifierType:ModifierType.ENEMY_ATTACK_FREEZE_CHANCE", "wl_ice_heal", 10, StatusEffect.FREEZE),
|
ENEMY_STATUS_EFFECT_HEAL_CHANCE: () => new ModifierType("modifierType:ModifierType.ENEMY_STATUS_EFFECT_HEAL_CHANCE", "wl_full_heal", (type, _args) => new Modifiers.EnemyStatusEffectHealChanceModifier(type, 2.5, 10)),
|
||||||
ENEMY_ATTACK_BURN_CHANCE: () => new EnemyAttackStatusEffectChanceModifierType("modifierType:ModifierType.ENEMY_ATTACK_BURN_CHANCE", "wl_burn_heal", 10, StatusEffect.BURN),
|
ENEMY_ENDURE_CHANCE: () => new EnemyEndureChanceModifierType("modifierType:ModifierType.ENEMY_ENDURE_CHANCE", "wl_reset_urge", 2),
|
||||||
ENEMY_STATUS_EFFECT_HEAL_CHANCE: () => new ModifierType("modifierType:ModifierType.ENEMY_STATUS_EFFECT_HEAL_CHANCE", "wl_full_heal", (type, _args) => new Modifiers.EnemyStatusEffectHealChanceModifier(type, 10)),
|
|
||||||
ENEMY_ENDURE_CHANCE: () => new EnemyEndureChanceModifierType("modifierType:ModifierType.ENEMY_ENDURE_CHANCE", "wl_reset_urge", 2.5),
|
|
||||||
ENEMY_FUSED_CHANCE: () => new ModifierType("modifierType:ModifierType.ENEMY_FUSED_CHANCE", "wl_custom_spliced", (type, _args) => new Modifiers.EnemyFusionChanceModifier(type, 1)),
|
ENEMY_FUSED_CHANCE: () => new ModifierType("modifierType:ModifierType.ENEMY_FUSED_CHANCE", "wl_custom_spliced", (type, _args) => new Modifiers.EnemyFusionChanceModifier(type, 1)),
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -1466,15 +1464,13 @@ const trainerModifierPool: ModifierPool = {
|
|||||||
|
|
||||||
const enemyBuffModifierPool: ModifierPool = {
|
const enemyBuffModifierPool: ModifierPool = {
|
||||||
[ModifierTier.COMMON]: [
|
[ModifierTier.COMMON]: [
|
||||||
new WeightedModifierType(modifierTypes.ENEMY_DAMAGE_BOOSTER, 10),
|
new WeightedModifierType(modifierTypes.ENEMY_DAMAGE_BOOSTER, 9),
|
||||||
new WeightedModifierType(modifierTypes.ENEMY_DAMAGE_REDUCTION, 10),
|
new WeightedModifierType(modifierTypes.ENEMY_DAMAGE_REDUCTION, 9),
|
||||||
new WeightedModifierType(modifierTypes.ENEMY_ATTACK_POISON_CHANCE, 2),
|
new WeightedModifierType(modifierTypes.ENEMY_ATTACK_POISON_CHANCE, 3),
|
||||||
new WeightedModifierType(modifierTypes.ENEMY_ATTACK_PARALYZE_CHANCE, 2),
|
new WeightedModifierType(modifierTypes.ENEMY_ATTACK_PARALYZE_CHANCE, 3),
|
||||||
new WeightedModifierType(modifierTypes.ENEMY_ATTACK_SLEEP_CHANCE, 2),
|
new WeightedModifierType(modifierTypes.ENEMY_ATTACK_BURN_CHANCE, 3),
|
||||||
new WeightedModifierType(modifierTypes.ENEMY_ATTACK_FREEZE_CHANCE, 2),
|
new WeightedModifierType(modifierTypes.ENEMY_STATUS_EFFECT_HEAL_CHANCE, 9),
|
||||||
new WeightedModifierType(modifierTypes.ENEMY_ATTACK_BURN_CHANCE, 2),
|
new WeightedModifierType(modifierTypes.ENEMY_ENDURE_CHANCE, 4),
|
||||||
new WeightedModifierType(modifierTypes.ENEMY_STATUS_EFFECT_HEAL_CHANCE, 10),
|
|
||||||
new WeightedModifierType(modifierTypes.ENEMY_ENDURE_CHANCE, 5),
|
|
||||||
new WeightedModifierType(modifierTypes.ENEMY_FUSED_CHANCE, 1)
|
new WeightedModifierType(modifierTypes.ENEMY_FUSED_CHANCE, 1)
|
||||||
].map(m => {
|
].map(m => {
|
||||||
m.setTier(ModifierTier.COMMON); return m;
|
m.setTier(ModifierTier.COMMON); return m;
|
||||||
|
@ -2141,7 +2141,7 @@ export class EnemyDamageReducerModifier extends EnemyDamageMultiplierModifier {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export class EnemyTurnHealModifier extends EnemyPersistentModifier {
|
export class EnemyTurnHealModifier extends EnemyPersistentModifier {
|
||||||
private healPercent: number;
|
public healPercent: number;
|
||||||
|
|
||||||
constructor(type: ModifierType, healPercent: number, stackCount?: integer) {
|
constructor(type: ModifierType, healPercent: number, stackCount?: integer) {
|
||||||
super(type, stackCount);
|
super(type, stackCount);
|
||||||
@ -2176,23 +2176,23 @@ export class EnemyTurnHealModifier extends EnemyPersistentModifier {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getMaxStackCount(scene: BattleScene): integer {
|
getMaxStackCount(scene: BattleScene): integer {
|
||||||
return 15;
|
return 10;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export class EnemyAttackStatusEffectChanceModifier extends EnemyPersistentModifier {
|
export class EnemyAttackStatusEffectChanceModifier extends EnemyPersistentModifier {
|
||||||
public effect: StatusEffect;
|
public effect: StatusEffect;
|
||||||
private chance: number;
|
public chance: number;
|
||||||
|
|
||||||
constructor(type: ModifierType, effect: StatusEffect, chancePercent: number, stackCount?: integer) {
|
constructor(type: ModifierType, effect: StatusEffect, chancePercent: number, stackCount?: integer) {
|
||||||
super(type, stackCount);
|
super(type, stackCount);
|
||||||
|
|
||||||
this.effect = effect;
|
this.effect = effect;
|
||||||
this.chance = (chancePercent || 10) / 100;
|
this.chance = (chancePercent || 5) / 100;
|
||||||
}
|
}
|
||||||
|
|
||||||
match(modifier: Modifier): boolean {
|
match(modifier: Modifier): boolean {
|
||||||
return modifier instanceof EnemyAttackStatusEffectChanceModifier && modifier.effect === this.effect && modifier.chance === this.chance;
|
return modifier instanceof EnemyAttackStatusEffectChanceModifier && modifier.effect === this.effect;
|
||||||
}
|
}
|
||||||
|
|
||||||
clone(): EnemyAttackStatusEffectChanceModifier {
|
clone(): EnemyAttackStatusEffectChanceModifier {
|
||||||
@ -2211,19 +2211,23 @@ export class EnemyAttackStatusEffectChanceModifier extends EnemyPersistentModifi
|
|||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
getMaxStackCount(scene: BattleScene): integer {
|
||||||
|
return 10;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export class EnemyStatusEffectHealChanceModifier extends EnemyPersistentModifier {
|
export class EnemyStatusEffectHealChanceModifier extends EnemyPersistentModifier {
|
||||||
private chance: number;
|
public chance: number;
|
||||||
|
|
||||||
constructor(type: ModifierType, chancePercent: number, stackCount?: integer) {
|
constructor(type: ModifierType, chancePercent: number, stackCount?: integer) {
|
||||||
super(type, stackCount);
|
super(type, stackCount);
|
||||||
|
|
||||||
this.chance = (chancePercent || 10) / 100;
|
this.chance = (chancePercent || 2.5) / 100;
|
||||||
}
|
}
|
||||||
|
|
||||||
match(modifier: Modifier): boolean {
|
match(modifier: Modifier): boolean {
|
||||||
return modifier instanceof EnemyStatusEffectHealChanceModifier && modifier.chance === this.chance;
|
return modifier instanceof EnemyStatusEffectHealChanceModifier;
|
||||||
}
|
}
|
||||||
|
|
||||||
clone(): EnemyStatusEffectHealChanceModifier {
|
clone(): EnemyStatusEffectHealChanceModifier {
|
||||||
@ -2245,19 +2249,23 @@ export class EnemyStatusEffectHealChanceModifier extends EnemyPersistentModifier
|
|||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
getMaxStackCount(scene: BattleScene): integer {
|
||||||
|
return 10;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export class EnemyEndureChanceModifier extends EnemyPersistentModifier {
|
export class EnemyEndureChanceModifier extends EnemyPersistentModifier {
|
||||||
private chance: number;
|
public chance: number;
|
||||||
|
|
||||||
constructor(type: ModifierType, chancePercent: number, stackCount?: integer) {
|
constructor(type: ModifierType, chancePercent?: number, stackCount?: integer) {
|
||||||
super(type, stackCount);
|
super(type, stackCount || 10);
|
||||||
|
|
||||||
this.chance = (chancePercent || 2.5) / 100;
|
this.chance = (chancePercent || 2) / 100;
|
||||||
}
|
}
|
||||||
|
|
||||||
match(modifier: Modifier) {
|
match(modifier: Modifier) {
|
||||||
return modifier instanceof EnemyEndureChanceModifier && modifier.chance === this.chance;
|
return modifier instanceof EnemyEndureChanceModifier;
|
||||||
}
|
}
|
||||||
|
|
||||||
clone() {
|
clone() {
|
||||||
|
@ -34,6 +34,8 @@ import {setSettingGamepad, SettingGamepad, settingGamepadDefaults} from "./setti
|
|||||||
import {setSettingKeyboard, SettingKeyboard} from "#app/system/settings/settings-keyboard";
|
import {setSettingKeyboard, SettingKeyboard} from "#app/system/settings/settings-keyboard";
|
||||||
import { TerrainChangedEvent, WeatherChangedEvent } from "#app/field/arena-events.js";
|
import { TerrainChangedEvent, WeatherChangedEvent } from "#app/field/arena-events.js";
|
||||||
import { Device } from "#app/enums/devices.js";
|
import { Device } from "#app/enums/devices.js";
|
||||||
|
import { EnemyAttackStatusEffectChanceModifier } from "../modifier/modifier";
|
||||||
|
import { StatusEffect } from "#app/data/status-effect.js";
|
||||||
|
|
||||||
const saveKey = "x0i2O7WRiANTqPmZ"; // Temporary; secure encryption is not yet necessary
|
const saveKey = "x0i2O7WRiANTqPmZ"; // Temporary; secure encryption is not yet necessary
|
||||||
|
|
||||||
@ -1078,6 +1080,9 @@ export class GameData {
|
|||||||
if (md?.className === "ExpBalanceModifier") { // Temporarily limit EXP Balance until it gets reworked
|
if (md?.className === "ExpBalanceModifier") { // Temporarily limit EXP Balance until it gets reworked
|
||||||
md.stackCount = Math.min(md.stackCount, 4);
|
md.stackCount = Math.min(md.stackCount, 4);
|
||||||
}
|
}
|
||||||
|
if (md instanceof EnemyAttackStatusEffectChanceModifier && md.effect === StatusEffect.FREEZE || md.effect === StatusEffect.SLEEP) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
ret.push(new PersistentModifierData(md, player));
|
ret.push(new PersistentModifierData(md, player));
|
||||||
}
|
}
|
||||||
return ret;
|
return ret;
|
||||||
|
Loading…
Reference in New Issue
Block a user