summaryrefslogtreecommitdiff
path: root/src/net/tmwa/beinghandler.cpp
AgeCommit message (Collapse)AuthorFilesLines
2012-02-02Fix to the hair colors and styles handling.Yohann Ferreira1-3/+6
- I made the charCreatedialog handle a possible max permitted color Id and a minimum hair style id for tA. - Added a foundation to later load the styles and colors from the same file, to handle the Mana-issue #224 for manaserv. - Support for non-contiguous hair color and style ids has also been added. - I also replaced the < and > arrow signs with images. Reviewed-by: Ben Longbons, Thorbjørn Lindeijer
2012-02-02Fixed the use of custom particle effects for attacks.Yohann Ferreira1-3/+2
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-18ColorDB -> HairDB.Yohann Ferreira1-4/+4
This will ease the reading of the next patch about hair handling at character creation time in tAthena. As requested by bjorn. Reviewed-by: bjorn
2012-01-10player_node -> local_playerYohann Ferreira1-7/+7
Reviewed-by: Ablu
2011-06-24Made use of the attack speed sent by the tA server.Yohann Ferreira1-2/+5
Part of issue #343.
2011-06-02Arbitrary code cleanupsThorbjørn Lindeijer1-1/+1
Just some stuff that piles up while "looking" at the code, which eventually gets annoying to ignore while staging real changes. * Replaced a few NULL occurrences with 0 * Rely on default parameter for std::vector::resize. * Replaced a few "" with std::string() * Prefer .empty() to == "" * Removed a few comparisons with NULL * Don't check pointers before deleting them * Removed a bunch of redundant semicolons * Made some global variables static (local to their compilation unit) * Prefer prefix ++/-- operators to postfix versions when possible * Corrected location of a comment
2011-05-28Fixing setting of being positionStefan Dombrowski1-2/+3
2011-03-29Added the Map::getTileCenter() convenience function.Yohann Ferreira1-25/+16
and made use of it through the tA code. I also remove the obsolete TODO in the flooritem class.
2011-03-28Random cleanups - Part 2Yohann Ferreira1-5/+5
- Removed another bogus comment. - Made functions used only in the tA::beinghandler static. - Don't init the destination to an irrelevant value in being::setDestination()
2011-03-28Added some tolerance on the tA being position message.Yohann Ferreira1-1/+11
Also made the destination equal to the desired position in that case since it's what the tA server expects. This fixes monsters going to strange destinations while fighting them, and makes it all much smoother.
2011-03-17Handle ta move and position message in a more generic way.Yohann Ferreira1-86/+47
This avoids code duplication.
2011-03-16Fixed the bug with remote player movement animation,Yohann Ferreira1-7/+9
by removing a now useless reset in the beinghandler. Also added checks for flawed directions.
2011-03-15Made the tA Beinghandler avoid dealing with flawed coordinates.Yohann Ferreira1-51/+81
Also fixed again a condition in Being::logic(). I'll beautify the code in tmwAthena:Beinghandler once everything will be working better. Note: I also suspect current clients to flood the server with keyboard messages, hence blocking the animation when they are remote. I'll need to test that with someone having the same client than here..
2011-03-15Add a tolerance check on current position to limit desyncs.Yohann Ferreira1-11/+42
Also removed dead code.
2011-03-15Basically merged the two movement algorithms into one.Yohann Ferreira1-17/+40
This was made in favour of the manaserv way of doing things. I also added a way to keep the original server speed value so the pixel value can be recomputed at each map change, as this was necessary since the speed is given before the first map is loaded. The code is much more simpler now about movement handling, and we can already see improvements on other characters movements in The Mana World with this. Everything can't be perfect the first time; here are bugs identified so far: - Monsters direction isn't updated on TmwAthena for obscure reasons. - Remote players walking animation is sometimes reset on each steps. - When changing map, the local player sometimes walks randomly until the player reacts. Stay tuned!
2010-11-07Convert the emote system to use particlesChuck Miller1-5/+4
Reviewed-by: Jared Adams
2010-11-01Merge branch '0.5' of gitorious.org:mana/manaYohann Ferreira1-3/+4
Conflicts: src/being.cpp src/client.cpp src/commandhandler.cpp src/gui/setup_video.cpp src/gui/socialwindow.cpp src/gui/viewport.cpp src/gui/widgets/browserbox.cpp src/gui/widgets/itemcontainer.cpp src/imageparticle.cpp src/localplayer.cpp src/localplayer.h src/map.cpp src/net/tmwa/beinghandler.cpp src/particle.cpp src/particle.h src/player.cpp src/player.h
2010-10-08Remove the following systemStefan Dombrowski1-21/+0
Removed due to unresolved social issues. In master it had been already removed by Kage in commit 89f192b9039f9c000515f0a12f4bb9fb55c4691c.
2010-10-04Remove the following systemChuck Miller1-20/+0
The implamentation is poor, and this is something that would be better handled by the addon engine later down the road. Reviewed-By: Freeyorp < Freeyorp101@hotmail.com >
2010-09-25Merge branch '1.0'Thorbjørn Lindeijer1-0/+8
Conflicts: src/actorspritemanager.h src/beingmanager.cpp src/game.cpp src/gui/beingpopup.cpp src/gui/chat.cpp src/gui/chat.h src/gui/inventorywindow.h src/gui/itempopup.cpp src/gui/socialwindow.cpp src/gui/statuswindow.cpp src/gui/widgets/chattab.cpp src/gui/widgets/chattab.h src/net/tmwa/inventoryhandler.cpp src/net/tmwa/partyhandler.cpp src/party.cpp src/sound.cpp src/utils/stringutils.cpp src/utils/stringutils.h
2010-09-15Avoid log message for unhandled SMSG_BEING_SPAWNStefan Dombrowski1-0/+8
This log message shows up in mana.log: "Unhandled packet: 7c". Later, the client will have to actually take care of it, though. Reviewed-by: Bertram, jaxad0127.
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-07-28Add some null being checks and cleanup some related codeJared Adams1-24/+19
Reviewed-by: Chuck Miller
2010-06-10Merge BeingManager and FloorItemManager as ActorSpriteManagerJared Adams1-23/+23
No need for two different classes to manage ActorSprites. Reviewed-by: Chuck Miller
2010-06-09Fix dead Beings not being removed using tmwAthenaJared Adams1-2/+2
Rename mWalkTime to mActionTime in Being and have Being manage death. Reviewed-by: 4144
2010-06-09Remove hard-coded frame counts from Being classJared Adams1-8/+2
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-17Remove Monster, Player, and NPC classesJared Adams1-63/+49
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
2010-04-17Changed eAthena protocol name to TmwAthena and changed the config files ↵Bertram1-0/+714
accordingly. This makes room for the actual eAthena protocol future inclusion.