Pokered Save Editor 2
Pokemon Red & Blue save file editor - Qt 6 C++/QML
Loading...
Searching...
No Matches
PokemonDBEntryEvolution Struct Reference

One evolution edge of a species: how it evolves (and de-evolves). More...

#include <pokemon.h>

Collaboration diagram for PokemonDBEntryEvolution:

Public Member Functions

 PokemonDBEntryEvolution ()
 Empty edge.
 PokemonDBEntryEvolution (QJsonValue &data, PokemonDBEntry *parent)
 Build from JSON under parent.
void deepLink (PokemonDBEntry *deEvolution)
 Resolve target/item; set deEvolution back-link.

Public Attributes

QString toName
 Name of the species this evolves into.
bool trade = false
 Evolves on trade.
QString item
 Evolution item, if any.
std::optional< var8level
 Evolution level, if level-based.
PokemonDBEntrytoDeEvolution = nullptr
 Resolved pre-evolution.
PokemonDBEntrytoEvolution = nullptr
 Resolved evolved species.
ItemDBEntrytoItem = nullptr
 Resolved evolution item.
PokemonDBEntryparent = nullptr
 Owning species.

Detailed Description

One evolution edge of a species: how it evolves (and de-evolves).

Sub-entry of PokemonDBEntry. Records the target (toName) and the trigger (level, trade, or item). deepLink() resolves the forward (toEvolution), backward (toDeEvolution), and item links. See db.md.

Definition at line 51 of file pokemon.h.

Constructor & Destructor Documentation

◆ PokemonDBEntryEvolution() [1/2]

PokemonDBEntryEvolution::PokemonDBEntryEvolution ( )

Empty edge.

Definition at line 41 of file pokemon.cpp.

◆ PokemonDBEntryEvolution() [2/2]

PokemonDBEntryEvolution::PokemonDBEntryEvolution ( QJsonValue & data,
PokemonDBEntry * parent )

Build from JSON under parent.

Definition at line 42 of file pokemon.cpp.

References item, level, parent, toName, and trade.

Member Function Documentation

◆ deepLink()

void PokemonDBEntryEvolution::deepLink ( PokemonDBEntry * deEvolution)

Resolve target/item; set deEvolution back-link.

Definition at line 52 of file pokemon.cpp.

References ItemsDB::getIndAt(), PokemonDB::getIndAt(), ItemsDB::inst(), PokemonDB::inst(), item, toDeEvolution, toEvolution, toItem, and toName.

Member Data Documentation

◆ item

QString PokemonDBEntryEvolution::item

Evolution item, if any.

Definition at line 59 of file pokemon.h.

Referenced by deepLink(), and PokemonDBEntryEvolution().

◆ level

std::optional<var8> PokemonDBEntryEvolution::level

Evolution level, if level-based.

Definition at line 60 of file pokemon.h.

Referenced by PokemonDBEntryEvolution().

◆ parent

PokemonDBEntry* PokemonDBEntryEvolution::parent = nullptr

Owning species.

Definition at line 65 of file pokemon.h.

Referenced by PokemonDBEntryEvolution().

◆ toDeEvolution

PokemonDBEntry* PokemonDBEntryEvolution::toDeEvolution = nullptr

Resolved pre-evolution.

Definition at line 62 of file pokemon.h.

Referenced by deepLink().

◆ toEvolution

PokemonDBEntry* PokemonDBEntryEvolution::toEvolution = nullptr

Resolved evolved species.

Definition at line 63 of file pokemon.h.

Referenced by deepLink().

◆ toItem

ItemDBEntry* PokemonDBEntryEvolution::toItem = nullptr

Resolved evolution item.

Definition at line 64 of file pokemon.h.

Referenced by deepLink().

◆ toName

QString PokemonDBEntryEvolution::toName

Name of the species this evolves into.

Definition at line 57 of file pokemon.h.

Referenced by deepLink(), and PokemonDBEntryEvolution().

◆ trade

bool PokemonDBEntryEvolution::trade = false

Evolves on trade.

Definition at line 58 of file pokemon.h.

Referenced by PokemonDBEntryEvolution().


The documentation for this struct was generated from the following files: