Resolving conflict

This commit is contained in:
EmoUsedHM01 2024-05-07 11:31:14 +01:00 committed by GitHub
parent 9f3fbb4878
commit 6faf9f1d61
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -1,137 +1,137 @@
import * as Utils from "../utils"; import * as Utils from "../utils";
export enum StatusEffect { export enum StatusEffect {
NONE, NONE,
POISON, POISON,
TOXIC, TOXIC,
PARALYSIS, PARALYSIS,
SLEEP, SLEEP,
FREEZE, FREEZE,
BURN, BURN,
FAINT FAINT
} }
export class Status { export class Status {
public effect: StatusEffect; public effect: StatusEffect;
public turnCount: integer; public turnCount: integer;
public cureTurn: integer; public cureTurn: integer;
constructor(effect: StatusEffect, turnCount: integer = 0, cureTurn?: integer) { constructor(effect: StatusEffect, turnCount: integer = 0, cureTurn?: integer) {
this.effect = effect; this.effect = effect;
this.turnCount = turnCount === undefined ? 0 : turnCount; this.turnCount = turnCount === undefined ? 0 : turnCount;
this.cureTurn = cureTurn; this.cureTurn = cureTurn;
} }
incrementTurn(): void { incrementTurn(): void {
this.turnCount++; this.turnCount++;
} }
isPostTurn(): boolean { isPostTurn(): boolean {
return this.effect === StatusEffect.POISON || this.effect === StatusEffect.TOXIC || this.effect === StatusEffect.BURN; return this.effect === StatusEffect.POISON || this.effect === StatusEffect.TOXIC || this.effect === StatusEffect.BURN;
} }
} }
export function getStatusEffectObtainText(statusEffect: StatusEffect, sourceText?: string): string { export function getStatusEffectObtainText(statusEffect: StatusEffect, sourceText?: string): string {
const sourceClause = sourceText ? ` ${statusEffect !== StatusEffect.SLEEP ? 'by' : 'from'} ${sourceText}` : ''; const sourceClause = sourceText ? ` ${statusEffect !== StatusEffect.SLEEP ? 'by' : 'from'} ${sourceText}` : '';
switch (statusEffect) { switch (statusEffect) {
case StatusEffect.POISON: case StatusEffect.POISON:
return `\nwas poisoned${sourceClause}!`; return `\nwas poisoned${sourceClause}!`;
case StatusEffect.TOXIC: case StatusEffect.TOXIC:
return `\nwas badly poisoned${sourceClause}!`; return `\nwas badly poisoned${sourceClause}!`;
case StatusEffect.PARALYSIS: case StatusEffect.PARALYSIS:
return ` was paralyzed${sourceClause}!\nIt may be unable to move!`; return ` was paralyzed${sourceClause}!\nIt may be unable to move!`;
case StatusEffect.SLEEP: case StatusEffect.SLEEP:
return `\nfell asleep${sourceClause}!`; return `\nfell asleep${sourceClause}!`;
case StatusEffect.FREEZE: case StatusEffect.FREEZE:
return `\nwas frozen solid${sourceClause}!`; return `\nwas frozen solid${sourceClause}!`;
case StatusEffect.BURN: case StatusEffect.BURN:
return `\nwas burned${sourceClause}!`; return `\nwas burned${sourceClause}!`;
} }
return ''; return '';
} }
export function getStatusEffectActivationText(statusEffect: StatusEffect): string { export function getStatusEffectActivationText(statusEffect: StatusEffect): string {
switch (statusEffect) { switch (statusEffect) {
case StatusEffect.POISON: case StatusEffect.POISON:
case StatusEffect.TOXIC: case StatusEffect.TOXIC:
return ' is hurt\nby poison!'; return ' is hurt\nby poison!';
case StatusEffect.PARALYSIS: case StatusEffect.PARALYSIS:
return ' is paralyzed!\nIt can\'t move!'; return ' is paralyzed!\nIt can\'t move!';
case StatusEffect.SLEEP: case StatusEffect.SLEEP:
return ' is fast asleep.'; return ' is fast asleep.';
case StatusEffect.FREEZE: case StatusEffect.FREEZE:
return ' is\nfrozen solid!'; return ' is\nfrozen solid!';
case StatusEffect.BURN: case StatusEffect.BURN:
return ' is hurt\nby its burn!'; return ' is hurt\nby its burn!';
} }
return ''; return '';
} }
export function getStatusEffectOverlapText(statusEffect: StatusEffect): string { export function getStatusEffectOverlapText(statusEffect: StatusEffect): string {
switch (statusEffect) { switch (statusEffect) {
case StatusEffect.POISON: case StatusEffect.POISON:
case StatusEffect.TOXIC: case StatusEffect.TOXIC:
return ' is\nalready poisoned!'; return ' is\nalready poisoned!';
case StatusEffect.PARALYSIS: case StatusEffect.PARALYSIS:
return ' is\nalready paralyzed!'; return ' is\nalready paralyzed!';
case StatusEffect.SLEEP: case StatusEffect.SLEEP:
return ' is\nalready asleep!'; return ' is\nalready asleep!';
case StatusEffect.FREEZE: case StatusEffect.FREEZE:
return ' is\nalready frozen!'; return ' is\nalready frozen!';
case StatusEffect.BURN: case StatusEffect.BURN:
return ' is\nalready burned!'; return ' is\nalready burned!';
} }
return ''; return '';
} }
export function getStatusEffectHealText(statusEffect: StatusEffect): string { export function getStatusEffectHealText(statusEffect: StatusEffect): string {
switch (statusEffect) { switch (statusEffect) {
case StatusEffect.POISON: case StatusEffect.POISON:
case StatusEffect.TOXIC: case StatusEffect.TOXIC:
return ' was\ncured of its poison!'; return ' was\ncured of its poison!';
case StatusEffect.PARALYSIS: case StatusEffect.PARALYSIS:
return ' was\nhealed of paralysis!'; return ' was\nhealed of paralysis!';
case StatusEffect.SLEEP: case StatusEffect.SLEEP:
return ' woke up!'; return ' woke up!';
case StatusEffect.FREEZE: case StatusEffect.FREEZE:
return ' was\ndefrosted!'; return ' was\ndefrosted!';
case StatusEffect.BURN: case StatusEffect.BURN:
return ' was\nhealed of its burn!'; return ' was\nhealed of its burn!';
} }
return ''; return '';
} }
export function getStatusEffectDescriptor(statusEffect: StatusEffect): string { export function getStatusEffectDescriptor(statusEffect: StatusEffect): string {
switch (statusEffect) { switch (statusEffect) {
case StatusEffect.POISON: case StatusEffect.POISON:
case StatusEffect.TOXIC: case StatusEffect.TOXIC:
return 'poisoning'; return 'poisoning';
case StatusEffect.PARALYSIS: case StatusEffect.PARALYSIS:
return 'paralysis'; return 'paralysis';
case StatusEffect.SLEEP: case StatusEffect.SLEEP:
return 'sleep'; return 'sleep';
case StatusEffect.FREEZE: case StatusEffect.FREEZE:
return 'freezing'; return 'freezing';
case StatusEffect.BURN: case StatusEffect.BURN:
return 'burn'; return 'burn';
} }
} }
export function getStatusEffectCatchRateMultiplier(statusEffect: StatusEffect): number { export function getStatusEffectCatchRateMultiplier(statusEffect: StatusEffect): number {
switch (statusEffect) { switch (statusEffect) {
case StatusEffect.POISON: case StatusEffect.POISON:
case StatusEffect.TOXIC: case StatusEffect.TOXIC:
case StatusEffect.PARALYSIS: case StatusEffect.PARALYSIS:
case StatusEffect.BURN: case StatusEffect.BURN:
return 1.5; return 1.5;
case StatusEffect.SLEEP: case StatusEffect.SLEEP:
case StatusEffect.FREEZE: case StatusEffect.FREEZE:
return 2.5; return 2.5;
} }
return 1; return 1;
} }