diff options
author | Jared Adams <jaxad0127@gmail.com> | 2010-08-01 21:32:16 -0600 |
---|---|---|
committer | Jared Adams <jaxad0127@gmail.com> | 2010-08-01 21:35:09 -0600 |
commit | a3e61c0e830c46b51c0d135962ad361c02b93243 (patch) | |
tree | 3b94948be5750c8f968ea89723799eb4f119c063 /src/event.cpp | |
parent | 0e189bbe81c88283438aabb4fec3ba30920d3a36 (diff) | |
download | mana-a3e61c0e830c46b51c0d135962ad361c02b93243.tar.gz mana-a3e61c0e830c46b51c0d135962ad361c02b93243.tar.bz2 mana-a3e61c0e830c46b51c0d135962ad361c02b93243.tar.xz mana-a3e61c0e830c46b51c0d135962ad361c02b93243.zip |
Remove isActive methods from buy/sell windows
Uses a state variable in PlayerInfo instead. Moves isTalking from Being
to PlayerInfo. Also some small cleanups.
Reviewed-by: Chuck Miller
Diffstat (limited to 'src/event.cpp')
-rw-r--r-- | src/event.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/event.cpp b/src/event.cpp index 65fdee8a..d503ad58 100644 --- a/src/event.cpp +++ b/src/event.cpp @@ -96,4 +96,24 @@ double Event::getFloat(const std::string &key) const throw (BadEvent) return static_cast<FloatData *>(it->second)->getData(); } +void Event::setBool(const std::string &key, bool value) throw (BadEvent) +{ + if (mData.find(key) != mData.end()) + throw KEY_ALREADY_EXISTS; + + mData[key] = new BoolData(value); +} + +bool Event::getBool(const std::string &key) const throw (BadEvent) +{ + VariableMap::const_iterator it = mData.find(key); + if (it == mData.end()) + throw BAD_KEY; + + if (it->second->getType() != VariableData::DATA_BOOL) + throw BAD_VALUE; + + return static_cast<BoolData *>(it->second)->getData(); +} + } // namespace Mana |