1 #ifndef CORE_COMPONENTS_TRAINER_HPP
2 #define CORE_COMPONENTS_TRAINER_HPP
4 #include <BLIB/Resources.hpp>
31 const std::string&
file()
const;
37 const std::string&
name()
const;
61 std::uint8_t
range()
const;
67 const std::vector<pplmn::OwnedPeoplemon>&
team()
const;
73 const std::vector<item::Id>&
items()
const;
96 const std::string sourceFile;
97 const std::string _name;
100 const std::string loseDialog;
101 const std::uint8_t visionRange;
102 const std::vector<pplmn::OwnedPeoplemon> peoplemon;
103 const std::vector<item::Id> _items;
Core classes and functionality for both the editor and game.
Adding this to an entity will make it a trainer that can battle.
Trainer(file::Trainer &&trainer)
Construct a new Trainer component.
const std::string & loseBattleDialog() const
Dialog line said in battle screen when battle is lost.
const std::string & name() const
The name of the NPC.
bool defeated() const
Returns whether or not this trainer was defeated.
const file::Conversation & beforeBattleConversation() const
The conversation before battle is entered.
std::uint8_t range() const
Returns how far the trainer can see in tiles.
const std::vector< item::Id > & items() const
Returns the items the trainer has.
const std::string & file() const
Returns the file the trainer was spawned from.
const file::Conversation & afterBattleConversation() const
The conversation used after battle if interacted again.
const std::vector< pplmn::OwnedPeoplemon > & team() const
Returns the team of peoplemon the trainer has.
void setDefeated()
Marks this trainer as defeated.
std::uint8_t basePayout() const
Returns the base payout of the trainer.
Stores a conversation that an NPC or trainer can have with the player.
Static data for trainers in the world.