summaryrefslogtreecommitdiff
path: root/src/localplayer.cpp
AgeCommit message (Collapse)AuthorFilesLines
2010-03-12Fix some issues with Being deletionJared Adams1-4/+5
Clear the Viewport's hover being when it gets removed and make sure LocalPlayer's target pointer get's cleared. Reviewed-by: Freeyorp
2010-03-12Split Palette into Theme and UserPaletteJared Adams1-7/+6
Themes can now control the colors they use. Colors in the Viewport (being names, particles, etc) can still be changed by the user. Also make ProgressBars more easily colored. DyePalette was made more flexible in the process. Also fixes comparing strings of different lengths insensitively. Reviewed-by: Thorbjørn Lindeijer
2010-03-05Rename SkinLoader to ThemeJared Adams1-3/+3
Also merge the guialpha ConfigListener into Theme. Reviewed-by: Thorbjørn Lindeijer
2010-03-02Remove some unused membersJared Adams1-5/+0
Reviewed-by: Chuck Miller
2010-03-02Revert "Merge WindowContainer into Viewport and remove extra members"Jared Adams1-0/+5
This reverts commit 67e678094b9fddd21fb3c690130e772937ab2746. Conflicts: src/gui/gui.cpp src/gui/viewport.cpp
2010-03-01Merge WindowContainer into Viewport and remove extra membersJared Adams1-5/+0
Reviewed-by: Chuck Miller
2010-02-28Make the gui more themeable and distribute two themesJared Adams1-15/+9
The older gray theme and the new wood theme are available as themes. The gray theme needs some new graphics for hilights. Add a theme option for branding and add path/to/branding/data to the PhysFS search path. Reviewed-by: Thorbjørn Lindeijer Reviewed-by: Chuck Miller
2010-02-24Move StorageWindow to instancing intead of globalJared Adams1-11/+0
Also make storage under eAthena more flexible. Reviewed-by: Dennis Friis
2010-02-23Sanitized ManaServ movement protocol, by mainly moving code from LocalPlayer ↵Bertram1-53/+7
to Being. This fixes some movement glitches under ManaServ and make the code much cleaner even if it's not perfect enough yet. First of all, many checks have been gathered in the Being::setDestination() calls. Also, now all path nodes including destination are checked against surrounding tiles to correct the path when necessary. The LocalPlayer::nextTile() still needs to be reviewed and some checks are missing but it's almost done :)
2010-02-23Got rid of superfluous Destination coordinates in LocalPlayer.Bertram1-5/+1
This will help simplifying setDestination() calls. No regression seen in both client.
2010-02-21Made tick counter and framerate limiter work during login sequenceThorbjørn Lindeijer1-1/+1
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-4/+4
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-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-01Small cleanups.Bertram1-4/+4
2010-01-31Unify eAthena and manaserv support in to one build.Daniel Bradshaw1-254/+266
Finish support for server types in the server dialog. Using the new server type function, strip out ifdefs, replacing them with if blocks for later merging in smaller atomic commits. Remove any remaining references to the support defs, including in build system.
2010-01-28Added virtual destructors, some implicit casts, and a couple of type changes.Daniel Bradshaw1-3/+3
Many warnings removed. Reviewed-by: Thorbjørn Lindeijer <thorbjorn@lindeijer.nl>
2010-01-27Added mutators/accessors to being.h and smal cleanups.Bertram1-1/+1
2010-01-26Fix a few more _SUPPORT ifdefs and namespace PartyTabJared Adams1-4/+1
2010-01-21No point in differentiating between int and Uint16Thorbjørn Lindeijer1-5/+1
2010-01-13Supress level up notifications when startingJared Adams1-4/+6
2010-01-13Fix initialization order in the new follor managerJared Adams1-3/+4
2010-01-13Adds a follow manager for usersBlueSansDouze1-2/+3
Right click contextual menu on player "follow" entry Cancel the following by moving with mouse or keys Adds a special behavior for map changes
2010-01-12Standardize header orderJared Adams1-3/+2
Also remove some extra new lines and fix eAthena's PartyTab define guards.
2010-01-10Remove some support ifdefsJared Adams1-22/+17
2010-01-10Change code styleAndrei Karas1-7/+16
2010-01-06Removed the nonsensical particle popups with the percent of exp to next ↵Philipp Sehmisch1-1/+3
level on Manaserv
2009-12-16Stored the cached config value which says if non-crucial particle effects ↵Philipp Sehmisch1-0/+3
are enabled or not in a static member of class Particle instead of an instanced member of Being.
2009-11-07More eAthena guild stuffJared Adams1-5/+5
Also some related chenges elsewhere
2009-11-03Move ManaServ guild code into GuildHandlerJared Adams1-5/+6
Ad start eAthena's GuildHandler
2009-11-03Remove more _SUPPORT ifdefs and do some cleanupJared Adams1-76/+14
2009-11-02Fix an uninitialized value error in LocalPlayerJared Adams1-0/+1
2009-10-29Second round of fine tuning for keyboard movement.Bertram1-4/+2
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-29Mostly fixed the walk on water bug... But...Bertram1-18/+29
The current code tells that the character must stop in the middle of a tile when the tile to the north is blocking. But even now with respecting this, the player is still on water. So, what to do? Correct the water tile?
2009-10-24REplace instances of TMW with ManaJared Adams1-26/+26
2009-10-22Fix flipping player's direction when using keyboard to walk diagonally.Bertram1-2/+2
2009-10-16Made the keyboard walking pixel exact again.Bertram1-3/+9
What's left is working on player corner handling and directions while walking.
2009-10-09Mostly fixed keyboard movement on TMWserv.Bertram1-46/+79
- Making sure that keyboard and mouse are fully working on eAthena. - Making sure the mouse code isn't broken again. There are some glitches left but it's coming! What's left to be fixed: - Come a little closer to walls (localPlyer::nextStep() improvement to be done). - Adapt the next Step range according to the being speed. (again in nextStep()). - Handle more nicely player's direction when walking diagonally. - Get player's speed from server. Enjoy :)
2009-10-09While seeing it, made obvious that LocalPlayer::nextStep() isn't used by ↵Bertram1-2/+3
TMWserv client.
2009-10-09Fixed (again) mouse movement for TMWserv client.Bertram1-2/+3
By removing a stopWalking() call on each being->logic() because of setWalkingdir() when the current path wasn't empty.
2009-10-06Fixes equipment for playersChuck Miller1-1/+6
2009-10-06As little first step, move some specific out from game.cppBertram1-94/+118
I'll go step by step, in order no to screww everything... I also removed hard coded ticks reference in game.cpp
2009-10-02Removed non hurting eAthena ifdefs.Bertram1-6/+0
2009-09-22Added support for the go-through-walls case with mouse movement on TMWserv.Bertram1-0/+15
Also removed an (now) unuseful debug piece of information. Thanks Kage for reporting this case.
2009-09-22An attempt to fix the mouse ignoring collisions in TMWserv.Bertram1-0/+5
2009-09-22Mostly fixed the mouse movement in TMWserv client.Bertram1-2/+2
The only case left in mouse movement is that the client doesn't check for walkability of the destination point when you click on a unwalkable point. Let me explain this NASTY bug: The bug remained in the Being::SetDestination() function, when recalculating the path from tiles to pixels. The changeX and changeY variables went crazy when (endX - startX) gave a negative value. That why the given path became random, and the player went anywhere. This didn't happened to monsters, NPCs, and when walking using the keyboard because the patnodes system isn't used for movement up to 1 tile at a time. I removed some dead code (in viewpoint.cpp), made the keyboard navigation a little bit more bearable, and fixed this client bug. Now, I'll be up to finish fixing the movement system using mouse (What's remaining is a joke next to what I had to do to discover this...), and I'll look at a third time to the keyboard system which is a bit raw, just for now... Regards, P.S.: Kage, I'd like to get a three-cheese pizza!
2009-09-06Resolved Mantis #857: Make Show Own Name consistent.Bertram1-0/+1
2009-08-16More merges and conflict resolvesPhilipp Sehmisch1-14/+15
2009-08-16Merged changes from last month with a commit I forgot to commit before I ↵Philipp Sehmisch1-146/+210
went on vacation.