Commit Graph

64 Commits

Author SHA1 Message Date
Eduardo Bart 98a1b611bf Refactor for documentation 2012-06-25 19:19:17 -03:00
Eduardo Bart 8761220deb Refactoring and flexibility changes
* Split game module into game and game_interface
* Move core_lib to corelib
* Move miniwindow to corelib
* Introduce init.lua script for initializing the client, giving much more flexibility
* OTClient is no longer Application derived and is much simpler
2012-06-19 21:16:52 -03:00
Eduardo Bart cb58d2dcfa Compile fixes for mingw32 2012-06-18 13:05:16 -03:00
Eduardo Bart 1c7bbaea89 Fix memory leaks
* Fix recursive reference memory leak in UIWidget
* Make Event/ScheduledEvent memory-leak safe
* Fix exit crashs by freeing graphics resources before destroying GL context
* Add many asserts to avoid any leak regression
2012-06-18 05:13:52 -03:00
Eduardo Bart 10b33c6124 Compile with clang and add cotire
* Add cotire cmake module to speedup compilation https://github.com/sakra/cotire
* Fix clang error and warnings
* Rename Font to BitmapFont to fix conflict with Xlib.g Font typedef
* Remove legacy PCH support
* Improve Position hash
2012-06-16 20:20:22 -03:00
Eduardo Bart cae4d46a7d implement style priority with # syntax 2012-06-14 21:30:46 -03:00
Eduardo Bart 1a7f2a44fc graphics fixes and improvements 2012-06-08 21:40:41 -03:00
Eduardo Bart 14db1066fc change logger 2012-06-01 17:39:23 -03:00
Eduardo Bart bd2faabe99 graphics optimization feature inspirated by diablo3 engine
* the rendering now consits of two panes
- the background pane (for animated stuff like the map)
- the foreground pane (for steady stuff, like UI)
each pane has it own max FPS and works idependently
this may increase graphics performance on many platforms
2012-06-01 16:39:09 -03:00
Eduardo Bart c01b32b032 rework log function and protocol
* remove some protocol ifdefs, replace with game features system
2012-05-28 19:04:44 -03:00
Eduardo Bart 4c80d783d6 rewrite and reoganize tools functions
* create stdext namespace which contains additional C++ algorithms
* organize stdext in string, math, cast and exception utilities
2012-05-28 10:06:26 -03:00
Eduardo Bart 2478809945 add lua flexibility for protocol
* use shared_ptr for InputMessage and OutputMessage and bind them
* allow sending network messages from lua
* implement extended opcode
* use own OS type  for otclient to allow server side detection
* fixes in input event bot protection
* move RSA to input/output network messages
* allow to capture opcodes before GameProtocol parsing with the event GameProtocol.onOpcode
* fixes in lua std::string pop/push to allow byte buffering
2012-05-14 18:39:31 -03:00
Eduardo Bart d0b839a4eb fix warnings and some reloading issues 2012-04-27 01:54:14 -03:00
Eduardo Bart 959d9a87b0 fix focus bug, change battle events 2012-03-29 19:47:12 -03:00
Eduardo Bart 6ace984440 fix combobox 2012-03-29 17:21:59 -03:00
Eduardo Bart 8d14d9bc99 restore old modules
* partially restore vip, battle, healthbar, skills and inventory modules
* more fixes on UIWidgets
* implement UIMiniWindow close/minimize functionality
* allow drag and drop miniwindows beteween game panels
2012-03-28 11:10:21 -03:00
Eduardo Bart e2ea267703 rework mouse events propagation 2012-03-28 08:46:15 -03:00
Eduardo Bart ee869bb279 side panel splitter 2012-03-26 15:33:00 -03:00
Eduardo Bart 9309d6e7f3 some rework in UIWidget input 2012-03-26 10:34:43 -03:00
Eduardo Bart ccf55132a1 OMG the chat is finally scrolling!
* implement UIScrollArea
* rework console to allow scrolling
* many core ui changes in the way.. so maybe we will have new bugs
* fix in UIScrollBar
2012-03-25 14:10:19 -03:00
Eduardo Bart de0008caf1 ui and graphics changes
* implement draw clipping using opengl stencil buffers
* allow to create Widgets by style name with g_ui.createWidgetByStyle
* styles can now have children widgets
* make proper use of the isNotPathable in pathfinding
* add scrollbar skin
2012-03-24 12:22:40 -03:00
Eduardo Bart efa9811342 dragging fixes 2012-03-23 19:48:18 -03:00
Eduardo Bart 33458a3e39 modules changes
* speedup widget destruction checks
* rework outfit module using grid layout and the new design
* fixes in console, terminal, textmessage modules
2012-03-22 18:47:52 -03:00
Eduardo Bart c0611bfe2a restore some game functionallity
* i'm gradually restoring game functionality with the new modules design, though still a lot to do
* you can reload all scripts and modules using Ctrl+R shortcut while playing (finally! this is the reason of all this rework)
* a bunch of fixes, but new regression too :P
* fix performance issue that could lead freezes in the client in older machines
* completely new game module with new design
* fix crashs in map render
* remove uigame.cpp (now every game input is via lua)
* enable DEBUG macro by default, with it you are able to view any possible lua leak while running
2012-03-18 10:35:45 -03:00
Eduardo Bart b46d4c4d5f non relevant changes 2012-03-16 10:31:21 -03:00
Eduardo Bart e03bf33f58 BEAWARE all game functionality is disabled with this commit for a while
* rework client modules
* hide main window when loading
* remake top menu functions
* rework modules autoload
* improve path resolving for otml and lua
* move core_widgets to core_lib
* fix tooltip issues
* split some styles
* add bit32 lua library
* fix assert issues
* fix compilation on linux 32 systems
* rework gcc compile options
* renable and fix some warnings
* remove unused constants
* speedup sprite cache
* move UIGame to lua (not funcional yet)
* fix a lot of issues in x11 window
* fix crash handler
* add some warnings do uiwidget
and much more...
2012-02-20 00:28:13 -02:00
Eduardo Bart 96358b317d drag fixes 2012-02-09 16:38:50 -02:00
Eduardo Bart c707f990bf fix popupmenu, fix mouserelease events, fix connect 2012-02-09 04:42:07 -02:00
Eduardo Bart e51789378a make hover, dragging, press and mouse release work in a proper way 2012-02-07 17:21:53 -02:00
Eduardo Bart 71c706157a drag fixes 2012-02-07 00:06:48 -02:00
Eduardo Bart 46df3c7dbe some window moving 2012-02-06 22:41:53 -02:00
Eduardo Bart add8505a5b implement auto repeat configuration for key press events, to give more flexibility 2012-02-06 10:53:28 -02:00
Eduardo Bart a55e138002 some cleanup in modules, fixes in tooltip, uiwidget warnings, disable map saving for a while 2012-02-05 20:42:35 -02:00
Eduardo Bart 24aab00431 fix use with, improve move, change icons, improve topbar 2012-01-24 16:39:16 -02:00
Eduardo Bart 452d1a76b0 fix key events for win32 2012-01-17 04:24:58 -02:00
Eduardo Bart 44a20222bb walk and key event system rework with some regressions 2012-01-15 19:19:52 -02:00
Eduardo Bart a1374baee1 major UIWidget rewrite with new features 2012-01-10 20:13:40 -02:00
Eduardo Bart 028441831d save window position and size 2012-01-06 06:49:23 -02:00
Eduardo Bart c9280ecf9d invert widget event propagation order 2012-01-05 00:42:17 -02:00
Eduardo Bart 30ce5e2ba9 reorganize some stuff 2012-01-04 23:28:29 -02:00
Eduardo Bart 7172d2251a display window on screen center 2012-01-02 23:32:34 -02:00
Eduardo Bart 05230f44e4 new lua function for creating widgets: createWidget 2012-01-02 22:42:53 -02:00
Eduardo Bart 90600bbd69 make menu work 2012-01-02 20:09:49 -02:00
Eduardo Bart 43c16a1643 init menu 2012-01-02 18:47:02 -02:00
Eduardo Bart 9104305f37 update copyright notice 2012-01-02 14:59:24 -02:00
Eduardo Bart 7eead50806 use GLSL shaders 2011-12-06 22:31:55 -02:00
Eduardo Bart f548825faf too many changes to list, many regressions were made, master will be UNSTABLE for a few days 2011-12-03 19:52:56 -02:00
Eduardo Bart d5e15d1f06 add clock, change exceptions, add network exceptions, fix some crashes 2011-12-01 20:26:21 -02:00
Eduardo Bart 63cbe11f7e improvments in widgets initialization 2011-11-17 15:43:41 -02:00
Eduardo Bart 650713a1e6 fix compile isses 2011-11-05 11:36:02 -02:00