summaryrefslogtreecommitdiffstats
path: root/sigmodr/tree/TreeItem.cpp
diff options
context:
space:
mode:
authorBen Boeckel <MathStuf@gmail.com>2009-05-02 04:24:57 -0400
committerBen Boeckel <MathStuf@gmail.com>2009-05-02 04:24:57 -0400
commit460616a772dae76481ecf9a33b5f5ef2f68031e8 (patch)
treee10ba20e8e428d55e31375f5e5512fb7933f87e0 /sigmodr/tree/TreeItem.cpp
parentc8301c3ac9c7900a3d81201cd47636c5cb911758 (diff)
downloadsigen-460616a772dae76481ecf9a33b5f5ef2f68031e8.tar.gz
sigen-460616a772dae76481ecf9a33b5f5ef2f68031e8.tar.xz
sigen-460616a772dae76481ecf9a33b5f5ef2f68031e8.zip
Add more complicated class namings
Diffstat (limited to 'sigmodr/tree/TreeItem.cpp')
-rw-r--r--sigmodr/tree/TreeItem.cpp49
1 files changed, 49 insertions, 0 deletions
diff --git a/sigmodr/tree/TreeItem.cpp b/sigmodr/tree/TreeItem.cpp
index 0d0c4455..c53ecbee 100644
--- a/sigmodr/tree/TreeItem.cpp
+++ b/sigmodr/tree/TreeItem.cpp
@@ -188,6 +188,23 @@ QString TreeItem::text() const
case EntryCoinList:
name = qobject_cast<CoinList*>(m_object)->name();
break;
+ case EntryCoinListItem:
+ {
+ CoinListItem* coinListItem = qobject_cast<CoinListItem*>(m_object);
+ if (coinListItem->type() == CoinListItem::Item)
+ {
+ Item* item = m_object->game()->itemById(coinListItem->object());
+ name = item ? item->name() : QString::fromUtf8("«unknown»");
+ }
+ else if (coinListItem->type() == CoinListItem::Species)
+ {
+ Species* species = m_object->game()->speciesById(coinListItem->object());
+ name = species ? species->name() : QString::fromUtf8("«unknown»");
+ }
+ else
+ name = QString::fromUtf8("«unknown»");
+ break;
+ }
case EntryEggGroup:
name = qobject_cast<EggGroup*>(m_object)->name();
break;
@@ -206,12 +223,35 @@ QString TreeItem::text() const
case EntryMapEffect:
name = qobject_cast<MapEffect*>(m_object)->name();
break;
+ case EntryMapTrainer:
+ {
+ Trainer* trainer = m_object->game()->trainerById(qobject_cast<MapTrainer*>(m_object));
+ if (trainer)
+ name = QString().arg(trainer->name()).arg();
+ break;
+ }
+ case EntryMapTrainerTeamMember:
+ {
+ MapTrainerTeamMember* member = qobject_cast<MapTrainer*>(m_object);
+ Species* species = m_object->game()->speciesById(member->species());
+ name = QString("%1 L%2%3").arg(species ? species->name() : QString::fromUtf8("«unknown»")).arg(member->level());
+ if (static_cast<const MapTrainer*>(member->parent())->leadTeamMember().contains(member->id()))
+ name.append(" (leading)");
+ break;
+ }
case EntryMapWarp:
name = qobject_cast<MapWarp*>(m_object)->name();
break;
case EntryMapWildList:
name = qobject_cast<MapWildList*>(m_object)->name();
break;
+ case EntryMapWildListEncounter:
+ {
+ MapWildListEncounter* encounter = qobject_cast<MapWildListEncounter*>(m_object);
+ Species* species = m_object->game()->speciesById(encounter->species());
+ name = QString("%1 L%2 (weight: %3)").arg(species ? species->name() : QString::fromUtf8("«unknown»")).arg(encounter->level()).arg(encounter->weight());
+ break;
+ }
case EntryMove:
name = qobject_cast<Move*>(m_object)->name();
break;
@@ -227,6 +267,15 @@ QString TreeItem::text() const
case EntrySpecies:
name = qobject_cast<Species*>(m_object)->name();
break;
+ case EntrySpeciesMove:
+ {
+ SpeciesMove* speciesMove = qobject_cast<SpeciesMove*>(m_object);
+ Move* move = m_object->game()->moveById(speciesMove->move());
+ name = QString("%1 L%2").arg(move ? move->name() : QString::fromUtf8("«unknown»")).arg(speciesMove->level());
+ if (speciesMove->wild() != speciesMove->level())
+ name.append(QString(" (wild: L%1)").arg(speciesMove->wild()));
+ break;
+ }
case EntrySprite:
name = qobject_cast<Sprite*>(m_object)->name();
break;