summaryrefslogtreecommitdiff
path: root/src/resources/emotedb.cpp
AgeCommit message (Collapse)AuthorFilesLines
2025-07-04Added logging priorities and use SDLs logging facilitiesThorbjørn Lindeijer1-8/+8
By using SDL logging, we can rely on SDL to filter the log messages by their priority before they get sent to our custom output function. For example, we now no longer get entries for created and destroyed Window instances by default, since these have only "debug" priority whereas the default priority for the "app" category is "info". We can also get log messages raised by SDL itself in our log now. Log levels can be controlled per category through the "SDL_LOGGING" environment variable. Many existing log messages have been assigned a category based on their existing prefix.
2025-02-26Use ResourceRef for all resource typesThorbjørn Lindeijer1-2/+1
All ResourceManager functions that load resources now return respective ResourceRef values, which helps to make sure resources are properly cleaned up. The Sound class was cleaned up and now also allows SoundEffect resources to be unloaded. The Animation class now keeps its ImageSet loaded only as long as necessary. Previously, SimpleAnimation and ParticleEmitter would keep the ImageSet loaded indefinitely by never decreasing its reference count. Reduced duplicated animation loading code between SimpleAnimation and ParticleEmitter.
2025-02-21Replaced ImageSprite in Emote by plain ImageThorbjørn Lindeijer1-10/+6
Emotes just need an image to be represented in the UI, so we don't need to use ImageSprite.
2025-01-20Wrapped xmlNodePtr access with a Node classThorbjørn Lindeijer1-7/+7
Slightly more ergonomic and this eliminates direct libxml2 usage from many places.
2024-04-08Fixed assertion failure on exitThorbjørn Lindeijer1-0/+4
Regression introduced in 14dc8218eeebd1583e6bd3c49013b3e501f47228.
2024-04-08Use ResourceRef<Image> in more placesThorbjørn Lindeijer1-18/+21
Automatic reference counting of images is now used by Item, Icon, AnimatedSprite, ImageSprite, ParticleEmitter, Minimap, Desktop and Emote. Since ResourceManager::get automatically adds a reference, it needs to be explicitly subtracted when the resource is managed by ResourceRef. This is taken care of by the new ResourceManager::getImageRef. Also removed the apprently unused and duplicate "mDrawImage" from Item (which also didn't get decRef called on it). Fixes cleanup of emote ImageSet and ImageSprite instances, as well as particle images.
2024-02-15Fix handling of non-consecutive emote IDsThorbjørn Lindeijer1-39/+32
Previous code was assuming there would be no gaps in the emote IDs. Also cleaned up some confusion where the "emote ID" being passed around in the code was often offset by 1. Now it is only offset in communication with tmwAthena and when saving the shortcuts.
2024-02-13General code cleanupsThorbjørn Lindeijer1-6/+2
* Removing unused includes * Use member initialization * Use range-based for loops * Use nullptr * Removed no longer used aliases * Use override * Don't use else after return * Use '= delete' to remove implicit members * Use std::string::empty instead of comparing to ""
2024-01-26Apply C++11 fixitsThorbjørn Lindeijer1-1/+1
modernize-use-auto modernize-use-nullptr modernize-use-override modernize-use-using
2013-05-04Client-side settings are now available from settings.xmlPrzemysław Grzywacz1-63/+53
2012-04-02Fixed problems with using the last emotev0.6.1Thorbjørn Lindeijer1-3/+3
The tmwa/BeingHandler was adjusting the effect id rather than the emote id, causing it to not find the last emote (and the rest of the emotes only worked correctly because the effect ids were consecutive in the same order as the emote ids). Furthermore, the EmoteShortcutContainer refused to draw the icon for the last emote due to an off-by-one error in dealing with the 1-adjusted emote ids used by the EmoteShortcut class. Also cleaned up some old remains of a player ignore strategy that used to use the two balloon emotes (this had been their original purpose). Reviewed-by: Erik Schilling
2012-01-31Added missing copyright notices.Yohann Ferreira1-0/+1
Reviewed-by: Erik Schilling
2010-11-11Fix unloading of the emote databaseChuck Miller1-0/+3
Trivial fix
2010-11-07Convert the emote system to use particlesChuck Miller1-56/+55
Reviewed-by: Jared Adams
2010-07-28Centralized configuration default values using the VariableData system.Yohann Ferreira1-3/+2
Please note that I didn't turned all the getValue() call into new ones, simply because I have to have config object initiated which is not forcefully the case the branding file. Resolves: Manasource Mantis #170.
2010-07-11Made the different hard-coded paths and files be now taken from theYohann Ferreira1-3/+7
data/paths.xml configuration file. Also added default gui theme path in branding and default wallpaper path and file searched respectively in the branding and paths.xml files. Hard-coded values are still used as fallbacks. Resolves: Manasource Mantis #148. Reviewed-by: jaxad0127.
2010-06-03Unload loaded DBs before loading them againJared Adams1-1/+1
This greatly simplifies handling DBs when changing states. No more need to manage unloading in Client (except when exiting). Reviewed-by: Thorbjørn Lindeijer
2010-02-20License header update for The Mana ClientThorbjørn Lindeijer1-3/+2
2009-05-04Replaced emote window with a new emote popupBjørn Lindeijer1-5/+6
The popup is meant to be temporary, showing the emote instantly when you click on it. It adapts nicely to show any number of emotes. I still need to add a better way of assigning emote shortcuts, since currently you can only change which emote is assigned to which shortcut by actually using it.
2009-03-27Fixed include structure in resource/ directoryBjørn Lindeijer1-6/+6
There is also a new rule that trivial constructors and destructors should no longer be trivially "documented", since this just takes up space with no gain.
2009-03-12Move emote sprite loading into EmoteDBJared Adams1-7/+17
2009-02-15Merge commit 'aethyra/master'Bjørn Lindeijer1-1/+1
Conflicts: CMakeLists.txt configure.ac data/help/header.txt packaging/windows/setup.nsi po/POTFILES.in src/being.cpp src/being.h src/game.cpp src/gui/color.cpp src/gui/color.h src/gui/equipmentwindow.h src/gui/popupmenu.cpp src/gui/recorder.cpp src/gui/setup_colors.h src/gui/setup_keyboard.cpp src/gui/setup_keyboard.h src/gui/skill.cpp src/gui/speechbubble.cpp src/gui/speechbubble.h src/gui/table.cpp src/keyboardconfig.cpp src/keyboardconfig.h src/localplayer.cpp src/main.cpp src/main.h src/map.cpp src/resources/colordb.cpp src/resources/colordb.h src/resources/emotedb.cpp src/resources/emotedb.h src/text.cpp src/text.h src/tmw.rc src/winver.h
2009-02-11Don't make log statements translatableBjørn Lindeijer1-5/+4
The log is mainly used to aid the developers, hence shouldn't be translated to the user's local language. Also introduces unnecessary work for all translators.
2009-02-10Fixed header files, as well as removed the unused buddy list class (notIra Rice1-4/+4
useful since buddy lists are tracked through the player relation interface instead) Signed-off-by: Ira Rice <irarice@gmail.com>
2009-02-10Fixed copyright headers for emote and color DBsBjørn Lindeijer1-7/+7
2009-02-10Don't make log statements translatableBjørn Lindeijer1-5/+4
The log is mainly used to aid the developers, hence shouldn't be translated to the user's local language. Also introduces unnecessary work for all translators.
2009-02-09Mostly whitespace fixesBjørn Lindeijer1-1/+1
Removed tab characters and trailing spaces and added spaces between "if(", "for(", "while(" and "switch(".
2009-02-09Merged with Aethyra master as of 2009-02-09Bjørn Lindeijer1-2/+0
Conflicts: A lot of files...
2009-02-09Mostly whitespace fixesBjørn Lindeijer1-1/+1
Removed tab characters and trailing spaces and added spaces between "if(", "for(", "while(" and "switch(".
2009-02-07Some more include cleanups.Ira Rice1-2/+0
Signed-off-by: Ira Rice <irarice@gmail.com>
2009-01-16Candidate release for 0.0.27.1 (Windows needs to get colors fixed, andIra Rice1-5/+0
then this build might be official) Signed-off-by: Ira Rice <irarice@gmail.com>
2009-01-15Added emote database, which is loosely based off of the NPC database.Ira Rice1-0/+148
Also changed all emotes to be animated sprites now, and to load from emotes.xml. This gives us a bit more flexibility to not only add more emotes in the future, but allowing them to be animated as well. NOTE: This commit, unlike the previous emote commits, breaks emotes if you don't have the xml file. This will be available on Aethyra soon, but is not rolled into an update at the moment. Signed-off-by: Ira Rice <irarice@gmail.com>