Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Evolution Refactor #5785

Draft
wants to merge 16 commits into
base: upcoming
Choose a base branch
from

Conversation

AsparagusEduardo
Copy link
Collaborator

@AsparagusEduardo AsparagusEduardo commented Dec 7, 2024

Description

This PR's goals are to simplify the creation of new evolution methods by allowing users to combine multiple conditions for an evolution trigger.
It does this by adding a new parameter to the evolution data called "conditions", which allows for them to be stacked.

WIP: I'll look into removing redundant code for each "Evolution Mode" once I've converted the existing evolution methods into conditions.

Conditions handled:

  • Gender
  • Minimum Friendship
  • Time of day
  • Attack vs Defense stat
  • Personality value
  • Shedinja
  • Beauty
  • Held Item
  • Learned move
  • Learned move of type
  • Current Map
  • Current MapSec
  • Weather
  • Species in the party
  • Species of type in the party
  • Traded for species
  • Nature
  • Critical Hits in battle
  • Damage taken without fainting
  • Recoil damage taken
  • Used moved 20 times
  • 999 items in bag
  • Defeat 3 of the same species holding an item
  • Steps outside of battle/first in the party

Images

mGBA_rfP2k57u4r mGBA_1tBsleWcGz mGBA_AjXNQCoCvQ

Issue(s) that this PR fixes

Handles evolution part of #4107

People who collaborated with me in this PR

@Bassoonian, @mrgriffin, @cfmnephrite and @khbsd for the drafts and discussions which contributed as a base for this PR.

Things to note in the release changelog:

  • Evolution methods now have parametrized conditions, reducing their number. Existing methods have been modified to use these conditions.
    • Removed EVO_LEVEL_FEMALE, EVO_LEVEL_MALE, EVO_ITEM_MALE, EVO_ITEM_FEMALE, EVO_RECOIL_DAMAGE_MALE, EVO_RECOIL_DAMAGE_FEMALE.

Discord contact info

AsparagusEduardo

@AsparagusEduardo AsparagusEduardo marked this pull request as draft December 7, 2024 13:18
@AsparagusEduardo AsparagusEduardo added category: pokemon Pertains to Pokémon data and functionality type: refactor labels Dec 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category: pokemon Pertains to Pokémon data and functionality type: refactor
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant