summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2010-02-21Restore packet 0x0195 to the correct sizeChuck Miller2-1/+2
2010-02-21Handle packet 0x0195, and shows player's party name in a popupChuck Miller11-5/+230
2010-02-21Made tick counter and framerate limiter work during login sequenceThorbjørn Lindeijer47-1452/+1551
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-21Do some more copyright header cleanupsJared Adams67-67/+55
Fix "(C) 2009-2009" to just "(C) 2009" Fix "(C) 2010 TMW" to "(C) 2010 Mana" Remove TMW compyright on (hopefully all) files added after 0.0.29.1
2010-02-22Modify copyright headersFreeyorp437-437/+874
2010-02-20Just use Mana as the window title by defaultThorbjørn Lindeijer1-2/+1
The fact that it's the client is not interesting to most people.
2010-02-20License header update for The Mana ClientThorbjørn Lindeijer472-1853/+1381
2010-02-20Don't check a pointer for 0 before deleting itThorbjørn Lindeijer2-6/+3
This check is built in already.
2010-02-19Prevent issues when channels are cleared after the ChatWindowJared Adams2-1/+7
2010-02-19Fixed a crash when trying to switch serversThorbjørn Lindeijer31-670/+591
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-15Revert "Attempt to fix Minimap caption again..."Chuck Miller1-1/+4
This reverts commit 20d2a17c8c0fa9220c257d61641a6459e154de26. Going to try to remove this fix, people have still been reporting crashes with minimap caption. Maybe if more people report it, we can get more information.
2010-02-14Have -v print 'Mana client' instead of 'The Mana World'Thorbjørn Lindeijer1-1/+1
Mantis-issue: 1
2010-02-14Fixed browser links not properly resizing once the font size is changed.Tametomo1-1/+1
They'd be in the correct position, just that the link length would always stay at the length of the original font. Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Use setTarget a bit earlierThorbjørn Lindeijer1-3/+1
2010-02-14Removed a redundant SDL_Surface pointerTametomo3-24/+22
Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Don't quit the client on invalid decRefThorbjørn Lindeijer1-3/+5
It's not a fatal error.
2010-02-14Give more meaningful error messages when decRef() fails.Tametomo1-2/+5
Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Fixed windows appearing below the viewport when opened before getting inTametomo1-0/+1
game. Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Remove focus from a window's internal widgets on hiding.Tametomo2-1/+10
Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Don't allow tabs to be focusable. Our tab implementations are heavilyTametomo1-0/+1
dependent on a tabbed area, and because of that, shouldn't get double focus. Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Added some missing class stubs to guichanfwdTametomo1-0/+26
Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Fixed DropDowns not collapsing when an item was clicked on, or enter orTametomo2-21/+28
space was pressed. Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Release modal mouse focus in DropDowns when focus is lost. If notTametomo2-0/+10
released, this can cause the user to think that the client has frozen up when dialogs such as the quit dialog take modal focus. Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Fixed Viewport from acknowledging clicks from widgets on top of it whenTametomo1-0/+3
they happened within a contained widget. Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Initialize dialog variable to avoid compiler warningThorbjørn Lindeijer1-4/+2
Compiler warning seems unjustified, but the code could make this more clear.
2010-02-14Force client to exit on detecting a zero length packet. The currentTametomo1-0/+3
networking code will get stuck in an infinite loop currently if it tries to handle these, and the packet id isn't helpful in identifying what packet it is. Since this specific case creates a rabbit, and will flood logger with unhandled messages until the hard drive is completely filled, it's a lot more friendly to force a client exit on detection than to continue. Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Overloaded the tabNext() and tabPrevious() functions in the FocusHandlerTametomo2-0/+50
to move a window to the top when one of its contained widgets is focused. Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Make sure the tabbed area gets focus set on it when one of its tabs isTametomo1-0/+6
pressed by the mouse. Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Made the ScrollArea scrolling with buttons smootherThorbjørn Lindeijer2-33/+23
Update more frequently (every tick) and by a smaller amount.
2010-02-14Fixed ScrollAreas to allow for continual scrolling, as long as the mouseTametomo2-2/+38
button is pressed, instead of just moving one tick for each press. Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Fixed color tab alignment from coming up slightly short.Tametomo1-6/+6
Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Corrected a string in KeyboardConfig to be more accurate.Tametomo1-1/+1
Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Fixed TabbedAreas stealing click focus from their children widgets.Tametomo2-0/+16
Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Match alignment better in the colors tab. Now the textfields terminateTametomo1-16/+16
at the same spot the scroll area does. Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Allow handling drag events in tables as well.Tametomo1-0/+9
Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Fixed duplicating of up and down actions with the dropdown widget. (itTametomo1-2/+4
used to get one event from the dropdown, then another from the listbox if dropped down. Otherwise, it only got one from the dropdown) Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Reduce the number of necessary logic checks, in order to improveTametomo1-2/+2
performance in ProgressBar logic loops. Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Avoid some unnecessary pointer referencing in the Palette classThorbjørn Lindeijer1-22/+21
2010-02-14Ensure that gradients update when the framerate is 200 or more.Tametomo1-1/+2
Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Some slight logic cleanups in the shortcut classes, as well as someTametomo2-14/+3
style cleanups. TODO: Either abstract out all of the shared information between these two classes to a parent class, or combine the two if it can be done without doing it clumsily. Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-14Don't create the viewport until it's really needed.Tametomo3-9/+10
Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-13Make NPC dialogs instance instead of globalJared Adams25-302/+436
This change allows players to talk to multiple NPCs at a time (if the server agrees). Manaserv's netcode allows multiple commerce instances too. eAthena's is limited to one commerce instance, due to protocol limitations.
2010-02-13Changed FPS display from a text field to a labelThorbjørn Lindeijer2-60/+26
Not really useful to be able to edit it by hand.
2010-02-13Fixed the FPS checkbox, field, and slider not updating properly onTametomo1-13/+19
cancel events. Signed-off-by: Tametomo <irarice@gmail.com>
2010-02-13Moved keyboard input polling outside of the clock time loop. This isn'tTametomo1-1/+2
necessary so long as you're at least getting 1-2 fps (which would result in a typing speed between 60-120 wpm). Even then, you've got more serious things to be thinking about at that point than if all of your input is being tracked, and having it inside the clock time loop just cuts performance for everyone else. This loop should get removed altogether, but there are a few items left in it at the moment which would need to get reworked first before it can be eliminated. In cases where you can't accurately know where something would be because it's random, we should just scale the random formulas to take a more drastic adjustment to compensate for that lag. Signed-off-by: Tametomo <irarice@gmail.com> Manual-merge-by: Thorbjørn Lindeijer <thorbjorn@lindeijer.nl>
2010-02-13Remove imprecise operator== and just compare the textThorbjørn Lindeijer1-6/+1
2010-02-13Optimise TrueTypeFont::getWidthSteve Cotton2-1/+19
Use the cache created by TTF::drawString, drops the cost of TTF::getWidth from 5% of runtime to 0.5%. It increases the cost of calculating line-wrapping in the BrowserBox, but overall it's a saving, even with the BrowserBox recalculating on every redraw.
2010-02-13Allow player to talk after deathAndrei Karas5-6/+7
Mantis-issue: 938 (TMW Mantis)
2010-02-12Add outfits wear and copy keys in settingsAndrei Karas3-65/+56
2010-02-11Allow redirects when downloading updatesBen Longbons1-0/+1
Reviewed-by: Thorbjørn Lindeijer <thorbjorn@lindeijer.nl>