summaryrefslogtreecommitdiff
path: root/src/resources/beinginfo.cpp
AgeCommit message (Collapse)AuthorFilesLines
2012-03-18Removed some 'const' keywords from value returnsThorbjørn Lindeijer1-1/+1
It makes no sense to mark a return value as const when it is returned by value. This only makes sense if the return value is passed by reference, in order to prevent the receiver from modifying the value. Also made some other small adjustments. A std::string does not need to be initialized to "" explicitly and getSafeUtf8String could take its parameter by reference. Reviewed-by: Yohann Ferreira
2012-02-02Fixed the use of custom particle effects for attacks.Yohann Ferreira1-4/+5
The tA beingmanager was wrongly using the attack type in the Being::handleAttack() function, which is in fact used to set the attack id. Thus, breaking the attack id given and all its attack parameters. I noticed that while updating the client data for TMW. Reviewed-by: Thorbjørn Lindeijer
2012-01-26Updated copyrights to 2012Thorbjørn Lindeijer1-1/+1
2012-01-24Fixed the crash in setupSpriteDisplayThorbjørn Lindeijer1-1/+3
This happened when an NPC, monster or item couldn't be found and it had to fall back on Being::Unknown. This instance was bugged since it had a 0 pointer in its sprites list, because when the Being::Unknown was created, the SpriteDef::Empty was not initialized yet (since both were global static variables, the initialization order was not well defined). Fixed it by removing SpriteDef::Empty and instead creating it in the BeingInfo constructor. I've also changed the SpriteReference instances to be inline values rather than instances on the heap, since they're quite small. That also fixed a leak since those instances were never getting deleted. Reviewed-by: Yohann Ferreira
2011-06-07Added defaults to empty attacks.Yohann Ferreira1-1/+5
Reviewed-by: Jaxad0127.
2011-06-07Added hit effects on victims from monsters attacks.Yohann Ferreira1-2/+5
Resolves: Mana-Mantis #336. Reviewed-by: Jaxad0127.
2011-05-26Added effects support in monsters attacks.Yohann Ferreira1-7/+6
This is provided through the use of the 'effect-id' property of the <attack> tag. Note that the 'particle-effect' support has been removed as it was redundant, but can be kept for backward compatibility. Now, on both Manaserv and tA, only the attack id 1 is supported, i.e: <monster> ... <attack id="1" effect-id="11" action="attack" /> </monster> More to come with re-enabling of the attack type support. I had to fix a crash in the Being::takeDamage() function when there were no attacker (in Manaserv), and add rotation support to the effectManager to achieve this. Reviwed-by: Jaxad0127.
2010-07-29Changed the items loading to handle a new 'attack-action' parameter.Yohann Ferreira1-2/+2
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-05-23Fix attack display for beings without an attack definedJared Adams1-1/+1
Reviewed-by: 4144
2010-05-17Add support for different target cursor sizes for NPCsJared Adams1-0/+18
Moves the parsing logic for the size strings into BeingInfo to share the code. Reviewed-by: Freeyorp
2010-05-17Remove Monster, Player, and NPC classesJared Adams1-0/+89
Instead of having these three subclasses with minor differences, this commit merges them back into Being. In the future, we can make Beings that are talkable to some, attackable by others, etc. This also puts back support for monster equipment. Also changes remaining references to Being::Type and the constants to refer to ActorSprite::Type. Reviewed-by: Freeyorp