Implement Creeping Fog Mystery Encounter Feature

This Mystery Encounter is a random event that can
occur from wave 50 and above that causes a fog
to appear covering the screen and a wild pokemon
to be hidden underneath it. The player when
facing this encounter may choose one of four
options which includes fighting, using a light
based move or ability to light the way, using a
defog move or ability to clear the fog, or
waiting for the fog to thin out. Depending on
your choice the player might be granted more
experience and better rewards.
The pokemon encountered changes dynamically with
the biome and stage level that the Mystery
Encounter occurs. Changes made:
- Implemented new mystery encounter called
  "Creeping Fog" ("creeping-fog-encounter.ts")
  and added a new corresponding weather type
  called "Heavy Fog" ("weather.ts").
- Updated corresponding weather functions
  and fog affected pokemon functions.
  ("move.ts", "pokemon-forms.ts", "ability.ts",
  "pokemon-evolutions.ts").
- Created new Fog Overlay for the mystery
  encounter ("fog-overlay.ts").
- Created new item called "Micle Berry" to
  grant perfect accuracy ("modifier-type.ts").
- Created Mystery Encounter Creeping Fog unit
  test ("creeping-fog-encounter.test.ts").
- Created new Mystery Encounter Light and Defog
  moves and abilities requirements
  ("requirements-groups.ts").
Signed-off-by: Fuad Ali <fuad.ali@tecnico.ulisboa.pt>
Co-authored-by: Matilde Simões <matilde.simoes@tecnico.ulisboa.pt>
This commit is contained in:
Fuad Ali 2025-05-22 20:10:31 +01:00
parent 2264a28300
commit e407e25392

View File

@ -49,7 +49,7 @@ const namespace = "mysteryEncounters/creepingFog";
/** /**
* Creeping Fog encounter. * Creeping Fog encounter.
* @see {@link https://github.com/pagefaultgames/pokerogue/issues/4423 | GitHub Issue #4418} * @see {@link https://github.com/pagefaultgames/pokerogue/issues/4418 | GitHub Issue #4418}
* @see For biome requirements check {@linkcode mysteryEncountersByBiome} * @see For biome requirements check {@linkcode mysteryEncountersByBiome}
**/ **/
export const CreepingFogEncounter: MysteryEncounter = MysteryEncounterBuilder.withEncounterType( export const CreepingFogEncounter: MysteryEncounter = MysteryEncounterBuilder.withEncounterType(