summaryrefslogtreecommitdiff
path: root/src/net
AgeCommit message (Collapse)AuthorFilesLines
2011-04-16Post-review fixes.Yohann Ferreira1-3/+0
- Removed unnecessary comments - Removed a useless contains() check in getTileCenter() - Fix the above function documentation - Don't permit FloorItem to be created without a map object. Reviewed-by: Thorbjorn Lindeijer.
2011-04-14Add missing auth failure reasonsBen Longbons1-0/+9
2011-04-12Limit the number of pick-up packets to avoid kick from the serverStefan Dombrowski1-0/+5
Reviewd-by: Thorbjorn
2011-04-11Removing annoying NPC trade messages from chatStefan Dombrowski2-15/+15
The thanks messages got removed, because they are useless and when selling many items they completely trashed the chat. The pick-up information for money now respects the configuration. Reviewed-by: thorbjorn
2011-04-09Removed a lot of useless "documentation"Thorbjørn Lindeijer8-26/+3
I have to admit I contributed a large part of these. Sorry for that. Less empty space, more attention to the code. Acked-by: Jared Adams
2011-04-09Renamed Listener to EventListenerThorbjørn Lindeijer7-12/+12
Makes it clear what kind of listener it is, since there are other listener classes as well. Acked-by: Jared Adams
2011-04-09Removed the Mana namespaceThorbjørn Lindeijer17-129/+129
It's just an annoyance when it's only applied to a few classes. Either we place everything in this namespace or nothing, and at the moment I don't see any rationale for placing everything in a Mana namespace. Acked-by: Jared Adams
2011-04-09Moved Channels to Mana::Event::ChannelThorbjørn Lindeijer16-60/+60
Acked-by: Jared Adams
2011-04-09Moved Events to Mana::Event::TypeThorbjørn Lindeijer12-58/+59
Acked-by: Jared Adams
2011-03-30Fixing zombies in char select dialogStefan Dombrowski1-2/+21
How to reproduce the bug: * Delete a character. * Create a new character in another slot. * Now the deleted character reappears. Also fixing handling of error messages from character select response. This resolves http://bugs.manasource.org/view.php?id=322 Reviewed-by: Jaxad0127, VUT
2011-03-29Made the flooritems position set back in pixels.Yohann Ferreira2-20/+12
The position is centered to the nearest tile center in tA.
2011-03-29Added the Map::getTileCenter() convenience function.Yohann Ferreira2-31/+19
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-28Random code cleanups requested righteously by Thorbjorn - part 1.Yohann Ferreira6-32/+24
- Fixed bogus documentation. - Fixed Vector parameters to const Vector& where releavant. - Removed a false comment. - Removed superfluous headers in src/net/tmwa/beinghandler.h. - Optimize a bit the tmwa::beingHandler::getPixelsPerTickMoveSpeed() function.
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-17Simplified the get/setAttackRange() functions as requested.Yohann Ferreira2-3/+4
The attack range is still hardcoded for Manaserv as long as generic equipment handling hasn't been implemented.
2011-03-17Handle ta move and position message in a more generic way.Yohann Ferreira1-86/+47
This avoids code duplication.
2011-03-17Now the client centers the pixel positions when using tA.Yohann Ferreira3-0/+12
I made it so that the behaviour can be changed with only a boolean setting in the playerhandler.
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-16Fixed the attack range handling for both servers.Yohann Ferreira1-1/+22
The attack range is always the default for manaserv, as proper equipment handling is to be added. Anyway, now the proper attack range is handled in tmwAthena and is always set a proper minimum for both protocols.
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-15Implemented a screen shake effect system in the viewport class.Philipp Sehmisch4-0/+41
The screen can either be "nudged" in a random direction with a specific intensity or you can define an exact x and y intensity, decay factor and duration. On a tmwAthena server an effect is triggered when the player character dies. A method for stopping all shake effects is also implemented, but not used yet. I added a netcode message for Manaserv to trigger an effect server-sided. Because our protocol has currently no way to transport floating point values, the decay is transported as a fixed point value with 4 decimals which is entirely sufficient for this purpose.
2011-03-15Reset destination to position at warp time for TmwAthena.Yohann Ferreira1-2/+5
This fix the following bug: When changing map, the local player sometimes walks randomly until the player reacts.
2011-03-15Simplify the tmwAthena calculation of the pixel/tick speed.Yohann Ferreira1-11/+3
2011-03-15Basically merged the two movement algorithms into one.Yohann Ferreira12-84/+180
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-02-21Merge branch '0.5'Thorbjørn Lindeijer1-3/+4
Translation file updates ignored. Conflicts: src/client.cpp src/commandhandler.cpp src/gui/popupmenu.cpp src/localplayer.cpp
2011-02-21Fixing segmentation fault in chathandlerStefan Dombrowski1-5/+7
Reviewed-by: Jaxad0127, Thorbjorn
2011-02-17Specific messages for each pickup failure reason.Ben Longbons1-3/+4
Reviewed-by: Jaxad0127
2011-02-07Removed remaining reference to MANASERV_SUPPORT define switchPhilipp Sehmisch1-4/+1
Also added an error message should a server ever need another protocol.
2011-02-01Merge branch '0.5'Thorbjørn Lindeijer1-1/+2
Conflicts: po/de.po src/game.cpp src/resources/wallpaper.cpp
2011-01-27Send the correct protocol version when registering on Manaserv.Yohann Ferreira1-1/+1
2011-01-26Prune the enet and manaserv files dependency of the 0.5 binary.Yohann Ferreira1-1/+2
Only using cmake conditions and an ifdef. This will greatly help packaging the mana 0.5 version on other distros.
2011-01-25Upgraded the manaserv protocol version to 1.Yohann Ferreira1-1/+1
Yeah, I know Jaxad, we're not releasing but as agreed with Thorbjorn, the protocol is incompatible even when moving, so better get rid of old clients early.
2011-01-24Refactored the item loading in a more extensible and per protocol way.Yohann Ferreira3-28/+28
This will greatly help into upgrading the need of each protocol separately. This is the first step to a new item and equipment system for manaserv. A subclassing of the EquipmentWindow will be done in the next commit, as requested by Thorbjorn. Reviewed-by: Thorbjorn.
2011-01-11Remove the protocol version magic number.Yohann Ferreira2-1/+3
This follows the changes made on the server. Reviewed-by: Jaxad.
2011-01-09Fix other direction discrepancies on the client.Yohann Ferreira2-23/+10
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
2011-01-03Merge branch '0.5'Thorbjørn Lindeijer1-3/+5
Conflicts: po/es.po po/fr.po src/net/tmwa/adminhandler.cpp update-creator.sh
2011-01-03Sync the manaserv_protocol.h file witht the one of the server.Yohann Ferreira1-4/+55
Trivial.
2011-01-02Fixed possible crash when receiving player IPThorbjørn Lindeijer1-3/+6
Could happen sometimes for GMs when the message is received either before the player instance is created or after it was destroyed. Also changed to a dynamic_cast, putting a little less trust in the server. Reviewed-by: Freeyorp
2010-12-30Renamed protocol.h to manaserv_protocol.h to follow server's changes.Yohann Ferreira17-16/+16
I'll sync the two files as for the new enums in a separate commit. Trivial fix. Resolves: Mana-mantis #278.
2010-12-29Made the client handle the characters slots properly for Manaserv.Yohann Ferreira2-6/+11
Reviewed-by: Crush.
2010-12-29Fixed potential flaw for the number of characters slots on tAthena.Yohann Ferreira2-6/+19
Was happening when logging to the dev manaserv server and then to TMW-eA. The client is still crashing after selecting the characters after relogging but that's not introduced with this patch anyway. Reviewed-by: Crush.
2010-12-17Update the net/manaserv/protocol.h file with latest description.Yohann Ferreira1-2/+2
Trivial fix.
2010-12-16Made the client handle the number of slots given by the server.Yohann Ferreira3-4/+23
I turned the CharacterEntries into a vector. As for now, it's basically working but I discovered bugs about slots handling mainly for Manaserv that were already present before that patch. Hence, there are three remaining issues: - Under ManaServ, the character's slots numbers aren't handled when loading the characters but used when sending selection or deletion attempts. For instance, if you delete the character at slot 1, you won't be able to select or delete characters at slots 2 and 3, since the server believes that the characters are now in slots 1 and 2, even thought the client still displays them at the former slots. - Also under manaserv, you won't be able to create a character at slot 1 and 3, the server will automatically add the new one to the next slot, which is not corresponding to where you clicked to the 'Create' button. I propose to make Manaserv send again the character slots numbers and store them in database since we used them in creation, selection, and deletion attempts. It would make more sense IMHO. - The last remaining issue found is that when switching between different servers, the loginData don't get cleaned up, make the characterSelect dialog look crazy when the number of slots is different between two servers. If this one is accepted, my next patch will make the logindata be cleaned up between each login attempts (as for the slot number, and maybe other sensible data) and the next ones will readd character slot handling server and client side. Reviewed-by: Jaxad0127.
2010-12-15Unlock the char select dialog even if we've got an error.Yohann Ferreira1-1/+1
This permit not to be stuck at character deletion when something goes wrong. Trivial fix.
2010-12-06Removed superfluous #includes taken from checkheaders list.Yohann Ferreira5-9/+0
Resolves: Mana-Mantis #265. Trivial fix.
2010-11-12Change NPC handling in the net codeChuck Miller5-104/+212
Instead of using events to invoke netcode, invoke netcode directly and have it send events Reviewed-by: Freeyorp
2010-11-11Replace Event names with enums instead of stringsChuck Miller12-57/+58
2010-11-11Have the event system channels use enums instead of stringsChuck Miller18-55/+55
Reviewed-by: Freeyorp