25 #ifndef AURORA_DLGFILE_H 26 #define AURORA_DLGFILE_H 30 #include <boost/noncopyable.hpp> 39 class SeekableReadStream;
161 std::vector<Entry>::iterator &active);
163 std::vector<const Line *> &active);
170 #endif // AURORA_DLGFILE_H
uint32 getDelayReply() const
Return the number of seconds to wait before showing each reply.
void pickReply(uint32 id)
void readEntry(const GFF3Struct &gff, Entry &entry)
std::vector< Entry > _entriesNPC
NPC dialog lines ("entries").
DLGFile(Common::SeekableReadStream *dlg, NWScript::Object *owner=0, bool repairNWNPremium=false)
Take over this stream and read a DLG file out of it.
A class holding an UTF-8 string.
std::vector< const Line * > _currentReplies
The current replies.
void readLink(const GFF3Struct &gff, Link &link)
Common::UString active
Script that determines if this link is active.
NWScript::Object * _owner
std::vector< Link > replies
Reply lines.
bool _noZoomIn
Starting the conversation does not zoom the camera onto the speaker.
bool evaluateEntries(const std::vector< Link > &entries, std::vector< Entry >::iterator &active)
Common::UString sound
ResRef of the sound to play while speaking this entry.
Common::UString voice
ResRef of the voice over for KotOR games.
uint32 index
Index into the entries/replies.
const Line * getOneLiner() const
Return the first active non-branching entry.
bool getNoZoomIn() const
Does starting the conversation zoom in the camera onto the speaker or not?
Line line
The line's contents.
uint32 id
ID of this line (entry-local).
bool isPC
Is this a PC or NPC line?
void readEntries(const GFF3List &list, std::vector< Entry > &entries, bool isPC)
bool runScript(const Common::UString &script) const
uint32 _delayReply
Number of seconds to wait before showing each reply.
void load(const GFF3Struct &dlg)
Low-level type definitions to handle fixed width types portably.
Common::UString _convAbort
Script to run when the conversation was aborted.
uint32 questEntry
Entry ID to set the quest to.
Common::UString _convEnd
Script to run when the conversation ended normally.
std::vector< Entry > _entriesPC
PC dialog lines ("replies").
Common::UString quest
Quest name to modify when speaking this entry.
const std::vector< const Line * > & getCurrentReplies() const
Handling BioWare's localized strings.
std::vector< const GFF3Struct * > GFF3List
Basic type definitions to handle files used in BioWare's Aurora engine.
static const uint32 kEndLine
bool isEnd
Are there no replies to this line?
bool _ended
Has the conversation ended?
std::vector< Link > _entriesStart
NPC starting lines (greetings).
uint32 _delayEntry
Number of seconds to wait before showing each entry.
void readLinks(const GFF3List &list, std::vector< Link > &links)
uint32 getDelayEntry() const
Return the number of seconds to wait before showing each entry.
uint32 animation
Animation to play while speaking this entry.
Interface for a seekable & readable data stream.
static const uint32 kInvalidLine
std::vector< Entry >::iterator _currentEntry
The current entry.
Common::UString speaker
Tag of the speaker, empty if default.
Common::UString script
Script to run when speaking this entry.
LocString text
The actual text of the entry.
const Line * getCurrentEntry() const
bool evaluateReplies(const std::vector< Link > &entries, std::vector< const Line *> &active)