summaryrefslogtreecommitdiff
path: root/src/net/manaserv/beinghandler.cpp
AgeCommit message (Collapse)AuthorFilesLines
2024-01-29Fixed logic error in ManaServ::BeingHandlerThorbjørn Lindeijer1-5/+6
2024-01-29Removed unused includes in various filesThorbjørn Lindeijer1-5/+1
2024-01-26Apply C++11 fixitsThorbjørn Lindeijer1-6/+6
modernize-use-auto modernize-use-nullptr modernize-use-override modernize-use-using
2013-05-02Fixed network layer doing delayed actor deletionThorbjørn Lindeijer1-1/+1
The delayed actor deletion was meant to be used during the logic calls, to avoid modifying the container while it is being iterated. The deletions happening from the network layer are not done while iterating the set of actors, so it can delete immediately. This fixes an issue where an NPC would disappear when changing appearance on tmwAthena, because this was implemented as a remove + add, which broke due to the delayed deletion. Mantis-issue: 507 Reviewed-by: Jared Adams
2012-10-11Client side patch for change of sending order of genderErik Schilling1-4/+9
Reviewed-by: Stefan Beller.
2012-05-05Removed the shared base classes of MessageIn and MessageOutThorbjørn Lindeijer1-11/+11
There wasn't a whole lot gained by sharing a common base class, and it makes extending the manaserv Message{In,Out} classes with a debugging mode unnecessarily complicated. Reviewed-by: Yohann Ferreira
2012-02-05Revert "Checking being positions send by the server"Thorbjørn Lindeijer1-26/+0
This reverts commit 92fd074aa85e2357bfe1ab642209dd5a0d87e4d5. Reverting because these checks should be done server-side and because having them in the client would currently require wrapping them up in checks if there is even a current map due to the reliance on tile size (we need to handle the case where the current map didn't load properly without crashing). Conflicts: src/map.cpp src/net/manaserv/beinghandler.cpp Reviewed-by: Erik Schilling
2012-02-02Fix to the hair colors and styles handling.Yohann Ferreira1-2/+4
- 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-01-26Updated copyrights to 2012Thorbjørn Lindeijer1-1/+1
2012-01-18ColorDB -> HairDB.Yohann Ferreira1-3/+3
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-5/+5
Reviewed-by: Ablu
2012-01-02Made the client capable of displaying gender of monsters and npcsErik Schilling1-0/+2
Reviewed-by: o11c, bjorn, Bertram.
2011-09-28Officially added the gender in the manaserv protocol - client part.Yohann Ferreira1-2/+2
2011-08-19Fixed visible equipment updates, and made it based on equip.xml.Yohann Ferreira1-22/+12
2011-06-17Made the client officially handle attack ids.Yohann Ferreira1-2/+2
It already was, but now the the api is clear about it. Client part of the mana issue: #363. Reviewed-by: Bjorn.
2011-05-01Fixing checking of being positions send by the serverStefan Dombrowski1-6/+6
Reviewed-by: thorbjorn
2011-05-01Checking being positions send by the serverStefan Dombrowski1-0/+26
Reviewed-by: Bertram
2011-04-27Avoiding compiler warnings about possible uninitialized variablesStefan Dombrowski1-1/+1
Reviewed-by: Bertram
2011-04-26Made the client use a unique kind of movement code.Yohann Ferreira1-35/+3
This is fixng many issues and (hopefully) will make the movement rendering much smoother. Merge branch 'master' of gitorious.org:~bertram/mana/mana-movement-code-merge Conflicts: src/being.cpp src/net/manaserv/beinghandler.cpp Resolves: TMW-Mantis #946. Reviewed-by: Thorbjorn.
2011-04-18Added a client-side position tolerance check.Yohann Ferreira1-9/+25
This is based on the information given by the server which now permit resyncs when necessary. Reviewed-by: Thorbjorn.
2011-03-15Basically merged the two movement algorithms into one.Yohann Ferreira1-36/+3
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!
2011-01-09Fix other direction discrepancies on the client.Yohann Ferreira1-18/+5
This fix the change dir (with alt key), attacks directions, and the direction of a being standing when you come in its range. Reviewed-by: Jaxad. Resolves: Mana-mantis #257
2010-12-30Renamed protocol.h to manaserv_protocol.h to follow server's changes.Yohann Ferreira1-1/+1
I'll sync the two files as for the new enums in a separate commit. Trivial fix. Resolves: Mana-mantis #278.
2010-07-30Fixed weapon animations for manaserv.Yohann Ferreira1-1/+1
The beinghandler didn't tell to the being::setSprite() function if the equipment was a weapon or not. Resolves: Manasource-Mantis #157. Reviewed-by: Jaxad0127.
2010-07-19Merge branch '1.0'Yohann Ferreira1-1/+1
Conflicts: src/gui/itempopup.cpp src/item.cpp src/monster.cpp src/net/manaserv/playerhandler.cpp src/net/tmwa/partyhandler.cpp src/npc.cpp src/player.cpp src/resources/itemdb.cpp src/resources/monsterdb.cpp src/resources/monsterinfo.cpp src/resources/npcdb.cpp src/resources/spritedef.cpp
2010-07-11Made the different hard-coded paths and files be now taken from theYohann Ferreira1-1/+1
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-10Merge BeingManager and FloorItemManager as ActorSpriteManagerJared Adams1-12/+13
No need for two different classes to manage ActorSprites. Reviewed-by: Chuck Miller
2010-05-21Merge branch '1.0'Thorbjørn Lindeijer1-1/+1
Conflicts: src/beingmanager.cpp src/beingmanager.h src/client.cpp src/localplayer.cpp
2010-05-21Merge protocol from manaserv about thing types.Yohann Ferreira1-1/+1
Reviewed-by: Jaxad0127 (A few days ago...)
2010-05-17Remove Monster, Player, and NPC classesJared Adams1-13/+10
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-02-21Made tick counter and framerate limiter work during login sequenceThorbjørn Lindeijer1-4/+3
Much code was moved from main() to the new Client::exec(). This new event loop now integrates with the Game class, so that the tick counter and framerate limiter apply universally. The Client class is also responsible for some things that used to be global variables. Mantis-issue: ...
2010-02-22Modify copyright headersFreeyorp1-1/+2
2010-02-20License header update for The Mana ClientThorbjørn Lindeijer1-4/+3
2010-02-19Fixed a crash when trying to switch serversThorbjørn Lindeijer1-1/+1
Ownership of the charInfo global variable wasn't well defined. It was being locked, unlocked and generally modified from a lot of places, and somewhere in this mess it ended up crashing when switching servers. Now the CharHandler instances, for eAthena and manaserv respectively, own this list of characters. A new class, Net::Character wraps up the slot index in combination with the player dummy. The list is passed on to the CharSelectDialog each time it changes. Both related and unrelated cleanups were made as well. Reviewed-by: Jared Adams
2010-02-13Allow player to talk after deathAndrei Karas1-1/+1
Mantis-issue: 938 (TMW Mantis)
2010-02-09Got successfully rid of tile width/height fallback values as asked by Jaxad.Bertram1-6/+3
But I added some logs when speed and other actions where refused due to game/map uninitialized. This could help.
2010-02-09Separated fallback defaults for tile width and height.Bertram1-7/+10
2010-02-09Made the Beings' logic be able to handle any tile height/width.Bertram1-3/+28
This is the First step to get rid of most hardcoded 32 values.
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-02-03Factorized speed translation from tile per seconds to pixels per ticks.Bertram1-5/+9
2010-02-01Reduced CPU consumption by setting speed per ticks value only once.Bertram1-4/+12
2010-01-24Remove some more _SUPPORT ifdefsJared Adams1-4/+4
2010-01-12Standardize header orderJared Adams1-5/+5
Also remove some extra new lines and fix eAthena's PartyTab define guards.
2009-11-03Simplify ManaServ netcode some moreJared Adams1-3/+2
2009-11-03Remove more _SUPPORT ifdefs and do some cleanupJared Adams1-11/+11
2009-10-29Second round of fine tuning for keyboard movement.Bertram1-5/+11
I just discovered that the X,Y offsets aren't handled the same way between eAthena and Manaserv to draw the player's character. So, this patch hopefully fix the walk on water bug. There are some glitches left: - Like walking diagonally to a blocked corner. - Or Some times the character miss a blocked tile and correct its route. - The character's name is drawn in the wrong place for Manaserv client. - The playerBox draws the player at the wrong location; He's not centered at login and isn't diplayed at all in equipment window... But anyway, it's better than before. I'll go on for some polishing before continuing. Some cleanups are becoming vital for code's understanding.
2009-10-24REplace instances of TMW with ManaJared Adams1-0/+325