2012-08-11 12:02:51 +02:00
|
|
|
#ifndef GAME_MWDIALOGUE_JOURNALENTRY_H
|
|
|
|
#define GAME_MWDIALOGUE_JOURNALENTRY_H
|
2011-04-19 10:54:11 +02:00
|
|
|
|
|
|
|
#include <string>
|
|
|
|
|
2012-10-01 19:17:04 +04:00
|
|
|
namespace MWWorld
|
2011-04-19 10:54:11 +02:00
|
|
|
{
|
|
|
|
struct ESMStore;
|
|
|
|
}
|
|
|
|
|
|
|
|
namespace MWDialogue
|
|
|
|
{
|
2011-04-22 11:16:39 +02:00
|
|
|
/// \brief A quest or dialogue entry
|
2011-04-19 10:54:11 +02:00
|
|
|
struct JournalEntry
|
|
|
|
{
|
|
|
|
std::string mTopic;
|
|
|
|
std::string mInfoId;
|
|
|
|
|
|
|
|
JournalEntry();
|
|
|
|
|
2011-04-22 11:16:39 +02:00
|
|
|
JournalEntry (const std::string& topic, const std::string& infoId);
|
2011-04-19 10:54:11 +02:00
|
|
|
|
2012-10-01 19:17:04 +04:00
|
|
|
std::string getText (const MWWorld::ESMStore& store) const;
|
2011-04-21 11:05:49 +02:00
|
|
|
|
2012-07-03 12:30:50 +02:00
|
|
|
static JournalEntry makeFromQuest (const std::string& topic, int index);
|
2011-04-22 11:16:39 +02:00
|
|
|
|
2012-07-03 12:30:50 +02:00
|
|
|
static std::string idFromIndex (const std::string& topic, int index);
|
2011-04-19 10:54:11 +02:00
|
|
|
};
|
|
|
|
|
2011-04-22 11:16:39 +02:00
|
|
|
/// \biref A quest entry with a timestamp.
|
|
|
|
struct StampedJournalEntry : public JournalEntry
|
|
|
|
{
|
|
|
|
int mDay;
|
|
|
|
int mMonth;
|
|
|
|
int mDayOfMonth;
|
|
|
|
|
|
|
|
StampedJournalEntry();
|
|
|
|
|
|
|
|
StampedJournalEntry (const std::string& topic, const std::string& infoId,
|
|
|
|
int day, int month, int dayOfMonth);
|
|
|
|
|
2012-07-03 12:30:50 +02:00
|
|
|
static StampedJournalEntry makeFromQuest (const std::string& topic, int index);
|
2011-04-22 11:16:39 +02:00
|
|
|
};
|
2011-04-19 10:54:11 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
#endif
|