summaryrefslogtreecommitdiff
path: root/src/animatedsprite.h
AgeCommit message (Collapse)AuthorFilesLines
2011-09-02The draw order of particles is now Y - 16 pixels.unknown1-0/+3
This means that the order point of the sprites relative to the particles is no longer the lowest point of the image but instead a point which is approximately between the feet of the characters. The intent of the latest commits to treat sprites as perpendicular to the ground instead of perpendicular to the view line is retained by this approach. I tested this with various particle effects and it results in exactly the expected behavior. Note that this does NOT fix the current problems on TMW with the snail slime effect, because the TMW content team accidently placed this one 10px in the air. Sorry, garbage in, garbage out. getDrawPixelY was re-renamed to getPixelY to be consistent with getPixelX, while getPixelY was renamed to getDrawOrder, to make its purpose clear. Further, particles are no longer drawn when behind other objects. This is implemented by adding a drawnWhenBehind member function to Actor, which currently returns true for everything except particles and compound- sprites with more than one sub-sprites (the later case is consistent with the previous behavior of them). An exception are text particles which are excempt from this exception and whose drawing order is also biased by 16 pixels south instead of north to make them more visible. Plus some minor changes from Bertram. Reviewed-by: Bertram. Resolves: Mana-Mantis #362.
2011-06-23Made the being death sequence better handled.Yohann Ferreira1-0/+2
Now the death animation is set to the minimum of 1.5 seconds just as in the older versions, but permit longer sequences as well. I didn't put a maximum hard cap on it as it may be a burden for the maintainers whatever the hard cap would be, and as it isn't vital to set one anyway. Resolves: Mana-Mantis #364. Reviewed-by: bjorn, Jaxad0127.
2011-05-17Fix sprite buffering size issuesJared Adams1-0/+4
Reviewed-by: Yohann Ferreira
2010-07-29Changed the items loading to handle a new 'attack-action' parameter.Yohann Ferreira1-1/+1
The old behaviour was to load the weapon-type value and do many unnecessary checks and transformation on it: The weapon-type was transformed using hard-coded values into an integer enum value. The exact same thing was done on the opposite side in the animation files before comparing the two. As both data were string values, I simplified all of it by using the value taken in items.xml to call the corresponding action. This now also permit to set up new attack animation in items.xml and in the playerset.xml without having the need to modify the client code. Last but not least, the weapon-type value was used by both the skills and the actions and avoided the possibility to set up a definite action for a weapon-type. Note: The weapon-type parameter will become deprecated for the server in favor of a 'skill' parameter to reflect more it's actual use. This patch is the first step to fix Manasource issue: #157.
2010-06-09Remove hard-coded frame counts from Being classJared Adams1-0/+4
Also removes the Monster/Player difference in tmwAthena's Being::logic and moves the particle code from Being::setAttack to Being::Logic for tmwAthena. Reviewed-by: Chuck Miller
2010-05-20Buffer layered sprites under SDLJared Adams1-5/+5
This improves framerate and allows transparent overlay for complex sprites. Two copies of the buffer are kept, one at full opacity, one with variable opactiy, to reduce calls to setAlpha. Reviewed-by: Bertram
2010-05-06Add support for floor item spritesJared Adams1-41/+6
This commit adds a sprite hierarchy (Sprite->ImageSprite,AnimatedSprite,CompundSprite; CompoundSprite,Actor->ActorSprite;ActorSprite->Being,FloorItem) to collect common functionailty into new base classes which will make other Mantis tickets easier to do. Also allows monsters to use particle effects. Reviewed-by: Bertram
2010-02-22Modify copyright headersFreeyorp1-1/+2
2010-02-20License header update for The Mana ClientThorbjørn Lindeijer1-4/+3
2010-02-07Updated Copyright year to 2010!Bertram1-1/+1
Also added the update copyright tool from the Wormux Team. ( And not forgetting credit's due. :P )
2010-01-28Added virtual destructors, some implicit casts, and a couple of type changes.Daniel Bradshaw1-1/+1
Many warnings removed. Reviewed-by: Thorbjørn Lindeijer <thorbjorn@lindeijer.nl>
2009-09-17Partially (but mainly) resolved Mantis #753 by making monsters, NPC, and ↵Bertram1-0/+13
Floor Items visible even covered. Next Step would be to add a caching system for multi-layered sprites + copy functions for SDL and OpenGL. Then, I'll be able to finish this, by making also players visible when covered... But Kage asked me (each and every hour) to do something else first ;)
2009-05-03Fixed compile warnings and other tweaksBjørn Lindeijer1-2/+2
Warnings were about initialization order and signed variables compared to unsigned variables. Please pay attention to these things. Also made some getters const and turned some std::string parameters into const std::string &.
2009-01-25Removed the TMW branding from header guardsBjørn Lindeijer1-2/+2
2009-01-23Removed unnecessary references to The Mana World in code headersBjørn Lindeijer1-4/+4
This dates back to the old days of TMW, but the usage instructions of GPLv2 don't mention this being necessary. Since it doesn't add anything, avoid the branding in these sections.
2009-01-04Code reformattingBjørn Lindeijer1-17/+10
Mainly making sure 'const std::string &' is used everywhere instead of 'std::string const &'. The former has always been the preferred order in this project. (cherry picked from mainline)
2008-11-16Got rid of CVS/Subversion $Id$ markersBjørn Lindeijer1-2/+0
I don't know why we dealt with these things for so long. Did we ever get anything out of it?
2007-11-20Merged revisions 3629-3630 via svnmerge from Bjørn Lindeijer1-2/+2
https://themanaworld.svn.sourceforge.net/svnroot/themanaworld/tmw/trunk (but kept looks in Being class, since eAthena works that way) ........ r3629 | gmelquio | 2007-10-18 21:00:38 +0200 (Thu, 18 Oct 2007) | 1 line Removed player looks from generic beings. Prevented client termination on missing sprites. Merged weapon-type and attack-type fields for items. ........ r3630 | gmelquio | 2007-10-18 21:30:57 +0200 (Thu, 18 Oct 2007) | 1 line Fixed changelog message. ........
2007-05-07Fixed positioning of monster names and target circles.Philipp Sehmisch1-0/+12
2006-12-12Moved Action, Animation and Frame (renamed from AnimationPhase) classes intoBjørn Lindeijer1-4/+5
the resources directory, since they are part of the SpriteDef class.
2006-11-26Made Being::mDirection protected, forcing the use of setDirection. DefaultedBjørn Lindeijer1-1/+1
variant argument to 0 since this is the most common situation. Some SpriteDef refactoring, splitting up the loading into several methods, in preparation of adding support for including other sprites.
2006-11-19Separated sprite definition from playback.Bjørn Lindeijer1-88/+27
2006-11-15Separated getProperty method to an XML utility namespace.Bjørn Lindeijer1-18/+0
2006-11-14Resolve Image* of animation phase at load time instead of storing just theBjørn Lindeijer1-3/+11
spriteset index and looking it up later (checking validity should still be added). Also calculate animation length during loading instead of summing it up each time it is requested.
2006-09-20tweaks at the animation system (mostly about fixing the looping attack ↵Philipp Sehmisch1-3/+2
animations of the monsters)
2006-09-16Fixed the crash when attacking without a weapon, some additional stability ↵Philipp Sehmisch1-2/+4
improvements and more descriptive variable names in the parsing algorithmn.
2006-09-16Fixed line-endings and set missing properties.Björn Steinbrink1-2/+2
2006-09-13some improvements at the animation systemPhilipp Sehmisch1-1/+2
2006-08-02Some cleanups, fixes and a small start on a solution for the animated spriteBjørn Lindeijer1-23/+31
synchronization problem (resetting all animations).
2006-08-01animations and directions are now passed and stored as enums and no longer ↵Philipp Sehmisch1-6/+45
as strings.
2006-07-30Unified the play methods.Björn Steinbrink1-8/+3
2006-07-29A bunch of cleanups.Björn Steinbrink1-0/+1
2006-07-28Moved AnimatedSprite into its own files, removed useless includes.Björn Steinbrink1-0/+135